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)24 void bar(A* p)
25 {
26   p->foo();
27 }
28