I do regard the alignment settings for structs, unions,
classes as important as the signature of functions.
compilation of structs in the scope of different
#pragma pack([push], n)
produces errors that are hard to understand.
The linker could produce errors or warnings when
combining compilation units with symbols that differ
only in their memory alignment.
The compiler's warning about impaired
#pragma pack(push,n)
#pragma pack(pop)
doesn't help in such cases.
--
Summary: #pragma pack([push,] n) should be coded in the signature
Product: gcc
Version: 4.3.1
Status: UNCONFIRMED
Severity: enhancement
Priority: P3
Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: gerolf dot wendland at nsn dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40527