This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libffi/29181] New: libffi/src/powerpc/ffi_darwin.c not 64-bit clean
- From: "howarth at nitro dot med dot uc dot edu" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 22 Sep 2006 13:38:31 -0000
- Subject: [Bug libffi/29181] New: libffi/src/powerpc/ffi_darwin.c not 64-bit clean
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
When compiled at -m64 on Darwin PPC, we get the warning...
../../../../gcc-4.2-20060915/libffi/src/powerpc/ffi_darwin.c: In function
'ffi_prep_args':
../../../../gcc-4.2-20060915/libffi/src/powerpc/ffi_darwin.c:117: warning: cast
from pointer to integer of different size
for the line...
*next_arg++ = (unsigned)(char *)ecif->rvalue;
It would appear that we should be doing the same thing as in libffi.c...
===================================================================
--- ffi_darwin.c (revision 117142)
+++ ffi_darwin.c (working copy)
@@ -114,7 +114,7 @@
Return values are referenced by r3, so r4 is the first parameter. */
if (flags & FLAG_RETVAL_REFERENCE)
- *next_arg++ = (unsigned)(char *)ecif->rvalue;
+ *next_arg++ = (unsigned long)(char *)ecif->rvalue;
/* Now for the arguments. */
for (;
I will be testing this fix tonight and seeing if it improves the current
level of failures for the libffi testsuite at -m64 on Darwin PPC.
--
Summary: libffi/src/powerpc/ffi_darwin.c not 64-bit clean
Product: gcc
Version: 4.2.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: libffi
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: howarth at nitro dot med dot uc dot edu
GCC build triplet: powerpc-apple-darwin8
GCC host triplet: powerpc-apple-darwin8
GCC target triplet: powerpc-apple-darwin8
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29181