1 /* { dg-do compile } */
2 /* { dg-options "-Wuninitialized -O2" } */
3
4 int g;
5 void bar (void);
6 void blah (int);
7
8 int 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 /* Wrong guard */
25 if (!flag)
26 blah(v); /* { dg-warning "uninitialized" "real uninitialized var warning" } */
27
28 return 0;
29 }