aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-02-20 06:16:04 +0000
committerko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-02-20 06:16:04 +0000
commit90a192865a9a57e8acecfdfd653386b4f335787b (patch)
treec804d96b9f60f5ee4435c10edd2a3a63c8c935b2
parentdb95cb49af50b005c26bdab8a80257f070f78fbe (diff)
downloadruby-90a192865a9a57e8acecfdfd653386b4f335787b.tar.gz
* eval.c, vm.c, yarvcore.h: move definition of rb_call_super() to
vm.c from eval.c. change th_call_super() to static function. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11797 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--eval.c6
-rw-r--r--vm.c8
-rw-r--r--yarvcore.h1
4 files changed, 12 insertions, 8 deletions
diff --git a/ChangeLog b/ChangeLog
index 2eea901b80..327587fdfd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Tue Feb 20 15:11:42 2007 Koichi Sasada <ko1@atdot.net>
+
+ * eval.c, vm.c, yarvcore.h: move definition of rb_call_super() to
+ vm.c from eval.c. change th_call_super() to static function.
+
Tue Feb 20 15:08:25 2007 Koichi Sasada <ko1@atdot.net>
* test/io/nonblock/test_flush.rb: YARV doesn't raise any errors if
diff --git a/eval.c b/eval.c
index 6328bc5820..a728a9eeba 100644
--- a/eval.c
+++ b/eval.c
@@ -1763,12 +1763,6 @@ rb_funcall3(VALUE recv, ID mid, int argc, const VALUE *argv)
return rb_call(CLASS_OF(recv), recv, mid, argc, argv, NOEX_PUBLIC);
}
-VALUE
-rb_call_super(int argc, const VALUE *argv)
-{
- return th_call_super(GET_THREAD(), argc, argv);
-}
-
static VALUE
backtrace(int lev)
{
diff --git a/vm.c b/vm.c
index 24b27a3bf9..4867e05444 100644
--- a/vm.c
+++ b/vm.c
@@ -603,7 +603,7 @@ search_super_klass(VALUE klass, VALUE recv)
return klass;
}
-VALUE
+static VALUE
th_call_super(rb_thread_t *th, int argc, const VALUE *argv)
{
VALUE recv = th->cfp->self;
@@ -642,6 +642,12 @@ th_call_super(rb_thread_t *th, int argc, const VALUE *argv)
return th_call0(th, klass, recv, id, id, argc, argv, body, nosuper);
}
+VALUE
+rb_call_super(int argc, const VALUE *argv)
+{
+ return th_call_super(GET_THREAD(), argc, argv);
+}
+
static inline VALUE
th_invoke_yield_cfunc(rb_thread_t *th, rb_block_t *block,
VALUE self, int argc, VALUE *argv)
diff --git a/yarvcore.h b/yarvcore.h
index 209b53dafe..b03e7f0fb2 100644
--- a/yarvcore.h
+++ b/yarvcore.h
@@ -601,7 +601,6 @@ void rb_disable_interrupt(void);
VALUE th_eval_body(rb_thread_t *th);
VALUE th_set_eval_stack(rb_thread_t *, VALUE iseq);
-VALUE th_call_super(rb_thread_t *th, int argc, const VALUE *argv);
VALUE th_invoke_proc(rb_thread_t *th, rb_proc_t *proc, VALUE self, int argc, VALUE *argv);
VALUE th_make_proc(rb_thread_t *th, rb_control_frame_t *cfp, rb_block_t *block);
VALUE th_make_env_object(rb_thread_t *th, rb_control_frame_t *cfp);