mirror of
https://git.freebsd.org/ports.git
synced 2025-07-01 09:30:30 -04:00
Clang 16 has a new error about incompatible function types, which shows up when building net/rubygem-grpc: rb_channel.c:764:40: error: incompatible function pointer types passing 'VALUE (VALUE)' (aka 'unsigned long (unsigned long)') to parameter of type 'VALUE (*)(void *)' (aka 'unsigned long (*)(void *)') [-Wincompatible-function-pointer-types] background_thread = rb_thread_create(run_poll_channels_loop, NULL); ^~~~~~~~~~~~~~~~~~~~~~ /usr/local/include/ruby-3.1/ruby/internal/intern/thread.h:190:32: note: passing argument to parameter 'f' here VALUE rb_thread_create(VALUE (*f)(void *g), void *g); ^ Fix it by adjusting the parameters for the thread callback functions. PR: 271540 Approved by: sunpoet (maintainer) MFH: 2023Q2
22 lines
833 B
Text
22 lines
833 B
Text
--- src/ruby/ext/grpc/rb_channel.c.orig 2023-05-20 19:48:13 UTC
|
|
+++ src/ruby/ext/grpc/rb_channel.c
|
|
@@ -694,7 +694,7 @@ static void run_poll_channels_loop_unblocking_func(voi
|
|
}
|
|
|
|
// Poll channel connectivity states in background thread without the GIL.
|
|
-static VALUE run_poll_channels_loop(VALUE arg) {
|
|
+static VALUE run_poll_channels_loop(void *arg) {
|
|
(void)arg;
|
|
gpr_log(
|
|
GPR_DEBUG,
|
|
--- src/ruby/ext/grpc/rb_event_thread.c.orig 2023-05-20 19:51:52 UTC
|
|
+++ src/ruby/ext/grpc/rb_event_thread.c
|
|
@@ -114,7 +114,7 @@ static void grpc_rb_event_unblocking_func(void* arg) {
|
|
|
|
/* This is the implementation of the thread that handles auth metadata plugin
|
|
* events */
|
|
-static VALUE grpc_rb_event_thread(VALUE arg) {
|
|
+static VALUE grpc_rb_event_thread(void *arg) {
|
|
grpc_rb_event* event;
|
|
(void)arg;
|
|
grpc_ruby_init();
|