From: ko1@... Date: 2020-10-20T06:25:10+00:00 Subject: [ruby-core:100443] [Ruby master Feature#17256] Freeze all Regexp objects Issue #17256 has been updated by ko1 (Koichi Sasada). I tried it and several errors are observed on tests. It is possible that people want to tweak Regexp objects (unlike Range objects). How about to freeze literals includes `/#{expr}/`? https://github.com/ruby/ruby/pull/3676 It is easy to fix by `.dup` method. ---------------------------------------- Feature #17256: Freeze all Regexp objects https://bugs.ruby-lang.org/issues/17256#change-88058 * Author: ko1 (Koichi Sasada) * Status: Open * Priority: Normal * Assignee: matz (Yukihiro Matsumoto) ---------------------------------------- To be shared between ractors, Regexp objects should be frozen. Now, Matz has proposed to make all Regexp objects frozen. Ten months ago, there was a note https://bugs.ruby-lang.org/issues/16377#note-7 : > For the record: Regexp.new should continue to return unfrozen Regexp instance. So I'm not sure whether it is a good way or not. Could you give me your comment on it? If no comments are given, I'll try to freeze them before Ruby 3.0 preview 2. BTW, I believe `/#{expr}/o` should be frozen because this expression only returns one Regexp object. -- https://bugs.ruby-lang.org/ Unsubscribe: