1 /* { dg-do compile } */ 2 /* { dg-options "-Wuninitialized -O2" } */ 3 4 int g; 5 void bar(); 6 void blah(int); 7 foo(int n,int m,int r)8int foo (int n, int m, int r) 9 { 10 int flag = 0; 11 int v; 12 13 if (n) 14 { 15 v = r; 16 flag = 1; 17 } 18 19 if (m) 20 g++; 21 else 22 bar(); 23 24 if (r > 0) 25 goto use; 26 if (flag) 27 { 28 use: 29 blah(v); /* { dg-warning "uninitialized" "real warning" } */ 30 } 31 32 return 0; 33 } 34