(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
torture/
pr58956.c
       1  /* { dg-do run } */
       2  
       3  extern void abort (void);
       4  
       5  struct S
       6  {
       7    int f0;
       8  } a = {1}, b, g, *c = &b, **f = &c;
       9  
      10  int *d, **e = &d, h;
      11  
      12  struct S
      13  foo ()
      14  {
      15    *e = &h;
      16    if (!d) 
      17      __builtin_unreachable ();
      18    *f = &g;
      19    return a;
      20  }
      21  
      22  int
      23  main ()
      24  {
      25    struct S *i = c;
      26    *i = foo ();
      27    if (b.f0 != 1)
      28      abort ();
      29    return 0;
      30  }