1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
// { dg-do assemble } // Origin: Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr> template <class T> class A { public: class B { }; class C: public B { public: C(A&):B() { } }; C f() { return C(*this); } }; int main() { A<int> a; a.f(); }