[ruby-core:96051] [Ruby master Feature#16377] Regexp literals should be frozen
From:
daniel@...42.com
Date:
2019-12-02 02:46:32 UTC
List:
ruby-core #96051
Issue #16377 has been updated by Dan0042 (Daniel DeLorme). Sorry, I completely missed the part about "unduplicated". I will reflect on writing replies too fast. m(_ _)m ---------------------------------------- Feature #16377: Regexp literals should be frozen https://bugs.ruby-lang.org/issues/16377#change-82900 * Author: byroot (Jean Boussier) * Status: Open * Priority: Normal * Assignee: * Target version: ---------------------------------------- The following script: ```ruby def mutate re = /foo/ state = re.instance_variable_get(:@state) re.instance_variable_set(:@state, state.to_i + 1) state end 3.times do p mutate end ``` Output this: ``` nil 1 2 ``` IMHO, you shouldn't be able to mutate an unduplicated literal. GitHub pull request: https://github.com/ruby/ruby/pull/2705 -- https://bugs.ruby-lang.org/ Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe> <http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>