1 // { dg-do run } 2 // prms-id: 4667 3 4 int counter = 0; 5 int a = 0; 6 int b = 0; 7 int c = 0; 8 9 struct A { AA10 A() { a = counter++; } 11 }; 12 13 struct B { BB14 B() { b = counter++; } 15 }; 16 17 struct C : public virtual B { CC18 C() { c = counter++; } 19 }; 20 21 struct D : public virtual A, public virtual C { }; 22 23 extern "C" int printf(const char*,...); main(void)24int main(void) { 25 D d; 26 27 if (!(a == 0 && b == 1 && c == 2)) { 28 return 1; 29 } 30 31 return 0; 32 } 33