cargo build failed on gcc 13
Message:
Caused by:
process didn't exit successfully: `/home/xuanwo/Code/apache/incubator-opendal/target/debug/build/ocaml-boxroot-sys-3082bb6216a3a01c/build-script-build` (exit status: 1)
--- stdout
cargo:rerun-if-changed=vendor/boxroot/boxroot.c
cargo:rerun-if-changed=vendor/boxroot/boxroot.h
cargo:rerun-if-env-changed=OCAMLOPT
cargo:rerun-if-env-changed=OCAML_WHERE_PATH
TARGET = Some("x86_64-unknown-linux-gnu")
OPT_LEVEL = Some("0")
HOST = Some("x86_64-unknown-linux-gnu")
cargo:rerun-if-env-changed=CC_x86_64-unknown-linux-gnu
CC_x86_64-unknown-linux-gnu = None
cargo:rerun-if-env-changed=CC_x86_64_unknown_linux_gnu
CC_x86_64_unknown_linux_gnu = None
cargo:rerun-if-env-changed=HOST_CC
HOST_CC = None
cargo:rerun-if-env-changed=CC
CC = None
cargo:rerun-if-env-changed=CFLAGS_x86_64-unknown-linux-gnu
CFLAGS_x86_64-unknown-linux-gnu = None
cargo:rerun-if-env-changed=CFLAGS_x86_64_unknown_linux_gnu
CFLAGS_x86_64_unknown_linux_gnu = None
cargo:rerun-if-env-changed=HOST_CFLAGS
HOST_CFLAGS = None
cargo:rerun-if-env-changed=CFLAGS
CFLAGS = None
cargo:rerun-if-env-changed=CRATE_CC_NO_DEFAULTS
CRATE_CC_NO_DEFAULTS = None
DEBUG = Some("true")
CARGO_CFG_TARGET_FEATURE = Some("fxsr,sse,sse2")
running: "cc" "-O0" "-ffunction-sections" "-fdata-sections" "-fPIC" "-gdwarf-4" "-fno-omit-frame-pointer" "-m64" "-I" "/usr/lib/ocaml" "-I" "vendor/boxroot/" "-Wall" "-Wextra" "-o" "/home/xuanwo/Code/apache/incubator-opendal/target/debug/build/ocaml-boxroot-sys-0cb0f83fda934b69/out/vendor/boxroot/boxroot.o" "-c" "vendor/boxroot/boxroot.c"
cargo:warning=vendor/boxroot/boxroot.c: In function ‘pool_remove’:
cargo:warning=vendor/boxroot/boxroot.c:360:31: warning: unused variable ‘cl’ [-Wunused-variable]
cargo:warning= 360 | FOREACH_GLOBAL_RING(global, cl, {
cargo:warning= | ^~
cargo:warning=vendor/boxroot/boxroot.c:164:13: note: in definition of macro ‘FOREACH_GLOBAL_RING’
cargo:warning= 164 | class cl = global_ring_classes[b__i - b__st]; \
cargo:warning= | ^~
cargo:warning=vendor/boxroot/boxroot.c: In function ‘free_all_chunks’:
cargo:warning=vendor/boxroot/boxroot.c:375:31: warning: unused variable ‘cl’ [-Wunused-variable]
cargo:warning= 375 | FOREACH_GLOBAL_RING(global, cl, { *global = NULL; });
cargo:warning= | ^~
cargo:warning=vendor/boxroot/boxroot.c:164:13: note: in definition of macro ‘FOREACH_GLOBAL_RING’
cargo:warning= 164 | class cl = global_ring_classes[b__i - b__st]; \
cargo:warning= | ^~
cargo:warning=vendor/boxroot/boxroot.c: In function ‘promotion_occupancy’:
cargo:warning=vendor/boxroot/boxroot.c:521:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘long unsigned int’ [-Wsign-compare]
cargo:warning= 521 | if (threshold <= LOW_COUNT_THRESHOLD) return LOW;
cargo:warning= | ^~
cargo:warning=vendor/boxroot/boxroot.c:522:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘long unsigned int’ [-Wsign-compare]
cargo:warning= 522 | if (threshold <= HIGH_COUNT_THRESHOLD) return HIGH;
cargo:warning= | ^~
cargo:warning=vendor/boxroot/boxroot.c: In function ‘pool_reclassify’:
cargo:warning=vendor/boxroot/boxroot.c:544:3: warning: enumeration value ‘NO_CHANGE’ not handled in switch [-Wswitch]
cargo:warning= 544 | switch (occ) {
cargo:warning= | ^~~~~~
cargo:warning=vendor/boxroot/boxroot.c: In function ‘scan_pool’:
cargo:warning=vendor/boxroot/boxroot.c:821:14: warning: passing argument 1 of ‘action’ makes pointer from integer without a cast [-Wint-conversion]
cargo:warning= 821 | action(v, (value *)current);
cargo:warning= | ^
cargo:warning= | |
cargo:warning= | value {aka long int}
cargo:warning=vendor/boxroot/boxroot.c:821:14: note: expected ‘void *’ but argument is of type ‘value’ {aka ‘long int’}
cargo:warning=vendor/boxroot/boxroot.c:821:17: warning: passing argument 2 of ‘action’ makes integer from pointer without a cast [-Wint-conversion]
cargo:warning= 821 | action(v, (value *)current);
cargo:warning= | ^~~~~~~~~~~~~~~~
cargo:warning= | |
cargo:warning= | value * {aka long int *}
cargo:warning=vendor/boxroot/boxroot.c:821:17: note: expected ‘value’ {aka ‘long int’} but argument is of type ‘value *’ {aka ‘long int *’}
cargo:warning=vendor/boxroot/boxroot.c:821:7: error: too few arguments to function ‘action’
cargo:warning= 821 | action(v, (value *)current);
cargo:warning= | ^~~~~~
cargo:warning=vendor/boxroot/boxroot.c: In function ‘boxroot_setup’:
cargo:warning=vendor/boxroot/boxroot.c:1043:31: warning: unused variable ‘cl’ [-Wunused-variable]
cargo:warning= 1043 | FOREACH_GLOBAL_RING(global, cl, { *global = NULL; });
cargo:warning= | ^~
cargo:warning=vendor/boxroot/boxroot.c:164:13: note: in definition of macro ‘FOREACH_GLOBAL_RING’
cargo:warning= 164 | class cl = global_ring_classes[b__i - b__st]; \
cargo:warning= | ^~
cargo:warning=vendor/boxroot/boxroot.c:1045:24: warning: assignment to ‘void (*)(void (*)(void *, value, volatile value *))’ {aka ‘void (*)(void (*)(void *, long int, volatile long int *))’} from incompatible pointer type ‘scan_roots_hook’ {aka ‘void (*)(void (*)(void *, long int, volatile long int *), scanning_action_flags, void *, caml_domain_state *)’} [-Wincompatible-pointer-types]
cargo:warning= 1045 | prev_scan_roots_hook = caml_scan_roots_hook;
cargo:warning= | ^
cargo:warning=vendor/boxroot/boxroot.c:1049:24: warning: assignment to ‘scan_roots_hook’ {aka ‘void (*)(void (*)(void *, long int, volatile long int *), scanning_action_flags, void *, caml_domain_state *)’} from incompatible pointer type ‘void (*)(void (*)(void *, value, volatile value *))’ {aka ‘void (*)(void (*)(void *, long int, volatile long int *))’} [-Wincompatible-pointer-types]
cargo:warning= 1049 | caml_scan_roots_hook = scanning_callback;
cargo:warning= | ^
cargo:warning=vendor/boxroot/boxroot.c: In function ‘boxroot_teardown’:
cargo:warning=vendor/boxroot/boxroot.c:1061:24: warning: assignment to ‘scan_roots_hook’ {aka ‘void (*)(void (*)(void *, long int, volatile long int *), scanning_action_flags, void *, caml_domain_state *)’} from incompatible pointer type ‘void (*)(void (*)(void *, value, volatile value *))’ {aka ‘void (*)(void (*)(void *, long int, volatile long int *))’} [-Wincompatible-pointer-types]
cargo:warning= 1061 | caml_scan_roots_hook = prev_scan_roots_hook;
cargo:warning= | ^
exit status: 1
--- stderr
error occurred: Command "cc" "-O0" "-ffunction-sections" "-fdata-sections" "-fPIC" "-gdwarf-4" "-fno-omit-frame-pointer" "-m64" "-I" "/usr/lib/ocaml" "-I" "vendor/boxroot/" "-Wall" "-Wextra" "-o" "/home/xuanwo/Code/apache/incubator-opendal/target/debug/build/ocaml-boxroot-sys-0cb0f83fda934b69/out/vendor/boxroot/boxroot.o" "-c" "vendor/boxroot/boxroot.c" with args "cc" did not execute successfully (status code exit status: 1).
warning: build failed, waiting for other jobs to finish...
cargo cca 13.80s user 1.43s system 649% cpu 2.343 total
Gcc version:
:( cc --version
cc (GCC) 13.2.1 20230730
Copyright (C) 2023 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Most of them are just warning, maybe we can omit them?