
apply
5b77e752dc
to clang 14-16 and backport the patch to apply to clang 12-13
backported patch just drops the final change in Hunk 2 of Options.td as
it doesn't exist until clang-14
58 lines
3.5 KiB
Diff
58 lines
3.5 KiB
Diff
backported to clang-12 & clang-13 from https://github.com/llvm/llvm-project/commit/5b77e752dcd073846b89559d6c0e1a7699e58615
|
|
diff --git a/include/clang/Driver/Options.td b/include/clang/Driver/Options.td
|
|
index a0cbcae..8797646 100644
|
|
--- a/include/clang/Driver/Options.td
|
|
+++ b/include/clang/Driver/Options.td
|
|
@@ -2931,7 +2931,7 @@ def headerpad__max__install__names : Joined<["-"], "headerpad_max_install_names"
|
|
def help : Flag<["-", "--"], "help">, Flags<[CC1Option,CC1AsOption, FC1Option,
|
|
FlangOption]>, HelpText<"Display available options">,
|
|
MarshallingInfoFlag<FrontendOpts<"ShowHelp">>;
|
|
-def ibuiltininc : Flag<["-"], "ibuiltininc">,
|
|
+def ibuiltininc : Flag<["-"], "ibuiltininc">, Group<clang_i_Group>,
|
|
HelpText<"Enable builtin #include directories even when -nostdinc is used "
|
|
"before or after -ibuiltininc. "
|
|
"Using -nobuiltininc after the option disables it">;
|
|
@@ -3641,10 +3641,11 @@ def no_cpp_precomp : Flag<["-"], "no-cpp-precomp">, Group<clang_ignored_f_Group>
|
|
def no_integrated_cpp : Flag<["-", "--"], "no-integrated-cpp">, Flags<[NoXarchOption]>;
|
|
def no_pedantic : Flag<["-", "--"], "no-pedantic">, Group<pedantic_Group>;
|
|
def no__dead__strip__inits__and__terms : Flag<["-"], "no_dead_strip_inits_and_terms">;
|
|
-def nobuiltininc : Flag<["-"], "nobuiltininc">, Flags<[CC1Option, CoreOption]>,
|
|
+def nobuiltininc : Flag<["-"], "nobuiltininc">, Flags<[CC1Option, CoreOption]>, Group<IncludePath_Group>,
|
|
HelpText<"Disable builtin #include directories">,
|
|
MarshallingInfoNegativeFlag<HeaderSearchOpts<"UseBuiltinIncludes">>;
|
|
-def nogpuinc : Flag<["-"], "nogpuinc">, HelpText<"Do not add include paths for CUDA/HIP and"
|
|
+def nogpuinc : Flag<["-"], "nogpuinc">, Group<IncludePath_Group>,
|
|
+ HelpText<"Do not add include paths for CUDA/HIP and"
|
|
" do not include the default CUDA/HIP wrapper headers">;
|
|
def : Flag<["-"], "nocudainc">, Alias<nogpuinc>;
|
|
def nogpulib : Flag<["-"], "nogpulib">,
|
|
@@ -3660,9 +3661,9 @@ def noprebind : Flag<["-"], "noprebind">;
|
|
def noprofilelib : Flag<["-"], "noprofilelib">;
|
|
def noseglinkedit : Flag<["-"], "noseglinkedit">;
|
|
def nostartfiles : Flag<["-"], "nostartfiles">, Group<Link_Group>;
|
|
-def nostdinc : Flag<["-"], "nostdinc">, Flags<[CoreOption]>;
|
|
-def nostdlibinc : Flag<["-"], "nostdlibinc">;
|
|
-def nostdincxx : Flag<["-"], "nostdinc++">, Flags<[CC1Option]>,
|
|
+def nostdinc : Flag<["-"], "nostdinc">, Flags<[CoreOption]>, Group<IncludePath_Group>;
|
|
+def nostdlibinc : Flag<["-"], "nostdlibinc">, Group<IncludePath_Group>;
|
|
+def nostdincxx : Flag<["-"], "nostdinc++">, Flags<[CC1Option]>, Group<IncludePath_Group>,
|
|
HelpText<"Disable standard #include directories for the C++ standard library">,
|
|
MarshallingInfoNegativeFlag<HeaderSearchOpts<"UseStandardCXXIncludes">>;
|
|
def nostdlib : Flag<["-"], "nostdlib">, Group<Link_Group>;
|
|
diff --git a/test/Driver/linker-opts.c b/test/Driver/linker-opts.c
|
|
index e1673f7..b9beb91 100644
|
|
--- a/test/Driver/linker-opts.c
|
|
+++ b/test/Driver/linker-opts.c
|
|
@@ -16,9 +16,8 @@
|
|
//
|
|
// Make sure that we don't warn on unused compiler arguments.
|
|
// RUN: %clang -Xclang -I. -x c %s -c -o %t/tmp.o
|
|
-// RUN: %clang -Xclang -I. %t/tmp.o -o %t/tmp -### 2>&1 | FileCheck %s --check-prefix=NO-UNUSED
|
|
-// NO-UNUSED-NOT: warning:{{.*}}unused
|
|
-//
|
|
+// RUN: %clang -### -I. -ibuiltininc -nobuiltininc -nostdinc -nostdinc++ -nostdlibinc -nogpuinc %t/tmp.o -o /dev/null 2>&1 | FileCheck /dev/null --implicit-check-not=warning:
|
|
+
|
|
// Make sure that we do warn in other cases.
|
|
// RUN: %clang %s -lfoo -c -o %t/tmp2.o -### 2>&1 | FileCheck %s --check-prefix=UNUSED
|
|
// UNUSED: warning:{{.*}}unused
|