Index: llvm/include/llvm/Support/FileSystem.h =================================================================== --- llvm/include/llvm/Support/FileSystem.h +++ llvm/include/llvm/Support/FileSystem.h @@ -727,8 +727,7 @@ /// otherwise a platform-specific error_code. std::error_code createUniqueFile(const Twine &Model, int &ResultFD, SmallVectorImpl &ResultPath, - unsigned Mode = all_read | all_write, - sys::fs::OpenFlags Flags = sys::fs::F_RW); + unsigned Mode = all_read | all_write); /// Simpler version for clients that don't want an open file. An empty /// file will still be created. @@ -784,8 +783,7 @@ /// running the assembler. std::error_code createTemporaryFile(const Twine &Prefix, StringRef Suffix, int &ResultFD, - SmallVectorImpl &ResultPath, - sys::fs::OpenFlags Flags = sys::fs::F_RW); + SmallVectorImpl &ResultPath); /// Simpler version for clients that don't want an open file. An empty /// file will still be created. Index: llvm/lib/Support/Path.cpp =================================================================== --- llvm/lib/Support/Path.cpp +++ llvm/lib/Support/Path.cpp @@ -169,7 +169,7 @@ createUniqueEntity(const Twine &Model, int &ResultFD, SmallVectorImpl &ResultPath, bool MakeAbsolute, unsigned Mode, FSEntity Type, - sys::fs::OpenFlags Flags = sys::fs::F_None) { + sys::fs::OpenFlags Flags = sys::fs::F_RW) { SmallString<128> ModelStorage; Model.toVector(ModelStorage); @@ -756,7 +756,13 @@ std::error_code createUniqueFile(const Twine &Model, int &ResultFd, SmallVectorImpl &ResultPath, - unsigned Mode, sys::fs::OpenFlags Flags) { + unsigned Mode) { + return createUniqueEntity(Model, ResultFd, ResultPath, false, Mode, FS_File); +} + +std::error_code createUniqueFile(const Twine &Model, int &ResultFd, + SmallVectorImpl &ResultPath, + unsigned Mode, OpenFlags Flags) { return createUniqueEntity(Model, ResultFd, ResultPath, false, Mode, FS_File, Flags); } @@ -775,32 +781,28 @@ static std::error_code createTemporaryFile(const Twine &Model, int &ResultFD, - llvm::SmallVectorImpl &ResultPath, FSEntity Type, - sys::fs::OpenFlags Flags) { + llvm::SmallVectorImpl &ResultPath, FSEntity Type) { SmallString<128> Storage; StringRef P = Model.toNullTerminatedStringRef(Storage); assert(P.find_first_of(separators(Style::native)) == StringRef::npos && "Model must be a simple filename."); // Use P.begin() so that createUniqueEntity doesn't need to recreate Storage. return createUniqueEntity(P.begin(), ResultFD, ResultPath, true, - owner_read | owner_write, Type, Flags); + owner_read | owner_write, Type); } static std::error_code createTemporaryFile(const Twine &Prefix, StringRef Suffix, int &ResultFD, - llvm::SmallVectorImpl &ResultPath, FSEntity Type, - sys::fs::OpenFlags Flags = sys::fs::F_None) { + llvm::SmallVectorImpl &ResultPath, FSEntity Type) { const char *Middle = Suffix.empty() ? "-%%%%%%" : "-%%%%%%."; return createTemporaryFile(Prefix + Middle + Suffix, ResultFD, ResultPath, - Type, Flags); + Type); } std::error_code createTemporaryFile(const Twine &Prefix, StringRef Suffix, int &ResultFD, - SmallVectorImpl &ResultPath, - sys::fs::OpenFlags Flags) { - return createTemporaryFile(Prefix, Suffix, ResultFD, ResultPath, FS_File, - Flags); + SmallVectorImpl &ResultPath) { + return createTemporaryFile(Prefix, Suffix, ResultFD, ResultPath, FS_File); } std::error_code createTemporaryFile(const Twine &Prefix, StringRef Suffix, @@ -1177,8 +1179,8 @@ Expected TempFile::create(const Twine &Model, unsigned Mode) { int FD; SmallString<128> ResultPath; - if (std::error_code EC = createUniqueFile(Model, FD, ResultPath, Mode, - sys::fs::F_RW | sys::fs::F_Delete)) + if (std::error_code EC = + createUniqueFile(Model, FD, ResultPath, Mode, F_Delete | F_RW)) return errorCodeToError(EC); TempFile Ret(ResultPath, FD);