1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

* insnhelper.ci (vm_expandarray): fix sp increase place.

a patch from Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-dev:32581].
* bootstraptest/test_massign.rb: add a test for above.
* bootstraptest/test_syntax.rb: fix last committed test.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14353 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
ko1 2007-12-20 01:03:15 +00:00
parent bc162c69ea
commit e0dcf23cd5
4 changed files with 27 additions and 3 deletions

View file

@ -1,3 +1,12 @@
Thu Dec 20 09:59:27 2007 Koichi Sasada <ko1@atdot.net>
* insnhelper.ci (vm_expandarray): fix sp increase place.
a patch from Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-dev:32581].
* bootstraptest/test_massign.rb: add a test for above.
* bootstraptest/test_syntax.rb: fix last committed test.
Thu Dec 20 09:47:58 2007 Koichi Sasada <ko1@atdot.net>
* bootstraptest/test_syntax.rb: add a test.

View file

@ -159,3 +159,18 @@ assert_equal 'ok', %q{
ary = [0, 1, 2, 3, 4, 5, 6]
a, b, *c, d, e, f = *ary; [a, b, c, d, e, f]
}
#
assert_equal 'ok', %q{
a,s=[],"aaa"
300.times { a<<s; s=s.succ }
eval <<-END__
GC.stress=true
Fiber.new do
#{ a.join(",") },*zzz=1
end.resume
END__
:ok
}, '[ruby-dev:32581]'

View file

@ -644,7 +644,7 @@ assert_equal 'true', %q{
assert_normal_exit %q{
eval "while true; return; end rescue p $!"
}, '[ruby-dev:31663]'
assert_equal :ok, %q{
assert_equal '1', %q{
def bar
raise
end

View file

@ -1340,12 +1340,12 @@ vm_expandarray(rb_control_frame_t *cfp, VALUE ary, int num, int flag)
volatile VALUE tmp_ary;
int len;
cfp->sp += space_size;
if (TYPE(ary) != T_ARRAY) {
ary = rb_ary_to_ary(ary);
}
cfp->sp += space_size;
tmp_ary = ary;
ptr = RARRAY_PTR(ary);
len = RARRAY_LEN(ary);