https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71834
Jonathan Wakely <redi at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Known to work| |4.9.3 --- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> --- Older versions rejected it for different reasons: g++4.8.5 -std=c++11 v.cc v.cc:3:42: error: parameter pack ‘<anonymous>’ must be at the end of the template parameter list template < Ts ..., typename U > struct B {}; ^ v.cc:7:1: error: ‘B’ in ‘struct A<int>’ does not name a type A < int >::B < 0 > e; ^ g++-4.9.3 -std=c++11 v.cc v.cc:7:21: error: invalid type in declaration before ‘;’ token A < int >::B < 0 > e; ^ Neither of those is a very useful diagnostic.