http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57214

--- Comment #5 from Marek Polacek <mpolacek at gcc dot gnu.org> ---
Reduced:

extern int baz (void);
extern int foo (void) __attribute__ ((returns_twice));

void
bar (_Bool b)
{
  int buf[1];
  while (1)
    {
      _Bool x = 1;
      if (b)
    baz ();
      b = 1;
      baz ();
      x = 0;
      int i;
      while (buf[i] && i)
    i++;
      foo ();
      if (!x)
    b = 0;
    }
}

Reply via email to