From 6f9b86616a8ad60cfed2979e2a0f8398a12e7c85 Mon Sep 17 00:00:00 2001 From: Jeremy Evans Date: Tue, 3 Sep 2019 14:54:37 -0700 Subject: Make Symbol#to_proc calls handle keyword arguments Make rb_sym_proc_call take a flag for whether a keyword argument is used, and use the new rb_funcall_with_block_kw function to pass that information. --- string.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'string.c') diff --git a/string.c b/string.c index d6ea7d6f91..05ce0ed8d6 100644 --- a/string.c +++ b/string.c @@ -10887,7 +10887,7 @@ sym_to_sym(VALUE sym) } MJIT_FUNC_EXPORTED VALUE -rb_sym_proc_call(ID mid, int argc, const VALUE *argv, VALUE passed_proc) +rb_sym_proc_call(ID mid, int argc, const VALUE *argv, int kw_splat, VALUE passed_proc) { VALUE obj; @@ -10895,7 +10895,7 @@ rb_sym_proc_call(ID mid, int argc, const VALUE *argv, VALUE passed_proc) rb_raise(rb_eArgError, "no receiver given"); } obj = argv[0]; - return rb_funcall_with_block(obj, mid, argc - 1, argv + 1, passed_proc); + return rb_funcall_with_block_kw(obj, mid, argc - 1, argv + 1, passed_proc, kw_splat); } #if 0 -- cgit v1.2.3