https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107785
--- Comment #3 from Muggle Wei <mugglewei at gmail dot com> --- (In reply to Andrew Pinski from comment #2) > Unsigned integer types are defined to be wrapping types which is why it > works with that. Thanks for the reply, I had thought that integer overflow would only affect itself. So because of integer overflow, it leads to undefined behavior, which affects the conditional judgment in the subsequent code?