1 /* PR debug/63284 */
2 /* { dg-do compile } */
3 /* { dg-options "-O2 -fcompare-debug" } */
4 
5 int a[10], *b, *d, c, f;
6 int fn2 (void);
7 void fn3 (void);
8 void fn4 (int);
9 
10 static int
fn1(int x)11 fn1 (int x)
12 {
13   int e = a[0];
14   if (e)
15     return 1;
16   if (b)
17     switch (x)
18       {
19       case 1:
20         if (d)
21           e = fn2 ();
22         else
23           fn3 ();
24         break;
25       case 0:
26         if (d)
27           {
28             fn3 ();
29             if (c)
30               fn4 (1);
31           }
32         else
33           fn4 (0);
34       }
35   return e;
36 }
37 
38 void
fn6(void)39 fn6 (void)
40 {
41   f = fn1 (0);
42 }
43