bug#21901: bit shift wrong on maximal right shift

2018-10-20 Thread Mark H Weaver
Zefram writes: > With Guile 2.0.11: > > scheme@(guile-user)> (ash 123 (ash -1 63)) > $1 = 123 Fixed in commit 1990aa916382d0afcebd5315a6d6f555949ff654 on the stable-2.2 branch. Closing this bug now. Thanks very much for finding this subtle bug. Mark

bug#21901: bit shift wrong on maximal right shift

2018-10-14 Thread Mark H Weaver
Zefram writes: > With Guile 2.0.11: > > scheme@(guile-user)> (ash 123 (ash -1 63)) > $1 = 123 > > Correct result would of course be zero. Problem only occurs for > exactly this shift distance: one bit less produces the right answer. Nice catch! It's finally fixed in commit 1990aa916382d0afcebd

bug#21901: bit shift wrong on maximal right shift

2016-06-20 Thread Andy Wingo
On Fri 13 Nov 2015 11:22, Zefram writes: > With Guile 2.0.11: > > scheme@(guile-user)> (ash 123 (ash -1 63)) > $1 = 123 > > Correct result would of course be zero. Problem only occurs for > exactly this shift distance: one bit less produces the right answer. > Problem also occurs on Guile 1.8.8.

bug#21901: bit shift wrong on maximal right shift

2015-11-13 Thread Zefram
With Guile 2.0.11: scheme@(guile-user)> (ash 123 (ash -1 63)) $1 = 123 Correct result would of course be zero. Problem only occurs for exactly this shift distance: one bit less produces the right answer. Problem also occurs on Guile 1.8.8. Looking at the implementation, the problem is attributa