1  /* { dg-do run } */
       2  
       3  extern void abort (void);
       4  
       5  int a, b, c, *d, **e = &d;
       6  
       7  int *
       8  fn1 ()
       9  {
      10    for (;;)
      11      {
      12        for (; a;)
      13  	if (b)
      14  	  abort ();
      15        break;
      16      }
      17    for (; c;)
      18      ;
      19    return &a;
      20  }
      21  
      22  int
      23  main ()
      24  {
      25    *e = fn1 ();
      26  
      27    if (!d)
      28      abort ();
      29  
      30    return 0;
      31  }