The following code snippet triggers an ICE on mainline:
===========================================
struct A {};
template<typename... T> struct B : T...
{
B() : T()... {}
};
B<A> b;
===========================================
bug.cc: In constructor 'B<T>::B() [with T = A]':
bug.cc:8: instantiated from here
bug.cc:5: internal compiler error: tree check: expected tree_list, have
void_type in tsubst_initializer_list, at cp/pt.c:14981
Please submit a full bug report, [etc.]
I guess, the code is invalid, but I'm not sure.
--
Summary: [4.3 regression] ICE derived classes and variadic
templates
Product: gcc
Version: 4.3.0
Status: UNCONFIRMED
Keywords: ice-on-invalid-code, 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=34050