From 07c4bb10e093f1d296c92492d7340fec090b7bf3 Mon Sep 17 00:00:00 2001 From: matz Date: Thu, 2 Nov 2006 04:44:52 +0000 Subject: [PATCH] * eval.c (rb_call0): fixed bug of zsuper with both of opt and rest. fixed: [ruby-list:42928] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11261 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 7 ++++++- eval.c | 4 ++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index aa4563512e..a12daa00e8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -42,8 +42,13 @@ Wed Nov 1 02:22:31 2006 Akinori MUSHA * ext/digest/digest.c (rb_digest_instance_equal): Allow comparing a digest instance with another of a different class. +T +Wed Nov 1 01:05:13 2006 NAKAMURA Usaku -Tue Oct 31 17:03:21 2006 Yukihiro Matsumoto + * eval.c (rb_call0): fixed bug of zsuper with both of opt and rest. + fixed: [ruby-list:42928] + +ue Oct 31 17:03:21 2006 Yukihiro Matsumoto * time.c (time_dup): duplicate the class of original time. [ruby-core:09357] diff --git a/eval.c b/eval.c index 0f462a3e23..727a9fbca4 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; }