template struct A { }; struct B { template struct C : public A {}; typedef double I; };