[前][次][番号順一覧][スレッド一覧]

ruby-changes:8966

From: yugui <ko1@a...>
Date: Thu, 4 Dec 2008 17:56:49 +0900 (JST)
Subject: [ruby-changes:8966] Ruby:r20501 (ruby_1_9_1): merges r20473 from trunk into ruby_1_9_1.

yugui	2008-12-04 17:55:10 +0900 (Thu, 04 Dec 2008)

  New Revision: 20501

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=20501

  Log:
    merges r20473 from trunk into ruby_1_9_1.
    * complex.c (f_signbit): NaN may be signed value.

  Modified files:
    branches/ruby_1_9_1/ChangeLog
    branches/ruby_1_9_1/complex.c

Index: ruby_1_9_1/complex.c
===================================================================
--- ruby_1_9_1/complex.c	(revision 20500)
+++ ruby_1_9_1/complex.c	(revision 20501)
@@ -887,15 +887,17 @@
     switch (TYPE(x)) {
       case T_FLOAT:
 #ifdef HAVE_SIGNBIT
-	return f_boolcast(signbit(RFLOAT_VALUE(x)));
+      {
+	  double f = RFLOAT_VALUE(x);
+	  return f_boolcast(!isnan(f) && signbit(f));
+      }
 #else
-	{
-	    char s[2];
+      {
+	  char s[2];
 
-	    (void)snprintf(s, sizeof s, "%.0f", RFLOAT_VALUE(x));
-
-	    return f_boolcast(s[0] == '-');
-	}
+	  (void)snprintf(s, sizeof s, "%.0f", RFLOAT_VALUE(x));
+	  return f_boolcast(s[0] == '-');
+      }
 #endif
     }
     return f_negative_p(x);
Index: ruby_1_9_1/ChangeLog
===================================================================
--- ruby_1_9_1/ChangeLog	(revision 20500)
+++ ruby_1_9_1/ChangeLog	(revision 20501)
@@ -1,3 +1,7 @@
+Thu Dec  4 01:22:41 2008  Tadayoshi Funaba  <tadf@d...>
+
+	* complex.c (f_signbit): NaN may be signed value.
+
 Wed Dec  3 22:54:39 2008  Nobuyoshi Nakada  <nobu@r...>
 
 	* parse.y (expr): keyword_not can continue across newline.

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]