From 23740528cd2d75a236aae1fb5d073e8be2e5a295 Mon Sep 17 00:00:00 2001 From: Jim Meyering Date: Fri, 28 Aug 2009 13:43:16 +0200 Subject: [PATCH] generator.ml: avoid warnings in generated ocaml/guestfs_c_actions.c * src/generator.ml: Emit prototypes for ocaml_guestfs_* functions, to avoid warnings from gcc -Wmissing-prototypes. Normally we'd put these somewhere else, but in this unusual case, they're not needed anywhere else. Handle the >5-argument case, too, for these: ocaml_guestfs_test0_byte, ocaml_guestfs_sfdisk_byte, ocaml_guestfs_sfdisk_N_byte. --- src/generator.ml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/generator.ml b/src/generator.ml index 46fcf2c..fa7d240 100755 --- a/src/generator.ml +++ b/src/generator.ml @@ -6770,6 +6770,10 @@ copy_table (char * const * argv) let needs_extra_vs = match fst style with RConstOptString _ -> true | _ -> false in + pr "/* Emit prototype to appease gcc's -Wmissing-prototypes. */\n"; + pr "CAMLprim value ocaml_guestfs_%s (value %s" name (List.hd params); + List.iter (pr ", value %s") (List.tl params); pr ");\n"; + pr "CAMLprim value\n"; pr "ocaml_guestfs_%s (value %s" name (List.hd params); List.iter (pr ", value %s") (List.tl params); @@ -6903,6 +6907,9 @@ copy_table (char * const * argv) pr "\n"; if List.length params > 5 then ( + pr "/* Emit prototype to appease gcc's -Wmissing-prototypes. */\n"; + pr "CAMLprim value "; + pr "ocaml_guestfs_%s_byte (value *argv, int argn);\n" name; pr "CAMLprim value\n"; pr "ocaml_guestfs_%s_byte (value *argv, int argn)\n" name; pr "{\n"; -- 1.8.3.1