mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-17 20:23:59 +00:00
[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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@202959 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -33,7 +33,7 @@ FileOutputBuffer::~FileOutputBuffer() {
|
||||
|
||||
error_code FileOutputBuffer::create(StringRef FilePath,
|
||||
size_t Size,
|
||||
OwningPtr<FileOutputBuffer> &Result,
|
||||
std::unique_ptr<FileOutputBuffer> &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<mapped_file_region> MappedFile(new mapped_file_region(
|
||||
std::unique_ptr<mapped_file_region> 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<FileOutputBuffer> &Result,
|
||||
unsigned Flags) {
|
||||
std::unique_ptr<FileOutputBuffer> 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);
|
||||
|
Reference in New Issue
Block a user