Skip to content

Commit bb0cee8

Browse files
committed
Implement MUTABLE_STRINGS
1 parent c8355a8 commit bb0cee8

File tree

2 files changed

+8
-4
lines changed

2 files changed

+8
-4
lines changed

parse.y

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9692,6 +9692,10 @@ parser_set_token_info(struct parser_params *p, const char *name, const char *val
96929692
static void
96939693
parser_set_frozen_string_literal(struct parser_params *p, const char *name, const char *val)
96949694
{
9695+
if (getenv("MUTABLE_STRINGS")) {
9696+
return;
9697+
}
9698+
96959699
int b;
96969700

96979701
if (p->token_seen) {

template/fake.rb.in

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -43,12 +43,12 @@ class Object
4343
% arg['versions'].each {|n, v|
4444
<%=n%> = <%if n=='RUBY_DESCRIPTION' %>case
4545
when RubyVM.const_defined?(:RJIT) && RubyVM::RJIT.enabled?
46-
<%=arg['RUBY_DESCRIPTION_WITH_RJIT'].inspect%>
46+
<%=arg['RUBY_DESCRIPTION_WITH_RJIT'].inspect%>.freeze
4747
when RubyVM.const_defined?(:YJIT) && RubyVM::YJIT.enabled?
48-
<%=arg['RUBY_DESCRIPTION_WITH_YJIT'].inspect%>
48+
<%=arg['RUBY_DESCRIPTION_WITH_YJIT'].inspect%>.freeze
4949
else
50-
<%=v.inspect%>
51-
end<%else%><%=v.inspect%><%end%>
50+
<%=v.inspect%>.freeze
51+
end<%else%><%=v.inspect%>.freeze<%end%>
5252
% }
5353
end
5454
builddir = File.dirname(File.expand_path(__FILE__))

0 commit comments

Comments
 (0)