/* 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 (); | |
struct S *q; // { dg-bogus "" "uninitialized" { xfail *-*-* } } | |
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" "" { xfail *-*-* } } | |
return 2; | |
} | |
return 0; | |
} |