------- Comment #3 from jakub at gcc dot gnu dot org 2009-12-07 17:09 ------- Distilled testcase (-g -O2): extern int bar (void);
static int foo (int x, int y) { if (y) goto lab; if (x) y = 0; if (y) goto lab; y = 0; lab: return y; } void baz (int x, int y) { y = foo (x, y); if (y != 0) bar (); } -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42299