https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109979
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Note there is no warning if you use -fwrapv which is what I expected as the range of e-1 becomes the whole range because overflow becomes defined as wrapping ....