http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47475
--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> 2011-01-26 16:47:53 UTC --- Note that this is not related to variadic templates, this gives the same error using no C++0x features: template<typename T, typename Ts> struct test; template<> struct test<void, void> { template<typename> static void f() { } }; template<typename T, typename Ts> struct test { template<typename U> static void f() { test<void, Ts>::f<U>(); //compiler error here } };