]> granicus.if.org Git - python/commitdiff
Make the GCC-4.8 compiler happy by moving declarations to the top of the function.
authorRaymond Hettinger <python@rcn.com>
Sat, 20 Jul 2013 02:52:04 +0000 (19:52 -0700)
committerRaymond Hettinger <python@rcn.com>
Sat, 20 Jul 2013 02:52:04 +0000 (19:52 -0700)
Modules/_ctypes/libffi_osx/ffi.c
Modules/_ctypes/libffi_osx/x86/x86-ffi64.c

index bf420936dbd235eb93062e957433ee688caafe52..96826b5c8e5bae6bee263fe878cecc843db30071 100644 (file)
@@ -38,12 +38,13 @@ initialize_aggregate(
 /*@out@*/      ffi_type*       arg)
 {
 /*@-usedef@*/
+       ffi_type**      ptr;
 
        if (arg == NULL || arg->elements == NULL ||
                arg->size != 0 || arg->alignment != 0)
                return FFI_BAD_TYPEDEF;
 
-       ffi_type**      ptr = &(arg->elements[0]);
+    ptr = &(arg->elements[0]);
 
        while ((*ptr) != NULL)
        {
@@ -135,16 +136,16 @@ ffi_prep_cif(
 /*@dependent@*/ /*@out@*/ /*@partial@*/ ffi_type*      rtype, 
 /*@dependent@*/                        ffi_type**              atypes)
 {
+       unsigned int    bytes   = 0;
+       unsigned int    i;
+       ffi_type**              ptr;
+
        if (cif == NULL)
                return FFI_BAD_TYPEDEF;
 
        if (abi <= FFI_FIRST_ABI || abi > FFI_DEFAULT_ABI)
                return FFI_BAD_ABI;
 
-       unsigned int    bytes   = 0;
-       unsigned int    i;
-       ffi_type**              ptr;
-
        cif->abi = abi;
        cif->arg_types = atypes;
        cif->nargs = nargs;
index 06feaf23da0b83333aba0e837176dd5e218ca579..9839833e146ec72c2744e3c03a901179e6a3c224 100644 (file)
@@ -225,14 +225,16 @@ classify_argument(
                        /* Merge the fields of structure.  */
                        for (ptr = type->elements; *ptr != NULL; ptr++)
                        {
+                               int num, pos;
+
                                byte_offset = ALIGN(byte_offset, (*ptr)->alignment);
 
-                               int     num = classify_argument(*ptr, subclasses, byte_offset % 8);
+                               num = classify_argument(*ptr, subclasses, byte_offset % 8);
 
                                if (num == 0)
                                        return 0;
 
-                               int pos = byte_offset / 8;
+                               pos = byte_offset / 8;
 
                                for (i = 0; i < num; i++)
                                {
@@ -589,11 +591,12 @@ ffi_prep_closure(
        void                    (*fun)(ffi_cif*, void*, void**, void*),
        void*                   user_data)
 {
+               volatile unsigned short*        tramp;
+
        if (cif->abi != FFI_UNIX64)
                return FFI_BAD_ABI;
 
-       volatile unsigned short*        tramp =
-               (volatile unsigned short*)&closure->tramp[0];
+       tramp = (volatile unsigned short*)&closure->tramp[0];
 
        tramp[0] = 0xbb49;              /* mov <code>, %r11     */
        *(void* volatile*)&tramp[1] = ffi_closure_unix64;