https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103681
--- Comment #2 from Jason Merrill <jason at gcc dot gnu.org> --- compile-time testcase struct A { long l; char c = -1; }; struct B : public A { char d; }; #define SA(X) static_assert(X,#X) SA(sizeof (B) == sizeof (A) || alignof (long) < 2*sizeof(char));