blob: 49ce884c44dff813ba931a8759bac00139add0f5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
(* Throw exception test *)
open Throw_exception
let x = new_Foo C_void ;;
let _ =
try
(invoke x) "test_int" C_void
with (Failure "Exception(37): Thrown exception from C++ (int)\n") ->
try
(invoke x) "test_msg" C_void
with (Failure "Exception(0): Dead\n") ->
try
(invoke x) "test_cls" C_void
with (Failure "Exception(0): Thrown exception from C++ (unknown)\n") ->
try
(invoke x) "test_multi" (C_int 1)
with (Failure "Exception(37): Thrown exception from C++ (int)\n") ->
try
(invoke x) "test_multi" (C_int 2)
with (Failure "Exception(0): Dead\n") ->
try
(invoke x) "test_multi" (C_int 3)
with (Failure "Exception(0): Thrown exception from C++ (unknown)\n") ->
exit 0
let _ = exit 1
|