More fallout from the variadic templates on mainline:

===========================================================
template<typename... T> int foo(const T&)
{
  union { T t; };
  return t;
}

void bar()
{
  foo(0);
}
===========================================================

bug.cc:1: error: parameter packs not expanded with `...':
bug.cc:1: note:         'T'
bug.cc: In function 'int foo(const T&) [with T = <expression error>]':
bug.cc:9:   instantiated from here
bug.cc:4: internal compiler error: tree check: expected record_type or
union_type or qual_union_type, have template_type_parm in lookup_conversions,
at cp/search.c:2432
Please submit a full bug report, [etc.]

Similar to PR31434 and PR31435 as this is also invalid use of a
parameter pack in a function argument.


-- 
           Summary: [4.3 regression] ICE with invalid use of parameter pack
                    in function arg
           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=31436

Reply via email to