More fallout from the variadic templates on mainline:
===========================================================
template<typename> struct A;
template<typename T, typename... U> struct A<T(U)>
{
template<typename X> A(X);
};
A<void(int)> a(0);
===========================================================
bug.cc:3: error: parameter packs not expanded with `...':
bug.cc:3: note: 'U'
bug.cc:4: error: parameter packs not expanded with `...':
bug.cc:4: note: 'U'
bug.cc:5: error: parameter packs not expanded with `...':
bug.cc:5: note: 'U'
bug.cc:8: internal compiler error: tree check: expected tree_vec, have
error_mark in expand_template_argument_pack, at cp/pt.c:2647
Please submit a full bug report, [etc.]
--
Summary: [4.3 regression] ICE with invalid use of parameter pack
in specialization
Product: gcc
Version: 4.3.0
Status: UNCONFIRMED
Keywords: ice-on-invalid-code, error-recovery, monitored
Severity: normal
Priority: P3
Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: reichelt at gcc dot gnu dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31438