mirror of
https://github.com/ruby/ruby.git
synced 2026-11-08 01:20:26 +08:00
The IFUNC fast path passes raw keyword values to rb_vm_yield_with_cfunc without packing them into a Hash. For example, an Enumerable iterator that yields [], key: i loses the keyword name when called by each_slice. Use VM dispatch for VM_CALL_KWARG, as for keyword splats, so argument setup preserves the keywords. (cherry picked from commit 54d098816777fd29e716746c2adcb3bbe4f88710)