Author: Fangrui Song
Date: 2022-10-28T15:37:46-07:00
New Revision: eb536613a28b3070081900957553beb783448053
URL: 
https://github.com/llvm/llvm-project/commit/eb536613a28b3070081900957553beb783448053
DIFF: 
https://github.com/llvm/llvm-project/commit/eb536613a28b3070081900957553beb783448053.diff

LOG: [Driver] Fix -fdebug-default-version= -Wunused-command-line-argument after 
D136707

-fdebug-default-version= is designed to suppress -Wunused-command-line-argument
warnings even without a -g option.

Added: 
    

Modified: 
    clang/lib/Driver/ToolChains/Clang.cpp
    clang/test/Driver/debug-default-version.c

Removed: 
    


################################################################################
diff  --git a/clang/lib/Driver/ToolChains/Clang.cpp 
b/clang/lib/Driver/ToolChains/Clang.cpp
index 1ebb37eac25e..6aa377c0a430 100644
--- a/clang/lib/Driver/ToolChains/Clang.cpp
+++ b/clang/lib/Driver/ToolChains/Clang.cpp
@@ -4218,6 +4218,8 @@ static void renderDebugOptions(const ToolChain &TC, const 
Driver &D,
     // Clamp effective DWARF version to the max supported by the toolchain.
     EffectiveDWARFVersion =
         std::min(RequestedDWARFVersion, TC.getMaxDwarfVersion());
+  } else {
+    Args.ClaimAllArgs(options::OPT_fdebug_default_version);
   }
 
   // -gline-directives-only supported only for the DWARF debug info.

diff  --git a/clang/test/Driver/debug-default-version.c 
b/clang/test/Driver/debug-default-version.c
index f244c88a8cd0..f52dbcd8c7e4 100644
--- a/clang/test/Driver/debug-default-version.c
+++ b/clang/test/Driver/debug-default-version.c
@@ -1,10 +1,10 @@
-// RUN: %clang -### -Werror -target x86_64-linux-gnu -fdebug-default-version=4 
-gdwarf-2 -S -o - %s 2>&1 | FileCheck %s --check-prefix=DWARF2
-// RUN: %clang -### -Werror -target x86_64-linux-gnu -gdwarf-3 
-fdebug-default-version=4 -S -o - %s 2>&1 | FileCheck %s --check-prefix=DWARF3
-// RUN: %clang -### -Werror -target x86_64-linux-gnu -gdwarf-4 
-fdebug-default-version=2 -S -o - %s 2>&1 | FileCheck %s --check-prefix=DWARF4
-// RUN: %clang -### -Werror -target x86_64-linux-gnu -gdwarf-5 -S 
-fdebug-default-version=2 -o - %s 2>&1 | FileCheck %s --check-prefix=DWARF5
-// RUN: %clang -### -Werror -target x86_64-linux-gnu -fdebug-default-version=5 
-g -S -o - %s 2>&1 | FileCheck %s --check-prefix=DWARF5
-// RUN: %clang -### -Werror -target x86_64-linux-gnu -gdwarf 
-fdebug-default-version=2 -S -o - %s 2>&1 | FileCheck %s --check-prefix=DWARF2
-// RUN: %clang -### -Werror -target x86_64-linux-gnu -fdebug-default-version=4 
-S -o - %s 2>&1 | FileCheck %s --check-prefixes=NODEBUGINFO,NODWARF4
+// RUN: %clang -### -Werror --target=x86_64 -fdebug-default-version=4 
-gdwarf-2 -S -o - %s 2>&1 | FileCheck %s --check-prefix=DWARF2 
--implicit-check-not=warning:
+// RUN: %clang -### -Werror --target=x86_64 -gdwarf-3 
-fdebug-default-version=4 -S -o - %s 2>&1 | FileCheck %s --check-prefix=DWARF3
+// RUN: %clang -### -Werror --target=x86_64 -gdwarf-4 
-fdebug-default-version=2 -S -o - %s 2>&1 | FileCheck %s --check-prefix=DWARF4
+// RUN: %clang -### -Werror --target=x86_64 -gdwarf-5 -S 
-fdebug-default-version=2 -o - %s 2>&1 | FileCheck %s --check-prefix=DWARF5
+// RUN: %clang -### -Werror --target=x86_64 -fdebug-default-version=5 -g -S -o 
- %s 2>&1 | FileCheck %s --check-prefix=DWARF5 --implicit-check-not=warning:
+// RUN: %clang -### -Werror --target=x86_64 -gdwarf -fdebug-default-version=2 
-S -o - %s 2>&1 | FileCheck %s --check-prefix=DWARF2
+// RUN: %clang -### -Werror --target=x86_64 -fdebug-default-version=4 -S -o - 
%s 2>&1 | FileCheck %s --check-prefixes=NODEBUGINFO,NODWARF4
 
 // Check which debug info formats we use on Windows. By default, in an MSVC
 // environment, we should use codeview. You can enable dwarf, which implicitly


        
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to