aboutsummaryrefslogtreecommitdiff
path: root/lib/Frontend/ASTUnit.cpp
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2010-08-04 17:07:00 +0000
committerDouglas Gregor <dgregor@apple.com>2010-08-04 17:07:00 +0000
commitb75d3dfa4ca6531858b8132eb4db7260408671cf (patch)
tree0aacdbff5d52fa788ffeab3a1302f50a8cf5ba4e /lib/Frontend/ASTUnit.cpp
parent89ecd41e0a6bfb3b0913dbe41c3c666340b308c7 (diff)
When performing in-process code completion, don't free the remapped
file buffers until the code completion results are destroyed; diagnostics may end up referring into the source. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110216 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Frontend/ASTUnit.cpp')
-rw-r--r--lib/Frontend/ASTUnit.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/Frontend/ASTUnit.cpp b/lib/Frontend/ASTUnit.cpp
index 5bffbacaf6..2d1708ccc6 100644
--- a/lib/Frontend/ASTUnit.cpp
+++ b/lib/Frontend/ASTUnit.cpp
@@ -1213,6 +1213,7 @@ void ASTUnit::CodeComplete(llvm::StringRef File, unsigned Line, unsigned Column,
// Remap files.
PreprocessorOpts.clearRemappedFiles();
+ PreprocessorOpts.RetainRemappedFileBuffers = true;
for (unsigned I = 0; I != NumRemappedFiles; ++I)
PreprocessorOpts.addRemappedFile(RemappedFiles[I].first,
RemappedFiles[I].second);