(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.c-torture/
execute/
pr58209.c
       1  /* PR tree-optimization/58209 */
       2  
       3  extern void abort (void);
       4  typedef __INTPTR_TYPE__ T;
       5  T buf[1024];
       6  
       7  T *
       8  foo (T n)
       9  {
      10    if (n == 0)
      11      return (T *) buf;
      12    T s = (T) foo (n - 1);
      13    return (T *) (s + sizeof (T));
      14  }
      15  
      16  T *
      17  bar (T n)
      18  {
      19    if (n == 0)
      20      return buf;
      21    return foo (n - 1) + 1;
      22  }
      23  
      24  int
      25  main ()
      26  {
      27    int i;
      28    for (i = 0; i < 27; i++)
      29      if (foo (i) != buf + i || bar (i) != buf + i)
      30        abort ();
      31    return 0;
      32  }