1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
// { dg-do assemble } // Origin: Frank Pilhofer <fp@fpx.de> struct A { virtual void f (); }; struct B : virtual public A { void f (); }; struct C : virtual public A { void f (); }; struct D : virtual public B, virtual public C { void f (); }; struct Di : virtual public B, virtual public C, virtual public D {};