Well I figured this out that it was likely caused by compiling guile with 
llvm-gcc (which is depreciated).  Please see more details on this issue in the 
CGEN mailing list.

Old Nabble - Sourceware - cgen list - 64-bit instruction mask emitting as 
signed hex value



On Oct 4, 2011, at 9:48 PM, Brian Mokrzycki wrote:

> Hi all,
> 
>       I'm running into a problem between Guile 1.6.4 and Guile 1.8.7.  
> Basically I'm manipulating bit masks in Guile and need to generate a 
> hexadecimal string representation of an integer.  Unfortutely this worked 
> just fine in Guile 1.6.4 but not so well in Guile 1.8.7.
> 
> The offending statement:
> 
> guile> (number->string #xFFFFFFFFFFFFFFFF 16)
> 
> Resolves to
> 
> "-1" in Guile 1.8.7
> "ffffffffffffffff" in Guile 1.6.4
> 
> It appears that Guile is treating the number as a signed value in 1.8 and an 
> unsigned value in 1.6.  I'm really looking for the 1.6 interpretation. Is 
> this a bug?  If not, how to get this to come out as an unsigned value?
> 
> -Brian
> 
> 
> 

Reply via email to