ruby-core
Threads by month
- ----- 2026 -----
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
August 2025
- 5 participants
- 153 discussions
[ruby-core:122932] [Ruby Bug#21534] ppc64le Ractor ractor_port_receive aborted (core dumped)
by jaruga (Jun Aruga) 04 Sep '25
by jaruga (Jun Aruga) 04 Sep '25
04 Sep '25
Issue #21534 has been reported by jaruga (Jun Aruga).
----------------------------------------
Bug #21534: ppc64le Ractor ractor_port_receive aborted (core dumped)
https://bugs.ruby-lang.org/issues/21534
* Author: jaruga (Jun Aruga)
* Status: Open
* Backport: 3.2: UNKNOWN, 3.3: UNKNOWN, 3.4: UNKNOWN
----------------------------------------
I am seeing the following errors in the Ubuntu 24.04 noble server "Ubuntu (ppc64le)" on RubyCI on the relatively latest master branch commit `f3206cc79bec2fd852e81ec56de59f0a67ab32b7`.
Originally I found the errors at <https://github.com/ruby/ruby/pull/13972#issuecomment-3160768404>.
## Reproducing the errors
```
$ grep ^VERSION /etc/os-release
VERSION_ID="24.04"
VERSION="24.04.3 LTS (Noble Numbat)"
VERSION_CODENAME=noble
$ uname -m
ppc64le
$ uname -r
6.8.0-71-generic
```
```
$ pwd
/home/jaruga/git/ruby/ruby
```
The following `configure` script's options comes from the `.github/workflows/ubuntu.yml`.
https://github.com/ruby/ruby/blob/24d0b458cd6ccde1e052c1db15af120def349693/…
```
$ ./autogen.sh
$ ./configure -C --disable-install-doc cppflags=-DRUBY_DEBUG
$ make -j4
```
Then the 2 assertions in the following tests always fail.
```
$ make btest BTESTS=bootstraptest/test_ractor.rb
...
FAIL 2/147 tests failed
make: *** [uncommon.mk:913: yes-btest] Error 1
$ make btest-ruby BTESTS=bootstraptest/test_ractor.rb
FAIL 2/145 tests failed
make: *** [uncommon.mk:921: yes-btest-ruby] Error 1
...
```
And the `test_ractor_1.rb` is a minimal reproducer so far I found for the 1st failing assertion.
```
$ cat test_ractor_1.rb
# Ractor.count
counts = []
counts << Ractor.count
p counts.inspect
ractors = (1..2).map { Ractor.new { Ractor.receive } }
counts << Ractor.count
p counts.inspect
ractors[0].send('End 0').join
sleep 0.1 until ractors[0].inspect =~ /terminated/
counts << Ractor.count
p counts.inspect
ractors[1].send('End 1').join
sleep 0.1 until ractors[1].inspect =~ /terminated/
counts << Ractor.count
p counts.inspect
```
Then the following test fails once in 2 or 3 times. Below is a passing case.
```
$ make run TESTRUN_SCRIPT=test_ractor_1.rb
./miniruby -I./lib -I. -I.ext/common -r./powerpc64le-linux-fake test_ractor_1.rb
"[1]"
test_ractor_1.rb:6: warning: Ractor is experimental, and the behavior may change in future versions of Ruby! Also there are many implementation issues.
"[1, 3]"
"[1, 3, 2]"
"[1, 3, 2, 1]"
```
Below is a failing (aborting) case.
```
$ make run TESTRUN_SCRIPT=test_ractor_1.rb
./miniruby -I./lib -I. -I.ext/common -r./powerpc64le-linux-fake test_ractor_1.rb
"[1]"
test_ractor_1.rb:6: warning: Ractor is experimental, and the behavior may change in future versions of Ruby! Also there are many implementation issues.
"[1, 3]"
vm_core.h:2017: Assertion Failed: rb_current_execution_context:ec == rb_current_ec_noinline()
ruby 3.5.0dev (2025-08-06T15:07:49Z master f3206cc79b) +PRISM [powerpc64le-linux]
-- Control frame information -----------------------------------------------
c:0004 p:0003 s:0014 e:000013 METHOD <internal:ractor>:667
c:0003 p:0008 s:0010 e:000009 METHOD <internal:ractor>:313
c:0002 p:0004 s:0006 e:000005 BLOCK test_ractor_1.rb:6 [FINISH]
c:0001 p:---- s:0003 e:000002 DUMMY [FINISH]
-- Ruby level backtrace information ----------------------------------------
test_ractor_1.rb:6:in 'block (2 levels) in <main>'
<internal:ractor>:313:in 'receive'
<internal:ractor>:667:in 'receive'
-- Threading information ---------------------------------------------------
Total ractor count: 3
Ruby thread count for this ractor: 1
-- C level backtrace information -------------------------------------------
/home/jaruga/git/ruby/ruby/miniruby(rb_print_backtrace+0x8) [0x10a262075e10] vm_dump.c:843
/home/jaruga/git/ruby/ruby/miniruby(rb_vm_bugreport) vm_dump.c:1175
/home/jaruga/git/ruby/ruby/miniruby(rb_assert_failure_detail+0x12c) [0x10a261c62aa0] error.c:1215
/home/jaruga/git/ruby/ruby/miniruby(rb_assert_failure+0x1c) [0x10a261c62ae0] error.c:1191
/home/jaruga/git/ruby/ruby/miniruby(rb_current_execution_context+0x34) [0x10a261c66574] vm_core.h:2017
/home/jaruga/git/ruby/ruby/miniruby(ractor_basket_value+0x0) [0x10a261ee2720] ractor_sync.c:826
/home/jaruga/git/ruby/ruby/miniruby(ractor_basket_accept) ractor_sync.c:833
/home/jaruga/git/ruby/ruby/miniruby(ractor_try_receive) ractor_sync.c:1144
/home/jaruga/git/ruby/ruby/miniruby(ractor_receive) ractor_sync.c:1160
/home/jaruga/git/ruby/ruby/miniruby(ractor_port_receive) ractor_sync.c:142
/home/jaruga/git/ruby/ruby/miniruby(builtin_invoker0+0x24) [0x10a26201c3f4] vm_insnhelper.c:7344
/home/jaruga/git/ruby/ruby/miniruby(invoke_bf+0x128) [0x10a26202d968] vm_insnhelper.c:7485
/home/jaruga/git/ruby/ruby/miniruby(vm_invoke_builtin_delegate+0x1c) [0x10a262059e08] vm_insnhelper.c:7509
/home/jaruga/git/ruby/ruby/miniruby(vm_exec_core) insns.def:1698
/home/jaruga/git/ruby/ruby/miniruby(vm_exec_loop+0x0) [0x10a26204af08] vm.c:2621
/home/jaruga/git/ruby/ruby/miniruby(rb_vm_exec) vm.c:2624
/home/jaruga/git/ruby/ruby/miniruby(thread_do_start_proc+0x394) [0x10a261fd6154] thread.c:584
/home/jaruga/git/ruby/ruby/miniruby(thread_do_start+0x8) [0x10a261fd68c8] thread.c:626
/home/jaruga/git/ruby/ruby/miniruby(thread_start_func_2) thread.c:677
/home/jaruga/git/ruby/ruby/miniruby(thread_sched_lock_+0x0) [0x10a261fd7104] thread_pthread.c:2237
/home/jaruga/git/ruby/ruby/miniruby(co_start) thread_pthread_mn.c:460
/home/jaruga/git/ruby/ruby/miniruby(co_start+0x8) [0x10a261fd7028] thread_pthread_mn.c:439
-- Other runtime information -----------------------------------------------
* Loaded script: test_ractor_1.rb
* Loaded features:
0 enumerator.so
1 thread.rb
2 fiber.so
3 rational.so
4 complex.so
5 pathname.so
6 ruby2_keywords.rb
7 set.rb
8 /home/jaruga/git/ruby/ruby/powerpc64le-linux-fake.rb
* Process memory map:
10a261c30000-10a2622d0000 r-xp 00000000 08:01 1279300 /home/jaruga/git/ruby/ruby/miniruby
10a2622d0000-10a2622e0000 r--p 00690000 08:01 1279300 /home/jaruga/git/ruby/ruby/miniruby
10a2622e0000-10a2622f0000 rw-p 006a0000 08:01 1279300 /home/jaruga/git/ruby/ruby/miniruby
10a2622f0000-10a262300000 rw-p 00000000 00:00 0
10a279e90000-10a27a030000 rw-p 00000000 00:00 0 [heap]
68d2b0000000-68d2b0030000 rw-p 00000000 00:00 0
68d2b0030000-68d2b4000000 ---p 00000000 00:00 0
68d2b8000000-68d2b8030000 rw-p 00000000 00:00 0
68d2b8030000-68d2bc000000 ---p 00000000 00:00 0
68d2bc6f0000-68d2bc700000 ---p 00000000 00:00 0
68d2bc700000-68d2bc800000 rw-p 00000000 00:00 0
68d2bc800000-68d2bc910000 rw-p 00000000 00:00 0 [anon:Ruby:nt_alloc_thread_stack_chunk]
68d2bc910000-68d2bc920000 ---p 00000000 00:00 0 [anon:Ruby:nt_alloc_thread_stack_chunk]
68d2bc920000-68d2bcb20000 rw-p 00000000 00:00 0 [anon:Ruby:nt_alloc_thread_stack_chunk]
68d2bcb20000-68d2bcb30000 ---p 00000000 00:00 0 [anon:Ruby:nt_alloc_thread_stack_chunk]
68d2bcb30000-68d2dc800000 rw-p 00000000 00:00 0 [anon:Ruby:nt_alloc_thread_stack_chunk]
68d2dc800000-68d2dc810000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dc810000-68d2dc8c0000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dc8c0000-68d2dc8d0000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dc8d0000-68d2dc980000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dc980000-68d2dc990000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dc990000-68d2dca40000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dca40000-68d2dca50000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dca50000-68d2dcb00000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dcb00000-68d2dcb10000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dcb10000-68d2dcbc0000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dcbc0000-68d2dcbd0000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dcbd0000-68d2dcc80000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dcc80000-68d2dcc90000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dcc90000-68d2dcd40000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dcd40000-68d2dcd50000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dcd50000-68d2dce00000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dce00000-68d2dce10000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dce10000-68d2dcec0000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dcec0000-68d2dced0000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dced0000-68d2dcf80000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dcf80000-68d2dcf90000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dcf90000-68d2dd040000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd040000-68d2dd050000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd050000-68d2dd100000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd100000-68d2dd110000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd110000-68d2dd1c0000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd1c0000-68d2dd1d0000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd1d0000-68d2dd280000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd280000-68d2dd290000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd290000-68d2dd340000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd340000-68d2dd350000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd350000-68d2dd400000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd400000-68d2dd410000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd410000-68d2dd4c0000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd4c0000-68d2dd4d0000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd4d0000-68d2dd580000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd580000-68d2dd590000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd590000-68d2dd640000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd640000-68d2dd650000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd650000-68d2dd700000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd700000-68d2dd710000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd710000-68d2dd7c0000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd7c0000-68d2dd7d0000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd7d0000-68d2dd880000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd880000-68d2dd890000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd890000-68d2dd940000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd940000-68d2dd950000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dd950000-68d2dda00000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dda00000-68d2dda10000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dda10000-68d2ddac0000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2ddac0000-68d2ddad0000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2ddad0000-68d2ddb80000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2ddb80000-68d2ddb90000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2ddb90000-68d2ddc40000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2ddc40000-68d2ddc50000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2ddc50000-68d2ddd00000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2ddd00000-68d2ddd10000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2ddd10000-68d2dddc0000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dddc0000-68d2dddd0000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dddd0000-68d2dde80000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dde80000-68d2dde90000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2dde90000-68d2ddf40000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2ddf40000-68d2ddf50000 ---p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2ddf50000-68d2de000000 rw-p 00000000 00:00 0 [anon:Ruby:fiber_pool_allocate_memory]
68d2de040000-68d2de060000 r-xp 00000000 08:01 13327 /usr/lib/powerpc64le-linux-gnu/libgcc_s.so.1
68d2de060000-68d2de070000 r--p 00010000 08:01 13327 /usr/lib/powerpc64le-linux-gnu/libgcc_s.so.1
68d2de070000-68d2de080000 rw-p 00020000 08:01 13327 /usr/lib/powerpc64le-linux-gnu/libgcc_s.so.1
68d2de080000-68d2de0b0000 rw-p 00000000 00:00 0 [anon:Ruby:GC:default:heap_page_body_allocate]
68d2de0b0000-68d2de0c0000 ---p 00000000 00:00 0
68d2de0c0000-68d2de1c0000 rw-p 00000000 00:00 0
68d2de1c0000-68d2de1f0000 rw-p 00000000 00:00 0 [anon:Ruby:GC:default:heap_page_body_allocate]
68d2de1f0000-68d2de200000 ---p 00000000 00:00 0
68d2de200000-68d2dea00000 rw-p 00000000 00:00 0
68d2dea00000-68d2f6a00000 rw-p 00000000 00:00 0 [anon:Ruby:Init_default_shapes:shape_cache]
68d2f6a00000-68d2f7e00000 rw-p 00000000 00:00 0 [anon:Ruby:Init_default_shapes:shape_list]
68d2f7e00000-68d2f80f0000 r--p 00000000 08:01 5476 /usr/lib/locale/locale-archive
68d2f80f0000-68d2f8200000 rw-p 00000000 00:00 0
68d2f8200000-68d2f8460000 r-xp 00000000 08:01 25968 /usr/lib/powerpc64le-linux-gnu/libc.so.6
68d2f8460000-68d2f8470000 r--p 00260000 08:01 25968 /usr/lib/powerpc64le-linux-gnu/libc.so.6
68d2f8470000-68d2f8480000 rw-p 00270000 08:01 25968 /usr/lib/powerpc64le-linux-gnu/libc.so.6
68d2f8490000-68d2f84c0000 rw-p 00000000 00:00 0
68d2f84c0000-68d2f84d0000 rw-p 00000000 00:00 0 [anon:Ruby:GC:default:heap_page_body_allocate]
68d2f84e0000-68d2f8550000 rw-p 00000000 00:00 0 [anon:Ruby:GC:default:heap_page_body_allocate]
68d2f8550000-68d2f85b0000 r--p 00000000 08:01 26004 /usr/lib/locale/C.utf8/LC_CTYPE
68d2f85b0000-68d2f86e0000 r-xp 00000000 08:01 25971 /usr/lib/powerpc64le-linux-gnu/libm.so.6
68d2f86e0000-68d2f86f0000 r--p 00130000 08:01 25971 /usr/lib/powerpc64le-linux-gnu/libm.so.6
68d2f86f0000-68d2f8700000 rw-p 00140000 08:01 25971 /usr/lib/powerpc64le-linux-gnu/libm.so.6
68d2f8700000-68d2f8740000 r-xp 00000000 08:01 5029 /usr/lib/powerpc64le-linux-gnu/libcrypt.so.1.1.0
68d2f8740000-68d2f8750000 r--p 00030000 08:01 5029 /usr/lib/powerpc64le-linux-gnu/libcrypt.so.1.1.0
68d2f8750000-68d2f8760000 rw-p 00040000 08:01 5029 /usr/lib/powerpc64le-linux-gnu/libcrypt.so.1.1.0
68d2f8760000-68d2f8800000 r-xp 00000000 08:01 27939 /usr/lib/powerpc64le-linux-gnu/libgmp.so.10.5.0
68d2f8800000-68d2f8810000 r--p 00090000 08:01 27939 /usr/lib/powerpc64le-linux-gnu/libgmp.so.10.5.0
68d2f8810000-68d2f8820000 rw-p 000a0000 08:01 27939 /usr/lib/powerpc64le-linux-gnu/libgmp.so.10.5.0
68d2f8820000-68d2f8850000 r-xp 00000000 08:01 23504 /usr/lib/powerpc64le-linux-gnu/libz.so.1.3
68d2f8850000-68d2f8860000 r--p 00020000 08:01 23504 /usr/lib/powerpc64le-linux-gnu/libz.so.1.3
68d2f8860000-68d2f8870000 rw-p 00030000 08:01 23504 /usr/lib/powerpc64le-linux-gnu/libz.so.1.3
68d2f8870000-68d2f8880000 r--s 00000000 08:01 25957 /usr/lib/powerpc64le-linux-gnu/gconv/gconv-modules.cache
68d2f8880000-68d2f88a0000 r--p 00000000 00:00 0 [vvar]
68d2f88a0000-68d2f88b0000 r-xp 00000000 00:00 0 [vdso]
68d2f88b0000-68d2f8900000 r-xp 00000000 08:01 25965 /usr/lib/powerpc64le-linux-gnu/ld64.so.2
68d2f8900000-68d2f8910000 r--p 00040000 08:01 25965 /usr/lib/powerpc64le-linux-gnu/ld64.so.2
68d2f8910000-68d2f8920000 rw-p 00050000 08:01 25965 /usr/lib/powerpc64le-linux-gnu/ld64.so.2
7fffe3520000-7fffe3550000 rw-p 00000000 00:00 0 [stack]
make: *** [uncommon.mk:1430: run] Aborted (core dumped)
```
## Debugging on gdb
```
$ make gdb TESTRUN_SCRIPT=test_ractor_1.rb
gdb -x run.gdb --quiet --args ./miniruby -I./lib -I. -I.ext/common test_ractor_1.rb
Reading symbols from ./miniruby...
warning: File "/home/jaruga/git/ruby/ruby/.gdbinit" auto-loading has been declined by your `auto-load safe-path' set to "$debugdir:$datadir/auto-load".
To enable execution of this file add
add-auto-load-safe-path /home/jaruga/git/ruby/ruby/.gdbinit
line to your configuration file "/home/jaruga/.config/gdb/gdbinit".
To completely disable this security protection add
set auto-load safe-path /
line to your configuration file "/home/jaruga/.config/gdb/gdbinit".
For more information about this security protection see the
"Auto-loading safe path" section in the GDB manual. E.g., run from the shell:
info "(gdb)Auto-loading safe path"
Breakpoint 1 at 0x32acc: file error.c, line 1190.
Breakpoint 2 at 0x32d30: file error.c, line 1112.
Breakpoint 3 at 0x108820: file debug.c, line 168.
warning: ./breakpoints.gdb: No such file or directory
This GDB supports auto-downloading debuginfo from the following URLs:
<https://debuginfod.ubuntu.com>
Enable debuginfod for this session? (y or [n]) [answered N; input not from terminal]
Debuginfod has been disabled.
To make this setting permanent, add 'set debuginfod enabled off' to .gdbinit.
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/powerpc64le-linux-gnu/libthread_db.so.1".
[New Thread 0x7fffddfff100 (LWP 3470199)]
"[1]"
test_ractor_1.rb:6: warning: Ractor is experimental, and the behavior may change in future versions of Ruby! Also there are many implementation issues.
[New Thread 0x7fffdd7ef100 (LWP 3470200)]
[New Thread 0x7fffbbdff100 (LWP 3470201)]
"[1, 3]"
"[1, 3, 2]"
[Switching to Thread 0x7fffbbdff100 (LWP 3470201)]
Thread 4 "miniruby" hit Breakpoint 1, 0x0000000100032acc in rb_assert_failure (
file=file@entry=0x100514e48 "vm_core.h", line=line@entry=2017,
name=name@entry=0x100573a28 <__func__.2> "rb_current_execution_context",
expr=expr@entry=0x10050f5e0 "ec == rb_current_ec_noinline()") at error.c:1190
1190 {
(gdb) r
The program being debugged has been started already.
Start it from the beginning? (y or n) y
Starting program: /home/jaruga/git/ruby/ruby/miniruby -I./lib -I. -I.ext/common test_ractor_1.rb
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/powerpc64le-linux-gnu/libthread_db.so.1".
[New Thread 0x7fffddfff100 (LWP 3470207)]
"[1]"
test_ractor_1.rb:6: warning: Ractor is experimental, and the behavior may change in future versions of Ruby! Also there are many implementation issues.
[New Thread 0x7fffdd7ef100 (LWP 3470208)]
[New Thread 0x7fffbbdff100 (LWP 3470209)]
"[1, 3]"
"[1, 3, 2]"
[Switching to Thread 0x7fffbbdff100 (LWP 3470209)]
Thread 4 "miniruby" hit Breakpoint 1, 0x0000000100032acc in rb_assert_failure (
file=file@entry=0x100514e48 "vm_core.h", line=line@entry=2017,
name=name@entry=0x100573a28 <__func__.2> "rb_current_execution_context",
expr=expr@entry=0x10050f5e0 "ec == rb_current_ec_noinline()") at error.c:1190
1190 {
```
```
(gdb) bt
#0 0x0000000100032acc in rb_assert_failure (file=file@entry=0x100514e48 "vm_core.h", line=line@entry=2017, name=name@entry=0x100573a28 <__func__.2> "rb_current_execution_context",
expr=expr@entry=0x10050f5e0 "ec == rb_current_ec_noinline()") at error.c:1190
#1 0x0000000100036574 in rb_current_execution_context (expect_ec=true) at vm_core.h:2017
#2 0x00000001002b2720 in rb_current_execution_context (expect_ec=true) at ractor_sync.c:826
#3 rb_current_ractor_raw (expect=true) at vm_core.h:2039
#4 rb_current_ractor_raw (expect=<optimized out>) at vm_core.h:2033
#5 rb_current_ractor () at vm_core.h:2047
#6 rb_current_ractor () at vm_core.h:2045
#7 ractor_queue_deq (rq=0x10082d680, r=<optimized out>) at ractor_sync.c:339
#8 ractor_try_receive (ec=0x10080ed30, rp=<optimized out>, cr=<optimized out>) at ractor_sync.c:1137
#9 ractor_receive (rp=<optimized out>, ec=<optimized out>) at ractor_sync.c:1160
#10 ractor_port_receive (ec=0x10080ed30, ec@entry=<error reading variable: value has been optimized out>, self=<error reading variable: value has been optimized out>) at ractor_sync.c:142
#11 0x00000001003ec3f4 in builtin_invoker0 (ec=<optimized out>, self=<optimized out>, argv=<optimized out>, funcptr=<optimized out>) at vm_insnhelper.c:7344
#12 0x00000001003fd968 in invoke_bf (ec=0x10080ed30, reg_cfp=0x7fffbc11ff20, bf=0x1006a9678 <ractor_table+552>, argv=0x0) at vm_insnhelper.c:7485
#13 0x0000000100429e08 in vm_invoke_builtin_delegate (start_index=<optimized out>, bf=<optimized out>, cfp=<optimized out>, ec=<optimized out>) at vm_insnhelper.c:7509
#14 vm_exec_core (ec=0x10080ed30) at insns.def:1698
#15 0x000000010041af08 in rb_vm_exec (ec=0x10080ed30) at vm.c:2621
#16 0x00000001003a6154 in thread_do_start_proc (th=th@entry=0x10082d6a0) at thread.c:584
#17 0x00000001003a68c8 in thread_do_start (th=0x10082d6a0) at thread.c:626
#18 thread_start_func_2 (th=th@entry=0x10082d6a0, stack_start=<optimized out>) at thread.c:677
#19 0x00000001003a7104 in call_thread_start_func_2 (th=<optimized out>) at thread_pthread.c:2237
#20 co_start (from=<optimized out>, self=0x10082d960) at thread_pthread_mn.c:458
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
```
In the stacktrace info, the ractor_sync.c:142 is below.
https://github.com/ruby/ruby/blob/f3206cc79bec2fd852e81ec56de59f0a67ab32b7/…
The ractor_sync.c:826 is below.
https://github.com/ruby/ruby/blob/f3206cc79bec2fd852e81ec56de59f0a67ab32b7/…
## RubyCI Ubuntu (ppc64le) passing
Interestingly, it seems that this core dump doesn't happen on the RubyCI Ubuntu (ppc64le) server, for example on the following log.
I don't know why this core dump doesn't happen on the server.
https://rubyci.s3.amazonaws.com/ppc64le/ruby-master/log/20250807T130006Z.lo…
--
https://bugs.ruby-lang.org/
2
11
[ruby-core:123141] [Ruby Bug#21558] Regexp.union with multiple regexps returns a non-shareable object (should be shareable if possible)
by niku (niku _) 01 Sep '25
by niku (niku _) 01 Sep '25
01 Sep '25
Issue #21558 has been reported by niku (niku _).
----------------------------------------
Bug #21558: Regexp.union with multiple regexps returns a non-shareable object (should be shareable if possible)
https://bugs.ruby-lang.org/issues/21558
* Author: niku (niku _)
* Status: Open
* ruby -v: ruby 3.5.0dev (2025-08-30T18:24:25Z master 5c7dfe85a1) +PRISM [arm64-darwin24]
* Backport: 3.2: UNKNOWN, 3.3: UNKNOWN, 3.4: UNKNOWN
----------------------------------------
Regexp.union returns a non-shareable object when given multiple Regex arguments. Is this expected behavior?
It would be preferable if the resulting Regexp were shareable, since single-argument `Regexp.union` does produce a shareable object.
```irb
irb(main):001> a = /a/
=> /a/
irb(main):002> b = Regexp.union(a)
=> /a/
irb(main):003> c = Regexp.union(a, a)
=> /(?-mix:a)|(?-mix:a)/
irb(main):004> Ractor.shareable?(a)
=> true
irb(main):005> Ractor.shareable?(b)
=> true
irb(main):006> Ractor.shareable?(c)
=> false
```
--
https://bugs.ruby-lang.org/
3
5
30 Aug '25
Issue #21549 has been reported by mame (Yusuke Endoh).
----------------------------------------
Misc #21549: DevMeeting-2025-09-11
https://bugs.ruby-lang.org/issues/21549
* Author: mame (Yusuke Endoh)
* Status: Open
----------------------------------------
# The next dev meeting
**Date: 2025/09/11 13:00-17:00** (JST)
Log: *TBD*
- Dev meeting *IS NOT* a decision-making place. All decisions should be done at the bug tracker.
- Dev meeting is a place we can ask Matz, nobu, nurse and other developers directly.
- Matz is a very busy person. Take this opportunity to ask him. If you can not attend, other attendees can ask instead of you (if attendees can understand your issue).
- We will write a record of the discussion in the file or to each ticket in English.
- All activities are best-effort (keep in mind that most of us are volunteer developers).
- The date, time and place of the meeting are scheduled according to when/where we can reserve Matz's time.
- *DO NOT* discuss then on this ticket, please.
# Call for agenda items
If you have a ticket that you want matz and committers to discuss, please post it into this ticket in the following format:
```
* [Ticket ref] Ticket title (your name)
* Comment (A summary of the ticket, why you put this ticket here, what point should be discussed, etc.)
```
Example:
```
* [Feature #14609] `Kernel#p` without args shows the receiver (ko1)
* I feel this feature is very useful and some people say :+1: so let discuss this feature.
```
- It is recommended to add a comment by 2025/09/08. We hold a preparatory meeting to create an agenda a few days before the dev-meeting.
- The format is strict. We'll use [this script to automatically create an markdown-style agenda](https://gist.github.com/mame/b0390509ce1491b43610b9ebb665eb86). We may ignore a comment that does not follow the format.
- Your comment is mandatory. We cannot read all discussion of the ticket in a limited time. We appreciate it if you could write a short summary and update from a previous discussion.
--
https://bugs.ruby-lang.org/
4
3
[ruby-core:123042] [Ruby Feature#21550] Ractor.sharable_proc/sharable_lambda to make sharable Proc object
by ko1 (Koichi Sasada) 30 Aug '25
by ko1 (Koichi Sasada) 30 Aug '25
30 Aug '25
Issue #21550 has been reported by ko1 (Koichi Sasada).
----------------------------------------
Feature #21550: Ractor.sharable_proc/sharable_lambda to make sharable Proc object
https://bugs.ruby-lang.org/issues/21550
* Author: ko1 (Koichi Sasada)
* Status: Open
* Assignee: ko1 (Koichi Sasada)
* Target version: 3.5
----------------------------------------
Let's introduce a way to make a sharable Proc.
* `Ractor.shareable_proc(self: nil, &block)` makes proc.
* `Ractor.shareable_lambda(self: nil, &block)` makes lambda.
See also: https://bugs.ruby-lang.org/issues/21039
## Background
### Motivation
Being able to create a shareable Proc is important for Ractors. For example, we often want to send a task to another Ractor:
```ruby
worker = Ractor.new do
while task = Ractor.receive
task.call(...)
end
end
task = (sharable_proc)
worker << task
task = (sharable_proc)
worker << task
task = (sharable_proc)
worker << task
```
There are various ways to represent a task, but using a Proc is straightforward.
However, to make a Proc shareable today, self must also be shareable, which leads to patterns like:
```ruby
nil.instance_eval{ Proc.new{ ... } }
```
This is noisy and cryptic. We propose dedicated methods to create shareable Proc objects directly.
## Specification
* `Ractor.shareable_proc(self: nil, &block)` makes a proc.
* `Ractor.shareable_lambda(self: nil, &block)` makes a lambda.
Both methods create the Proc/lambda with the given self and make the resulting object shareable.
Captured outer variables follow the current `Ractor.make_shareable` semantics:
* If a captured outer local variable refers to a shareable object, a shareable Proc may read it.
* If any captured outer variable refers to a non‑shareable object, creating the shareable Proc raises an error.
```ruby
a = 42
b = "str"
Ractor.sharalbe_proc{
p a #=> 42
}
Ractor.sharalbe_proc{ # error when making a sharealbe proc
p b #=> 42
}
```
* The captured outer local variables are copied by value when the shareable Proc is created. Subsequent modifications of those variables in the creator scope do not affect the Proc.
```
a = 42
shpr = Ractor.sharable_proc{
p a
}
a = 0
shpr.call #=> 42
```
```
* Assigning to outer local variables from within the shareable Proc is not allowed (error at creation).
```ruby
a = 42
Ractor.shareable_proc{ # error when making a sharealbe proc
a = 43
}
```
More about outer-variable handling are discussed below.
In other words, from the perspective of a shareable Proc, captured outer locals are read‑only constants.
This proposal does not change the semantics of Ractor.make_shareable() itself.
## Discussion about outer local variables
[Feature #21039] discusses how captured variables should be handled.
I propose two options.
### 1. No problem to change the
@Eregon noted that the current behavior of `Ractor.make_shareable(proc_obj)` can surprise users. While that is understandable, Ruby already has similar *surprises*.
For instance:
```ruby
RSpec.describe 'foo' do
p self #=> RSpec::ExampleGroups::Foo
end
```
Here, `self` is implicitly replaced, likely via `instance_exec`.
This can be surprising if one does not know self can change, yet it is accepted in Ruby.
We view the current situation as a similar kind of surprise.
### 2. Enforce a strict rule for non‑lexical usage
The difficulty is that it is hard to know which block will become shareable unless it is lexically usage.
```ruby
# (1) On this code, it is clear that the block will be shareable block:
a = 42
Ractor.sharable_proc{
p a
}
# (2) On this code, it is not clear that the block becomes sharable or not
get path do
p a
end
# (3) On this code, it has no problem because
get '/hello' do
"world"
end
```
The idea is to allow accessing captured outer variables only for lexically explicit uses of `Ractor.shareable_proc` as in (1), and to raise an error for non‑lexical cases as in (2).
So the example (3) is allowed if the block becomes sharable or not.
The strict rule is same as `Ractor.new` block rule.
--
https://bugs.ruby-lang.org/
4
15
[ruby-core:122945] [Ruby Bug#21538] initialize_dup not called when duping class/module
by chucke (Tiago Cardoso) 30 Aug '25
by chucke (Tiago Cardoso) 30 Aug '25
30 Aug '25
Issue #21538 has been reported by chucke (Tiago Cardoso).
----------------------------------------
Bug #21538: initialize_dup not called when duping class/module
https://bugs.ruby-lang.org/issues/21538
* Author: chucke (Tiago Cardoso)
* Status: Open
* ruby -v: 3.4.5
* Backport: 3.2: UNKNOWN, 3.3: UNKNOWN, 3.4: UNKNOWN
----------------------------------------
Not sure whether this is expected behaviour or not, but just leaving it here to start the debate on whether callbacks like `initialize_dup` are supposed to be called when a module or class is duped (the same happens with `initialize_copy` and `initialize_clone` btw):
class A
def initialize_dup(_)
puts "dup instance"
super
end
def self.initialize_dup(_)
puts "dup class"
super
end
end
A.new.dup #=> "dup instance"
A.dup #=> nothing
--
https://bugs.ruby-lang.org/
2
2
[ruby-core:122797] [Ruby Feature#21515] Add `&return` as sugar for `x=my_calculation; return x if x`
by nhorton (Noah Horton) 28 Aug '25
by nhorton (Noah Horton) 28 Aug '25
28 Aug '25
Issue #21515 has been reported by nhorton (Noah Horton).
----------------------------------------
Feature #21515: Add `&return` as sugar for `x=my_calculation; return x if x`
https://bugs.ruby-lang.org/issues/21515
* Author: nhorton (Noah Horton)
* Status: Open
----------------------------------------
Let me preface this by saying I have no marriage to the exact keyword name of `&return`.
# Problem
It is very common to have an early return in code where you get some initial value and return it if it is non-null. i.e.
```
return my_calculation(input_a, input_b) if my_calculation(input_a, input_b)
```
That form on its own is verbose and one where you need to look at it for a moment to confirm it is the same code on either side of the if.
If `my_calculation` is non-trivial at all, it normally gets turned into something with a variable:
```
my_calc = my_calculation(input_a, input_b)
return my_calc if my_calc
```
That is now two lines. The worse scenario, however, is if the user did not bother doing that and my_calculation turned out to be expensive (and they did not know it).
# Proposal
I propose a syntax of `&return my_calculation(input_a, input_b)` where it will evaluate the argument and return it as the result of the method if it is non-nil, otherwise it will continue on.
# Alternatives
## Do Nothing
There is no way to work around this with rolling your own methods. You can't make a `returnif` method or something yourself since you can't do a return in the caller's scope.
## Different Name
The best other name I saw were permutations of `returnif`. The biggest issue I see is the similarity of the following two statements:
```
return if foo
returnif foo
```
Those are obviously very, very different statements, but are somewhat similar. However, things like this are common, and the code is still quite distinct on those, so I think it is acceptable.
Ultimately, this feels so similar to the safe navigator that using `&` in this context feels appropriate.
Thank you all for your consideration.
--
https://bugs.ruby-lang.org/
9
12
[ruby-core:122947] [Ruby Feature#21539] Facilitate walking native and interpreter (and jit?) stacks from outside of the ruby process
by dalehamel (Dale Hamel) 28 Aug '25
by dalehamel (Dale Hamel) 28 Aug '25
28 Aug '25
Issue #21539 has been reported by dalehamel (Dale Hamel).
----------------------------------------
Feature #21539: Facilitate walking native and interpreter (and jit?) stacks from outside of the ruby process
https://bugs.ruby-lang.org/issues/21539
* Author: dalehamel (Dale Hamel)
* Status: Open
----------------------------------------
While ruby does have a great API for getting stack traces within the ruby processes, as used by profilers like vernier and stackprof, there are some projects which aim to profile ruby from outside of the process.
Some examples include:
- rbspy (https://github.com/rbspy/rbspy/tree/main/ruby-structs/src)
- rbperf (https://github.com/javierhonduco/rbperf)
- open telemetry (https://github.com/open-telemetry/opentelemetry-ebpf-profiler/blob/main/sup…, https://github.com/open-telemetry/opentelemetry-ebpf-profiler/blob/main/int…)
These first two take the approach of embedding the ruby headers within the profiler to be able to walk the stack.
otel's bpf exporter was relying on access to symbols (https://github.com/open-telemetry/opentelemetry-ebpf-profiler/issues/202) which were removed some time ago https://github.com/ruby/ruby/pull/7459. As a result, it cannot profile newer rubies as it cannot unwind the stacks.
All of these solutions kind of take the approach of trying to reverse engineer the ruby process and rely on somewhat hacky approaches that touch internal things that might frequently move around between ruby versions, and all feel a bit brittle. I think the root of this is that there is no public, stable api for this sort of external profiling.
I'm not exactly sure what the solution should be, but it would be great for ruby to offer a recommended, supported, and stable way for external profilers (whether they are using perf api's or ptrace) to be able to:
- Obtain the ruby native stack starting point, and walk it while being able to resolve the native symbols
- Obtain a reference to the ruby execution context and walk the ruby interpreter stack
- Have all of this work in a stable and reasonable way regardless of if / which ruby jit is enabled
It would be awesome for some ruby maintainers / experts to weigh-in on what such an external API could look like. Perhaps a public header containing stable (or at least perhaps, versioned?) public symbols and perhaps structs as a starting point? This might necessitate that some fields be refactored out of existing structs, and could slow down work related to them (eg, members need to be added or removed).
--
https://bugs.ruby-lang.org/
2
1
[ruby-core:122964] [Ruby Feature#21543] Point ArgumentError to the call site
by mame (Yusuke Endoh) 28 Aug '25
by mame (Yusuke Endoh) 28 Aug '25
28 Aug '25
Issue #21543 has been reported by mame (Yusuke Endoh).
----------------------------------------
Feature #21543: Point ArgumentError to the call site
https://bugs.ruby-lang.org/issues/21543
* Author: mame (Yusuke Endoh)
* Status: Open
----------------------------------------
Consider this buggy code:
```ruby
def foo(x, y)
end
foo(1)
```
The resulting error is:
```
$ ruby test.rb
test.rb:1:in `foo': wrong number of arguments (given 1, expected 2) (ArgumentError)
from test.rb:4:in `<main>'
```
I want this to be:
```
$ ruby test.rb
test.rb:4:in `<main>': wrong number of arguments (given 1, expected 2) (ArgumentError)
for `foo' at test.rb:1
```
## Problem
In my experience, the code that needs fixing is almost always the caller, not the callee. In the above case, one would change `foo(1)` to something like `foo(1, 2)`.
My typical debugging workflow starts with opening the first location shown in the backtrace. This takes me to the `def` line of the method. However, I can barely remember a single time I've ever had to fix the method definition itself in this scenario. I often find myself sighing, going back to the backtrace, finding the second location (the caller), and opening that file instead.
I think this inconvenience is a significant loss of productivity.
I understand that the current behavior is designed because developers need to check the callee (the method definition) to see what arguments are required for the fix.
However, I believe the primary location in a backtrace should point to the code that is most likely to need modification. There are cases where developers can fix the call site without re-checking the method definition. Even when they do need to check the callee to recall the expected arguments, it feels more natural to first understand "what arguments am I currently passing?" at the call site before asking "what arguments should I be passing?". This workflow makes it easier to spot the mistake.
## Proposal
I propose that the backtrace for an ArgumentError should point to the caller's location (the call site) as shown in the above. The location of the callee (the method definition) could instead be included within the error message itself.
For a longer backtrace, the output would look like this:
```ruby
class TestClass
def foo(x, y)
end
def bar
foo(1)
end
def main
bar
end
end
TestClass.new.main
```
```
$ ruby test.rb
test.rb:6:in 'TestClass#bar': wrong number of arguments (given 1, expected 2) (ArgumentError)
for TestClass#foo at test.rb:2
from test.rb:10:in 'TestClass#main'
from test.rb:14:in '<main>'
```
What do you think of this proposal? I have attached a proof-of-concept patch, though it will require more work before it is merge-ready.
```diff
diff --git a/vm_args.c b/vm_args.c
index 44be6f54c5..986cb3e4c1 100644
--- a/vm_args.c
+++ b/vm_args.c
@@ -980,17 +980,7 @@ raise_argument_error(rb_execution_context_t *ec, const rb_iseq_t *iseq, const rb
{
VALUE at;
- if (iseq) {
- vm_push_frame(ec, iseq, VM_FRAME_MAGIC_DUMMY | VM_ENV_FLAG_LOCAL, Qnil /* self */,
- VM_BLOCK_HANDLER_NONE /* specval*/, (VALUE) cme /* me or cref */,
- ISEQ_BODY(iseq)->iseq_encoded,
- ec->cfp->sp, 0, 0 /* stack_max */);
- at = rb_ec_backtrace_object(ec);
- rb_vm_pop_frame(ec);
- }
- else {
- at = rb_ec_backtrace_object(ec);
- }
+ at = rb_ec_backtrace_object(ec);
rb_ivar_set(exc, idBt_locations, at);
rb_exc_set_backtrace(exc, at);
@@ -1000,7 +990,15 @@ raise_argument_error(rb_execution_context_t *ec, const rb_iseq_t *iseq, const rb
static void
argument_arity_error(rb_execution_context_t *ec, const rb_iseq_t *iseq, const rb_callable_method_entry_t *cme, const int miss_argc, const int min_argc, const int max_argc)
{
- VALUE exc = rb_arity_error_new(miss_argc, min_argc, max_argc);
+ VALUE rb_gen_method_name(VALUE owner, VALUE name);
+ VALUE mname = rb_gen_method_name(cme->owner, rb_id2str(cme->def->original_id));
+ const rb_iseq_t *miseq = cme->def->body.iseq.iseqptr;
+ VALUE file = Qfalse, lineno = 0;
+ if (miseq) {
+ file = rb_iseq_path(miseq);
+ lineno = rb_iseq_first_lineno(miseq);
+ }
+ VALUE exc = rb_arity_error_new(miss_argc, min_argc, max_argc, mname, file, lineno);
if (ISEQ_BODY(iseq)->param.flags.has_kw) {
const struct rb_iseq_param_keyword *const kw = ISEQ_BODY(iseq)->param.keyword;
const ID *keywords = kw->table;
diff --git a/vm_insnhelper.c b/vm_insnhelper.c
index 3aca1bc24f..a5ad2f0562 100644
--- a/vm_insnhelper.c
+++ b/vm_insnhelper.c
@@ -484,7 +484,7 @@ rb_vm_push_frame_fname(rb_execution_context_t *ec, VALUE fname)
/* method dispatch */
static inline VALUE
-rb_arity_error_new(int argc, int min, int max)
+rb_arity_error_new(int argc, int min, int max, VALUE mname, VALUE file, VALUE lineno)
{
VALUE err_mess = rb_sprintf("wrong number of arguments (given %d, expected %d", argc, min);
if (min == max) {
@@ -497,13 +497,19 @@ rb_arity_error_new(int argc, int min, int max)
rb_str_catf(err_mess, "..%d", max);
}
rb_str_cat_cstr(err_mess, ")");
+ if (mname) {
+ rb_str_catf(err_mess, "\nfor %"PRIsVALUE, mname);
+ if (file) {
+ rb_str_catf(err_mess, " at %"PRIsVALUE":%"PRIsVALUE, file, lineno);
+ }
+ }
return rb_exc_new3(rb_eArgError, err_mess);
}
void
rb_error_arity(int argc, int min, int max)
{
- rb_exc_raise(rb_arity_error_new(argc, min, max));
+ rb_exc_raise(rb_arity_error_new(argc, min, max, Qfalse, Qfalse, INT2FIX(0)));
}
/* lvar */
```
```
--
https://bugs.ruby-lang.org/
4
7
[ruby-core:122995] [Ruby Bug#21548] SEGV: gc/default/default.c with rbs tests
by hsbt (Hiroshi SHIBATA) 28 Aug '25
by hsbt (Hiroshi SHIBATA) 28 Aug '25
28 Aug '25
Issue #21548 has been reported by hsbt (Hiroshi SHIBATA).
----------------------------------------
Bug #21548: SEGV: gc/default/default.c with rbs tests
https://bugs.ruby-lang.org/issues/21548
* Author: hsbt (Hiroshi SHIBATA)
* Status: Open
* Backport: 3.2: UNKNOWN, 3.3: UNKNOWN, 3.4: UNKNOWN
----------------------------------------
The following segmentation fault are happened in recent days.
* https://github.com/ruby/ruby/actions/runs/17114960502/job/48543926673
* https://github.com/ruby/ruby/actions/runs/17109323314/job/48526477676
* https://github.com/ruby/ruby/actions/runs/17086780395/job/48452284619
Does anyone who are familiar with GC look this?
```
../src/gc/default/default.c:6329: Assertion Failed: gc_start:gc_mode(objspace) == gc_mode_none: gc_mode is sweeping
ruby 3.5.0dev (2025-08-21T01:55:42Z master 60189671f5) +PRISM [x86_64-linux]
-- Control frame information -----------------------------------------------
c:0043 p:---- s:0250 e:000249 CFUNC :parse
c:0042 p:0025 s:0244 e:000243 METHOD /home/runner/work/ruby/ruby/build/.ext/common/json/common.rb:339
c:0041 p:0022 s:0238 e:000237 BLOCK /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/cli_test.rb:95
c:0040 p:0032 s:0234 e:000233 METHOD /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/cli_test.rb:83
c:0039 p:0004 s:0229 e:000228 METHOD /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/cli_test.rb:91
c:0038 p:0138 s:0225 e:000224 METHOD /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/testcase.rb:914
c:0037 p:0003 s:0217 e:000216 BLOCK /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/testcase.rb:601
c:0036 p:0024 s:0214 e:000213 BLOCK /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/fixture.rb:276
c:0035 p:0024 s:0210 e:000209 BLOCK /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/fixture.rb:276
c:0034 p:0052 s:0206 e:000205 METHOD /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/fixture.rb:257
c:0033 p:0009 s:0197 e:000196 METHOD /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/fixture.rb:292
c:0032 p:0004 s:0192 E:001e08 BLOCK /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/testcase.rb:599 [FINISH]
c:0031 p:---- s:0188 e:000187 CFUNC :catch
c:0030 p:0046 s:0184 E:002448 METHOD /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/testcase.rb:598
c:0029 p:0045 s:0175 E:0020c0 METHOD /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-suite-runner.rb:96
c:0028 p:0013 s:0163 e:000162 BLOCK /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-suite-runner.rb:62 [FINISH]
c:0027 p:---- s:0159 e:000158 CFUNC :each
c:0026 p:0009 s:0155 e:000154 METHOD /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-suite-runner.rb:61
c:0025 p:0037 s:0147 e:000146 METHOD /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-suite-runner.rb:39
c:0024 p:0030 s:0139 E:001478 METHOD /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/testsuite.rb:56
c:0023 p:0045 s:0130 E:002020 METHOD /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-suite-runner.rb:96
c:0022 p:0013 s:0118 e:000117 BLOCK /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-suite-runner.rb:62 [FINISH]
c:0021 p:---- s:0114 e:000113 CFUNC :each
c:0020 p:0009 s:0110 e:000109 METHOD /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-suite-runner.rb:61
c:0019 p:0037 s:0102 e:000101 METHOD /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-suite-runner.rb:39
c:0018 p:0030 s:0094 E:001368 METHOD /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/testsuite.rb:56
c:0017 p:0028 s:0085 E:0011e0 METHOD /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/ui/testrunnermediator.rb:72
c:0016 p:0041 s:0079 e:000078 BLOCK /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/ui/testrunnermediator.rb:49 [FINISH]
c:0015 p:---- s:0075 e:000074 CFUNC :catch
c:0014 p:0004 s:0071 e:000070 BLOCK /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/ui/testrunnermediator.rb:44
c:0013 p:0008 s:0067 e:000066 METHOD /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-suite-runner.rb:19
c:0012 p:0006 s:0063 e:000062 BLOCK /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/ui/testrunnermediator.rb:43
c:0011 p:0038 s:0060 E:002428 METHOD /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/ui/testrunnermediator.rb:107
c:0010 p:0033 s:0051 E:000998 METHOD /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/ui/testrunnermediator.rb:42
c:0009 p:0006 s:0044 e:000043 METHOD /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/ui/testrunner.rb:40
c:0008 p:0019 s:0040 e:000039 METHOD /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/ui/testrunner.rb:25
c:0007 p:0015 s:0036 e:000035 METHOD /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/ui/testrunnerutilities.rb:24
c:0006 p:0010 s:0030 e:000029 BLOCK /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/autorunner.rb:499
c:0005 p:0019 s:0027 e:000026 METHOD /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/autorunner.rb:564
c:0004 p:0182 s:0022 e:000021 METHOD /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/autorunner.rb:498
c:0003 p:0057 s:0016 e:000015 METHOD /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/autorunner.rb:68
c:0002 p:0017 s:0007 e:000005 BLOCK /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit.rb:518 [FINISH]
c:0001 p:0000 s:0003 E:001420 DUMMY [FINISH]
-- Ruby level backtrace information ----------------------------------------
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit.rb:518:in 'block (2 levels) in <top (required)>'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/autorunner.rb:68:in 'run'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/autorunner.rb:498:in 'run'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/autorunner.rb:564:in 'change_work_directory'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/autorunner.rb:499:in 'block in run'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/ui/testrunnerutilities.rb:24:in 'run'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/ui/testrunner.rb:25:in 'start'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/ui/testrunner.rb:40:in 'start_mediator'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/ui/testrunnermediator.rb:42:in 'run'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/ui/testrunnermediator.rb:107:in 'with_listener'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/ui/testrunnermediator.rb:43:in 'block in run'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-suite-runner.rb:19:in 'run_all_tests'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/ui/testrunnermediator.rb:44:in 'block (2 levels) in run'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/ui/testrunnermediator.rb:44:in 'catch'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/ui/testrunnermediator.rb:49:in 'block (3 levels) in run'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/ui/testrunnermediator.rb:72:in 'run_suite'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/testsuite.rb:56:in 'run'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-suite-runner.rb:39:in 'run'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-suite-runner.rb:61:in 'run_tests'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-suite-runner.rb:61:in 'each'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-suite-runner.rb:62:in 'block in run_tests'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-suite-runner.rb:96:in 'run_test'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/testsuite.rb:56:in 'run'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-suite-runner.rb:39:in 'run'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-suite-runner.rb:61:in 'run_tests'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-suite-runner.rb:61:in 'each'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-suite-runner.rb:62:in 'block in run_tests'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-suite-runner.rb:96:in 'run_test'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/testcase.rb:598:in 'run'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/testcase.rb:598:in 'catch'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/testcase.rb:599:in 'block in run'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/fixture.rb:292:in 'run_setup'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/fixture.rb:257:in 'run_fixture'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/fixture.rb:276:in 'block in create_fixtures_runner'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/fixture.rb:276:in 'block in create_fixtures_runner'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/testcase.rb:601:in 'block (2 levels) in run'
/home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/testcase.rb:914:in 'run_test'
/home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/cli_test.rb:91:in 'test_ast'
/home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/cli_test.rb:83:in 'with_cli'
/home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/cli_test.rb:95:in 'block in test_ast'
/home/runner/work/ruby/ruby/build/.ext/common/json/common.rb:339:in 'parse'
/home/runner/work/ruby/ruby/build/.ext/common/json/common.rb:339:in 'parse'
-- Threading information ---------------------------------------------------
Total ractor count: 1
Ruby thread count for this ractor: 1
-- C level backtrace information -------------------------------------------
/home/runner/work/ruby/ruby/build/ruby(rb_print_backtrace+0x8) [0x55898a090776] ../src/vm_dump.c:843
/home/runner/work/ruby/ruby/build/ruby(rb_vm_bugreport) ../src/vm_dump.c:1175
/home/runner/work/ruby/ruby/build/ruby(rb_assert_failure_detail+0x156) [0x558989c7c025] ../src/error.c:1215
/home/runner/work/ruby/ruby/build/ruby(RB_FL_ABLE+0x0) [0x558989c3d906] ../src/gc/default/default.c:6329
/home/runner/work/ruby/ruby/build/ruby(RB_OBJ_PROMOTED_RAW) ../src/include/ruby/internal/gc.h:708
/home/runner/work/ruby/ruby/build/ruby(RVALUE_OLD_P) ../src/gc/default/default.c:1367
/home/runner/work/ruby/ruby/build/ruby(gc_mark_set_parent) ../src/gc/default/default.c:4554
/home/runner/work/ruby/ruby/build/ruby(gc_mark_children) ../src/gc/default/default.c:4565
/home/runner/work/ruby/ruby/build/ruby(gc_mark_stacked_objects) ../src/gc/default/default.c:4587
/home/runner/work/ruby/ruby/build/ruby(gc_mark_stacked_objects_incremental) ../src/gc/default/default.c:4619
/home/runner/work/ruby/ruby/build/ruby(gc_marks_step) ../src/gc/default/default.c:5654
/home/runner/work/ruby/ruby/build/ruby(gc_marks_continue) ../src/gc/default/default.c:5674
/home/runner/work/ruby/ruby/build/ruby(gc_continue) ../src/gc/default/default.c:2014
/home/runner/work/ruby/ruby/build/ruby(heap_prepare+0x90) [0x558989cad140] ../src/gc/default/default.c:2050
/home/runner/work/ruby/ruby/build/ruby(heap_next_free_page) ../src/gc/default/default.c:2274
/home/runner/work/ruby/ruby/build/ruby(newobj_cache_miss) ../src/gc/default/default.c:2381
/home/runner/work/ruby/ruby/build/ruby(RB_SPECIAL_CONST_P+0x0) [0x558989cae445] ../src/gc/default/default.c:2405
/home/runner/work/ruby/ruby/build/ruby(RB_BUILTIN_TYPE) ../src/include/ruby/internal/value_type.h:184
/home/runner/work/ruby/ruby/build/ruby(newobj_init) ../src/gc/default/default.c:2122
/home/runner/work/ruby/ruby/build/ruby(rb_gc_impl_new_obj) ../src/gc/default/default.c:2485
/home/runner/work/ruby/ruby/build/ruby(newobj_of) ../src/gc.c:991
/home/runner/work/ruby/ruby/build/ruby(rb_wb_protected_newobj_of+0x37) [0x558989cae627] ../src/gc.c:1029
/home/runner/work/ruby/ruby/build/ruby(str_enc_new+0x59) [0x558989dc6ac9] ../src/string.c:1049
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(build_string+0xb) [0x7f77022f86b5] ../../../../src/ext/json/parser/parser.c:602
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_string_fastpath) ../../../../src/ext/json/parser/parser.c:635
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_decode_string) ../../../../src/ext/json/parser/parser.c:914
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_parse_string) ../../../../src/ext/json/parser/parser.c:992
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_eat_whitespace+0x0) [0x7f77022f8fe8] ../../../../src/ext/json/parser/parser.c:1210
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_parse_any) ../../../../src/ext/json/parser/parser.c:1214
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_eat_whitespace+0x0) [0x7f77022f90b7] ../../../../src/ext/json/parser/parser.c:1252
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_parse_any) ../../../../src/ext/json/parser/parser.c:1214
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_eat_whitespace+0x0) [0x7f77022f90b7] ../../../../src/ext/json/parser/parser.c:1252
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_parse_any) ../../../../src/ext/json/parser/parser.c:1214
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_eat_whitespace+0x0) [0x7f77022f8f0e] ../../../../src/ext/json/parser/parser.c:1174
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_parse_any) ../../../../src/ext/json/parser/parser.c:1155
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_eat_whitespace+0x0) [0x7f77022f90b7] ../../../../src/ext/json/parser/parser.c:1252
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_parse_any) ../../../../src/ext/json/parser/parser.c:1214
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_eat_whitespace+0x0) [0x7f77022f8fe8] ../../../../src/ext/json/parser/parser.c:1210
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_parse_any) ../../../../src/ext/json/parser/parser.c:1214
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_eat_whitespace+0x0) [0x7f77022f8ea2] ../../../../src/ext/json/parser/parser.c:1151
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_parse_any) ../../../../src/ext/json/parser/parser.c:1155
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_eat_whitespace+0x0) [0x7f77022f90b7] ../../../../src/ext/json/parser/parser.c:1252
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_parse_any) ../../../../src/ext/json/parser/parser.c:1214
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_eat_whitespace+0x0) [0x7f77022f90b7] ../../../../src/ext/json/parser/parser.c:1252
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_parse_any) ../../../../src/ext/json/parser/parser.c:1214
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_eat_whitespace+0x0) [0x7f77022f90b7] ../../../../src/ext/json/parser/parser.c:1252
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_parse_any) ../../../../src/ext/json/parser/parser.c:1214
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_eat_whitespace+0x0) [0x7f77022f8f0e] ../../../../src/ext/json/parser/parser.c:1174
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_parse_any) ../../../../src/ext/json/parser/parser.c:1155
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_eat_whitespace+0x0) [0x7f77022f90b7] ../../../../src/ext/json/parser/parser.c:1252
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_parse_any) ../../../../src/ext/json/parser/parser.c:1214
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_eat_whitespace+0x0) [0x7f77022f8f0e] ../../../../src/ext/json/parser/parser.c:1174
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_parse_any) ../../../../src/ext/json/parser/parser.c:1155
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_eat_whitespace+0x0) [0x7f77022f90b7] ../../../../src/ext/json/parser/parser.c:1252
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_parse_any) ../../../../src/ext/json/parser/parser.c:1214
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_eat_whitespace+0x0) [0x7f77022f8f0e] ../../../../src/ext/json/parser/parser.c:1174
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(json_parse_any) ../../../../src/ext/json/parser/parser.c:1155
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(cParser_parse+0x137) [0x7f77022fa1d7] ../../../../src/ext/json/parser/parser.c:1424
/home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so(cParser_m_parse+0xf7) [0x7f77022fa487] ../../../../src/ext/json/parser/parser.c:1457
/home/runner/work/ruby/ruby/build/ruby(vm_call_cfunc_with_frame_+0xe9) [0x558989e3cf19] ../src/vm_insnhelper.c:3848
/home/runner/work/ruby/ruby/build/ruby(vm_sendish+0x13e) [0x558989e423be] ../src/vm_insnhelper.c:6055
/home/runner/work/ruby/ruby/build/ruby(vm_exec_core+0x98) [0x558989e57618] /home/runner/work/ruby/ruby/build/insns.def:899
/home/runner/work/ruby/ruby/build/ruby(vm_exec_loop+0x38) [0x558989e4c38f] ../src/vm.c:2648
/home/runner/work/ruby/ruby/build/ruby(rb_vm_exec) ../src/vm.c:2627
/home/runner/work/ruby/ruby/build/ruby(catch_i+0xc3) [0x558989e50a83] ../src/vm.c:1702
/home/runner/work/ruby/ruby/build/ruby(vm_catch_protect+0x12f) [0x558989e453af] ../src/vm_eval.c:2633
/home/runner/work/ruby/ruby/build/ruby(rb_catch_obj+0x4a) [0x558989e45813] ../src/vm_eval.c:2659
/home/runner/work/ruby/ruby/build/ruby(rb_f_catch) ../src/vm_eval.c:2609
/home/runner/work/ruby/ruby/build/ruby(vm_call_cfunc_with_frame_+0xe9) [0x558989e3cf19] ../src/vm_insnhelper.c:3848
/home/runner/work/ruby/ruby/build/ruby(vm_sendish+0x13e) [0x558989e423be] ../src/vm_insnhelper.c:6055
/home/runner/work/ruby/ruby/build/ruby(vm_exec_core+0x1e3) [0x558989e57763] /home/runner/work/ruby/ruby/build/insns.def:851
/home/runner/work/ruby/ruby/build/ruby(rb_vm_exec+0x1af) [0x558989e4c00f] ../src/vm.c:2621
/home/runner/work/ruby/ruby/build/ruby(rb_yield+0xa3) [0x558989e51093] ../src/vm.c:1702
/home/runner/work/ruby/ruby/build/ruby(rb_ary_each+0x48) [0x558989f818d8] ../src/array.c:2646
/home/runner/work/ruby/ruby/build/ruby(vm_call_cfunc_with_frame_+0xe9) [0x558989e3cf19] ../src/vm_insnhelper.c:3848
/home/runner/work/ruby/ruby/build/ruby(vm_sendish+0x13e) [0x558989e423be] ../src/vm_insnhelper.c:6055
/home/runner/work/ruby/ruby/build/ruby(vm_exec_core+0x1e3) [0x558989e57763] /home/runner/work/ruby/ruby/build/insns.def:851
/home/runner/work/ruby/ruby/build/ruby(rb_vm_exec+0x1af) [0x558989e4c00f] ../src/vm.c:2621
/home/runner/work/ruby/ruby/build/ruby(rb_yield+0xa3) [0x558989e51093] ../src/vm.c:1702
/home/runner/work/ruby/ruby/build/ruby(rb_ary_each+0x48) [0x558989f818d8] ../src/array.c:2646
/home/runner/work/ruby/ruby/build/ruby(vm_call_cfunc_with_frame_+0xe9) [0x558989e3cf19] ../src/vm_insnhelper.c:3848
/home/runner/work/ruby/ruby/build/ruby(vm_sendish+0x13e) [0x558989e423be] ../src/vm_insnhelper.c:6055
/home/runner/work/ruby/ruby/build/ruby(vm_exec_core+0x1e3) [0x558989e57763] /home/runner/work/ruby/ruby/build/insns.def:851
/home/runner/work/ruby/ruby/build/ruby(rb_vm_exec+0x1af) [0x558989e4c00f] ../src/vm.c:2621
/home/runner/work/ruby/ruby/build/ruby(catch_i+0xc3) [0x558989e50a83] ../src/vm.c:1702
/home/runner/work/ruby/ruby/build/ruby(vm_catch_protect+0x12f) [0x558989e453af] ../src/vm_eval.c:2633
/home/runner/work/ruby/ruby/build/ruby(rb_catch_obj+0x4a) [0x558989e45813] ../src/vm_eval.c:2659
/home/runner/work/ruby/ruby/build/ruby(rb_f_catch) ../src/vm_eval.c:2609
/home/runner/work/ruby/ruby/build/ruby(vm_call_cfunc_with_frame_+0xe9) [0x558989e3cf19] ../src/vm_insnhelper.c:3848
/home/runner/work/ruby/ruby/build/ruby(vm_sendish+0x13e) [0x558989e423be] ../src/vm_insnhelper.c:6055
/home/runner/work/ruby/ruby/build/ruby(vm_exec_core+0x1e3) [0x558989e57763] /home/runner/work/ruby/ruby/build/insns.def:851
/home/runner/work/ruby/ruby/build/ruby(rb_vm_exec+0x1af) [0x558989e4c00f] ../src/vm.c:2621
/home/runner/work/ruby/ruby/build/ruby(rb_vm_invoke_proc+0xe1) [0x558989e4cf11] ../src/vm.c:1796
/home/runner/work/ruby/ruby/build/ruby(rb_proc_call_kw+0xd8) [0x558989d39248] ../src/proc.c:1000
/home/runner/work/ruby/ruby/build/ruby(exec_end_procs_chain+0x46) [0x558989c83bf0] ../src/eval_jump.c:105
/home/runner/work/ruby/ruby/build/ruby(rb_ec_exec_end_proc) ../src/eval_jump.c:121
/home/runner/work/ruby/ruby/build/ruby(rb_ec_teardown+0x10a) [0x558989c83eea] ../src/eval.c:156
/home/runner/work/ruby/ruby/build/ruby(rb_ec_cleanup+0x1a1) [0x558989c84261] ../src/eval.c:208
/home/runner/work/ruby/ruby/build/ruby(rb_main+0x21) [0x558989c7f607] ../src/main.c:42
/home/runner/work/ruby/ruby/build/ruby(main) ../src/main.c:62
/lib/x86_64-linux-gnu/libc.so.6(0x7f7702429d90) [0x7f7702429d90]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x80) [0x7f7702429e40]
[0x558989c7f655]
-- Other runtime information -----------------------------------------------
* Loaded script: /home/runner/work/ruby/ruby/src/.bundle/gems/rake-13.3.0/lib/rake/rake_test_loader.rb
* Loaded features:
0 enumerator.so
1 thread.rb
2 fiber.so
3 rational.so
4 complex.so
5 pathname.so
6 ruby2_keywords.rb
7 set.rb
8 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/enc/encdb.so
9 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/enc/trans/transdb.so
10 /home/runner/work/ruby/ruby/build/rbconfig.rb
11 /home/runner/work/ruby/ruby/src/lib/rubygems/defaults.rb
12 /home/runner/work/ruby/ruby/src/lib/rubygems/deprecate.rb
13 /home/runner/work/ruby/ruby/src/lib/rubygems/errors.rb
14 /home/runner/work/ruby/ruby/src/lib/rubygems/target_rbconfig.rb
15 /home/runner/work/ruby/ruby/src/lib/rubygems/unknown_command_spell_checker.rb
16 /home/runner/work/ruby/ruby/src/lib/rubygems/exceptions.rb
17 /home/runner/work/ruby/ruby/src/lib/rubygems/basic_specification.rb
18 /home/runner/work/ruby/ruby/src/lib/rubygems/stub_specification.rb
19 /home/runner/work/ruby/ruby/src/lib/rubygems/platform.rb
20 /home/runner/work/ruby/ruby/src/lib/rubygems/specification_record.rb
21 /home/runner/work/ruby/ruby/src/lib/rubygems/util/list.rb
22 /home/runner/work/ruby/ruby/src/lib/rubygems/version.rb
23 /home/runner/work/ruby/ruby/src/lib/rubygems/requirement.rb
24 /home/runner/work/ruby/ruby/src/lib/rubygems/specification.rb
25 /home/runner/work/ruby/ruby/src/lib/rubygems/util.rb
26 /home/runner/work/ruby/ruby/src/lib/rubygems/core_ext/kernel_gem.rb
27 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/monitor.so
28 /home/runner/work/ruby/ruby/build/.ext/common/monitor.rb
29 /home/runner/work/ruby/ruby/src/lib/rubygems.rb
30 /home/runner/work/ruby/ruby/src/lib/bundled_gems.rb
31 /home/runner/work/ruby/ruby/src/lib/error_highlight/version.rb
32 /home/runner/work/ruby/ruby/src/lib/error_highlight/base.rb
33 /home/runner/work/ruby/ruby/src/lib/error_highlight/formatter.rb
34 /home/runner/work/ruby/ruby/src/lib/error_highlight/core_ext.rb
35 /home/runner/work/ruby/ruby/src/lib/error_highlight.rb
36 /home/runner/work/ruby/ruby/src/lib/did_you_mean/version.rb
37 /home/runner/work/ruby/ruby/src/lib/did_you_mean/core_ext/name_error.rb
38 /home/runner/work/ruby/ruby/src/lib/did_you_mean/levenshtein.rb
39 /home/runner/work/ruby/ruby/src/lib/did_you_mean/jaro_winkler.rb
40 /home/runner/work/ruby/ruby/src/lib/did_you_mean/spell_checker.rb
41 /home/runner/work/ruby/ruby/src/lib/did_you_mean/spell_checkers/name_error_checkers/class_name_checker.rb
42 /home/runner/work/ruby/ruby/src/lib/did_you_mean/spell_checkers/name_error_checkers/variable_name_checker.rb
43 /home/runner/work/ruby/ruby/src/lib/did_you_mean/spell_checkers/name_error_checkers.rb
44 /home/runner/work/ruby/ruby/src/lib/did_you_mean/spell_checkers/method_name_checker.rb
45 /home/runner/work/ruby/ruby/src/lib/did_you_mean/spell_checkers/key_error_checker.rb
46 /home/runner/work/ruby/ruby/src/lib/did_you_mean/spell_checkers/null_checker.rb
47 /home/runner/work/ruby/ruby/src/lib/did_you_mean/tree_spell_checker.rb
48 /home/runner/work/ruby/ruby/src/lib/did_you_mean/spell_checkers/require_path_checker.rb
49 /home/runner/work/ruby/ruby/src/lib/did_you_mean/spell_checkers/pattern_key_name_checker.rb
50 /home/runner/work/ruby/ruby/src/lib/did_you_mean/formatter.rb
51 /home/runner/work/ruby/ruby/src/lib/did_you_mean.rb
52 /home/runner/work/ruby/ruby/src/lib/syntax_suggest/core_ext.rb
53 /home/runner/work/ruby/ruby/src/.bundle/gems/rake-13.3.0/lib/rake/cloneable.rb
54 /home/runner/work/ruby/ruby/src/lib/fileutils.rb
55 /home/runner/work/ruby/ruby/src/.bundle/gems/rake-13.3.0/lib/rake/file_utils.rb
56 /home/runner/work/ruby/ruby/src/.bundle/gems/rake-13.3.0/lib/rake/file_utils_ext.rb
57 /home/runner/work/ruby/ruby/src/.bundle/gems/rake-13.3.0/lib/rake/ext/core.rb
58 /home/runner/work/ruby/ruby/src/.bundle/gems/rake-13.3.0/lib/rake/ext/string.rb
59 /home/runner/work/ruby/ruby/src/.bundle/gems/rake-13.3.0/lib/rake/file_list.rb
60 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/etc.so
61 /home/runner/work/ruby/ruby/src/lib/tmpdir.rb
62 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/stringio.so
63 /home/runner/work/ruby/ruby/src/lib/open3/version.rb
64 /home/runner/work/ruby/ruby/src/lib/open3.rb
65 /home/runner/work/ruby/ruby/src/lib/rubygems/text.rb
66 /home/runner/work/ruby/ruby/src/lib/rubygems/source/git.rb
67 /home/runner/work/ruby/ruby/src/lib/rubygems/source/installed.rb
68 /home/runner/work/ruby/ruby/src/lib/rubygems/source/specific_file.rb
69 /home/runner/work/ruby/ruby/src/lib/rubygems/source/local.rb
70 /home/runner/work/ruby/ruby/src/lib/rubygems/source/lock.rb
71 /home/runner/work/ruby/ruby/src/lib/rubygems/source/vendor.rb
72 /home/runner/work/ruby/ruby/src/lib/rubygems/source.rb
73 /home/runner/work/ruby/ruby/src/lib/bundler/match_metadata.rb
74 /home/runner/work/ruby/ruby/src/lib/bundler/match_platform.rb
75 /home/runner/work/ruby/ruby/src/lib/rubygems/dependency.rb
76 /home/runner/work/ruby/ruby/src/lib/bundler/force_platform.rb
77 /home/runner/work/ruby/ruby/src/lib/rubygems/name_tuple.rb
78 /home/runner/work/ruby/ruby/src/lib/bundler/rubygems_ext.rb
79 /home/runner/work/ruby/ruby/src/lib/bundler/vendor/fileutils/lib/fileutils.rb
80 /home/runner/work/ruby/ruby/src/lib/bundler/vendored_fileutils.rb
81 /home/runner/work/ruby/ruby/src/lib/pathname.rb
82 /home/runner/work/ruby/ruby/src/lib/bundler/errors.rb
83 /home/runner/work/ruby/ruby/src/lib/bundler/environment_preserver.rb
84 /home/runner/work/ruby/ruby/src/lib/bundler/plugin/api.rb
85 /home/runner/work/ruby/ruby/src/lib/bundler/plugin.rb
86 /home/runner/work/ruby/ruby/src/lib/bundler/rubygems_integration.rb
87 /home/runner/work/ruby/ruby/src/lib/bundler/version.rb
88 /home/runner/work/ruby/ruby/src/lib/bundler/current_ruby.rb
89 /home/runner/work/ruby/ruby/src/lib/bundler/build_metadata.rb
90 /home/runner/work/ruby/ruby/src/lib/bundler.rb
91 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/version.rb
92 /home/runner/work/ruby/ruby/build/.ext/common/json/version.rb
93 /home/runner/work/ruby/ruby/build/.ext/common/json/common.rb
94 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so
95 /home/runner/work/ruby/ruby/build/.ext/common/json/ext/generator/state.rb
96 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/generator.so
97 /home/runner/work/ruby/ruby/build/.ext/common/json/ext.rb
98 /home/runner/work/ruby/ruby/build/.ext/common/json.rb
99 /home/runner/work/ruby/ruby/src/lib/prettyprint.rb
100 /home/runner/work/ruby/ruby/src/lib/pp.rb
101 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/ripper.so
102 /home/runner/work/ruby/ruby/build/.ext/common/ripper/core.rb
103 /home/runner/work/ruby/ruby/build/.ext/common/ripper/lexer.rb
104 /home/runner/work/ruby/ruby/build/.ext/common/ripper/filter.rb
105 /home/runner/work/ruby/ruby/build/.ext/common/ripper/sexp.rb
106 /home/runner/work/ruby/ruby/build/.ext/common/ripper.rb
107 /home/runner/work/ruby/ruby/src/lib/rubygems/path_support.rb
108 /home/runner/work/ruby/ruby/src/.bundle/gems/logger-1.7.0/lib/logger/version.rb
109 /home/runner/work/ruby/ruby/src/.bundle/gems/logger-1.7.0/lib/logger/formatter.rb
110 /home/runner/work/ruby/ruby/src/.bundle/gems/logger-1.7.0/lib/logger/period.rb
111 /home/runner/work/ruby/ruby/src/.bundle/gems/logger-1.7.0/lib/logger/log_device.rb
112 /home/runner/work/ruby/ruby/src/.bundle/gems/logger-1.7.0/lib/logger/severity.rb
113 /home/runner/work/ruby/ruby/src/.bundle/gems/logger-1.7.0/lib/logger/errors.rb
114 /home/runner/work/ruby/ruby/src/.bundle/gems/logger-1.7.0/lib/logger.rb
115 /home/runner/work/ruby/ruby/src/lib/tsort.rb
116 /home/runner/work/ruby/ruby/build/.ext/common/strscan/strscan.rb
117 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/strscan.so
118 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/errors.rb
119 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/buffer.rb
120 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/namespace.rb
121 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/type_name.rb
122 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/types.rb
123 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/method_type.rb
124 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/file_finder.rb
125 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/ast/type_param.rb
126 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/ast/directives.rb
127 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/ast/declarations.rb
128 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/ast/members.rb
129 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/ast/annotation.rb
130 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/ast/visitor.rb
131 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/environment.rb
132 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/environment/use_map.rb
133 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/environment_loader.rb
134 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/builtin_names.rb
135 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/definition.rb
136 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/definition_builder.rb
137 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/definition_builder/ancestor_builder.rb
138 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/definition_builder/method_builder.rb
139 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/diff.rb
140 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/variance_calculator.rb
141 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/substitution.rb
142 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/constant.rb
143 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/resolver/constant_resolver.rb
144 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/resolver/type_name_resolver.rb
145 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/ast/comment.rb
146 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/writer.rb
147 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/prototype/helpers.rb
148 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/prototype/rbi.rb
149 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/prototype/rb.rb
150 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/prototype/runtime/helpers.rb
151 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/prototype/runtime/value_object_generator.rb
152 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/prototype/runtime/reflection.rb
153 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/prototype/runtime.rb
154 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/prototype/node_usage.rb
155 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/environment_walker.rb
156 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/vendorer.rb
157 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/validator.rb
158 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/factory.rb
159 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/repository.rb
160 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/subtractor.rb
161 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/ancestor_graph.rb
162 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/locator.rb
163 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/type_alias_dependency.rb
164 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/type_alias_regularity.rb
165 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/date_core.so
166 /home/runner/work/ruby/ruby/build/.ext/common/date.rb
167 /home/runner/work/ruby/ruby/build/.ext/common/psych/versions.rb
168 /home/runner/work/ruby/ruby/build/.ext/common/psych/exception.rb
169 /home/runner/work/ruby/ruby/build/.ext/common/psych/syntax_error.rb
170 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/psych.so
171 /home/runner/work/ruby/ruby/build/.ext/common/psych/omap.rb
172 /home/runner/work/ruby/ruby/build/.ext/common/psych/set.rb
173 /home/runner/work/ruby/ruby/build/.ext/common/psych/class_loader.rb
174 /home/runner/work/ruby/ruby/build/.ext/common/psych/scalar_scanner.rb
175 /home/runner/work/ruby/ruby/build/.ext/common/psych/nodes/node.rb
176 /home/runner/work/ruby/ruby/build/.ext/common/psych/nodes/stream.rb
177 /home/runner/work/ruby/ruby/build/.ext/common/psych/nodes/document.rb
178 /home/runner/work/ruby/ruby/build/.ext/common/psych/nodes/sequence.rb
179 /home/runner/work/ruby/ruby/build/.ext/common/psych/nodes/scalar.rb
180 /home/runner/work/ruby/ruby/build/.ext/common/psych/nodes/mapping.rb
181 /home/runner/work/ruby/ruby/build/.ext/common/psych/nodes/alias.rb
182 /home/runner/work/ruby/ruby/build/.ext/common/psych/nodes.rb
183 /home/runner/work/ruby/ruby/build/.ext/common/psych/streaming.rb
184 /home/runner/work/ruby/ruby/build/.ext/common/psych/visitors/visitor.rb
185 /home/runner/work/ruby/ruby/build/.ext/common/psych/visitors/to_ruby.rb
186 /home/runner/work/ruby/ruby/build/.ext/common/psych/visitors/emitter.rb
187 /home/runner/work/ruby/ruby/build/.ext/common/psych/handler.rb
188 /home/runner/work/ruby/ruby/build/.ext/common/psych/tree_builder.rb
189 /home/runner/work/ruby/ruby/build/.ext/common/psych/visitors/yaml_tree.rb
190 /home/runner/work/ruby/ruby/build/.ext/common/psych/json/ruby_events.rb
191 /home/runner/work/ruby/ruby/build/.ext/common/psych/visitors/json_tree.rb
192 /home/runner/work/ruby/ruby/build/.ext/common/psych/visitors/depth_first.rb
193 /home/runner/work/ruby/ruby/build/.ext/common/psych/visitors.rb
194 /home/runner/work/ruby/ruby/build/.ext/common/psych/parser.rb
195 /home/runner/work/ruby/ruby/build/.ext/common/psych/coder.rb
196 /home/runner/work/ruby/ruby/build/.ext/common/psych/stream.rb
197 /home/runner/work/ruby/ruby/build/.ext/common/psych/json/yaml_events.rb
198 /home/runner/work/ruby/ruby/build/.ext/common/psych/json/tree_builder.rb
199 /home/runner/work/ruby/ruby/build/.ext/common/psych/json/stream.rb
200 /home/runner/work/ruby/ruby/build/.ext/common/psych/handlers/document_stream.rb
201 /home/runner/work/ruby/ruby/build/.ext/common/psych/core_ext.rb
202 /home/runner/work/ruby/ruby/build/.ext/common/psych.rb
203 /home/runner/work/ruby/ruby/src/lib/yaml.rb
204 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/cli/colored_io.rb
205 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/collection/sources/base.rb
206 /home/runner/work/ruby/ruby/build/.ext/common/digest/version.rb
207 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/digest.so
208 /home/runner/work/ruby/ruby/build/.ext/common/digest/loader.rb
209 /home/runner/work/ruby/ruby/build/.ext/common/digest.rb
210 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/digest/sha2.so
211 /home/runner/work/ruby/ruby/build/.ext/common/digest/sha2/loader.rb
212 /home/runner/work/ruby/ruby/build/.ext/common/digest/sha2.rb
213 /home/runner/work/ruby/ruby/src/lib/find.rb
214 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/collection/sources/git.rb
215 /home/runner/work/ruby/ruby/src/lib/singleton.rb
216 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/collection/sources/stdlib.rb
217 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/collection/sources/rubygems.rb
218 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/collection/sources/local.rb
219 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/collection/sources.rb
220 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/collection/config.rb
221 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/collection/config/lockfile.rb
222 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/collection/config/lockfile_generator.rb
223 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/collection/installer.rb
224 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/collection/cleaner.rb
225 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/collection.rb
226 /home/runner/work/ruby/ruby/build/.bundle/extensions/x86_64-linux/3.5.0+3-static/rbs-3.9.4/rbs_extension.so
227 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/parser/lex_result.rb
228 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/parser/token.rb
229 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/parser_aux.rb
230 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/location_aux.rb
231 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs.rb
232 /home/runner/work/ruby/ruby/src/.bundle/gems/rdoc-6.14.2/lib/rdoc/version.rb
233 /home/runner/work/ruby/ruby/src/.bundle/gems/rdoc-6.14.2/lib/rdoc/i18n/text.rb
234 /home/runner/work/ruby/ruby/src/.bundle/gems/rdoc-6.14.2/lib/rdoc/i18n.rb
235 /home/runner/work/ruby/ruby/src/.bundle/gems/rdoc-6.14.2/lib/rdoc.rb
236 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/annotate/rdoc_annotator.rb
237 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/annotate/rdoc_source.rb
238 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/annotate/annotations.rb
239 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/annotate/formatter.rb
240 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/annotate.rb
241 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/test_skip.rb
242 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/warning.rb
243 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/attribute.rb
244 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/fixture.rb
245 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/exception-handler.rb
246 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/assertion-failed-error.rb
247 /home/runner/work/ruby/ruby/src/.bundle/gems/power_assert-2.0.5/lib/power_assert/configuration.rb
248 /home/runner/work/ruby/ruby/src/.bundle/gems/power_assert-2.0.5/lib/power_assert/enable_tracepoint_events.rb
249 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/io/console.so
250 /home/runner/work/ruby/ruby/build/.ext/common/io/console/size.rb
251 /home/runner/work/ruby/ruby/src/.bundle/gems/power_assert-2.0.5/lib/power_assert/inspector.rb
252 /home/runner/work/ruby/ruby/src/.bundle/gems/power_assert-2.0.5/lib/power_assert/parser.rb
253 /home/runner/work/ruby/ruby/src/.bundle/gems/power_assert-2.0.5/lib/power_assert/context.rb
254 /home/runner/work/ruby/ruby/src/.bundle/gems/power_assert-2.0.5/lib/power_assert/version.rb
255 /home/runner/work/ruby/ruby/src/.bundle/gems/power_assert-2.0.5/lib/power_assert.rb
256 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/util/backtracefilter.rb
257 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/util/memory-usage.rb
258 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/util/method-owner-finder.rb
259 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/diff.rb
260 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/assertions.rb
261 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/failure.rb
262 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/error.rb
263 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/pending.rb
264 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/omission.rb
265 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/notification.rb
266 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/priority.rb
267 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/data-sets.rb
268 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/data.rb
269 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-run-context.rb
270 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-suite-runner.rb
271 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/testsuite.rb
272 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-suite-creator.rb
273 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/auto-runner-loader.rb
274 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/util/output.rb
275 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/testcase.rb
276 /home/runner/work/ruby/ruby/src/lib/English.rb
277 /home/runner/work/ruby/ruby/src/lib/optparse.rb
278 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/color.rb
279 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/color-scheme.rb
280 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/attribute-matcher.rb
281 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/sub-test-result.rb
282 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-thread-run-context.rb
283 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/test-suite-thread-runner.rb
284 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/version.rb
285 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/runner/console.rb
286 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/runner/emacs.rb
287 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/runner/xml.rb
288 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/autorunner.rb
289 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit.rb
290 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/test_helper.rb
291 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/ancestor_builder_test.rb
292 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/ancestor_graph_test.rb
293 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/annotate/annotations_test.rb
294 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/annotate/rdoc_annotator_test.rb
295 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/annotate/rdoc_source_test.rb
296 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/ast/type_param_test.rb
297 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/ast/visitor_test.rb
298 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/buffer_test.rb
299 /home/runner/work/ruby/ruby/src/lib/shellwords.rb
300 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/cli.rb
301 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/cli_test.rb
302 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/collection/cleaner_test.rb
303 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/collection/config_test.rb
304 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/collection/installer_test.rb
305 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/collection/sources/git_test.rb
306 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/collection/sources/local_test.rb
307 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/collection/sources/stdlib_test.rb
308 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/definition_builder_test.rb
309 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/diff_test.rb
310 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/environment_loader_test.rb
311 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/environment_test.rb
312 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/environment_walker_test.rb
313 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/errors_test.rb
314 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/factory_test.rb
315 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/file_finder_test.rb
316 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/location_test.rb
317 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/locator_test.rb
318 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/method_builder_test.rb
319 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/method_type_parsing_test.rb
320 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/node_usage_test.rb
321 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/parser_test.rb
322 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/rb_prototype_test.rb
323 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/rbi_prototype_test.rb
324 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rdoc_plugin/parser.rb
325 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/rdoc/rbs_parser_test.rb
326 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/repository_test.rb
327 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/resolver/constant_resolver_test.rb
328 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/resolver/type_name_resolver_test.rb
329 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/runtime_prototype_test.rb
330 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/util/array_set.rb
331 /home/runner/work/ruby/ruby/src/.bundle/gems/addressable-2.8.7/lib/addressable/version.rb
332 /home/runner/work/ruby/ruby/src/.bundle/gems/addressable-2.8.7/lib/addressable/idna/pure.rb
333 /home/runner/work/ruby/ruby/src/.bundle/gems/addressable-2.8.7/lib/addressable/idna.rb
334 /home/runner/work/ruby/ruby/src/.bundle/gems/public_suffix-6.0.2/lib/public_suffix/domain.rb
335 /home/runner/work/ruby/ruby/src/.bundle/gems/public_suffix-6.0.2/lib/public_suffix/version.rb
336 /home/runner/work/ruby/ruby/src/.bundle/gems/public_suffix-6.0.2/lib/public_suffix/errors.rb
337 /home/runner/work/ruby/ruby/src/.bundle/gems/public_suffix-6.0.2/lib/public_suffix/rule.rb
338 /home/runner/work/ruby/ruby/src/.bundle/gems/public_suffix-6.0.2/lib/public_suffix/list.rb
339 /home/runner/work/ruby/ruby/src/.bundle/gems/public_suffix-6.0.2/lib/public_suffix.rb
340 /home/runner/work/ruby/ruby/src/.bundle/gems/addressable-2.8.7/lib/addressable/uri.rb
341 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/util/uri.rb
342 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/schema.rb
343 /home/runner/work/ruby/ruby/src/lib/uri/version.rb
344 /home/runner/work/ruby/ruby/src/lib/uri/rfc2396_parser.rb
345 /home/runner/work/ruby/ruby/src/lib/uri/rfc3986_parser.rb
346 /home/runner/work/ruby/ruby/src/lib/uri/common.rb
347 /home/runner/work/ruby/ruby/src/lib/uri/generic.rb
348 /home/runner/work/ruby/ruby/src/lib/uri/file.rb
349 /home/runner/work/ruby/ruby/src/lib/uri/ftp.rb
350 /home/runner/work/ruby/ruby/src/lib/uri/http.rb
351 /home/runner/work/ruby/ruby/src/lib/uri/https.rb
352 /home/runner/work/ruby/ruby/src/lib/uri/ldap.rb
353 /home/runner/work/ruby/ruby/src/lib/uri/ldaps.rb
354 /home/runner/work/ruby/ruby/src/lib/uri/mailto.rb
355 /home/runner/work/ruby/ruby/src/lib/uri/ws.rb
356 /home/runner/work/ruby/ruby/src/lib/uri/wss.rb
357 /home/runner/work/ruby/ruby/src/lib/uri.rb
358 /home/runner/work/ruby/ruby/src/lib/time.rb
359 /home/runner/work/ruby/ruby/src/lib/open-uri.rb
360 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/schema/reader.rb
361 /home/runner/work/ruby/ruby/build/.bundle/extensions/x86_64-linux/3.5.0+3-static/bigdecimal-3.2.2/bigdecimal.so
362 /home/runner/work/ruby/ruby/src/.bundle/gems/bigdecimal-3.2.2/lib/bigdecimal.rb
363 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/digest/sha1.so
364 /home/runner/work/ruby/ruby/src/lib/timeout.rb
365 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/errors/schema_error.rb
366 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/errors/schema_parse_error.rb
367 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/errors/json_load_error.rb
368 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/errors/json_parse_error.rb
369 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/digest/md5.so
370 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/util/uuid.rb
371 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/validator.rb
372 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/errors/validation_error.rb
373 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attribute.rb
374 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/additionalitems.rb
375 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/ref.rb
376 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/extends.rb
377 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/additionalproperties.rb
378 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/allof.rb
379 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/anyof.rb
380 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/const.rb
381 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/dependencies.rb
382 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/dependencies_v4.rb
383 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/disallow.rb
384 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/divisibleby.rb
385 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/enum.rb
386 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/format.rb
387 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/errors/custom_format_error.rb
388 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/formats/custom.rb
389 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/formats/date.rb
390 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/formats/date_time.rb
391 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/formats/date_time_v4.rb
392 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/socket.so
393 /home/runner/work/ruby/ruby/build/.ext/common/socket.rb
394 /home/runner/work/ruby/ruby/src/lib/ipaddr.rb
395 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/formats/ip.rb
396 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/formats/time.rb
397 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/errors/uri_error.rb
398 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/formats/uri.rb
399 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/items.rb
400 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/limit.rb
401 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/limits/items.rb
402 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/limits/length.rb
403 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/limits/max_items.rb
404 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/limits/max_length.rb
405 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/limits/properties.rb
406 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/limits/max_properties.rb
407 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/limits/numeric.rb
408 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/limits/maximum.rb
409 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/limits/maximum_inclusive.rb
410 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/limits/min_items.rb
411 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/limits/min_length.rb
412 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/limits/min_properties.rb
413 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/limits/minimum.rb
414 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/limits/minimum_inclusive.rb
415 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/maxdecimal.rb
416 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/multipleof.rb
417 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/not.rb
418 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/oneof.rb
419 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/pattern.rb
420 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/patternproperties.rb
421 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/properties.rb
422 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/properties_optional.rb
423 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/properties_v4.rb
424 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/propertynames.rb
425 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/required.rb
426 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/type.rb
427 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/type_v4.rb
428 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/attributes/uniqueitems.rb
429 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/schema/validator.rb
430 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/validators/draft1.rb
431 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/validators/draft2.rb
432 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/validators/draft3.rb
433 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/validators/draft4.rb
434 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/validators/draft6.rb
435 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/validators/hyper-draft1.rb
436 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/validators/hyper-draft2.rb
437 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/validators/hyper-draft3.rb
438 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/validators/hyper-draft4.rb
439 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema/validators/hyper-draft6.rb
440 /home/runner/work/ruby/ruby/src/.bundle/gems/json-schema-5.1.0/lib/json-schema.rb
441 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/json_validator.rb
442 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/schema_test.rb
443 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/signature_parsing_test.rb
444 /home/runner/work/ruby/ruby/src/lib/delegate.rb
445 /home/runner/work/ruby/ruby/src/lib/tempfile.rb
446 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/sorter.rb
447 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/sorter_test.rb
448 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/subtractor_test.rb
449 /home/runner/work/ruby/ruby/src/lib/random/formatter.rb
450 /home/runner/work/ruby/ruby/src/lib/securerandom.rb
451 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/test/guaranteed.rb
452 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/test/observer.rb
453 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/test/errors.rb
454 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/test/type_check.rb
455 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/test/tester.rb
456 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/test/hook.rb
457 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/test/setup_helper.rb
458 /home/runner/work/ruby/ruby/src/gems/src/rbs/lib/rbs/test.rb
459 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/test/hook_test.rb
460 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/test/runtime_test_test.rb
461 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/test/setup_helper_test.rb
462 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/test/tester_test.rb
463 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/test/type_check_test.rb
464 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/type_alias_dependency_test.rb
465 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/type_alias_regulartiry_test.rb
466 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/type_parsing_test.rb
467 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/types_test.rb
468 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/use_map_test.rb
469 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/variance_calculator_test.rb
470 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/vendorer_test.rb
471 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/rbs/writer_test.rb
472 /home/runner/work/ruby/ruby/src/gems/src/rbs/test/validator_test.rb
473 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/ui/console/outputlevel.rb
474 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/code-snippet-fetcher.rb
475 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/fault-location-detector.rb
476 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/ui/testrunnerutilities.rb
477 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/ui/testrunner.rb
478 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/util/procwrapper.rb
479 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/util/observable.rb
480 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/testresult.rb
481 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/ui/testrunnermediator.rb
482 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/ui/console/testrunner.rb
483 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/collector.rb
484 /home/runner/work/ruby/ruby/src/.bundle/gems/test-unit-3.7.0/lib/test/unit/collector/descendant.rb
* Process memory map:
558989bf6000-558989c38000 r--p 00000000 08:11 536821 /home/runner/work/ruby/ruby/build/ruby
558989c38000-55898a106000 r-xp 00042000 08:11 536821 /home/runner/work/ruby/ruby/build/ruby
55898a106000-55898a2d2000 r--p 00510000 08:11 536821 /home/runner/work/ruby/ruby/build/ruby
55898a2d3000-55898a2ea000 r--p 006dc000 08:11 536821 /home/runner/work/ruby/ruby/build/ruby
55898a2ea000-55898a2ec000 rw-p 006f3000 08:11 536821 /home/runner/work/ruby/ruby/build/ruby
55898a2ec000-55898a300000 rw-p 00000000 00:00 0
5589b355f000-5589b64b4000 rw-p 00000000 00:00 0 [heap]
7f76e0e00000-7f76e3a3d000 r--s 00000000 08:11 536821 /home/runner/work/ruby/ruby/build/ruby
7f76e3bb0000-7f76e4690000 rw-p 00000000 00:00 0
7f76e4c00000-7f76e4e1f000 r--s 00000000 08:11 5025 /usr/lib/x86_64-linux-gnu/libc.so.6
7f76e4e7d000-7f76e4eb0000 r--s 00000000 08:11 536819 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so
7f76e4eb0000-7f76e54c0000 rw-p 00000000 00:00 0
7f76e54d0000-7f76e5790000 rw-p 00000000 00:00 0
7f76e57a0000-7f76e5840000 rw-p 00000000 00:00 0
7f76e5850000-7f76e5880000 rw-p 00000000 00:00 0
7f76e5890000-7f76e58a0000 rw-p 00000000 00:00 0
7f76e58b0000-7f76e5900000 rw-p 00000000 00:00 0
7f76e5910000-7f76e5930000 rw-p 00000000 00:00 0
7f76e5940000-7f76e5b90000 rw-p 00000000 00:00 0
7f76e5ba0000-7f76e6920000 rw-p 00000000 00:00 0
7f76e6924000-7f76e692b000 r--p 00000000 08:11 536710 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/socket.so
7f76e692b000-7f76e6955000 r-xp 00007000 08:11 536710 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/socket.so
7f76e6955000-7f76e695e000 r--p 00031000 08:11 536710 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/socket.so
7f76e695e000-7f76e695f000 r--p 00039000 08:11 536710 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/socket.so
7f76e695f000-7f76e6960000 rw-p 0003a000 08:11 536710 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/socket.so
7f76e6960000-7f76e69b0000 rw-p 00000000 00:00 0
7f76e69bf000-7f76e69c2000 r--p 00000000 08:11 536682 /home/runner/work/ruby/ruby/build/.bundle/extensions/x86_64-linux/3.5.0+3-static/bigdecimal-3.2.2/bigdecimal.so
7f76e69c2000-7f76e69d9000 r-xp 00003000 08:11 536682 /home/runner/work/ruby/ruby/build/.bundle/extensions/x86_64-linux/3.5.0+3-static/bigdecimal-3.2.2/bigdecimal.so
7f76e69d9000-7f76e69dd000 r--p 0001a000 08:11 536682 /home/runner/work/ruby/ruby/build/.bundle/extensions/x86_64-linux/3.5.0+3-static/bigdecimal-3.2.2/bigdecimal.so
7f76e69dd000-7f76e69de000 ---p 0001e000 08:11 536682 /home/runner/work/ruby/ruby/build/.bundle/extensions/x86_64-linux/3.5.0+3-static/bigdecimal-3.2.2/bigdecimal.so
7f76e69de000-7f76e69df000 r--p 0001e000 08:11 536682 /home/runner/work/ruby/ruby/build/.bundle/extensions/x86_64-linux/3.5.0+3-static/bigdecimal-3.2.2/bigdecimal.so
7f76e69df000-7f76e69e0000 rw-p 0001f000 08:11 536682 /home/runner/work/ruby/ruby/build/.bundle/extensions/x86_64-linux/3.5.0+3-static/bigdecimal-3.2.2/bigdecimal.so
7f76e69e0000-7f76e6aa0000 rw-p 00000000 00:00 0
7f76e6aa9000-7f76e6baa000 rw-p 00000000 00:00 0
7f76e6bc0000-7f76e6bd0000 rw-p 00000000 00:00 0
7f76e6be0000-7f76e6cf0000 rw-p 00000000 00:00 0
7f76e6cfa000-7f76e6d00000 r--p 00000000 08:11 536781 /home/runner/work/ruby/ruby/build/.bundle/extensions/x86_64-linux/3.5.0+3-static/rbs-3.9.4/rbs_extension.so
7f76e6d00000-7f76e6d17000 r-xp 00006000 08:11 536781 /home/runner/work/ruby/ruby/build/.bundle/extensions/x86_64-linux/3.5.0+3-static/rbs-3.9.4/rbs_extension.so
7f76e6d17000-7f76e6d1d000 r--p 0001d000 08:11 536781 /home/runner/work/ruby/ruby/build/.bundle/extensions/x86_64-linux/3.5.0+3-static/rbs-3.9.4/rbs_extension.so
7f76e6d1d000-7f76e6d1e000 r--p 00022000 08:11 536781 /home/runner/work/ruby/ruby/build/.bundle/extensions/x86_64-linux/3.5.0+3-static/rbs-3.9.4/rbs_extension.so
7f76e6d1e000-7f76e6d1f000 rw-p 00023000 08:11 536781 /home/runner/work/ruby/ruby/build/.bundle/extensions/x86_64-linux/3.5.0+3-static/rbs-3.9.4/rbs_extension.so
7f76e6d1f000-7f76e6dc0000 rw-p 00000000 00:00 0
7f76e6dc2000-7f76e6dc4000 r--p 00000000 08:11 4919 /usr/lib/x86_64-linux-gnu/libyaml-0.so.2.0.6
7f76e6dc4000-7f76e6ddd000 r-xp 00002000 08:11 4919 /usr/lib/x86_64-linux-gnu/libyaml-0.so.2.0.6
7f76e6ddd000-7f76e6de1000 r--p 0001b000 08:11 4919 /usr/lib/x86_64-linux-gnu/libyaml-0.so.2.0.6
7f76e6de1000-7f76e6de2000 r--p 0001e000 08:11 4919 /usr/lib/x86_64-linux-gnu/libyaml-0.so.2.0.6
7f76e6de2000-7f76e6de3000 rw-p 0001f000 08:11 4919 /usr/lib/x86_64-linux-gnu/libyaml-0.so.2.0.6
7f76e6de3000-7f76e6de7000 r--p 00000000 08:11 536636 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/date_core.so
7f76e6de7000-7f76e6e13000 r-xp 00004000 08:11 536636 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/date_core.so
7f76e6e13000-7f76e6e1c000 r--p 00030000 08:11 536636 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/date_core.so
7f76e6e1c000-7f76e6e1d000 ---p 00039000 08:11 536636 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/date_core.so
7f76e6e1d000-7f76e6e1e000 r--p 00039000 08:11 536636 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/date_core.so
7f76e6e1e000-7f76e6e1f000 rw-p 0003a000 08:11 536636 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/date_core.so
7f76e6e1f000-7f76e6ec0000 rw-p 00000000 00:00 0
7f76e6ecf000-7f76e6fb0000 rw-p 00000000 00:00 0
7f76e6fb1000-7f76e6fb8000 r--p 00000000 08:11 536816 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/ripper.so
7f76e6fb8000-7f76e6fff000 r-xp 00007000 08:11 536816 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/ripper.so
7f76e6fff000-7f76e701d000 r--p 0004e000 08:11 536816 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/ripper.so
7f76e701d000-7f76e701f000 r--p 0006b000 08:11 536816 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/ripper.so
7f76e701f000-7f76e7020000 rw-p 0006d000 08:11 536816 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/ripper.so
7f76e7020000-7f76e7080000 rw-p 00000000 00:00 0
7f76e7090000-7f76e7120000 rw-p 00000000 00:00 0
7f76e7130000-7f76e71a0000 rw-p 00000000 00:00 0
7f76e71a4000-7f76e71a6000 r--p 00000000 08:11 536551 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/io/console.so
7f76e71a6000-7f76e71ab000 r-xp 00002000 08:11 536551 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/io/console.so
7f76e71ab000-7f76e71ad000 r--p 00007000 08:11 536551 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/io/console.so
7f76e71ad000-7f76e71ae000 r--p 00008000 08:11 536551 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/io/console.so
7f76e71ae000-7f76e71af000 rw-p 00009000 08:11 536551 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/io/console.so
7f76e71c0000-7f76e7280000 rw-p 00000000 00:00 0
7f76e7284000-7f76e7287000 r--p 00000000 08:11 536623 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/psych.so
7f76e7287000-7f76e728b000 r-xp 00003000 08:11 536623 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/psych.so
7f76e728b000-7f76e728c000 r--p 00007000 08:11 536623 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/psych.so
7f76e728c000-7f76e728d000 ---p 00008000 08:11 536623 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/psych.so
7f76e728d000-7f76e728e000 r--p 00008000 08:11 536623 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/psych.so
7f76e728e000-7f76e728f000 rw-p 00009000 08:11 536623 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/psych.so
7f76e7295000-7f76e7296000 r--p 00000000 08:11 536770 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/digest/md5.so
7f76e7296000-7f76e7297000 r-xp 00001000 08:11 536770 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/digest/md5.so
7f76e7297000-7f76e7298000 r--p 00002000 08:11 536770 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/digest/md5.so
7f76e7298000-7f76e7299000 r--p 00002000 08:11 536770 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/digest/md5.so
7f76e7299000-7f76e729a000 rw-p 00003000 08:11 536770 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/digest/md5.so
7f76e729a000-7f76e729b000 r--p 00000000 08:11 536794 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/digest/sha1.so
7f76e729b000-7f76e729d000 r-xp 00001000 08:11 536794 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/digest/sha1.so
7f76e729d000-7f76e729e000 r--p 00003000 08:11 536794 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/digest/sha1.so
7f76e729e000-7f76e729f000 r--p 00003000 08:11 536794 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/digest/sha1.so
7f76e729f000-7f76e72a0000 rw-p 00004000 08:11 536794 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/digest/sha1.so
7f76e72a0000-7f76e7350000 rw-p 00000000 00:00 0
7f76e7350000-7f76e7352000 r--p 00000000 08:11 536820 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/generator.so
7f76e7352000-7f76e735b000 r-xp 00002000 08:11 536820 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/generator.so
7f76e735b000-7f76e735e000 r--p 0000b000 08:11 536820 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/generator.so
7f76e735e000-7f76e735f000 r--p 0000d000 08:11 536820 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/generator.so
7f76e735f000-7f76e7360000 rw-p 0000e000 08:11 536820 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/generator.so
7f76e7360000-7f76e73a0000 rw-p 00000000 00:00 0
7f76e73a3000-7f76e73a5000 r--p 00000000 08:11 536652 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/strscan.so
7f76e73a5000-7f76e73ab000 r-xp 00002000 08:11 536652 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/strscan.so
7f76e73ab000-7f76e73ad000 r--p 00008000 08:11 536652 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/strscan.so
7f76e73ad000-7f76e73ae000 r--p 00009000 08:11 536652 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/strscan.so
7f76e73ae000-7f76e73af000 rw-p 0000a000 08:11 536652 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/strscan.so
7f76e73af000-7f76e73b0000 ---p 00000000 00:00 0
7f76e73b0000-7f76e73f1000 rw-p 00000000 00:00 0
7f76e73f1000-7f76e73f2000 ---p 00000000 00:00 0
7f76e73f2000-7f76e7433000 rw-p 00000000 00:00 0
7f76e7433000-7f76e7434000 ---p 00000000 00:00 0
7f76e7434000-7f76e7475000 rw-p 00000000 00:00 0
7f76e7475000-7f76e7476000 ---p 00000000 00:00 0
7f76e7476000-7f76e74b7000 rw-p 00000000 00:00 0
7f76e74b7000-7f76e74b8000 ---p 00000000 00:00 0
7f76e74b8000-7f76e74f9000 rw-p 00000000 00:00 0
7f76e74f9000-7f76e74fa000 ---p 00000000 00:00 0
7f76e74fa000-7f76e753b000 rw-p 00000000 00:00 0
7f76e753b000-7f76e753c000 ---p 00000000 00:00 0
7f76e753c000-7f76e757d000 rw-p 00000000 00:00 0
7f76e757d000-7f76e757e000 ---p 00000000 00:00 0
7f76e757e000-7f76e75bf000 rw-p 00000000 00:00 0
7f76e75bf000-7f76e75c0000 ---p 00000000 00:00 0
7f76e75c0000-7f76e7601000 rw-p 00000000 00:00 0
7f76e7601000-7f76e7602000 ---p 00000000 00:00 0
7f76e7602000-7f76e7643000 rw-p 00000000 00:00 0
7f76e7643000-7f76e7644000 ---p 00000000 00:00 0
7f76e7644000-7f76e7685000 rw-p 00000000 00:00 0
7f76e7685000-7f76e7686000 ---p 00000000 00:00 0
7f76e7686000-7f76e76c7000 rw-p 00000000 00:00 0
7f76e76c7000-7f76e76c8000 ---p 00000000 00:00 0
7f76e76c8000-7f76e7709000 rw-p 00000000 00:00 0
7f76e7709000-7f76e770a000 ---p 00000000 00:00 0
7f76e770a000-7f76e774b000 rw-p 00000000 00:00 0
7f76e774b000-7f76e774c000 ---p 00000000 00:00 0
7f76e774c000-7f76e778d000 rw-p 00000000 00:00 0
7f76e778d000-7f76e778e000 ---p 00000000 00:00 0
7f76e778e000-7f76e77cf000 rw-p 00000000 00:00 0
7f76e77cf000-7f76e77d0000 ---p 00000000 00:00 0
7f76e77d0000-7f76e7811000 rw-p 00000000 00:00 0
7f76e7811000-7f76e7812000 ---p 00000000 00:00 0
7f76e7812000-7f76e7853000 rw-p 00000000 00:00 0
7f76e7853000-7f76e7854000 ---p 00000000 00:00 0
7f76e7854000-7f76e7895000 rw-p 00000000 00:00 0
7f76e7895000-7f76e7896000 ---p 00000000 00:00 0
7f76e7896000-7f76e78d7000 rw-p 00000000 00:00 0
7f76e78d7000-7f76e78d8000 ---p 00000000 00:00 0
7f76e78d8000-7f76e7919000 rw-p 00000000 00:00 0
7f76e7919000-7f76e791a000 ---p 00000000 00:00 0
7f76e791a000-7f76e795b000 rw-p 00000000 00:00 0
7f76e795b000-7f76e795c000 ---p 00000000 00:00 0
7f76e795c000-7f76e799d000 rw-p 00000000 00:00 0
7f76e799d000-7f76e799e000 ---p 00000000 00:00 0
7f76e799e000-7f76e79df000 rw-p 00000000 00:00 0
7f76e79df000-7f76e79e0000 ---p 00000000 00:00 0
7f76e79e0000-7f76e7a21000 rw-p 00000000 00:00 0
7f76e7a21000-7f76e7a22000 ---p 00000000 00:00 0
7f76e7a22000-7f76e7a63000 rw-p 00000000 00:00 0
7f76e7a63000-7f76e7a64000 ---p 00000000 00:00 0
7f76e7a64000-7f76e7aa5000 rw-p 00000000 00:00 0
7f76e7aa5000-7f76e7aa6000 ---p 00000000 00:00 0
7f76e7aa6000-7f76e7ae7000 rw-p 00000000 00:00 0
7f76e7ae7000-7f76e7ae8000 ---p 00000000 00:00 0
7f76e7ae8000-7f76e7b29000 rw-p 00000000 00:00 0
7f76e7b29000-7f76e7b2a000 ---p 00000000 00:00 0
7f76e7b2a000-7f76e7b6b000 rw-p 00000000 00:00 0
7f76e7b6b000-7f76e7b6c000 ---p 00000000 00:00 0
7f76e7b6c000-7f76e7bad000 rw-p 00000000 00:00 0
7f76e7bad000-7f76e7bae000 ---p 00000000 00:00 0
7f76e7bae000-7f76e7bef000 rw-p 00000000 00:00 0
7f76e7bef000-7f76e7bf0000 ---p 00000000 00:00 0
7f76e7bf0000-7f76e8bf0000 rw-p 00000000 00:00 0
7f76e8bf0000-7f7702000000 rw-p 00000000 00:00 0
7f7702000000-7f77022e9000 r--p 00000000 08:11 6193 /usr/lib/locale/locale-archive
7f77022ed000-7f77022ee000 r--p 00000000 08:11 536798 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/digest/sha2.so
7f77022ee000-7f77022f0000 r-xp 00001000 08:11 536798 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/digest/sha2.so
7f77022f0000-7f77022f1000 r--p 00003000 08:11 536798 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/digest/sha2.so
7f77022f1000-7f77022f2000 r--p 00003000 08:11 536798 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/digest/sha2.so
7f77022f2000-7f77022f3000 rw-p 00004000 08:11 536798 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/digest/sha2.so
7f77022f3000-7f77022f5000 r--p 00000000 08:11 536819 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so
7f77022f5000-7f77022fb000 r-xp 00002000 08:11 536819 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so
7f77022fb000-7f77022fd000 r--p 00008000 08:11 536819 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so
7f77022fd000-7f77022fe000 r--p 00009000 08:11 536819 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so
7f77022fe000-7f77022ff000 rw-p 0000a000 08:11 536819 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/json/ext/parser.so
7f77022ff000-7f7702400000 rw-p 00000000 00:00 0
7f7702400000-7f7702428000 r--p 00000000 08:11 5025 /usr/lib/x86_64-linux-gnu/libc.so.6
7f7702428000-7f77025bd000 r-xp 00028000 08:11 5025 /usr/lib/x86_64-linux-gnu/libc.so.6
7f77025bd000-7f7702615000 r--p 001bd000 08:11 5025 /usr/lib/x86_64-linux-gnu/libc.so.6
7f7702615000-7f7702616000 ---p 00215000 08:11 5025 /usr/lib/x86_64-linux-gnu/libc.so.6
7f7702616000-7f770261a000 r--p 00215000 08:11 5025 /usr/lib/x86_64-linux-gnu/libc.so.6
7f770261a000-7f770261c000 rw-p 00219000 08:11 5025 /usr/lib/x86_64-linux-gnu/libc.so.6
7f770261c000-7f7702629000 rw-p 00000000 00:00 0
7f770262b000-7f770262d000 r--p 00000000 08:11 536499 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/digest.so
7f770262d000-7f770262f000 r-xp 00002000 08:11 536499 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/digest.so
7f770262f000-7f7702630000 r--p 00004000 08:11 536499 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/digest.so
7f7702630000-7f7702631000 r--p 00004000 08:11 536499 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/digest.so
7f7702631000-7f7702632000 rw-p 00005000 08:11 536499 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/digest.so
7f7702632000-7f7702635000 r--p 00000000 08:11 536645 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/stringio.so
7f7702635000-7f770263c000 r-xp 00003000 08:11 536645 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/stringio.so
7f770263c000-7f770263e000 r--p 0000a000 08:11 536645 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/stringio.so
7f770263e000-7f770263f000 r--p 0000b000 08:11 536645 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/stringio.so
7f770263f000-7f7702640000 rw-p 0000c000 08:11 536645 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/stringio.so
7f7702640000-7f7702690000 rw-p 00000000 00:00 0
7f7702692000-7f7702694000 r--p 00000000 08:11 536510 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/etc.so
7f7702694000-7f7702697000 r-xp 00002000 08:11 536510 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/etc.so
7f7702697000-7f7702699000 r--p 00005000 08:11 536510 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/etc.so
7f7702699000-7f770269a000 r--p 00006000 08:11 536510 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/etc.so
7f770269a000-7f770269b000 rw-p 00007000 08:11 536510 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/etc.so
7f770269b000-7f770269c000 r--p 00000000 08:11 536549 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/monitor.so
7f770269c000-7f770269d000 r-xp 00001000 08:11 536549 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/monitor.so
7f770269d000-7f770269e000 r--p 00002000 08:11 536549 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/monitor.so
7f770269e000-7f770269f000 r--p 00002000 08:11 536549 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/monitor.so
7f770269f000-7f77026a0000 rw-p 00003000 08:11 536549 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/monitor.so
7f77026a0000-7f77026d0000 rw-p 00000000 00:00 0
7f77026d0000-7f77026d1000 r--p 00000000 08:11 536086 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/enc/trans/transdb.so
7f77026d1000-7f77026d2000 r-xp 00001000 08:11 536086 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/enc/trans/transdb.so
7f77026d2000-7f77026d3000 r--p 00002000 08:11 536086 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/enc/trans/transdb.so
7f77026d3000-7f77026d4000 r--p 00002000 08:11 536086 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/enc/trans/transdb.so
7f77026d4000-7f77026d5000 rw-p 00003000 08:11 536086 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/enc/trans/transdb.so
7f77026d5000-7f770272c000 r--p 00000000 08:11 6184 /usr/lib/locale/C.utf8/LC_CTYPE
7f770272c000-7f7702731000 rw-p 00000000 00:00 0
7f7702731000-7f7702734000 r--p 00000000 08:11 5021 /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
7f7702734000-7f770274b000 r-xp 00003000 08:11 5021 /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
7f770274b000-7f770274f000 r--p 0001a000 08:11 5021 /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
7f770274f000-7f7702750000 r--p 0001d000 08:11 5021 /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
7f7702750000-7f7702751000 rw-p 0001e000 08:11 5021 /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
7f7702751000-7f770275f000 r--p 00000000 08:11 5028 /usr/lib/x86_64-linux-gnu/libm.so.6
7f770275f000-7f77027db000 r-xp 0000e000 08:11 5028 /usr/lib/x86_64-linux-gnu/libm.so.6
7f77027db000-7f7702836000 r--p 0008a000 08:11 5028 /usr/lib/x86_64-linux-gnu/libm.so.6
7f7702836000-7f7702837000 r--p 000e4000 08:11 5028 /usr/lib/x86_64-linux-gnu/libm.so.6
7f7702837000-7f7702838000 rw-p 000e5000 08:11 5028 /usr/lib/x86_64-linux-gnu/libm.so.6
7f7702838000-7f770283a000 r--p 00000000 08:11 3628 /usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0
7f770283a000-7f770284e000 r-xp 00002000 08:11 3628 /usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0
7f770284e000-7f7702867000 r--p 00016000 08:11 3628 /usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0
7f7702867000-7f7702868000 ---p 0002f000 08:11 3628 /usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0
7f7702868000-7f7702869000 r--p 0002f000 08:11 3628 /usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0
7f7702869000-7f770286a000 rw-p 00030000 08:11 3628 /usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0
7f770286a000-7f7702872000 rw-p 00000000 00:00 0
7f7702872000-7f770287c000 r--p 00000000 08:11 3635 /usr/lib/x86_64-linux-gnu/libgmp.so.10.4.1
7f770287c000-7f77028db000 r-xp 0000a000 08:11 3635 /usr/lib/x86_64-linux-gnu/libgmp.so.10.4.1
7f77028db000-7f77028f2000 r--p 00069000 08:11 3635 /usr/lib/x86_64-linux-gnu/libgmp.so.10.4.1
7f77028f2000-7f77028f3000 r--p 0007f000 08:11 3635 /usr/lib/x86_64-linux-gnu/libgmp.so.10.4.1
7f77028f3000-7f77028f4000 rw-p 00080000 08:11 3635 /usr/lib/x86_64-linux-gnu/libgmp.so.10.4.1
7f77028f4000-7f77028f6000 r--p 00000000 08:11 3908 /usr/lib/x86_64-linux-gnu/libz.so.1.2.11
7f77028f6000-7f7702907000 r-xp 00002000 08:11 3908 /usr/lib/x86_64-linux-gnu/libz.so.1.2.11
7f7702907000-7f770290d000 r--p 00013000 08:11 3908 /usr/lib/x86_64-linux-gnu/libz.so.1.2.11
7f770290d000-7f770290e000 ---p 00019000 08:11 3908 /usr/lib/x86_64-linux-gnu/libz.so.1.2.11
7f770290e000-7f770290f000 r--p 00019000 08:11 3908 /usr/lib/x86_64-linux-gnu/libz.so.1.2.11
7f770290f000-7f7702910000 rw-p 0001a000 08:11 3908 /usr/lib/x86_64-linux-gnu/libz.so.1.2.11
7f7702910000-7f7702911000 r--p 00000000 08:11 536058 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/enc/encdb.so
7f7702911000-7f7702912000 r-xp 00001000 08:11 536058 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/enc/encdb.so
7f7702912000-7f7702913000 r--p 00002000 08:11 536058 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/enc/encdb.so
7f7702913000-7f7702914000 r--p 00002000 08:11 536058 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/enc/encdb.so
7f7702914000-7f7702915000 rw-p 00003000 08:11 536058 /home/runner/work/ruby/ruby/build/.ext/x86_64-linux/enc/encdb.so
7f7702915000-7f770291c000 r--s 00000000 08:11 3901 /usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache
7f770291c000-7f770291e000 rw-p 00000000 00:00 0
7f770291e000-7f7702920000 r--p 00000000 08:11 5019 /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2
7f7702920000-7f770294a000 r-xp 00002000 08:11 5019 /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2
7f770294a000-7f7702955000 r--p 0002c000 08:11 5019 /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2
7f7702956000-7f7702958000 r--p 00037000 08:11 5019 /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2
7f7702958000-7f770295a000 rw-p 00039000 08:11 5019 /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2
7fff586fd000-7fff58720000 rw-p 00000000 00:00 0 [stack]
7fff5873e000-7fff58742000 r--p 00000000 00:00 0 [vvar]
7fff58742000-7fff58744000 r-xp 00000000 00:00 0 [vdso]
ffffffffff600000-ffffffffff601000 --xp 00000000 00:00 0 [vsyscall]
Aborted (core dumped)
```
--
https://bugs.ruby-lang.org/
2
2
[ruby-core:122665] [Ruby Bug#21503] \p{Word} does not match on \p{Join_Control} while docs say it does
by procmarco (Marco Concetto Rudilosso) 27 Aug '25
by procmarco (Marco Concetto Rudilosso) 27 Aug '25
27 Aug '25
Issue #21503 has been reported by procmarco (Marco Concetto Rudilosso).
----------------------------------------
Bug #21503: \p{Word} does not match on \p{Join_Control} while docs say it does
https://bugs.ruby-lang.org/issues/21503
* Author: procmarco (Marco Concetto Rudilosso)
* Status: Open
* ruby -v: 3.4.4
* Backport: 3.2: UNKNOWN, 3.3: UNKNOWN, 3.4: UNKNOWN
----------------------------------------
in the [docs](https://ruby-doc.org/3.4.1/Regexp.html#:~:text=/%5Cp%7B-,Word,-%7D/%3… it is mentioned that `\p{Word}` matches the equivalent of: `[\p{M}\p{Nd}\p{Pc}\p{Alpha}\p{Join_Control}]` as it's also defined in the [unicode spec](https://unicode.org/reports/tr18/#word)
the issue is that it does not seem to be the case
```
irb(main):018> REGEX = /\p{Word}/u
=> /\p{Word}/
irb(main):019> "\u200D".gsub(REGEX, "-")
=> ""
irb(main):020> REGEX2 = /\p{Join_Control}/u
=> /\p{Join_Control}/
irb(main):021> "\u200D".gsub(REGEX2, "-")
=> "-"
```
There's 2 solutions here, either we change the docs or the code.
--
https://bugs.ruby-lang.org/
6
7