summaryrefslogtreecommitdiff
path: root/cont.c
diff options
context:
space:
mode:
authorYusuke Endoh <mame@ruby-lang.org>2019-09-04 01:32:42 +0900
committerJeremy Evans <code@jeremyevans.net>2019-09-05 17:47:12 -0700
commitce04392d8d4f8cf14c70bbf1ad3544c7db4e1671 (patch)
treed7fa8f17c71b0590e56c42f8cd5497cb0a635ef8 /cont.c
parent3754e155309ed430250781c616a6e52b54ef511d (diff)
Propagate kw_splat information
The kw_splat flag is whether the original call passes keyword or not. Some types of methods (e.g., bmethod and sym_proc) drops the information. This change tries to propagate the flag to the final callee, as far as I can.
Diffstat (limited to 'cont.c')
-rw-r--r--cont.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/cont.c b/cont.c
index ea21b322b5..4b60c7803d 100644
--- a/cont.c
+++ b/cont.c
@@ -1802,7 +1802,7 @@ rb_fiber_start(void)
th->ec->root_svar = Qfalse;
EXEC_EVENT_HOOK(th->ec, RUBY_EVENT_FIBER_SWITCH, th->self, 0, 0, 0, Qnil);
- cont->value = rb_vm_invoke_proc(th->ec, proc, argc, argv, VM_BLOCK_HANDLER_NONE);
+ cont->value = rb_vm_invoke_proc(th->ec, proc, argc, argv, 0 /* kw_splat */, VM_BLOCK_HANDLER_NONE);
}
EC_POP_TAG();