mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-16 16:50:21 +02:00
(scm_srfi60_copy_bit): Should be long not int for fixnum
bitshift, fixes 64-bit systems setting a bit between 32 and 63. Reported by Aaron M. Ucko, Debian bug 396119.
This commit is contained in:
parent
19a39718ac
commit
dcee71903f
1 changed files with 1 additions and 1 deletions
|
@ -86,7 +86,7 @@ SCM_DEFINE (scm_srfi60_copy_bit, "copy-bit", 3, 0, 0,
|
|||
if (ii < SCM_LONG_BIT-1)
|
||||
{
|
||||
nn &= ~(1L << ii); /* zap bit at index */
|
||||
nn |= (bb << ii); /* insert desired bit */
|
||||
nn |= ((long) bb << ii); /* insert desired bit */
|
||||
return scm_from_long (nn);
|
||||
}
|
||||
else
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue