[#118346] [Ruby master Bug#20586] Some filesystem calls in dir.c are missing error handling and can return incorrect results if interrupted — "ivoanjo (Ivo Anjo) via ruby-core" <ruby-core@...>
Issue #20586 has been reported by ivoanjo (Ivo Anjo).
13 messages
2024/06/19
[ruby-core:118268] [Ruby master Bug#20569] Instruction sequence generated from `shareable_constant_value: literal` files may not be serialized to binary
From:
"byroot (Jean Boussier) via ruby-core" <ruby-core@...>
Date:
2024-06-10 13:19:43 UTC
List:
ruby-core #118268
Issue #20569 has been reported by byroot (Jean Boussier).
----------------------------------------
Bug #20569: Instruction sequence generated from `shareable_constant_value: literal` files may not be serialized to binary
https://bugs.ruby-lang.org/issues/20569
* Author: byroot (Jean Boussier)
* Status: Open
* Assignee: ko1 (Koichi Sasada)
* Backport: 3.1: WONTFIX, 3.2: REQUIRED, 3.3: REQUIRED
----------------------------------------
```ruby
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
--
https://bugs.ruby-lang.org/