From 3c456d3a5d259b37652c2ae20455c16fa02d2e8e 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/branches/ruby_1_8@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 e1cbb94828..91d01d523c 100644 --- a/ruby.h +++ b/ruby.h @@ -70,11 +70,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