Issue #5527 has been reported by Thomas Sawyer.

----------------------------------------
Bug #5527: set_trace_func binding incorrect
http://redmine.ruby-lang.org/issues/5527

Author: Thomas Sawyer
Status: Open
Priority: Normal
Assignee: 
Category: 
Target version: 
ruby -v: ruby 1.9.3dev (2011-09-23 revision 33323) [x86_64-linux] 


set_trace_func seems to be broken. I traced the issue to the binding
(`b` below). 

  $ cat t.rb 
  fn = lambda do |e, f, l, m, b, k| 
    p Kernel.eval('self', b) 
  end 
  set_trace_func(fn) 
  "  a  ".strip 

  $ rbenv shell 1.8.7-p352 
  $ ruby t.rb 
  main 
  "  a  " 
  "  a  " 

  $ rbenv shell 1.9.3-rc1 
  $ ruby t.rb 
  main 
  main 
  main 
  main 

It would seem the binding has somehow become the binding-of-caller, rather than receiver.



-- 
http://redmine.ruby-lang.org