The following well-formed example produces the incorrect error: error: cannot expand G ... into a fixed-length argument list
template<typename G = void, typename H = void> struct foo {}; template<typename... G> struct bar : foo<G...> {}; int main() { bar<int, float> f; } -- Summary: [C++0x] Variadic templates expansion into non-variadic class template Product: gcc Version: 4.4.0 Status: UNCONFIRMED Keywords: rejects-valid Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: dgregor at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35722