[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Guile 1.5.8 beta available for testing.
From: |
Marius Vollmer |
Subject: |
Re: Guile 1.5.8 beta available for testing. |
Date: |
28 Aug 2002 18:28:57 +0200 |
User-agent: |
Gnus/5.09 (Gnus v5.9.0) Emacs/21.2 |
"Lars J. Aas" <address@hidden> writes:
> I'd appreciate it if the SCM_POSFIXABLE() bug, steming from the
> fallback SCM_LONG_BIT define in __scm.h, was fixed before 1.6 was
> released.
I'm not yet satisfied with the analysis. As far as I can see, the
problem lies not with SCM_LONG_BIT being unsigned incorrectly, but
with SCM_MOST_POSITIVE_FIXNUM being unsigned incorrectly.
We compute SCM_MOST_POSITIVE_FIXNUM like this
((((scm_t_signed_bits) 1) << (SCM_I_FIXNUM_BIT - 1)) - 1)
where SCM_I_FIXNUM_BIT is unsigned when SCM_LONG_BIT is. However, the
type of the result of a bit-shift operator is that of the promoted
left operand (6.5.7;3 in the ANSI C standard). So
SCM_MOST_POSITIVE_FIXNUM is signed since scm_t_signed_bits is.
Your compiler seems to get this wrong, right?
A fix would be to move the scm_t_signed_bits cast one level up, and
also in SCM_MOST_NEGATIVE_FIXNUM. We should do that and put a
deriding comment about MS on the code. OK?
Is that the only issue holding off a plain build of 1.5.8 with the
Microsoft compiler? If there are others, we shouldn't bother to work
around this particular bug in the release.
--
GPG: D5D4E405 - 2F9B BCCC 8527 692A 04E3 331E FAF8 226A D5D4 E405
- Guile 1.5.8 beta available for testing., Rob Browning, 2002/08/26
- Re: Guile 1.5.8 beta available for testing., tomas, 2002/08/29
- Re: Guile 1.5.8 beta available for testing., Rob Browning, 2002/08/29
- Re: Guile 1.5.8 beta available for testing., tomas, 2002/08/29
- Re: Guile 1.5.8 beta available for testing., tomas, 2002/08/29
- Re: Guile 1.5.8 beta available for testing., Rob Browning, 2002/08/29
- Re: Guile 1.5.8 beta available for testing., Lynn Winebarger, 2002/08/29
- Re: Guile 1.5.8 beta available for testing., Marius Vollmer, 2002/08/29
- Re: Guile 1.5.8 beta available for testing., Lynn Winebarger, 2002/08/29