diff --git a/gsl/mlgsl_error.c b/gsl/mlgsl_error.c index 91e3e0b..6ef15b9 100644 --- a/gsl/mlgsl_error.c +++ b/gsl/mlgsl_error.c @@ -43,7 +43,8 @@ void ml_gsl_raise_exn(int gsl_errno) exn_arg = alloc_small(2, 0); Store_field(exn_arg, 0, Val_int(conv_err_code(gsl_errno))); Store_field(exn_arg, 1, copy_string(ml_gsl_exn_msg)); - CAMLreturn(raise_with_arg(*ml_gsl_exn, exn_arg)); + raise_with_arg(*ml_gsl_exn, exn_arg); + CAMLreturn0; } static void ml_gsl_error_handler(const char *reason, const char *file,