From fc92e8458636a98a4231d39fe803a9ea886764be Mon Sep 17 00:00:00 2001 From: Rafael Espindola Date: Tue, 18 Jun 2013 20:58:25 +0000 Subject: [PATCH] Use llvm::sys::fs::can_write. llvm-svn: 184234 --- clang/lib/Driver/Compilation.cpp | 3 ++- clang/lib/Frontend/CompilerInstance.cpp | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/clang/lib/Driver/Compilation.cpp b/clang/lib/Driver/Compilation.cpp index ef40ae4afbb6..32d687e5ca8f 100644 --- a/clang/lib/Driver/Compilation.cpp +++ b/clang/lib/Driver/Compilation.cpp @@ -16,6 +16,7 @@ #include "llvm/ADT/STLExtras.h" #include "llvm/ADT/StringSwitch.h" #include "llvm/Option/ArgList.h" +#include "llvm/Support/FileSystem.h" #include "llvm/Support/PathV1.h" #include "llvm/Support/Program.h" #include "llvm/Support/raw_ostream.h" @@ -208,7 +209,7 @@ bool Compilation::CleanupFile(const char *File, bool IssueErrors) const { // Don't try to remove files which we don't have write access to (but may be // able to remove), or non-regular files. Underlying tools may have // intentionally not overwritten them. - if (!P.canWrite() || !P.isRegularFile()) + if (!llvm::sys::fs::can_write(File) || !P.isRegularFile()) return true; if (P.eraseFromDisk(false, &Error)) { diff --git a/clang/lib/Frontend/CompilerInstance.cpp b/clang/lib/Frontend/CompilerInstance.cpp index 66c79d0e9e44..a2872dd4f20d 100644 --- a/clang/lib/Frontend/CompilerInstance.cpp +++ b/clang/lib/Frontend/CompilerInstance.cpp @@ -535,7 +535,8 @@ CompilerInstance::createOutputFile(StringRef OutputPath, bool Exists; if ((CreateMissingDirectories || ParentExists) && ((llvm::sys::fs::exists(AbsPath.str(), Exists) || !Exists) || - (OutPath.isRegularFile() && OutPath.canWrite()))) { + (OutPath.isRegularFile() && + llvm::sys::fs::can_write(AbsPath.c_str())))) { // Create a temporary file. SmallString<128> TempPath; TempPath = OutFile;