[clang-tools-extra] [clang-tidy][NFC] Make global variable constexpr (PR #147301)
via cfe-commits
cfe-commits at lists.llvm.org
Mon Jul 7 06:41:50 PDT 2025
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-clang-tools-extra
Author: Victor Chernyakin (localspook)
<details>
<summary>Changes</summary>
```cpp
static const char *AnalyzerCheckNamePrefix = "clang-analyzer-";
```
Right now, `AnalyzerCheckNamePrefix` is global mutable state. Probably not what was intended!
---
Full diff: https://github.com/llvm/llvm-project/pull/147301.diff
1 Files Affected:
- (modified) clang-tools-extra/clang-tidy/ClangTidy.cpp (+4-4)
``````````diff
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);
``````````
</details>
https://github.com/llvm/llvm-project/pull/147301
More information about the cfe-commits
mailing list