llvm-project/llvm/bindings/ocaml/executionengine
Torok Edwin 5abf51bde0 Fix OCaml bindings crash, PR8847.
See http://caml.inria.fr/mantis/view.php?id=4166
If we call only external functions from a module, then its 'let _' bindings
don't get executed, which means that the exceptions don't get registered for use
in the C code.
This in turn causes llvm_raise to call raise_with_arg() with a NULL pointer and
cause a segmentation fault.

The workaround is to declare all 'external' functions as 'val' in these .mli
files.

Also added a separate testcase (the testcase must call only external functions
for the bug to occur).

llvm-svn: 122497
2010-12-23 15:49:26 +00:00
..
Makefile remove dead makefile flags. 2009-06-24 05:28:55 +00:00
executionengine_ocaml.c Rename some ocaml functions. 2010-03-03 23:51:30 +00:00
llvm_executionengine.ml Rename some ocaml functions. 2010-03-03 23:51:30 +00:00
llvm_executionengine.mli Fix OCaml bindings crash, PR8847. 2010-12-23 15:49:26 +00:00