From b8aeefbf721c2a654cc430b62e8c25679c07569a Mon Sep 17 00:00:00 2001 From: nobu Date: Fri, 29 Jan 2016 02:14:36 +0000 Subject: erb.rb: frozen-string-literal safe * lib/erb.rb (ERB#set_eoutvar): explicitly make mutable string as a buffer to make ERB work with --enable-frozen-string-literal. [ruby-core:73561] [Bug #12031] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53682 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/erb/test_erb.rb | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'test/erb') diff --git a/test/erb/test_erb.rb b/test/erb/test_erb.rb index 29fbf97686..97f45af73d 100644 --- a/test/erb/test_erb.rb +++ b/test/erb/test_erb.rb @@ -534,6 +534,15 @@ EOS EOS assert_equal(ans, extended_erb.new(src).result) end + + def test_frozen_string_literal + bug12031 = '[ruby-core:73561] [Bug #12031]' + e = @erb.new("<%#encoding: us-ascii%>a") + e.src.sub!(/\A#(?:-\*-)?(.*)(?:-\*-)?/) { + '# -*- \1; frozen-string-literal: true -*-' + } + assert_equal("a", e.result, bug12031) + end end class TestERBCoreWOStrScan < TestERBCore -- cgit v1.2.3