vm_catch_protect 1999 vm_eval.c      static VALUE vm_catch_protect(VALUE, rb_block_call_func *, VALUE, int *, rb_thread_t *);
vm_catch_protect 2006 vm_eval.c          VALUE val = vm_catch_protect(t, (rb_block_call_func *)func, data, &state, th);
vm_catch_protect 2015 vm_eval.c          return vm_catch_protect(t, func, data, stateptr, GET_THREAD());