]> granicus.if.org Git - python/commitdiff
Fixes so that _ctypes can be compiled with the MingW compiler.
authorThomas Heller <theller@ctypes.org>
Mon, 3 Jul 2006 08:04:05 +0000 (08:04 +0000)
committerThomas Heller <theller@ctypes.org>
Mon, 3 Jul 2006 08:04:05 +0000 (08:04 +0000)
It seems that the definition of '__attribute__(x)' was responsible for
the compiler ignoring the '__fastcall' attribute on the
ffi_closure_SYSV function in libffi_msvc/ffi.c, took me quite some
time to figure this out.

Modules/_ctypes/libffi_msvc/fficonfig.h
Modules/_ctypes/libffi_msvc/ffitarget.h

index 25b630593d7b59642cda8c115e17748829ca7c3b..c14f653ec894cfd8b1a868feea04092c74a8844a 100644 (file)
@@ -3,8 +3,10 @@
 /* fficonfig.h.  Generated automatically by configure.  */
 /* fficonfig.h.in.  Generated automatically from configure.in by autoheader.  */
 
-/* Defines for MSVC */
+/* Define this for MSVC, but not for mingw32! */
+#ifdef _MSC_VER
 #define __attribute__(x) /* */
+#endif
 #define alloca _alloca
 
 /*----------------------------------------------------------------*/
index 57d275b01718870577f1e40f9e17f18f62d5cb59..78c0c37caeb3e81d0460b534152def505841463a 100644 (file)
@@ -71,11 +71,7 @@ typedef enum ffi_abi {
 #define FFI_TRAMPOLINE_SIZE 24
 #define FFI_NATIVE_RAW_API 0
 #else
-#ifdef _MSC_VER
-# define FFI_TRAMPOLINE_SIZE 15
-#else
-# define FFI_TRAMPOLINE_SIZE 10
-#endif
+#define FFI_TRAMPOLINE_SIZE 15
 #define FFI_NATIVE_RAW_API 1   /* x86 has native raw api support */
 #endif