summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-ar/llvm-ar.cpp
diff options
context:
space:
mode:
authorKevin Enderby <enderby@apple.com>2016-06-29 20:35:44 +0000
committerKevin Enderby <enderby@apple.com>2016-06-29 20:35:44 +0000
commitc60a321c6b26c99aadc27b81c11806fa88f7fcfa (patch)
tree6532c358ea218eb59cb99ff161d5520a132223c0 /llvm/tools/llvm-ar/llvm-ar.cpp
parentdadf7b293d732ebe984c4a16cdddf4cb31364fff (diff)
downloadbcm5719-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.cpp7
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()) {
OpenPOWER on IntegriCloud