From 3e96f56f8ae9cb428e00aa0d60ddd18304a1f09e Mon Sep 17 00:00:00 2001 From: nobu Date: Wed, 27 Jun 2012 13:40:37 +0000 Subject: remove from original m_tbl * vm_method.c (remove_method): remove the method from the original m_tbl on a prepended module. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36239 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/ruby/test_module.rb | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'test/ruby/test_module.rb') diff --git a/test/ruby/test_module.rb b/test/ruby/test_module.rb index aa48e1793c..d7a6248909 100644 --- a/test/ruby/test_module.rb +++ b/test/ruby/test_module.rb @@ -1290,4 +1290,13 @@ class TestModule < Test::Unit::TestCase o.singleton_class.class_eval {prepend Module.new} assert_equal([], o.singleton_methods) end + + def test_prepend_remove_method + assert_raise(NameError) do + Class.new do + prepend Module.new {def foo; end} + remove_method(:foo) + end + end + end end -- cgit v1.2.3