#include namespace { struct X { typedef int T; }; } template struct Y : public X { }; template const std::type_info& f() { return typeid (X); } int main () { f > (); }