r255382 - [clang-cl] Let /W4 map to -Wall -Wextra instead of just -Wall.

Reid Kleckner via cfe-commits cfe-commits at lists.llvm.org
Mon Dec 14 19:01:34 PST 2015


So, this change makes it impossible to download the build lots from the
Windows self-hosting builders because of -Wunused-parameter errors.
http://lab.llvm.org:8011/builders/clang-x86-win2008-selfhost/builds/5103/steps/build%20stage%202/logs/stdio

Maybe that's an indication that users don't really want /W4 to go to
-Wextra?

On Fri, Dec 11, 2015 at 2:31 PM, Nico Weber via cfe-commits <
cfe-commits at lists.llvm.org> wrote:

> Author: nico
> Date: Fri Dec 11 16:31:16 2015
> New Revision: 255382
>
> URL: http://llvm.org/viewvc/llvm-project?rev=255382&view=rev
> Log:
> [clang-cl] Let /W4 map to -Wall -Wextra instead of just -Wall.
>
> There's no way to make a flag alias to two flags, so add a /WCL4 flag that
> maps to the All, Extra diag groups.  Fixes PR25563.
>
> http://reviews.llvm.org/D15350
>
> Modified:
>     cfe/trunk/docs/UsersManual.rst
>     cfe/trunk/include/clang/Basic/DiagnosticGroups.td
>     cfe/trunk/include/clang/Driver/CLCompatOptions.td
>     cfe/trunk/include/clang/Driver/Options.td
>     cfe/trunk/test/Driver/cl-options.c
>
> Modified: cfe/trunk/docs/UsersManual.rst
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/docs/UsersManual.rst?rev=255382&r1=255381&r2=255382&view=diff
>
> ==============================================================================
> --- cfe/trunk/docs/UsersManual.rst (original)
> +++ cfe/trunk/docs/UsersManual.rst Fri Dec 11 16:31:16 2015
> @@ -2080,7 +2080,7 @@ Execute ``clang-cl /?`` to see a list of
>        /W1                    Enable -Wall
>        /W2                    Enable -Wall
>        /W3                    Enable -Wall
> -      /W4                    Enable -Wall
> +      /W4                    Enable -Wall and -Wextra
>        /Wall                  Enable -Wall
>        /WX-                   Do not treat warnings as errors
>        /WX                    Treat warnings as errors
>
> Modified: cfe/trunk/include/clang/Basic/DiagnosticGroups.td
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/DiagnosticGroups.td?rev=255382&r1=255381&r2=255382&view=diff
>
> ==============================================================================
> --- cfe/trunk/include/clang/Basic/DiagnosticGroups.td (original)
> +++ cfe/trunk/include/clang/Basic/DiagnosticGroups.td Fri Dec 11 16:31:16
> 2015
> @@ -663,7 +663,10 @@ def Consumed       : DiagGroup<"consumed
>  // Note that putting warnings in -Wall will not disable them by default.
> If a
>  // warning should be active _only_ when -Wall is passed in, mark it as
>  // DefaultIgnore in addition to putting it here.
> -def : DiagGroup<"all", [Most, Parentheses, Switch, SwitchBool]>;
> +def All : DiagGroup<"all", [Most, Parentheses, Switch, SwitchBool]>;
> +
> +// Warnings that should be in clang-cl /w4.
> +def : DiagGroup<"CL4", [All, Extra]>;
>
>  // Warnings enabled by -pedantic.  This is magically filled in by
> TableGen.
>  def Pedantic : DiagGroup<"pedantic">;
>
> Modified: cfe/trunk/include/clang/Driver/CLCompatOptions.td
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Driver/CLCompatOptions.td?rev=255382&r1=255381&r2=255382&view=diff
>
> ==============================================================================
> --- cfe/trunk/include/clang/Driver/CLCompatOptions.td (original)
> +++ cfe/trunk/include/clang/Driver/CLCompatOptions.td Fri Dec 11 16:31:16
> 2015
> @@ -119,7 +119,7 @@ def _SLASH_W0 : CLFlag<"W0">, HelpText<"
>  def _SLASH_W1 : CLFlag<"W1">, HelpText<"Enable -Wall">, Alias<Wall>;
>  def _SLASH_W2 : CLFlag<"W2">, HelpText<"Enable -Wall">, Alias<Wall>;
>  def _SLASH_W3 : CLFlag<"W3">, HelpText<"Enable -Wall">, Alias<Wall>;
> -def _SLASH_W4 : CLFlag<"W4">, HelpText<"Enable -Wall">, Alias<Wall>;
> +def _SLASH_W4 : CLFlag<"W4">, HelpText<"Enable -Wall and -Wextra">,
> Alias<WCL4>;
>  def _SLASH_Wall : CLFlag<"Wall">, HelpText<"Enable -Wall">, Alias<Wall>;
>  def _SLASH_WX : CLFlag<"WX">, HelpText<"Treat warnings as errors">,
>    Alias<W_Joined>, AliasArgs<["error"]>;
>
> Modified: cfe/trunk/include/clang/Driver/Options.td
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Driver/Options.td?rev=255382&r1=255381&r2=255382&view=diff
>
> ==============================================================================
> --- cfe/trunk/include/clang/Driver/Options.td (original)
> +++ cfe/trunk/include/clang/Driver/Options.td Fri Dec 11 16:31:16 2015
> @@ -295,6 +295,7 @@ def Wa_COMMA : CommaJoined<["-"], "Wa,">
>    HelpText<"Pass the comma separated arguments in <arg> to the
> assembler">,
>    MetaVarName<"<arg>">;
>  def Wall : Flag<["-"], "Wall">, Group<W_Group>, Flags<[CC1Option]>;
> +def WCL4 : Flag<["-"], "WCL4">, Group<W_Group>, Flags<[CC1Option]>;
>  def Wdeprecated : Flag<["-"], "Wdeprecated">, Group<W_Group>,
> Flags<[CC1Option]>;
>  def Wno_deprecated : Flag<["-"], "Wno-deprecated">, Group<W_Group>,
> Flags<[CC1Option]>;
>  def Wextra : Flag<["-"], "Wextra">, Group<W_Group>, Flags<[CC1Option]>;
>
> Modified: cfe/trunk/test/Driver/cl-options.c
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/cl-options.c?rev=255382&r1=255381&r2=255382&view=diff
>
> ==============================================================================
> --- cfe/trunk/test/Driver/cl-options.c (original)
> +++ cfe/trunk/test/Driver/cl-options.c Fri Dec 11 16:31:16 2015
> @@ -173,9 +173,10 @@
>  // RUN: %clang_cl /W1 -### -- %s 2>&1 | FileCheck -check-prefix=W1 %s
>  // RUN: %clang_cl /W2 -### -- %s 2>&1 | FileCheck -check-prefix=W1 %s
>  // RUN: %clang_cl /W3 -### -- %s 2>&1 | FileCheck -check-prefix=W1 %s
> -// RUN: %clang_cl /W4 -### -- %s 2>&1 | FileCheck -check-prefix=W1 %s
> +// RUN: %clang_cl /W4 -### -- %s 2>&1 | FileCheck -check-prefix=W4 %s
>  // RUN: %clang_cl /Wall -### -- %s 2>&1 | FileCheck -check-prefix=W1 %s
>  // W1: -Wall
> +// W4: -WCL4
>
>  // RUN: %clang_cl /WX -### -- %s 2>&1 | FileCheck -check-prefix=WX %s
>  // WX: -Werror
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20151214/c4524f8e/attachment.html>


More information about the cfe-commits mailing list