1 // { dg-do assemble } 2 // The standard sez that a use of a name gets the most access it can through 3 // the various paths that can reach it. Here, the access decl in B gives 4 // us access. 5 6 struct A 7 { 8 void f (); 9 }; 10 11 struct B: private virtual A 12 { 13 A::f; // { dg-warning "deprecated" } 14 }; 15 16 struct C: private virtual A, public B 17 { 18 }; 19 20 int main()21main () 22 { 23 C c; 24 25 c.f (); 26 } 27