// { dg-do assemble } // GROUPS passed scoping class A { public: A() {} ~A() {} virtual void f() {} }; class B : public A { public: B() {} ~B() {} virtual void f() {} }; B GLOBAL_B; B& foo() {return GLOBAL_B;} int main() { // build_scoped_method_call and build_scoped_ref should know how // to deal with a reference for this foo().A::f(); }