<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/vm.c, branch v2_1_5</title>
<subtitle>The Ruby Programming Language</subtitle>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/'/>
<entry>
<title>merge revision(s) r48000: [Backport #10368]</title>
<updated>2014-10-18T18:35:31+00:00</updated>
<author>
<name>nagachika</name>
<email>nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2014-10-18T18:35:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=3e6dbba4e2eabbd639711054233c8325375cdf75'/>
<id>3e6dbba4e2eabbd639711054233c8325375cdf75</id>
<content type='text'>
	* vm_core.h, vm.c, proc.c: fix GC mark miss on bindings.
	  [ruby-dev:48616] [Bug #10368]

	* test/ruby/test_eval.rb: add a test code.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@48004 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* vm_core.h, vm.c, proc.c: fix GC mark miss on bindings.
	  [ruby-dev:48616] [Bug #10368]

	* test/ruby/test_eval.rb: add a test code.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@48004 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) r46465,r46469,r46484: [Backport #9961]</title>
<updated>2014-08-03T16:07:15+00:00</updated>
<author>
<name>nagachika</name>
<email>nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2014-08-03T16:07:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=84091a71e50ebe37f2261762fcef97cefe4c93ab'/>
<id>84091a71e50ebe37f2261762fcef97cefe4c93ab</id>
<content type='text'>
	* vm.c (rb_vm_rewind_cfp): add new function to rewind specified cfp
	  with invoking RUBY_EVENT_C_RETURN.
	  [Bug #9961]

	* vm_core.h: ditto.

	* eval.c (rb_protect): use it.

	* eval.c (rb_rescue2): ditto.

	* vm_eval.c (rb_iterate): ditto.

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

	* vm_core.h (rb_name_err_mesg_new): 

	* vm_eval.c (rb_catch_protect): fix same problem of [Bug #9961].

	* vm_eval.c (rb_iterate): ditto.

	* vm_core.h (rb_vm_rewind_cfp): add the prototype declaration.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@47051 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* vm.c (rb_vm_rewind_cfp): add new function to rewind specified cfp
	  with invoking RUBY_EVENT_C_RETURN.
	  [Bug #9961]

	* vm_core.h: ditto.

	* eval.c (rb_protect): use it.

	* eval.c (rb_rescue2): ditto.

	* vm_eval.c (rb_iterate): ditto.

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

	* vm_core.h (rb_name_err_mesg_new): 

	* vm_eval.c (rb_catch_protect): fix same problem of [Bug #9961].

	* vm_eval.c (rb_iterate): ditto.

	* vm_core.h (rb_vm_rewind_cfp): add the prototype declaration.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@47051 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) r46464: [Backport #9959]</title>
<updated>2014-07-30T16:37:33+00:00</updated>
<author>
<name>nagachika</name>
<email>nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2014-07-30T16:37:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=e0c00fccc47fbf473768cc84d808c2de06b1e69f'/>
<id>e0c00fccc47fbf473768cc84d808c2de06b1e69f</id>
<content type='text'>
	* vm.c (invoke_block_from_c): move call/return event timing for
	  bmethod. It can invoke inconsistent call event if this call raises
	  argument error.
	  [Bug #9959]

	* vm_insnhelper.c (vm_call_bmethod_body): ditto.

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


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@47013 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* vm.c (invoke_block_from_c): move call/return event timing for
	  bmethod. It can invoke inconsistent call event if this call raises
	  argument error.
	  [Bug #9959]

	* vm_insnhelper.c (vm_call_bmethod_body): ditto.

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


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@47013 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) r46463: [Backport #9957]</title>
<updated>2014-07-30T16:21:05+00:00</updated>
<author>
<name>nagachika</name>
<email>nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2014-07-30T16:21:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=d22cfb2fdb900cdbc732a3667b5706130905a21c'/>
<id>d22cfb2fdb900cdbc732a3667b5706130905a21c</id>
<content type='text'>
	* vm_core.h: add VM_FRAME_MAGIC_RESCUE to recognize normal block or
	  rescue clause.

	* vm.c (vm_exec): use VM_FRAME_MAGIC_RESCUE on at rescue/ensure.

	* test/ruby/test_settracefunc.rb: should not invoke b_return at rescue
	  clause.
	  [Bug #9957]

	* vm_dump.c (control_frame_dump): check VM_FRAME_MAGIC_RESCUE.

	* vm_dump.c (vm_stack_dump_each): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@47012 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* vm_core.h: add VM_FRAME_MAGIC_RESCUE to recognize normal block or
	  rescue clause.

	* vm.c (vm_exec): use VM_FRAME_MAGIC_RESCUE on at rescue/ensure.

	* test/ruby/test_settracefunc.rb: should not invoke b_return at rescue
	  clause.
	  [Bug #9957]

	* vm_dump.c (control_frame_dump): check VM_FRAME_MAGIC_RESCUE.

	* vm_dump.c (vm_stack_dump_each): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@47012 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) r45399,r45400,r46036,r46037: [Backport #416]</title>
<updated>2014-06-30T18:02:23+00:00</updated>
<author>
<name>nagachika</name>
<email>nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2014-06-30T18:02:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=09cf4529269953847723eac4475bfe07c60b028a'/>
<id>09cf4529269953847723eac4475bfe07c60b028a</id>
<content type='text'>
	vm.c: merge code

	* vm.c (m_core_hash_from_ary, m_core_hash_merge_ary): merge
  duplicated code.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46628 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	vm.c: merge code

	* vm.c (m_core_hash_from_ary, m_core_hash_merge_ary): merge
  duplicated code.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46628 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) r46342: [Backport #9954]</title>
<updated>2014-06-29T18:22:39+00:00</updated>
<author>
<name>nagachika</name>
<email>nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2014-06-29T18:22:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=370e83b789076bbada251c3a6cf8e38932a17883'/>
<id>370e83b789076bbada251c3a6cf8e38932a17883</id>
<content type='text'>
	* vm.c (core_hash_merge_kwd): should return the result hash, which
	  may be converted from and differ from the given argument.
	  [ruby-core:62921] [Bug #9898]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46619 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* vm.c (core_hash_merge_kwd): should return the result hash, which
	  may be converted from and differ from the given argument.
	  [ruby-core:62921] [Bug #9898]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46619 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) r44535,r44536: [Backport #9321]</title>
<updated>2014-06-29T16:13:14+00:00</updated>
<author>
<name>nagachika</name>
<email>nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2014-06-29T16:13:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=bdf635bf5be3213770c8a77380a045e2ac1c19af'/>
<id>bdf635bf5be3213770c8a77380a045e2ac1c19af</id>
<content type='text'>
	* vm.c (rb_vm_pop_cfunc_frame): added.  It cares c_return event.
	  The patch base by drkaes (Stefan Kaes).
	  [Bug #9321]

	* variable.c (rb_mod_const_missing): use rb_vm_pop_cfunc_frame()
	  instead of rb_frame_pop().

	* vm_eval.c (raise_method_missing): ditto.

	* vm_eval.c (rb_iterate): ditto.

	* internal.h (rb_vm_pop_cfunc_frame): add decl.

	* test/ruby/test_settracefunc.rb: add tests.
	  provided by drkaes (Stefan Kaes).

	* vm.c, eval.c, include/ruby/intern.h (rb_frame_pop): 
	  move definition of rb_frame_pop() and deprecate it.
	  It doesn't care about `return' events.

	* vm.c, eval.c, include/ruby/intern.h (rb_frame_pop):


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46608 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* vm.c (rb_vm_pop_cfunc_frame): added.  It cares c_return event.
	  The patch base by drkaes (Stefan Kaes).
	  [Bug #9321]

	* variable.c (rb_mod_const_missing): use rb_vm_pop_cfunc_frame()
	  instead of rb_frame_pop().

	* vm_eval.c (raise_method_missing): ditto.

	* vm_eval.c (rb_iterate): ditto.

	* internal.h (rb_vm_pop_cfunc_frame): add decl.

	* test/ruby/test_settracefunc.rb: add tests.
	  provided by drkaes (Stefan Kaes).

	* vm.c, eval.c, include/ruby/intern.h (rb_frame_pop): 
	  move definition of rb_frame_pop() and deprecate it.
	  It doesn't care about `return' events.

	* vm.c, eval.c, include/ruby/intern.h (rb_frame_pop):


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46608 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) r44712,r44715,r44716,r44722,r44725,r44726,r44753: [Backport #9454] [Backport #9828]</title>
<updated>2014-06-19T15:56:56+00:00</updated>
<author>
<name>nagachika</name>
<email>nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2014-06-19T15:56:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=ced638cc0f8f8067592b808455e5d17f1dc5d066'/>
<id>ced638cc0f8f8067592b808455e5d17f1dc5d066</id>
<content type='text'>
	* thread_pthread.c: get current main thread stack size, which may
	  be expanded than allocated size at initialization, by rlimit().
	  [ruby-core:60113] [Bug #9454]

	* thread_pthread.c: rlimit is only available on Linux.
	  At least r44712 breaks FreeBSD.
	  [ruby-core:60113] [Bug #9454]

	* thread_pthread.c (ruby_init_stack, ruby_stack_overflowed_p):
	  place get_stack above others to get stack boundary information.
	  [ruby-core:60113] [Bug #9454]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46468 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* thread_pthread.c: get current main thread stack size, which may
	  be expanded than allocated size at initialization, by rlimit().
	  [ruby-core:60113] [Bug #9454]

	* thread_pthread.c: rlimit is only available on Linux.
	  At least r44712 breaks FreeBSD.
	  [ruby-core:60113] [Bug #9454]

	* thread_pthread.c (ruby_init_stack, ruby_stack_overflowed_p):
	  place get_stack above others to get stack boundary information.
	  [ruby-core:60113] [Bug #9454]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46468 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) r45758,r45759: [Backport #9759]</title>
<updated>2014-05-12T13:49:33+00:00</updated>
<author>
<name>nagachika</name>
<email>nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2014-05-12T13:49:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=86f8f5d94e484745b4e406d5410168e7d131d92c'/>
<id>86f8f5d94e484745b4e406d5410168e7d131d92c</id>
<content type='text'>
	* vm.c (invoke_block_from_c): add VM_FRAME_FLAG_BMETHOD to record
	  it is bmethod frame.

	* vm.c (vm_exec): invoke RUBY_EVENT_RETURN event if rollbacked frame
	  is VM_FRAME_FLAG_BMETHOD.
	  [Bug #9759]

	* test/ruby/test_settracefunc.rb: add a test for TracePoint/set_trace_func.

	* vm_core.h: rename rb_thread_t::passed_me to
	  rb_thread_t::passed_bmethod_me to clarify the usage.

	* vm_insnhelper.c (vm_call_bmethod_body): use renamed member.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* vm.c (invoke_block_from_c): add VM_FRAME_FLAG_BMETHOD to record
	  it is bmethod frame.

	* vm.c (vm_exec): invoke RUBY_EVENT_RETURN event if rollbacked frame
	  is VM_FRAME_FLAG_BMETHOD.
	  [Bug #9759]

	* test/ruby/test_settracefunc.rb: add a test for TracePoint/set_trace_func.

	* vm_core.h: rename rb_thread_t::passed_me to
	  rb_thread_t::passed_bmethod_me to clarify the usage.

	* vm_insnhelper.c (vm_call_bmethod_body): use renamed member.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) 44380: [Backport #9296]</title>
<updated>2013-12-25T07:58:38+00:00</updated>
<author>
<name>naruse</name>
<email>naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2013-12-25T07:58:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=18f605a29278d63207f10660fc2808438211f7d4'/>
<id>18f605a29278d63207f10660fc2808438211f7d4</id>
<content type='text'>
	* proc.c (rb_mod_define_method): consider visibility only if self
	  in the caller is same as the receiver, otherwise make public as
	  well as old behavior.  [ruby-core:57747] [Bug #9005]
	  [ruby-core:58497] [Bug #9141]

	* vm.c (rb_vm_cref_in_context): return ruby level cref if self is
	  same.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@44410 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* proc.c (rb_mod_define_method): consider visibility only if self
	  in the caller is same as the receiver, otherwise make public as
	  well as old behavior.  [ruby-core:57747] [Bug #9005]
	  [ruby-core:58497] [Bug #9141]

	* vm.c (rb_vm_cref_in_context): return ruby level cref if self is
	  same.


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