// Build don't run: // Special g++ Options: struct B { typedef int I; }; template struct D1 : public B { }; template struct D2 : public D1 { I i; }; template <> struct D1 { typedef double I; }; template void f(T); template <> void f(double) {} int main() { D2 d2i; f(d2i.i); }