This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[patch] libffi prep_cif.c move FFI_ASSERT_VALID_TYPE


while investigating the pyobjc-tc.c I came to prep_cif.c:

It could be that we have some uninitialized types, therefore we do the initialization. But it doesn't make sense to check the validity of the type before we did the initialization, or?

We could probably leave this check anyway since we do it in initialize_aggregate.

Is this ok for mainline?


2003-10-26 Andreas Tobler <>

	* src/prep_cif.c (ffi_prep_cif): Move the validity check after
	the initialization.

RCS file: /cvs/gcc/gcc/libffi/src/prep_cif.c,v retrieving revision 1.7 diff -u -r1.7 prep_cif.c --- prep_cif.c 21 Oct 2003 19:01:54 -0000 1.7 +++ prep_cif.c 26 Oct 2003 11:23:41 -0000 @@ -125,12 +125,14 @@

   for (ptr = cif->arg_types, i = cif->nargs; i > 0; i--, ptr++)
-      /* Perform a sanity check on the argument type */

       /* Initialize any uninitialized aggregate type definitions */
       if (((*ptr)->size == 0) && (initialize_aggregate((*ptr)) != FFI_OK))
        return FFI_BAD_TYPEDEF;
+      /* Perform a sanity check on the argument type, do this
+        check after the initialization.  */

 #if !defined __x86_64__ && !defined S390
 #ifdef SPARC

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]