diff options
author | Roman Lebedev <lebedev.ri@gmail.com> | 2018-02-27 15:19:28 +0000 |
---|---|---|
committer | Roman Lebedev <lebedev.ri@gmail.com> | 2018-02-27 15:19:28 +0000 |
commit | 0814b860ef5f2b38385bace661816e0fa417bcb9 (patch) | |
tree | 7710e9a886dd3423aaef57f5f530827016aef640 | |
parent | 8631f87145fc96f4e8ac0530c8fe46c6858c40d8 (diff) |
[Tooling] [1/1] Refactor FrontendActionFactory::create() to return std::unique_ptr<>
Summary:
I'm not sure whether there are any principal reasons why it returns raw owning pointer,
or it is just a old code that was not updated post-C++11.
I'm not too sure what testing i should do, because `check-all` is not error clean here for some reason,
but it does not //appear// asif those failures are related to these changes.
This is Clang-tools-extra part.
Clang part is D43779.
Reviewers: klimek, bkramer, alexfh, pcc
Reviewed By: alexfh
Subscribers: ioeric, jkorous-apple, cfe-commits
Tags: #clang, #clang-tools-extra
Differential Revision: https://reviews.llvm.org/D43780
9 files changed, 25 insertions, 19 deletions
diff --git a/clang-tools-extra/clang-move/ClangMove.h b/clang-tools-extra/clang-move/ClangMove.h index 945c6db0aaa..ddcb92abe60 100644 --- a/clang-tools-extra/clang-move/ClangMove.h +++ b/clang-tools-extra/clang-move/ClangMove.h @@ -217,8 +217,8 @@ public: DeclarationReporter *const Reporter = nullptr) : Context(Context), Reporter(Reporter) {} - clang::FrontendAction *create() override { - return new ClangMoveAction(Context, Reporter); + std::unique_ptr<clang::FrontendAction> create() override { + return llvm::make_unique<ClangMoveAction>(Context, Reporter); } private: diff --git a/clang-tools-extra/clang-tidy/ClangTidy.cpp b/clang-tools-extra/clang-tidy/ClangTidy.cpp index a68111b4a95..e21755226ea 100644 --- a/clang-tools-extra/clang-tidy/ClangTidy.cpp +++ b/clang-tools-extra/clang-tidy/ClangTidy.cpp @@ -527,7 +527,9 @@ void runClangTidy(clang::tidy::ClangTidyContext &Context, class ActionFactory : public FrontendActionFactory { public: ActionFactory(ClangTidyContext &Context) : ConsumerFactory(Context) {} - FrontendAction *create() override { return new Action(&ConsumerFactory); } + std::unique_ptr<clang::FrontendAction> create() override { + return llvm::make_unique<Action>(&ConsumerFactory); + } private: class Action : public ASTFrontendAction { diff --git a/clang-tools-extra/clangd/global-symbol-builder/GlobalSymbolBuilderMain.cpp b/clang-tools-extra/clangd/global-symbol-builder/GlobalSymbolBuilderMain.cpp index b4f7f0baeb8..bc6241df720 100644 --- a/clang-tools-extra/clangd/global-symbol-builder/GlobalSymbolBuilderMain.cpp +++ b/clang-tools-extra/clangd/global-symbol-builder/GlobalSymbolBuilderMain.cpp @@ -53,7 +53,7 @@ class SymbolIndexActionFactory : public tooling::FrontendActionFactory { public: SymbolIndexActionFactory(tooling::ExecutionContext *Ctx) : Ctx(Ctx) {} - clang::FrontendAction *create() override { + std::unique_ptr<clang::FrontendAction> create() override { // Wraps the index action and reports collected symbols to the execution // context at the end of each translation unit. class WrappedIndexAction : public WrapperFrontendAction { @@ -102,7 +102,8 @@ public: auto Includes = llvm::make_unique<CanonicalIncludes>(); addSystemHeadersMapping(Includes.get()); CollectorOpts.Includes = Includes.get(); - return new WrappedIndexAction( + + return llvm::make_unique<WrappedIndexAction>( std::make_shared<SymbolCollector>(std::move(CollectorOpts)), std::move(Includes), IndexOpts, Ctx); } diff --git a/clang-tools-extra/include-fixer/find-all-symbols/FindAllSymbolsAction.h b/clang-tools-extra/include-fixer/find-all-symbols/FindAllSymbolsAction.h index 7be9fe2b2be..0e109d58175 100644 --- a/clang-tools-extra/include-fixer/find-all-symbols/FindAllSymbolsAction.h +++ b/clang-tools-extra/include-fixer/find-all-symbols/FindAllSymbolsAction.h @@ -48,8 +48,8 @@ public: const HeaderMapCollector::RegexHeaderMap *RegexHeaderMap = nullptr) : Reporter(Reporter), RegexHeaderMap(RegexHeaderMap) {} - clang::FrontendAction *create() override { - return new FindAllSymbolsAction(Reporter, RegexHeaderMap); + std::unique_ptr<clang::FrontendAction> create() override { + return llvm::make_unique<FindAllSymbolsAction>(Reporter, RegexHeaderMap); } private: diff --git a/clang-tools-extra/modularize/CoverageChecker.cpp b/clang-tools-extra/modularize/CoverageChecker.cpp index 3687872871c..3c406889c69 100644 --- a/clang-tools-extra/modularize/CoverageChecker.cpp +++ b/clang-tools-extra/modularize/CoverageChecker.cpp @@ -129,8 +129,8 @@ public: CoverageCheckerFrontendActionFactory(CoverageChecker &Checker) : Checker(Checker) {} - CoverageCheckerAction *create() override { - return new CoverageCheckerAction(Checker); + std::unique_ptr<clang::FrontendAction> create() override { + return llvm::make_unique<CoverageCheckerAction>(Checker); } private: diff --git a/clang-tools-extra/modularize/Modularize.cpp b/clang-tools-extra/modularize/Modularize.cpp index e5f19de88f9..5512f929b7d 100644 --- a/clang-tools-extra/modularize/Modularize.cpp +++ b/clang-tools-extra/modularize/Modularize.cpp @@ -722,8 +722,9 @@ public: : Entities(Entities), PPTracker(preprocessorTracker), HadErrors(HadErrors) {} - CollectEntitiesAction *create() override { - return new CollectEntitiesAction(Entities, PPTracker, HadErrors); + std::unique_ptr<clang::FrontendAction> create() override { + return llvm::make_unique<CollectEntitiesAction>(Entities, PPTracker, + HadErrors); } private: @@ -802,8 +803,8 @@ class CompileCheckFrontendActionFactory : public FrontendActionFactory { public: CompileCheckFrontendActionFactory() {} - CompileCheckAction *create() override { - return new CompileCheckAction(); + std::unique_ptr<clang::FrontendAction> create() override { + return llvm::make_unique<CompileCheckAction>(); } }; diff --git a/clang-tools-extra/pp-trace/PPTrace.cpp b/clang-tools-extra/pp-trace/PPTrace.cpp index d49bc20e7a6..fdc121ae03f 100644 --- a/clang-tools-extra/pp-trace/PPTrace.cpp +++ b/clang-tools-extra/pp-trace/PPTrace.cpp @@ -139,8 +139,8 @@ public: std::vector<CallbackCall> &CallbackCalls) : Ignore(Ignore), CallbackCalls(CallbackCalls) {} - PPTraceAction *create() override { - return new PPTraceAction(Ignore, CallbackCalls); + std::unique_ptr<clang::FrontendAction> create() override { + return llvm::make_unique<PPTraceAction>(Ignore, CallbackCalls); } private: diff --git a/clang-tools-extra/unittests/clang-tidy/ClangTidyTest.h b/clang-tools-extra/unittests/clang-tidy/ClangTidyTest.h index 197c137fe86..fc7302276ea 100644 --- a/clang-tools-extra/unittests/clang-tidy/ClangTidyTest.h +++ b/clang-tools-extra/unittests/clang-tidy/ClangTidyTest.h @@ -107,7 +107,8 @@ runCheckOnCode(StringRef Code, std::vector<ClangTidyError> *Errors = nullptr, SmallVector<std::unique_ptr<ClangTidyCheck>, 1> Checks; CheckFactory<CheckList...>::createChecks(&Context, Checks); tooling::ToolInvocation Invocation( - Args, new TestClangTidyAction(Checks, Finder, Context), Files.get()); + Args, llvm::make_unique<TestClangTidyAction>(Checks, Finder, Context), + Files.get()); InMemoryFileSystem->addFile(Filename, 0, llvm::MemoryBuffer::getMemBuffer(Code)); for (const auto &FileContent : PathsToContent) { diff --git a/clang-tools-extra/unittests/clangd/SymbolCollectorTests.cpp b/clang-tools-extra/unittests/clangd/SymbolCollectorTests.cpp index 27cf6308100..a014c1e72ca 100644 --- a/clang-tools-extra/unittests/clangd/SymbolCollectorTests.cpp +++ b/clang-tools-extra/unittests/clangd/SymbolCollectorTests.cpp @@ -69,7 +69,7 @@ public: CommentHandler *PragmaHandler) : COpts(std::move(COpts)), PragmaHandler(PragmaHandler) {} - clang::FrontendAction *create() override { + std::unique_ptr<clang::FrontendAction> create() override { class WrappedIndexAction : public WrapperFrontendAction { public: WrappedIndexAction(std::shared_ptr<SymbolCollector> C, @@ -95,8 +95,9 @@ public: index::IndexingOptions::SystemSymbolFilterKind::All; IndexOpts.IndexFunctionLocals = false; Collector = std::make_shared<SymbolCollector>(COpts); - return new WrappedIndexAction(Collector, std::move(IndexOpts), - PragmaHandler); + + return llvm::make_unique<WrappedIndexAction>( + Collector, std::move(IndexOpts), PragmaHandler); } std::shared_ptr<SymbolCollector> Collector; |