From 8f31e213e425a3cab12b37941b5102533fc8ddbe Mon Sep 17 00:00:00 2001 From: Rafael Espindola Date: Wed, 15 Jan 2014 01:08:23 +0000 Subject: Make parseBitcodeFile return an ErrorOr. llvm-svn: 199279 --- llvm/lib/Bitcode/Reader/BitReader.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'llvm/lib/Bitcode/Reader/BitReader.cpp') diff --git a/llvm/lib/Bitcode/Reader/BitReader.cpp b/llvm/lib/Bitcode/Reader/BitReader.cpp index 4136cec7c32..3e360a8b760 100644 --- a/llvm/lib/Bitcode/Reader/BitReader.cpp +++ b/llvm/lib/Bitcode/Reader/BitReader.cpp @@ -30,16 +30,16 @@ LLVMBool LLVMParseBitcodeInContext(LLVMContextRef ContextRef, LLVMMemoryBufferRef MemBuf, LLVMModuleRef *OutModule, char **OutMessage) { - std::string Message; - - *OutModule = wrap(ParseBitcodeFile(unwrap(MemBuf), *unwrap(ContextRef), - &Message)); - if (!*OutModule) { + ErrorOr ModuleOrErr = + parseBitcodeFile(unwrap(MemBuf), *unwrap(ContextRef)); + if (error_code EC = ModuleOrErr.getError()) { if (OutMessage) - *OutMessage = strdup(Message.c_str()); + *OutMessage = strdup(EC.message().c_str()); + *OutModule = wrap((Module*)0); return 1; } + *OutModule = wrap(ModuleOrErr.get()); return 0; } -- cgit v1.2.3