diff options
author | Mark H Weaver <mhw@netris.org> | 2013-08-01 14:01:58 -0400 |
---|---|---|
committer | Mark H Weaver <mhw@netris.org> | 2013-08-03 14:32:04 -0400 |
commit | 478fa0d53026f5420de5a1dab8b4f46e67138deb (patch) | |
tree | 9325380ca72eeb538a4ee4a7590bb304fa74bb15 | |
parent | 00472a22bbbbbeaf2c0e61520d4f155ace05e41c (diff) | |
download | guile-478fa0d53026f5420de5a1dab8b4f46e67138deb.tar.gz |
VM: Redefine INUM_MIN and INUM_MAX without assumptions.
* libguile/vm-i-scheme.c (INUM_MIN, INUM_MAX): Redefine to avoid
assumptions about the representation of inums.
-rw-r--r-- | libguile/vm-i-scheme.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/libguile/vm-i-scheme.c b/libguile/vm-i-scheme.c index 7402cc1a7..edd783ef5 100644 --- a/libguile/vm-i-scheme.c +++ b/libguile/vm-i-scheme.c @@ -207,8 +207,10 @@ VM_DEFINE_FUNCTION (149, ge, "ge?", 2) /* The maximum/minimum tagged integers. */ #undef INUM_MAX #undef INUM_MIN -#define INUM_MAX (INTPTR_MAX - 1) -#define INUM_MIN (INTPTR_MIN + scm_tc2_int) +#define INUM_MAX \ + ((scm_t_signed_bits) SCM_UNPACK (SCM_I_MAKINUM (SCM_MOST_POSITIVE_FIXNUM))) +#define INUM_MIN \ + ((scm_t_signed_bits) SCM_UNPACK (SCM_I_MAKINUM (SCM_MOST_NEGATIVE_FIXNUM))) #undef FUNC2 #define FUNC2(CFUNC,SFUNC) \ |