From a4d6f2265a98feba2d336c9d6faa7df38fe630d3 Mon Sep 17 00:00:00 2001 From: matz Date: Tue, 1 Apr 2008 21:30:36 +0000 Subject: * include/ruby/node.h: add new constants for rb_call()'s scope. * eval.c (iterate_method): use CALL_* scope constant to specify proper scope value. * eval.c (rb_each, rb_apply, rb_funcall, rb_funcall2, rb_funcall3): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15884 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- eval.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) (limited to 'eval.c') diff --git a/eval.c b/eval.c index a3488d9fd5..4f5f29b0cc 100644 --- a/eval.c +++ b/eval.c @@ -1069,7 +1069,7 @@ iterate_method(VALUE obj) arg = (struct iter_method_arg *)obj; return rb_call(CLASS_OF(arg->obj), arg->obj, arg->mid, - arg->argc, arg->argv, NOEX_PRIVATE); + arg->argc, arg->argv, CALL_FCALL); } VALUE @@ -1088,8 +1088,7 @@ rb_block_call(VALUE obj, ID mid, int argc, VALUE *argv, VALUE rb_each(VALUE obj) { - return rb_call(CLASS_OF(obj), obj, rb_intern("each"), 0, 0, - NOEX_PRIVATE); + return rb_call(CLASS_OF(obj), obj, rb_intern("each"), 0, 0, CALL_FCALL); } VALUE @@ -1458,7 +1457,7 @@ rb_apply(VALUE recv, ID mid, VALUE args) argc = RARRAY_LEN(args); /* Assigns LONG, but argc is INT */ argv = ALLOCA_N(VALUE, argc); MEMCPY(argv, RARRAY_PTR(args), VALUE, argc); - return rb_call(CLASS_OF(recv), recv, mid, argc, argv, NOEX_NOSUPER); + return rb_call(CLASS_OF(recv), recv, mid, argc, argv, CALL_FCALL); } static VALUE @@ -1538,21 +1537,19 @@ rb_funcall(VALUE recv, ID mid, int n, ...) else { argv = 0; } - return rb_call(CLASS_OF(recv), recv, mid, n, argv, - NOEX_NOSUPER | NOEX_PRIVATE); + return rb_call(CLASS_OF(recv), recv, mid, n, argv, CALL_FCALL); } VALUE rb_funcall2(VALUE recv, ID mid, int argc, const VALUE *argv) { - return rb_call(CLASS_OF(recv), recv, mid, argc, argv, - NOEX_NOSUPER | NOEX_PRIVATE); + return rb_call(CLASS_OF(recv), recv, mid, argc, argv, CALL_FCALL); } VALUE rb_funcall3(VALUE recv, ID mid, int argc, const VALUE *argv) { - return rb_call(CLASS_OF(recv), recv, mid, argc, argv, NOEX_PUBLIC); + return rb_call(CLASS_OF(recv), recv, mid, argc, argv, CALL_PUBLIC); } static VALUE -- cgit v1.2.3