summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTakashi Kokubun <takashikkbn@gmail.com>2020-12-19 00:27:42 -0800
committerTakashi Kokubun <takashikkbn@gmail.com>2020-12-19 00:27:44 -0800
commit52b1716c78a7ad9daa317e3eb43f744744b9f736 (patch)
tree1adac4955d206c2ac47faa6cfd1357dae1b562a8
parent8ec8f37566902c0167f736d345bb5c8cca6016d3 (diff)
Fix vm_search_invokeblock
call_ needs to be vm_invokeblock_i, and flags is also not empty.
-rw-r--r--vm_insnhelper.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/vm_insnhelper.c b/vm_insnhelper.c
index b62ab170d3..73d90e6625 100644
--- a/vm_insnhelper.c
+++ b/vm_insnhelper.c
@@ -4438,7 +4438,14 @@ vm_search_method_wrap(const struct rb_control_frame_struct *reg_cfp, struct rb_c
static const struct rb_callcache *
vm_search_invokeblock(const struct rb_control_frame_struct *reg_cfp, struct rb_call_data *cd, VALUE recv)
{
- return rb_vm_empty_cc();
+ static const struct rb_callcache cc = {
+ .flags = T_IMEMO | (imemo_callcache << FL_USHIFT) | VM_CALLCACHE_UNMARKABLE,
+ .klass = 0,
+ .cme_ = 0,
+ .call_ = vm_invokeblock_i,
+ .aux_ = {0},
+ };
+ return &cc;
}
# define mexp_search_method vm_search_method_wrap