r373371 - [Diagnostics] Make -Wenum-compare-conditional off by default

Dávid Bolvanský via cfe-commits cfe-commits at lists.llvm.org
Tue Oct 1 11:24:57 PDT 2019


I fixed it, forgot to run clang semacxx check too.

I am not sure.. I checked github and found case:
https://github.com/ros-industrial-consortium/godel/issues/115

Seems like this is very rare, not worth to make it on..

ut 1. 10. 2019 o 20:19 Nico Weber <thakis at chromium.org> napísal(a):
>
> This breaks emaCXX/warn-sign-conversion.cpp -- but see other thread, maybe just revert this for now until we know what we want to do here :)
>
> On Tue, Oct 1, 2019 at 2:10 PM David Bolvansky via cfe-commits <cfe-commits at lists.llvm.org> wrote:
>>
>> Author: xbolva00
>> Date: Tue Oct  1 11:12:13 2019
>> New Revision: 373371
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=373371&view=rev
>> Log:
>> [Diagnostics] Make -Wenum-compare-conditional off by default
>>
>> Too many false positives, eg. in Chromium.
>>
>> Modified:
>>     cfe/trunk/include/clang/Basic/DiagnosticGroups.td
>>     cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td
>>     cfe/trunk/test/Sema/warn-conditional-emum-types-mismatch.c
>>
>> Modified: cfe/trunk/include/clang/Basic/DiagnosticGroups.td
>> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/DiagnosticGroups.td?rev=373371&r1=373370&r2=373371&view=diff
>> ==============================================================================
>> --- cfe/trunk/include/clang/Basic/DiagnosticGroups.td (original)
>> +++ cfe/trunk/include/clang/Basic/DiagnosticGroups.td Tue Oct  1 11:12:13 2019
>> @@ -565,7 +565,7 @@ def SwitchEnum     : DiagGroup<"switch-e
>>  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",
>>
>> Modified: cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td
>> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td?rev=373371&r1=373370&r2=373371&view=diff
>> ==============================================================================
>> --- cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td (original)
>> +++ cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td Tue Oct  1 11:12:13 2019
>> @@ -6172,7 +6172,7 @@ def warn_comparison_of_mixed_enum_types
>>  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">,
>>
>> Modified: cfe/trunk/test/Sema/warn-conditional-emum-types-mismatch.c
>> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Sema/warn-conditional-emum-types-mismatch.c?rev=373371&r1=373370&r2=373371&view=diff
>> ==============================================================================
>> --- cfe/trunk/test/Sema/warn-conditional-emum-types-mismatch.c (original)
>> +++ cfe/trunk/test/Sema/warn-conditional-emum-types-mismatch.c Tue Oct  1 11:12:13 2019
>> @@ -1,9 +1,5 @@
>>  // 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 };
>>
>>
>> _______________________________________________
>> cfe-commits mailing list
>> cfe-commits at lists.llvm.org
>> https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


More information about the cfe-commits mailing list