When compiling the program below, gcc 4.0.0 dies with an ICE. This also happens with gcc version 4.0.1 20050430 (prerelease)
gcc400 -v Using built-in specs. Target: i686-pc-linux-gnu Configured with: ../gcc-4.0.0/configure --prefix=/opt/gcc400 Thread model: posix gcc version 4.0.0 command line: gcc400 -O -c foo.c program: void bar (void); void foo (int *diff) { double deltay = 0.0; int Stangent = 0; int mindiff; int Sflipped = 0; int i; int Sturn, Snofit; Sturn = 1; if (Sturn) Stangent = 1; if (Sturn) { Sflipped = 0; Snofit = 1; while (Snofit) { Snofit = 0; mindiff = 0; for (i = 0; i < 4; i++) mindiff = diff[i]; while (!Snofit && (mindiff < 0.0)) { deltay = (Stangent ? deltay : 0.0); if (deltay < 0.0) Snofit = 1; for (i = 0; i < 4; i++) { } } if (Snofit) if (Sflipped) break; } if (Snofit) bar (); } } -- Summary: ICE compiling with -O Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: trt at acm dot org CC: gcc-bugs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21380