From 6a8d0097095d975fbd19cf62c83645b51886025b Mon Sep 17 00:00:00 2001 From: nobu Date: Sun, 26 Feb 2012 02:26:49 +0000 Subject: * compile.c (iseq_compile_each): call on special object instead of self. since stabby lambda is a syntax, so it should not be affected by the context. [ruby-core:42349][Bug #5966] * insns.def (send): no special deal for FCALL. self should be put on TOS instead. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34819 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/ruby/test_lambda.rb | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'test/ruby/test_lambda.rb') diff --git a/test/ruby/test_lambda.rb b/test/ruby/test_lambda.rb index 02bb26939d..ae12c6d609 100644 --- a/test/ruby/test_lambda.rb +++ b/test/ruby/test_lambda.rb @@ -63,4 +63,11 @@ class TestLambdaParameters < Test::Unit::TestCase def foo assert_equal(nil, ->(&b){ b }.call) end + + def test_in_basic_object + bug5966 = '[ruby-core:42349]' + called = false + BasicObject.new.instance_eval {->() {called = true}.()} + assert_equal(true, called, bug5966) + end end -- cgit v1.2.3