Fixed #181 -- Corrected problems with ARMv7 build under iOS.

Based on a patch from @fealebenpae, with input from @SolaWing and @rth7680,
and testing from @superdump.
This commit is contained in:
Russell Keith-Magee
2015-12-21 00:37:06 +08:00
parent e3d2812ce4
commit bc4fc07aa5
8 changed files with 323 additions and 517 deletions

View File

@@ -152,7 +152,7 @@ If the function being called is variadic (varargs) then
@code{ffi_prep_cif_var} must be used instead of @code{ffi_prep_cif}.
@findex ffi_prep_cif_var
@defun ffi_status ffi_prep_cif_var (ffi_cif *@var{cif}, ffi_abi var{abi}, unsigned int @var{nfixedargs}, unsigned int var{ntotalargs}, ffi_type *@var{rtype}, ffi_type **@var{argtypes})
@defun ffi_status ffi_prep_cif_var (ffi_cif *@var{cif}, ffi_abi @var{abi}, unsigned int @var{nfixedargs}, unsigned int @var{ntotalargs}, ffi_type *@var{rtype}, ffi_type **@var{argtypes})
This initializes @var{cif} according to the given parameters for
a call to a variadic function. In general it's operation is the
same as for @code{ffi_prep_cif} except that:
@@ -161,7 +161,7 @@ same as for @code{ffi_prep_cif} except that:
variadic arguments. It must be greater than zero.
@var{ntotalargs} the total number of arguments, including variadic
and fixed arguments.
and fixed arguments. @var{argtypes} must have this many elements.
Note that, different cif's must be prepped for calls to the same
function when different numbers of arguments are passed.