-
Notifications
You must be signed in to change notification settings - Fork 22k
Closed as not planned
Description
Steps to reproduce
Can't reproduce it using the generic bug template, only by running rails test
in a rails project. I'm probably holding it wrong by using the it
block var in a different block scope, but it shouldn't segfault.
class SegfaultTest < ActiveSupport::TestCase
test "segfaults" do
[1].each do
begin
puts it
rescue => e
puts it
end
end
end
end
Rails 7.2.2 repo with the segfaulting test case here: https://github.com/scarhand/rails-test-segfault
Expected behavior
It should raise an error that assertions are missing, but it should not segfault.
Actual behavior
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/bootsnap-1.18.6/lib/bootsnap/compile_cache/iseq.rb:46: [BUG] Segmentation fault at 0x0000000000000001
ruby 3.4.1 (2024-12-25 revision 48d4efcb85) +YJIT +PRISM [x86_64-darwin23]
-- Crash Report log information --------------------------------------------
See Crash Report log file in one of the following locations:
* ~/Library/Logs/DiagnosticReports
* /Library/Logs/DiagnosticReports
for more details.
Don't forget to include the above Crash Report log file in bug reports.
-- Control frame information -----------------------------------------------
c:0028 p:---- s:0184 e:000183 CFUNC :to_binary
c:0027 p:0008 s:0180 e:000179 METHOD /Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/bootsnap-1.18.6/lib/bootsnap/compile_cache/iseq.rb:46 [FINISH]
c:0026 p:---- s:0174 e:000173 CFUNC :fetch
c:0025 p:0024 s:0166 e:000165 METHOD /Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/bootsnap-1.18.6/lib/bootsnap/compile_cache/iseq.rb:64
c:0024 p:0023 s:0159 e:000158 METHOD /Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/bootsnap-1.18.6/lib/bootsnap/compile_cache/iseq.rb:89 [FINISH]
c:0023 p:---- s:0153 e:000152 CFUNC :require
c:0022 p:0054 s:0148 e:000147 BLOCK /Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/3.4.0/bundled_gems.rb:82
c:0021 p:0139 s:0141 e:000140 METHOD /Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/bootsnap-1.18.6/lib/bootsnap/load_path_cache/core_ext/kernel_requir [FINISH]
c:0020 p:0057 s:0132 e:000131 METHOD /Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/zeitwerk-2.7.3/lib/zeitwerk/core_ext/kernel.rb:34
c:0019 p:0014 s:0124 e:000123 BLOCK /Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/railties-7.2.2.1/lib/rails/test_unit/runner.rb:62 [FINISH]
c:0018 p:---- s:0116 e:000115 CFUNC :each
c:0017 p:0021 s:0112 e:000111 METHOD /Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/railties-7.2.2.1/lib/rails/test_unit/runner.rb:60
c:0016 p:0009 s:0105 e:000104 METHOD /Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/railties-7.2.2.1/lib/rails/test_unit/runner.rb:52
c:0015 p:0041 s:0100 e:000099 METHOD /Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/railties-7.2.2.1/lib/rails/commands/test/test_command.rb:33
c:0014 p:0054 s:0094 e:000093 METHOD /Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/thor-1.3.2/lib/thor/command.rb:28
c:0013 p:0040 s:0086 e:000085 METHOD /Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/thor-1.3.2/lib/thor/invocation.rb:127
c:0012 p:0031 s:0079 e:000078 METHOD /Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/railties-7.2.2.1/lib/rails/command/base.rb:178
c:0011 p:0213 s:0072 e:000071 METHOD /Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/thor-1.3.2/lib/thor.rb:538
c:0010 p:0048 s:0059 e:000058 METHOD /Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/railties-7.2.2.1/lib/rails/command/base.rb:73
c:0009 p:0025 s:0052 e:000051 BLOCK /Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/railties-7.2.2.1/lib/rails/command.rb:71
c:0008 p:0015 s:0049 e:000048 METHOD /Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/railties-7.2.2.1/lib/rails/command.rb:149
c:0007 p:0048 s:0043 e:000042 METHOD /Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/railties-7.2.2.1/lib/rails/command.rb:69
c:0006 p:0038 s:0032 e:000031 TOP /Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/railties-7.2.2.1/lib/rails/commands.rb:18 [FINISH]
c:0005 p:---- s:0027 e:000026 CFUNC :require
c:0004 p:0054 s:0022 e:000021 BLOCK /Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/3.4.0/bundled_gems.rb:82
c:0003 p:0139 s:0015 e:000014 METHOD /Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/bootsnap-1.18.6/lib/bootsnap/load_path_cache/core_ext/kernel_requir
c:0002 p:0024 s:0006 e:000005 EVAL bin/rails:4 [FINISH]
c:0001 p:0000 s:0003 E:0003b0 DUMMY [FINISH]
-- Ruby level backtrace information ----------------------------------------
bin/rails:4:in '<main>'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/bootsnap-1.18.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in 'require'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in replace_require'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/3.4.0/bundled_gems.rb:82:in 'require'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/railties-7.2.2.1/lib/rails/commands.rb:18:in '<main>'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/railties-7.2.2.1/lib/rails/command.rb:69:in 'invoke'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/railties-7.2.2.1/lib/rails/command.rb:149:in 'with_argv'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/railties-7.2.2.1/lib/rails/command.rb:71:in 'block in invoke'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/railties-7.2.2.1/lib/rails/command/base.rb:73:in 'perform'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/thor-1.3.2/lib/thor.rb:538:in 'dispatch'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/railties-7.2.2.1/lib/rails/command/base.rb:178:in 'invoke_command'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/thor-1.3.2/lib/thor/invocation.rb:127:in 'invoke_command'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/thor-1.3.2/lib/thor/command.rb:28:in 'run'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/railties-7.2.2.1/lib/rails/commands/test/test_command.rb:33:in 'perform'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/railties-7.2.2.1/lib/rails/test_unit/runner.rb:52:in 'run'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/railties-7.2.2.1/lib/rails/test_unit/runner.rb:60:in 'load_tests'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/railties-7.2.2.1/lib/rails/test_unit/runner.rb:60:in 'each'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/railties-7.2.2.1/lib/rails/test_unit/runner.rb:62:in 'block in load_tests'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/zeitwerk-2.7.3/lib/zeitwerk/core_ext/kernel.rb:34:in 'require'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/bootsnap-1.18.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in 'require'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in replace_require'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/3.4.0/bundled_gems.rb:82:in 'require'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/bootsnap-1.18.6/lib/bootsnap/compile_cache/iseq.rb:89:in 'load_iseq'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/bootsnap-1.18.6/lib/bootsnap/compile_cache/iseq.rb:64:in 'fetch'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/bootsnap-1.18.6/lib/bootsnap/compile_cache/iseq.rb:64:in 'fetch'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/bootsnap-1.18.6/lib/bootsnap/compile_cache/iseq.rb:46:in 'input_to_storage'
/Users/scarhand/.rbenv/versions/3.4.1/lib/ruby/gems/3.4.0/gems/bootsnap-1.18.6/lib/bootsnap/compile_cache/iseq.rb:46:in 'to_binary'
-- Threading information ---------------------------------------------------
Total ractor count: 1
Ruby thread count for this ractor: 2
-- Machine register context ------------------------------------------------
rax: 0x0000000000000000 rbx: 0x000000010f3bf3c0 rcx: 0x000000010f9a26b0
rdx: 0x0000000000000000 rdi: 0x0000000000000000 rsi: 0x000000010f3bf3c0
rbp: 0x00007ff7b0cc0d50 rsp: 0x00007ff7b0cc0d20 r8: 0xffffffffffffffe8
r9: 0x0000000000000000 r10: 0x0000000000000018 r11: 0xffffffc09c739b4d
r12: 0x00007ff7b0cc0f08 r13: 0x00007ff7b0cc0f20 r14: 0x0000000000000000
r15: 0x0000000000000000 rip: 0x000000010fb4dfc0 rfl: 0x0000000000010283
-- C level backtrace information -------------------------------------------
/Users/scarhand/.rbenv/versions/3.4.1/lib/libruby.3.4.dylib(rb_vm_bugreport+0x9bd) [0x10fbd9c9d]
/Users/scarhand/.rbenv/versions/3.4.1/lib/libruby.3.4.dylib(rb_bug_for_fatal_signal+0x148) [0x10f9f4a38]
/Users/scarhand/.rbenv/versions/3.4.1/lib/libruby.3.4.dylib(sigsegv+0x4e) [0x10fb2f8fe]
/usr/lib/system/libsystem_platform.dylib(_sigtramp+0x1d) [0x7ff8071b325d]
/Users/scarhand/.rbenv/versions/3.4.1/lib/libruby.3.4.dylib(rb_str_cmp+0x20) [0x10fb4dfc0]
/usr/lib/system/libsystem_c.dylib(_isort+0x87) [0x7ff80702749c]
[0x7ff80704c8b3]
/Users/scarhand/.rbenv/versions/3.4.1/lib/libruby.3.4.dylib(_ruby_qsort+0x2e) [0x10fb97bee]
/Users/scarhand/.rbenv/versions/3.4.1/lib/libruby.3.4.dylib(_ibf_dump_outer_variables+0xfe) [0x10f9a242e]
/Users/scarhand/.rbenv/versions/3.4.1/lib/libruby.3.4.dylib(_ibf_dump_iseq_list_i+0xe0b) [0x10f9a186b]
/Users/scarhand/.rbenv/versions/3.4.1/lib/libruby.3.4.dylib(_st_general_foreach+0xca) [0x10fb38f3a]
/Users/scarhand/.rbenv/versions/3.4.1/lib/libruby.3.4.dylib(_rb_st_foreach+0x33) [0x10fb39653]
/Users/scarhand/.rbenv/versions/3.4.1/lib/libruby.3.4.dylib(_ibf_dump_iseq_list+0x4f) [0x10f97078f]
/Users/scarhand/.rbenv/versions/3.4.1/lib/libruby.3.4.dylib(_rb_iseq_ibf_dump+0x17e) [0x10f97050e]
/Users/scarhand/.rbenv/versions/3.4.1/lib/libruby.3.4.dylib(_vm_call_cfunc_with_frame_+0x134) [0x10fbcaea4]
/Users/scarhand/.rbenv/versions/3.4.1/lib/libruby.3.4.dylib(_vm_exec_core+0x2f58) [0x10fbacaa8]
/Users/scarhand/.rbenv/versions/3.4.1/lib/libruby.3.4.dylib(_rb_vm_exec+0x1ac) [0x10fba86bc]
/Users/scarhand/.rbenv/versions/3.4.1/lib/libruby.3.4.dylib(_rb_funcallv_scope+0x2a4) [0x10fbb89b4]
/Users/scarhand/.rbenv/versions/3.4.1/lib/libruby.3.4.dylib(_rb_funcall+0x2df) [0x10fbb908f]
/Users/scarhand/.rbenv/versions/3.4.1/lib/libruby.3.4.dylib(_rb_protect+0xcb) [0x10fa00e0b]
[0x10f3a24c1]
System configuration
Rails version: 7.2.2
Ruby version: 3.4.1
Metadata
Metadata
Assignees
Labels
No labels