From fba066461fdb036b77d7da1fe8039781dcca9910 Mon Sep 17 00:00:00 2001 From: Ahmed Charles Date: Wed, 5 Mar 2014 10:27:34 +0000 Subject: [C++11] Add overloads for externally used OwningPtr functions. This will allow external callers of these functions to switch over time rather than forcing a breaking change all a once. These particular functions were determined by building clang/lld/lldb. llvm-svn: 202959 --- llvm/lib/Support/FileOutputBuffer.cpp | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'llvm/lib/Support/FileOutputBuffer.cpp') diff --git a/llvm/lib/Support/FileOutputBuffer.cpp b/llvm/lib/Support/FileOutputBuffer.cpp index c01778f9600..8f2c9fcce08 100644 --- a/llvm/lib/Support/FileOutputBuffer.cpp +++ b/llvm/lib/Support/FileOutputBuffer.cpp @@ -33,7 +33,7 @@ FileOutputBuffer::~FileOutputBuffer() { error_code FileOutputBuffer::create(StringRef FilePath, size_t Size, - OwningPtr &Result, + std::unique_ptr &Result, unsigned Flags) { // If file already exists, it must be a regular file (to be mappable). sys::fs::file_status Stat; @@ -73,18 +73,28 @@ error_code FileOutputBuffer::create(StringRef FilePath, if (EC) return EC; - OwningPtr MappedFile(new mapped_file_region( + std::unique_ptr MappedFile(new mapped_file_region( FD, true, mapped_file_region::readwrite, Size, 0, EC)); if (EC) return EC; Result.reset(new FileOutputBuffer(MappedFile.get(), FilePath, TempFilePath)); if (Result) - MappedFile.take(); + MappedFile.release(); return error_code::success(); } +error_code FileOutputBuffer::create(StringRef FilePath, + size_t Size, + OwningPtr &Result, + unsigned Flags) { + std::unique_ptr FOB; + error_code ec = create(FilePath, Size, FOB, Flags); + Result = std::move(FOB); + return ec; +} + error_code FileOutputBuffer::commit(int64_t NewSmallerSize) { // Unmap buffer, letting OS flush dirty pages to file on disk. Region.reset(0); -- cgit v1.2.3