* [ruby-core:122639] [Ruby Bug#21497] building issue when using gcc15, because C23 is default
@ 2025-07-01 15:17 liuzx (Liu Z.) via ruby-core
2025-07-01 16:05 ` [ruby-core:122640] " liuzx (Liu Z.) via ruby-core
0 siblings, 1 reply; 2+ messages in thread
From: liuzx (Liu Z.) via ruby-core @ 2025-07-01 15:17 UTC (permalink / raw)
To: ruby-core; +Cc: liuzx (Liu Z.)
Issue #21497 has been reported by liuzx (Liu Z.).
----------------------------------------
Bug #21497: building issue when using gcc15, because C23 is default
https://bugs.ruby-lang.org/issues/21497
* 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/
^ permalink raw reply [flat|nested] 2+ messages in thread
* [ruby-core:122640] [Ruby Bug#21497] building issue when using gcc15, because C23 is default
2025-07-01 15:17 [ruby-core:122639] [Ruby Bug#21497] building issue when using gcc15, because C23 is default liuzx (Liu Z.) via ruby-core
@ 2025-07-01 16:05 ` liuzx (Liu Z.) via ruby-core
0 siblings, 0 replies; 2+ messages in thread
From: liuzx (Liu Z.) via ruby-core @ 2025-07-01 16:05 UTC (permalink / raw)
To: ruby-core; +Cc: liuzx (Liu Z.)
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/
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2025-07-01 16:06 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-07-01 15:17 [ruby-core:122639] [Ruby Bug#21497] building issue when using gcc15, because C23 is default liuzx (Liu Z.) via ruby-core
2025-07-01 16:05 ` [ruby-core:122640] " liuzx (Liu Z.) via ruby-core
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).