From 56eec2bc2188574459a514f3650d581e00683126 Mon Sep 17 00:00:00 2001 From: Edward O'Callaghan Date: Tue, 24 Nov 2009 15:23:21 +0000 Subject: [PATCH] Fix for PR5568. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89766 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Driver/Compilation.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/lib/Driver/Compilation.cpp b/lib/Driver/Compilation.cpp index ffa627ad28..81b2cc5f37 100644 --- a/lib/Driver/Compilation.cpp +++ b/lib/Driver/Compilation.cpp @@ -85,9 +85,16 @@ bool Compilation::CleanupFileList(const ArgStringList &Files, for (ArgStringList::const_iterator it = Files.begin(), ie = Files.end(); it != ie; ++it) { + llvm::sys::Path P(*it); std::string Error; + if (P.isSpecialFile()) { + // If we have a special file in our list, i.e. /dev/null + // then don't call eraseFromDisk() and just continue. + continue; + } + if (P.eraseFromDisk(false, &Error)) { // Failure is only failure if the file doesn't exist. There is a // race condition here due to the limited interface of -- 2.50.1