summaryrefslogtreecommitdiffstats
path: root/clang/include/clang/Tooling/Tooling.h
diff options
context:
space:
mode:
Diffstat (limited to 'clang/include/clang/Tooling/Tooling.h')
-rw-r--r--clang/include/clang/Tooling/Tooling.h21
1 files changed, 9 insertions, 12 deletions
diff --git a/clang/include/clang/Tooling/Tooling.h b/clang/include/clang/Tooling/Tooling.h
index 14cbf015b01..8ddfef37074 100644
--- a/clang/include/clang/Tooling/Tooling.h
+++ b/clang/include/clang/Tooling/Tooling.h
@@ -94,7 +94,7 @@ public:
/// \brief Returns a new clang::FrontendAction.
///
/// The caller takes ownership of the returned action.
- virtual std::unique_ptr<clang::FrontendAction> create() = 0;
+ virtual clang::FrontendAction *create() = 0;
};
/// \brief Returns a new FrontendActionFactory for a given type.
@@ -149,8 +149,8 @@ inline std::unique_ptr<FrontendActionFactory> newFrontendActionFactory(
/// clang modules.
///
/// \return - True if 'ToolAction' was successfully executed.
-bool runToolOnCode(std::unique_ptr<FrontendAction> ToolAction,
- const Twine &Code, const Twine &FileName = "input.cc",
+bool runToolOnCode(clang::FrontendAction *ToolAction, const Twine &Code,
+ const Twine &FileName = "input.cc",
std::shared_ptr<PCHContainerOperations> PCHContainerOps =
std::make_shared<PCHContainerOperations>());
@@ -172,7 +172,7 @@ typedef std::vector<std::pair<std::string, std::string>> FileContentMappings;
///
/// \return - True if 'ToolAction' was successfully executed.
bool runToolOnCodeWithArgs(
- std::unique_ptr<FrontendAction> ToolAction, const Twine &Code,
+ clang::FrontendAction *ToolAction, const Twine &Code,
const std::vector<std::string> &Args, const Twine &FileName = "input.cc",
const Twine &ToolName = "clang-tool",
std::shared_ptr<PCHContainerOperations> PCHContainerOps =
@@ -226,8 +226,8 @@ public:
/// ownership.
/// \param PCHContainerOps The PCHContainerOperations for loading and creating
/// clang modules.
- ToolInvocation(std::vector<std::string> CommandLine,
- std::unique_ptr<FrontendAction> FAction, FileManager *Files,
+ ToolInvocation(std::vector<std::string> CommandLine, FrontendAction *FAction,
+ FileManager *Files,
std::shared_ptr<PCHContainerOperations> PCHContainerOps =
std::make_shared<PCHContainerOperations>());
@@ -367,9 +367,7 @@ template <typename T>
std::unique_ptr<FrontendActionFactory> newFrontendActionFactory() {
class SimpleFrontendActionFactory : public FrontendActionFactory {
public:
- std::unique_ptr<clang::FrontendAction> create() override {
- return llvm::make_unique<T>();
- }
+ clang::FrontendAction *create() override { return new T; }
};
return std::unique_ptr<FrontendActionFactory>(
@@ -385,9 +383,8 @@ inline std::unique_ptr<FrontendActionFactory> newFrontendActionFactory(
SourceFileCallbacks *Callbacks)
: ConsumerFactory(ConsumerFactory), Callbacks(Callbacks) {}
- std::unique_ptr<clang::FrontendAction> create() override {
- return llvm::make_unique<ConsumerFactoryAdaptor>(ConsumerFactory,
- Callbacks);
+ clang::FrontendAction *create() override {
+ return new ConsumerFactoryAdaptor(ConsumerFactory, Callbacks);
}
private:
OpenPOWER on IntegriCloud