summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGregory P. Smith <greg@krypto.org>2013-11-17 21:57:43 (GMT)
committerGregory P. Smith <greg@krypto.org>2013-11-17 21:57:43 (GMT)
commit61b976f12714fe6dbea5d9da52e2c814f4a0522a (patch)
treed64ab07a53c564472470f2039f83abef1f0e8a7a
parent898e9767343a072a0ef86c8d212175d5b7e61d93 (diff)
parent7929a1da1a6d18894210ff82f6107e51d7566bb0 (diff)
downloadcpython-61b976f12714fe6dbea5d9da52e2c814f4a0522a.zip
cpython-61b976f12714fe6dbea5d9da52e2c814f4a0522a.tar.gz
cpython-61b976f12714fe6dbea5d9da52e2c814f4a0522a.tar.bz2
Fix compilation error under gcc of the ctypes module bundled libffi for arm.
A variable was declared below the top of a block and one function was using a K&R C style function declaration!
-rw-r--r--Misc/NEWS2
-rw-r--r--Modules/_ctypes/libffi/src/arm/ffi.c14
2 files changed, 9 insertions, 7 deletions
diff --git a/Misc/NEWS b/Misc/NEWS
index 6234733..9140ac3 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -50,6 +50,8 @@ Core and Builtins
Library
-------
+- Fix compilation error under gcc of the ctypes module bundled libffi for arm.
+
- Issue #19448: Add private API to SSL module to lookup ASN.1 objects by OID,
NID, short name and long name.
diff --git a/Modules/_ctypes/libffi/src/arm/ffi.c b/Modules/_ctypes/libffi/src/arm/ffi.c
index 3ccceb9..7fd7f44 100644
--- a/Modules/_ctypes/libffi/src/arm/ffi.c
+++ b/Modules/_ctypes/libffi/src/arm/ffi.c
@@ -221,11 +221,11 @@ void ffi_call(ffi_cif *cif, void (*fn)(void), void *rvalue, void **avalue)
int vfp_struct = (cif->flags == FFI_TYPE_STRUCT_VFP_FLOAT
|| cif->flags == FFI_TYPE_STRUCT_VFP_DOUBLE);
+ unsigned int temp;
+
ecif.cif = cif;
ecif.avalue = avalue;
- unsigned int temp;
-
/* If the return value is a struct and we don't have a return */
/* value address then we need to make one */
@@ -278,11 +278,11 @@ void ffi_closure_VFP (ffi_closure *);
/* This function is jumped to by the trampoline */
unsigned int
-ffi_closure_SYSV_inner (closure, respp, args, vfp_args)
- ffi_closure *closure;
- void **respp;
- void *args;
- void *vfp_args;
+ffi_closure_SYSV_inner(
+ ffi_closure *closure,
+ void **respp,
+ void *args,
+ void *vfp_args)
{
// our various things...
ffi_cif *cif;