diff options
author | Kevin Enderby <enderby@apple.com> | 2016-06-29 20:35:44 +0000 |
---|---|---|
committer | Kevin Enderby <enderby@apple.com> | 2016-06-29 20:35:44 +0000 |
commit | c60a321c6b26c99aadc27b81c11806fa88f7fcfa (patch) | |
tree | 6532c358ea218eb59cb99ff161d5520a132223c0 /llvm/tools/llvm-ar/llvm-ar.cpp | |
parent | dadf7b293d732ebe984c4a16cdddf4cb31364fff (diff) | |
download | bcm5719-llvm-c60a321c6b26c99aadc27b81c11806fa88f7fcfa.tar.gz bcm5719-llvm-c60a321c6b26c99aadc27b81c11806fa88f7fcfa.zip |
Change Archive::create() from ErrorOr<...> to Expected<...> and update
its clients.
This commit will break the next lld builds. I’ll be committing the matching
change for lld next.
llvm-svn: 274160
Diffstat (limited to 'llvm/tools/llvm-ar/llvm-ar.cpp')
-rw-r--r-- | llvm/tools/llvm-ar/llvm-ar.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/llvm/tools/llvm-ar/llvm-ar.cpp b/llvm/tools/llvm-ar/llvm-ar.cpp index c8e241e2bf6..f918a3e5136 100644 --- a/llvm/tools/llvm-ar/llvm-ar.cpp +++ b/llvm/tools/llvm-ar/llvm-ar.cpp @@ -713,7 +713,9 @@ static int performOperation(ArchiveOperation Operation, fail("error opening '" + ArchiveName + "': " + EC.message() + "!"); if (!EC) { - object::Archive Archive(Buf.get()->getMemBufferRef(), EC); + Error Err; + object::Archive Archive(Buf.get()->getMemBufferRef(), Err); + EC = errorToErrorCode(std::move(Err)); failIfError(EC, "error loading '" + ArchiveName + "': " + EC.message() + "!"); performOperation(Operation, &Archive, std::move(Buf.get()), NewMembers); @@ -768,7 +770,8 @@ static void runMRIScript() { ArchiveBuffers.push_back(std::move(*BufOrErr)); auto LibOrErr = object::Archive::create(ArchiveBuffers.back()->getMemBufferRef()); - failIfError(LibOrErr.getError(), "Could not parse library"); + failIfError(errorToErrorCode(LibOrErr.takeError()), + "Could not parse library"); Archives.push_back(std::move(*LibOrErr)); object::Archive &Lib = *Archives.back(); for (auto &MemberOrErr : Lib.children()) { |