Project

General

Profile

Bug #164

set_trace_func no longer reports 'line', 'call' and 'return' events

Added by pragdave (Dave Thomas) about 12 years ago. Updated about 9 years ago.

Status:
Closed
Priority:
Normal
Target version:
-
ruby -v:
Backport:
[ruby-dev:35118]

Description

=begin
Given the following code:

class Test
def test
a = 1
b = 2
end
end

set_trace_func proc {|event, file, line, id, binding, classname|
printf "%8s %s:%-2d %10s %8s\n", event, file, line, id, classname
}
t = Test.new
t.test

Run under 1.9:

dave[RUBY3/Book 22:09:47*] ruby -v t.rb      
ruby 1.9.0 (2008-06-16 revision 15427) [i686-darwin9.3.0]
c-return t.rb:10 set_trace_func   Kernel
  c-call t.rb:11        new    Class
  c-call t.rb:11 initialize BasicObject
c-return t.rb:11 initialize BasicObject
c-return t.rb:11        new    Class

But, under 1.8:

dave[RUBY3/Book 22:11:17*] /usr/bin/ruby -v t.rb
ruby 1.8.6 (2007-09-24 patchlevel 111) [universal-darwin9.0]
    line t.rb:11               false
  c-call t.rb:11        new    Class
  c-call t.rb:11 initialize   Object
c-return t.rb:11 initialize   Object
c-return t.rb:11        new    Class
    line t.rb:12               false
    call t.rb:2        test     Test
    line t.rb:3        test     Test
    line t.rb:4        test     Test
  return t.rb:3        test     Test

If this is deliberate, I'll update the documentation in the book.

Dave
=end

#1

Updated by ko1 (Koichi Sasada) almost 12 years ago

  • Assignee set to ko1 (Koichi Sasada)

=begin

=end

#2

Updated by ko1 (Koichi Sasada) almost 12 years ago

  • Status changed from Open to Closed

=begin

=end

Also available in: Atom PDF