Actions
Bug #21159
closed`Module#set_temporary_name` should freeze given name
Description
I think it is preferable to freeze the name.
So #set_temporary_name
should copy and freeze the name string.
c = Class.new.set_temporary_name(str = +'<c>')
p c #=> <c>
str.upcase!
p c #=> actual: <C>
#=> expected: <c>
p c.name.frozen?
#=> actual: false
#=> expected: true
From the Ractor's aspect, shareable modules should refer only immutable string.
Updated by nobu (Nobuyoshi Nakada) about 1 month ago
- Backport changed from 3.1: UNKNOWN, 3.2: UNKNOWN, 3.3: UNKNOWN, 3.4: UNKNOWN to 3.1: DONTNEED, 3.2: DONTNEED, 3.3: REQUIRED, 3.4: REQUIRED
Updated by nobu (Nobuyoshi Nakada) about 1 month ago
- Status changed from Open to Closed
Applied in changeset git|931ac960b6d11937364b6c4e847fdd575ee67980.
[Bug #21159] module names should not be modifiable
Updated by ufuk (Ufuk Kayserilioglu) 28 days ago
- Backport changed from 3.1: DONTNEED, 3.2: DONTNEED, 3.3: REQUIRED, 3.4: REQUIRED to 3.1: DONTNEED, 3.2: DONTNEED, 3.3: REQUIRED, 3.4: DONE
ruby_3_4 ddb73fbd115631e6dec3bdd230c1cfc13027602e.
Updated by nagachika (Tomoyuki Chikanaga) 16 days ago
- Backport changed from 3.1: DONTNEED, 3.2: DONTNEED, 3.3: REQUIRED, 3.4: DONE to 3.1: DONTNEED, 3.2: DONTNEED, 3.3: DONE, 3.4: DONE
ruby_3_3 1d3c19871d7a0d05a0f0a80e78cfad843b7ef324 merged revision(s) 931ac960b6d11937364b6c4e847fdd575ee67980.
Actions
Like0
Like0Like0Like0Like0