1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
// { dg-do assemble } class A { protected: int aData; }; class B : public A { public: virtual void func1() { A::aData = 1; } }; class C : virtual public B { public: virtual void func1(void) { A::aData = 2; } };