1 // { dg-do compile } 2 struct A 3 { fooA4 virtual void foo() {} 5 }; 6 7 struct B 8 { fooB9 virtual void foo() {} 10 }; 11 12 struct C : virtual A {}; 13 14 struct D : virtual A, B 15 { fooD16 virtual void foo() {} 17 }; 18 19 struct E : C, D 20 { fooE21 virtual void foo() {} 22 }; 23 bar(A * p)24void bar(A* p) 25 { 26 p->foo(); 27 } 28