Actions
Bug #19595
closedYJIT: Crash from missing argc check in known cfuncs
Bug #19595:
YJIT: Crash from missing argc check in known cfuncs
Description
https://github.com/ruby/ruby/pull/7697
Previously we were missing a compile-time check that the known cfuncs receive the correct number of arguments.
$ ruby --yjit-call-threshold=1 -e '"foo".to_s(*[])'
ruby: YJIT has panicked. More info to follow...
thread '<unnamed>' panicked at 'assertion failed: `(left == right)`
left: `1`,
right: `2`', ./yjit/src/codegen.rs:7225:5
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
-e:1: [BUG] YJIT panicked
ruby 3.3.0dev (2023-04-08T18:54:01Z master 671cfc2000) +YJIT [x86_64-linux]
This likely needs a backport to Ruby 3.2, Ruby 3.1 does not have this bug
Actions