From: "tmm1 (Aman Gupta)" Date: 2014-01-02T20:30:39+09:00 Subject: [ruby-core:59467] [ruby-trunk - Bug #9321] rb_mod_const_missing does not generate a c-return event Issue #9321 has been updated by tmm1 (Aman Gupta). In rblineprof, I maintain a stack of CALL events. When a RETURN event comes in, CALL entries on the internal stack are popped until one matching the RETURN is found. https://github.com/tmm1/rblineprof/blob/32795afc748f2f51cf76ce20ef6a85f50b9278c6/ext/rblineprof.c#L471-L475 ---------------------------------------- Bug #9321: rb_mod_const_missing does not generate a c-return event https://bugs.ruby-lang.org/issues/9321#change-44019 Author: drkaes (Stefan Kaes) Status: Open Priority: Normal Assignee: Category: core Target version: ruby -v: ruby 2.1.0p1 (2013-12-26 revision 44431) [x86_64-darwin12.0] Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN, 2.1: UNKNOWN We have had an issue reported for ruby-prof where execution times were attributed incorrectly in the call graph. It turned out that the problem is caused by a missing c-return event for Module#const_missing. ruby-prof simulates the ruby call stack by subscribing to line, call, c-call, return and c-return events. Obviously, the missing return throws ruby-prof off the track. -- http://bugs.ruby-lang.org/