1struct S
2{
3  int *sp, fc, *sc, a[2];
4};
5
6f (struct S *x)
7{
8  int *t = x->sc;
9  int t1 = t[0];
10  int t2 = t[1];
11  int t3 = t[2];
12  int a0 = x->a[0];
13  int a1 = x->a[1];
14  t[2] = t1;
15  t[0] = a1;
16  x->a[1] = a0;
17  x->a[0] = t3;
18  x->fc = t2;
19  x->sp = t;
20}
21
22main ()
23{
24  struct S s;
25  static int sc[3] = {2, 3, 4};
26  s.sc = sc;
27  s.a[0] = 10;
28  s.a[1] = 11;
29  f (&s);
30  if (s.sp[2] != 2)
31    abort ();
32  exit (0);
33}
34