summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--eval.c15
2 files changed, 10 insertions, 10 deletions
diff --git a/ChangeLog b/ChangeLog
index 3f13795605..09651f36c5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Tue Nov 7 18:35:18 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
+
+ * eval.c (formal_assign): need to pack rest arg information in
+ argc.
+
Tue Nov 7 18:05:01 2006 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/lib/tk/itemconfig.rb: minor bug fix.
diff --git a/eval.c b/eval.c
index 8b25fa1550..b9c0c71b56 100644
--- a/eval.c
+++ b/eval.c
@@ -5689,17 +5689,12 @@ formal_assign(VALUE recv, NODE *node, int argc, const VALUE *argv, VALUE *local_
}
else {
VALUE v;
+ int n = 1;
- if (argc > 0) {
- int n = 1;
- v = rb_ary_new4(argc,argv);
- n += npost;
- i += n*256;
- i = -i;
- }
- else {
- v = rb_ary_new2(0);
- }
+ v = rb_ary_new4(argc,argv);
+ n += npost;
+ i += n*256;
+ i = -i;
assign(recv, node->nd_rest, v, 1);
}
return i;