http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58326
--- Comment #2 from Zhendong Su <su at cs dot ucdavis.edu> --- For additional info, please find below a variant that fails only at -O3: --------------------------------- int a, b, c, d; void foo () { int e; lbl: for (c = 0; c < 2; c++) { e = d; for (; a; a++) { d = e; if (b) goto lbl; } } }