1  /* { dg-do compile } */
       2  /* { dg-additional-options "-fisolate-erroneous-paths-attribute" } */
       3  
       4  int printf (const char *, ...);
       5  int foo (int);
       6  
       7  int a, *b, c;
       8  
       9  static int
      10  fn1 ()
      11  { 
      12    if (a)
      13      return (a = 0);
      14    for (; a; )
      15      a = 0;
      16    return 0;
      17  }
      18  
      19  static int
      20  fn2 (int p)
      21  { 
      22    fn1 ();
      23    c = 0;
      24    if (p)
      25      printf ("%d", 0);
      26    foo (b != &p);
      27    return 0;
      28  }
      29  
      30  void
      31  fn3 ()
      32  { 
      33    fn2 (0);
      34  }