Author: Victor Chernyakin
Date: 2025-12-23T14:25:57-06:00
New Revision: 7bad28856702bb13fe7d1776bdc5f2646db442fd

URL: 
https://github.com/llvm/llvm-project/commit/7bad28856702bb13fe7d1776bdc5f2646db442fd
DIFF: 
https://github.com/llvm/llvm-project/commit/7bad28856702bb13fe7d1776bdc5f2646db442fd.diff

LOG: [clang-tidy][NFC] Prefer `static constexpr` over `static const` where 
possible (#173406)

Added: 
    

Modified: 
    clang-tools-extra/clang-tidy/ClangTidyOptions.cpp
    clang-tools-extra/clang-tidy/ClangTidyOptions.h
    clang-tools-extra/clang-tidy/abseil/StringFindStrContainsCheck.cpp
    clang-tools-extra/clang-tidy/boost/UseRangesCheck.cpp
    clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp
    clang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.cpp
    clang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.h
    clang-tools-extra/clang-tidy/modernize/ReplaceAutoPtrCheck.cpp
    clang-tools-extra/clang-tidy/modernize/UseAutoCheck.cpp
    clang-tools-extra/clang-tidy/modernize/UseEmplaceCheck.cpp
    clang-tools-extra/clang-tidy/modernize/UseEqualsDefaultCheck.cpp
    clang-tools-extra/clang-tidy/modernize/UseEqualsDeleteCheck.cpp
    clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp
    clang-tools-extra/clang-tidy/modernize/UseRangesCheck.cpp
    clang-tools-extra/clang-tidy/modernize/UseTransparentFunctorsCheck.cpp
    clang-tools-extra/clang-tidy/performance/InefficientVectorOperationCheck.cpp
    clang-tools-extra/clang-tidy/readability/AvoidReturnWithVoidValueCheck.cpp
    clang-tools-extra/clang-tidy/readability/ElseAfterReturnCheck.cpp
    
clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp
    clang-tools-extra/clang-tidy/readability/SimplifySubscriptExprCheck.cpp
    clang-tools-extra/clang-tidy/readability/StringCompareCheck.cpp
    clang-tools-extra/clang-tidy/utils/OptionsUtils.cpp

Removed: 
    


################################################################################
diff  --git a/clang-tools-extra/clang-tidy/ClangTidyOptions.cpp 
b/clang-tools-extra/clang-tidy/ClangTidyOptions.cpp
index 9aa679a9bf8d3..a6c3f2dfb053b 100644
--- a/clang-tools-extra/clang-tidy/ClangTidyOptions.cpp
+++ b/clang-tools-extra/clang-tidy/ClangTidyOptions.cpp
@@ -157,7 +157,7 @@ template <> struct 
ScalarEnumerationTraits<clang::DiagnosticIDs::Level> {
 };
 template <> struct SequenceElementTraits<ClangTidyOptions::CustomCheckDiag> {
   // NOLINTNEXTLINE(readability-identifier-naming) Defined by YAMLTraits.h
-  static const bool flow = false;
+  static constexpr bool flow = false;
 };
 template <> struct MappingTraits<ClangTidyOptions::CustomCheckDiag> {
   static void mapping(IO &IO, ClangTidyOptions::CustomCheckDiag &D) {
@@ -169,7 +169,7 @@ template <> struct 
MappingTraits<ClangTidyOptions::CustomCheckDiag> {
 };
 template <> struct SequenceElementTraits<ClangTidyOptions::CustomCheckValue> {
   // NOLINTNEXTLINE(readability-identifier-naming) Defined by YAMLTraits.h
-  static const bool flow = false;
+  static constexpr bool flow = false;
 };
 template <> struct MappingTraits<ClangTidyOptions::CustomCheckValue> {
   static void mapping(IO &IO, ClangTidyOptions::CustomCheckValue &V) {
@@ -324,14 +324,6 @@ ClangTidyOptions ClangTidyOptions::merge(const 
ClangTidyOptions &Other,
   return Result;
 }
 
-const char ClangTidyOptionsProvider::OptionsSourceTypeDefaultBinary[] =
-    "clang-tidy binary";
-const char ClangTidyOptionsProvider::OptionsSourceTypeCheckCommandLineOption[] 
=
-    "command-line option '-checks'";
-const char
-    ClangTidyOptionsProvider::OptionsSourceTypeConfigCommandLineOption[] =
-        "command-line option '-config'";
-
 ClangTidyOptions
 ClangTidyOptionsProvider::getOptions(llvm::StringRef FileName) {
   ClangTidyOptions Result;

diff  --git a/clang-tools-extra/clang-tidy/ClangTidyOptions.h 
b/clang-tools-extra/clang-tidy/ClangTidyOptions.h
index 97daed448063b..23bbfb01c2ecd 100644
--- a/clang-tools-extra/clang-tidy/ClangTidyOptions.h
+++ b/clang-tools-extra/clang-tidy/ClangTidyOptions.h
@@ -170,9 +170,11 @@ struct ClangTidyOptions {
 /// Abstract interface for retrieving various ClangTidy options.
 class ClangTidyOptionsProvider {
 public:
-  static const char OptionsSourceTypeDefaultBinary[];
-  static const char OptionsSourceTypeCheckCommandLineOption[];
-  static const char OptionsSourceTypeConfigCommandLineOption[];
+  static constexpr char OptionsSourceTypeDefaultBinary[] = "clang-tidy binary";
+  static constexpr char OptionsSourceTypeCheckCommandLineOption[] =
+      "command-line option '-checks'";
+  static constexpr char OptionsSourceTypeConfigCommandLineOption[] =
+      "command-line option '-config'";
 
   virtual ~ClangTidyOptionsProvider() = default;
 

diff  --git 
a/clang-tools-extra/clang-tidy/abseil/StringFindStrContainsCheck.cpp 
b/clang-tools-extra/clang-tidy/abseil/StringFindStrContainsCheck.cpp
index 6eb559717077b..5b31c002fce2b 100644
--- a/clang-tools-extra/clang-tidy/abseil/StringFindStrContainsCheck.cpp
+++ b/clang-tools-extra/clang-tidy/abseil/StringFindStrContainsCheck.cpp
@@ -33,10 +33,11 @@ namespace {
 AST_MATCHER(Type, isCharType) { return Node.isCharType(); }
 } // namespace
 
-static const char DefaultStringLikeClasses[] = "::std::basic_string;"
-                                               "::std::basic_string_view;"
-                                               "::absl::string_view";
-static const char DefaultAbseilStringsMatchHeader[] = "absl/strings/match.h";
+static constexpr char DefaultStringLikeClasses[] = "::std::basic_string;"
+                                                   "::std::basic_string_view;"
+                                                   "::absl::string_view";
+static constexpr char DefaultAbseilStringsMatchHeader[] =
+    "absl/strings/match.h";
 
 static transformer::RewriteRuleWith<std::string>
 makeRewriteRule(ArrayRef<StringRef> StringLikeClassNames,

diff  --git a/clang-tools-extra/clang-tidy/boost/UseRangesCheck.cpp 
b/clang-tools-extra/clang-tidy/boost/UseRangesCheck.cpp
index 970cbd93ee7c2..a72d8a3d4f390 100644
--- a/clang-tools-extra/clang-tidy/boost/UseRangesCheck.cpp
+++ b/clang-tools-extra/clang-tidy/boost/UseRangesCheck.cpp
@@ -348,7 +348,7 @@ DiagnosticBuilder UseRangesCheck::createDiag(const CallExpr 
&Call) {
 }
 ArrayRef<std::pair<StringRef, StringRef>>
 UseRangesCheck::getFreeBeginEndMethods() const {
-  static const std::pair<StringRef, StringRef> Refs[] = {
+  static constexpr std::pair<StringRef, StringRef> Refs[] = {
       {"::std::begin", "::std::end"},
       {"::std::cbegin", "::std::cend"},
       {"::boost::range_adl_barrier::begin", "::boost::range_adl_barrier::end"},
@@ -359,7 +359,7 @@ UseRangesCheck::getFreeBeginEndMethods() const {
 }
 std::optional<UseRangesCheck::ReverseIteratorDescriptor>
 UseRangesCheck::getReverseDescriptor() const {
-  static const std::pair<StringRef, StringRef> Refs[] = {
+  static constexpr std::pair<StringRef, StringRef> Refs[] = {
       {"::std::rbegin", "::std::rend"},
       {"::std::crbegin", "::std::crend"},
       {"::boost::rbegin", "::boost::rend"},

diff  --git a/clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp 
b/clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp
index 7343557ccb722..2d63da2fef974 100644
--- a/clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp
+++ b/clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp
@@ -55,17 +55,17 @@ template <> struct 
OptionEnumMapping<modernize::VariableNamer::NamingStyle> {
 
 namespace modernize {
 
-static const char LoopNameArray[] = "forLoopArray";
-static const char LoopNameIterator[] = "forLoopIterator";
-static const char LoopNameReverseIterator[] = "forLoopReverseIterator";
-static const char LoopNamePseudoArray[] = "forLoopPseudoArray";
-static const char ConditionBoundName[] = "conditionBound";
-static const char InitVarName[] = "initVar";
-static const char BeginCallName[] = "beginCall";
-static const char EndCallName[] = "endCall";
-static const char EndVarName[] = "endVar";
-static const char DerefByValueResultName[] = "derefByValueResult";
-static const char DerefByRefResultName[] = "derefByRefResult";
+static constexpr char LoopNameArray[] = "forLoopArray";
+static constexpr char LoopNameIterator[] = "forLoopIterator";
+static constexpr char LoopNameReverseIterator[] = "forLoopReverseIterator";
+static constexpr char LoopNamePseudoArray[] = "forLoopPseudoArray";
+static constexpr char ConditionBoundName[] = "conditionBound";
+static constexpr char InitVarName[] = "initVar";
+static constexpr char BeginCallName[] = "beginCall";
+static constexpr char EndCallName[] = "endCall";
+static constexpr char EndVarName[] = "endVar";
+static constexpr char DerefByValueResultName[] = "derefByValueResult";
+static constexpr char DerefByRefResultName[] = "derefByRefResult";
 static const llvm::StringSet<> MemberNames{"begin",   "cbegin", "rbegin",
                                            "crbegin", "end",    "cend",
                                            "rend",    "crend",  "size"};

diff  --git a/clang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.cpp 
b/clang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.cpp
index 94fb8b418a282..1fdb479b9a032 100644
--- a/clang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.cpp
+++ b/clang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.cpp
@@ -33,8 +33,6 @@ static std::string getNewExprName(const CXXNewExpr *NewExpr,
   return WrittenName.str();
 }
 
-const char MakeSmartPtrCheck::PointerType[] = "pointerType";
-
 MakeSmartPtrCheck::MakeSmartPtrCheck(StringRef Name, ClangTidyContext *Context,
                                      StringRef MakeSmartPtrFunctionName)
     : ClangTidyCheck(Name, Context),

diff  --git a/clang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.h 
b/clang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.h
index 1d70f62d4be4e..e15ba34dcf3d3 100644
--- a/clang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.h
+++ b/clang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.h
@@ -41,7 +41,7 @@ class MakeSmartPtrCheck : public ClangTidyCheck {
   /// Returns whether the C++ version is compatible with current check.
   bool isLanguageVersionSupported(const LangOptions &LangOpts) const override;
 
-  static const char PointerType[];
+  static constexpr char PointerType[] = "pointerType";
 
 private:
   utils::IncludeInserter Inserter;

diff  --git a/clang-tools-extra/clang-tidy/modernize/ReplaceAutoPtrCheck.cpp 
b/clang-tools-extra/clang-tidy/modernize/ReplaceAutoPtrCheck.cpp
index d0577aeccd2f1..6af05b11bb395 100644
--- a/clang-tools-extra/clang-tidy/modernize/ReplaceAutoPtrCheck.cpp
+++ b/clang-tools-extra/clang-tidy/modernize/ReplaceAutoPtrCheck.cpp
@@ -18,9 +18,11 @@ using namespace clang::ast_matchers;
 
 namespace clang::tidy::modernize {
 
+static constexpr char AutoPtrTokenId[] = "AutoPrTokenId";
+static constexpr char AutoPtrOwnershipTransferId[] =
+    "AutoPtrOwnershipTransferId";
+
 namespace {
-static const char AutoPtrTokenId[] = "AutoPrTokenId";
-static const char AutoPtrOwnershipTransferId[] = "AutoPtrOwnershipTransferId";
 
 /// Matches expressions that are lvalues.
 ///

diff  --git a/clang-tools-extra/clang-tidy/modernize/UseAutoCheck.cpp 
b/clang-tools-extra/clang-tidy/modernize/UseAutoCheck.cpp
index 977ade12e2c3a..1666987411790 100644
--- a/clang-tools-extra/clang-tidy/modernize/UseAutoCheck.cpp
+++ b/clang-tools-extra/clang-tidy/modernize/UseAutoCheck.cpp
@@ -21,10 +21,10 @@ using namespace clang::ast_matchers::internal;
 
 namespace clang::tidy::modernize {
 
-static const char IteratorDeclStmtId[] = "iterator_decl";
-static const char DeclWithNewId[] = "decl_new";
-static const char DeclWithCastId[] = "decl_cast";
-static const char DeclWithTemplateCastId[] = "decl_template";
+static constexpr char IteratorDeclStmtId[] = "iterator_decl";
+static constexpr char DeclWithNewId[] = "decl_new";
+static constexpr char DeclWithCastId[] = "decl_cast";
+static constexpr char DeclWithTemplateCastId[] = "decl_template";
 
 static size_t getTypeNameLength(bool RemoveStars, StringRef Text) {
   enum CharType { Space, Alpha, Punctuation };

diff  --git a/clang-tools-extra/clang-tidy/modernize/UseEmplaceCheck.cpp 
b/clang-tools-extra/clang-tidy/modernize/UseEmplaceCheck.cpp
index 10ca3c14d066c..c37f23665b68a 100644
--- a/clang-tools-extra/clang-tidy/modernize/UseEmplaceCheck.cpp
+++ b/clang-tools-extra/clang-tidy/modernize/UseEmplaceCheck.cpp
@@ -100,18 +100,18 @@ cxxMemberCallExprOnContainer(StringRef MethodName,
       on(hasTypeOrPointeeType(hasWantedType(ContainerNames))));
 }
 
-static const auto DefaultContainersWithPushBack =
+static constexpr char DefaultContainersWithPushBack[] =
     "::std::vector; ::std::list; ::std::deque";
-static const auto DefaultContainersWithPush =
+static constexpr char DefaultContainersWithPush[] =
     "::std::stack; ::std::queue; ::std::priority_queue";
-static const auto DefaultContainersWithPushFront =
+static constexpr char DefaultContainersWithPushFront[] =
     "::std::forward_list; ::std::list; ::std::deque";
-static const auto DefaultSmartPointers =
+static constexpr char DefaultSmartPointers[] =
     "::std::shared_ptr; ::std::unique_ptr; ::std::auto_ptr; ::std::weak_ptr";
-static const auto DefaultTupleTypes = "::std::pair; ::std::tuple";
-static const auto DefaultTupleMakeFunctions =
+static constexpr char DefaultTupleTypes[] = "::std::pair; ::std::tuple";
+static constexpr char DefaultTupleMakeFunctions[] =
     "::std::make_pair; ::std::make_tuple";
-static const auto DefaultEmplacyFunctions =
+static constexpr char DefaultEmplacyFunctions[] =
     "vector::emplace_back; vector::emplace;"
     "deque::emplace; deque::emplace_front; deque::emplace_back;"
     "forward_list::emplace_after; forward_list::emplace_front;"

diff  --git a/clang-tools-extra/clang-tidy/modernize/UseEqualsDefaultCheck.cpp 
b/clang-tools-extra/clang-tidy/modernize/UseEqualsDefaultCheck.cpp
index fde9c7323ce3c..bc450ad4a1f2b 100644
--- a/clang-tools-extra/clang-tidy/modernize/UseEqualsDefaultCheck.cpp
+++ b/clang-tools-extra/clang-tidy/modernize/UseEqualsDefaultCheck.cpp
@@ -18,7 +18,7 @@ using namespace clang::ast_matchers;
 
 namespace clang::tidy::modernize {
 
-static const char SpecialFunction[] = "SpecialFunction";
+static constexpr char SpecialFunction[] = "SpecialFunction";
 
 /// Finds all the named non-static fields of \p Record.
 static std::set<const FieldDecl *>

diff  --git a/clang-tools-extra/clang-tidy/modernize/UseEqualsDeleteCheck.cpp 
b/clang-tools-extra/clang-tidy/modernize/UseEqualsDeleteCheck.cpp
index a19d2ecdad88d..25140152219cf 100644
--- a/clang-tools-extra/clang-tidy/modernize/UseEqualsDeleteCheck.cpp
+++ b/clang-tools-extra/clang-tidy/modernize/UseEqualsDeleteCheck.cpp
@@ -41,8 +41,8 @@ AST_MATCHER(CXXMethodDecl, isSpecialFunction) {
 }
 } // namespace
 
-static const char SpecialFunction[] = "SpecialFunction";
-static const char DeletedNotPublic[] = "DeletedNotPublic";
+static constexpr char SpecialFunction[] = "SpecialFunction";
+static constexpr char DeletedNotPublic[] = "DeletedNotPublic";
 
 UseEqualsDeleteCheck::UseEqualsDeleteCheck(StringRef Name,
                                            ClangTidyContext *Context)

diff  --git a/clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp 
b/clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp
index 754ca3d3b8c31..cc371a1ab55a7 100644
--- a/clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp
+++ b/clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp
@@ -30,7 +30,7 @@ AST_MATCHER(Type, sugaredNullptrType) {
 
 } // namespace
 
-static const char CastSequence[] = "sequence";
+static constexpr char CastSequence[] = "sequence";
 
 /// Create a matcher that finds implicit casts as well as the head of a
 /// sequence of zero or more nested explicit casts that have an implicit cast

diff  --git a/clang-tools-extra/clang-tidy/modernize/UseRangesCheck.cpp 
b/clang-tools-extra/clang-tidy/modernize/UseRangesCheck.cpp
index eb4d6e15fc722..28f77b4bc25ba 100644
--- a/clang-tools-extra/clang-tidy/modernize/UseRangesCheck.cpp
+++ b/clang-tools-extra/clang-tidy/modernize/UseRangesCheck.cpp
@@ -152,7 +152,7 @@ utils::UseRangesCheck::ReplacerMap 
UseRangesCheck::getReplacerMap() const {
 
   static const Signature SinglePivotFunc[] = {SinglePivotRange};
 
-  static const std::pair<ArrayRef<Signature>, ArrayRef<const char *>>
+  static constexpr std::pair<ArrayRef<Signature>, ArrayRef<const char *>>
       AlgorithmNames[] = {{SingleRangeFunc, SingleRangeNames},
                           {TwoRangeFunc, TwoRangeNames},
                           {SinglePivotFunc, SinglePivotRangeNames}};
@@ -189,13 +189,13 @@ bool UseRangesCheck::isLanguageVersionSupported(
 }
 ArrayRef<std::pair<StringRef, StringRef>>
 UseRangesCheck::getFreeBeginEndMethods() const {
-  static const std::pair<StringRef, StringRef> Refs[] = {
+  static constexpr std::pair<StringRef, StringRef> Refs[] = {
       {"::std::begin", "::std::end"}, {"::std::cbegin", "::std::cend"}};
   return Refs;
 }
 std::optional<UseRangesCheck::ReverseIteratorDescriptor>
 UseRangesCheck::getReverseDescriptor() const {
-  static const std::pair<StringRef, StringRef> Refs[] = {
+  static constexpr std::pair<StringRef, StringRef> Refs[] = {
       {"::std::rbegin", "::std::rend"}, {"::std::crbegin", "::std::crend"}};
   return ReverseIteratorDescriptor{"std::views::reverse", "<ranges>", Refs,
                                    UseReversePipe};

diff  --git 
a/clang-tools-extra/clang-tidy/modernize/UseTransparentFunctorsCheck.cpp 
b/clang-tools-extra/clang-tidy/modernize/UseTransparentFunctorsCheck.cpp
index e3672f84a3a5c..9623c885534a6 100644
--- a/clang-tools-extra/clang-tidy/modernize/UseTransparentFunctorsCheck.cpp
+++ b/clang-tools-extra/clang-tidy/modernize/UseTransparentFunctorsCheck.cpp
@@ -59,7 +59,7 @@ void 
UseTransparentFunctorsCheck::registerMatchers(MatchFinder *Finder) {
                      this);
 }
 
-static const StringRef Message = "prefer transparent functors '%0<>'";
+static constexpr StringRef Message = "prefer transparent functors '%0<>'";
 
 template <typename T> static T getInnerTypeLocAs(TypeLoc Loc) {
   T Result;

diff  --git 
a/clang-tools-extra/clang-tidy/performance/InefficientVectorOperationCheck.cpp 
b/clang-tools-extra/clang-tidy/performance/InefficientVectorOperationCheck.cpp
index a59ab333e6f10..814a4f854319c 100644
--- 
a/clang-tools-extra/clang-tidy/performance/InefficientVectorOperationCheck.cpp
+++ 
b/clang-tools-extra/clang-tidy/performance/InefficientVectorOperationCheck.cpp
@@ -46,17 +46,17 @@ namespace clang::tidy::performance {
 //   - ProtoVarDeclName: 'p' (as VarDecl).
 //   - ProtoVarDeclStmtName: The entire 'SomeProto p;' statement (as DeclStmt).
 //   - ProtoAddFieldCallName: 'p.add_xxx(i)' (as cxxMemberCallExpr).
-static const char LoopCounterName[] = "for_loop_counter";
-static const char LoopParentName[] = "loop_parent";
-static const char VectorVarDeclName[] = "vector_var_decl";
-static const char VectorVarDeclStmtName[] = "vector_var_decl_stmt";
-static const char PushBackOrEmplaceBackCallName[] = "append_call";
-static const char ProtoVarDeclName[] = "proto_var_decl";
-static const char ProtoVarDeclStmtName[] = "proto_var_decl_stmt";
-static const char ProtoAddFieldCallName[] = "proto_add_field";
-static const char LoopInitVarName[] = "loop_init_var";
-static const char LoopEndExprName[] = "loop_end_expr";
-static const char RangeLoopName[] = "for_range_loop";
+static constexpr char LoopCounterName[] = "for_loop_counter";
+static constexpr char LoopParentName[] = "loop_parent";
+static constexpr char VectorVarDeclName[] = "vector_var_decl";
+static constexpr char VectorVarDeclStmtName[] = "vector_var_decl_stmt";
+static constexpr char PushBackOrEmplaceBackCallName[] = "append_call";
+static constexpr char ProtoVarDeclName[] = "proto_var_decl";
+static constexpr char ProtoVarDeclStmtName[] = "proto_var_decl_stmt";
+static constexpr char ProtoAddFieldCallName[] = "proto_add_field";
+static constexpr char LoopInitVarName[] = "loop_init_var";
+static constexpr char LoopEndExprName[] = "loop_end_expr";
+static constexpr char RangeLoopName[] = "for_range_loop";
 
 static ast_matchers::internal::Matcher<Expr> supportedContainerTypesMatcher() {
   return hasType(cxxRecordDecl(hasAnyName(

diff  --git 
a/clang-tools-extra/clang-tidy/readability/AvoidReturnWithVoidValueCheck.cpp 
b/clang-tools-extra/clang-tidy/readability/AvoidReturnWithVoidValueCheck.cpp
index 2b31281bb4a63..b8c4faa4b4edc 100644
--- a/clang-tools-extra/clang-tidy/readability/AvoidReturnWithVoidValueCheck.cpp
+++ b/clang-tools-extra/clang-tidy/readability/AvoidReturnWithVoidValueCheck.cpp
@@ -15,10 +15,10 @@ using namespace clang::ast_matchers;
 namespace clang::tidy::readability {
 
 static constexpr char IgnoreMacrosName[] = "IgnoreMacros";
-static const bool IgnoreMacrosDefault = true;
+static constexpr bool IgnoreMacrosDefault = true;
 
 static constexpr char StrictModeName[] = "StrictMode";
-static const bool StrictModeDefault = true;
+static constexpr bool StrictModeDefault = true;
 
 AvoidReturnWithVoidValueCheck::AvoidReturnWithVoidValueCheck(
     StringRef Name, ClangTidyContext *Context)

diff  --git a/clang-tools-extra/clang-tidy/readability/ElseAfterReturnCheck.cpp 
b/clang-tools-extra/clang-tidy/readability/ElseAfterReturnCheck.cpp
index 2b6212f159ced..fccda912947eb 100644
--- a/clang-tools-extra/clang-tidy/readability/ElseAfterReturnCheck.cpp
+++ b/clang-tools-extra/clang-tidy/readability/ElseAfterReturnCheck.cpp
@@ -41,10 +41,11 @@ class PPConditionalCollector : public PPCallbacks {
 
 } // namespace
 
-static const char InterruptingStr[] = "interrupting";
-static const char WarningMessage[] = "do not use 'else' after '%0'";
-static const char WarnOnUnfixableStr[] = "WarnOnUnfixable";
-static const char WarnOnConditionVariablesStr[] = "WarnOnConditionVariables";
+static constexpr char InterruptingStr[] = "interrupting";
+static constexpr char WarningMessage[] = "do not use 'else' after '%0'";
+static constexpr char WarnOnUnfixableStr[] = "WarnOnUnfixable";
+static constexpr char WarnOnConditionVariablesStr[] =
+    "WarnOnConditionVariables";
 
 static const DeclRefExpr *findUsage(const Stmt *Node, int64_t DeclIdentifier) {
   if (!Node)

diff  --git 
a/clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp 
b/clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp
index 43b98faaf6149..1d8c4f8b58d8f 100644
--- 
a/clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp
+++ 
b/clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp
@@ -152,7 +152,7 @@ struct CognitiveComplexity final {
 // to use is based of the combination of the CognitiveComplexity::Criteria.
 // It would be nice to have it in CognitiveComplexity struct, but then it is
 // not static.
-static const std::array<const StringRef, 4> Msgs = {{
+static constexpr std::array<StringRef, 4> Msgs = {{
     // B1 + B2 + B3
     "+%0, including nesting penalty of %1, nesting level increased to %2",
 

diff  --git 
a/clang-tools-extra/clang-tidy/readability/SimplifySubscriptExprCheck.cpp 
b/clang-tools-extra/clang-tidy/readability/SimplifySubscriptExprCheck.cpp
index 591ee1fbe067c..6091e162cd4c0 100644
--- a/clang-tools-extra/clang-tidy/readability/SimplifySubscriptExprCheck.cpp
+++ b/clang-tools-extra/clang-tidy/readability/SimplifySubscriptExprCheck.cpp
@@ -15,7 +15,7 @@ using namespace clang::ast_matchers;
 
 namespace clang::tidy::readability {
 
-static const char KDefaultTypes[] =
+static constexpr char KDefaultTypes[] =
     
"::std::basic_string;::std::basic_string_view;::std::vector;::std::array;::"
     "std::span";
 

diff  --git a/clang-tools-extra/clang-tidy/readability/StringCompareCheck.cpp 
b/clang-tools-extra/clang-tidy/readability/StringCompareCheck.cpp
index d1237fa4c1438..6bd3674de6f8f 100644
--- a/clang-tools-extra/clang-tidy/readability/StringCompareCheck.cpp
+++ b/clang-tools-extra/clang-tidy/readability/StringCompareCheck.cpp
@@ -19,12 +19,13 @@ namespace optutils = clang::tidy::utils::options;
 
 namespace clang::tidy::readability {
 
-static const StringRef CompareMessage = "do not use 'compare' to test equality 
"
-                                        "of strings; use the string equality "
-                                        "operator instead";
+static constexpr StringRef CompareMessage =
+    "do not use 'compare' to test equality of strings; use the string "
+    "equality operator instead";
 
-static const StringRef DefaultStringLikeClasses = "::std::basic_string;"
-                                                  "::std::basic_string_view";
+static constexpr StringRef DefaultStringLikeClasses =
+    "::std::basic_string;"
+    "::std::basic_string_view";
 
 StringCompareCheck::StringCompareCheck(StringRef Name,
                                        ClangTidyContext *Context)

diff  --git a/clang-tools-extra/clang-tidy/utils/OptionsUtils.cpp 
b/clang-tools-extra/clang-tidy/utils/OptionsUtils.cpp
index 2f784360ac7ec..ad536b6290ca0 100644
--- a/clang-tools-extra/clang-tidy/utils/OptionsUtils.cpp
+++ b/clang-tools-extra/clang-tidy/utils/OptionsUtils.cpp
@@ -11,7 +11,7 @@
 
 namespace clang::tidy::utils::options {
 
-static const char StringsDelimiter[] = ";";
+static constexpr char StringsDelimiter[] = ";";
 
 std::vector<StringRef> parseStringList(StringRef Option) {
   Option = Option.trim().trim(StringsDelimiter);


        
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to