1 /* { dg-do compile } */
2 
3 enum
4 {
5   a, b, c, d,  e,  f,  g,  h,  j,  k
6 };
7 
8 int l;
m(short * s)9 void m (short *s)
10 {
11   short n, o, p;
12   float(*q)[k];
13   int r, i;
14   while (l > 0)
15     r = l;
16   for (;;)
17     {
18       i = 0;
19       for (; i < r; i++)
20 	{
21 	    {
22 	      float ab = q[i][a];
23 	      int i = ab;
24 	      p = i;
25 	    }
26 	  ((short *) s)[0] = p;
27 	    {
28 	      float ab = q[i][b];
29 	      int i = ab;
30 	      o = i;
31 	    }
32 	  ((short *) s)[1] = o;
33 	    {
34 	      float ab = q[i][f];
35 	      int i = ab;
36 	      n = i;
37 	    }
38 	  ((short *) s)[2] = n;
39 	  float ab = q[i][g];
40 	  int i = ab;
41 	  ((short *) s)[3] = i;
42 	  s = (short *) s + 4;
43 	}
44     }
45 }
46