https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110582
--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Another testcase: ``` int a, b; int main() { char a = 0; int t = 0; for (; t <253; t ++){ int d = 2; d ^= 2 && a; b = a == 0 ? d : d / a; a = b; } for (; (1 + 95 << 24) + b + 1 + 686658714L + b - 2297271457;) ; } ``` Just to show that you could count up from 0 to 253 and still have an issue without any wrapping happening in the original code.