Actions
Bug #20569
closedInstruction sequence generated from `shareable_constant_value: literal` files may not be serialized to binary
Description
iseq = RubyVM::InstructionSequence.compile(<<~'RUBY')
# shareable_constant_value: literal
REGEXP = /#{}/
RUBY
iseq.to_binary
in `to_binary': ibf_dump_object_unsupported: 0x00000001026ac8b0 [3LM ] T_ICLASS (NotImplementedError)
The reason is that the ISeq contains putobject RubyVM::FrozenCore
so compile.c
need some special handling of that hidden class.
Proposed patch: https://github.com/ruby/ruby/pull/10951
Updated by byroot (Jean Boussier) 5 months ago
- Status changed from Open to Closed
Applied in changeset git|f0001a4fa7260d0c39e9ddba162f51c549cba2f8.
compile.c: use putspecialobject for RubyVM::FrozenCore
[Bug #20569]
putobject RubyVM::FrozenCore
, is not serializable, we
have to use putspecialobject VM_SPECIAL_OBJECT_VMCORE
.
Updated by byroot (Jean Boussier) 5 months ago
I created backport PRs:
Updated by k0kubun (Takashi Kokubun) 5 months ago
- Backport changed from 3.1: WONTFIX, 3.2: REQUIRED, 3.3: REQUIRED to 3.1: WONTFIX, 3.2: REQUIRED, 3.3: DONE
ruby_3_3 8951040aadca57fce633b0f714248de78a962c22.
Updated by nagachika (Tomoyuki Chikanaga) 5 months ago
- Backport changed from 3.1: WONTFIX, 3.2: REQUIRED, 3.3: DONE to 3.1: WONTFIX, 3.2: DONE, 3.3: DONE
ruby_3_2 e0e1a0f502fe57e7e7e8cf643b8f141b4582d62d.
Actions
Like0
Like0Like0Like0Like0