/* PR middle-end/89230 - Bogus uninited usage warning with printf
   { dg-do compile }
   { dg-options "-O2 -Wall" } */

struct S { int i, j; };

/* attribute__ ((malloc)) */ struct S* f (void);

int g (void)
{
  struct S *p = f (), *q;

  if (p->i || !(q = f ()) || p->j != q->i)
   {
     __builtin_printf ("%i", p->i);

     if (p->i)
       return 1;

     if (!q)        // { dg-bogus "\\\[-Wmaybe-uninitialized" }
       return 2;
   }

  return 0;
}
