Actions
Feature #21269
closedOpt in to raise for modification of chilled strings returned from `Symbol#to_s`
Status:
Rejected
Assignee:
-
Target version:
-
Description
Ref https://bugs.ruby-lang.org/issues/20350
begin
:foo.to_s << "bar"
puts "ok sym"
rescue
puts "fail sym"
end
begin
"foo" << "bar"
puts "ok str"
rescue
puts "failed str"
end
Output with RUBYOPT="--enable=frozen-string-literal -W"
:
test.rb:2: warning: string returned by :foo.to_s will be frozen in the future
ok sym
failed str
--enable=frozen-string-literal
does something for string literals, I would like the same for Symbol#to_s
. I would suggest simply reusing --enable=frozen-string-literal
but its name seems very clear about being about string literals, which doesn't really fit for what's going on with symbols here.
For convenience, it would be very nice to have just a single switch for this though.
Actions
Like0
Like0Like0Like0