template struct X { using type = char; }; template struct X { using type = int; }; void f() { typename X::type y; typename X::type x; }