/* { dg-do compile } */ /* { dg-options "-O -Wuninitialized" } */ extern int bar (int); extern void baz (int *); int foo (int i) { int j; /* { dg-warning "'j' may be used uninitialized" "uninitialized" { xfail *-*-* } } */ if (bar (i)) { baz (&j); } else { } return j; } int foo2( void ) { int rc; return rc; /* { dg-warning "'rc' is used uninitialized" } */ *&rc = 0; } extern int printf(const char *, ...); void frob(int *pi); int main(void) { int i; printf("i = %d\n", i); /* { dg-warning "'i' is used uninitialized" } */ frob(&i); return 0; } void foo3(int*); void bar3(void) { int x; if(x) /* { dg-warning "'x' is used uninitialized" "uninitialized" } */ foo3(&x); }