[clang] [clang] Stop parsing warning suppression mappings in driver (PR #125722)

via cfe-commits cfe-commits at lists.llvm.org
Tue Feb 4 09:07:16 PST 2025


llvmbot wrote:


<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-clang

Author: kadir çetinkaya (kadircet)

<details>
<summary>Changes</summary>

This gets rid of some extra IO from driver startup, and possiblity of
emitting warnings twice.


---
Full diff: https://github.com/llvm/llvm-project/pull/125722.diff


1 Files Affected:

- (modified) clang/tools/driver/driver.cpp (+4) 


``````````diff
diff --git a/clang/tools/driver/driver.cpp b/clang/tools/driver/driver.cpp
index 74923247b7ee16..00c00cea16f470 100644
--- a/clang/tools/driver/driver.cpp
+++ b/clang/tools/driver/driver.cpp
@@ -318,6 +318,10 @@ int clang_main(int Argc, char **Argv, const llvm::ToolContext &ToolContext) {
 
   IntrusiveRefCntPtr<DiagnosticOptions> DiagOpts =
       CreateAndPopulateDiagOpts(Args);
+  // Driver's diagnostics don't use suppression mappings, so don't bother
+  // parsing them. CC1 still receives full args, so this doesn't impact other
+  // actions.
+  DiagOpts->DiagnosticSuppressionMappingsFile.clear();
 
   TextDiagnosticPrinter *DiagClient
     = new TextDiagnosticPrinter(llvm::errs(), &*DiagOpts);

``````````

</details>


https://github.com/llvm/llvm-project/pull/125722


More information about the cfe-commits mailing list