1  /* { dg-do run } */
       2  /* { dg-additional-options "-fipa-pta" } */
       3  
       4  static long bug (long depth, long * v)
       5  {
       6    if (depth == 0)
       7      {
       8        *v = 0;
       9        return 1;
      10      }
      11  
      12    long r = 1;
      13    long val = bug(depth - 1, &r);
      14    return 2 * r + val;
      15  }
      16  
      17  static long ff (long depth)
      18  {
      19    return bug(depth, (long*)0);
      20  }
      21  
      22  int main()
      23  {
      24    if (ff(1) != 1)
      25      __builtin_abort ();
      26    return 0;
      27  }