hubert.reinterpretcast added inline comments.
================ Comment at: clang/lib/AST/RecordLayoutBuilder.cpp:1871 + // AIX ABI has this special rule that in aggregates, the first member of + // floating point data type(or aggregate type contains floating point data ---------------- Suggestion: ``` // The AIX `power` alignment rules apply the natural alignment of the // "first member" if it is of a floating-point data type (or is an aggregate // whose recursively "first" member or element is such a type). The alignment // associated with these types for subsequent members use an alignment value // where the floating-point data type is considered to have 4-byte alignment. // // For the purposes of the foregoing: vtable pointers, non-empty base classes, // and zero-width bit-fields count as prior members; members of empty class // types marked `no_unique_address` are not considered to be prior members. ``` This fixes a number of issues with the comment, including: - The meaning of "first member" is unclear and the intended meaning is unlikely to be understood from common meanings of the term. - The recursive application of the rule was not captured (the relationship is not merely "contains"). - The statement about 4-byte alignment needed to take stricter alignment due to other factors into account. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D79719/new/ https://reviews.llvm.org/D79719 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits