summaryrefslogtreecommitdiffstats
path: root/eval.c
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2006-11-02 04:44:52 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2006-11-02 04:44:52 +0000
commit34b3ebfff1b78d2cf88d15cc8481b2a3647d923e (patch)
tree6ac1a3d9389f8ca7acda2fcc0114edbc02895b7d /eval.c
parent6c58662da2839cd5f4e7d469539e2a9107e226cc (diff)
downloadruby-34b3ebfff1b78d2cf88d15cc8481b2a3647d923e.tar.gz
ruby-34b3ebfff1b78d2cf88d15cc8481b2a3647d923e.tar.xz
ruby-34b3ebfff1b78d2cf88d15cc8481b2a3647d923e.zip
* eval.c (rb_call0): fixed bug of zsuper with both of opt and rest.
fixed: [ruby-list:42928] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11261 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'eval.c')
-rw-r--r--eval.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/eval.c b/eval.c
index 0f462a3e2..727a9fbca 100644
--- a/eval.c
+++ b/eval.c
@@ -5665,6 +5665,10 @@ formal_assign(VALUE recv, NODE *node, int argc, const VALUE *argv, VALUE *local_
}
if (opt) {
rb_eval(recv, opt);
+ while (opt) {
+ ++i;
+ opt = opt->nd_next;
+ }
}
argc = ac + npost;
}