[cfe-commits] r165910 - in /cfe/trunk/lib/Frontend: CompilerInstance.cpp FrontendAction.cpp

Benjamin Kramer benny.kra at googlemail.com
Sun Oct 14 12:21:21 PDT 2012


Author: d0k
Date: Sun Oct 14 14:21:21 2012
New Revision: 165910

URL: http://llvm.org/viewvc/llvm-project?rev=165910&view=rev
Log:
Delete temporary output files when an error occurs during PCH reading.

This reduces the spam make test leaves behind in /tmp. The assert isn't
particularly useful because it's not run with -disable-free (the default when
using the clang driver) but should cover all -cc1 tests.

Modified:
    cfe/trunk/lib/Frontend/CompilerInstance.cpp
    cfe/trunk/lib/Frontend/FrontendAction.cpp

Modified: cfe/trunk/lib/Frontend/CompilerInstance.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Frontend/CompilerInstance.cpp?rev=165910&r1=165909&r2=165910&view=diff
==============================================================================
--- cfe/trunk/lib/Frontend/CompilerInstance.cpp (original)
+++ cfe/trunk/lib/Frontend/CompilerInstance.cpp Sun Oct 14 14:21:21 2012
@@ -52,6 +52,7 @@
 }
 
 CompilerInstance::~CompilerInstance() {
+  assert(OutputFiles.empty() && "Still output files in flight?");
 }
 
 void CompilerInstance::setInvocation(CompilerInvocation *Value) {

Modified: cfe/trunk/lib/Frontend/FrontendAction.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Frontend/FrontendAction.cpp?rev=165910&r1=165909&r2=165910&view=diff
==============================================================================
--- cfe/trunk/lib/Frontend/FrontendAction.cpp (original)
+++ cfe/trunk/lib/Frontend/FrontendAction.cpp Sun Oct 14 14:21:21 2012
@@ -316,6 +316,7 @@
 
   if (HasBegunSourceFile)
     CI.getDiagnosticClient().EndSourceFile();
+  CI.clearOutputFiles(/*EraseFiles=*/true);
   setCurrentInput(FrontendInputFile());
   setCompilerInstance(0);
   return false;





More information about the cfe-commits mailing list