[ruby-cvs:57141] nagachika:r49992 (ruby_2_1): merge revision(s) r49222, r49480, r49493: [Backport #10765]

nagachika at ruby-lang.org nagachika at ruby-lang.org
Wed Mar 18 01:12:30 JST 2015


nagachika	2015-03-18 01:12:28 +0900 (Wed, 18 Mar 2015)

  New Revision: 49992

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=49992

  Log:
    merge revision(s) r49222,r49480,r49493: [Backport #10765]
    
    method.h: UNDEFINED_REFINED_METHOD_P
    
    * method.h (UNDEFINED_REFINED_METHOD_P): macro to tell if refined
      original method is defined.
    * vm_method.c (remove_method): When remove refined
      method, raise a NameError if the method is not
      defined in refined class.
    
      But if the method is defined in refined class,
      it should keep refined method and remove original
      method.
      
      Patch by Seiei Higa. [ruby-core:67722] [Bug #10765]
    
    * class.c (method_entry_i, class_instance_method_list,
      rb_obj_singleton_methods): should not include methods of
      superclasses if recur is false. [ruby-dev:48854] [Bug #10826]

  Modified directories:
    branches/ruby_2_1/
  Modified files:
    branches/ruby_2_1/ChangeLog
    branches/ruby_2_1/class.c
    branches/ruby_2_1/method.h
    branches/ruby_2_1/test/ruby/test_refinement.rb
    branches/ruby_2_1/version.h
    branches/ruby_2_1/vm_method.c


More information about the ruby-cvs mailing list