Project

General

Profile

Actions

Bug #19021

closed

Crash [BUG] Stack consistency error on ruby 3.2.0-dev

Added by osyo (manga osyo) 2 months ago. Updated 2 months ago.

Status:
Closed
Priority:
Normal
Target version:
-
ruby -v:
ruby 3.2.0dev (2022-09-24T00:41:15Z master 82ac4a2399) [x86_64-linux]
[ruby-core:110054]

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 mame (Yusuke Endoh) 2 months ago

  • Assignee set to jhawthorn (John Hawthorn)
Actions #3

Updated by jhawthorn (John Hawthorn) 2 months 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) 2 months 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) 2 months 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.

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0