summaryrefslogtreecommitdiff
path: root/bootstraptest
diff options
context:
space:
mode:
authorAlan Wu <XrXr@users.noreply.github.com>2023-02-24 18:42:53 -0500
committerMaxime Chevalier-Boisvert <maximechevalierb@gmail.com>2023-02-27 11:12:22 -0500
commit55a24f9b08ac2217accb720e29232d56aed2e5a4 (patch)
tree6234081c0702392137f4a6d3b5fae9c522cc3f07 /bootstraptest
parentea830ab29d856bd0bf7bd4f1edffaff6ba4816ef (diff)
downloadruby-55a24f9b08ac2217accb720e29232d56aed2e5a4.tar.gz
YJIT: Reject __send__ with splat to cfunc for now
`make test-spec` revealed this issue after applying an unrelated bug fix. A crashing case is included, though I suspect there are other scenarios where it misbehaves. Don't compile for now. Note that this is *not* an issue on the 3.2.x series; it has `send_args_splat_non_iseq` which already rejects all splats to cfuncs, including sends with splats.
Diffstat (limited to 'bootstraptest')
-rw-r--r--bootstraptest/test_yjit.rb5
1 files changed, 5 insertions, 0 deletions
diff --git a/bootstraptest/test_yjit.rb b/bootstraptest/test_yjit.rb
index f79f047928..68b738477b 100644
--- a/bootstraptest/test_yjit.rb
+++ b/bootstraptest/test_yjit.rb
@@ -3579,3 +3579,8 @@ assert_equal 'true', %q{
def a.test = :test
a.is_a?(a.singleton_class)
}
+
+# Test send with splat to a cfunc
+assert_equal 'true', %q{
+ 1.send(:==, 1, *[])
+}