Bug #19021
closedCrash [BUG] Stack consistency error on ruby 3.2.0-dev
Description
Report a [BUG] Stack consistency error
on ruby 3.2.0-dev.
Code¶
# sample.rb
p RUBY_DESCRIPTION
# => "ruby 3.2.0dev (2022-09-24T00:41:15Z master 82ac4a2399) [x86_64-linux]"
def hoge
result = nil
result&.foo ||= "foo"
result
end
hoge
Stack trace¶
/home/mayu/path/to/sample.rb:9: [BUG] Stack consistency error (sp: 12, bp: 11)
ruby 3.2.0dev (2022-09-24T00:41:15Z master 82ac4a2399) [x86_64-linux]
-- Control frame information -----------------------------------------------
c:0003 p:0021 s:0012 e:000010 METHOD /home/mayu/path/to/sample.rb:9
c:0002 p:0012 s:0006 e:000005 EVAL /home/mayu/path/to/sample.rb:11 [FINISH]
c:0001 p:0000 s:0003 E:000190 (none) [FINISH]
-- Ruby level backtrace information ----------------------------------------
/home/mayu/path/to/sample.rb:11:in `<main>'
/home/mayu/path/to/sample.rb:9:in `hoge'
-- C level backtrace information -------------------------------------------
/home/mayu/.rbenv/versions/3.2.0-dev/bin/ruby(rb_print_backtrace+0x11) [0x55eabe783548] vm_dump.c:762
/home/mayu/.rbenv/versions/3.2.0-dev/bin/ruby(rb_vm_bugreport) vm_dump.c:1057
/home/mayu/.rbenv/versions/3.2.0-dev/bin/ruby(bug_report_end+0x0) [0x55eabe83255f] error.c:795
/home/mayu/.rbenv/versions/3.2.0-dev/bin/ruby(rb_bug_without_die) error.c:795
/home/mayu/.rbenv/versions/3.2.0-dev/bin/ruby(die+0x0) [0x55eabe586a09] error.c:803
/home/mayu/.rbenv/versions/3.2.0-dev/bin/ruby(rb_bug) error.c:805
/home/mayu/.rbenv/versions/3.2.0-dev/bin/ruby(Check_Type+0x0) [0x55eabe585033] vm_insnhelper.c:5175
/home/mayu/.rbenv/versions/3.2.0-dev/bin/ruby(vm_stack_consistency_error) (null):0
/home/mayu/.rbenv/versions/3.2.0-dev/bin/ruby(vm_throw_start+0x0) [0x55eabe58551c] insns.def:964
/home/mayu/.rbenv/versions/3.2.0-dev/bin/ruby(vm_throw) vm_insnhelper.c:1617
/home/mayu/.rbenv/versions/3.2.0-dev/bin/ruby(vm_exec_core) insns.def:994
/home/mayu/.rbenv/versions/3.2.0-dev/bin/ruby(rb_vm_exec+0x18e) [0x55eabe766b5e] vm.c:2388
/home/mayu/.rbenv/versions/3.2.0-dev/bin/ruby(rb_ec_exec_node+0xbb) [0x55eabe586ffb] eval.c:280
/home/mayu/.rbenv/versions/3.2.0-dev/bin/ruby(ruby_run_node+0x4f) [0x55eabe58c41f] eval.c:321
/home/mayu/.rbenv/versions/3.2.0-dev/bin/ruby(rb_main+0x21) [0x55eabe586d67] ./main.c:38
/home/mayu/.rbenv/versions/3.2.0-dev/bin/ruby(main) ./main.c:57
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf3) [0x7f86caeb5083] ../csu/libc-start.c:308
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main) (null):0
[0x55eabe586dbe]
-- Other runtime information -----------------------------------------------
* Loaded script: /home/mayu/path/to/sample.rb
* Loaded features:
0 enumerator.so
1 thread.rb
2 fiber.so
3 rational.so
4 complex.so
5 ruby2_keywords.rb
6 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/x86_64-linux/enc/encdb.so
7 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/x86_64-linux/enc/trans/transdb.so
8 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/x86_64-linux/rbconfig.rb
9 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/rubygems/compatibility.rb
10 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/rubygems/defaults.rb
11 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/rubygems/deprecate.rb
12 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/rubygems/errors.rb
13 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/rubygems/unknown_command_spell_checker.rb
14 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/rubygems/exceptions.rb
15 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/rubygems/basic_specification.rb
16 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/rubygems/stub_specification.rb
17 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/rubygems/platform.rb
18 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/rubygems/util/list.rb
19 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/rubygems/version.rb
20 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/rubygems/requirement.rb
21 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/rubygems/specification.rb
22 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/rubygems/util.rb
23 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/rubygems/dependency.rb
24 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/rubygems/core_ext/kernel_gem.rb
25 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/x86_64-linux/monitor.so
26 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/monitor.rb
27 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/rubygems/core_ext/kernel_require.rb
28 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/rubygems/core_ext/kernel_warn.rb
29 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/rubygems.rb
30 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/rubygems/path_support.rb
31 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/error_highlight/version.rb
32 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/error_highlight/base.rb
33 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/error_highlight/formatter.rb
34 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/error_highlight/core_ext.rb
35 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/error_highlight.rb
36 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/did_you_mean/version.rb
37 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/did_you_mean/core_ext/name_error.rb
38 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/did_you_mean/levenshtein.rb
39 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/did_you_mean/jaro_winkler.rb
40 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/did_you_mean/spell_checker.rb
41 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/did_you_mean/spell_checkers/name_error_checkers/class_name_checker.rb
42 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/did_you_mean/spell_checkers/name_error_checkers/variable_name_checker.rb
43 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/did_you_mean/spell_checkers/name_error_checkers.rb
44 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/did_you_mean/spell_checkers/method_name_checker.rb
45 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/did_you_mean/spell_checkers/key_error_checker.rb
46 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/did_you_mean/spell_checkers/null_checker.rb
47 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/did_you_mean/tree_spell_checker.rb
48 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/did_you_mean/spell_checkers/require_path_checker.rb
49 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/did_you_mean/spell_checkers/pattern_key_name_checker.rb
50 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/did_you_mean/formatter.rb
51 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/did_you_mean.rb
52 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/syntax_suggest/core_ext.rb
* Process memory map:
55eabe554000-55eabe582000 r--p 00000000 103:02 24510766 /home/mayu/.rbenv/versions/3.2.0-dev/bin/ruby
55eabe582000-55eabe83f000 r-xp 0002e000 103:02 24510766 /home/mayu/.rbenv/versions/3.2.0-dev/bin/ruby
55eabe83f000-55eabe96e000 r--p 002eb000 103:02 24510766 /home/mayu/.rbenv/versions/3.2.0-dev/bin/ruby
55eabe96f000-55eabe978000 r--p 0041a000 103:02 24510766 /home/mayu/.rbenv/versions/3.2.0-dev/bin/ruby
55eabe978000-55eabe979000 rw-p 00423000 103:02 24510766 /home/mayu/.rbenv/versions/3.2.0-dev/bin/ruby
55eabe979000-55eabe989000 rw-p 00000000 00:00 0
55eabfaae000-55eabfdae000 rw-p 00000000 00:00 0 [heap]
7f86c4a88000-7f86c4c78000 r--s 00000000 103:02 12479093 /usr/lib/x86_64-linux-gnu/libc-2.31.so
7f86c4c78000-7f86c7077000 r--s 00000000 103:02 24510766 /home/mayu/.rbenv/versions/3.2.0-dev/bin/ruby
7f86c7077000-7f86c707a000 r--p 00000000 103:02 12451916 /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
7f86c707a000-7f86c708c000 r-xp 00003000 103:02 12451916 /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
7f86c708c000-7f86c7090000 r--p 00015000 103:02 12451916 /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
7f86c7090000-7f86c7091000 r--p 00018000 103:02 12451916 /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
7f86c7091000-7f86c7092000 rw-p 00019000 103:02 12451916 /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
7f86c70b0000-7f86c71d0000 rw-p 00000000 00:00 0
7f86c71d0000-7f86c71d1000 ---p 00000000 00:00 0
7f86c71d1000-7f86c7272000 rw-p 00000000 00:00 0
7f86c7272000-7f86c7273000 ---p 00000000 00:00 0
7f86c7273000-7f86c7314000 rw-p 00000000 00:00 0
7f86c7314000-7f86c7315000 ---p 00000000 00:00 0
7f86c7315000-7f86c73b6000 rw-p 00000000 00:00 0
7f86c73b6000-7f86c73b7000 ---p 00000000 00:00 0
7f86c73b7000-7f86c7458000 rw-p 00000000 00:00 0
7f86c7458000-7f86c7459000 ---p 00000000 00:00 0
7f86c7459000-7f86c74fa000 rw-p 00000000 00:00 0
7f86c74fa000-7f86c74fb000 ---p 00000000 00:00 0
7f86c74fb000-7f86c759c000 rw-p 00000000 00:00 0
7f86c759c000-7f86c759d000 ---p 00000000 00:00 0
7f86c759d000-7f86c763e000 rw-p 00000000 00:00 0
7f86c763e000-7f86c763f000 ---p 00000000 00:00 0
7f86c763f000-7f86c76e0000 rw-p 00000000 00:00 0
7f86c76e0000-7f86c76e1000 ---p 00000000 00:00 0
7f86c76e1000-7f86c7782000 rw-p 00000000 00:00 0
7f86c7782000-7f86c7783000 ---p 00000000 00:00 0
7f86c7783000-7f86c7824000 rw-p 00000000 00:00 0
7f86c7824000-7f86c7825000 ---p 00000000 00:00 0
7f86c7825000-7f86c78c6000 rw-p 00000000 00:00 0
7f86c78c6000-7f86c78c7000 ---p 00000000 00:00 0
7f86c78c7000-7f86c7968000 rw-p 00000000 00:00 0
7f86c7968000-7f86c7969000 ---p 00000000 00:00 0
7f86c7969000-7f86c7a0a000 rw-p 00000000 00:00 0
7f86c7a0a000-7f86c7a0b000 ---p 00000000 00:00 0
7f86c7a0b000-7f86c7aac000 rw-p 00000000 00:00 0
7f86c7aac000-7f86c7aad000 ---p 00000000 00:00 0
7f86c7aad000-7f86c7b4e000 rw-p 00000000 00:00 0
7f86c7b4e000-7f86c7b4f000 ---p 00000000 00:00 0
7f86c7b4f000-7f86c7bf0000 rw-p 00000000 00:00 0
7f86c7bf0000-7f86c7bf1000 ---p 00000000 00:00 0
7f86c7bf1000-7f86c7c92000 rw-p 00000000 00:00 0
7f86c7c92000-7f86c7c93000 ---p 00000000 00:00 0
7f86c7c93000-7f86c7d34000 rw-p 00000000 00:00 0
7f86c7d34000-7f86c7d35000 ---p 00000000 00:00 0
7f86c7d35000-7f86c7dd6000 rw-p 00000000 00:00 0
7f86c7dd6000-7f86c7dd7000 ---p 00000000 00:00 0
7f86c7dd7000-7f86c7e78000 rw-p 00000000 00:00 0
7f86c7e78000-7f86c7e79000 ---p 00000000 00:00 0
7f86c7e79000-7f86c7f1a000 rw-p 00000000 00:00 0
7f86c7f1a000-7f86c7f1b000 ---p 00000000 00:00 0
7f86c7f1b000-7f86c7fbc000 rw-p 00000000 00:00 0
7f86c7fbc000-7f86c7fbd000 ---p 00000000 00:00 0
7f86c7fbd000-7f86c805e000 rw-p 00000000 00:00 0
7f86c805e000-7f86c805f000 ---p 00000000 00:00 0
7f86c805f000-7f86c8100000 rw-p 00000000 00:00 0
7f86c8100000-7f86c8101000 ---p 00000000 00:00 0
7f86c8101000-7f86c81a2000 rw-p 00000000 00:00 0
7f86c81a2000-7f86c81a3000 ---p 00000000 00:00 0
7f86c81a3000-7f86c8244000 rw-p 00000000 00:00 0
7f86c8244000-7f86c8245000 ---p 00000000 00:00 0
7f86c8245000-7f86c82e6000 rw-p 00000000 00:00 0
7f86c82e6000-7f86c82e7000 ---p 00000000 00:00 0
7f86c82e7000-7f86c8388000 rw-p 00000000 00:00 0
7f86c8388000-7f86c8389000 ---p 00000000 00:00 0
7f86c8389000-7f86c842a000 rw-p 00000000 00:00 0
7f86c842a000-7f86c842b000 ---p 00000000 00:00 0
7f86c842b000-7f86c84cc000 rw-p 00000000 00:00 0
7f86c84cc000-7f86c84cd000 ---p 00000000 00:00 0
7f86c84cd000-7f86c856e000 rw-p 00000000 00:00 0
7f86c856e000-7f86c856f000 ---p 00000000 00:00 0
7f86c856f000-7f86c8640000 rw-p 00000000 00:00 0
7f86c8646000-7f86ca710000 rw-p 00000000 00:00 0
7f86ca71b000-7f86ca81c000 rw-p 00000000 00:00 0
7f86ca81c000-7f86cae8f000 r--p 00000000 103:02 12452893 /usr/lib/locale/locale-archive
7f86cae8f000-7f86cae91000 rw-p 00000000 00:00 0
7f86cae91000-7f86caeb3000 r--p 00000000 103:02 12479093 /usr/lib/x86_64-linux-gnu/libc-2.31.so
7f86caeb3000-7f86cb02b000 r-xp 00022000 103:02 12479093 /usr/lib/x86_64-linux-gnu/libc-2.31.so
7f86cb02b000-7f86cb079000 r--p 0019a000 103:02 12479093 /usr/lib/x86_64-linux-gnu/libc-2.31.so
7f86cb079000-7f86cb07d000 r--p 001e7000 103:02 12479093 /usr/lib/x86_64-linux-gnu/libc-2.31.so
7f86cb07d000-7f86cb07f000 rw-p 001eb000 103:02 12479093 /usr/lib/x86_64-linux-gnu/libc-2.31.so
7f86cb07f000-7f86cb083000 rw-p 00000000 00:00 0
7f86cb083000-7f86cb089000 r--p 00000000 103:02 12479106 /usr/lib/x86_64-linux-gnu/libpthread-2.31.so
7f86cb089000-7f86cb09a000 r-xp 00006000 103:02 12479106 /usr/lib/x86_64-linux-gnu/libpthread-2.31.so
7f86cb09a000-7f86cb0a0000 r--p 00017000 103:02 12479106 /usr/lib/x86_64-linux-gnu/libpthread-2.31.so
7f86cb0a0000-7f86cb0a1000 r--p 0001c000 103:02 12479106 /usr/lib/x86_64-linux-gnu/libpthread-2.31.so
7f86cb0a1000-7f86cb0a2000 rw-p 0001d000 103:02 12479106 /usr/lib/x86_64-linux-gnu/libpthread-2.31.so
7f86cb0a2000-7f86cb0a8000 rw-p 00000000 00:00 0
7f86cb0a8000-7f86cb0b5000 r--p 00000000 103:02 12479095 /usr/lib/x86_64-linux-gnu/libm-2.31.so
7f86cb0b5000-7f86cb15c000 r-xp 0000d000 103:02 12479095 /usr/lib/x86_64-linux-gnu/libm-2.31.so
7f86cb15c000-7f86cb1f5000 r--p 000b4000 103:02 12479095 /usr/lib/x86_64-linux-gnu/libm-2.31.so
7f86cb1f5000-7f86cb1f6000 r--p 0014c000 103:02 12479095 /usr/lib/x86_64-linux-gnu/libm-2.31.so
7f86cb1f6000-7f86cb1f7000 rw-p 0014d000 103:02 12479095 /usr/lib/x86_64-linux-gnu/libm-2.31.so
7f86cb1f7000-7f86cb1f9000 r--p 00000000 103:02 12459253 /usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0
7f86cb1f9000-7f86cb20e000 r-xp 00002000 103:02 12459253 /usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0
7f86cb20e000-7f86cb228000 r--p 00017000 103:02 12459253 /usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0
7f86cb228000-7f86cb229000 r--p 00030000 103:02 12459253 /usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0
7f86cb229000-7f86cb22a000 rw-p 00031000 103:02 12459253 /usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0
7f86cb22a000-7f86cb232000 rw-p 00000000 00:00 0
7f86cb232000-7f86cb233000 r--p 00000000 103:02 12479094 /usr/lib/x86_64-linux-gnu/libdl-2.31.so
7f86cb233000-7f86cb235000 r-xp 00001000 103:02 12479094 /usr/lib/x86_64-linux-gnu/libdl-2.31.so
7f86cb235000-7f86cb236000 r--p 00003000 103:02 12479094 /usr/lib/x86_64-linux-gnu/libdl-2.31.so
7f86cb236000-7f86cb237000 r--p 00003000 103:02 12479094 /usr/lib/x86_64-linux-gnu/libdl-2.31.so
7f86cb237000-7f86cb238000 rw-p 00004000 103:02 12479094 /usr/lib/x86_64-linux-gnu/libdl-2.31.so
7f86cb238000-7f86cb242000 r--p 00000000 103:02 12459523 /usr/lib/x86_64-linux-gnu/libgmp.so.10.4.0
7f86cb242000-7f86cb2a2000 r-xp 0000a000 103:02 12459523 /usr/lib/x86_64-linux-gnu/libgmp.so.10.4.0
7f86cb2a2000-7f86cb2b9000 r--p 0006a000 103:02 12459523 /usr/lib/x86_64-linux-gnu/libgmp.so.10.4.0
7f86cb2b9000-7f86cb2ba000 ---p 00081000 103:02 12459523 /usr/lib/x86_64-linux-gnu/libgmp.so.10.4.0
7f86cb2ba000-7f86cb2bb000 r--p 00081000 103:02 12459523 /usr/lib/x86_64-linux-gnu/libgmp.so.10.4.0
7f86cb2bb000-7f86cb2bc000 rw-p 00082000 103:02 12459523 /usr/lib/x86_64-linux-gnu/libgmp.so.10.4.0
7f86cb2bc000-7f86cb2be000 r--p 00000000 103:02 12479108 /usr/lib/x86_64-linux-gnu/librt-2.31.so
7f86cb2be000-7f86cb2c2000 r-xp 00002000 103:02 12479108 /usr/lib/x86_64-linux-gnu/librt-2.31.so
7f86cb2c2000-7f86cb2c4000 r--p 00006000 103:02 12479108 /usr/lib/x86_64-linux-gnu/librt-2.31.so
7f86cb2c4000-7f86cb2c5000 r--p 00007000 103:02 12479108 /usr/lib/x86_64-linux-gnu/librt-2.31.so
7f86cb2c5000-7f86cb2c6000 rw-p 00008000 103:02 12479108 /usr/lib/x86_64-linux-gnu/librt-2.31.so
7f86cb2c6000-7f86cb2c8000 r--p 00000000 103:02 12452034 /usr/lib/x86_64-linux-gnu/libz.so.1.2.11
7f86cb2c8000-7f86cb2d9000 r-xp 00002000 103:02 12452034 /usr/lib/x86_64-linux-gnu/libz.so.1.2.11
7f86cb2d9000-7f86cb2df000 r--p 00013000 103:02 12452034 /usr/lib/x86_64-linux-gnu/libz.so.1.2.11
7f86cb2df000-7f86cb2e0000 ---p 00019000 103:02 12452034 /usr/lib/x86_64-linux-gnu/libz.so.1.2.11
7f86cb2e0000-7f86cb2e1000 r--p 00019000 103:02 12452034 /usr/lib/x86_64-linux-gnu/libz.so.1.2.11
7f86cb2e1000-7f86cb2e2000 rw-p 0001a000 103:02 12452034 /usr/lib/x86_64-linux-gnu/libz.so.1.2.11
7f86cb2e2000-7f86cb2e4000 rw-p 00000000 00:00 0
7f86cb2eb000-7f86cb2ec000 r--p 00000000 103:02 24534290 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/x86_64-linux/monitor.so
7f86cb2ec000-7f86cb2ed000 r-xp 00001000 103:02 24534290 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/x86_64-linux/monitor.so
7f86cb2ed000-7f86cb2ee000 r--p 00002000 103:02 24534290 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/x86_64-linux/monitor.so
7f86cb2ee000-7f86cb2ef000 r--p 00002000 103:02 24534290 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/x86_64-linux/monitor.so
7f86cb2ef000-7f86cb2f0000 rw-p 00003000 103:02 24534290 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/x86_64-linux/monitor.so
7f86cb2f0000-7f86cb2f1000 r--p 00000000 103:02 24534301 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/x86_64-linux/enc/trans/transdb.so
7f86cb2f1000-7f86cb2f3000 r-xp 00001000 103:02 24534301 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/x86_64-linux/enc/trans/transdb.so
7f86cb2f3000-7f86cb2f4000 r--p 00003000 103:02 24534301 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/x86_64-linux/enc/trans/transdb.so
7f86cb2f4000-7f86cb2f5000 r--p 00003000 103:02 24534301 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/x86_64-linux/enc/trans/transdb.so
7f86cb2f5000-7f86cb2f6000 rw-p 00004000 103:02 24534301 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/x86_64-linux/enc/trans/transdb.so
7f86cb2f6000-7f86cb2f7000 r--p 00000000 103:02 24534316 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/x86_64-linux/enc/encdb.so
7f86cb2f7000-7f86cb2f8000 r-xp 00001000 103:02 24534316 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/x86_64-linux/enc/encdb.so
7f86cb2f8000-7f86cb2f9000 r--p 00002000 103:02 24534316 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/x86_64-linux/enc/encdb.so
7f86cb2f9000-7f86cb2fa000 r--p 00002000 103:02 24534316 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/x86_64-linux/enc/encdb.so
7f86cb2fa000-7f86cb2fb000 rw-p 00003000 103:02 24534316 /home/mayu/.rbenv/versions/3.2.0-dev/lib/ruby/3.2.0+2/x86_64-linux/enc/encdb.so
7f86cb2fb000-7f86cb302000 r--s 00000000 103:02 13114922 /usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache
7f86cb302000-7f86cb303000 r--p 00000000 103:02 12461873 /usr/lib/x86_64-linux-gnu/ld-2.31.so
7f86cb303000-7f86cb326000 r-xp 00001000 103:02 12461873 /usr/lib/x86_64-linux-gnu/ld-2.31.so
7f86cb326000-7f86cb32e000 r--p 00024000 103:02 12461873 /usr/lib/x86_64-linux-gnu/ld-2.31.so
7f86cb32f000-7f86cb330000 r--p 0002c000 103:02 12461873 /usr/lib/x86_64-linux-gnu/ld-2.31.so
7f86cb330000-7f86cb331000 rw-p 0002d000 103:02 12461873 /usr/lib/x86_64-linux-gnu/ld-2.31.so
7f86cb331000-7f86cb332000 rw-p 00000000 00:00 0
7ffc1a78f000-7ffc1af8e000 rw-p 00000000 00:00 0 [stack]
7ffc1af9a000-7ffc1af9e000 r--p 00000000 00:00 0 [vvar]
7ffc1af9e000-7ffc1afa0000 r-xp 00000000 00:00 0 [vdso]
ffffffffff600000-ffffffffff601000 --xp 00000000 00:00 0 [vsyscall]
Aborted (core dumped)
This was not reproduced in ruby 3.1.2.
This causes doctree CI to fail.
https://github.com/rurema/doctree/actions/runs/3117758923/jobs/5056622066
Updated by osyo (manga osyo) over 2 years ago
Perhaps this commit is the cause.
https://github.com/ruby/ruby/commit/fbaac837cfba23a9d34dc7ee144d7940248222a2
Updated by mame (Yusuke Endoh) over 2 years ago
- Assignee set to jhawthorn (John Hawthorn)
Updated by jhawthorn (John Hawthorn) over 2 years ago
- Status changed from Open to Closed
Applied in changeset git|b361bdc20036688f17f1e39a260a70254e7db9cd.
[Bug #19021] Fix safe call w/ conditional assign
As of fbaac837cfba23a9d34dc7ee144d7940248222a2, when we were performing
a safe call (o&.x=
) with a conditional assign (||= 1
) and discarding
the result the stack would end up in a bad state due to a missing pop.
This commit fixes that by adjusting the target label of the branchnil to
be before a pop in that case (as was previously done in the
non-conditional assignment case).
Updated by jhawthorn (John Hawthorn) over 2 years ago
- Backport changed from 2.7: UNKNOWN, 3.0: UNKNOWN, 3.1: UNKNOWN to 2.7: DONTNEED, 3.0: DONTNEED, 3.1: DONTNEED
Thanks! It was indeed broken by that commit. I've merged a fix and added tests so it should be working now.
Updated by osyo (manga osyo) over 2 years ago
jhawthorn (John Hawthorn) wrote in #note-4:
Thanks! It was indeed broken by that commit. I've merged a fix and added tests so it should be working now.
Great!
I have confirmed that it is fixed.
Thanks.