summaryrefslogtreecommitdiff
path: root/vm.c
diff options
context:
space:
mode:
authorko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-06-15 03:27:33 +0000
committerko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-06-15 03:27:33 +0000
commit7567fbf080552e04df4b5d2af9d601cf1d345b11 (patch)
treeaaa825008c041b6dd7cb0ee51dd9f59cfcca8113 /vm.c
parent70df6311af85b7f53b5c730502d4b9a94fa23cc9 (diff)
* vm.c (th_yield_setup_args): |v| should work as |v,|.
ex) def m;yield 1, 2; end; m{|v| p v} #=> 1 * parse.y: apply above change for "for" statement. * test/ruby/test_assignment.rb: ditto * test/ruby/test_basicinstructions.rb: ditto. * test/ruby/test_iterator.rb: ditto. * test/ruby/test_yield.rb: ditto. * compile.c (iseq_compile_each): fix debug. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12544 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'vm.c')
-rw-r--r--vm.c11
1 files changed, 0 insertions, 11 deletions
diff --git a/vm.c b/vm.c
index 94d3034dbf..7bd77399ee 100644
--- a/vm.c
+++ b/vm.c
@@ -718,17 +718,6 @@ th_yield_setup_args(rb_thread_t *th, rb_iseq_t *iseq,
}
if (iseq->arg_rest == -1) {
- if (lambda == 0 && iseq->argc == 1) {
- if (argc > 1) {
- /* yield 1, 2, 3 for iter{|a| ...}
- *
- * ruby 1.8 warns on this timing.
- * rb_warn("multiple values for a block parameter (%d for %d)", argc, iseq->argc);
- */
- argv[0] = rb_ary_new4(argc, argv);
- th->mark_stack_len = argc = 1;
- }
- }
if (iseq->argc < argc) {
if (lambda) {