The following (probably invalid) code snippet triggers an ICE on mainline:

===========================================
struct A
{
  operator int();
};

template <typename... T> struct B : A
{
  using A::operator T;
};

B<int> b;
===========================================

bug.cc: In instantiation of 'B<int>':
bug.cc:11:   instantiated from here
bug.cc:8: internal compiler error: in dependent_type_p, at cp/pt.c:15327
Please submit a full bug report, [etc.]

Another code snippet that ICE's in the same place:

===========================================
template<typename... T> struct A
{
  int i __attribute__((aligned(__alignof(T))));
};

A<int> a;
===========================================

bug.cc: In instantiation of 'A<int>':
bug.cc:6:   instantiated from here
bug.cc:3: internal compiler error: in dependent_type_p, at cp/pt.c:15327
Please submit a full bug report, [etc.]


-- 
           Summary: [4.3 regression] ICE in dependent_type_p with 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=34051

Reply via email to