   *
   *  Establishes _proc_ as the handler for tracing, or disables
   *  tracing if the parameter is +nil+. _proc_ takes up
-@@ -3909,6 +3938,8 @@
+@@ -3911,6 +3938,8 @@
   *  <code>line</code> (execute code on a new line), <code>raise</code>
   *  (raise an exception), and <code>return</code> (return from a Ruby
   *  method). Tracing is disabled within the context of _proc_.

===================================================================
--- vm_insnhelper.c	(revision 28647)
+++ vm_insnhelper.c	(working copy)
@@ -391,8 +391,6 @@
     const rb_method_definition_t *def = me->def;
     rb_control_frame_t *cfp;
 

     reg_cfp->sp -= num + 1;
 
     val = call_cfunc(def->body.cfunc.func, recv, (int)def->body.cfunc.argc, num, reg_cfp->sp + 1);
@@ -411,11 +407,21 @@
     if (reg_cfp != th->cfp + 1) {
 	rb_bug("cfp consistency error - send");
     }
