From 482b3c1835e0a7c0f35d1a358d0477b1053e7a8d Mon Sep 17 00:00:00 2001 From: naruse Date: Wed, 30 Dec 2009 10:44:02 +0000 Subject: * include/ruby/defines.h (INFINITY): this is float. * include/ruby/defines.h (NAN): ditto. * numericc.c (rb_infinity): change content as float. * numericc.c (rb_nan): ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@26202 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 10 ++++++++++ include/ruby/defines.h | 6 ++++-- numeric.c | 8 ++++---- 3 files changed, 18 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index d8b8b6788..7b352bdee 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +Wed Dec 30 19:40:00 2009 NARUSE, Yui + + * include/ruby/defines.h (INFINITY): this is float. + + * include/ruby/defines.h (NAN): ditto. + + * numericc.c (rb_infinity): change content as float. + + * numericc.c (rb_nan): ditto. + Wed Dec 30 17:59:14 2009 Nobuyoshi Nakada * gem_prelude.rb (push_all_highest_version_gems_on_load_path): diff --git a/include/ruby/defines.h b/include/ruby/defines.h index a81aef841..7bb2788aa 100644 --- a/include/ruby/defines.h +++ b/include/ruby/defines.h @@ -102,15 +102,17 @@ void xfree(void*); #ifdef INFINITY # define HAVE_INFINITY #else +/** @internal */ extern const unsigned char rb_infinity[]; -# define INFINITY (*(double *)rb_infinity) +# define INFINITY (*(float *)rb_infinity) #endif #ifdef NAN # define HAVE_NAN #else +/** @internal */ extern const unsigned char rb_nan[]; -# define NAN (*(double *)rb_nan) +# define NAN (*(float *)rb_nan) #endif #ifdef __CYGWIN__ diff --git a/numeric.c b/numeric.c index 319f7b2c4..9fdbadf83 100644 --- a/numeric.c +++ b/numeric.c @@ -65,16 +65,16 @@ #ifdef HAVE_INFINITY #elif BYTE_ORDER == LITTLE_ENDIAN -const unsigned char rb_infinity[] = "\x00\x00\x00\x00\x00\x00\xf0\x7f"; +const unsigned char rb_infinity[] = "\x00\x00\x80\x7f"; #else -const unsigned char rb_infinity[] = "\x7f\xf0\x00\x00\x00\x00\x00\x00"; +const unsigned char rb_infinity[] = "\x7f\x80\x00\x00"; #endif #ifdef HAVE_NAN #elif BYTE_ORDER == LITTLE_ENDIAN -const unsigned char rb_nan[] = "\x00\x00\x00\x00\x00\x00\xf8\x7f"; +const unsigned char rb_nan[] = "\x00\x00\xc0\x7f"; #else -const unsigned char rb_nan[] = "\x7f\xf8\x00\x00\x00\x00\x00\x00"; +const unsigned char rb_nan[] = "\x7f\xc0\x00\x00"; #endif extern double round(double); -- cgit