summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--clang-tools-extra/clang-tidy/ClangTidy.cpp8
-rw-r--r--clang-tools-extra/clang-tidy/ClangTidyModule.cpp7
-rw-r--r--clang-tools-extra/clang-tidy/ClangTidyModule.h9
-rw-r--r--clang-tools-extra/clangd/ParsedAST.cpp2
4 files changed, 12 insertions, 14 deletions
diff --git a/clang-tools-extra/clang-tidy/ClangTidy.cpp b/clang-tools-extra/clang-tidy/ClangTidy.cpp
index 4c4745f8102..21984aea0e8 100644
--- a/clang-tools-extra/clang-tidy/ClangTidy.cpp
+++ b/clang-tools-extra/clang-tidy/ClangTidy.cpp
@@ -384,8 +384,8 @@ ClangTidyASTConsumerFactory::CreateASTConsumer(
if (WorkingDir)
Context.setCurrentBuildDirectory(WorkingDir.get());
- std::vector<std::unique_ptr<ClangTidyCheck>> Checks;
- CheckFactories->createChecks(&Context, Checks);
+ std::vector<std::unique_ptr<ClangTidyCheck>> Checks =
+ CheckFactories->createChecks(&Context);
ast_matchers::MatchFinder::MatchFinderOptions FinderOptions;
@@ -459,8 +459,8 @@ std::vector<std::string> ClangTidyASTConsumerFactory::getCheckNames() {
ClangTidyOptions::OptionMap ClangTidyASTConsumerFactory::getCheckOptions() {
ClangTidyOptions::OptionMap Options;
- std::vector<std::unique_ptr<ClangTidyCheck>> Checks;
- CheckFactories->createChecks(&Context, Checks);
+ std::vector<std::unique_ptr<ClangTidyCheck>> Checks =
+ CheckFactories->createChecks(&Context);
for (const auto &Check : Checks)
Check->storeOptions(Options);
return Options;
diff --git a/clang-tools-extra/clang-tidy/ClangTidyModule.cpp b/clang-tools-extra/clang-tidy/ClangTidyModule.cpp
index 7d6de87a6ae..ff83e7e9405 100644
--- a/clang-tools-extra/clang-tidy/ClangTidyModule.cpp
+++ b/clang-tools-extra/clang-tidy/ClangTidyModule.cpp
@@ -20,13 +20,14 @@ void ClangTidyCheckFactories::registerCheckFactory(StringRef Name,
Factories[Name] = std::move(Factory);
}
-void ClangTidyCheckFactories::createChecks(
- ClangTidyContext *Context,
- std::vector<std::unique_ptr<ClangTidyCheck>> &Checks) {
+std::vector<std::unique_ptr<ClangTidyCheck>>
+ClangTidyCheckFactories::createChecks(ClangTidyContext *Context) {
+ std::vector<std::unique_ptr<ClangTidyCheck>> Checks;
for (const auto &Factory : Factories) {
if (Context->isCheckEnabled(Factory.first))
Checks.emplace_back(Factory.second(Factory.first, Context));
}
+ return Checks;
}
ClangTidyOptions ClangTidyModule::getModuleOptions() {
diff --git a/clang-tools-extra/clang-tidy/ClangTidyModule.h b/clang-tools-extra/clang-tidy/ClangTidyModule.h
index b92971f30fd..5c484f1a68d 100644
--- a/clang-tools-extra/clang-tidy/ClangTidyModule.h
+++ b/clang-tools-extra/clang-tidy/ClangTidyModule.h
@@ -62,12 +62,9 @@ public:
});
}
- /// Create instances of all checks matching \p CheckRegexString and
- /// store them in \p Checks.
- ///
- /// The caller takes ownership of the return \c ClangTidyChecks.
- void createChecks(ClangTidyContext *Context,
- std::vector<std::unique_ptr<ClangTidyCheck>> &Checks);
+ /// Create instances of checks that are enabled.
+ std::vector<std::unique_ptr<ClangTidyCheck>>
+ createChecks(ClangTidyContext *Context);
typedef std::map<std::string, CheckFactory> FactoryMap;
FactoryMap::const_iterator begin() const { return Factories.begin(); }
diff --git a/clang-tools-extra/clangd/ParsedAST.cpp b/clang-tools-extra/clangd/ParsedAST.cpp
index 370af1d83ff..752fabe608c 100644
--- a/clang-tools-extra/clangd/ParsedAST.cpp
+++ b/clang-tools-extra/clangd/ParsedAST.cpp
@@ -261,7 +261,7 @@ ParsedAST::build(std::unique_ptr<clang::CompilerInvocation> CI,
CTContext->setDiagnosticsEngine(&Clang->getDiagnostics());
CTContext->setASTContext(&Clang->getASTContext());
CTContext->setCurrentFile(Filename);
- CTFactories.createChecks(CTContext.getPointer(), CTChecks);
+ CTChecks = CTFactories.createChecks(CTContext.getPointer());
ASTDiags.setLevelAdjuster([&CTContext](DiagnosticsEngine::Level DiagLevel,
const clang::Diagnostic &Info) {
if (CTContext) {
OpenPOWER on IntegriCloud