<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/ruby.git/vm_method.c, branch ruby_2_1</title>
<subtitle>github.com: ruby/ruby.git
</subtitle>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/'/>
<entry>
<title>merge revision(s) r49184: [Backport #10707]</title>
<updated>2015-03-30T15:45:35+00:00</updated>
<author>
<name>nagachika</name>
<email>nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2015-03-30T15:45:35+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=ed22c21a8f4e0c98045efb6de245fba79ec7e961'/>
<id>ed22c21a8f4e0c98045efb6de245fba79ec7e961</id>
<content type='text'>
	* vm_method.c (rb_method_entry): if no super class, no original
	  method entry.  [ruby-core:67389] [Bug #10707]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@50131 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* vm_method.c (rb_method_entry): if no super class, no original
	  method entry.  [ruby-core:67389] [Bug #10707]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@50131 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) r49222,r49480,r49493: [Backport #10765]</title>
<updated>2015-03-17T16:12:28+00:00</updated>
<author>
<name>nagachika</name>
<email>nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2015-03-17T16:12:28+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=c4b21f736ebb339fc46760f800851a7eed444c47'/>
<id>c4b21f736ebb339fc46760f800851a7eed444c47</id>
<content type='text'>
	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]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@49992 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	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]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@49992 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) r49322: [Backport #10753]</title>
<updated>2015-03-17T15:55:50+00:00</updated>
<author>
<name>nagachika</name>
<email>nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2015-03-17T15:55:50+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=5d3b8d0d5491096a10ae332db759b01c89a10f9d'/>
<id>5d3b8d0d5491096a10ae332db759b01c89a10f9d</id>
<content type='text'>
	* vm_method.c (check_definition): Module#public_method_defined?,
	  Module#private_method_defined?, Module#protected_method_defined?
	  should not use refinements. [ruby-core:67656] [Bug #10753]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@49991 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* vm_method.c (check_definition): Module#public_method_defined?,
	  Module#private_method_defined?, Module#protected_method_defined?
	  should not use refinements. [ruby-core:67656] [Bug #10753]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@49991 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) r49221: [Backport #10731]</title>
<updated>2015-02-28T18:13:42+00:00</updated>
<author>
<name>nagachika</name>
<email>nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2015-02-28T18:13:42+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=f50f70259ded4e1be9c197dd04d7da9518e8ca68'/>
<id>f50f70259ded4e1be9c197dd04d7da9518e8ca68</id>
<content type='text'>
	* vm_method.c (rb_alias): raise a NameError when creating alias to
	  a refined method if the original method of the refined method is
	  not defined.  [ruby-core:67523] [Bug #10731]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@49787 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* vm_method.c (rb_alias): raise a NameError when creating alias to
	  a refined method if the original method of the refined method is
	  not defined.  [ruby-core:67523] [Bug #10731]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@49787 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) r49182,r49183: [Backport #10706]</title>
<updated>2015-02-28T17:28:57+00:00</updated>
<author>
<name>nagachika</name>
<email>nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2015-02-28T17:28:57+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=c839def7cc34f858777b15d2d84cb45b585d9699'/>
<id>c839def7cc34f858777b15d2d84cb45b585d9699</id>
<content type='text'>
	vm_method.c: fix change refined new method visibility
	* vm_method.c (rb_export_method): bail out if the original method
	  is undefined when the method is refined.
	  [ruby-core:67387] [Bug #10706]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@49786 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	vm_method.c: fix change refined new method visibility
	* vm_method.c (rb_export_method): bail out if the original method
	  is undefined when the method is refined.
	  [ruby-core:67387] [Bug #10706]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@49786 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) r48111,r48118,r48120: [Backport #10421]</title>
<updated>2014-10-25T18:42:44+00:00</updated>
<author>
<name>nagachika</name>
<email>nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2014-10-25T18:42:44+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=eca3835c65f6e63b92dd5387257322323ab43563'/>
<id>eca3835c65f6e63b92dd5387257322323ab43563</id>
<content type='text'>
	* vm_method.c (rb_method_entry_make): warn redefinition only for
	  already defined methods, but not for undefined methods.
	  [ruby-dev:48691] [Bug #10421]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@48138 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* vm_method.c (rb_method_entry_make): warn redefinition only for
	  already defined methods, but not for undefined methods.
	  [ruby-dev:48691] [Bug #10421]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@48138 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) r45367,r45387,r45388,r45389: [Backport #9475]</title>
<updated>2014-05-15T15:24:05+00:00</updated>
<author>
<name>nagachika</name>
<email>nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2014-05-15T15:24:05+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=67f5f1be206c7ecb19aeb4cb1167dcedfb3466bd'/>
<id>67f5f1be206c7ecb19aeb4cb1167dcedfb3466bd</id>
<content type='text'>
	* vm_method.c (rb_method_entry_get_without_cache): get rid of
	  infinite recursion at aliases in a subclass and a superclass.
	  return actually defined class for other than singleton class.
	  [ruby-core:60431] [Bug #9475]

	* vm_method.c (rb_method_entry_get_without_cache): me-&gt;klass is 0
	  for a method aliased in a module.  [ruby-core:61636] [Bug #9663]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45955 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* vm_method.c (rb_method_entry_get_without_cache): get rid of
	  infinite recursion at aliases in a subclass and a superclass.
	  return actually defined class for other than singleton class.
	  [ruby-core:60431] [Bug #9475]

	* vm_method.c (rb_method_entry_get_without_cache): me-&gt;klass is 0
	  for a method aliased in a module.  [ruby-core:61636] [Bug #9663]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45955 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) 44931: [Backport #9452]</title>
<updated>2014-02-22T05:05:22+00:00</updated>
<author>
<name>naruse</name>
<email>naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2014-02-22T05:05:22+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=669e9ac5ff2593b175bd6b0b30d482d3e2fbced3'/>
<id>669e9ac5ff2593b175bd6b0b30d482d3e2fbced3</id>
<content type='text'>
	* vm_insnhelper.c (vm_call_method): should check ci-&gt;me-&gt;flag of
	  a refining method in case the method is private.
	  [ruby-core:60111] [Bug #9452]

	* vm_method.c (make_method_entry_refined): set me-&gt;flag of a refined
	  method entry to NOEX_PUBLIC in case the original method is private
	  and it is refined as a public method.  The original flag is stored
	  in me-&gt;def-&gt;body.orig_me, so it's OK to make a refined method
	  entry public.  [ruby-core:60111] [Bug #9452]

	* test/ruby/test_refinement.rb: related tests.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45107 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* vm_insnhelper.c (vm_call_method): should check ci-&gt;me-&gt;flag of
	  a refining method in case the method is private.
	  [ruby-core:60111] [Bug #9452]

	* vm_method.c (make_method_entry_refined): set me-&gt;flag of a refined
	  method entry to NOEX_PUBLIC in case the original method is private
	  and it is refined as a public method.  The original flag is stored
	  in me-&gt;def-&gt;body.orig_me, so it's OK to make a refined method
	  entry public.  [ruby-core:60111] [Bug #9452]

	* test/ruby/test_refinement.rb: related tests.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45107 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>* vm_method.c: check definition of</title>
<updated>2013-12-20T08:57:24+00:00</updated>
<author>
<name>ko1</name>
<email>ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2013-12-20T08:57:24+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=f11b54213ad169975f98bbf0a39e1b303bc2795f'/>
<id>f11b54213ad169975f98bbf0a39e1b303bc2795f</id>
<content type='text'>
  GLOBAL_METHOD_CACHE_SIZE and GLOBAL_METHOD_CACHE_MASK.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44300 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
  GLOBAL_METHOD_CACHE_SIZE and GLOBAL_METHOD_CACHE_MASK.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44300 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>* include/ruby/ruby.h: rename OBJ_WRITE and OBJ_WRITTEN into</title>
<updated>2013-12-20T08:07:47+00:00</updated>
<author>
<name>ko1</name>
<email>ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2013-12-20T08:07:47+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=c702005a7bbb807cab666537b5ef1877c14c40ba'/>
<id>c702005a7bbb807cab666537b5ef1877c14c40ba</id>
<content type='text'>
  RB_OBJ_WRITE and RB_OBJ_WRITTEN.
* array.c, class.c, compile.c, hash.c, internal.h, iseq.c,
  proc.c, process.c, re.c, string.c, variable.c, vm.c,
  vm_eval.c, vm_insnhelper.c, vm_insnhelper.h,
  vm_method.c: catch up this change.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44299 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
  RB_OBJ_WRITE and RB_OBJ_WRITTEN.
* array.c, class.c, compile.c, hash.c, internal.h, iseq.c,
  proc.c, process.c, re.c, string.c, variable.c, vm.c,
  vm_eval.c, vm_insnhelper.c, vm_insnhelper.h,
  vm_method.c: catch up this change.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44299 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
</feed>
