http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60116
--- Comment #9 from Marc Glisse <glisse at gcc dot gnu.org> --- Extract from a gdb session, showing 2 wrong branches taken: (gdb) p f $15 = 1 (gdb) step 15 j = k * 54; (gdb) 16 g = j * 147; (gdb) 18 if (d) (gdb) p d $16 = 1 (gdb) step 21 h = i = l * 9UL; (gdb) 22 if (f) (gdb) p f $17 = 1 (gdb) step 25 }