> So, something obviously wrong with > > struct max_alignment { > char c; > union { > HOST_WIDEST_INT i; > long double d; > } u; > }; > > /* The biggest alignment required. */ > > #define MAX_ALIGNMENT (offsetof (struct max_alignment, u)) > > for SPARC 32bit?
I don't think so, the ABI says 8 in both cases. Note that bootstrap doesn't fail on SPARC/Solaris 2.[56] and (presumably) SPARC/Linux, which have HOST_WIDE_INT == 32, whereas SPARC/Solaris 7+ have HOST_WIDE_INT == 64. All are 32-bit compilers. Bootstrap doesn't fail on SPARC64/Solaris 7+ either, for which the ABI says 16 for the alignment in both cases. They are 64-bit compilers. -- Eric Botcazou