Jérémy Dubreil
2013-Jan-14 10:17 UTC
[LLVMdev] OCaml binding: error with the function "has_metadata"
Hi all,
I am using the OCaml binding and I get the following error with the function
"Llvm.has_metadata":
Assertion failed: (isa<X>(Val) && "cast<Ty>() argument
of incompatible type!"), function cast, file
.../llvm-3.2.src/include/llvm/Support/Casting.h, line 208.
Abort trap: 6
I am using the latest 3.2 release from the LLVM download page and this is a
small code sample that is crashing, giving the error message above:
************************************
let load_module filename let mb = Llvm.MemoryBuffer.of_file filename in
Llvm_bitreader.parse_bitcode (Llvm.global_context ()) mb
let stats m let print llvalue if Llvm.has_metadata llvalue then
Printf.printf "%s\n%!" (Llvm.value_name llvalue) in
Llvm.iter_functions print m
let _ let m = load_module Sys.argv.(1) in
stats m
*************************************
Does anbody know if I am doing something wrong ? or the OCaml binding is brocken
for the function "has_metadata" ?
I have the same error on Linx (ubuntu 12.04) and MacOS 10.7.5. Also, I get the
error with the release LLVM 3.1. I will check if I get the same thing with the
version 3.0.
Regards,
Jeremy
