This is the mail archive of the
libffi-discuss@sourceware.org
mailing list for the libffi project.
Re: Validate broken on x86_64 and PPC
- From: Ian Lynagh <igloo at earth dot li>
- To: Ben Lippmeier <Ben dot Lippmeier at anu dot edu dot au>
- Cc: BuildBot Collator <cvs-ghc at haskell dot org>, libffi-discuss at sourceware dot org
- Date: Tue, 26 May 2009 17:33:33 +0100
- Subject: Re: Validate broken on x86_64 and PPC
- References: <4A1BAC65.4080607@anu.edu.au> <4A1BD252.7080906@anu.edu.au>
On Tue, May 26, 2009 at 09:28:18PM +1000, Ben Lippmeier wrote:
>
> There's a similar validate problem on PPC.
> Looks like word size, or other config thing is messed up.
>
> gcc -DHAVE_CONFIG_H -I. -I. -I./include -Iinclude -I./src -Wall -g
> -fexceptions -O -g -O2 -Wall -Werror -MT src/powerpc/ffi_darwin.lo -MD
> -MP -MF src/powerpc/.deps/ffi_darwin.Tpo -c src/powerpc/ffi_darwin.c -o
> src/powerpc/ffi_darwin.o
> cc1: warnings being treated as errors
> src/powerpc/ffi_darwin.c: In function 'ffi_call':
> src/powerpc/ffi_darwin.c:454: warning: passing argument 6 of
> 'ffi_call_AIX' from incompatible pointer type
> src/powerpc/ffi_darwin.c:458: warning: passing argument 6 of
> 'ffi_call_DARWIN' from incompatible pointer type
> make[4]: *** [src/powerpc/ffi_darwin.lo] Error 1
> make[3]: *** [all-recursive] Error 1
> make[2]: *** [all] Error 2
> libtool: install: `libffi.la' is not a valid libtool archive
> Try `libtool --help --mode=install' for more information.
> make[1]: *** [libffi/stamp.ffi.build] Error 1
> make[1]: *** Waiting for unfinished jobs....
> make: *** [all] Error 2
This looks like a libffi bug to me, so I'm CCing
libffi-discuss@sourceware.org
The 6th argument of ffi_call_AIX and ffi_call_DARWIN is given as
void (*fn2)(void)
in the prototype, but they are being passed ffi_prep_args, which has
type
void ffi_prep_args(extended_cif *ecif, unsigned *const stack)
The latest release (3.0.8) looks like it has the same problem.
Thanks
Ian