1 /* { dg-do compile } */
2 /* { dg-additional-options "-g" } */
3
4 int a, b, c, d, i, j, q, *e, *h, *k, *r, **p = &e;
5 const int *f, **n = &f;
6 static int g;
7
8 void
fn1(int p1)9 fn1 (int p1)
10 {
11 c = p1;
12 }
13
14 static int *
fn2(int * p1,const int * p2)15 fn2 (int *p1, const int *p2)
16 {
17 if (g)
18 n = &p2;
19 *n = p2;
20 int o[245];
21 fn1 (o != p2);
22 return p1;
23 }
24
25 static int *
fn3()26 fn3 ()
27 {
28 int s[54], *t = &s[0], u = 0, v = 1;
29 h = &v;
30 q = 1;
31 for (; q; q++)
32 {
33 int *w[] = { &u };
34 for (; v;)
35 return *p;
36 }
37 *r = *t + b >= 0;
38 return *p;
39 }
40
41 static int
fn4(int * p1)42 fn4 (int *p1)
43 {
44 int *l[2], **m[7];
45 for (; i < 1; i++)
46 for (; j < 1; j++)
47 m[i * 70] = &l[0];
48 k = fn3 ();
49 fn2 (0, p1);
50 if ((m[0] == 0) & a)
51 for (;;)
52 ;
53 return 0;
54 }
55
56 int
main()57 main ()
58 {
59 fn4 (&d);
60 return 0;
61 }
62