ruby-changes:2862
From: ko1@a...
Date: 20 Dec 2007 10:03:34 +0900
Subject: [ruby-changes:2862] ko1 - Ruby:r14353 (trunk): * insnhelper.ci (vm_expandarray): fix sp increase place.
ko1 2007-12-20 10:03:15 +0900 (Thu, 20 Dec 2007)
New Revision: 14353
Modified files:
trunk/ChangeLog
trunk/bootstraptest/test_massign.rb
trunk/bootstraptest/test_syntax.rb
trunk/insnhelper.ci
Log:
* 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.
http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/insnhelper.ci?r1=14353&r2=14352
http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/ChangeLog?r1=14353&r2=14352
http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/bootstraptest/test_massign.rb?r1=14353&r2=14352
http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/bootstraptest/test_syntax.rb?r1=14353&r2=14352
Index: ChangeLog
===================================================================
--- ChangeLog (revision 14352)
+++ ChangeLog (revision 14353)
@@ -1,3 +1,12 @@
+Thu Dec 20 09:59:27 2007 Koichi Sasada <ko1@a...>
+
+ * 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@a...>
* bootstraptest/test_syntax.rb: add a test.
Index: bootstraptest/test_syntax.rb
===================================================================
--- bootstraptest/test_syntax.rb (revision 14352)
+++ bootstraptest/test_syntax.rb (revision 14353)
@@ -644,7 +644,7 @@
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
Index: bootstraptest/test_massign.rb
===================================================================
--- bootstraptest/test_massign.rb (revision 14352)
+++ bootstraptest/test_massign.rb (revision 14353)
@@ -159,3 +159,18 @@
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]'
+
Index: insnhelper.ci
===================================================================
--- insnhelper.ci (revision 14352)
+++ insnhelper.ci (revision 14353)
@@ -1340,12 +1340,12 @@
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);
--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml