29 #define LIBFFI_HIDE_BASIC_TYPES
36 #define FFI_TYPEDEF(name, type, id, maybe_const)\
37 struct struct_align_##name { \
41 maybe_const ffi_type ffi_type_##name = { \
43 offsetof(struct struct_align_##name, x), \
47 #define FFI_COMPLEX_TYPEDEF(name, type, maybe_const) \
48 static ffi_type *ffi_elements_complex_##name [2] = { \
49 (ffi_type *)(&ffi_type_##name), NULL \
51 struct struct_align_complex_##name { \
55 maybe_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
84 #define FFI_LDBL_CONST
92 # if defined(__LONG_DOUBLE_128__) && FFI_TYPE_LONGDOUBLE != 4
93 # error FFI_TYPE_LONGDOUBLE out of date
95 const 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