diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2015-02-03 01:53:03 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2015-02-03 01:53:03 +0000 |
commit | dcfd6ed1837c4a162c8315d9f5b19cdd2a67a016 (patch) | |
tree | 41f06466338e1a0249e3cad85b89c3c4d1009be1 /llvm/lib/Bitcode/Reader/BitReader.cpp | |
parent | 6a196ce691eb9854c6b12ff7e061f564fe25972f (diff) | |
download | bcm5719-llvm-dcfd6ed1837c4a162c8315d9f5b19cdd2a67a016.tar.gz bcm5719-llvm-dcfd6ed1837c4a162c8315d9f5b19cdd2a67a016.zip |
Propagate a better error message to the C api.
llvm-svn: 227934
Diffstat (limited to 'llvm/lib/Bitcode/Reader/BitReader.cpp')
-rw-r--r-- | llvm/lib/Bitcode/Reader/BitReader.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/llvm/lib/Bitcode/Reader/BitReader.cpp b/llvm/lib/Bitcode/Reader/BitReader.cpp index 8641cd1487c..868fbf010db 100644 --- a/llvm/lib/Bitcode/Reader/BitReader.cpp +++ b/llvm/lib/Bitcode/Reader/BitReader.cpp @@ -41,9 +41,11 @@ LLVMBool LLVMParseBitcodeInContext(LLVMContextRef ContextRef, ErrorOr<Module *> ModuleOrErr = parseBitcodeFile( Buf, Ctx, [&](const DiagnosticInfo &DI) { DI.print(DP); }); - if (std::error_code EC = ModuleOrErr.getError()) { - if (OutMessage) - *OutMessage = strdup(EC.message().c_str()); + if (ModuleOrErr.getError()) { + if (OutMessage) { + Stream.flush(); + *OutMessage = strdup(Message.c_str()); + } *OutModule = wrap((Module*)nullptr); return 1; } |