[clang-tools-extra] [clang-tidy][NFC] concat static-analyzer name at compilation time (PR #147406)
Victor Chernyakin via cfe-commits
cfe-commits at lists.llvm.org
Wed Jul 9 02:31:57 PDT 2025
https://github.com/localspook updated https://github.com/llvm/llvm-project/pull/147406
>From 779dd600a1190b36c1343343e139f6579fa5190b Mon Sep 17 00:00:00 2001
From: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: Mon, 7 Jul 2025 14:14:44 -0700
Subject: [PATCH 1/2] [clang-tidy][NFC] Do more work at compile time
---
clang-tools-extra/clang-tidy/ClangTidy.cpp | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/clang-tools-extra/clang-tidy/ClangTidy.cpp b/clang-tools-extra/clang-tidy/ClangTidy.cpp
index f4ab93b51f4a7..815033c2e5175 100644
--- a/clang-tools-extra/clang-tidy/ClangTidy.cpp
+++ b/clang-tools-extra/clang-tidy/ClangTidy.cpp
@@ -668,18 +668,19 @@ getAllChecksAndOptions(bool AllowEnablingAnalyzerAlphaCheckers) {
Buffer.append(AnalyzerCheck);
Result.Checks.insert(Buffer);
}
- for (std::string OptionName : {
+
+ static constexpr llvm::StringLiteral OptionNames[] = {
#define GET_CHECKER_OPTIONS
#define CHECKER_OPTION(TYPE, CHECKER, OPTION_NAME, DESCRIPTION, DEFAULT, \
RELEASE, HIDDEN) \
- Twine(AnalyzerCheckNamePrefix).concat(CHECKER ":" OPTION_NAME).str(),
+ "clang-analyzer-" CHECKER ":" OPTION_NAME,
#include "clang/StaticAnalyzer/Checkers/Checkers.inc"
#undef CHECKER_OPTION
#undef GET_CHECKER_OPTIONS
- }) {
- Result.Options.insert(OptionName);
- }
+ };
+
+ Result.Options.insert_range(OptionNames);
#endif // CLANG_TIDY_ENABLE_STATIC_ANALYZER
Context.setOptionsCollector(&Result.Options);
>From 19492a294f364dae68ba8432a8d2a17597dda82d Mon Sep 17 00:00:00 2001
From: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: Wed, 9 Jul 2025 02:31:29 -0700
Subject: [PATCH 2/2] Macroize
---
clang-tools-extra/clang-tidy/ClangTidy.cpp | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/clang-tools-extra/clang-tidy/ClangTidy.cpp b/clang-tools-extra/clang-tidy/ClangTidy.cpp
index 815033c2e5175..93f798643a5ca 100644
--- a/clang-tools-extra/clang-tidy/ClangTidy.cpp
+++ b/clang-tools-extra/clang-tidy/ClangTidy.cpp
@@ -55,7 +55,8 @@ namespace clang::tidy {
namespace {
#if CLANG_TIDY_ENABLE_STATIC_ANALYZER
-static const char *AnalyzerCheckNamePrefix = "clang-analyzer-";
+#define ANALYZER_CHECK_NAME_PREFIX "clang-analyzer-"
+static const char *AnalyzerCheckNamePrefix = ANALYZER_CHECK_NAME_PREFIX;
class AnalyzerDiagnosticConsumer : public ento::PathDiagnosticConsumer {
public:
@@ -673,7 +674,7 @@ getAllChecksAndOptions(bool AllowEnablingAnalyzerAlphaCheckers) {
#define GET_CHECKER_OPTIONS
#define CHECKER_OPTION(TYPE, CHECKER, OPTION_NAME, DESCRIPTION, DEFAULT, \
RELEASE, HIDDEN) \
- "clang-analyzer-" CHECKER ":" OPTION_NAME,
+ ANALYZER_CHECK_NAME_PREFIX CHECKER ":" OPTION_NAME,
#include "clang/StaticAnalyzer/Checkers/Checkers.inc"
#undef CHECKER_OPTION
More information about the cfe-commits
mailing list