From 84ee71df4540c9c13854c86d6b30bf8f385780c8 Mon Sep 17 00:00:00 2001 From: Alan Wu Date: Thu, 31 Jul 2025 15:30:46 -0400 Subject: [PATCH] Print shape id when a flaky shapes assert fails This has been failing intermittently during `test_marshal_with_ivar_and_id` for ZJIT and YJIT builds. https://github.com/ruby/ruby/actions/runs/16655987271/job/47140970602 https://github.com/ruby/ruby/actions/runs/16656119252/job/47141409113 --- variable.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/variable.c b/variable.c index 2bd9b3de49..831f5eec8f 100644 --- a/variable.c +++ b/variable.c @@ -1774,7 +1774,7 @@ general_ivar_set(VALUE obj, ID id, VALUE val, void *data, shape_resize_fields_func(obj, RSHAPE_CAPACITY(current_shape_id), RSHAPE_CAPACITY(next_shape_id), data); } - RUBY_ASSERT(RSHAPE_TYPE_P(next_shape_id, SHAPE_IVAR)); + RUBY_ASSERT(RSHAPE_TYPE_P(next_shape_id, SHAPE_IVAR), "next_shape_id: 0x%" PRIx32, next_shape_id); RUBY_ASSERT(index == (RSHAPE_INDEX(next_shape_id))); set_shape_id_func(obj, next_shape_id, data); }