summaryrefslogtreecommitdiff
path: root/include/ruby/internal/static_assert.h
diff options
context:
space:
mode:
authorJean Boussier <jean.boussier@gmail.com>2025-08-07 14:38:19 +0200
committerJean Boussier <jean.boussier@gmail.com>2025-08-07 21:00:00 +0200
commit846b5eec57ad2c030b7136d89193215055529c4a (patch)
tree6b81002c803ff90559bbccc8e0f7ae6164ae6ed8 /include/ruby/internal/static_assert.h
parenta260bbc550adf2a685e40ea492334a1d1f3a0222 (diff)
Convert `marshal_compat_table` to use `rb_gc_mark_and_move`
The `p->field = rb_gc_location(p->field)` isn't ideal because it means all references are rewritten on compaction, regardless of whether the referenced object has moved. This isn't good for caches nor for Copy-on-Write. `rb_gc_mark_and_move` avoid needless writes, and most of the time allow to have a single function for both marking and updating references.
Diffstat (limited to 'include/ruby/internal/static_assert.h')
0 files changed, 0 insertions, 0 deletions