123456789101112131415161718
struct Bar { template<typename U> static void bar(U) {} }; template<typename T> void foo() { T::bar(0); T::template bar<int>(0); // You must tell the parser that < is not 'less than' but it's a template bracket } int main() { foo<Bar>(); return 0; }