summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--numeric.c4
2 files changed, 7 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 46781b1786..27bd6a2f3a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Fri Aug 5 22:16:20 2011 Naohisa Goto <ngotogenome@gmail.com>
+
+ * numeric.c (rb_infinity, rb_nan): use WORDS_BIGENDIAN to get endian.
+ fix [Bug #5160] [ruby-dev:44356]
+
Fri Aug 5 15:57:10 2011 Naohisa Goto <ngotogenome@gmail.com>
* complex.c (f_signbit): fix compile error in gcc4 on Solaris with
diff --git a/numeric.c b/numeric.c
index 272bbd1e76..46b2e8cf17 100644
--- a/numeric.c
+++ b/numeric.c
@@ -65,14 +65,14 @@
#endif
#ifdef HAVE_INFINITY
-#elif BYTE_ORDER == LITTLE_ENDIAN
+#elif !defined(WORDS_BIGENDIAN) /* BYTE_ORDER == LITTLE_ENDIAN */
const unsigned char rb_infinity[] = "\x00\x00\x80\x7f";
#else
const unsigned char rb_infinity[] = "\x7f\x80\x00\x00";
#endif
#ifdef HAVE_NAN
-#elif BYTE_ORDER == LITTLE_ENDIAN
+#elif !defined(WORDS_BIGENDIAN) /* BYTE_ORDER == LITTLE_ENDIAN */
const unsigned char rb_nan[] = "\x00\x00\xc0\x7f";
#else
const unsigned char rb_nan[] = "\x7f\xc0\x00\x00";