Testcase: template <typename _Tp> struct __add_const_lvalue_reference; template<typename... _Elements> class tuple { tuple(typename __add_const_lvalue_reference<_Elements>::type ...) ; }; tuple<int&, int&, int&> i;
--------- CUT ----- Found while cutting down PR 33091. This is a regression because the error message was ok in 4.2.0 and before. On the trunk we get: t.cc: In instantiation of 'tuple<#'argument_pack_select' not supported by dump_expr#<expression error> >': t.cc:8: instantiated from here t.cc:6: error: invalid use of incomplete type 'struct __add_const_lvalue_reference<int&>' -- Summary: [4.3 Regression] #'argument_pack_select' not supported by dump_expr#<expression error> Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: diagnostic Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: pinskia at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33118