1 /* Check that loops whose final iteration is undefined are detected. */
2 /* { dg-do compile } */
3 /* { dg-options "-O2 -Waggressive-loop-optimizations" } */
5 void doSomething(char);
16 ? array1
[i
] /* { dg-message "note: possible undefined statement is here" } */
17 : array2
[i
]) /* { dg-message "note: possible undefined statement is here" } */
18 && i
< 100; /* { dg-warning "loop exit may only be reached after undefined behavior" } */
21 if (i
>= 5) /* { dg-warning "loop exit may only be reached after undefined behavior" } */
23 doSomething(array1
[i
]);