From 57cade574418e9507c67ba5177bc177cc7771721 Mon Sep 17 00:00:00 2001 From: Valerii Hiora Date: Wed, 23 Jul 2014 09:14:58 +0300 Subject: Updated LLVM for iOS There should be no more problems during SjLj pass --- src/rustllvm/RustWrapper.cpp | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'src/rustllvm/RustWrapper.cpp') diff --git a/src/rustllvm/RustWrapper.cpp b/src/rustllvm/RustWrapper.cpp index a1a88d1b14d..a4437ea7c7b 100644 --- a/src/rustllvm/RustWrapper.cpp +++ b/src/rustllvm/RustWrapper.cpp @@ -658,13 +658,14 @@ LLVMRustLinkInExternalBitcode(LLVMModuleRef dst, char *bc, size_t len) { #if LLVM_VERSION_MINOR >= 5 extern "C" void* LLVMRustOpenArchive(char *path) { - std::unique_ptr buf; - std::error_code err = MemoryBuffer::getFile(path, buf); - if (err) { - LLVMRustSetLastError(err.message().c_str()); + ErrorOr> buf_or = MemoryBuffer::getFile(path); + if (!buf_or) { + LLVMRustSetLastError(buf_or.getError().message().c_str()); return NULL; } - Archive *ret = new Archive(buf.release(), err); + + std::error_code err; + Archive *ret = new Archive(std::move(buf_or.get()), err); if (err) { LLVMRustSetLastError(err.message().c_str()); return NULL; -- cgit 1.4.1-3-g733a5