[ruby-cvs:56888] usa:r49738 (ruby_2_0_0): merge revision(s) 49222,49480,49493: [Backport #10765] [Backport #1010826]

usa at ruby-lang.org usa at ruby-lang.org
Wed Feb 25 15:01:27 JST 2015


usa	2015-02-25 15:01:25 +0900 (Wed, 25 Feb 2015)

  New Revision: 49738

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

  Log:
    merge revision(s) 49222,49480,49493: [Backport #10765] [Backport #1010826]
    
    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_0_0/
  Modified files:
    branches/ruby_2_0_0/ChangeLog
    branches/ruby_2_0_0/class.c
    branches/ruby_2_0_0/method.h
    branches/ruby_2_0_0/test/ruby/test_refinement.rb
    branches/ruby_2_0_0/version.h
    branches/ruby_2_0_0/vm_method.c


More information about the ruby-cvs mailing list