You might expect that you can simply read these fields for a type that
has been laid out by libffi. However, there are some caveats.
ffi_type *desired_type;
ffi_abi desired_abi;
…
ffi_cif cif;
if (ffi_prep_cif (&cif, desired_abi, 0, desired_type, NULL) == FFI_OK)
{
size_t size = desired_type->size;
unsigned short alignment = desired_type->alignment;
}