diff --git a/clang-tools-extra/clang-tidy/ClangTidy.cpp b/clang-tools-extra/clang-tidy/ClangTidy.cpp index 63c83a0b9954e..90b39347bc9ac 100644 --- a/clang-tools-extra/clang-tidy/ClangTidy.cpp +++ b/clang-tools-extra/clang-tidy/ClangTidy.cpp @@ -449,8 +449,8 @@ ClangTidyASTConsumerFactory::CreateASTConsumer( std::vector ClangTidyASTConsumerFactory::getCheckNames() { std::vector CheckNames; for (const auto &CheckFactory : *CheckFactories) { - if (Context.isCheckEnabled(CheckFactory.first)) - CheckNames.push_back(CheckFactory.first); + if (Context.isCheckEnabled(CheckFactory.getKey())) + CheckNames.emplace_back(CheckFactory.getKey()); } #if CLANG_ENABLE_STATIC_ANALYZER diff --git a/clang-tools-extra/clang-tidy/ClangTidyModule.cpp b/clang-tools-extra/clang-tidy/ClangTidyModule.cpp index e9031d498eeff..c72bcd3e188ce 100644 --- a/clang-tools-extra/clang-tidy/ClangTidyModule.cpp +++ b/clang-tools-extra/clang-tidy/ClangTidyModule.cpp @@ -18,15 +18,15 @@ namespace tidy { void ClangTidyCheckFactories::registerCheckFactory(StringRef Name, CheckFactory Factory) { - Factories[std::string(Name)] = std::move(Factory); + Factories.insert_or_assign(Name, std::move(Factory)); } std::vector> ClangTidyCheckFactories::createChecks(ClangTidyContext *Context) { std::vector> Checks; for (const auto &Factory : Factories) { - if (Context->isCheckEnabled(Factory.first)) - Checks.emplace_back(Factory.second(Factory.first, Context)); + if (Context->isCheckEnabled(Factory.getKey())) + Checks.emplace_back(Factory.getValue()(Factory.getKey(), Context)); } return Checks; } diff --git a/clang-tools-extra/clang-tidy/ClangTidyModule.h b/clang-tools-extra/clang-tidy/ClangTidyModule.h index 31cf4774a885a..7fd16c2a7b3c7 100644 --- a/clang-tools-extra/clang-tidy/ClangTidyModule.h +++ b/clang-tools-extra/clang-tidy/ClangTidyModule.h @@ -69,7 +69,7 @@ class ClangTidyCheckFactories { std::vector> createChecks(ClangTidyContext *Context); - typedef std::map FactoryMap; + typedef llvm::StringMap FactoryMap; FactoryMap::const_iterator begin() const { return Factories.begin(); } FactoryMap::const_iterator end() const { return Factories.end(); } bool empty() const { return Factories.empty(); }