diff options
| author | Alan Wu <XrXr@users.noreply.github.com> | 2023-07-04 11:07:18 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-07-04 15:07:18 +0000 |
| commit | 2f603bc4d750384d57513679ca9db2b4e2e3ec34 (patch) | |
| tree | 2e69f8469a052049361d8d8977c2de8db36f9ae6 /test/ruby | |
| parent | 07d5709feea0b4d4fe23e2f346383791c614f073 (diff) | |
ruby_3_2 backport for #8006 (#8008)
YJIT: Fix autosplat miscomp for blocks with optionals
When passing an array as the sole argument to `yield`, and the yieldee
takes more than 1 optional parameter, the array is expanded similar
to `*array` splat calls. This is called "autosplat" in
`setup_parameters_complex()`.
Previously, YJIT did not detect this autosplat condition. It passed the
array without expanding it, deviating from interpreter behavior.
Detect this conditon and refuse to compile it.
Diffstat (limited to 'test/ruby')
0 files changed, 0 insertions, 0 deletions
