Hi,

I'm going to apply the patch below if there are no objections.

On PowerPC FreeBSD we have DOUBLE = LONGDOUBLE, so w/o the below the
compilation fails with a double 'case' entry.
Something went wrong with the latest upstream patch. And I didn't have a
chance to test earlier.

Ok?

TIA,
Andreas

2013-02-02  Andreas Tobler  <andre...@fgznet.ch>

        * src/powerpc/ffi.c (ffi_prep_cif_machdep): Fix case where
        DOUBLE equal LONGDOUBLE.

Index: src/powerpc/ffi.c
===================================================================
--- src/powerpc/ffi.c   (revision 195611)
+++ src/powerpc/ffi.c   (working copy)
@@ -664,9 +664,11 @@
   switch (type)
     {
 #ifndef __NO_FPRS__
+#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE
     case FFI_TYPE_LONGDOUBLE:
       flags |= FLAG_RETURNS_128BITS;
       /* Fall through.  */
+#endif
     case FFI_TYPE_DOUBLE:
       flags |= FLAG_RETURNS_64BITS;
       /* Fall through.  */

Reply via email to