diff options
| author | Steve Naroff <snaroff@apple.com> | 2009-10-15 22:23:48 +0000 |
|---|---|---|
| committer | Steve Naroff <snaroff@apple.com> | 2009-10-15 22:23:48 +0000 |
| commit | 44cd60eebec2f4c8152f58c4b16eb20c9e265119 (patch) | |
| tree | 5fe7624af9090f3c87e26f4d0762499facb0bb88 /clang/lib/Frontend | |
| parent | fb8e47323f54b6cdf037a20c005bc56b9b3d92a2 (diff) | |
| download | bcm5719-llvm-44cd60eebec2f4c8152f58c4b16eb20c9e265119.tar.gz bcm5719-llvm-44cd60eebec2f4c8152f58c4b16eb20c9e265119.zip | |
Make sure temporary files get unlinked.
llvm-svn: 84208
Diffstat (limited to 'clang/lib/Frontend')
| -rw-r--r-- | clang/lib/Frontend/ASTUnit.cpp | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/clang/lib/Frontend/ASTUnit.cpp b/clang/lib/Frontend/ASTUnit.cpp index d3475b5236d..3b2aa75008e 100644 --- a/clang/lib/Frontend/ASTUnit.cpp +++ b/clang/lib/Frontend/ASTUnit.cpp @@ -24,8 +24,11 @@ using namespace clang; -ASTUnit::ASTUnit(Diagnostic &_Diags) : Diags(_Diags) { } -ASTUnit::~ASTUnit() { } +ASTUnit::ASTUnit(Diagnostic &_Diags) : Diags(_Diags), tempFile(false) { } +ASTUnit::~ASTUnit() { + if (tempFile) + unlink(getPCHFileName().c_str()); +} namespace { @@ -80,6 +83,10 @@ const std::string &ASTUnit::getOriginalSourceFileName() { return dyn_cast<PCHReader>(Ctx->getExternalSource())->getOriginalSourceFile(); } +const std::string &ASTUnit::getPCHFileName() { + return dyn_cast<PCHReader>(Ctx->getExternalSource())->getFileName(); +} + FileManager &ASTUnit::getFileManager() { return HeaderInfo->getFileMgr(); } |

