1// { dg-do assemble } 2 3class Base { 4public: 5 class Bar { public: virtual ~Bar() {} }; 6}; 7 8class Derived : public Base { 9public: 10 class Bar : public Base::Bar {}; 11}; 12 13template <class T> 14struct XYZ : public T::Bar { 15 XYZ(): T::Bar() { } 16}; 17 18void test() { 19 XYZ<Base> b; 20 XYZ<Derived> d; 21} 22