Revert over-eager unique_ptr conversion.

This test wants to observe PPCallbacks after they have been moved into the
preprocessor. That doesn't work if the pointer has been moved away.

llvm-svn: 217481
diff --git a/clang/unittests/Frontend/FrontendActionTest.cpp b/clang/unittests/Frontend/FrontendActionTest.cpp
index bdd22bd..3171156 100644
--- a/clang/unittests/Frontend/FrontendActionTest.cpp
+++ b/clang/unittests/Frontend/FrontendActionTest.cpp
@@ -111,15 +111,15 @@
 };
 
 class TestPPCallbacksFrontendAction : public PreprocessorFrontendAction {
-  std::unique_ptr<TestPPCallbacks> Callbacks;
+  TestPPCallbacks *Callbacks;
 
 public:
-  TestPPCallbacksFrontendAction(std::unique_ptr<TestPPCallbacks> C)
-      : Callbacks(std::move(C)), SeenEnd(false) {}
+  TestPPCallbacksFrontendAction(TestPPCallbacks *C)
+      : Callbacks(C), SeenEnd(false) {}
 
   void ExecuteAction() override {
     Preprocessor &PP = getCompilerInstance().getPreprocessor();
-    PP.addPPCallbacks(std::move(Callbacks));
+    PP.addPPCallbacks(std::unique_ptr<TestPPCallbacks>(Callbacks));
     PP.EnterMainSourceFile();
   }
   void EndSourceFileAction() override { SeenEnd = Callbacks->SeenEnd; }
@@ -140,8 +140,8 @@
   Compiler.setInvocation(Invocation);
   Compiler.createDiagnostics();
 
-  std::unique_ptr<TestPPCallbacks> Callbacks(new TestPPCallbacks);
-  TestPPCallbacksFrontendAction TestAction(std::move(Callbacks));
+  TestPPCallbacks *Callbacks = new TestPPCallbacks;
+  TestPPCallbacksFrontendAction TestAction(Callbacks);
   ASSERT_FALSE(Callbacks->SeenEnd);
   ASSERT_FALSE(TestAction.SeenEnd);
   ASSERT_TRUE(Compiler.ExecuteAction(TestAction));