29#define LIBFFI_HIDE_BASIC_TYPES
36#define FFI_TYPEDEF(name, type, id, maybe_const)\
37struct struct_align_##name { \
41maybe_const ffi_type ffi_type_##name = { \
43 offsetof(struct struct_align_##name, x), \
47#define FFI_COMPLEX_TYPEDEF(name, type, maybe_const) \
48static ffi_type *ffi_elements_complex_##name [2] = { \
49 (ffi_type *)(&ffi_type_##name), NULL \
51struct struct_align_complex_##name { \
55maybe_const ffi_type ffi_type_complex_##name = { \
56 sizeof(_Complex type), \
57 offsetof(struct struct_align_complex_##name, x), \
59 (ffi_type **)ffi_elements_complex_##name \
64 1, 1, FFI_TYPE_VOID,
NULL
81#if !defined HAVE_LONG_DOUBLE_VARIANT || defined __alpha__
82#define FFI_LDBL_CONST const
92# if defined(__LONG_DOUBLE_128__) && FFI_TYPE_LONGDOUBLE != 4
93# error FFI_TYPE_LONGDOUBLE out of date
95const ffi_type ffi_type_longdouble = { 16, 16, 4,
NULL };
96#elif FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE
100#ifdef FFI_TARGET_HAS_COMPLEX_TYPE
103#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE
#define FFI_TYPE_LONGDOUBLE
#define FFI_TYPEDEF(name, type, id, maybe_const)
const ffi_type ffi_type_void
#define FFI_COMPLEX_TYPEDEF(name, type, maybe_const)