https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77691
--- Comment #13 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> --- > --- Comment #12 from joseph at codesourcery dot com <joseph at codesourcery > dot com> --- > On Wed, 21 Mar 2018, ro at CeBiTec dot Uni-Bielefeld.DE wrote: > >> Joseph, any suggestions? You mentioned that older versions of glibc >> didn't provide 16-byte alignment in i386 malloc; maybe there are other >> systems with the same issue that could equally benefit from some fix? > > The fix in glibc was to increase malloc alignment for i386. This is an > area where properly supporting a feature (_Float128 and _Decimal128, both > of which are 16-byte aligned on i386) requires cooperation between the > compiler and library - in this case, even without other library support > for those types, users can still legitimately expect memory from malloc to > be suitably aligned for them, and for max_align_t to have suitable > alignment for them. I see. So I'll go ahead and xfail the current testcase (unless Jonathan prefers to move the failing max_align_t part to a separate testcase) and pursue increasing i386 malloc alignment and the __float128 addition to <stddef.h> max_align_t (for non-Studio compilers only, I guess) in Solaris. Thanks. Rainer