From 5dab497052d15c575183039c8d0f4a92426ae895 Mon Sep 17 00:00:00 2001 From: matz Date: Tue, 26 Jul 2005 09:16:37 +0000 Subject: * ruby.h: support LLP64 model. [ruby-talk:149524] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8838 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ruby.h | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'ruby.h') diff --git a/ruby.h b/ruby.h index ddda5c396b..ff67ab2b5f 100644 --- a/ruby.h +++ b/ruby.h @@ -77,11 +77,18 @@ extern "C" { # define alloca __alloca #endif -#if SIZEOF_LONG != SIZEOF_VOIDP -# error ---->> ruby requires sizeof(void*) == sizeof(long) to be compiled. <<---- -#endif +#if SIZEOF_LONG == SIZEOF_VOIDP typedef unsigned long VALUE; typedef unsigned long ID; +#elif SIZEOF_LONG_LONG == SIZEOF_VOIDP +typedef unsigned long long VALUE; +typedef unsigned long long ID; +#elif SIZEOF___INT64 == SIZEOF_VOIDP +typedef unsigned __int64 VALUE; +typedef unsigned __int64 ID; +#else +# error ---->> ruby requires sizeof(void*) == sizeof(long) to be compiled. <<---- +#endif #ifdef __STDC__ # include -- cgit v1.2.3