# Logfile created on 2024-07-03 13:17:23 +0000 by logger.rb/v1.5.3 #<BuildRuby:0x00007fde15c6fde0 @REPOSITORY="https://github.com/ruby/ruby.git", @REPOSITORY_TYPE=:git, @git_branch=nil, @git_worktree=nil, @svn_revision=nil, @SRC_DIR="/tmp/ruby/src", @BUILD_DIR="/tmp/ruby/build", @INSTALL_DIR="/tmp/ruby/install", @TARGET_NAME="trunk-gc-asserts", @TARGET_SRC_DIR="/tmp/ruby/src/trunk-gc-asserts", @TARGET_BUILD_DIR="/tmp/ruby/build/trunk-gc-asserts", @TARGET_INSTALL_DIR="/tmp/ruby/install/trunk-gc-asserts", @configure_opts=["--enable-shared"], @build_opts="DEFS=\"-DRGENGC_CHECK_MODE=2\"", @btest_opts="-j4", @test_opts="TESTS='-j4'", @spec_opts="-j", @incremental=true, @steps=["checkout", "autoconf", "configure", "build_up", "build_miniruby", "build_ruby", "build_all", "build_install", "test_btest", "test_basic", "test_all", "test_rubyspec"], @quiet=false, @gist=false, @timeout=21600, @logfile="/home/ko1/ruby/logs/brlog.trunk-gc-asserts.20240703-131722", @ruby_env=[["RUBY_DEBUG", "ci"], ["RUBY_TEST_TIMEOUT_SCALE", "50"]], @make="make", @logger=#<Logger:0x00007fde15c90ef0 @level=0, @progname=nil, @default_formatter=#<Logger::Formatter:0x00007fde15c90db0 @datetime_format=nil>, @formatter=nil, @logdev=#<Logger::LogDevice:0x00007fde15baa478 @shift_period_suffix="%Y%m%d", @shift_size=1048576, @shift_age=0, @filename="/home/ko1/ruby/logs/brlog.trunk-gc-asserts.20240703-131722", @dev=#<File:/home/ko1/ruby/logs/brlog.trunk-gc-asserts.20240703-131722>, @binmode=false, @mon_data=#<Monitor:0x00007fde15c90950>, @mon_data_owner_object_id=860>>> $$$[beg] make update-download DEFS="-DRGENGC_CHECK_MODE=2" tool/config.guess already exists tool/config.sub already exists Update power_assert to 84e85124c5014a139af39161d484156cfe87a9ed echo 84e85124c5014a139af39161d484156cfe87a9ed | /bin/sh /tmp/ruby/src/trunk-gc-asserts/tool/ifchange /tmp/ruby/src/trunk-gc-asserts/.bundle/.timestamp/power_assert.revision - /tmp/ruby/src/trunk-gc-asserts/.bundle/.timestamp/power_assert.revision unchanged Building power_assert@84e85124c5014a139af39161d484156cfe87a9ed to /tmp/ruby/src/trunk-gc-asserts/gems/power_assert-2.0.3.gem Successfully built RubyGem Name: power_assert Version: 2.0.4dev File: power_assert-2.0.4dev.gem Update rbs to 97e12999b14dc36e374ed30a03fca58af62dfd90 echo 97e12999b14dc36e374ed30a03fca58af62dfd90 | /bin/sh /tmp/ruby/src/trunk-gc-asserts/tool/ifchange /tmp/ruby/src/trunk-gc-asserts/.bundle/.timestamp/rbs.revision - /tmp/ruby/src/trunk-gc-asserts/.bundle/.timestamp/rbs.revision unchanged Update typeprof to b19a6416da3a05d57fadd6ffdadb382b6d236ca5 echo b19a6416da3a05d57fadd6ffdadb382b6d236ca5 | /bin/sh /tmp/ruby/src/trunk-gc-asserts/tool/ifchange /tmp/ruby/src/trunk-gc-asserts/.bundle/.timestamp/typeprof.revision - /tmp/ruby/src/trunk-gc-asserts/.bundle/.timestamp/typeprof.revision unchanged $$$[end] "make update-download DEFS=\"-DRGENGC_CHECK_MODE=2\"" exit with 0. $$$[beg] make update-src DEFS="-DRGENGC_CHECK_MODE=2" From https://github.com/ruby/ruby 9aa62bd..5f20957 master -> origin/master Updating 9aa62bd..5f20957 Fast-forward .github/workflows/compilers.yml | 13 + common.mk | 183 + eval.c | 2 +- ext/objspace/objspace.c | 6 +- gc.c | 15266 ++++++++------------------------------ gc.rb | 27 +- gc_impl.c | 9818 ++++++++++++++++++++++++ imemo.c | 4 +- internal/gc.h | 34 +- main.c | 5 +- ractor.c | 21 +- ractor_core.h | 11 +- test/objspace/test_objspace.rb | 2 +- test/ruby/test_gc.rb | 4 +- vm_core.h | 8 +- vm_insnhelper.c | 2 - yjit.c | 2 +- 17 files changed, 13158 insertions(+), 12250 deletions(-) create mode 100644 gc_impl.c Latest commit hash = 5f20957b85 $$$[end] "make update-src DEFS=\"-DRGENGC_CHECK_MODE=2\"" exit with 0. $$$[beg] make after-update DEFS="-DRGENGC_CHECK_MODE=2" sed 's/{\$([^(){}]*)[^{}]*}//g' /tmp/ruby/src/trunk-gc-asserts/common.mk > uncommon.mk /tmp/ruby/src/trunk-gc-asserts/revision.h updated making /tmp/ruby/src/trunk-gc-asserts/gc.rbinc generating miniprelude.c miniprelude.c updated /bin/sh /tmp/ruby/src/trunk-gc-asserts/tool/ifchange "--timestamp=.rbconfig.time" rbconfig.rb rbconfig.tmp rbconfig.rb unchanged generating x86_64-linux-fake.rb x86_64-linux-fake.rb updated generating enc.mk making srcs under enc make[1]: Entering directory '/tmp/ruby/build/trunk-gc-asserts' make[1]: Nothing to be done for 'srcs'. make[1]: Leaving directory '/tmp/ruby/build/trunk-gc-asserts' Update power_assert to 84e85124c5014a139af39161d484156cfe87a9ed echo 84e85124c5014a139af39161d484156cfe87a9ed | /bin/sh /tmp/ruby/src/trunk-gc-asserts/tool/ifchange /tmp/ruby/src/trunk-gc-asserts/.bundle/.timestamp/power_assert.revision - /tmp/ruby/src/trunk-gc-asserts/.bundle/.timestamp/power_assert.revision unchanged Building power_assert@84e85124c5014a139af39161d484156cfe87a9ed to /tmp/ruby/src/trunk-gc-asserts/gems/power_assert-2.0.3.gem Successfully built RubyGem Name: power_assert Version: 2.0.4dev File: power_assert-2.0.4dev.gem Update rbs to 97e12999b14dc36e374ed30a03fca58af62dfd90 echo 97e12999b14dc36e374ed30a03fca58af62dfd90 | /bin/sh /tmp/ruby/src/trunk-gc-asserts/tool/ifchange /tmp/ruby/src/trunk-gc-asserts/.bundle/.timestamp/rbs.revision - /tmp/ruby/src/trunk-gc-asserts/.bundle/.timestamp/rbs.revision unchanged Update typeprof to b19a6416da3a05d57fadd6ffdadb382b6d236ca5 echo b19a6416da3a05d57fadd6ffdadb382b6d236ca5 | /bin/sh /tmp/ruby/src/trunk-gc-asserts/tool/ifchange /tmp/ruby/src/trunk-gc-asserts/.bundle/.timestamp/typeprof.revision - /tmp/ruby/src/trunk-gc-asserts/.bundle/.timestamp/typeprof.revision unchanged Extracting bundle gem power_assert-2.0.3... Try with hash version of bundled gems instead of gems/power_assert-2.0.3.gem. We don't use this gem with release version of Ruby. Unpacked gems/power_assert-2.0.4dev.gem $$$[end] "make after-update DEFS=\"-DRGENGC_CHECK_MODE=2\"" exit with 0. $$$[beg] make miniruby DEFS="-DRGENGC_CHECK_MODE=2" BASERUBY = /usr/bin/ruby --disable=gems CC = gcc LD = ld LDSHARED = gcc -shared CFLAGS = -fstack-protector-strong -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdiv-by-zero -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wpointer-arith -Wwrite-strings -Wold-style-definition -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -Wmisleading-indentation -Wundef -fPIC XCFLAGS = -fno-strict-overflow -fvisibility=hidden -fexcess-precision=standard -DRUBY_EXPORT -I. -I.ext/include/x86_64-linux -I/tmp/ruby/src/trunk-gc-asserts/include -I/tmp/ruby/src/trunk-gc-asserts -I/tmp/ruby/src/trunk-gc-asserts/prism -I/tmp/ruby/src/trunk-gc-asserts/enc/unicode/15.0.0 CPPFLAGS = -DRGENGC_CHECK_MODE=2 DLDFLAGS = -Wl,--compress-debug-sections=zlib -Wl,-soname,libruby.so.3.4 -fstack-protector-strong SOLIBS = -lz -lrt -lrt -lgmp -ldl -lcrypt -lm -lpthread LANG = C.UTF-8 LC_ALL = LC_CTYPE = MFLAGS = RUSTC = rustc YJIT_RUSTC_ARGS = --crate-name=yjit --crate-type=staticlib --edition=2021 -g -C lto=thin -C opt-level=3 -C overflow-checks=on '--out-dir=/tmp/ruby/build/trunk-gc-asserts/yjit/target/release/' /tmp/ruby/src/trunk-gc-asserts/yjit/src/lib.rs gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0 Copyright (C) 2023 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. compiling /tmp/ruby/src/trunk-gc-asserts/main.c compiling /tmp/ruby/src/trunk-gc-asserts/miniinit.c compiling /tmp/ruby/src/trunk-gc-asserts/array.c compiling /tmp/ruby/src/trunk-gc-asserts/ast.c compiling /tmp/ruby/src/trunk-gc-asserts/bignum.c compiling /tmp/ruby/src/trunk-gc-asserts/class.c compiling /tmp/ruby/src/trunk-gc-asserts/compile.c compiling /tmp/ruby/src/trunk-gc-asserts/complex.c compiling /tmp/ruby/src/trunk-gc-asserts/cont.c compiling /tmp/ruby/src/trunk-gc-asserts/debug.c compiling /tmp/ruby/src/trunk-gc-asserts/dir.c compiling /tmp/ruby/src/trunk-gc-asserts/encoding.c compiling /tmp/ruby/src/trunk-gc-asserts/enum.c compiling /tmp/ruby/src/trunk-gc-asserts/enumerator.c compiling /tmp/ruby/src/trunk-gc-asserts/error.c compiling /tmp/ruby/src/trunk-gc-asserts/eval.c compiling /tmp/ruby/src/trunk-gc-asserts/file.c compiling /tmp/ruby/src/trunk-gc-asserts/gc.c /tmp/ruby/src/trunk-gc-asserts/gc.c: In function ‘gc_raw_obj_info_basic’: /tmp/ruby/src/trunk-gc-asserts/gc.c:4183:22: warning: initialization of ‘size_t’ {aka ‘long unsigned int’} from ‘const char *’ makes integer from pointer without a cast [-Wint-conversion] 4183 | size_t pos = rb_raw_obj_info(buff, buff_size, obj); | ^~~~~~~~~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc.c: At top level: /tmp/ruby/src/trunk-gc-asserts/gc.c:4191:1: warning: ‘obj_info_basic’ defined but not used [-Wunused-function] 4191 | obj_info_basic(VALUE obj) | ^~~~~~~~~~~~~~ cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics compiling /tmp/ruby/src/trunk-gc-asserts/gc_impl.c /tmp/ruby/src/trunk-gc-asserts/gc_impl.c: In function ‘newobj_init’: /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:2355:5: error: ‘p’ undeclared (first use in this function) 2355 | p->as.values.v1 = p->as.values.v2 = p->as.values.v3 = 0; | ^ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:2355:5: note: each undeclared identifier is reported only once for each function it appears in In file included from /tmp/ruby/src/trunk-gc-asserts/include/ruby/defines.h:72, from /tmp/ruby/src/trunk-gc-asserts/include/ruby/ruby.h:25, from /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:15: /tmp/ruby/src/trunk-gc-asserts/gc_impl.c: In function ‘ractor_cache_allocate_slot’: /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:2454:19: warning: implicit declaration of function ‘rb_gc_obj_slot_size’; did you mean ‘rb_gc_impl_obj_slot_size’? [-Wimplicit-function-declaration] 2454 | GC_ASSERT(rb_gc_obj_slot_size(obj) == stride); | ^~~~~~~~~~~~~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/include/ruby/backward/2/assume.h:43:46: note: in definition of macro ‘RB_LIKELY’ 43 | # define RB_LIKELY(x) (__builtin_expect(!!(x), 1)) | ^ /tmp/ruby/src/trunk-gc-asserts/include/ruby/assert.h:263:15: note: in expansion of macro ‘RUBY_ASSERT_MESG’ 263 | ((cond) ? RUBY_ASSERT_MESG((expr), __VA_ARGS__) : RBIMPL_ASSERT_NOTHING) | ^~~~~~~~~~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:284:25: note: in expansion of macro ‘RUBY_ASSERT_MESG_WHEN’ 284 | #define GC_ASSERT(expr) RUBY_ASSERT_MESG_WHEN(RGENGC_CHECK_MODE > 0, expr, #expr) | ^~~~~~~~~~~~~~~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:2454:9: note: in expansion of macro ‘GC_ASSERT’ 2454 | GC_ASSERT(rb_gc_obj_slot_size(obj) == stride); | ^~~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:2454:44: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 2454 | GC_ASSERT(rb_gc_obj_slot_size(obj) == stride); | ^~ /tmp/ruby/src/trunk-gc-asserts/include/ruby/backward/2/assume.h:43:46: note: in definition of macro ‘RB_LIKELY’ 43 | # define RB_LIKELY(x) (__builtin_expect(!!(x), 1)) | ^ /tmp/ruby/src/trunk-gc-asserts/include/ruby/assert.h:263:15: note: in expansion of macro ‘RUBY_ASSERT_MESG’ 263 | ((cond) ? RUBY_ASSERT_MESG((expr), __VA_ARGS__) : RBIMPL_ASSERT_NOTHING) | ^~~~~~~~~~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:284:25: note: in expansion of macro ‘RUBY_ASSERT_MESG_WHEN’ 284 | #define GC_ASSERT(expr) RUBY_ASSERT_MESG_WHEN(RGENGC_CHECK_MODE > 0, expr, #expr) | ^~~~~~~~~~~~~~~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:2454:9: note: in expansion of macro ‘GC_ASSERT’ 2454 | GC_ASSERT(rb_gc_obj_slot_size(obj) == stride); | ^~~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c: In function ‘gc_sweep_plane’: /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:3697:38: warning: passing argument 1 of ‘RVALUE_OLD_P’ makes pointer from integer without a cast [-Wint-conversion] 3697 | if (RVALUE_OLD_P(vp)) rb_bug("page_sweep: %p - old while minor GC.", (void *)p); | ^~ | | | VALUE {aka long unsigned int} /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:1452:29: note: expected ‘rb_objspace_t *’ {aka ‘struct rb_objspace *’} but argument is of type ‘VALUE’ {aka ‘long unsigned int’} 1452 | RVALUE_OLD_P(rb_objspace_t *objspace, VALUE obj) | ~~~~~~~~~~~~~~~^~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:3697:25: error: too few arguments to function ‘RVALUE_OLD_P’ 3697 | if (RVALUE_OLD_P(vp)) rb_bug("page_sweep: %p - old while minor GC.", (void *)p); | ^~~~~~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:1452:1: note: declared here 1452 | RVALUE_OLD_P(rb_objspace_t *objspace, VALUE obj) | ^~~~~~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:3698:43: warning: passing argument 1 of ‘RVALUE_REMEMBERED’ makes pointer from integer without a cast [-Wint-conversion] 3698 | if (RVALUE_REMEMBERED(vp)) rb_bug("page_sweep: %p - remembered.", (void *)p); | ^~ | | | VALUE {aka long unsigned int} /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:1289:34: note: expected ‘rb_objspace_t *’ {aka ‘struct rb_objspace *’} but argument is of type ‘VALUE’ {aka ‘long unsigned int’} 1289 | RVALUE_REMEMBERED(rb_objspace_t *objspace, VALUE obj) | ~~~~~~~~~~~~~~~^~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:3698:25: error: too few arguments to function ‘RVALUE_REMEMBERED’ 3698 | if (RVALUE_REMEMBERED(vp)) rb_bug("page_sweep: %p - remembered.", (void *)p); | ^~~~~~~~~~~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:1289:1: note: declared here 1289 | RVALUE_REMEMBERED(rb_objspace_t *objspace, VALUE obj) | ^~~~~~~~~~~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:3705:24: error: ‘obj’ undeclared (first use in this function) 3705 | #define CHECK(x) if (x(obj) != FALSE) rb_bug("obj_free: " #x "(%s) != FALSE", rb_obj_info(obj)) | ^~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:3706:17: note: in expansion of macro ‘CHECK’ 3706 | CHECK(RVALUE_WB_UNPROTECTED); | ^~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:3706:23: error: too few arguments to function ‘RVALUE_WB_UNPROTECTED’ 3706 | CHECK(RVALUE_WB_UNPROTECTED); | ^~~~~~~~~~~~~~~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:3705:22: note: in definition of macro ‘CHECK’ 3705 | #define CHECK(x) if (x(obj) != FALSE) rb_bug("obj_free: " #x "(%s) != FALSE", rb_obj_info(obj)) | ^ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:1275:1: note: declared here 1275 | RVALUE_WB_UNPROTECTED(rb_objspace_t *objspace, VALUE obj) | ^~~~~~~~~~~~~~~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:3707:23: error: too few arguments to function ‘RVALUE_MARKED’ 3707 | CHECK(RVALUE_MARKED); | ^~~~~~~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:3705:22: note: in definition of macro ‘CHECK’ 3705 | #define CHECK(x) if (x(obj) != FALSE) rb_bug("obj_free: " #x "(%s) != FALSE", rb_obj_info(obj)) | ^ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:1261:1: note: declared here 1261 | RVALUE_MARKED(rb_objspace_t *objspace, VALUE obj) | ^~~~~~~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:3708:23: error: too few arguments to function ‘RVALUE_MARKING’ 3708 | CHECK(RVALUE_MARKING); | ^~~~~~~~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:3705:22: note: in definition of macro ‘CHECK’ 3705 | #define CHECK(x) if (x(obj) != FALSE) rb_bug("obj_free: " #x "(%s) != FALSE", rb_obj_info(obj)) | ^ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:1282:1: note: declared here 1282 | RVALUE_MARKING(rb_objspace_t *objspace, VALUE obj) | ^~~~~~~~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:3709:23: error: too few arguments to function ‘RVALUE_UNCOLLECTIBLE’ 3709 | CHECK(RVALUE_UNCOLLECTIBLE); | ^~~~~~~~~~~~~~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:3705:22: note: in definition of macro ‘CHECK’ 3705 | #define CHECK(x) if (x(obj) != FALSE) rb_bug("obj_free: " #x "(%s) != FALSE", rb_obj_info(obj)) | ^ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:1296:1: note: declared here 1296 | RVALUE_UNCOLLECTIBLE(rb_objspace_t *objspace, VALUE obj) | ^~~~~~~~~~~~~~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c: In function ‘gc_grey’: /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:4606:23: warning: passing argument 1 of ‘RVALUE_MARKED’ makes pointer from integer without a cast [-Wint-conversion] 4606 | if (RVALUE_MARKED(obj) == FALSE) rb_bug("gc_grey: %s is not marked.", rb_obj_info(obj)); | ^~~ | | | VALUE {aka long unsigned int} /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:1261:30: note: expected ‘rb_objspace_t *’ {aka ‘struct rb_objspace *’} but argument is of type ‘VALUE’ {aka ‘long unsigned int’} 1261 | RVALUE_MARKED(rb_objspace_t *objspace, VALUE obj) | ~~~~~~~~~~~~~~~^~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:4606:9: error: too few arguments to function ‘RVALUE_MARKED’ 4606 | if (RVALUE_MARKED(obj) == FALSE) rb_bug("gc_grey: %s is not marked.", rb_obj_info(obj)); | ^~~~~~~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:1261:1: note: declared here 1261 | RVALUE_MARKED(rb_objspace_t *objspace, VALUE obj) | ^~~~~~~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:4607:24: warning: passing argument 1 of ‘RVALUE_MARKING’ makes pointer from integer without a cast [-Wint-conversion] 4607 | if (RVALUE_MARKING(obj) == TRUE) rb_bug("gc_grey: %s is marking/remembered.", rb_obj_info(obj)); | ^~~ | | | VALUE {aka long unsigned int} /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:1282:31: note: expected ‘rb_objspace_t *’ {aka ‘struct rb_objspace *’} but argument is of type ‘VALUE’ {aka ‘long unsigned int’} 1282 | RVALUE_MARKING(rb_objspace_t *objspace, VALUE obj) | ~~~~~~~~~~~~~~~^~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:4607:9: error: too few arguments to function ‘RVALUE_MARKING’ 4607 | if (RVALUE_MARKING(obj) == TRUE) rb_bug("gc_grey: %s is marking/remembered.", rb_obj_info(obj)); | ^~~~~~~~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:1282:1: note: declared here 1282 | RVALUE_MARKING(rb_objspace_t *objspace, VALUE obj) | ^~~~~~~~~~~~~~ /tmp/ruby/src/trunk-gc-asserts/gc_impl.c: In function ‘gc_set_auto_compact’: /tmp/ruby/src/trunk-gc-asserts/gc_impl.c:9306:18: error: ‘val’ undeclared (first use in this function) 9306 | if (SYMBOL_P(val)) { | ^~~ At top level: cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics make: *** [Makefile:448: gc_impl.o] Error 1 $$$[end] "make miniruby DEFS=\"-DRGENGC_CHECK_MODE=2\"" exit with 512.