https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113852
--- Comment #7 from Zachary L <admin at computerquip dot com> --- (In reply to Richard Biener from comment #6) > Well, given athat a1 * a2 is carried out in 'int' you are invoking undefined > behavior if it overflows. GCC assumes that doesn't happen so it's correct > to elide the diagnostic. Unless you make overflow well-defined with -fwrapv. > > I think that errors on the right side for the purpose of -Wsign-compare. Removing a diagnostic because the program could be ill-formed seems backwards to me, especially since it seems like there's already logic in performing this diagnostic. Perhaps I've misunderstood the situation?