// { dg-do run } template class D { public: int f(); }; template int D::f() { return sizeof(T); } template class D,class E> class C : D { public: int g(); }; template class D,class E> int C::g() { return this->f(); } int main() { C c; c.g(); }