summaryrefslogtreecommitdiffstats
path: root/clang/lib/Frontend
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2010-02-18 23:35:40 +0000
committerDouglas Gregor <dgregor@apple.com>2010-02-18 23:35:40 +0000
commit6cb5ba4c4fadb1b66da04227e33f29b42885c61f (patch)
tree09b2c03ea6127f3cca9bcd7bac702792bae2e7ba /clang/lib/Frontend
parent60b3326435d8b2980bcefc5d07d1e5f1beafd43a (diff)
downloadbcm5719-llvm-6cb5ba4c4fadb1b66da04227e33f29b42885c61f.tar.gz
bcm5719-llvm-6cb5ba4c4fadb1b66da04227e33f29b42885c61f.zip
Teach ASTUnit to keep track of temporary files, then delete them when
the ASTUnit itself is destroyed. Fixes <rdar://problem/7649385>. llvm-svn: 96628
Diffstat (limited to 'clang/lib/Frontend')
-rw-r--r--clang/lib/Frontend/ASTUnit.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/clang/lib/Frontend/ASTUnit.cpp b/clang/lib/Frontend/ASTUnit.cpp
index 345b9ba4d36..8874622a24d 100644
--- a/clang/lib/Frontend/ASTUnit.cpp
+++ b/clang/lib/Frontend/ASTUnit.cpp
@@ -36,11 +36,11 @@
using namespace clang;
ASTUnit::ASTUnit(bool _MainFileIsAST)
- : tempFile(false), MainFileIsAST(_MainFileIsAST) {
+ : MainFileIsAST(_MainFileIsAST) {
}
ASTUnit::~ASTUnit() {
- if (tempFile)
- llvm::sys::Path(getPCHFileName()).eraseFromDisk();
+ for (unsigned I = 0, N = TemporaryFiles.size(); I != N; ++I)
+ TemporaryFiles[I].eraseFromDisk();
}
namespace {
OpenPOWER on IntegriCloud