https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80345
Markus Trippelsdorf <trippels at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Known to work| |4.8.5 Version|6.3.0 |5.3.1 Summary|ICE in |[5 Regression] ICE in |rewrite_use_nonlinear_expr |rewrite_use_nonlinear_expr |with -O2 |with -O2 --- Comment #5 from Markus Trippelsdorf <trippels at gcc dot gnu.org> --- typedef long mp_limb_signed_t; fn1(mp_limb_signed_t p1) { int *a = 1; mp_limb_signed_t i, j; i = 0; for (; i < p1; i++) { j = 0; for (; j <= i; j++) *a++ = 0; j = i + 1; for (; j < p1; j++) a++; } } fn2() { fn1(fn2); } gcc-4.8.5 is fine.