github.com/prattmic/llgo-embedded@v0.0.0-20150820070356-41cfecea0e1e/third_party/gofrontend/libffi/man/ffi_prep_cif.3 (about) 1 .Dd February 15, 2008 2 .Dt ffi_prep_cif 3 3 .Sh NAME 4 .Nm ffi_prep_cif 5 .Nd Prepare a 6 .Nm ffi_cif 7 structure for use with 8 .Nm ffi_call 9 . 10 .Sh SYNOPSIS 11 .In ffi.h 12 .Ft ffi_status 13 .Fo ffi_prep_cif 14 .Fa "ffi_cif *cif" 15 .Fa "ffi_abi abi" 16 .Fa "unsigned int nargs" 17 .Fa "ffi_type *rtype" 18 .Fa "ffi_type **atypes" 19 .Fc 20 .Sh DESCRIPTION 21 The 22 .Nm ffi_prep_cif 23 function prepares a 24 .Nm ffi_cif 25 structure for use with 26 .Nm ffi_call 27 . 28 .Fa abi 29 specifies a set of calling conventions to use. 30 .Fa atypes 31 is an array of 32 .Fa nargs 33 pointers to 34 .Nm ffi_type 35 structs that describe the data type, size and alignment of each argument. 36 .Fa rtype 37 points to an 38 .Nm ffi_type 39 that describes the data type, size and alignment of the 40 return value. Note that to call a variadic function 41 .Nm ffi_prep_cif_var 42 must be used instead. 43 .Sh RETURN VALUES 44 Upon successful completion, 45 .Nm ffi_prep_cif 46 returns 47 .Nm FFI_OK . 48 It will return 49 .Nm FFI_BAD_TYPEDEF 50 if 51 .Fa cif 52 is 53 .Nm NULL 54 or 55 .Fa atypes 56 or 57 .Fa rtype 58 is malformed. If 59 .Fa abi 60 does not refer to a valid ABI, 61 .Nm FFI_BAD_ABI 62 will be returned. Available ABIs are 63 defined in 64 .Nm <ffitarget.h> . 65 .Sh SEE ALSO 66 .Xr ffi 3 , 67 .Xr ffi_call 3 , 68 .Xr ffi_prep_cif_var 3