From: "alanwu (Alan Wu)" Date: 2022-12-01T16:56:54+00:00 Subject: [ruby-core:111131] [Ruby master Bug#19166] Module#remove_method can change frozen modules when there is a prepended module Issue #19166 has been reported by alanwu (Alan Wu). ---------------------------------------- Bug #19166: Module#remove_method can change frozen modules when there is a prepended module https://bugs.ruby-lang.org/issues/19166 * Author: alanwu (Alan Wu) * Status: Open * Priority: Normal * ruby -v: 2.7, 3.0, 3.1, dev * Backport: 2.7: UNKNOWN, 3.0: UNKNOWN, 3.1: UNKNOWN ---------------------------------------- ```ruby module A prepend Module.new # remove this line and you'd get FrozenError as expected def foo; end freeze remove_method :foo # remove works even though module is frozen! p instance_methods(false) # => [] end ``` Old bug, reproduces in 2.7 through 3.1 and on master. Found while investigating #19164. -- https://bugs.ruby-lang.org/ ______________________________________________ ruby-core mailing list -- ruby-core@ml.ruby-lang.org To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org ruby-core info -- https://ml.ruby-lang.org/mailman3/postorius/lists/ruby-core.ml.ruby-lang.org/