// { dg-do assemble } | |
class Base { | |
public: | |
class Bar { public: virtual ~Bar() {} }; | |
}; | |
class Derived : public Base { | |
public: | |
class Bar : public Base::Bar {}; | |
}; | |
template <class T> | |
struct XYZ : public T::Bar { | |
XYZ(): T::Bar() { } | |
}; | |
void test() { | |
XYZ<Base> b; | |
XYZ<Derived> d; | |
} |