https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78829
--- Comment #4 from joseph at codesourcery dot com <joseph at codesourcery dot com> --- _Alignof is alignment requirement (in all contexts), __alignof__ is preferred alignment (so on 32-bit x86, for long long they are 4 and 8 respectively, because a long long in a structure is only 4-byte aligned but reducing the result of __alignof__ would have been bad for backwards compatibility).