1 /* { dg-do compile } */
2 /* { dg-options "-O2" } */
3 /* We going into an infinite loop in fold because we
4 were mishandling the return value of
5 fold_to_nonsharp_ineq_using_bound. */
6 _Bool f();
7 void g(int);
8 void h (int old_size)
9 {
10 int new_size = old_size, i;
11 g(old_size - 1);
12 i = 0;
13 while (i < old_size - 1)
14 {
15 if (f())
16 {
17 i++;
18 continue;
19 }
20 while (i < old_size - 1)
21 i++;
22 }
23 g(new_size);
24 }