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!
diff --git a/Misc/NEWS b/Misc/NEWS
index 6234733..9140ac3 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -50,6 +50,8 @@
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 @@
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 @@
/* 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;