$NetBSD: patch-ab,v 1.1 2006/12/01 11:47:12 joerg Exp $

--- source/libffi/src/x86/ffi.c.orig	2006-07-10 13:52:52.000000000 +0000
+++ source/libffi/src/x86/ffi.c
@@ -121,7 +121,7 @@ ffi_status ffi_prep_cif_machdep(ffi_cif 
   switch (cif->rtype->type)
     {
     case FFI_TYPE_VOID:
-#if !defined(X86_WIN32) && !defined(__OpenBSD__) && !defined(__FreeBSD__)
+#if !defined(X86_WIN32) && !defined(__OpenBSD__) && !defined(__FreeBSD__) && !defined(__DragonFly__)
     case FFI_TYPE_STRUCT:
 #endif
     case FFI_TYPE_SINT64:
@@ -135,7 +135,7 @@ ffi_status ffi_prep_cif_machdep(ffi_cif 
       cif->flags = FFI_TYPE_SINT64;
       break;
 
-#if defined(X86_WIN32) || defined(__OpenBSD__) || defined(__FreeBSD__)
+#if defined(X86_WIN32) || defined(__OpenBSD__) || defined(__FreeBSD__) || defined(__DragonFly__)
     case FFI_TYPE_STRUCT:
       if (cif->rtype->size == 1)
         {
