https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100879
--- Comment #3 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The releases/gcc-11 branch has been updated by Jason Merrill <ja...@gcc.gnu.org>: https://gcc.gnu.org/g:4f2819223873266b4cdfa7af54752a37d1ebd665 commit r11-8628-g4f2819223873266b4cdfa7af54752a37d1ebd665 Author: Jason Merrill <ja...@redhat.com> Date: Tue Jun 8 17:48:49 2021 -0400 c++: remove redundant warning [PR100879] Before my r277864, build_new_op promoted enums to int before passing them on to cp_build_binary_op; after that commit, it doesn't, so warn_for_sign_compare sees the enum operands and gives a redundant warning. This warning dates back to 1995, and seems to have been dead code for a long time--likely since build_new_op was added in 1997--so let's just remove it. PR c++/100879 gcc/c-family/ChangeLog: * c-warn.c (warn_for_sign_compare): Remove C++ enum mismatch warning. gcc/testsuite/ChangeLog: * g++.dg/diagnostic/enum3.C: New test.