diff --git a/src/unix/lwt_libev_stubs.c b/src/unix/lwt_libev_stubs.c index 2ecc08368..a7e547c4d 100644 --- a/src/unix/lwt_libev_stubs.c +++ b/src/unix/lwt_libev_stubs.c @@ -69,7 +69,12 @@ static long hash_loop(value loop) { return (long)Ev_loop_val(loop); } static struct custom_operations loop_ops = { "lwt.libev.loop", custom_finalize_default, compare_loops, - hash_loop, custom_serialize_default, custom_deserialize_default}; + hash_loop, custom_serialize_default, custom_deserialize_default, + custom_compare_ext_default, +#if OCAML_VERSION >= 408000 + NULL +#endif +}; /* Do nothing. @@ -127,7 +132,12 @@ static long hash_watcher(value watcher) { return (long)Ev_io_val(watcher); } static struct custom_operations watcher_ops = { "lwt.libev.watcher", custom_finalize_default, compare_watchers, - hash_watcher, custom_serialize_default, custom_deserialize_default}; + hash_watcher, custom_serialize_default, custom_deserialize_default, + custom_compare_ext_default, +#if OCAML_VERSION >= 408000 + NULL +#endif +}; /* +-----------------------------------------------------------------+ | IO watchers | diff --git a/src/unix/lwt_unix_stubs.c b/src/unix/lwt_unix_stubs.c index 74f7f7246..f842eac07 100644 --- a/src/unix/lwt_unix_stubs.c +++ b/src/unix/lwt_unix_stubs.c @@ -19,6 +19,7 @@ #include #include #include +#include #include #include @@ -989,7 +990,12 @@ static void *worker_loop(void *data) { /* Description of jobs. */ struct custom_operations job_ops = { "lwt.unix.job", custom_finalize_default, custom_compare_default, - custom_hash_default, custom_serialize_default, custom_deserialize_default}; + custom_hash_default, custom_serialize_default, custom_deserialize_default, + custom_compare_ext_default, +#if OCAML_VERSION >= 40800 + NULL +#endif +}; /* Get the job structure contained in a custom value. */ #define Job_val(v) *(lwt_unix_job *)Data_custom_val(v)