Skip to content

Disable gluon on GCC 14 #27771

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

Leonidas-from-XIV
Copy link
Contributor

I'm currently trying to figure out what happens here. It seems like gluon.0.0.9 and guile.1.0.0 FTBFS with a C casting error. I am not sure why this happens and on which distributions hence this PR.

It might have something to do with GCC 14 as @kit-ty-kate mentioned but that's just my current hypothesis.

File "gluon/sys/unix/dune", line 11, characters 41-57:
11 |   (names gluon_unix_io gluon_unix_kqueue gluon_unix_epoll)
                                              ^^^^^^^^^^^^^^^^
(cd _build/default/gluon/sys/unix && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -fPIC -pthread -D_FILE_OFFSET_BITS=64 -Wall -fdiagnostics-color=always -O2 -g -I /home/opam/.cache/dune/toolchains/ocaml-compiler.5.3.0-128080a60f158774bfad0f37dcf62390/target/lib/ocaml -I /home/opam/.cache/dune/toolchains/ocaml-compiler.5.3.0-128080a60f158774bfad0f37dcf62390/target/lib/ocaml/unix -I ../../../../_private/default/.pkg/libc/target/lib/libc -I ../../common -I ../../events -o gluon_unix_epoll.o -c gluon_unix_epoll.c)
gluon_unix_epoll.c: In function 'gluon_unix_epoll_ctl':
gluon_unix_epoll.c:73:20: error: assignment to 'uint64_t' {aka 'long unsigned int'} from 'value *' {aka 'long int *'} makes integer from pointer without a cast [-Wint-conversion]
   73 |     event.data.u64 = ocaml_value;
      |                    ^

File "gluon/sys/unix/dune", line 11, characters 41-57:
11 |   (names gluon_unix_io gluon_unix_kqueue gluon_unix_epoll)
                                              ^^^^^^^^^^^^^^^^
(cd _build/default/gluon/sys/unix && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -fPIC -pthread -D_FILE_OFFSET_BITS=64 -Wall -fdiagnostics-color=always -O2 -g -I /home/opam/.cache/dune/toolchains/ocaml-compiler.5.3.0-128080a60f158774bfad0f37dcf62390/target/lib/ocaml -I /home/opam/.cache/dune/toolchains/ocaml-compiler.5.3.0-128080a60f158774bfad0f37dcf62390/target/lib/ocaml/unix -I ../../../../_private/default/.pkg/libc/target/lib/libc -I ../../common -I ../../events -o gluon_unix_epoll.o -c gluon_unix_epoll.c)
gluon_unix_epoll.c: In function 'gluon_unix_epoll_ctl':
gluon_unix_epoll.c:73:20: error: assignment to 'uint64_t' {aka 'long unsigned int'} from 'value *' {aka 'long int *'} makes integer from pointer without a cast [-Wint-conversion]
   73 |     event.data.u64 = ocaml_value;
      |                    ^
@Leonidas-from-XIV
Copy link
Contributor Author

Leonidas-from-XIV commented Apr 17, 2025

Upstream bug report: riot-ml/gluon#4

Upstream bug fix: riot-ml/gluon#2

So alternatively I can package the diff to fix compilation, depending what opam repo maintainers prefer.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants