The following invalid code snippets triggers an ICE since GCC 4.3.0:

======================
int foo(int i);

void bar()
{
  __complex__ int i;
  X j;

  if (i = foo(j))
    ;
}
======================

bug.c: In function 'bar':
bug.c:6: error: 'X' undeclared (first use in this function)
bug.c:6: error: (Each undeclared identifier is reported only once
bug.c:6: error: for each function it appears in.)
bug.c:6: error: expected ';' before 'j'
bug.c:8: error: 'j' undeclared (first use in this function)
bug.c:8: internal compiler error: in create_tmp_from_val, at gimplify.c:535
Please submit a full bug report, [etc.]

The C++ frontend is not affected.


-- 
           Summary: [4.3/4.4 regression] ICE with undefined variables
           Product: gcc
           Version: 4.4.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=35746

Reply via email to