Various pthread types on hppa-linux require an alignment of 16 bytes for ABI reasons. This is larger than the current implementations of max_align_t and max_align_t_align. As a result, the patch to implement C++17 over-aligned new causes warnings on hppa. The thread here discusses the problem: https://gcc.gnu.org/ml/gcc-patches/2016-09/msg01593.html The attached patch implements a new hook to allow overriding the default implementation of max_align_t_align in the PA backend. It changes the max_align_t alignment to 16 bytes on 32-bit hppa-linux. I added an additional comment to BIGGEST_ALIGNMENT in pa.h to document the alignment choices for long double on hpux. I also defined MALLOC_ABI_ALIGNMENT so that it reflects the behaviour of the glibc and hpux malloc implementations. Tested on hppa2.0w-hp-hpux11.11, hppa64-hp-hpux11.11 and hppa-unknown-linux-gnu with no observed regressions. Okay for trunk? Dave -- John David Anglin dave.anglin@bell.net