Project

General

Profile

Actions

Bug #21159

closed

`Module#set_temporary_name` should freeze given name

Added by ko1 (Koichi Sasada) about 19 hours ago. Updated about 12 hours ago.

Status:
Closed
Assignee:
-
Target version:
-
[ruby-core:121183]

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.

Actions

Also available in: Atom PDF

Like0
Like0Like0