Build:
  1. 0
2026-06-24 11:05.43: New job: build curses.1.0.8 (4d62cbe1b02e)
2026-06-24 11:05.43: Waiting for resource in pool day11-builds
2026-06-24 11:12.52: Got resource from pool day11-builds
2026-06-24 11:12.52: [profile full] build curses.1.0.8
2026-06-24 11:12.52: build curses.1.0.8 (4d62cbe1b02e)
=== DEPENDENCIES (6 transitive) ===
  conf-ncurses.1                                     494478f11281
  conf-pkg-config.5                                  d5de2c6a88f9
  ocaml.4.14.4                                       b047fb9251f4
  ocaml-base-compiler.4.14.4                         d3b7ccb2c6fb
  ocaml-config.2                                     2d9c209f5590
  ocamlfind.1.9.8                                    214dd418ac02
=== STDOUT ===
Processing: [default: loading data]
[curses.1.0.8: dl]
[curses.1.0.8: extract]
-> retrieved curses.1.0.8  (https://opam.ocaml.org/cache)
[curses: ./configure]
+ /home/opam/.opam/default/.opam-switch/build/curses.1.0.8/./configure "--enable-widec" (CWD=/home/opam/.opam/default/.opam-switch/build/curses.1.0.8)
- checking for gcc... gcc
- checking whether the C compiler works... yes
- checking for C compiler default output file name... a.out
- checking for suffix of executables... 
- checking whether we are cross compiling... no
- checking for suffix of object files... o
- checking whether we are using the GNU C compiler... yes
- checking whether gcc accepts -g... yes
- checking for gcc option to accept ISO C89... none needed
- checking whether gcc and cc understand -c and -o together... yes
- checking for ranlib... ranlib
- checking how to run the C preprocessor... gcc -E
- checking for grep that handles long lines and -e... /usr/bin/grep
- checking for egrep... /usr/bin/grep -E
- checking for ANSI C header files... 
- yes
- checking for sys/types.h... yes
- checking for sys/stat.h... yes
- checking for stdlib.h... yes
- checking for string.h... yes
- checking for memory.h... yes
- checking for strings.h... yes
- checking for inttypes.h... yes
- checking for stdint.h... yes
- checking for unistd.h... yes
- checking termios.h usability... yes
- checking termios.h presence... yes
- checking for termios.h... yes
- checking sys/ioctl.h usability... yes
- checking sys/ioctl.h presence... yes
- checking for sys/ioctl.h... yes
- checking windows.h usability... no
- checking windows.h presence... no
- checking for windows.h... no
- checking for working ncurses library... found in -lncursesw
- checking for term.h... found in <term.h>
- checking for wide character support in ncurses library... 
- yes
- checking for resizeterm... yes
- checking for resize_term... yes
- configure: creating ./config.status
- config.status: creating Makefile
- config.status: creating config.ml
- config.status: creating config.h
[curses: make byte]
+ /usr/bin/make "OCAMLMAKEFILE=OCamlMakefile" "byte" (CWD=/home/opam/.opam/default/.opam-switch/build/curses.1.0.8)
- make[1]: Entering directory '/home/opam/.opam/default/.opam-switch/build/curses.1.0.8'
- ocamldep curses.mli > ._bcdi/curses.di
- ocamldep -pp "gcc -x c -E " curses.ml > ._d/curses.d
- ocamldep keys.ml > ._d/keys.d
- ocamlc -c -cc "gcc" -ccopt "-fPIC -g -O2 -DHAVE_CONFIG_H \
- 			-DPIC   \
- 			    -o ml_curses.o " ml_curses.c
- ml_curses.c: In function 'putc_callback':
- ml_curses.c:203:13: warning: "callback_exn" is deprecated: use "caml_callback_exn" instead
-   203 |   ret=callback_exn(putc_function,Val_int(c&255));
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                              
- In file included from ml_curses.c:216:
- functions.c: In function 'mlcurses_addchstr':
- functions.c:19:13: warning: "failwith" is deprecated: use "caml_failwith" instead
-    19 | BEG1 copie(Wosize_val(aa),0,aa) call(addchstr(t)) END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                  
- functions.c: In function 'mlcurses_waddchstr':
- functions.c:21:13: warning: "failwith" is deprecated: use "caml_failwith" instead
-    21 | BEG2 copie(Wosize_val(ab),0,ab) call(waddchstr(a_window(aa),t)) END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~    
- functions.c: In function 'mlcurses_mvaddchstr':
- functions.c:23:13: warning: "failwith" is deprecated: use "caml_failwith" instead
-    23 | BEG3 copie(Wosize_val(ac),0,ac) call(mvaddchstr(a_int(aa),a_int(ab),t)) END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- functions.c: In function 'mlcurses_mvwaddchstr':
- functions.c:25:13: warning: "failwith" is deprecated: use "caml_failwith" instead
-    25 | BEG4 copie(Wosize_val(ad),0,ad)
-       |             ^~~~~~~~~~~~~~~~~~~                                        
- functions.c: In function 'mlcurses_addchnstr':
- functions.c:29:13: warning: "failwith" is deprecated: use "caml_failwith" instead
-    29 |   copie(Int_val(ac),i0,aa)
-       |             ^~~~~~~~~~~~~~                                             
- functions.c: In function 'mlcurses_waddchnstr':
- functions.c:33:13: warning: "failwith" is deprecated: use "caml_failwith" instead
-    33 |   copie(Int_val(ad),i0,ab)
-       |             ^~~~~~~~~~~~~~                                             
- functions.c: In function 'mlcurses_mvaddchnstr':
- functions.c:37:13: warning: "failwith" is deprecated: use "caml_failwith" instead
-    37 |   copie(Int_val(ae),i0,ac)
-       |             ^~~~~~~~~~~~~~                                             
- functions.c: In function 'mlcurses_mvwaddchnstr_native':
- functions.c:41:13: warning: "failwith" is deprecated: use "caml_failwith" instead
-    41 |   copie(Int_val(af),i0,ad)
-       |             ^~~~~~~~~~~~~~                                             
- functions.c: In function 'mlcurses_color_content':
- functions.c:162:13: warning: "alloc_tuple" is deprecated: use "caml_alloc_tuple" instead
-   162 |   x=y=z=-1; r_int_int_int(x,y,z); END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~                                        
- functions.c: In function 'mlcurses_pair_content':
- functions.c:165:13: warning: "alloc_tuple" is deprecated: use "caml_alloc_tuple" instead
-   165 |   r_int_int(x,y); END
-       |             ^~~~~~~~~                                                        
- functions.c: In function 'mlcurses_getstr':
- functions.c:195:13: warning: "string_length" is deprecated: use "caml_string_length" instead
-   195 | BEG1 r_err(getnstr(a_string(aa),string_length(aa))); END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                         
- In file included from ml_curses.c:7:
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:290:24: warning: passing argument 2 of 'wgetnstr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
-   290 | #define String_val(x) ((const char *) Bp_val(x))
-       |                       ~^~~~~~~~~~~~~~~~~~~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/memory.h:462:29: note: in definition of macro 'CAMLreturnT'
-   462 |   type caml__temp_result = (result); \
-       |                             ^~~~~~
- ml_curses.c:51:25: note: in expansion of macro 'CAMLreturn'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                         ^~~~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:79:20: note: in expansion of macro 'Val_long'
-    79 | #define Val_int(x) Val_long(x)
-       |                    ^~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:387:21: note: in expansion of macro 'Val_int'
-   387 | #define Val_bool(x) Val_int((x) != 0)
-       |                     ^~~~~~~
- ml_curses.c:51:36: note: in expansion of macro 'Val_bool'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                                    ^~~~~~~~
- functions.c:195:6: note: in expansion of macro 'r_err'
-   195 | BEG1 r_err(getnstr(a_string(aa),string_length(aa))); END
-       |      ^~~~~
- ml_curses.c:88:25: note: in expansion of macro 'String_val'
-    88 | #define a_string(a)     String_val(a)
-       |                         ^~~~~~~~~~
- functions.c:195:20: note: in expansion of macro 'a_string'
-   195 | BEG1 r_err(getnstr(a_string(aa),string_length(aa))); END
-       |                    ^~~~~~~~
- In file included from ml_curses.c:22:
- /usr/include/curses.h:853:47: note: expected 'char *' but argument is of type 'const char *'
-   853 | extern NCURSES_EXPORT(int) wgetnstr (WINDOW *,char *,int);              /* implemented */
-       |                                               ^~~~~~
- functions.c: In function 'mlcurses_wgetstr':
- functions.c:197:13: warning: "string_length" is deprecated: use "caml_string_length" instead
-   197 | BEG2 r_err(wgetnstr(a_window(aa),a_string(ab),string_length(ab))); END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:290:24: warning: passing argument 2 of 'wgetnstr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
-   290 | #define String_val(x) ((const char *) Bp_val(x))
-       |                       ~^~~~~~~~~~~~~~~~~~~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/memory.h:462:29: note: in definition of macro 'CAMLreturnT'
-   462 |   type caml__temp_result = (result); \
-       |                             ^~~~~~
- ml_curses.c:51:25: note: in expansion of macro 'CAMLreturn'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                         ^~~~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:79:20: note: in expansion of macro 'Val_long'
-    79 | #define Val_int(x) Val_long(x)
-       |                    ^~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:387:21: note: in expansion of macro 'Val_int'
-   387 | #define Val_bool(x) Val_int((x) != 0)
-       |                     ^~~~~~~
- ml_curses.c:51:36: note: in expansion of macro 'Val_bool'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                                    ^~~~~~~~
- functions.c:197:6: note: in expansion of macro 'r_err'
-   197 | BEG2 r_err(wgetnstr(a_window(aa),a_string(ab),string_length(ab))); END
-       |      ^~~~~
- ml_curses.c:88:25: note: in expansion of macro 'String_val'
-    88 | #define a_string(a)     String_val(a)
-       |                         ^~~~~~~~~~
- functions.c:197:34: note: in expansion of macro 'a_string'
-   197 | BEG2 r_err(wgetnstr(a_window(aa),a_string(ab),string_length(ab))); END
-       |                                  ^~~~~~~~
- /usr/include/curses.h:853:47: note: expected 'char *' but argument is of type 'const char *'
-   853 | extern NCURSES_EXPORT(int) wgetnstr (WINDOW *,char *,int);              /* implemented */
-       |                                               ^~~~~~
- functions.c: In function 'mlcurses_mvgetstr':
- functions.c:199:13: warning: "string_length" is deprecated: use "caml_string_length" instead
-   199 | BEG3 r_err(mvgetnstr(a_int(aa),a_int(ab),a_string(ac),string_length(ac))); END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:290:24: warning: passing argument 2 of 'wgetnstr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
-   290 | #define String_val(x) ((const char *) Bp_val(x))
- /home/opam/.opam/default/lib/ocaml/caml/memory.h:462:29: note: in definition of macro 'CAMLreturnT'
-   462 |   type caml__temp_result = (result); \
-       |                             ^~~~~~
- ml_curses.c:51:25: note: in expansion of macro 'CAMLreturn'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                         ^~~~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:79:20: note: in expansion of macro 'Val_long'
-    79 | #define Val_int(x) Val_long(x)
-       |                    ^~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:387:21: note: in expansion of macro 'Val_int'
-   387 | #define Val_bool(x) Val_int((x) != 0)
-       |                     ^~~~~~~
- ml_curses.c:51:36: note: in expansion of macro 'Val_bool'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                                    ^~~~~~~~
- functions.c:199:6: note: in expansion of macro 'r_err'
-   199 | BEG3 r_err(mvgetnstr(a_int(aa),a_int(ab),a_string(ac),string_length(ac))); END
-       |      ^~~~~
- ml_curses.c:88:25: note: in expansion of macro 'String_val'
-    88 | #define a_string(a)     String_val(a)
-       |                         ^~~~~~~~~~
- functions.c:199:42: note: in expansion of macro 'a_string'
-   199 | BEG3 r_err(mvgetnstr(a_int(aa),a_int(ab),a_string(ac),string_length(ac))); END
-       |                                          ^~~~~~~~
- /usr/include/curses.h:853:47: note: expected 'char *' but argument is of type 'const char *'
-   853 | extern NCURSES_EXPORT(int) wgetnstr (WINDOW *,char *,int);              /* implemented */
-       |                                               ^~~~~~
- functions.c: In function 'mlcurses_mvwgetstr':
- functions.c:202:13: warning: "string_length" is deprecated: use "caml_string_length" instead
-   202 |   string_length(ad))); END
-       |             ^~~~~~~~~~~~~~                                                       
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:290:24: warning: passing argument 2 of 'wgetnstr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
-   290 | #define String_val(x) ((const char *) Bp_val(x))
- /home/opam/.opam/default/lib/ocaml/caml/memory.h:462:29: note: in definition of macro 'CAMLreturnT'
-   462 |   type caml__temp_result = (result); \
-       |                             ^~~~~~
- ml_curses.c:51:25: note: in expansion of macro 'CAMLreturn'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                         ^~~~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:79:20: note: in expansion of macro 'Val_long'
-    79 | #define Val_int(x) Val_long(x)
-       |                    ^~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:387:21: note: in expansion of macro 'Val_int'
-   387 | #define Val_bool(x) Val_int((x) != 0)
-       |                     ^~~~~~~
- ml_curses.c:51:36: note: in expansion of macro 'Val_bool'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                                    ^~~~~~~~
- functions.c:201:6: note: in expansion of macro 'r_err'
-   201 | BEG4 r_err(mvwgetnstr(a_window(aa),a_int(ab),a_int(ac),a_string(ad),
-       |      ^~~~~
- ml_curses.c:88:25: note: in expansion of macro 'String_val'
-    88 | #define a_string(a)     String_val(a)
-       |                         ^~~~~~~~~~
- functions.c:201:56: note: in expansion of macro 'a_string'
-   201 | BEG4 r_err(mvwgetnstr(a_window(aa),a_int(ab),a_int(ac),a_string(ad),
-       |                                                        ^~~~~~~~
- /usr/include/curses.h:853:47: note: expected 'char *' but argument is of type 'const char *'
-   853 | extern NCURSES_EXPORT(int) wgetnstr (WINDOW *,char *,int);              /* implemented */
-       |                                               ^~~~~~
- functions.c: In function 'mlcurses_getnstr':
- functions.c:204:32: warning: passing argument 2 of 'wgetnstr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
-   204 | BEG3 r_err(getnstr(a_string(aa)+a_int(ab),a_int(ac))); END
- /home/opam/.opam/default/lib/ocaml/caml/memory.h:462:29: note: in definition of macro 'CAMLreturnT'
-   462 |   type caml__temp_result = (result); \
-       |                             ^~~~~~
- ml_curses.c:51:25: note: in expansion of macro 'CAMLreturn'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                         ^~~~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:79:20: note: in expansion of macro 'Val_long'
-    79 | #define Val_int(x) Val_long(x)
-       |                    ^~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:387:21: note: in expansion of macro 'Val_int'
-   387 | #define Val_bool(x) Val_int((x) != 0)
-       |                     ^~~~~~~
- ml_curses.c:51:36: note: in expansion of macro 'Val_bool'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                                    ^~~~~~~~
- functions.c:204:6: note: in expansion of macro 'r_err'
-   204 | BEG3 r_err(getnstr(a_string(aa)+a_int(ab),a_int(ac))); END
-       |      ^~~~~
- /usr/include/curses.h:853:47: note: expected 'char *' but argument is of type 'const char *'
-   853 | extern NCURSES_EXPORT(int) wgetnstr (WINDOW *,char *,int);              /* implemented */
-       |                                               ^~~~~~
- functions.c: In function 'mlcurses_wgetnstr':
- functions.c:206:46: warning: passing argument 2 of 'wgetnstr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
-   206 | BEG4 r_err(wgetnstr(a_window(aa),a_string(ab)+a_int(ac),a_int(ad))); END
- /home/opam/.opam/default/lib/ocaml/caml/memory.h:462:29: note: in definition of macro 'CAMLreturnT'
-   462 |   type caml__temp_result = (result); \
-       |                             ^~~~~~
- ml_curses.c:51:25: note: in expansion of macro 'CAMLreturn'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                         ^~~~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:79:20: note: in expansion of macro 'Val_long'
-    79 | #define Val_int(x) Val_long(x)
-       |                    ^~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:387:21: note: in expansion of macro 'Val_int'
-   387 | #define Val_bool(x) Val_int((x) != 0)
-       |                     ^~~~~~~
- ml_curses.c:51:36: note: in expansion of macro 'Val_bool'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                                    ^~~~~~~~
- functions.c:206:6: note: in expansion of macro 'r_err'
-   206 | BEG4 r_err(wgetnstr(a_window(aa),a_string(ab)+a_int(ac),a_int(ad))); END
-       |      ^~~~~
- /usr/include/curses.h:853:47: note: expected 'char *' but argument is of type 'const char *'
-   853 | extern NCURSES_EXPORT(int) wgetnstr (WINDOW *,char *,int);              /* implemented */
-       |                                               ^~~~~~
- functions.c: In function 'mlcurses_mvgetnstr':
- functions.c:208:54: warning: passing argument 2 of 'wgetnstr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
-   208 | BEG5 r_err(mvgetnstr(a_int(aa),a_int(ab),a_string(ac)+a_int(ad),
-       |                                                      ^
- /home/opam/.opam/default/lib/ocaml/caml/memory.h:462:29: note: in definition of macro 'CAMLreturnT'
-   462 |   type caml__temp_result = (result); \
-       |                             ^~~~~~
- ml_curses.c:51:25: note: in expansion of macro 'CAMLreturn'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                         ^~~~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:79:20: note: in expansion of macro 'Val_long'
-    79 | #define Val_int(x) Val_long(x)
-       |                    ^~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:387:21: note: in expansion of macro 'Val_int'
-   387 | #define Val_bool(x) Val_int((x) != 0)
-       |                     ^~~~~~~
- ml_curses.c:51:36: note: in expansion of macro 'Val_bool'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                                    ^~~~~~~~
- functions.c:208:6: note: in expansion of macro 'r_err'
-   208 | BEG5 r_err(mvgetnstr(a_int(aa),a_int(ab),a_string(ac)+a_int(ad),
-       |      ^~~~~
- /usr/include/curses.h:853:47: note: expected 'char *' but argument is of type 'const char *'
-   853 | extern NCURSES_EXPORT(int) wgetnstr (WINDOW *,char *,int);              /* implemented */
-       |                                               ^~~~~~
- functions.c: In function 'mlcurses_mvwgetnstr_native':
- functions.c:211:68: warning: passing argument 2 of 'wgetnstr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
-   211 | BEG6 r_err(mvwgetnstr(a_window(aa),a_int(ab),a_int(ac),a_string(ad)+a_int(ae),
-       |                                                                    ^
- /home/opam/.opam/default/lib/ocaml/caml/memory.h:462:29: note: in definition of macro 'CAMLreturnT'
-   462 |   type caml__temp_result = (result); \
-       |                             ^~~~~~
- ml_curses.c:51:25: note: in expansion of macro 'CAMLreturn'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                         ^~~~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:79:20: note: in expansion of macro 'Val_long'
-    79 | #define Val_int(x) Val_long(x)
-       |                    ^~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:387:21: note: in expansion of macro 'Val_int'
-   387 | #define Val_bool(x) Val_int((x) != 0)
-       |                     ^~~~~~~
- ml_curses.c:51:36: note: in expansion of macro 'Val_bool'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                                    ^~~~~~~~
- functions.c:211:6: note: in expansion of macro 'r_err'
-   211 | BEG6 r_err(mvwgetnstr(a_window(aa),a_int(ab),a_int(ac),a_string(ad)+a_int(ae),
-       |      ^~~~~
- /usr/include/curses.h:853:47: note: expected 'char *' but argument is of type 'const char *'
-   853 | extern NCURSES_EXPORT(int) wgetnstr (WINDOW *,char *,int);              /* implemented */
-       |                                               ^~~~~~
- functions.c: In function 'mlcurses_getyx':
- functions.c:217:13: warning: "alloc_tuple" is deprecated: use "caml_alloc_tuple" instead
-   217 | BEG1 int x,y; getyx(a_window(aa),y,x); r_int_int(y,x); END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                   
- functions.c: In function 'mlcurses_getparyx':
- functions.c:219:13: warning: "alloc_tuple" is deprecated: use "caml_alloc_tuple" instead
-   219 | BEG1 int x,y; getparyx(a_window(aa),y,x); r_int_int(y,x); END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                
- functions.c: In function 'mlcurses_getbegyx':
- functions.c:221:13: warning: "alloc_tuple" is deprecated: use "caml_alloc_tuple" instead
-   221 | BEG1 int x,y; getbegyx(a_window(aa),y,x); r_int_int(y,x); END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                
- functions.c: In function 'mlcurses_getmaxyx':
- functions.c:223:13: warning: "alloc_tuple" is deprecated: use "caml_alloc_tuple" instead
-   223 | BEG1 int x,y; getmaxyx(a_window(aa),y,x); r_int_int(y,x); END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                
- functions.c: In function 'mlcurses_newterm':
- functions.c:296:13: warning: "alloc_tuple" is deprecated: use "caml_alloc_tuple" instead
-   296 |   r=alloc_tuple(3);
-       |             ^~~~~~~                                                          
- functions.c:300:13: warning: "failwith" is deprecated: use "caml_failwith" instead
-   300 |   if(s==NULL){ fclose(fa); fclose(fb); failwith("newterm"); }
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~          
- functions.c: In function 'mlcurses_insstr':
- functions.c:316:13: warning: "string_length" is deprecated: use "caml_string_length" instead
-   316 | BEG1 r_err(insnstr(a_string(aa),string_length(aa))); END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                         
- functions.c: In function 'mlcurses_winsstr':
- functions.c:318:13: warning: "string_length" is deprecated: use "caml_string_length" instead
-   318 | BEG2 r_err(winsnstr(a_window(aa),a_string(ab),string_length(ab))); END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           
- functions.c: In function 'mlcurses_mvinsstr':
- functions.c:320:13: warning: "string_length" is deprecated: use "caml_string_length" instead
-   320 | BEG3 r_err(mvinsnstr(a_int(aa),a_int(ab),a_string(ac),string_length(ac))); END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
- functions.c: In function 'mlcurses_mvwinsstr':
- functions.c:323:13: warning: "string_length" is deprecated: use "caml_string_length" instead
-   323 |   a_string(ad),string_length(ad))); END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~                                          
- functions.c: In function 'mlcurses_instr':
- functions.c:337:13: warning: "string_length" is deprecated: use "caml_string_length" instead
-   337 | BEG1 r_err(innstr(a_string(aa),string_length(aa))); END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                          
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:290:24: warning: passing argument 2 of 'winnstr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
-   290 | #define String_val(x) ((const char *) Bp_val(x))
- /home/opam/.opam/default/lib/ocaml/caml/memory.h:462:29: note: in definition of macro 'CAMLreturnT'
-   462 |   type caml__temp_result = (result); \
-       |                             ^~~~~~
- ml_curses.c:51:25: note: in expansion of macro 'CAMLreturn'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                         ^~~~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:79:20: note: in expansion of macro 'Val_long'
-    79 | #define Val_int(x) Val_long(x)
-       |                    ^~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:387:21: note: in expansion of macro 'Val_int'
-   387 | #define Val_bool(x) Val_int((x) != 0)
-       |                     ^~~~~~~
- ml_curses.c:51:36: note: in expansion of macro 'Val_bool'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                                    ^~~~~~~~
- functions.c:337:6: note: in expansion of macro 'r_err'
-   337 | BEG1 r_err(innstr(a_string(aa),string_length(aa))); END
-       |      ^~~~~
- ml_curses.c:88:25: note: in expansion of macro 'String_val'
-    88 | #define a_string(a)     String_val(a)
-       |                         ^~~~~~~~~~
- functions.c:337:19: note: in expansion of macro 'a_string'
-   337 | BEG1 r_err(innstr(a_string(aa),string_length(aa))); END
-       |                   ^~~~~~~~
- /usr/include/curses.h:859:47: note: expected 'char *' but argument is of type 'const char *'
-   859 | extern NCURSES_EXPORT(int) winnstr (WINDOW *, char *, int);             /* implemented */
-       |                                               ^~~~~~
- functions.c: In function 'mlcurses_winstr':
- functions.c:339:13: warning: "string_length" is deprecated: use "caml_string_length" instead
-   339 | BEG2 r_err(winnstr(a_window(aa),a_string(ab),string_length(ab))); END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~            
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:290:24: warning: passing argument 2 of 'winnstr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
-   290 | #define String_val(x) ((const char *) Bp_val(x))
-       |                       ~^~~~~~~~~~~~~~~~~~~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/memory.h:462:29: note: in definition of macro 'CAMLreturnT'
-   462 |   type caml__temp_result = (result); \
-       |                             ^~~~~~
- ml_curses.c:51:25: note: in expansion of macro 'CAMLreturn'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                         ^~~~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:79:20: note: in expansion of macro 'Val_long'
-    79 | #define Val_int(x) Val_long(x)
-       |                    ^~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:387:21: note: in expansion of macro 'Val_int'
-   387 | #define Val_bool(x) Val_int((x) != 0)
-       |                     ^~~~~~~
- ml_curses.c:51:36: note: in expansion of macro 'Val_bool'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                                    ^~~~~~~~
- functions.c:339:6: note: in expansion of macro 'r_err'
-   339 | BEG2 r_err(winnstr(a_window(aa),a_string(ab),string_length(ab))); END
-       |      ^~~~~
- ml_curses.c:88:25: note: in expansion of macro 'String_val'
-    88 | #define a_string(a)     String_val(a)
-       |                         ^~~~~~~~~~
- functions.c:339:33: note: in expansion of macro 'a_string'
-   339 | BEG2 r_err(winnstr(a_window(aa),a_string(ab),string_length(ab))); END
-       |                                 ^~~~~~~~
- /usr/include/curses.h:859:47: note: expected 'char *' but argument is of type 'const char *'
-   859 | extern NCURSES_EXPORT(int) winnstr (WINDOW *, char *, int);             /* implemented */
-       |                                               ^~~~~~
- functions.c: In function 'mlcurses_mvinstr':
- functions.c:341:13: warning: "string_length" is deprecated: use "caml_string_length" instead
-   341 | BEG3 r_err(mvinnstr(a_int(aa),a_int(ab),a_string(ac),string_length(ac))); END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~    
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:290:24: warning: passing argument 2 of 'winnstr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
-   290 | #define String_val(x) ((const char *) Bp_val(x))
- /home/opam/.opam/default/lib/ocaml/caml/memory.h:462:29: note: in definition of macro 'CAMLreturnT'
-   462 |   type caml__temp_result = (result); \
-       |                             ^~~~~~
- ml_curses.c:51:25: note: in expansion of macro 'CAMLreturn'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                         ^~~~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:79:20: note: in expansion of macro 'Val_long'
-    79 | #define Val_int(x) Val_long(x)
-       |                    ^~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:387:21: note: in expansion of macro 'Val_int'
-   387 | #define Val_bool(x) Val_int((x) != 0)
-       |                     ^~~~~~~
- ml_curses.c:51:36: note: in expansion of macro 'Val_bool'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                                    ^~~~~~~~
- functions.c:341:6: note: in expansion of macro 'r_err'
-   341 | BEG3 r_err(mvinnstr(a_int(aa),a_int(ab),a_string(ac),string_length(ac))); END
-       |      ^~~~~
- ml_curses.c:88:25: note: in expansion of macro 'String_val'
-    88 | #define a_string(a)     String_val(a)
-       |                         ^~~~~~~~~~
- functions.c:341:41: note: in expansion of macro 'a_string'
-   341 | BEG3 r_err(mvinnstr(a_int(aa),a_int(ab),a_string(ac),string_length(ac))); END
-       |                                         ^~~~~~~~
- /usr/include/curses.h:859:47: note: expected 'char *' but argument is of type 'const char *'
-   859 | extern NCURSES_EXPORT(int) winnstr (WINDOW *, char *, int);             /* implemented */
-       |                                               ^~~~~~
- functions.c: In function 'mlcurses_mvwinstr':
- functions.c:344:13: warning: "string_length" is deprecated: use "caml_string_length" instead
-   344 |   a_string(ad),string_length(ad))); END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~                                          
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:290:24: warning: passing argument 2 of 'winnstr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
-   290 | #define String_val(x) ((const char *) Bp_val(x))
- /home/opam/.opam/default/lib/ocaml/caml/memory.h:462:29: note: in definition of macro 'CAMLreturnT'
-   462 |   type caml__temp_result = (result); \
-       |                             ^~~~~~
- ml_curses.c:51:25: note: in expansion of macro 'CAMLreturn'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                         ^~~~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:79:20: note: in expansion of macro 'Val_long'
-    79 | #define Val_int(x) Val_long(x)
-       |                    ^~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:387:21: note: in expansion of macro 'Val_int'
-   387 | #define Val_bool(x) Val_int((x) != 0)
-       |                     ^~~~~~~
- ml_curses.c:51:36: note: in expansion of macro 'Val_bool'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                                    ^~~~~~~~
- functions.c:343:6: note: in expansion of macro 'r_err'
-   343 | BEG4 r_err(mvwinnstr(a_window(aa),a_int(ab),a_int(ac),
-       |      ^~~~~
- ml_curses.c:88:25: note: in expansion of macro 'String_val'
-    88 | #define a_string(a)     String_val(a)
-       |                         ^~~~~~~~~~
- functions.c:344:3: note: in expansion of macro 'a_string'
-   344 |   a_string(ad),string_length(ad))); END
-       |   ^~~~~~~~
- /usr/include/curses.h:859:47: note: expected 'char *' but argument is of type 'const char *'
-   859 | extern NCURSES_EXPORT(int) winnstr (WINDOW *, char *, int);             /* implemented */
-       |                                               ^~~~~~
- functions.c: In function 'mlcurses_innstr':
- functions.c:346:31: warning: passing argument 2 of 'winnstr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
-   346 | BEG3 r_err(innstr(a_string(aa)+a_int(ab),a_int(ac))); END
-       |                               ^
- /home/opam/.opam/default/lib/ocaml/caml/memory.h:462:29: note: in definition of macro 'CAMLreturnT'
-   462 |   type caml__temp_result = (result); \
-       |                             ^~~~~~
- ml_curses.c:51:25: note: in expansion of macro 'CAMLreturn'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                         ^~~~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:79:20: note: in expansion of macro 'Val_long'
-    79 | #define Val_int(x) Val_long(x)
-       |                    ^~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:387:21: note: in expansion of macro 'Val_int'
-   387 | #define Val_bool(x) Val_int((x) != 0)
-       |                     ^~~~~~~
- ml_curses.c:51:36: note: in expansion of macro 'Val_bool'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                                    ^~~~~~~~
- functions.c:346:6: note: in expansion of macro 'r_err'
-   346 | BEG3 r_err(innstr(a_string(aa)+a_int(ab),a_int(ac))); END
-       |      ^~~~~
- /usr/include/curses.h:859:47: note: expected 'char *' but argument is of type 'const char *'
-   859 | extern NCURSES_EXPORT(int) winnstr (WINDOW *, char *, int);             /* implemented */
-       |                                               ^~~~~~
- functions.c: In function 'mlcurses_winnstr':
- functions.c:348:45: warning: passing argument 2 of 'winnstr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
-   348 | BEG4 r_err(winnstr(a_window(aa),a_string(ab)+a_int(ac),a_int(ad))); END
- /home/opam/.opam/default/lib/ocaml/caml/memory.h:462:29: note: in definition of macro 'CAMLreturnT'
-   462 |   type caml__temp_result = (result); \
-       |                             ^~~~~~
- ml_curses.c:51:25: note: in expansion of macro 'CAMLreturn'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                         ^~~~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:79:20: note: in expansion of macro 'Val_long'
-    79 | #define Val_int(x) Val_long(x)
-       |                    ^~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:387:21: note: in expansion of macro 'Val_int'
-   387 | #define Val_bool(x) Val_int((x) != 0)
-       |                     ^~~~~~~
- ml_curses.c:51:36: note: in expansion of macro 'Val_bool'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                                    ^~~~~~~~
- functions.c:348:6: note: in expansion of macro 'r_err'
-   348 | BEG4 r_err(winnstr(a_window(aa),a_string(ab)+a_int(ac),a_int(ad))); END
-       |      ^~~~~
- /usr/include/curses.h:859:47: note: expected 'char *' but argument is of type 'const char *'
-   859 | extern NCURSES_EXPORT(int) winnstr (WINDOW *, char *, int);             /* implemented */
-       |                                               ^~~~~~
- functions.c: In function 'mlcurses_mvinnstr':
- functions.c:350:53: warning: passing argument 2 of 'winnstr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
-   350 | BEG5 r_err(mvinnstr(a_int(aa),a_int(ab),a_string(ac)+a_int(ad),a_int(ae))); END
-       |                                                     ^
- /home/opam/.opam/default/lib/ocaml/caml/memory.h:462:29: note: in definition of macro 'CAMLreturnT'
-   462 |   type caml__temp_result = (result); \
-       |                             ^~~~~~
- ml_curses.c:51:25: note: in expansion of macro 'CAMLreturn'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                         ^~~~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:79:20: note: in expansion of macro 'Val_long'
-    79 | #define Val_int(x) Val_long(x)
-       |                    ^~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:387:21: note: in expansion of macro 'Val_int'
-   387 | #define Val_bool(x) Val_int((x) != 0)
-       |                     ^~~~~~~
- ml_curses.c:51:36: note: in expansion of macro 'Val_bool'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                                    ^~~~~~~~
- functions.c:350:6: note: in expansion of macro 'r_err'
-   350 | BEG5 r_err(mvinnstr(a_int(aa),a_int(ab),a_string(ac)+a_int(ad),a_int(ae))); END
-       |      ^~~~~
- /usr/include/curses.h:859:47: note: expected 'char *' but argument is of type 'const char *'
-   859 | extern NCURSES_EXPORT(int) winnstr (WINDOW *, char *, int);             /* implemented */
-       |                                               ^~~~~~
- functions.c: In function 'mlcurses_mvwinnstr_native':
- functions.c:353:15: warning: passing argument 2 of 'winnstr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
-   353 |   a_string(ad)+a_int(ae),a_int(af))); END
-       |               ^
- /home/opam/.opam/default/lib/ocaml/caml/memory.h:462:29: note: in definition of macro 'CAMLreturnT'
-   462 |   type caml__temp_result = (result); \
-       |                             ^~~~~~
- ml_curses.c:51:25: note: in expansion of macro 'CAMLreturn'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                         ^~~~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:79:20: note: in expansion of macro 'Val_long'
-    79 | #define Val_int(x) Val_long(x)
-       |                    ^~~~~~~~
- /home/opam/.opam/default/lib/ocaml/caml/mlvalues.h:387:21: note: in expansion of macro 'Val_int'
-   387 | #define Val_bool(x) Val_int((x) != 0)
-       |                     ^~~~~~~
- ml_curses.c:51:36: note: in expansion of macro 'Val_bool'
-    51 | #define r_err(f)        CAMLreturn(Val_bool((f)!=ERR))
-       |                                    ^~~~~~~~
- functions.c:352:6: note: in expansion of macro 'r_err'
-   352 | BEG6 r_err(mvwinnstr(a_window(aa),a_int(ab),a_int(ac),
-       |      ^~~~~
- /usr/include/curses.h:859:47: note: expected 'char *' but argument is of type 'const char *'
-   859 | extern NCURSES_EXPORT(int) winnstr (WINDOW *, char *, int);             /* implemented */
-       |                                               ^~~~~~
- functions.c: In function 'mlcurses_getsyx':
- functions.c:387:13: warning: "alloc_tuple" is deprecated: use "caml_alloc_tuple" instead
-   387 | BEG0 int x,y; getsyx(y,x); r_int_int(y,x); END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                               
- functions.c: In function 'mlcurses_get_ripoff':
- functions.c:395:13: warning: "failwith" is deprecated: use "caml_failwith" instead
-   395 | BEG0 if(ripoff_niv==0) failwith("get_ripoff"); ripoff_niv--;
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           
- functions.c:396:13: warning: "alloc_tuple" is deprecated: use "caml_alloc_tuple" instead
-   396 |   r_window_int(ripoff_w[ripoff_niv],ripoff_l[ripoff_niv]); END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~               
- functions.c: In function 'mlcurses_mousemask':
- functions.c:404:13: warning: "alloc_tuple" is deprecated: use "caml_alloc_tuple" instead
-   404 | BEG1 mmask_t r=1234,n=Int_val(aa); n=mousemask(n,&r); r_int_int(n,r); END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~    
- functions.c: In function 'mlcurses_slk_label':
- functions.c:484:13: warning: "failwith" is deprecated: use "caml_failwith" instead
-   484 | ML1(slk_label,string,int)
-       |             ^~~~~~~~~~~~~                                              
- functions.c:484:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
-   484 | ML1(slk_label,string,int)
-       |             ^~~~~~~~~~~~~                                                    
- functions.c: In function 'mlcurses_longname':
- functions.c:499:13: warning: "failwith" is deprecated: use "caml_failwith" instead
-   499 | ML0(longname,string)
-       |             ^~~~~~~~                                                   
- functions.c:499:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
-   499 | ML0(longname,string)
-       |             ^~~~~~~~                                                         
- functions.c: In function 'mlcurses_termname':
- functions.c:501:13: warning: "failwith" is deprecated: use "caml_failwith" instead
-   501 | ML0(termname,string)
-       |             ^~~~~~~~                                                   
- functions.c:501:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
-   501 | ML0(termname,string)
-       |             ^~~~~~~~                                                         
- functions.c: In function 'mlcurses_tgetstr':
- functions.c:510:13: warning: "failwith" is deprecated: use "caml_failwith" instead
-   510 | BEG1 r_string(tgetstr(String_val(aa),NULL)); END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                       
- functions.c:510:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
-   510 | BEG1 r_string(tgetstr(String_val(aa),NULL)); END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                             
- functions.c: In function 'mlcurses_tgoto':
- functions.c:511:13: warning: "failwith" is deprecated: use "caml_failwith" instead
-   511 | ML3(tgoto,string,string,int,int)
-       |             ^~~~~~~~~~~~~~~~~~~~                                       
- functions.c:511:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
-   511 | ML3(tgoto,string,string,int,int)
-       |             ^~~~~~~~~~~~~~~~~~~~                                             
- functions.c: In function 'mlcurses_tigetstr':
- functions.c:532:13: warning: "failwith" is deprecated: use "caml_failwith" instead
-   532 |   if((s==NULL)||(s==(char * )-1)) failwith("tigetstr");
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                
- functions.c:533:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
-   533 |   CAMLreturn(copy_string(s)); END
-       |             ^~~~~~~~~~~~~~~~~~~~~                                            
- functions.c: In function 'mlcurses_tparm':
- functions.c:556:13: warning: "failwith" is deprecated: use "caml_failwith" instead
-   556 |     t[5],t[6],t[7],t[8],t[9])); END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~                                    
- functions.c:556:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
-   556 |     t[5],t[6],t[7],t[8],t[9])); END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~                                          
- functions.c: In function 'mlcurses_bool_terminfo_variable':
- functions.c:577:13: warning: "alloc_tuple" is deprecated: use "caml_alloc_tuple" instead
-   577 | ML1d(bool_terminfo_variable,string*string*string,int) BEG1 arrayret(bool) END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- functions.c:577:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
- functions.c:577:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
- functions.c:577:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
- functions.c:577:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
- functions.c: In function 'mlcurses_num_terminfo_variable':
- functions.c:578:13: warning: "alloc_tuple" is deprecated: use "caml_alloc_tuple" instead
-   578 | ML1d(num_terminfo_variable,string*string*string,int) BEG1 arrayret(num) END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
- functions.c:578:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
- functions.c:578:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
- functions.c:578:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
- functions.c:578:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
- functions.c: In function 'mlcurses_str_terminfo_variable':
- functions.c:579:13: warning: "alloc_tuple" is deprecated: use "caml_alloc_tuple" instead
-   579 | ML1d(str_terminfo_variable,string*string*string,int) BEG1 arrayret(str) END
-       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
- functions.c:579:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
- functions.c:579:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
- functions.c:579:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
- functions.c:579:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
- functions.c: In function 'mlcurses_unctrl':
- functions.c:597:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
-   597 | ML1(unctrl,string,chtype)
-       |     ^~~~~~
- ml_curses.c:77:15: note: in definition of macro 'r_string'
-    77 |   { char *ret=f; \
-       |               ^
- functions.c:597:1: note: in expansion of macro 'ML1'
-   597 | ML1(unctrl,string,chtype)
-       | ^~~
- functions.c:597:13: warning: "failwith" is deprecated: use "caml_failwith" instead
-   597 | ML1(unctrl,string,chtype)
-       |             ^~~~~~~~~~~~~                                              
- functions.c:597:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
-   597 | ML1(unctrl,string,chtype)
-       |             ^~~~~~~~~~~~~                                                    
- functions.c: In function 'mlcurses_keyname':
- functions.c:598:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
-   598 | ML1(keyname,string,int)
-       |     ^~~~~~~
- ml_curses.c:77:15: note: in definition of macro 'r_string'
-    77 |   { char *ret=f; \
-       |               ^
- functions.c:598:1: note: in expansion of macro 'ML1'
-   598 | ML1(keyname,string,int)
-       | ^~~
- functions.c:598:13: warning: "failwith" is deprecated: use "caml_failwith" instead
-   598 | ML1(keyname,string,int)
-       |             ^~~~~~~~~~~                                                
- functions.c:598:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
-   598 | ML1(keyname,string,int)
-       |             ^~~~~~~~~~~                                                      
- functions.c: In function 'mlcurses_get_acs_codes':
- functions.c:629:13: warning: "alloc_tuple" is deprecated: use "caml_alloc_tuple" instead
-   629 |   tr=alloc_tuple(32);
-       |             ^~~~~~~~~                                                        
- functions.c: In function 'mlcurses_get_size':
- functions.c:658:13: warning: "alloc_tuple" is deprecated: use "caml_alloc_tuple" instead
-   658 |   r_int_int(ws.ws_row,ws.ws_col);
-       |             ^~~~~~~~~~~~~~~~~~~~~                                            
- functions.c: In function 'mlcurses_get_size_fd':
- functions.c:672:13: warning: "alloc_tuple" is deprecated: use "caml_alloc_tuple" instead
-   672 |   r_int_int(ws.ws_row,ws.ws_col);
-       |             ^~~~~~~~~~~~~~~~~~~~~                                            
- ml_curses.c: In function 'mlcurses_getch':
- ml_curses.c:226:13: warning: "enter_blocking_section" is deprecated: use "caml_enter_blocking_section" instead
-   226 |    enter_blocking_section();
-       |             ^~~~~~~~~~~~~~~~                                                                       
- ml_curses.c:228:13: warning: "leave_blocking_section" is deprecated: use "caml_leave_blocking_section" instead
-   228 |    leave_blocking_section();
-       |             ^~~~~~~~~~~~~~~~                                                                       
- ml_curses.c: In function 'mlcurses_wgetch':
- ml_curses.c:243:13: warning: "enter_blocking_section" is deprecated: use "caml_enter_blocking_section" instead
-   243 |    enter_blocking_section();
-       |             ^~~~~~~~~~~~~~~~                                                                       
- ml_curses.c:245:13: warning: "leave_blocking_section" is deprecated: use "caml_leave_blocking_section" instead
-   245 |    leave_blocking_section();
-       |             ^~~~~~~~~~~~~~~~                                                                       
- ar rcs libcurses_stubs.a  ml_curses.o
- ocamlc -c -g keys.ml
- ocamlc -c -g curses.mli
- ocamlc -c -pp "gcc -x c -E " -g curses.ml
- ocamlmklib         \
- 			-o curses_stubs  ml_curses.o -lncursesw  \
- 			
- ocamlc -a -dllib dllcurses_stubs.so -custom     -g        -cclib -lcurses_stubs -cclib -lncursesw   -o curses.cma keys.cmo curses.cmo
- make[1]: Leaving directory '/home/opam/.opam/default/.opam-switch/build/curses.1.0.8'
- sed \
-   -e 's/@PACKAGE@/curses/' \
-   -e 's/@VERSION@/1.0.7/' \
-   -e 's/@CURSES@/ncurses/' \
-   < META.in > META
- ranlib *.a
[curses: make opt]
+ /usr/bin/make "OCAMLMAKEFILE=OCamlMakefile" "opt" (CWD=/home/opam/.opam/default/.opam-switch/build/curses.1.0.8)
- make[1]: Entering directory '/home/opam/.opam/default/.opam-switch/build/curses.1.0.8'
- ocamldep -native curses.mli > ._ncdi/curses.di
- make[1]: 'libcurses_stubs.a' is up to date.
- ocamlopt -c -g keys.ml
- ocamlopt -c -pp "gcc -x c -E " -g curses.ml
- ocamlopt -a      -g       -cclib -lcurses_stubs -cclib -lncursesw   -o curses.cmxa keys.cmx curses.cmx
- make[1]: Leaving directory '/home/opam/.opam/default/.opam-switch/build/curses.1.0.8'
- ranlib *.a
-> compiled  curses.1.0.8
[curses: make install]
+ /usr/bin/make "OCAMLMAKEFILE=OCamlMakefile" "install" (CWD=/home/opam/.opam/default/.opam-switch/build/curses.1.0.8)
- make[1]: Entering directory '/home/opam/.opam/default/.opam-switch/build/curses.1.0.8'
- make[1]: 'libcurses_stubs.a' is up to date.
- ocamlc -a -dllib dllcurses_stubs.so -custom     -g        -cclib -lcurses_stubs -cclib -lncursesw   -o curses.cma keys.cmo curses.cmo
- make[1]: Leaving directory '/home/opam/.opam/default/.opam-switch/build/curses.1.0.8'
- ranlib *.a
- 
- Installing library with ocamlfind
- ocamlfind install  curses META curses.mli curses.cmi keys.cmi curses.cma curses.cmxa curses.a libcurses_stubs.a dllcurses_stubs.so curses.cmx keys.cmx
- Installed /home/opam/.opam/default/lib/curses/keys.cmx
- Installed /home/opam/.opam/default/lib/curses/curses.cmx
- Installed /home/opam/.opam/default/lib/curses/libcurses_stubs.a
- Installed /home/opam/.opam/default/lib/curses/curses.a
- Installed /home/opam/.opam/default/lib/curses/curses.cmxa
- Installed /home/opam/.opam/default/lib/curses/curses.cma
- Installed /home/opam/.opam/default/lib/curses/keys.cmi
- Installed /home/opam/.opam/default/lib/curses/curses.cmi
- Installed /home/opam/.opam/default/lib/curses/curses.mli
- Installed /home/opam/.opam/default/lib/stublibs/dllcurses_stubs.so
- Installed /home/opam/.opam/default/lib/stublibs/dllcurses_stubs.so.owner
- ocamlfind: [WARNING] You have installed DLLs but the directory /home/opam/.opam/default/lib/stublibs is not mentioned in ld.conf
- Installed /home/opam/.opam/default/lib/curses/META
- 
- Installation successful.
-> installed curses.1.0.8
[WARNING] Opam package conf-ncurses.1 depends on the following system package that can no longer be found: ncurses-dev

=== STDERR ===

2026-06-24 11:13.10: OK: build curses.1.0.8 (runc: 7.1s, disk: 56KB)
2026-06-24 11:13.10: Job succeeded