https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89357
--- Comment #2 from Matthias Kretz <kretz at kde dot org> --- I agree. The corresponding C test case produces equivalent f0 and f1: void g(int*); void f0() { __attribute__((aligned(128))) int x; g(&x); } void f1() { _Alignas(128) int x; g(&x); } And I agree this PR is rejects-valid. Unless there's some very strange rule for ARM and thus _Alignas is supposed to also reject values greater 16?