diff options
author | 卜部昌平 <[email protected]> | 2022-09-13 16:26:33 +0900 |
---|---|---|
committer | 卜部昌平 <[email protected]> | 2022-09-21 11:44:09 +0900 |
commit | 06cb0305161eaae0f006ffb3a7f341a5771f239f (patch) | |
tree | 1a13d18bc4e8cf36b271002538375f2d94938f08 /vm_insnhelper.c | |
parent | 406ebb25a017dba5b066a42a1c325e57fa644e95 (diff) |
vm_insnhelper.c: add casts
Why they have not been at the first place? Siblings have proper casts.
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/6358
Diffstat (limited to 'vm_insnhelper.c')
-rw-r--r-- | vm_insnhelper.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/vm_insnhelper.c b/vm_insnhelper.c index c68872a9bf..8a82a8db32 100644 --- a/vm_insnhelper.c +++ b/vm_insnhelper.c @@ -2700,14 +2700,16 @@ static VALUE call_cfunc_m2(VALUE recv, int argc, const VALUE *argv, VALUE (*func)(ANYARGS)) { ractor_unsafe_check(); - return (*func)(recv, rb_ary_new4(argc, argv)); + VALUE(*f)(VALUE, VALUE) = (VALUE(*)(VALUE, VALUE))func; + return (*f)(recv, rb_ary_new4(argc, argv)); } static VALUE call_cfunc_m1(VALUE recv, int argc, const VALUE *argv, VALUE (*func)(ANYARGS)) { ractor_unsafe_check(); - return (*func)(argc, argv, recv); + VALUE(*f)(int, const VALUE *, VALUE) = (VALUE(*)(int, const VALUE *, VALUE))func; + return (*f)(argc, argv, recv); } static VALUE @@ -2841,13 +2843,15 @@ call_cfunc_15(VALUE recv, int argc, const VALUE *argv, VALUE (*func)(ANYARGS)) static VALUE ractor_safe_call_cfunc_m2(VALUE recv, int argc, const VALUE *argv, VALUE (*func)(ANYARGS)) { - return (*func)(recv, rb_ary_new4(argc, argv)); + VALUE(*f)(VALUE, VALUE) = (VALUE(*)(VALUE, VALUE))func; + return (*f)(recv, rb_ary_new4(argc, argv)); } static VALUE ractor_safe_call_cfunc_m1(VALUE recv, int argc, const VALUE *argv, VALUE (*func)(ANYARGS)) { - return (*func)(argc, argv, recv); + VALUE(*f)(int, const VALUE *, VALUE) = (VALUE(*)(int, const VALUE *, VALUE))func; + return (*f)(argc, argv, recv); } static VALUE |