diff options
author | Jean Boussier <[email protected]> | 2025-06-13 15:49:17 +0200 |
---|---|---|
committer | Jean Boussier <[email protected]> | 2025-06-13 23:50:30 +0200 |
commit | 6dbe24fe5641e5c86638ff5c5d9fe08ea31d196d (patch) | |
tree | bb982fdb111a536a47bfa4d9eb3bfa059e33ae2e /object.c | |
parent | b51078f82ee35d532dfd5b6981733f757d410d79 (diff) |
Use the `shape_id` rather than `FL_EXIVAR`
We still keep setting `FL_EXIVAR` so that `rb_shape_verify_consistency`
can detect discrepancies.
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/13612
Diffstat (limited to 'object.c')
-rw-r--r-- | object.c | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -373,9 +373,9 @@ init_copy(VALUE dest, VALUE obj) if (OBJ_FROZEN(dest)) { rb_raise(rb_eTypeError, "[bug] frozen object (%s) allocated", rb_obj_classname(dest)); } - RBASIC(dest)->flags &= ~(T_MASK|FL_EXIVAR); + RBASIC(dest)->flags &= ~T_MASK; // Copies the shape id from obj to dest - RBASIC(dest)->flags |= RBASIC(obj)->flags & (T_MASK|FL_EXIVAR); + RBASIC(dest)->flags |= RBASIC(obj)->flags & T_MASK; switch (BUILTIN_TYPE(obj)) { case T_IMEMO: rb_bug("Unreacheable"); |