From: Reid Kleckner Date: Mon, 23 Jul 2018 21:29:43 +0000 (+0000) Subject: [clang-cl] Expose -fblocks and -fno-builtin as driver flags X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9c96ba60ab2112270bb08d20ac18f1e135481626;p=clang [clang-cl] Expose -fblocks and -fno-builtin as driver flags Users have requested them. Helps with PR36427. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@337746 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/clang/Driver/Options.td b/include/clang/Driver/Options.td index d0a31f9495..2470638bec 100644 --- a/include/clang/Driver/Options.td +++ b/include/clang/Driver/Options.td @@ -762,12 +762,12 @@ def faddrsig : Flag<["-"], "faddrsig">, Group, Flags<[CoreOption, CC1Op HelpText<"Emit an address-significance table">; def fno_addrsig : Flag<["-"], "fno-addrsig">, Group, Flags<[CoreOption]>, HelpText<"Don't emit an address-significance table">; -def fblocks : Flag<["-"], "fblocks">, Group, Flags<[CC1Option]>, +def fblocks : Flag<["-"], "fblocks">, Group, Flags<[CoreOption, CC1Option]>, HelpText<"Enable the 'blocks' language feature">; def fbootclasspath_EQ : Joined<["-"], "fbootclasspath=">, Group; def fborland_extensions : Flag<["-"], "fborland-extensions">, Group, Flags<[CC1Option]>, HelpText<"Accept non-standard constructs supported by the Borland compiler">; -def fbuiltin : Flag<["-"], "fbuiltin">, Group; +def fbuiltin : Flag<["-"], "fbuiltin">, Group, Flags<[CoreOption]>; def fbuiltin_module_map : Flag <["-"], "fbuiltin-module-map">, Group, Flags<[DriverOption]>, HelpText<"Load the clang builtins module map file.">; def fcaret_diagnostics : Flag<["-"], "fcaret-diagnostics">, Group; @@ -1320,11 +1320,11 @@ def fno_asynchronous_unwind_tables : Flag<["-"], "fno-asynchronous-unwind-tables def fno_assume_sane_operator_new : Flag<["-"], "fno-assume-sane-operator-new">, Group, HelpText<"Don't assume that C++'s global operator new can't alias any pointer">, Flags<[CC1Option]>; -def fno_blocks : Flag<["-"], "fno-blocks">, Group; +def fno_blocks : Flag<["-"], "fno-blocks">, Group, Flags<[CoreOption]>; def fno_borland_extensions : Flag<["-"], "fno-borland-extensions">, Group; -def fno_builtin : Flag<["-"], "fno-builtin">, Group, Flags<[CC1Option]>, +def fno_builtin : Flag<["-"], "fno-builtin">, Group, Flags<[CC1Option, CoreOption]>, HelpText<"Disable implicit builtin knowledge of functions">; -def fno_builtin_ : Joined<["-"], "fno-builtin-">, Group, Flags<[CC1Option]>, +def fno_builtin_ : Joined<["-"], "fno-builtin-">, Group, Flags<[CC1Option, CoreOption]>, HelpText<"Disable implicit builtin knowledge of a specific function">; def fno_caret_diagnostics : Flag<["-"], "fno-caret-diagnostics">, Group, Flags<[CC1Option]>; diff --git a/test/Driver/cl-options.c b/test/Driver/cl-options.c index b105146c37..9aa6ced349 100644 --- a/test/Driver/cl-options.c +++ b/test/Driver/cl-options.c @@ -565,6 +565,11 @@ // (/Zs is for syntax-only, -Werror makes it fail hard on unknown options) // RUN: %clang_cl \ // RUN: --driver-mode=cl \ +// RUN: -fblocks \ +// RUN: -fno-blocks \ +// RUN: -fbuiltin \ +// RUN: -fno-builtin \ +// RUN: -fno-builtin-strcpy \ // RUN: -fcolor-diagnostics \ // RUN: -fno-color-diagnostics \ // RUN: -fcoverage-mapping \