From 45857d4b58e5e6c2661c2c980eea6877328aca40 Mon Sep 17 00:00:00 2001 From: Craig Topper Date: Sun, 18 Oct 2015 05:14:41 +0000 Subject: [PATCH] Make a bunch of static arrays const. llvm-svn: 250641 --- .../clang-modernize/UseAuto/UseAutoMatchers.cpp | 4 +-- .../clang-modernize/tool/ClangModernize.cpp | 2 +- clang-tools-extra/clang-tidy/ClangTidy.cpp | 2 +- .../misc/AssignOperatorSignatureCheck.cpp | 2 +- .../clang-tidy/misc/NonCopyableObjects.cpp | 4 +-- .../clang-tidy/modernize/ShrinkToFitCheck.cpp | 2 +- .../clang-tidy/modernize/UseAutoCheck.cpp | 26 ++++++++-------- .../readability/ContainerSizeEmptyCheck.cpp | 2 +- clang-tools-extra/modularize/ModuleAssistant.cpp | 2 +- clang-tools-extra/pp-trace/PPCallbacksTracker.cpp | 35 ++++++++++++---------- clang-tools-extra/pp-trace/PPCallbacksTracker.h | 2 +- 11 files changed, 44 insertions(+), 39 deletions(-) diff --git a/clang-tools-extra/clang-modernize/UseAuto/UseAutoMatchers.cpp b/clang-tools-extra/clang-modernize/UseAuto/UseAutoMatchers.cpp index 72eec8d..aa9e461 100644 --- a/clang-tools-extra/clang-modernize/UseAuto/UseAutoMatchers.cpp +++ b/clang-tools-extra/clang-modernize/UseAuto/UseAutoMatchers.cpp @@ -96,7 +96,7 @@ AST_MATCHER_P(QualType, isSugarFor, internal::Matcher, SugarMatcher) { /// /// \c namedDecl(hasStdIteratorName()) matches \c I and \c CI. AST_MATCHER(NamedDecl, hasStdIteratorName) { - static const char *IteratorNames[] = { + static const char *const IteratorNames[] = { "iterator", "reverse_iterator", "const_iterator", @@ -125,7 +125,7 @@ AST_MATCHER(NamedDecl, hasStdIteratorName) { /// \c recordDecl(hasStdContainerName()) matches \c vector and \c forward_list /// but not \c my_vec. AST_MATCHER(NamedDecl, hasStdContainerName) { - static const char *ContainerNames[] = { + static const char *const ContainerNames[] = { "array", "deque", "forward_list", diff --git a/clang-tools-extra/clang-modernize/tool/ClangModernize.cpp b/clang-tools-extra/clang-modernize/tool/ClangModernize.cpp index e8066c0..5306a34 100644 --- a/clang-tools-extra/clang-modernize/tool/ClangModernize.cpp +++ b/clang-tools-extra/clang-modernize/tool/ClangModernize.cpp @@ -45,7 +45,7 @@ static cl::OptionCategory FormattingCategory("Formatting Options"); static cl::OptionCategory IncludeExcludeCategory("Inclusion/Exclusion Options"); static cl::OptionCategory SerializeCategory("Serialization Options"); -static const cl::OptionCategory *VisibleCategories[] = { +static const cl::OptionCategory *const VisibleCategories[] = { &GeneralCategory, &FormattingCategory, &IncludeExcludeCategory, &SerializeCategory, &TransformCategory, &TransformsOptionsCategory, }; diff --git a/clang-tools-extra/clang-tidy/ClangTidy.cpp b/clang-tools-extra/clang-tidy/ClangTidy.cpp index 1460e8c..c637f6a 100644 --- a/clang-tools-extra/clang-tidy/ClangTidy.cpp +++ b/clang-tools-extra/clang-tidy/ClangTidy.cpp @@ -55,7 +55,7 @@ namespace tidy { namespace { static const char *AnalyzerCheckNamePrefix = "clang-analyzer-"; -static StringRef StaticAnalyzerChecks[] = { +static const StringRef StaticAnalyzerChecks[] = { #define GET_CHECKERS #define CHECKER(FULLNAME, CLASS, DESCFILE, HELPTEXT, GROUPINDEX, HIDDEN) \ FULLNAME, diff --git a/clang-tools-extra/clang-tidy/misc/AssignOperatorSignatureCheck.cpp b/clang-tools-extra/clang-tidy/misc/AssignOperatorSignatureCheck.cpp index 267848a..fe3942f 100644 --- a/clang-tools-extra/clang-tidy/misc/AssignOperatorSignatureCheck.cpp +++ b/clang-tools-extra/clang-tidy/misc/AssignOperatorSignatureCheck.cpp @@ -61,7 +61,7 @@ void AssignOperatorSignatureCheck::check( const auto* Method = Result.Nodes.getNodeAs("method"); std::string Name = Method->getParent()->getName(); - static const char *Messages[][2] = { + static const char *const Messages[][2] = { {"ReturnType", "operator=() should return '%0&'"}, {"ArgumentType", "operator=() should take '%0 const&', '%0&&' or '%0'"}, {"cv", "operator=() should not be marked '%1'"} diff --git a/clang-tools-extra/clang-tidy/misc/NonCopyableObjects.cpp b/clang-tools-extra/clang-tidy/misc/NonCopyableObjects.cpp index ee54f31..64c4508 100644 --- a/clang-tools-extra/clang-tidy/misc/NonCopyableObjects.cpp +++ b/clang-tools-extra/clang-tidy/misc/NonCopyableObjects.cpp @@ -20,7 +20,7 @@ namespace { // users can add their own elements to the list. However, it may require some // extra thought since POSIX types and FILE types are usable in different ways. bool isPOSIXTypeName(StringRef ClassName) { - static const char *TypeNames[] = { + static const char *const TypeNames[] = { "::pthread_cond_t", "::pthread_mutex_t", "pthread_cond_t", @@ -31,7 +31,7 @@ bool isPOSIXTypeName(StringRef ClassName) { } bool isFILETypeName(StringRef ClassName) { - static const char *TypeNames[] = { + static const char *const TypeNames[] = { "::FILE", "FILE", "std::FILE" diff --git a/clang-tools-extra/clang-tidy/modernize/ShrinkToFitCheck.cpp b/clang-tools-extra/clang-tidy/modernize/ShrinkToFitCheck.cpp index 60b9843..0bcb2a0 100644 --- a/clang-tools-extra/clang-tidy/modernize/ShrinkToFitCheck.cpp +++ b/clang-tools-extra/clang-tidy/modernize/ShrinkToFitCheck.cpp @@ -18,7 +18,7 @@ using namespace clang::ast_matchers; namespace clang { namespace { bool isShrinkableContainer(llvm::StringRef ClassName) { - static const char *Shrinkables[] = { + static const char *const Shrinkables[] = { "std::basic_string", "std::deque", "std::vector" diff --git a/clang-tools-extra/clang-tidy/modernize/UseAutoCheck.cpp b/clang-tools-extra/clang-tidy/modernize/UseAutoCheck.cpp index 1469909..415ecdd 100644 --- a/clang-tools-extra/clang-tidy/modernize/UseAutoCheck.cpp +++ b/clang-tools-extra/clang-tidy/modernize/UseAutoCheck.cpp @@ -87,9 +87,9 @@ AST_MATCHER_P(QualType, isSugarFor, Matcher, SugarMatcher) { /// /// namedDecl(hasStdIteratorName()) matches \c I and \c CI. AST_MATCHER(NamedDecl, hasStdIteratorName) { - static const char *IteratorNames[] = {"iterator", "reverse_iterator", - "const_iterator", - "const_reverse_iterator"}; + static const char *const IteratorNames[] = {"iterator", "reverse_iterator", + "const_iterator", + "const_reverse_iterator"}; for (const char *Name : IteratorNames) { if (hasName(Name).matches(Node, Finder, Builder)) @@ -111,18 +111,20 @@ AST_MATCHER(NamedDecl, hasStdIteratorName) { /// recordDecl(hasStdContainerName()) matches \c vector and \c forward_list /// but not \c my_vec. AST_MATCHER(NamedDecl, hasStdContainerName) { - static const char *ContainerNames[] = {"array", "deque", - "forward_list", "list", - "vector", + static const char *const ContainerNames[] = {"array", "deque", + "forward_list", "list", + "vector", - "map", "multimap", - "set", "multiset", + "map", "multimap", + "set", "multiset", - "unordered_map", "unordered_multimap", - "unordered_set", "unordered_multiset", + "unordered_map", + "unordered_multimap", + "unordered_set", + "unordered_multiset", - "queue", "priority_queue", - "stack"}; + "queue", "priority_queue", + "stack"}; for (const char *Name : ContainerNames) { if (hasName(Name).matches(Node, Finder, Builder)) diff --git a/clang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.cpp b/clang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.cpp index 25c8d68..0e80649 100644 --- a/clang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.cpp +++ b/clang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.cpp @@ -15,7 +15,7 @@ using namespace clang::ast_matchers; static bool isContainer(llvm::StringRef ClassName) { - static const char *ContainerNames[] = { + static const char *const ContainerNames[] = { "std::array", "std::deque", "std::forward_list", diff --git a/clang-tools-extra/modularize/ModuleAssistant.cpp b/clang-tools-extra/modularize/ModuleAssistant.cpp index f982f17..64bb9b4 100644 --- a/clang-tools-extra/modularize/ModuleAssistant.cpp +++ b/clang-tools-extra/modularize/ModuleAssistant.cpp @@ -137,7 +137,7 @@ Module *Module::findSubModule(llvm::StringRef SubName) { // Reserved keywords in module.modulemap syntax. // Keep in sync with keywords in module map parser in Lex/ModuleMap.cpp, // such as in ModuleMapParser::consumeToken(). -static const char *ReservedNames[] = { +static const char *const ReservedNames[] = { "config_macros", "export", "module", "conflict", "framework", "requires", "exclude", "header", "private", "explicit", "link", "umbrella", "extern", "use", nullptr // Flag end. diff --git a/clang-tools-extra/pp-trace/PPCallbacksTracker.cpp b/clang-tools-extra/pp-trace/PPCallbacksTracker.cpp index 8a37054..e0d23dd 100644 --- a/clang-tools-extra/pp-trace/PPCallbacksTracker.cpp +++ b/clang-tools-extra/pp-trace/PPCallbacksTracker.cpp @@ -56,35 +56,38 @@ static std::string getSourceLocationString(clang::Preprocessor &PP, // Enum string tables. // FileChangeReason strings. -static const char *FileChangeReasonStrings[] = { +static const char *const FileChangeReasonStrings[] = { "EnterFile", "ExitFile", "SystemHeaderPragma", "RenameFile" }; // CharacteristicKind strings. -static const char *CharacteristicKindStrings[] = { "C_User", "C_System", - "C_ExternCSystem" }; +static const char *const CharacteristicKindStrings[] = { "C_User", "C_System", + "C_ExternCSystem" }; // MacroDirective::Kind strings. -static const char *MacroDirectiveKindStrings[] = { "MD_Define", "MD_Undefine", - "MD_Visibility" }; +static const char *const MacroDirectiveKindStrings[] = { + "MD_Define","MD_Undefine", "MD_Visibility" +}; // PragmaIntroducerKind strings. -static const char *PragmaIntroducerKindStrings[] = { "PIK_HashPragma", - "PIK__Pragma", - "PIK___pragma" }; +static const char *const PragmaIntroducerKindStrings[] = { "PIK_HashPragma", + "PIK__Pragma", + "PIK___pragma" }; // PragmaMessageKind strings. -static const char *PragmaMessageKindStrings[] = { "PMK_Message", "PMK_Warning", - "PMK_Error" }; +static const char *const PragmaMessageKindStrings[] = { + "PMK_Message", "PMK_Warning", "PMK_Error" +}; // ConditionValueKind strings. -static const char *ConditionValueKindStrings[] = {"CVK_NotEvaluated", - "CVK_False", "CVK_True"}; +static const char *const ConditionValueKindStrings[] = { + "CVK_NotEvaluated", "CVK_False", "CVK_True" +}; // Mapping strings. -static const char *MappingStrings[] = { "0", "MAP_IGNORE", - "MAP_REMARK", "MAP_WARNING", - "MAP_ERROR", "MAP_FATAL" }; +static const char *const MappingStrings[] = { "0", "MAP_IGNORE", + "MAP_REMARK", "MAP_WARNING", + "MAP_ERROR", "MAP_FATAL" }; // PPCallbacksTracker functions. @@ -453,7 +456,7 @@ void PPCallbacksTracker::appendArgument(const char *Name, // Append an enum argument to the top trace item. void PPCallbacksTracker::appendArgument(const char *Name, int Value, - const char *Strings[]) { + const char *const Strings[]) { appendArgument(Name, Strings[Value]); } diff --git a/clang-tools-extra/pp-trace/PPCallbacksTracker.h b/clang-tools-extra/pp-trace/PPCallbacksTracker.h index 8c2e6bb..f91d1bc 100644 --- a/clang-tools-extra/pp-trace/PPCallbacksTracker.h +++ b/clang-tools-extra/pp-trace/PPCallbacksTracker.h @@ -179,7 +179,7 @@ public: void appendArgument(const char *Name, const clang::Token &Value); /// \brief Append an enum argument to the top trace item. - void appendArgument(const char *Name, int Value, const char *Strings[]); + void appendArgument(const char *Name, int Value, const char *const Strings[]); /// \brief Append a FileID argument to the top trace item. void appendArgument(const char *Name, clang::FileID Value); -- 2.7.4