template struct A { static int foo(U) { return 1; } }; template struct A { static int foo(int) { return 2; } };