1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
// { dg-do compile } struct A { virtual void foo () = 0; void bar () { foo (); } bool a; }; struct B : public virtual A { virtual void foo (); }; struct C : public B { C (); }; void baz () { C c; c.bar (); }