================
@@ -378,8 +378,12 @@ PointerType::getABIAlignment(const ::mlir::DataLayout 
&dataLayout,
 llvm::TypeSize
 RecordType::getTypeSizeInBits(const mlir::DataLayout &dataLayout,
                               mlir::DataLayoutEntryListRef params) const {
-  if (isUnion())
-    return dataLayout.getTypeSize(getLargestMember(dataLayout));
+  if (isUnion()) {
+    mlir::Type largest = getLargestMember(dataLayout);
+    if (!largest)
+      return llvm::TypeSize::getFixed(0);
----------------
erichkeane wrote:

_I_ think so, which is why this looks odd :)  Presumably this should return '8' 
(or more correctly, just the size of 'char').

https://github.com/llvm/llvm-project/pull/191516
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to