[llvm] r227934 - Propagate a better error message to the C api.
Rafael Espindola
rafael.espindola at gmail.com
Mon Feb 2 17:53:04 PST 2015
Author: rafael
Date: Mon Feb 2 19:53:03 2015
New Revision: 227934
URL: http://llvm.org/viewvc/llvm-project?rev=227934&view=rev
Log:
Propagate a better error message to the C api.
Modified:
llvm/trunk/lib/Bitcode/Reader/BitReader.cpp
llvm/trunk/test/Bindings/llvm-c/invalid-bitcode.test
Modified: llvm/trunk/lib/Bitcode/Reader/BitReader.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Bitcode/Reader/BitReader.cpp?rev=227934&r1=227933&r2=227934&view=diff
==============================================================================
--- llvm/trunk/lib/Bitcode/Reader/BitReader.cpp (original)
+++ llvm/trunk/lib/Bitcode/Reader/BitReader.cpp Mon Feb 2 19:53:03 2015
@@ -41,9 +41,11 @@ LLVMBool LLVMParseBitcodeInContext(LLVMC
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;
}
Modified: llvm/trunk/test/Bindings/llvm-c/invalid-bitcode.test
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Bindings/llvm-c/invalid-bitcode.test?rev=227934&r1=227933&r2=227934&view=diff
==============================================================================
--- llvm/trunk/test/Bindings/llvm-c/invalid-bitcode.test (original)
+++ llvm/trunk/test/Bindings/llvm-c/invalid-bitcode.test Mon Feb 2 19:53:03 2015
@@ -1,3 +1,3 @@
; RUN: not llvm-c-test --module-dump < %S/Inputs/invalid.ll.bc 2>&1 | FileCheck %s
-CHECK: Error parsing bitcode: Corrupted bitcode
+CHECK: Error parsing bitcode: Unknown attribute kind (48)
More information about the llvm-commits
mailing list