1 /* PR tree-optimization/58277 */
2 
3 extern void abort (void);
4 static int a[1], b, c, e, i, j, k, m, q[] = { 1, 1 }, t;
5 int volatile d;
6 int **r;
7 static int ***volatile s = &r;
8 int f, g, o, x;
9 static int *volatile h = &f, *p;
10 char n;
11 
12 static void
fn1()13 fn1 ()
14 {
15   b = a[a[a[a[a[a[a[a[b]]]]]]]];
16   b = a[a[a[a[a[a[a[a[b]]]]]]]];
17   b = a[a[b]];
18   b = a[a[a[a[a[a[a[a[b]]]]]]]];
19   b = a[a[a[a[a[a[a[a[b]]]]]]]];
20 }
21 
22 static int
fn2()23 fn2 ()
24 {
25   n = 0;
26   for (; g; t++)
27     {
28       for (;; m++)
29 	{
30 	  d;
31 	  int *u;
32 	  int **v[] = {
33 	    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
34 	    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
35 	    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
36 	    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
37 	    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
38 	    0, 0, 0, 0, 0, &u, 0, 0, 0, 0, &u, &u, &u, &u, &u, &u, &u, 0,
39 	    &u, 0, &u, &u, &u, 0, &u, &u, 0, &u, &u, &u, &u, 0, &u, &u, &u,
40 	    &u, &u, 0, &u, &u, 0, &u, 0, &u, &u, 0, &u, &u, &u, &u, &u, 0,
41 	    &u, 0, 0, 0, &u, &u, &u, 0, 0, &u, &u, &u, 0, &u, 0, &u, &u
42 	  };
43 	  int ***w[] = { &v[0] };
44 	  if (*p)
45 	    break;
46 	  return 0;
47 	}
48       *h = 0;
49     }
50   return 1;
51 }
52 
53 static void
fn3()54 fn3 ()
55 {
56   int *y[] = { 0, 0, 0, 0, 0, 0, 0, 0 };
57   for (; i; i++)
58     x = 0;
59   if (fn2 ())
60     {
61       int *z[6] = { };
62       for (; n < 1; n++)
63 	*h = 0;
64       int t1[7];
65       for (; c; c++)
66 	o = t1[0];
67       for (; e; e--)
68 	{
69 	  int **t2 = &y[0];
70 	  int ***t3 = &t2;
71 	  *t3 = &z[0];
72 	}
73     }
74   *s = 0;
75   for (n = 0;; n = 0)
76     {
77       int t4 = 0;
78       if (q[n])
79 	break;
80       *r = &t4;
81     }
82 }
83 
84 int
main()85 main ()
86 {
87   for (; j; j--)
88     a[0] = 0;
89   fn3 ();
90   for (; k; k++)
91     fn1 ();
92   fn1 ();
93 
94   if (n)
95     abort ();
96 
97   return 0;
98 }
99