From: "liuzx (Liu Z.) via ruby-core" Date: 2025-07-01T16:05:43+00:00 Subject: [ruby-core:122640] [Ruby Bug#21497] building issue when using gcc15, because C23 is default Issue #21497 has been updated by liuzx (Liu Z.). 1 had been fixed in commit https://github.com/ruby/io-console/commit/dd013030dd276a7372df34cf43ada1c14d0cbc21 ---------------------------------------- Bug #21497: building issue when using gcc15, because C23 is default https://bugs.ruby-lang.org/issues/21497#change-113912 * Author: liuzx (Liu Z.) * Status: Open * ruby -v: 3.2, 3.3, 3.4 * Backport: 3.2: UNKNOWN, 3.3: UNKNOWN, 3.4: UNKNOWN ---------------------------------------- https://github.com/ruby/ruby/pull/13736 1. for ruby 3.3, 3.4: when compiling using gcc 15 with "-flto -Werror=lto-type-mismatch", ext/io/console/extconf.h will have: > #define HAVE_RB_IO_PATH 1 > #define HAVE_RB_IO_DESCRIPTOR 1 > #define HAVE_RB_IO_GET_WRITE_IO 1 > #define HAVE_RB_IO_CLOSED_P 1 > #define HAVE_RB_IO_OPEN_DESCRIPTOR 1 the build is failed with: > console.c:1417:1: error: static declaration of ���rb_io_closed_p��� follows non-static declaration > 1417 | rb_io_closed_p(VALUE io) > | ^~~~~~~~~~~~~~ > ../../.././include/ruby/io.h:385:7: note: previous declaration of ���rb_io_closed_p��� with type ���VALUE(VALUE)��� {aka ���long unsigned int(long un signed int)���} > 385 | VALUE rb_io_closed_p(VALUE io); > | ^~~~~~~~~~~~~~ see https://bugs.gentoo.org/945643#c17 for more detail analysis 2. for ruby 3.2, 3.3, 3.4: when enable socks5 support, gcc15 will report: > init.c:573:19: error: too many arguments to function ���Rconnect���; expected 0, have 3 > 573 | return (VALUE)Rconnect(arg->fd, arg->sockaddr, arg->len); > | ^~~~~~~~ ~~~~~~~ > In file included from init.c:11: > rubysocket.h:294:5: note: declared here > 294 | int Rconnect(); > | ^~~~~~~~ > sockssocket.c:33:9: error: too many arguments to function ���SOCKSinit���; expected 0, have 1 > 33 | SOCKSinit("ruby"); > | ^~~~~~~~~ ~~~~~~ > In file included from sockssocket.c:11: > rubysocket.h:293:6: note: declared here > 293 | void SOCKSinit(); > | ^~~~~~~~~ -- https://bugs.ruby-lang.org/ ______________________________________________ ruby-core mailing list -- ruby-core@ml.ruby-lang.org To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org ruby-core info -- https://ml.ruby-lang.org/mailman3/lists/ruby-core.ml.ruby-lang.org/