1 // { dg-do assemble } 2 // GROUPS passed access-control 3 class Base 4 { 5 protected: 6 virtual void DoSomething() = 0; 7 }; 8 9 class Fibber : public Base 10 { 11 public: DoBP()12 void DoBP() { 13 DoSomething(); 14 } 15 }; 16 17 class Flat : public virtual Fibber 18 { 19 public: DoIt()20 void DoIt() { 21 DoSomething(); 22 } 23 }; 24