GNU bug report logs - #13342
Clang, the FFI, and 8-bit signed integers

Previous Next

Package: guile;

Reported by: Peter Teeson <pteeson <at> me.com>

Date: Wed, 2 Jan 2013 23:06:02 UTC

Severity: normal

Tags: notabug

Merged with 13386

Done: ludo <at> gnu.org (Ludovic Courtès)

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: ludo <at> gnu.org (Ludovic Courtès)
To: Peter Teeson <pteeson <at> me.com>
Cc: 13342 <at> debbugs.gnu.org
Subject: bug#13342: Errors trying to build Guile 2.0.7
Date: Fri, 04 Jan 2013 18:23:34 +0100
Hi,

Peter Teeson <pteeson <at> me.com> skribis:

> On 2013-01-03, at 10:22 AM, Ludovic Courtès wrote:
>>> (A) I solved this one by installing GNU readline-6.2.
>>> Prior to that it must have used Apple's deadline which didn't have the rl_get_keymap_name
>>> function.
>> 
>> Yes, that’s because you were using the Readline “compatibility” layer of
>> libeditline, which is shipped as part of MacOS.
>
>>> You might wish to make a test for that function in configure and maybe make GNU readline a required lib?
>> 
>> There are tests checking for GNU Readline.  The problem is that
>> libeditline attempts to replicate Readline’s API, but not quite, hence
>> the problem.  That’s why ‘README’ insists on using GNU Readline.
> Before I did/do anything I always read the README ;}
> Somehow I missed the README insisting - I still don't see it there;}
> There is a cryptic statement on page 1
> "It will also use the libreadline library if it is available." 
>
> and buried later on at line 413 (using BBEdit)
> "guile-readline:
>       The glue code for using GNU readline with Guile.  This
>       will be build when configure can find a recent enough readline
>       library on your system."
>
> I agree there should be something mentioning the Mac situation and insisting on on GNU Readline. Where do you think it should be explicitly mentioned? In the Special Instructions For Some Systems section?

Well, you’re right that it doesn’t really insist.  ;-)  It does mention
GNU Readline though, which is not what was being used here.

I’m reluctant to adding anything special about libeditline, since
they’re really failing to be compatible with Readline here, and it’s
something to be fixed in libeditline.

>>> bad return from expression `(f-sum -1 2000 -30000 40000000000)': expected 39999971999; got 39999972255
>>> FAIL: test-ffi
>> 
>> This is a known issue when building Guile with LLVM/Clang:
>> 
>> http://bugs.gnu.org/10015
>> http://bugs.gnu.org/10681
>> 
>> It would be great if you could investigate.
>
> I'd be glad to try and help but please give me pointers on how to approach this.

I’d first add printfs in test_ffi_sum (in test-ffi-lib.c) to see if it
gets the right arguments.  Depending on the result, I’d try to call
test_ffi_sum from C with the same arguments to see if it’s an
integer-wrapping issue.

I’ll try a Clang build when time permits to see what happens.

Thanks,
Ludo’.




This bug report was last modified 12 years and 110 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.