aboutsummaryrefslogtreecommitdiffstats
path: root/gc.c
diff options
context:
space:
mode:
authorPeter Zhu <peter@peterzhu.ca>2024-03-12 14:34:17 -0400
committerPeter Zhu <peter@peterzhu.ca>2024-03-13 09:55:52 -0400
commit3896f9940e7f663dd4db8162c071d72e2539addf (patch)
tree0fe380931280db7693778a067750d0f093ee2cb2 /gc.c
parent6b0434c0f721a62d617b26986565985598c7b8c9 (diff)
downloadruby-3896f9940e7f663dd4db8162c071d72e2539addf.tar.gz
Make special const and too complex shapes before T_OBJECT shapes
Diffstat (limited to 'gc.c')
-rw-r--r--gc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gc.c b/gc.c
index 0d35e6fe88..6481f3ae8f 100644
--- a/gc.c
+++ b/gc.c
@@ -8119,7 +8119,7 @@ gc_compact_move(rb_objspace_t *objspace, rb_heap_t *heap, rb_size_pool_t *size_p
if (RB_TYPE_P(src, T_OBJECT)) {
orig_shape = rb_shape_get_shape(src);
if (dheap != heap && !rb_shape_obj_too_complex(src)) {
- rb_shape_t *initial_shape = rb_shape_get_shape_by_id((shape_id_t)((dest_pool - size_pools) + SIZE_POOL_COUNT));
+ rb_shape_t *initial_shape = rb_shape_get_shape_by_id((shape_id_t)((dest_pool - size_pools) + FIRST_T_OBJECT_SHAPE_ID));
new_shape = rb_shape_traverse_from_new_root(initial_shape, orig_shape);
if (!new_shape) {