Fix use-after-free in PPCallbacksTest detected by ASan bootstrap bot

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192572 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/unittests/Lex/PPCallbacksTest.cpp b/unittests/Lex/PPCallbacksTest.cpp
index 8c6df1d..fd407b5 100644
--- a/unittests/Lex/PPCallbacksTest.cpp
+++ b/unittests/Lex/PPCallbacksTest.cpp
@@ -85,7 +85,7 @@
 class PragmaOpenCLExtensionCallbacks : public PPCallbacks {
 public:
   typedef struct {
-    StringRef Name;
+    SmallString<16> Name;
     unsigned State;
   } CallbackParameters;
 
@@ -95,13 +95,13 @@
     clang::SourceLocation NameLoc, const clang::IdentifierInfo *Name,
     clang::SourceLocation StateLoc, unsigned State) {
       this->NameLoc = NameLoc;
-      this->Name = Name->getName().str();
+      this->Name = Name->getName();
       this->StateLoc = StateLoc;
       this->State = State;
   };
 
   SourceLocation NameLoc;
-  StringRef Name;
+  SmallString<16> Name;
   SourceLocation StateLoc;
   unsigned State;
 };
@@ -230,7 +230,7 @@
     }
 
     PragmaOpenCLExtensionCallbacks::CallbackParameters RetVal = {
-      Callbacks->Name.str(),
+      Callbacks->Name,
       Callbacks->State
     };
     return RetVal;