rb_catch_protect 1488 internal.h VALUE rb_catch_protect(VALUE t, rb_block_call_func *func, VALUE data, int *stateptr); rb_catch_protect 4608 thread.c result = rb_catch_protect(p.list, exec_recursive_i, (VALUE)&p, &state);