struct RArray *pair = RARRAY (items->ptr[i]);
VALUE tmp;
- tmp = rb_funcall (pair->ptr[0], id_casecmp, 1, key);
+ tmp = rb_funcall2 (pair->ptr[0], id_casecmp, 1, &key);
if (tmp == INT2FIX (0)) {
ret = pair->ptr[1];
pos = i;
struct RArray *pair = RARRAY (items->ptr[i]);
VALUE tmp;
- tmp = rb_funcall (pair->ptr[0], id_casecmp, 1, key);
+ tmp = rb_funcall2 (pair->ptr[0], id_casecmp, 1, &key);
if (tmp == INT2FIX (0))
return pair->ptr[1];
}
struct RArray *pair = RARRAY (items->ptr[i]);
VALUE tmp;
- tmp = rb_funcall (pair->ptr[0], id_casecmp, 1, key);
+ tmp = rb_funcall2 (pair->ptr[0], id_casecmp, 1, &key);
if (tmp == INT2FIX (0)) {
- rb_funcall (pair->ptr[1], id_replace, 1, value);
+ rb_funcall2 (pair->ptr[1], id_replace, 1, &value);
return pair->ptr[1];
}
}
struct RArray *pair = RARRAY (items->ptr[i]);
VALUE tmp;
- tmp = rb_funcall (pair->ptr[0], id_casecmp, 1, key);
+ tmp = rb_funcall2 (pair->ptr[0], id_casecmp, 1, &key);
if (tmp == INT2FIX (0))
return Qtrue;
}
for (j = 0; j < 2; j++) {
VALUE tmp;
- tmp = rb_funcall (aa->ptr[j], id_compare, 1, bb->ptr[j]);
+ tmp = rb_funcall2 (aa->ptr[j], id_compare, 1, &bb->ptr[j]);
if (FIX2INT (tmp) != 0)
return tmp;
}