[prev in list] [next in list] [prev in thread] [next in thread]
List: ruby-core
Subject: [ruby-core:51198] [ruby-trunk - Bug #6038] #instance_eval bug
From: "nobu (Nobuyoshi Nakada)" <nobu () ruby-lang ! org>
Date: 2012-12-30 13:46:38
Message-ID: redmine.journal-35155.20121230224638 () ruby-lang ! org
[Download RAW message or body]
Issue #6038 has been updated by nobu (Nobuyoshi Nakada).
Category set to core
Assignee changed from nobu (Nobuyoshi Nakada) to matz (Yukihiro Matsumoto)
Target version set to Next Major
----------------------------------------
Bug #6038: #instance_eval bug
https://bugs.ruby-lang.org/issues/6038#change-35155
Author: ddebernardy (Denis de Bernardy)
Status: Assigned
Priority: Normal
Assignee: matz (Yukihiro Matsumoto)
Category: core
Target version: Next Major
ruby -v: 1.9.3
instance_eval seems to change the object_id in some cases:
begin
stack = []
do_stuff = lambda do |&chain|
puts "Actual: #{chain.object_id}"
chain.call
end
chain = lambda do
if filter = stack.shift
filter.call(&chain)
end
end
puts "Expected: #{chain.object_id}"
stack << do_stuff
chain.instance_eval { @completed = false }
chain.call
end
>> RUBY_VERSION
=> "1.9.3"
>> begin
?> stack = []
>> do_stuff = lambda do |&chain|
?> puts "Actual: #{chain.object_id}"
>> chain.call
>> end
>>
?> chain = lambda do
?> if filter = stack.shift
>> filter.call(&chain)
>> end
>> end
>>
?> puts "Expected: #{chain.object_id}"
>> stack << do_stuff
>> chain.instance_eval { @completed = false }
>> chain.call
>> end
Expected: 2152379740
Actual: 2152379520
--
http://bugs.ruby-lang.org/
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic