--- configure.in.org 2008-07-09 18:32:53.000000000 +0200 +++ configure.in 2008-07-09 18:46:38.000000000 +0200 @@ -352,6 +352,7 @@ AC_CHECK_TYPE([uint32_t],[scm_stdint_has_uint32=1],,[#include ]) AC_CHECK_TYPE([int64_t],[scm_stdint_has_int64=1],,[#include ]) AC_CHECK_TYPE([uint64_t],[scm_stdint_has_uint64=1],,[#include ]) + AC_CHECK_TYPE([uintptr_t],[scm_stdint_has_uintptr=1],,[#include ]) AC_CHECK_TYPE([intmax_t],[scm_stdint_has_intmax=1],,[#include ]) AC_CHECK_TYPE([uintmax_t],[scm_stdint_has_uintmax=1],,[#include ]) fi @@ -367,6 +368,7 @@ unset ac_cv_type_uint32_t unset ac_cv_type_int64_t unset ac_cv_type_uint64_t +unset ac_cv_type_uintptr_t unset ac_cv_type_intmax_t unset ac_cv_type_uintmax_t @@ -380,6 +382,7 @@ AC_CHECK_TYPE([uint32_t],[scm_inttypes_has_uint32=1],,[#include ]) AC_CHECK_TYPE([int64_t],[scm_inttypes_has_int64=1],,[#include ]) AC_CHECK_TYPE([uint64_t],[scm_inttypes_has_uint64=1],,[#include ]) + AC_CHECK_TYPE([uintptr_t],[scm_inttypes_has_uintptr=1],,[#include ]) AC_CHECK_TYPE([intmax_t],[scm_inttypes_has_intmax=1],,[#include ]) AC_CHECK_TYPE([uintmax_t],[scm_inttypes_has_uintmax=1],,[#include ]) fi @@ -532,6 +535,20 @@ fi AC_SUBST([SCM_I_GSC_T_UINT64]) + +### Optional type scm_t_uintptr +if test "$scm_stdint_has_uintptr"; then + SCM_I_GSC_T_UINTPTR='"uintptr_t"' + SCM_I_GSC_NEEDS_STDINT_H=1 +elif test "$scm_inttypes_has_uintptr"; then + SCM_I_GSC_T_UINTPTR='"uintptr_t"' + SCM_I_GSC_NEEDS_INTTYPES_H=1 +else + AC_MSG_ERROR([Can't find appropriate type for scm_t_uintptr.]) +fi +AC_SUBST([SCM_I_GSC_T_UINTPTR]) + + ### Required type scm_t_intmax ### ### We try 'intmax_t', '__int64', 'long long' in this order. When @@ -553,6 +570,7 @@ fi AC_SUBST([SCM_I_GSC_T_INTMAX]) + ### Required type scm_t_uintmax ### ### We try 'uintmax_t', 'unsigned __int64', 'unsigned long long' in