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