modernc.org/ccgo/v3@v3.16.14/lib/testdata/gcc-9.1.0/gcc/testsuite/gcc.c-torture/compile/pr49163.c (about)

     1  /* PR target/49163 */
     2  /* { dg-require-effective-target int32plus } */
     3  struct S1
     4  {
     5   unsigned f0:18;
     6   int f1;
     7  } __attribute__ ((packed));
     8  
     9  struct S2
    10  {
    11    volatile long long f0;
    12    int f1;
    13  };
    14  
    15  struct S1 s1;
    16  struct S2 s2;
    17  const struct S2 s2array[2][1] = { };
    18  
    19  struct S2 **sptr;
    20  
    21  extern int bar (char a, long long b, int * c, long long d, long long e);
    22  extern int baz (void);
    23  
    24  int i;
    25  int *ptr;
    26  
    27  void
    28  foo (int *arg)
    29  {
    30    for (i = 0; i < 1; i = baz())
    31      {
    32        *arg = *(int *)sptr;
    33        *ptr = bar (*arg, s2.f1, ptr,
    34  		  bar (s2array[1][0].f0, *arg, ptr, s1.f1, *ptr), *arg);
    35      }
    36  }