Add an overload of Preprocessor::getSpelling which takes a SmallVector and
returns a StringRef. Use it to simplify some repetitive code.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97322 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Frontend/PrintPreprocessedOutput.cpp b/lib/Frontend/PrintPreprocessedOutput.cpp
index 43deaee..774372c 100644
--- a/lib/Frontend/PrintPreprocessedOutput.cpp
+++ b/lib/Frontend/PrintPreprocessedOutput.cpp
@@ -67,12 +67,7 @@
     if (I->hasLeadingSpace())
       OS << ' ';
 
-    // Make sure we have enough space in the spelling buffer.
-    if (I->getLength() > SpellingBuffer.size())
-      SpellingBuffer.resize(I->getLength());
-    const char *Buffer = SpellingBuffer.data();
-    unsigned SpellingLen = PP.getSpelling(*I, Buffer);
-    OS.write(Buffer, SpellingLen);
+    OS << PP.getSpelling(*I, SpellingBuffer);
   }
 }