Ruby: Fix warnings in generated code about missing parameter in variadic macro
The Ruby C API function 'rb_funcall' is used in various places in generated code for invoking a Ruby method without parameters. The C function uses a variadic parameter list for the arguments passed to Ruby, therefore in these cases the list of variadic parameters is empty. As an optimization Ruby may implement the 'rb_funcall' function as a macro which however will not accept an empty list of arguments for '...' as of C99 and C++11. In order to prevent compiler warnings, this commit replaces all such occurrences with a call to 'rb_funcall2' (which in its current name 'rb_funcallv' is invoked by the 'rb_funcall' macro anyway, at least for Ruby 2.6.6).
This commit is contained in:
parent
c7cfabd0a7
commit
5a10e10399
9 changed files with 13 additions and 13 deletions
|
|
@ -207,8 +207,8 @@ namespace swig {
|
|||
(VALUEFUNC(swig_rescue_swallow)), Qnil);
|
||||
}
|
||||
if (ret == Qnil) {
|
||||
VALUE a = rb_funcall( _obj, hash_id, 0 );
|
||||
VALUE b = rb_funcall( VALUE(other), hash_id, 0 );
|
||||
VALUE a = rb_funcall2( _obj, hash_id, 0, 0 );
|
||||
VALUE b = rb_funcall2( VALUE(other), hash_id, 0, 0 );
|
||||
res = op_func(a, b);
|
||||
} else {
|
||||
res = RTEST(ret);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue