Bring back the empty vector workaround I removed in r106839. Looks like MSVC needs it.
authorBenjamin Kramer <benny.kra@googlemail.com>
Fri, 25 Jun 2010 12:51:01 +0000 (12:51 +0000)
committerBenjamin Kramer <benny.kra@googlemail.com>
Fri, 25 Jun 2010 12:51:01 +0000 (12:51 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106841 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Support/MemoryBuffer.cpp

index d6a1f5487763c00de751bd9cc36df6dc1b950d8d..22e12e9d3445e0f0eacbd58aa7d931ed034c01e3 100644 (file)
@@ -292,5 +292,6 @@ MemoryBuffer *MemoryBuffer::getSTDIN(std::string *ErrStr) {
     return 0;
   }
 
-  return getMemBufferCopy(StringRef(&FileData[0], FileData.size()), "<stdin>");
+  FileData.push_back(0); // &FileData[Size] is invalid. So is &*FileData.end().
+  return getMemBufferCopy(StringRef(&FileData[0],FileData.size()-1), "<stdin>");
 }