summaryrefslogtreecommitdiff
path: root/ruby.h
diff options
context:
space:
mode:
authorusa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2002-03-15 08:51:31 +0000
committerusa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2002-03-15 08:51:31 +0000
commit6ba0d31e8ffe03c6372ab41cae24770d71a54017 (patch)
tree37f3cc389dc8c449e81dc137d28552aee1a4c1bf /ruby.h
parent23beb1a9dd6654262d17d9dde4f8566d8c4277cc (diff)
* bignum.c, intern.h (rb_ull2big, rb_ll2big, rb_ull2inum, rb_ll2inum,
big2ull, rb_big2ull, rb_big2ll): use LONG_LONG macro instead of long long. * numeric.c, intern.h, ruby.h (rb_num2ll, rb_num2ull): ditto. * ruby.h: use _I64_MAX and _I64_MIN if they are defined (for VC++). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2207 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ruby.h')
-rw-r--r--ruby.h20
1 files changed, 14 insertions, 6 deletions
diff --git a/ruby.h b/ruby.h
index a399511f59..12b373948b 100644
--- a/ruby.h
+++ b/ruby.h
@@ -90,15 +90,23 @@ typedef unsigned long ID;
# ifdef LONG_LONG_MAX
# define LLONG_MAX LONG_LONG_MAX
# else
+# ifdef _I64_MAX
+# define LLONG_MAX _I64_MAX
+# else
/* assuming 64bit(2's complement) long long */
-# define LLONG_MAX 9223372036854775807LL
+# define LLONG_MAX 9223372036854775807LL
+# endif
# endif
# endif
# ifndef LLONG_MIN
# ifdef LONG_LONG_MIN
# define LLONG_MIN LONG_LONG_MIN
# else
-# define LLONG_MIN (-LLONG_MAX-1)
+# ifdef _I64_MIN
+# define LLONG_MIN _I64_MAX
+# else
+# define LLONG_MIN (-LLONG_MAX-1)
+# endif
# endif
# endif
#endif
@@ -120,9 +128,9 @@ VALUE rb_uint2inum _((unsigned long));
#define rb_uint_new(v) rb_uint2inum(v)
#if HAVE_LONG_LONG
-VALUE rb_ll2inum _((long long));
+VALUE rb_ll2inum _((LONG_LONG));
#define LL2NUM(v) rb_ll2inum(v)
-VALUE rb_ull2inum _((unsigned long long));
+VALUE rb_ull2inum _((unsigned LONG_LONG));
#define ULL2NUM(v) rb_ull2inum(v)
#endif
@@ -233,8 +241,8 @@ int rb_fix2int _((VALUE));
#endif
#if HAVE_LONG_LONG
-long long rb_num2ll _((VALUE));
-unsigned long long rb_num2ull _((VALUE));
+LONG_LONG rb_num2ll _((VALUE));
+unsigned LONG_LONG rb_num2ull _((VALUE));
# define NUM2LL(x) (FIXNUM_P(x)?FIX2LONG(x):rb_num2ll((VALUE)x))
#endif