diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | numeric.c | 2 | ||||
-rw-r--r-- | test/ruby/test_float.rb | 2 |
3 files changed, 6 insertions, 2 deletions
@@ -1,3 +1,5 @@ +Tue Nov 22 11:26:08 2011 NARUSE, Yui <naruse@ruby-lang.org> + Tue Nov 22 11:33:58 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> * win32/win32.c (dupfd): argument of _osfhnd and so on should not @@ -5,7 +7,7 @@ Tue Nov 22 11:33:58 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> Tue Nov 22 11:26:08 2011 NARUSE, Yui <naruse@ruby-lang.org> - * bignum.c (): refix of r33536. Don't change behavior of Bignum#/. + * bignum.c (rb_big_divide): refix of r33536. Don't change behavior of Bignum#/. [ruby-core:40429] [Bug #5490] Tue Nov 22 10:46:57 2011 NARUSE, Yui <naruse@ruby-lang.org> @@ -1703,7 +1703,7 @@ ruby_float_step(VALUE from, VALUE to, VALUE step, int excl) } for (i=0; i<=n; i++) { double d = i*unit+beg; - if (end < d) d = end; + if (unit >= 0 ? end < d : d < end) d = end; rb_yield(DBL2NUM(d)); } } diff --git a/test/ruby/test_float.rb b/test/ruby/test_float.rb index d16384898d..1935cfdd52 100644 --- a/test/ruby/test_float.rb +++ b/test/ruby/test_float.rb @@ -520,6 +520,8 @@ class TestFloat < Test::Unit::TestCase (1.0..12.7).step(1.3).each do |n| assert_operator(n, :<=, 12.7) end + + assert_equal([5.0, 4.0, 3.0, 2.0], 5.0.step(1.5, -1).to_a) end def test_step_excl |