Issue #6037 has been reported by Denis de Bernardy.

----------------------------------------
Bug #6037: #freeze bug
https://bugs.ruby-lang.org/issues/6037

Author: Denis de Bernardy
Status: Open
Priority: Normal
Assignee: 
Category: 
Target version: 
ruby -v: 1.9.3


freeze should deep freeze, to avoid inconsistent behavior:

array = ['a', 'b'].freeze
array[0] = 'b'
array[0].gsub!(/.+/s, 'b')
array

>> RUBY_VERSION
=> "1.9.3"
>> array = ['a', 'b'].freeze
=> ["a", "b"]
>> array[0] = 'b'
RuntimeError: can't modify frozen Array
	from (irb):269:in `[]='
	from (irb):269
	from /opt/local/bin/irb:12:in `<main>'
>> array[0].gsub!(/.+/s, 'b')
=> "b"
>> array
=> ["b", "b"]



-- 
http://bugs.ruby-lang.org/