1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
// { dg-do run } // { dg-options "-w -fabi-version=0" } struct E {}; struct E2 : public E {}; struct E3 : public E, public E2 {}; struct E4 : public E, public E2, public E3 { }; struct E5 : public E, public E2, public E3, public E4 {}; struct S : public virtual E5 { E e; }; S s; int main () { if ((char*)(E4*)&s - (char*)&s == 0) return 1; }