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

     1  /* From PR target/16176 */
     2  struct __attribute__ ((packed)) s { struct s *next; };
     3  
     4  struct s * __attribute__ ((noinline))
     5  maybe_next (struct s *s, int t)
     6  {
     7    if (t)
     8      s = s->next;
     9    return s;
    10  }
    11  
    12  int main ()
    13  {
    14    struct s s1, s2;
    15  
    16    s1.next = &s2;
    17    if (maybe_next (&s1, 1) != &s2)
    18      abort ();
    19    exit (0);
    20  }