modernc.org/ccgo/v3@v3.16.14/lib/testdata/gcc-9.1.0/gcc/testsuite/gcc.c-torture/execute/950809-1.c (about)

     1  struct S
     2  {
     3    int *sp, fc, *sc, a[2];
     4  };
     5  
     6  f (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  
    22  main ()
    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  }