[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v5 09/12] libxl: ocaml: add some missing CAML macros



On Tue, 2013-11-26 at 17:52 +0000, Rob Hoes wrote:
> Signed-off-by: Rob Hoes <rob.hoes@xxxxxxxxxx>
> CC: Ian Campbell <ian.campbell@xxxxxxxxxx>
> CC: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
> CC: Dave Scott <dave.scott@xxxxxxxxxxxxx>
> ---
>  tools/ocaml/libs/xl/xenlight_stubs.c |    7 +++++--
>  1 file changed, 5 insertions(+), 2 deletions(-)
> 
> diff --git a/tools/ocaml/libs/xl/xenlight_stubs.c 
> b/tools/ocaml/libs/xl/xenlight_stubs.c
> index 01ba3fe..7012045 100644
> --- a/tools/ocaml/libs/xl/xenlight_stubs.c
> +++ b/tools/ocaml/libs/xl/xenlight_stubs.c
> @@ -58,6 +58,7 @@ static value Val_error (libxl_error error_c);
>  
>  static void failwith_xl(int error, char *fname)
>  {
> +     CAMLparam0();
>       CAMLlocal1(arg);
>       static value *exc = NULL;
>  
> @@ -74,6 +75,7 @@ static void failwith_xl(int error, char *fname)
>       Store_field(arg, 1, caml_copy_string(fname));
>  
>       caml_raise_with_arg(*exc, arg);
> +     CAMLreturn0;


raise_with_arg has Noreturn, although this is probably harmless enough
and might keep some stupider compilers happy.

>  }
>  
>  CAMLprim value stub_raise_exception(value unit)
> @@ -337,7 +339,7 @@ static libxl_defbool Defbool_val(value v)
>               bool b = Bool_val(Some_val(v));
>               libxl_defbool_set(&db, b);
>       }
> -     return db;
> +     CAMLreturnT(libxl_defbool, db);
>  }
>  
>  static value Val_hwcap(libxl_hwcap *c_val)
> @@ -368,10 +370,11 @@ static value Val_string_option(const char *c_val)
>  
>  static char *String_option_val(value v)
>  {
> +     CAMLparam1(v);
>       char *s = NULL;
>       if (v != Val_none)
>               s = dup_String_val(Some_val(v));
> -     return s;
> +     CAMLreturnT(char *, s);
>  }
>  
>  #include "_libxl_types.inc"



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.