1 /* PR bootstrap/4192 2 This testcase caused infinite loop in flow (several places), 3 because flow assumes gen_jump generates simple_jump_p. */ 4 5 /* { dg-require-effective-target indirect_calls } */ 6 7 typedef void (*T) (void); 8 extern T x[]; 9 10 void foo(void)11foo (void) 12 { 13 static T *p = x; 14 static _Bool a; 15 T f; 16 17 if (__builtin_expect (a, 0)) 18 return; 19 20 while ((f = *p)) 21 { 22 p++; 23 f (); 24 } 25 a = 1; 26 } 27