diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | bootstraptest/test_knownbug.rb | 8 | ||||
-rw-r--r-- | bootstraptest/test_massign.rb | 7 | ||||
-rw-r--r-- | insns.def | 2 |
4 files changed, 13 insertions, 9 deletions
@@ -1,3 +1,8 @@ +Thu Jan 24 02:13:07 2008 Yusuke Endoh <mame@tsg.ne.jp> + + * insns.def (expandarray): fix stack inc. + * bootstraptest/test_knownbug.rb, test_massign.rb: move a fixed test. + Thu Jan 24 01:00:34 2008 NARUSE, Yui <naruse@ruby-lang.org> * encoding.{c, h} (rb_usascii_encoding): added. diff --git a/bootstraptest/test_knownbug.rb b/bootstraptest/test_knownbug.rb index 9b688fca00..6d1c4721d2 100644 --- a/bootstraptest/test_knownbug.rb +++ b/bootstraptest/test_knownbug.rb @@ -17,14 +17,6 @@ assert_equal 'ok', %q{ end }, '[ruby-core:14537]' -assert_equal 'ok', %q{ - while true - *, z = 1 - break - end - :ok -}, '[ruby-dev:32892]' - assert_equal 'ok', %q{ 1.times do diff --git a/bootstraptest/test_massign.rb b/bootstraptest/test_massign.rb index ad31729a73..0f63dd424a 100644 --- a/bootstraptest/test_massign.rb +++ b/bootstraptest/test_massign.rb @@ -174,3 +174,10 @@ assert_equal 'ok', %q{ :ok }, '[ruby-dev:32581]' +assert_equal 'ok', %q{ + while true + *, z = 1 + break + end + :ok +}, '[ruby-dev:32892]' @@ -450,7 +450,7 @@ DEFINE_INSN expandarray (rb_num_t num, rb_num_t flag) (..., VALUE ary) -(...) // inc += flag == 0x02 ? num : ((num > 0) ? num - 1 + (flag ? 1 : 0) : num + 1 - (flag ? 1 : 0)); +(...) // inc += num - 1 + (flag & 1 ? 1 : 0); { vm_expandarray(GET_CFP(), ary, num, flag); } |