[clang-tools-extra] [clang-tidy][NFC] Make global variable constexpr (PR #147301)
Victor Chernyakin via cfe-commits
cfe-commits at lists.llvm.org
Mon Jul 7 06:40:59 PDT 2025
https://github.com/localspook created https://github.com/llvm/llvm-project/pull/147301
```cpp
static const char *AnalyzerCheckNamePrefix = "clang-analyzer-";
```
Right now, `AnalyzerCheckNamePrefix` is global mutable state. Probably not what was intended!
>From e7b9da97611b272aae38ab3e4c7ed4113fec1728 Mon Sep 17 00:00:00 2001
From: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: Mon, 7 Jul 2025 06:34:02 -0700
Subject: [PATCH] [clang-tidy][NFC] Make global variable constexpr
---
clang-tools-extra/clang-tidy/ClangTidy.cpp | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/clang-tools-extra/clang-tidy/ClangTidy.cpp b/clang-tools-extra/clang-tidy/ClangTidy.cpp
index f4ab93b51f4a7..c24e339d3628d 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-";
+static constexpr llvm::StringLiteral AnalyzerCheckNamePrefix =
+ "clang-analyzer-";
class AnalyzerDiagnosticConsumer : public ento::PathDiagnosticConsumer {
public:
@@ -351,10 +352,9 @@ ClangTidyASTConsumerFactory::ClangTidyASTConsumerFactory(
static void
setStaticAnalyzerCheckerOpts(const ClangTidyOptions &Opts,
clang::AnalyzerOptions &AnalyzerOptions) {
- StringRef AnalyzerPrefix(AnalyzerCheckNamePrefix);
for (const auto &Opt : Opts.CheckOptions) {
StringRef OptName(Opt.getKey());
- if (!OptName.consume_front(AnalyzerPrefix))
+ if (!OptName.consume_front(AnalyzerCheckNamePrefix))
continue;
// Analyzer options are always local options so we can ignore priority.
AnalyzerOptions.Config[OptName] = Opt.getValue().Value;
@@ -476,7 +476,7 @@ std::vector<std::string> ClangTidyASTConsumerFactory::getCheckNames() {
#if CLANG_TIDY_ENABLE_STATIC_ANALYZER
for (const auto &AnalyzerCheck : getAnalyzerCheckersAndPackages(
Context, Context.canEnableAnalyzerAlphaCheckers()))
- CheckNames.push_back(AnalyzerCheckNamePrefix + AnalyzerCheck.first);
+ CheckNames.emplace_back(AnalyzerCheckNamePrefix + AnalyzerCheck.first);
#endif // CLANG_TIDY_ENABLE_STATIC_ANALYZER
llvm::sort(CheckNames);
More information about the cfe-commits
mailing list