1// { dg-do compile } 2struct A { short a; }; 3int **b; 4unsigned long c; 5 6bool foo (); 7unsigned bar (unsigned i); 8extern void baz () __attribute__((noreturn)); 9 10int * 11test (unsigned x, struct A *y) 12{ 13 unsigned v; 14 if (foo () || y[x].a == -1) 15 { 16 c = bar (x); 17 return 0; 18 } 19 v = y[x].a; 20 if (v >= 23) 21 baz (); 22 return b[v]; 23} 24