The following testcase: ---------------------8<-----------------
#include <stdio.h> #include <vector> template <typename T> struct S; template <typename... TA> struct S<std::vector<TA...>> { }; int main(int argc, char *argv[]) { return 0; } ---------------------8<----------------- produces: $ g++ -std=c++0x testcase.cpp testcase.cpp:6: sorry, unimplemented: cannot expand 'TA ...' into a fixed-length argument list testcase.cpp:6: error: template argument 1 is invalid -- Summary: [C++0x] Unimplemented variadic template type expansion Product: gcc Version: 4.4.0 Status: UNCONFIRMED Severity: minor Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: piotr dot wyderski at gmail dot com GCC host triplet: Cygwin/WinXP/gcc-4.4.0-snapshot-20090123 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39642