The following invalid code snippet triggers a segfault since GCC 3.4.0:

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

struct B : virtual A, A<0> {};

int foo(B &b)
{
  return b;
}
==================================================

bug.cc:6: error: expected template-name before '<' token
bug.cc:6: error: expected `{' before '<' token
bug.cc:6: error: expected unqualified-id before '<' token
bug.cc: In function 'int foo(B&)':
bug.cc:10: internal compiler error: Segmentation fault
Please submit a full bug report, [etc.]


-- 
           Summary: [4.0/4.1/4.2 regression] ICE using operator int in
                    invalid class hierarchy
           Product: gcc
           Version: 4.2.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=29022

Reply via email to