middle-end: Fix stalled swapped condition code value [PR115836]
[official-gcc.git] / gcc / testsuite / c-c++-common / analyzer / infinite-recursion-pr108935-1a.c
blobb3c4920b10d2b7c28207c64a9d2452741d44a7d9
1 typedef struct {
2 unsigned idx;
3 int vals[512];
4 } foo_t;
6 int ended(foo_t* f) {
7 return f->idx >= 512;
9 unsigned foo(foo_t* f) {
10 if (ended(f)) {
11 return f->idx;
13 do {
14 f->idx += 1000;
15 } while(!ended(f) && !f->vals[f->idx]);
16 return foo(f); /* { dg-bogus "infinite recursion" } */