On Tue, 6 Sep 2016, Jason Merrill wrote: > The reason I care is that C++17 aligned new (wg21.link/p0035) > specifies that for types that require more alignment than the usual > operator new provides, the new-expression instead calls an operator > new with an explicit alignment parameter. MALLOC_ABI_ALIGNMENT > sounded like exactly what I was looking for, but then I noticed that > 'new long double' was going to the aligned new operator, which breaks > older code that replaces operator new (without, of course, replacing > the aligned variant).
I'd say that cxx_fundamental_alignment_p is the right thing to use here, but maybe you want an option to override the alignment threshold for aligned new (in case someone interposes a malloc that uses lower alignment, but still wants to allocate some objects with higher alignment). -- Joseph S. Myers jos...@codesourcery.com