summaryrefslogtreecommitdiff
path: root/ruby.h
diff options
context:
space:
mode:
authorakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-07-03 07:48:09 +0000
committerakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-07-03 07:48:09 +0000
commit356ecfc99e553607e33d2189f836c9a6beb9c810 (patch)
tree78042dc17b6d83186c3cbe0716355b7996866601 /ruby.h
parent0f67efee0e088862fd2bdedafd1c35fec109ada7 (diff)
* include/ruby/ruby.h (POSFIXABLE): use FIXNUM_MAX+1 instead of
FIXNUM_MAX to make it possible to convert to double accurately. It assumes FLT_RADIX is 2. fix RubyForge bug #14102. backported from 1.9. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@17842 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ruby.h')
-rw-r--r--ruby.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/ruby.h b/ruby.h
index f51a81292e..4281ad4a0e 100644
--- a/ruby.h
+++ b/ruby.h
@@ -166,7 +166,7 @@ VALUE rb_ull2inum _((unsigned LONG_LONG));
#define FIX2LONG(x) RSHIFT((long)x,1)
#define FIX2ULONG(x) (((unsigned long)(x))>>1)
#define FIXNUM_P(f) (((long)(f))&FIXNUM_FLAG)
-#define POSFIXABLE(f) ((f) <= FIXNUM_MAX)
+#define POSFIXABLE(f) ((f) < FIXNUM_MAX+1)
#define NEGFIXABLE(f) ((f) >= FIXNUM_MIN)
#define FIXABLE(f) (POSFIXABLE(f) && NEGFIXABLE(f))