diff options
| author | Rafael Espindola <rafael.espindola@gmail.com> | 2014-07-06 17:43:13 +0000 |
|---|---|---|
| committer | Rafael Espindola <rafael.espindola@gmail.com> | 2014-07-06 17:43:13 +0000 |
| commit | adf21f2a5634f2b33b6aa2dffae67df50c72a9f2 (patch) | |
| tree | ab58d9d0ff55fb26656a0152b43539b19657b9dc /llvm/tools/llvm-ar | |
| parent | 178cadafc1a7fc576b6f4eb86a598c24247ccad7 (diff) | |
| download | bcm5719-llvm-adf21f2a5634f2b33b6aa2dffae67df50c72a9f2.tar.gz bcm5719-llvm-adf21f2a5634f2b33b6aa2dffae67df50c72a9f2.zip | |
Update the MemoryBuffer API to use ErrorOr.
llvm-svn: 212405
Diffstat (limited to 'llvm/tools/llvm-ar')
| -rw-r--r-- | llvm/tools/llvm-ar/llvm-ar.cpp | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/llvm/tools/llvm-ar/llvm-ar.cpp b/llvm/tools/llvm-ar/llvm-ar.cpp index 4bd586be451..f638e55c5c7 100644 --- a/llvm/tools/llvm-ar/llvm-ar.cpp +++ b/llvm/tools/llvm-ar/llvm-ar.cpp @@ -770,10 +770,10 @@ static void performWriteOperation(ArchiveOperation Operation, const char *Filename = Member.getNew(); int FD = Member.getFD(); const sys::fs::file_status &Status = Member.getStatus(); - failIfError(MemoryBuffer::getOpenFile(FD, Filename, MemberBuffer, - Status.getSize(), false), - Filename); - + ErrorOr<std::unique_ptr<MemoryBuffer>> MemberBufferOrErr = + MemoryBuffer::getOpenFile(FD, Filename, Status.getSize(), false); + failIfError(MemberBufferOrErr.getError(), Filename); + MemberBuffer = std::move(MemberBufferOrErr.get()); } else { object::Archive::child_iterator OldMember = Member.getOld(); ErrorOr<std::unique_ptr<MemoryBuffer>> MemberBufferOrErr = @@ -934,8 +934,9 @@ int ar_main(char **argv) { static int performOperation(ArchiveOperation Operation) { // Create or open the archive object. - std::unique_ptr<MemoryBuffer> Buf; - std::error_code EC = MemoryBuffer::getFile(ArchiveName, Buf, -1, false); + ErrorOr<std::unique_ptr<MemoryBuffer>> Buf = + MemoryBuffer::getFile(ArchiveName, -1, false); + std::error_code EC = Buf.getError(); if (EC && EC != errc::no_such_file_or_directory) { errs() << ToolName << ": error opening '" << ArchiveName << "': " << EC.message() << "!\n"; @@ -943,7 +944,7 @@ static int performOperation(ArchiveOperation Operation) { } if (!EC) { - object::Archive Archive(std::move(Buf), EC); + object::Archive Archive(std::move(Buf.get()), EC); if (EC) { errs() << ToolName << ": error loading '" << ArchiveName |

