https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94338
--- Comment #6 from huaixin chang <huaixin....@alibaba-inc.com> --- (In reply to jos...@codesourcery.com from comment #3) > It's a mistake to be referring to the C standard for the interpretation of > alignment attributes. The C standard way of specifying alignment is > _Alignas, not __attribute__, and if you write equivalent code using > _Alignas you get an error "error: '_Alignas' specifiers cannot reduce > alignment of 'A'", which corresponds to the constraint "The combined > effect of all alignment specifiers in a declaration shall not specify an > alignment that is less strict than the alignment that would otherwise be > required for the type of the object or member being declared.". Yes, I tested with _Alignas and got that error.