http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58856
Bug ID: 58856 Summary: [4.9 Regression] spurious 'wrong number of template arguments' error for template alias Product: gcc Version: 4.9.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: st at quanttec dot com The current trunk version of GCC fails to compile the following valid sample template <typename T> struct U1 {}; template <typename T1, typename... Ts> using U2 = U1<T1>; template <typename T1, typename... Ts> using U3 = U2<T1, Ts...>; > g++ -std=c++11 -Wall -Wextra test.cpp test.cpp:8:24: error: wrong number of template arguments (2, should be 1) using U3 = U2<T1, Ts...>; ^ test.cpp:2:8: error: provided for ‘template<class T> struct U1’ struct U1 {}; ^ This bug doesn't seem to exist in g++ (GCC) 4.8.1 20130603 (Red Hat 4.8.1-1) and in g++ (Built by MinGW-builds project) 4.9.0 20130717 (experimental)