This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug libffi/29181] New: libffi/src/powerpc/ffi_darwin.c not 64-bit clean


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]