Project

General

Profile

Actions

Bug #1073

closed

test_to_s(Complex_Test) fails on Solaris

Added by shugo (Shugo Maeda) over 15 years ago. Updated about 13 years ago.

Status:
Closed
Target version:
-
ruby -v:
ruby 1.9.1p5000 (2009-01-29 trunk 21875) [i386-solaris2.10]
Backport:
[ruby-dev:37861]

Description

=begin
Solarisでtest_to_s(Complex_Test)が失敗するようです。

$ make test-all TESTS=test/ruby/test_complex.rb
...

  1. Failure:
    test_to_s(Complex_Test) [/export/home/shugo/src/ruby_1_9_1/test/ruby/test_complex.rb:591]:
    <"NaN+NaNi"> expected but was
    <"NaN-NaN
    i">.

2289 tests, 2637768 assertions, 1 failures, 0 errors, 0 skips

r20473で、signbit()がある時は、isnan()だったら常にQfalseを返すようにf_signbit()が修正されていますが、
signbit()がない時も同じようにisnan()を見るようにするべきなんじゃないでしょうか。

Index: complex.c

--- complex.c (revision 21875)
+++ complex.c (working copy)
@@ -894,8 +894,10 @@
#else
{
char s[2];

  • double f = RFLOAT_VALUE(x);
  • (void)snprintf(s, sizeof s, "%.0f", RFLOAT_VALUE(x));
  • if (isnan(f)) return Qfalse;
  • (void)snprintf(s, sizeof s, "%.0f", f);
    return f_boolcast(s[0] == '-');
    }
    #endif
    =end
Actions #1

Updated by tadf (tadayoshi funaba) over 15 years ago

=begin

r20473で、signbit()がある時は、isnan()だったら常にQfalseを返すようにf_signbit()が修正されていますが、
signbit()がない時も同じようにisnan()を見るようにするべきなんじゃないでしょうか。

確かに。
直しておいてもらえますか。

=end

Actions #2

Updated by ko1 (Koichi Sasada) about 15 years ago

  • Assignee set to shugo (Shugo Maeda)

=begin

=end

Actions #3

Updated by shugo (Shugo Maeda) about 15 years ago

  • Status changed from Open to Closed
  • % Done changed from 0 to 100

=begin
Applied in changeset r21945.
=end

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0