111
|
1 /* PR c/70436 */
|
|
2 /* { dg-options "-Wparentheses" } */
|
|
3
|
|
4 int a, b, c;
|
|
5 void bar (int);
|
|
6
|
|
7 void
|
|
8 foo (void)
|
|
9 {
|
|
10 if (a) /* { dg-warning "ambiguous" } */
|
|
11 if (b)
|
|
12 {
|
|
13 if (c)
|
|
14 bar (0);
|
|
15 }
|
|
16 else
|
|
17 bar (1);
|
|
18
|
|
19 if (a > 0)
|
|
20 if (a > 1)
|
|
21 if (a > 2)
|
|
22 if (a > 3)
|
|
23 if (a > 4)
|
|
24 if (a > 5) /* { dg-warning "ambiguous" } */
|
|
25 if (a > 6)
|
|
26 while (1)
|
|
27 bar (0);
|
|
28 else
|
|
29 bar (1);
|
|
30
|
|
31 if (a) /* { dg-warning "ambiguous" } */
|
|
32 if (b)
|
|
33 switch (c);
|
|
34 else
|
|
35 bar (1);
|
|
36
|
|
37 switch (a)
|
|
38 {
|
|
39 default:
|
|
40 if (b) /* { dg-warning "ambiguous" } */
|
|
41 if (c)
|
|
42 for (;;)
|
|
43 bar (0);
|
|
44 else
|
|
45 bar (1);
|
|
46 }
|
|
47
|
|
48 if (a) /* { dg-warning "ambiguous" } */
|
|
49 if (a)
|
|
50 {
|
|
51 bar (2);
|
|
52 }
|
|
53 else
|
|
54 bar (3);
|
|
55
|
|
56 if (a)
|
|
57 do if (b) bar (4); while (1);
|
|
58 else bar (5);
|
|
59
|
|
60 do
|
|
61 {
|
|
62 if (a)
|
|
63 if (b) /* { dg-warning "ambiguous" } */
|
|
64 if (c) for (;;) bar (6);
|
|
65 else bar (7);
|
|
66 } while (0);
|
|
67 }
|