https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114359
--- Comment #2 from Angelo Landi <angelo.landi at outlook dot com> --- (In reply to Andrew Pinski from comment #1) > > Due to an integer overflow > > Hmm, I don't think this is an integer overflow but rather due to wrapping. > Yes there is a difference as overflow is undefined behavior while wrapping > is defined. Indeed; separating the cases for unsigned and signed integers, only the first has the (conditionally) well-defined behaviour described, while the latter has undefined behaviour.