================
@@ -1670,6 +1670,8 @@ fir::getTypeSizeAndAlignment(mlir::Location loc, 
mlir::Type ty,
           llvm::alignTo(size, compAlign) + llvm::alignTo(compSize, compAlign);
       align = std::max(align, compAlign);
     }
+    // Include tail padding so the size matches the allocation size.
+    size = llvm::alignTo(size, align);
----------------
DanielCChen wrote:

Fixed: the header now names `COMPLEX(8)` (matching the actual test) and states 
the 24-versus-20 byte distinction — ordinary size 24B (with padding) versus 
packed size 20B (fields back-to-back) — with bound 19 as the discriminator.

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

Reply via email to