[#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:118295] [Ruby master Bug#20569] Instruction sequence generated from `shareable_constant_value: literal` files may not be serialized to binary
From:
"k0kubun (Takashi Kokubun) via ruby-core" <ruby-core@...>
Date:
2024-06-11 18:08:55 UTC
List:
ruby-core #118295
Issue #20569 has been updated by k0kubun (Takashi Kokubun).
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 commit:8951040aadca57fce633b0f714248de78a962c22.
----------------------------------------
Bug #20569: Instruction sequence generated from `shareable_constant_value: literal` files may not be serialized to binary
https://bugs.ruby-lang.org/issues/20569#change-108800
* Author: byroot (Jean Boussier)
* Status: Closed
* Assignee: ko1 (Koichi Sasada)
* Backport: 3.1: WONTFIX, 3.2: REQUIRED, 3.3: DONE
----------------------------------------
```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/