def Switch : DiagGroup<"switch">;
def EnumCompareConditional : DiagGroup<"enum-compare-conditional">;
def EnumCompareSwitch : DiagGroup<"enum-compare-switch">;
-def EnumCompare : DiagGroup<"enum-compare", [EnumCompareConditional, EnumCompareSwitch]>;
+def EnumCompare : DiagGroup<"enum-compare", [EnumCompareSwitch]>;
def ImplicitFallthroughPerFunction :
DiagGroup<"implicit-fallthrough-per-function">;
def ImplicitFallthrough : DiagGroup<"implicit-fallthrough",
def warn_conditional_mixed_enum_types : Warning<
"enumeration type mismatch in conditional expression"
"%diff{ ($ and $)|}0,1">,
- InGroup<EnumCompareConditional>;
+ InGroup<EnumCompareConditional>, DefaultIgnore;
def warn_comparison_of_mixed_enum_types_switch : Warning<
"comparison of two values with different enumeration types in switch statement"
"%diff{ ($ and $)|}0,1">,
// RUN: %clang_cc1 -x c -fsyntax-only -verify -Wenum-compare-conditional %s
-// RUN: %clang_cc1 -x c -fsyntax-only -verify -Wenum-compare %s
-// RUN: %clang_cc1 -x c -fsyntax-only -verify %s
// RUN: %clang_cc1 -x c++ -fsyntax-only -verify -Wenum-compare-conditional %s
-// RUN: %clang_cc1 -x c++ -fsyntax-only -verify -Wenum-compare %s
-// RUN: %clang_cc1 -x c++ -fsyntax-only -verify %s
enum ro { A = 0x10 };
enum rw { B = 0xFF };