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 fn1()10fn1 () 11 { 12 if (a) 13 return (a = 0); 14 for (; a; ) 15 a = 0; 16 return 0; 17 } 18 19 static int fn2(int p)20fn2 (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 fn3()31fn3 () 32 { 33 fn2 (0); 34 } 35