<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/method.h, branch v2_4_0_preview2</title>
<subtitle>The Ruby Programming Language</subtitle>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/'/>
<entry>
<title>* method.h: introduce the folliwing field and macros.</title>
<updated>2015-11-18T08:15:51+00:00</updated>
<author>
<name>ko1</name>
<email>ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2015-11-18T08:15:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=3f7c0e9fd567fcfbcc8d2ac3ab8499cb321b3073'/>
<id>3f7c0e9fd567fcfbcc8d2ac3ab8499cb321b3073</id>
<content type='text'>
  * rb_method_definition_t::complemented_count to count shared method
    entries because of complemented method entries and separate from
    alias_count.

    Shared `def' only by complemented method entries should not prevent
    method re-definition warning.

  * METHOD_ENTRY_COMPLEMENTED(me) to represent complemented method entry.
  * METHOD_ENTRY_COMPLEMENTED_SET(me) to check it as  complemented me.

* vm_insnhelper.c (aliased_callable_method_entry): should also
  check me-&gt;def-&gt;complemented_count.

* vm_method.c (method_definition_addref_complement): add to count
  complemented method entries number.

* vm_method.c (rb_method_definition_release): release `def' iff
  alias_count == 0 and complemented_count == 0.

* test/ruby/test_module.rb: add a test.




git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52636 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
  * rb_method_definition_t::complemented_count to count shared method
    entries because of complemented method entries and separate from
    alias_count.

    Shared `def' only by complemented method entries should not prevent
    method re-definition warning.

  * METHOD_ENTRY_COMPLEMENTED(me) to represent complemented method entry.
  * METHOD_ENTRY_COMPLEMENTED_SET(me) to check it as  complemented me.

* vm_insnhelper.c (aliased_callable_method_entry): should also
  check me-&gt;def-&gt;complemented_count.

* vm_method.c (method_definition_addref_complement): add to count
  complemented method entries number.

* vm_method.c (rb_method_definition_release): release `def' iff
  alias_count == 0 and complemented_count == 0.

* test/ruby/test_module.rb: add a test.




git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52636 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>revert r52614, r52615, r52617 because they cause serious errors</title>
<updated>2015-11-17T13:18:19+00:00</updated>
<author>
<name>ko1</name>
<email>ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2015-11-17T13:18:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=6a533a3ecc23e6cb90e2616231f2b67d15ff3239'/>
<id>6a533a3ecc23e6cb90e2616231f2b67d15ff3239</id>
<content type='text'>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52619 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52619 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>* method.h (METHOD_ENTRY_COMPLEMENTED(_SET)): introduced to recognize</title>
<updated>2015-11-17T10:39:30+00:00</updated>
<author>
<name>ko1</name>
<email>ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2015-11-17T10:39:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=551ae37ba3307fb982272413a02b3b94561bf39b'/>
<id>551ae37ba3307fb982272413a02b3b94561bf39b</id>
<content type='text'>
  complemented method entries or not. There are some cases that callabe
  method entries do not have defined_class.

* vm_method.c (rb_method_entry_complement_defined_class):
  use METHOD_ENTRY_COMPLEMENTED_SET().




git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52617 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
  complemented method entries or not. There are some cases that callabe
  method entries do not have defined_class.

* vm_method.c (rb_method_entry_complement_defined_class):
  use METHOD_ENTRY_COMPLEMENTED_SET().




git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52617 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>* method.h: introduce rb_method_definition_t::complemented_count.</title>
<updated>2015-11-17T09:42:39+00:00</updated>
<author>
<name>ko1</name>
<email>ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2015-11-17T09:42:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=fa4e516db95cb6a158ebb162688efbc17ff997a1'/>
<id>fa4e516db95cb6a158ebb162688efbc17ff997a1</id>
<content type='text'>
* vm_method.c (method_definition_addref_complement): introduced.

  def-&gt;alias_count is used to decide warn or do not warn at method
  redefinition. Complented methods should not prevent redefiniton
  warnings.

* vm_method.c (rb_method_definition_release): release def iff
  alias_count == 0 &amp;&amp; complemented_count == 0.

* test/ruby/test_module.rb: add a test.




git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52614 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* vm_method.c (method_definition_addref_complement): introduced.

  def-&gt;alias_count is used to decide warn or do not warn at method
  redefinition. Complented methods should not prevent redefiniton
  warnings.

* vm_method.c (rb_method_definition_release): release def iff
  alias_count == 0 &amp;&amp; complemented_count == 0.

* test/ruby/test_module.rb: add a test.




git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52614 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>* method.h: constify rb_cref_t::scope_visi;</title>
<updated>2015-11-13T17:20:11+00:00</updated>
<author>
<name>ko1</name>
<email>ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2015-11-13T17:20:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=dd4cec36ca0229e5dcc45393f59f2633d2e350bf'/>
<id>dd4cec36ca0229e5dcc45393f59f2633d2e350bf</id>
<content type='text'>
* eval_intern.h (CREF_SCOPE_VISI_COPY): catch up this fix.

* vm_method.c: ditto.




git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52561 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* eval_intern.h (CREF_SCOPE_VISI_COPY): catch up this fix.

* vm_method.c: ditto.




git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52561 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>method.h: suppress warnings</title>
<updated>2015-11-08T05:24:45+00:00</updated>
<author>
<name>nobu</name>
<email>nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2015-11-08T05:24:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=0d65138c81e22dd70650389a173b528e97ba8ae2'/>
<id>0d65138c81e22dd70650389a173b528e97ba8ae2</id>
<content type='text'>
* method.h (METHOD_ENTRY_{VISI,BASIC,FLAGS}_SET): suppress
  shift-op-parentheses warnings.  [Fix GH-1082]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52490 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* method.h (METHOD_ENTRY_{VISI,BASIC,FLAGS}_SET): suppress
  shift-op-parentheses warnings.  [Fix GH-1082]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52490 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>* method.h: fix typo. Patch by @davydovanton</title>
<updated>2015-11-04T06:40:54+00:00</updated>
<author>
<name>hsbt</name>
<email>hsbt@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2015-11-04T06:40:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=825c891b4ee256e3139b71ba4876595391e4d176'/>
<id>825c891b4ee256e3139b71ba4876595391e4d176</id>
<content type='text'>
  [fix GH-1076][ci skip]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52444 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
  [fix GH-1076][ci skip]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52444 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>NameError#receiver of uninitialized constant</title>
<updated>2015-10-28T06:24:12+00:00</updated>
<author>
<name>nobu</name>
<email>nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2015-10-28T06:24:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=72ff61f4a8ae7a8bf05b0bd6f91b3b290645627c'/>
<id>72ff61f4a8ae7a8bf05b0bd6f91b3b290645627c</id>
<content type='text'>
* error.c (name_err_mesg_to_str): quote the name if unprintable.
* object.c (check_setter_id): use rb_check_id to convert names.
* variable.c (uninitialized_constant): use NameError::message to
  keep the receiver of uninitialized constant.  [Feature #10881]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52321 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* error.c (name_err_mesg_to_str): quote the name if unprintable.
* object.c (check_setter_id): use rb_check_id to convert names.
* variable.c (uninitialized_constant): use NameError::message to
  keep the receiver of uninitialized constant.  [Feature #10881]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52321 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>* method.h: IMEMO_FL_USER3 and IMEMO_FL_USER4 is not needed any more.</title>
<updated>2015-10-06T09:52:50+00:00</updated>
<author>
<name>ko1</name>
<email>ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2015-10-06T09:52:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=2d855b08d0d91a987c305a21a83dff0bfb3fccf2'/>
<id>2d855b08d0d91a987c305a21a83dff0bfb3fccf2</id>
<content type='text'>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52059 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52059 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>* method.h: remove METHOD_ENTRY_SAFE(me) and related code</title>
<updated>2015-10-06T09:49:53+00:00</updated>
<author>
<name>ko1</name>
<email>ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2015-10-06T09:49:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=72cf24c813aa788366ef4a6fc0be0491cdcaaf95'/>
<id>72cf24c813aa788366ef4a6fc0be0491cdcaaf95</id>
<content type='text'>
  because $SAFE = 3 and 4 is not available.
  Now, $SAFE is not checked on method dispatch at all.
* vm_eval.c, vm_insnhelper.c, vm_method.c: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52058 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
  because $SAFE = 3 and 4 is not available.
  Now, $SAFE is not checked on method dispatch at all.
* vm_eval.c, vm_insnhelper.c, vm_method.c: ditto.



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