rustygetdata/
getdata_bindings.rs

1/* automatically generated by rust-bindgen 0.69.4 */
2
3#![allow(non_snake_case)]
4#![allow(non_camel_case_types)]
5#![allow(non_upper_case_globals)]
6#![allow(improper_ctypes)]
7#![allow(unused)]
8#![allow(unused_variables)]
9
10#[derive(PartialEq, Copy, Clone, Hash, Debug, Default)]
11#[repr(C)]
12pub struct __BindgenComplex<T> {
13    pub re: T,
14    pub im: T,
15}
16pub const GD_DIRFILE_STANDARDS_VERSION: u32 = 10;
17pub const _MATH_H: u32 = 1;
18pub const _FEATURES_H: u32 = 1;
19pub const _DEFAULT_SOURCE: u32 = 1;
20pub const __GLIBC_USE_ISOC2X: u32 = 0;
21pub const __USE_ISOC11: u32 = 1;
22pub const __USE_ISOC99: u32 = 1;
23pub const __USE_ISOC95: u32 = 1;
24pub const __USE_POSIX_IMPLICITLY: u32 = 1;
25pub const _POSIX_SOURCE: u32 = 1;
26pub const _POSIX_C_SOURCE: u32 = 200809;
27pub const __USE_POSIX: u32 = 1;
28pub const __USE_POSIX2: u32 = 1;
29pub const __USE_POSIX199309: u32 = 1;
30pub const __USE_POSIX199506: u32 = 1;
31pub const __USE_XOPEN2K: u32 = 1;
32pub const __USE_XOPEN2K8: u32 = 1;
33pub const _ATFILE_SOURCE: u32 = 1;
34pub const __WORDSIZE: u32 = 64;
35pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1;
36pub const __SYSCALL_WORDSIZE: u32 = 64;
37pub const __TIMESIZE: u32 = 64;
38pub const __USE_MISC: u32 = 1;
39pub const __USE_ATFILE: u32 = 1;
40pub const __USE_FORTIFY_LEVEL: u32 = 0;
41pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0;
42pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0;
43pub const _STDC_PREDEF_H: u32 = 1;
44pub const __STDC_IEC_559__: u32 = 1;
45pub const __STDC_IEC_60559_BFP__: u32 = 201404;
46pub const __STDC_IEC_559_COMPLEX__: u32 = 1;
47pub const __STDC_IEC_60559_COMPLEX__: u32 = 201404;
48pub const __STDC_ISO_10646__: u32 = 201706;
49pub const __GNU_LIBRARY__: u32 = 6;
50pub const __GLIBC__: u32 = 2;
51pub const __GLIBC_MINOR__: u32 = 35;
52pub const _SYS_CDEFS_H: u32 = 1;
53pub const __glibc_c99_flexarr_available: u32 = 1;
54pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0;
55pub const __HAVE_GENERIC_SELECTION: u32 = 1;
56pub const __GLIBC_USE_LIB_EXT2: u32 = 0;
57pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0;
58pub const __GLIBC_USE_IEC_60559_BFP_EXT_C2X: u32 = 0;
59pub const __GLIBC_USE_IEC_60559_EXT: u32 = 0;
60pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0;
61pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X: u32 = 0;
62pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0;
63pub const _BITS_TYPES_H: u32 = 1;
64pub const _BITS_TYPESIZES_H: u32 = 1;
65pub const __OFF_T_MATCHES_OFF64_T: u32 = 1;
66pub const __INO_T_MATCHES_INO64_T: u32 = 1;
67pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1;
68pub const __STATFS_MATCHES_STATFS64: u32 = 1;
69pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64: u32 = 1;
70pub const __FD_SETSIZE: u32 = 1024;
71pub const _BITS_TIME64_H: u32 = 1;
72pub const _BITS_LIBM_SIMD_DECL_STUBS_H: u32 = 1;
73pub const __HAVE_FLOAT128: u32 = 0;
74pub const __HAVE_DISTINCT_FLOAT128: u32 = 0;
75pub const __HAVE_FLOAT64X: u32 = 1;
76pub const __HAVE_FLOAT64X_LONG_DOUBLE: u32 = 1;
77pub const __HAVE_FLOAT16: u32 = 0;
78pub const __HAVE_FLOAT32: u32 = 1;
79pub const __HAVE_FLOAT64: u32 = 1;
80pub const __HAVE_FLOAT32X: u32 = 1;
81pub const __HAVE_FLOAT128X: u32 = 0;
82pub const __HAVE_DISTINCT_FLOAT16: u32 = 0;
83pub const __HAVE_DISTINCT_FLOAT32: u32 = 0;
84pub const __HAVE_DISTINCT_FLOAT64: u32 = 0;
85pub const __HAVE_DISTINCT_FLOAT32X: u32 = 0;
86pub const __HAVE_DISTINCT_FLOAT64X: u32 = 0;
87pub const __HAVE_DISTINCT_FLOAT128X: u32 = 0;
88pub const __HAVE_FLOATN_NOT_TYPEDEF: u32 = 0;
89pub const __FP_LOGB0_IS_MIN: u32 = 1;
90pub const __FP_LOGBNAN_IS_MIN: u32 = 1;
91pub const FP_ILOGB0: i32 = -2147483648;
92pub const FP_ILOGBNAN: i32 = -2147483648;
93pub const __MATH_DECLARING_DOUBLE: u32 = 1;
94pub const __MATH_DECLARING_FLOATN: u32 = 0;
95pub const __MATH_DECLARE_LDOUBLE: u32 = 1;
96pub const FP_NAN: u32 = 0;
97pub const FP_INFINITE: u32 = 1;
98pub const FP_ZERO: u32 = 2;
99pub const FP_SUBNORMAL: u32 = 3;
100pub const FP_NORMAL: u32 = 4;
101pub const MATH_ERRNO: u32 = 1;
102pub const MATH_ERREXCEPT: u32 = 2;
103pub const math_errhandling: u32 = 3;
104pub const M_E: f64 = 2.718281828459045;
105pub const M_LOG2E: f64 = 1.4426950408889634;
106pub const M_LOG10E: f64 = 0.4342944819032518;
107pub const M_LN2: f64 = 0.6931471805599453;
108pub const M_LN10: f64 = 2.302585092994046;
109pub const M_PI: f64 = 3.141592653589793;
110pub const M_PI_2: f64 = 1.5707963267948966;
111pub const M_PI_4: f64 = 0.7853981633974483;
112pub const M_1_PI: f64 = 0.3183098861837907;
113pub const M_2_PI: f64 = 0.6366197723675814;
114pub const M_2_SQRTPI: f64 = 1.1283791670955126;
115pub const M_SQRT2: f64 = 1.4142135623730951;
116pub const M_SQRT1_2: f64 = 0.7071067811865476;
117pub const _SYS_TYPES_H: u32 = 1;
118pub const __clock_t_defined: u32 = 1;
119pub const __clockid_t_defined: u32 = 1;
120pub const __time_t_defined: u32 = 1;
121pub const __timer_t_defined: u32 = 1;
122pub const _BITS_STDINT_INTN_H: u32 = 1;
123pub const __BIT_TYPES_DEFINED__: u32 = 1;
124pub const _ENDIAN_H: u32 = 1;
125pub const _BITS_ENDIAN_H: u32 = 1;
126pub const __LITTLE_ENDIAN: u32 = 1234;
127pub const __BIG_ENDIAN: u32 = 4321;
128pub const __PDP_ENDIAN: u32 = 3412;
129pub const _BITS_ENDIANNESS_H: u32 = 1;
130pub const __BYTE_ORDER: u32 = 1234;
131pub const __FLOAT_WORD_ORDER: u32 = 1234;
132pub const LITTLE_ENDIAN: u32 = 1234;
133pub const BIG_ENDIAN: u32 = 4321;
134pub const PDP_ENDIAN: u32 = 3412;
135pub const BYTE_ORDER: u32 = 1234;
136pub const _BITS_BYTESWAP_H: u32 = 1;
137pub const _BITS_UINTN_IDENTITY_H: u32 = 1;
138pub const _SYS_SELECT_H: u32 = 1;
139pub const __sigset_t_defined: u32 = 1;
140pub const __timeval_defined: u32 = 1;
141pub const _STRUCT_TIMESPEC: u32 = 1;
142pub const FD_SETSIZE: u32 = 1024;
143pub const _BITS_PTHREADTYPES_COMMON_H: u32 = 1;
144pub const _THREAD_SHARED_TYPES_H: u32 = 1;
145pub const _BITS_PTHREADTYPES_ARCH_H: u32 = 1;
146pub const __SIZEOF_PTHREAD_MUTEX_T: u32 = 40;
147pub const __SIZEOF_PTHREAD_ATTR_T: u32 = 56;
148pub const __SIZEOF_PTHREAD_RWLOCK_T: u32 = 56;
149pub const __SIZEOF_PTHREAD_BARRIER_T: u32 = 32;
150pub const __SIZEOF_PTHREAD_MUTEXATTR_T: u32 = 4;
151pub const __SIZEOF_PTHREAD_COND_T: u32 = 48;
152pub const __SIZEOF_PTHREAD_CONDATTR_T: u32 = 4;
153pub const __SIZEOF_PTHREAD_RWLOCKATTR_T: u32 = 8;
154pub const __SIZEOF_PTHREAD_BARRIERATTR_T: u32 = 4;
155pub const _THREAD_MUTEX_INTERNAL_H: u32 = 1;
156pub const __PTHREAD_MUTEX_HAVE_PREV: u32 = 1;
157pub const __have_pthread_attr_t: u32 = 1;
158pub const GD_MAX_LINE_LENGTH: u32 = 4096;
159pub const GD_E_OK: u32 = 0;
160pub const GD_E_FORMAT: i32 = -1;
161pub const GD_E_CREAT: i32 = -2;
162pub const GD_E_BAD_CODE: i32 = -3;
163pub const GD_E_BAD_TYPE: i32 = -4;
164pub const GD_E_IO: i32 = -5;
165pub const GD_E_INTERNAL_ERROR: i32 = -6;
166pub const GD_E_ALLOC: i32 = -7;
167pub const GD_E_RANGE: i32 = -8;
168pub const GD_E_LUT: i32 = -9;
169pub const GD_E_RECURSE_LEVEL: i32 = -10;
170pub const GD_E_BAD_DIRFILE: i32 = -11;
171pub const GD_E_BAD_FIELD_TYPE: i32 = -12;
172pub const GD_E_ACCMODE: i32 = -13;
173pub const GD_E_UNSUPPORTED: i32 = -14;
174pub const GD_E_UNKNOWN_ENCODING: i32 = -15;
175pub const GD_E_BAD_ENTRY: i32 = -16;
176pub const GD_E_DUPLICATE: i32 = -17;
177pub const GD_E_DIMENSION: i32 = -18;
178pub const GD_E_BAD_INDEX: i32 = -19;
179pub const GD_E_BAD_SCALAR: i32 = -20;
180pub const GD_E_BAD_REFERENCE: i32 = -21;
181pub const GD_E_PROTECTED: i32 = -22;
182pub const GD_E_DELETE: i32 = -23;
183pub const GD_E_ARGUMENT: i32 = -24;
184pub const GD_E_CALLBACK: i32 = -25;
185pub const GD_E_EXISTS: i32 = -26;
186pub const GD_E_UNCLEAN_DB: i32 = -27;
187pub const GD_E_DOMAIN: i32 = -28;
188pub const GD_E_BOUNDS: i32 = -29;
189pub const GD_E_LINE_TOO_LONG: i32 = -30;
190pub const GD_N_ERROR_CODES: u32 = 31;
191pub const GD_E_BAD_REPR: i32 = -3;
192pub const GD_E_OPEN_LINFILE: i32 = -9;
193pub const GD_E_FLUSH: i32 = -5;
194pub const GD_E_OPEN: i32 = -5;
195pub const GD_E_OPEN_FRAGMENT: i32 = -5;
196pub const GD_E_OPEN_INCLUDE: i32 = -5;
197pub const GD_E_RAW_IO: i32 = -5;
198pub const GD_E_TRUNC: i32 = -5;
199pub const GD_MAX_LINCOM: u32 = 3;
200pub const GD_MAX_POLYORD: u32 = 5;
201pub const GD_E_FORMAT_BAD_SPF: u32 = 1;
202pub const GD_E_FORMAT_N_FIELDS: u32 = 2;
203pub const GD_E_FORMAT_N_TOK: u32 = 3;
204pub const GD_E_FORMAT_NUMBITS: u32 = 4;
205pub const GD_E_FORMAT_BITNUM: u32 = 5;
206pub const GD_E_FORMAT_BITSIZE: u32 = 6;
207pub const GD_E_FORMAT_CHARACTER: u32 = 7;
208pub const GD_E_FORMAT_BAD_LINE: u32 = 8;
209pub const GD_E_FORMAT_RES_NAME: u32 = 9;
210pub const GD_E_FORMAT_ENDIAN: u32 = 10;
211pub const GD_E_FORMAT_BAD_TYPE: u32 = 11;
212pub const GD_E_FORMAT_BAD_NAME: u32 = 12;
213pub const GD_E_FORMAT_UNTERM: u32 = 13;
214pub const GD_E_FORMAT_METARAW: u32 = 14;
215pub const GD_E_FORMAT_NO_FIELD: u32 = 15;
216pub const GD_E_FORMAT_DUPLICATE: u32 = 16;
217pub const GD_E_FORMAT_LOCATION: u32 = 17;
218pub const GD_E_FORMAT_PROTECT: u32 = 18;
219pub const GD_E_FORMAT_LITERAL: u32 = 19;
220pub const GD_E_FORMAT_WINDOP: u32 = 20;
221pub const GD_E_FORMAT_META_META: u32 = 21;
222pub const GD_E_FORMAT_ALIAS: u32 = 22;
223pub const GD_E_FORMAT_MPLEXVAL: u32 = 23;
224pub const GD_SYNTAX_ABORT: u32 = 0;
225pub const GD_SYNTAX_RESCAN: u32 = 1;
226pub const GD_SYNTAX_IGNORE: u32 = 2;
227pub const GD_SYNTAX_CONTINUE: u32 = 3;
228pub const GD_PROTECT_NONE: u32 = 0;
229pub const GD_PROTECT_FORMAT: u32 = 1;
230pub const GD_PROTECT_DATA: u32 = 2;
231pub const GD_PROTECT_ALL: u32 = 3;
232pub const GD_VERSION_CURRENT: i32 = -1;
233pub const GD_VERSION_LATEST: i32 = -2;
234pub const GD_VERSION_EARLIEST: i32 = -3;
235pub const GD_ALL_FRAGMENTS: i32 = -1;
236pub const GD_SCALAR_ENTRY_BIT: u32 = 16;
237pub const GD_SPECIAL_ENTRY_BIT: u32 = 32;
238pub const GD_N_ENTYPES: u32 = 19;
239pub const GD_ALL_ENTRIES: u32 = 0;
240pub const GD_VECTOR_ENTRIES: u32 = 33;
241pub const GD_SCALAR_ENTRIES: u32 = 34;
242pub const GD_ENTRIES_HIDDEN: u32 = 1;
243pub const GD_ENTRIES_NOALIAS: u32 = 2;
244pub const GD_REGEX_PCRE: u32 = 4;
245pub const GD_REGEX_EXTENDED: u32 = 8;
246pub const GD_REGEX_ICASE: u32 = 16;
247pub const GD_REGEX_CASELESS: u32 = 16;
248pub const GD_REGEX_JAVASCRIPT: u32 = 32;
249pub const GD_REGEX_UNICODE: u32 = 64;
250pub const GD_HERE: i32 = -1;
251pub const GD_DEFAULT_LOOKBACK: u32 = 10;
252pub const GD_LOOKBACK_ALL: i32 = -1;
253pub const _INTTYPES_H: u32 = 1;
254pub const _STDINT_H: u32 = 1;
255pub const _BITS_WCHAR_H: u32 = 1;
256pub const _BITS_STDINT_UINTN_H: u32 = 1;
257pub const INT8_MIN: i32 = -128;
258pub const INT16_MIN: i32 = -32768;
259pub const INT32_MIN: i32 = -2147483648;
260pub const INT8_MAX: u32 = 127;
261pub const INT16_MAX: u32 = 32767;
262pub const INT32_MAX: u32 = 2147483647;
263pub const UINT8_MAX: u32 = 255;
264pub const UINT16_MAX: u32 = 65535;
265pub const UINT32_MAX: u32 = 4294967295;
266pub const INT_LEAST8_MIN: i32 = -128;
267pub const INT_LEAST16_MIN: i32 = -32768;
268pub const INT_LEAST32_MIN: i32 = -2147483648;
269pub const INT_LEAST8_MAX: u32 = 127;
270pub const INT_LEAST16_MAX: u32 = 32767;
271pub const INT_LEAST32_MAX: u32 = 2147483647;
272pub const UINT_LEAST8_MAX: u32 = 255;
273pub const UINT_LEAST16_MAX: u32 = 65535;
274pub const UINT_LEAST32_MAX: u32 = 4294967295;
275pub const INT_FAST8_MIN: i32 = -128;
276pub const INT_FAST16_MIN: i64 = -9223372036854775808;
277pub const INT_FAST32_MIN: i64 = -9223372036854775808;
278pub const INT_FAST8_MAX: u32 = 127;
279pub const INT_FAST16_MAX: u64 = 9223372036854775807;
280pub const INT_FAST32_MAX: u64 = 9223372036854775807;
281pub const UINT_FAST8_MAX: u32 = 255;
282pub const UINT_FAST16_MAX: i32 = -1;
283pub const UINT_FAST32_MAX: i32 = -1;
284pub const INTPTR_MIN: i64 = -9223372036854775808;
285pub const INTPTR_MAX: u64 = 9223372036854775807;
286pub const UINTPTR_MAX: i32 = -1;
287pub const PTRDIFF_MIN: i64 = -9223372036854775808;
288pub const PTRDIFF_MAX: u64 = 9223372036854775807;
289pub const SIG_ATOMIC_MIN: i32 = -2147483648;
290pub const SIG_ATOMIC_MAX: u32 = 2147483647;
291pub const SIZE_MAX: i32 = -1;
292pub const WINT_MIN: u32 = 0;
293pub const WINT_MAX: u32 = 4294967295;
294pub const ____gwchar_t_defined: u32 = 1;
295pub const __PRI64_PREFIX: &[u8; 2] = b"l\0";
296pub const __PRIPTR_PREFIX: &[u8; 2] = b"l\0";
297pub const PRId8: &[u8; 2] = b"d\0";
298pub const PRId16: &[u8; 2] = b"d\0";
299pub const PRId32: &[u8; 2] = b"d\0";
300pub const PRId64: &[u8; 3] = b"ld\0";
301pub const PRIdLEAST8: &[u8; 2] = b"d\0";
302pub const PRIdLEAST16: &[u8; 2] = b"d\0";
303pub const PRIdLEAST32: &[u8; 2] = b"d\0";
304pub const PRIdLEAST64: &[u8; 3] = b"ld\0";
305pub const PRIdFAST8: &[u8; 2] = b"d\0";
306pub const PRIdFAST16: &[u8; 3] = b"ld\0";
307pub const PRIdFAST32: &[u8; 3] = b"ld\0";
308pub const PRIdFAST64: &[u8; 3] = b"ld\0";
309pub const PRIi8: &[u8; 2] = b"i\0";
310pub const PRIi16: &[u8; 2] = b"i\0";
311pub const PRIi32: &[u8; 2] = b"i\0";
312pub const PRIi64: &[u8; 3] = b"li\0";
313pub const PRIiLEAST8: &[u8; 2] = b"i\0";
314pub const PRIiLEAST16: &[u8; 2] = b"i\0";
315pub const PRIiLEAST32: &[u8; 2] = b"i\0";
316pub const PRIiLEAST64: &[u8; 3] = b"li\0";
317pub const PRIiFAST8: &[u8; 2] = b"i\0";
318pub const PRIiFAST16: &[u8; 3] = b"li\0";
319pub const PRIiFAST32: &[u8; 3] = b"li\0";
320pub const PRIiFAST64: &[u8; 3] = b"li\0";
321pub const PRIo8: &[u8; 2] = b"o\0";
322pub const PRIo16: &[u8; 2] = b"o\0";
323pub const PRIo32: &[u8; 2] = b"o\0";
324pub const PRIo64: &[u8; 3] = b"lo\0";
325pub const PRIoLEAST8: &[u8; 2] = b"o\0";
326pub const PRIoLEAST16: &[u8; 2] = b"o\0";
327pub const PRIoLEAST32: &[u8; 2] = b"o\0";
328pub const PRIoLEAST64: &[u8; 3] = b"lo\0";
329pub const PRIoFAST8: &[u8; 2] = b"o\0";
330pub const PRIoFAST16: &[u8; 3] = b"lo\0";
331pub const PRIoFAST32: &[u8; 3] = b"lo\0";
332pub const PRIoFAST64: &[u8; 3] = b"lo\0";
333pub const PRIu8: &[u8; 2] = b"u\0";
334pub const PRIu16: &[u8; 2] = b"u\0";
335pub const PRIu32: &[u8; 2] = b"u\0";
336pub const PRIu64: &[u8; 3] = b"lu\0";
337pub const PRIuLEAST8: &[u8; 2] = b"u\0";
338pub const PRIuLEAST16: &[u8; 2] = b"u\0";
339pub const PRIuLEAST32: &[u8; 2] = b"u\0";
340pub const PRIuLEAST64: &[u8; 3] = b"lu\0";
341pub const PRIuFAST8: &[u8; 2] = b"u\0";
342pub const PRIuFAST16: &[u8; 3] = b"lu\0";
343pub const PRIuFAST32: &[u8; 3] = b"lu\0";
344pub const PRIuFAST64: &[u8; 3] = b"lu\0";
345pub const PRIx8: &[u8; 2] = b"x\0";
346pub const PRIx16: &[u8; 2] = b"x\0";
347pub const PRIx32: &[u8; 2] = b"x\0";
348pub const PRIx64: &[u8; 3] = b"lx\0";
349pub const PRIxLEAST8: &[u8; 2] = b"x\0";
350pub const PRIxLEAST16: &[u8; 2] = b"x\0";
351pub const PRIxLEAST32: &[u8; 2] = b"x\0";
352pub const PRIxLEAST64: &[u8; 3] = b"lx\0";
353pub const PRIxFAST8: &[u8; 2] = b"x\0";
354pub const PRIxFAST16: &[u8; 3] = b"lx\0";
355pub const PRIxFAST32: &[u8; 3] = b"lx\0";
356pub const PRIxFAST64: &[u8; 3] = b"lx\0";
357pub const PRIX8: &[u8; 2] = b"X\0";
358pub const PRIX16: &[u8; 2] = b"X\0";
359pub const PRIX32: &[u8; 2] = b"X\0";
360pub const PRIX64: &[u8; 3] = b"lX\0";
361pub const PRIXLEAST8: &[u8; 2] = b"X\0";
362pub const PRIXLEAST16: &[u8; 2] = b"X\0";
363pub const PRIXLEAST32: &[u8; 2] = b"X\0";
364pub const PRIXLEAST64: &[u8; 3] = b"lX\0";
365pub const PRIXFAST8: &[u8; 2] = b"X\0";
366pub const PRIXFAST16: &[u8; 3] = b"lX\0";
367pub const PRIXFAST32: &[u8; 3] = b"lX\0";
368pub const PRIXFAST64: &[u8; 3] = b"lX\0";
369pub const PRIdMAX: &[u8; 3] = b"ld\0";
370pub const PRIiMAX: &[u8; 3] = b"li\0";
371pub const PRIoMAX: &[u8; 3] = b"lo\0";
372pub const PRIuMAX: &[u8; 3] = b"lu\0";
373pub const PRIxMAX: &[u8; 3] = b"lx\0";
374pub const PRIXMAX: &[u8; 3] = b"lX\0";
375pub const PRIdPTR: &[u8; 3] = b"ld\0";
376pub const PRIiPTR: &[u8; 3] = b"li\0";
377pub const PRIoPTR: &[u8; 3] = b"lo\0";
378pub const PRIuPTR: &[u8; 3] = b"lu\0";
379pub const PRIxPTR: &[u8; 3] = b"lx\0";
380pub const PRIXPTR: &[u8; 3] = b"lX\0";
381pub const SCNd8: &[u8; 4] = b"hhd\0";
382pub const SCNd16: &[u8; 3] = b"hd\0";
383pub const SCNd32: &[u8; 2] = b"d\0";
384pub const SCNd64: &[u8; 3] = b"ld\0";
385pub const SCNdLEAST8: &[u8; 4] = b"hhd\0";
386pub const SCNdLEAST16: &[u8; 3] = b"hd\0";
387pub const SCNdLEAST32: &[u8; 2] = b"d\0";
388pub const SCNdLEAST64: &[u8; 3] = b"ld\0";
389pub const SCNdFAST8: &[u8; 4] = b"hhd\0";
390pub const SCNdFAST16: &[u8; 3] = b"ld\0";
391pub const SCNdFAST32: &[u8; 3] = b"ld\0";
392pub const SCNdFAST64: &[u8; 3] = b"ld\0";
393pub const SCNi8: &[u8; 4] = b"hhi\0";
394pub const SCNi16: &[u8; 3] = b"hi\0";
395pub const SCNi32: &[u8; 2] = b"i\0";
396pub const SCNi64: &[u8; 3] = b"li\0";
397pub const SCNiLEAST8: &[u8; 4] = b"hhi\0";
398pub const SCNiLEAST16: &[u8; 3] = b"hi\0";
399pub const SCNiLEAST32: &[u8; 2] = b"i\0";
400pub const SCNiLEAST64: &[u8; 3] = b"li\0";
401pub const SCNiFAST8: &[u8; 4] = b"hhi\0";
402pub const SCNiFAST16: &[u8; 3] = b"li\0";
403pub const SCNiFAST32: &[u8; 3] = b"li\0";
404pub const SCNiFAST64: &[u8; 3] = b"li\0";
405pub const SCNu8: &[u8; 4] = b"hhu\0";
406pub const SCNu16: &[u8; 3] = b"hu\0";
407pub const SCNu32: &[u8; 2] = b"u\0";
408pub const SCNu64: &[u8; 3] = b"lu\0";
409pub const SCNuLEAST8: &[u8; 4] = b"hhu\0";
410pub const SCNuLEAST16: &[u8; 3] = b"hu\0";
411pub const SCNuLEAST32: &[u8; 2] = b"u\0";
412pub const SCNuLEAST64: &[u8; 3] = b"lu\0";
413pub const SCNuFAST8: &[u8; 4] = b"hhu\0";
414pub const SCNuFAST16: &[u8; 3] = b"lu\0";
415pub const SCNuFAST32: &[u8; 3] = b"lu\0";
416pub const SCNuFAST64: &[u8; 3] = b"lu\0";
417pub const SCNo8: &[u8; 4] = b"hho\0";
418pub const SCNo16: &[u8; 3] = b"ho\0";
419pub const SCNo32: &[u8; 2] = b"o\0";
420pub const SCNo64: &[u8; 3] = b"lo\0";
421pub const SCNoLEAST8: &[u8; 4] = b"hho\0";
422pub const SCNoLEAST16: &[u8; 3] = b"ho\0";
423pub const SCNoLEAST32: &[u8; 2] = b"o\0";
424pub const SCNoLEAST64: &[u8; 3] = b"lo\0";
425pub const SCNoFAST8: &[u8; 4] = b"hho\0";
426pub const SCNoFAST16: &[u8; 3] = b"lo\0";
427pub const SCNoFAST32: &[u8; 3] = b"lo\0";
428pub const SCNoFAST64: &[u8; 3] = b"lo\0";
429pub const SCNx8: &[u8; 4] = b"hhx\0";
430pub const SCNx16: &[u8; 3] = b"hx\0";
431pub const SCNx32: &[u8; 2] = b"x\0";
432pub const SCNx64: &[u8; 3] = b"lx\0";
433pub const SCNxLEAST8: &[u8; 4] = b"hhx\0";
434pub const SCNxLEAST16: &[u8; 3] = b"hx\0";
435pub const SCNxLEAST32: &[u8; 2] = b"x\0";
436pub const SCNxLEAST64: &[u8; 3] = b"lx\0";
437pub const SCNxFAST8: &[u8; 4] = b"hhx\0";
438pub const SCNxFAST16: &[u8; 3] = b"lx\0";
439pub const SCNxFAST32: &[u8; 3] = b"lx\0";
440pub const SCNxFAST64: &[u8; 3] = b"lx\0";
441pub const SCNdMAX: &[u8; 3] = b"ld\0";
442pub const SCNiMAX: &[u8; 3] = b"li\0";
443pub const SCNoMAX: &[u8; 3] = b"lo\0";
444pub const SCNuMAX: &[u8; 3] = b"lu\0";
445pub const SCNxMAX: &[u8; 3] = b"lx\0";
446pub const SCNdPTR: &[u8; 3] = b"ld\0";
447pub const SCNiPTR: &[u8; 3] = b"li\0";
448pub const SCNoPTR: &[u8; 3] = b"lo\0";
449pub const SCNuPTR: &[u8; 3] = b"lu\0";
450pub const SCNxPTR: &[u8; 3] = b"lx\0";
451pub const GD_SIZE8: u32 = 1;
452pub const GD_SIZE16: u32 = 2;
453pub const GD_SIZE32: u32 = 4;
454pub const GD_SIZE64: u32 = 8;
455pub const GD_SIZE128: u32 = 16;
456pub const GD_SIGNED: u32 = 32;
457pub const GD_IEEE754: u32 = 128;
458pub const GD_COMPLEX: u32 = 256;
459pub const GD_CHAR: u32 = 512;
460pub const GD_EN_COMPSCAL: u32 = 1;
461pub const GD_EN_CALC: u32 = 2;
462pub const GD_EN_HIDDEN: u32 = 4;
463pub const GD_ACCMODE: u32 = 1;
464pub const GD_RDONLY: u64 = 0;
465pub const GD_RDWR: u32 = 1;
466pub const GD_FORCE_ENDIAN: u32 = 2;
467pub const GD_BIG_ENDIAN: u32 = 4;
468pub const GD_LITTLE_ENDIAN: u32 = 8;
469pub const GD_CREAT: u32 = 16;
470pub const GD_EXCL: u32 = 32;
471pub const GD_TRUNC: u32 = 64;
472pub const GD_PEDANTIC: u32 = 128;
473pub const GD_FORCE_ENCODING: u32 = 256;
474pub const GD_VERBOSE: u32 = 512;
475pub const GD_IGNORE_DUPS: u32 = 1024;
476pub const GD_IGNORE_REFS: u32 = 2048;
477pub const GD_PRETTY_PRINT: u32 = 4096;
478pub const GD_ARM_ENDIAN: u32 = 8192;
479pub const GD_NOT_ARM_ENDIAN: u32 = 0;
480pub const GD_PERMISSIVE: u32 = 16384;
481pub const GD_TRUNCSUB: u32 = 32768;
482pub const GD_ENCODING: u32 = 251658240;
483pub const GD_AUTO_ENCODED: u32 = 0;
484pub const GD_UNENCODED: u32 = 16777216;
485pub const GD_TEXT_ENCODED: u32 = 33554432;
486pub const GD_SLIM_ENCODED: u32 = 50331648;
487pub const GD_GZIP_ENCODED: u32 = 67108864;
488pub const GD_BZIP2_ENCODED: u32 = 83886080;
489pub const GD_LZMA_ENCODED: u32 = 100663296;
490pub const GD_SIE_ENCODED: u32 = 117440512;
491pub const GD_ZZIP_ENCODED: u32 = 134217728;
492pub const GD_ZZSLIM_ENCODED: u32 = 150994944;
493pub const GD_FLAC_ENCODED: u32 = 167772160;
494pub const GD_ENC_UNSUPPORTED: u32 = 251658240;
495pub const GD_DEL_META: u32 = 1;
496pub const GD_DEL_DATA: u32 = 2;
497pub const GD_DEL_DEREF: u32 = 4;
498pub const GD_DEL_FORCE: u32 = 8;
499pub const GD_REN_DATA: u32 = 1;
500pub const GD_REN_UPDB: u32 = 2;
501pub const GD_REN_DANGLE: u32 = 4;
502pub const GD_REN_FORCE: u32 = 8;
503pub const GD_SEEK_SET: u32 = 0;
504pub const GD_SEEK_CUR: u32 = 1;
505pub const GD_SEEK_END: u32 = 2;
506pub const GD_SEEK_WRITE: u32 = 4;
507pub const GD_DESYNC_PATHCHECK: u32 = 1;
508pub const GD_DESYNC_REOPEN: u32 = 2;
509pub const GD_OLIMIT_NONE: u32 = 0;
510pub const GD_OLIMIT_CURRENT: i32 = -1;
511pub const GD_OLIMIT_COUNT: i32 = -2;
512pub const GD_GETDATA_VERSION: &[u8; 7] = b"0.11.0\0";
513pub const GD_GETDATA_INT_VERSION: u32 = 1100;
514pub type __u_char = ::std::os::raw::c_uchar;
515pub type __u_short = ::std::os::raw::c_ushort;
516pub type __u_int = ::std::os::raw::c_uint;
517pub type __u_long = ::std::os::raw::c_ulong;
518pub type __int8_t = ::std::os::raw::c_schar;
519pub type __uint8_t = ::std::os::raw::c_uchar;
520pub type __int16_t = ::std::os::raw::c_short;
521pub type __uint16_t = ::std::os::raw::c_ushort;
522pub type __int32_t = ::std::os::raw::c_int;
523pub type __uint32_t = ::std::os::raw::c_uint;
524pub type __int64_t = ::std::os::raw::c_long;
525pub type __uint64_t = ::std::os::raw::c_ulong;
526pub type __int_least8_t = __int8_t;
527pub type __uint_least8_t = __uint8_t;
528pub type __int_least16_t = __int16_t;
529pub type __uint_least16_t = __uint16_t;
530pub type __int_least32_t = __int32_t;
531pub type __uint_least32_t = __uint32_t;
532pub type __int_least64_t = __int64_t;
533pub type __uint_least64_t = __uint64_t;
534pub type __quad_t = ::std::os::raw::c_long;
535pub type __u_quad_t = ::std::os::raw::c_ulong;
536pub type __intmax_t = ::std::os::raw::c_long;
537pub type __uintmax_t = ::std::os::raw::c_ulong;
538pub type __dev_t = ::std::os::raw::c_ulong;
539pub type __uid_t = ::std::os::raw::c_uint;
540pub type __gid_t = ::std::os::raw::c_uint;
541pub type __ino_t = ::std::os::raw::c_ulong;
542pub type __ino64_t = ::std::os::raw::c_ulong;
543pub type __mode_t = ::std::os::raw::c_uint;
544pub type __nlink_t = ::std::os::raw::c_ulong;
545pub type __off_t = ::std::os::raw::c_long;
546pub type __off64_t = ::std::os::raw::c_long;
547pub type __pid_t = ::std::os::raw::c_int;
548#[repr(C)]
549#[derive(Debug, Copy, Clone)]
550pub struct __fsid_t {
551    pub __val: [::std::os::raw::c_int; 2usize],
552}
553#[test]
554fn bindgen_test_layout___fsid_t() {
555    const UNINIT: ::std::mem::MaybeUninit<__fsid_t> = ::std::mem::MaybeUninit::uninit();
556    let ptr = UNINIT.as_ptr();
557    assert_eq!(
558        ::std::mem::size_of::<__fsid_t>(),
559        8usize,
560        concat!("Size of: ", stringify!(__fsid_t))
561    );
562    assert_eq!(
563        ::std::mem::align_of::<__fsid_t>(),
564        4usize,
565        concat!("Alignment of ", stringify!(__fsid_t))
566    );
567    assert_eq!(
568        unsafe { ::std::ptr::addr_of!((*ptr).__val) as usize - ptr as usize },
569        0usize,
570        concat!(
571            "Offset of field: ",
572            stringify!(__fsid_t),
573            "::",
574            stringify!(__val)
575        )
576    );
577}
578pub type __clock_t = ::std::os::raw::c_long;
579pub type __rlim_t = ::std::os::raw::c_ulong;
580pub type __rlim64_t = ::std::os::raw::c_ulong;
581pub type __id_t = ::std::os::raw::c_uint;
582pub type __time_t = ::std::os::raw::c_long;
583pub type __useconds_t = ::std::os::raw::c_uint;
584pub type __suseconds_t = ::std::os::raw::c_long;
585pub type __suseconds64_t = ::std::os::raw::c_long;
586pub type __daddr_t = ::std::os::raw::c_int;
587pub type __key_t = ::std::os::raw::c_int;
588pub type __clockid_t = ::std::os::raw::c_int;
589pub type __timer_t = *mut ::std::os::raw::c_void;
590pub type __blksize_t = ::std::os::raw::c_long;
591pub type __blkcnt_t = ::std::os::raw::c_long;
592pub type __blkcnt64_t = ::std::os::raw::c_long;
593pub type __fsblkcnt_t = ::std::os::raw::c_ulong;
594pub type __fsblkcnt64_t = ::std::os::raw::c_ulong;
595pub type __fsfilcnt_t = ::std::os::raw::c_ulong;
596pub type __fsfilcnt64_t = ::std::os::raw::c_ulong;
597pub type __fsword_t = ::std::os::raw::c_long;
598pub type __ssize_t = ::std::os::raw::c_long;
599pub type __syscall_slong_t = ::std::os::raw::c_long;
600pub type __syscall_ulong_t = ::std::os::raw::c_ulong;
601pub type __loff_t = __off64_t;
602pub type __caddr_t = *mut ::std::os::raw::c_char;
603pub type __intptr_t = ::std::os::raw::c_long;
604pub type __socklen_t = ::std::os::raw::c_uint;
605pub type __sig_atomic_t = ::std::os::raw::c_int;
606pub type _Float32 = f32;
607pub type _Float64 = f64;
608pub type _Float32x = f64;
609pub type _Float64x = u128;
610pub type float_t = f32;
611pub type double_t = f64;
612extern "C" {
613    pub fn __fpclassify(__value: f64) -> ::std::os::raw::c_int;
614}
615extern "C" {
616    pub fn __signbit(__value: f64) -> ::std::os::raw::c_int;
617}
618extern "C" {
619    pub fn __isinf(__value: f64) -> ::std::os::raw::c_int;
620}
621extern "C" {
622    pub fn __finite(__value: f64) -> ::std::os::raw::c_int;
623}
624extern "C" {
625    pub fn __isnan(__value: f64) -> ::std::os::raw::c_int;
626}
627extern "C" {
628    pub fn __iseqsig(__x: f64, __y: f64) -> ::std::os::raw::c_int;
629}
630extern "C" {
631    pub fn __issignaling(__value: f64) -> ::std::os::raw::c_int;
632}
633extern "C" {
634    pub fn acos(__x: f64) -> f64;
635}
636extern "C" {
637    pub fn __acos(__x: f64) -> f64;
638}
639extern "C" {
640    pub fn asin(__x: f64) -> f64;
641}
642extern "C" {
643    pub fn __asin(__x: f64) -> f64;
644}
645extern "C" {
646    pub fn atan(__x: f64) -> f64;
647}
648extern "C" {
649    pub fn __atan(__x: f64) -> f64;
650}
651extern "C" {
652    pub fn atan2(__y: f64, __x: f64) -> f64;
653}
654extern "C" {
655    pub fn __atan2(__y: f64, __x: f64) -> f64;
656}
657extern "C" {
658    pub fn cos(__x: f64) -> f64;
659}
660extern "C" {
661    pub fn __cos(__x: f64) -> f64;
662}
663extern "C" {
664    pub fn sin(__x: f64) -> f64;
665}
666extern "C" {
667    pub fn __sin(__x: f64) -> f64;
668}
669extern "C" {
670    pub fn tan(__x: f64) -> f64;
671}
672extern "C" {
673    pub fn __tan(__x: f64) -> f64;
674}
675extern "C" {
676    pub fn cosh(__x: f64) -> f64;
677}
678extern "C" {
679    pub fn __cosh(__x: f64) -> f64;
680}
681extern "C" {
682    pub fn sinh(__x: f64) -> f64;
683}
684extern "C" {
685    pub fn __sinh(__x: f64) -> f64;
686}
687extern "C" {
688    pub fn tanh(__x: f64) -> f64;
689}
690extern "C" {
691    pub fn __tanh(__x: f64) -> f64;
692}
693extern "C" {
694    pub fn acosh(__x: f64) -> f64;
695}
696extern "C" {
697    pub fn __acosh(__x: f64) -> f64;
698}
699extern "C" {
700    pub fn asinh(__x: f64) -> f64;
701}
702extern "C" {
703    pub fn __asinh(__x: f64) -> f64;
704}
705extern "C" {
706    pub fn atanh(__x: f64) -> f64;
707}
708extern "C" {
709    pub fn __atanh(__x: f64) -> f64;
710}
711extern "C" {
712    pub fn exp(__x: f64) -> f64;
713}
714extern "C" {
715    pub fn __exp(__x: f64) -> f64;
716}
717extern "C" {
718    pub fn frexp(__x: f64, __exponent: *mut ::std::os::raw::c_int) -> f64;
719}
720extern "C" {
721    pub fn __frexp(__x: f64, __exponent: *mut ::std::os::raw::c_int) -> f64;
722}
723extern "C" {
724    pub fn ldexp(__x: f64, __exponent: ::std::os::raw::c_int) -> f64;
725}
726extern "C" {
727    pub fn __ldexp(__x: f64, __exponent: ::std::os::raw::c_int) -> f64;
728}
729extern "C" {
730    pub fn log(__x: f64) -> f64;
731}
732extern "C" {
733    pub fn __log(__x: f64) -> f64;
734}
735extern "C" {
736    pub fn log10(__x: f64) -> f64;
737}
738extern "C" {
739    pub fn __log10(__x: f64) -> f64;
740}
741extern "C" {
742    pub fn modf(__x: f64, __iptr: *mut f64) -> f64;
743}
744extern "C" {
745    pub fn __modf(__x: f64, __iptr: *mut f64) -> f64;
746}
747extern "C" {
748    pub fn expm1(__x: f64) -> f64;
749}
750extern "C" {
751    pub fn __expm1(__x: f64) -> f64;
752}
753extern "C" {
754    pub fn log1p(__x: f64) -> f64;
755}
756extern "C" {
757    pub fn __log1p(__x: f64) -> f64;
758}
759extern "C" {
760    pub fn logb(__x: f64) -> f64;
761}
762extern "C" {
763    pub fn __logb(__x: f64) -> f64;
764}
765extern "C" {
766    pub fn exp2(__x: f64) -> f64;
767}
768extern "C" {
769    pub fn __exp2(__x: f64) -> f64;
770}
771extern "C" {
772    pub fn log2(__x: f64) -> f64;
773}
774extern "C" {
775    pub fn __log2(__x: f64) -> f64;
776}
777extern "C" {
778    pub fn pow(__x: f64, __y: f64) -> f64;
779}
780extern "C" {
781    pub fn __pow(__x: f64, __y: f64) -> f64;
782}
783extern "C" {
784    pub fn sqrt(__x: f64) -> f64;
785}
786extern "C" {
787    pub fn __sqrt(__x: f64) -> f64;
788}
789extern "C" {
790    pub fn hypot(__x: f64, __y: f64) -> f64;
791}
792extern "C" {
793    pub fn __hypot(__x: f64, __y: f64) -> f64;
794}
795extern "C" {
796    pub fn cbrt(__x: f64) -> f64;
797}
798extern "C" {
799    pub fn __cbrt(__x: f64) -> f64;
800}
801extern "C" {
802    pub fn ceil(__x: f64) -> f64;
803}
804extern "C" {
805    pub fn __ceil(__x: f64) -> f64;
806}
807extern "C" {
808    pub fn fabs(__x: f64) -> f64;
809}
810extern "C" {
811    pub fn __fabs(__x: f64) -> f64;
812}
813extern "C" {
814    pub fn floor(__x: f64) -> f64;
815}
816extern "C" {
817    pub fn __floor(__x: f64) -> f64;
818}
819extern "C" {
820    pub fn fmod(__x: f64, __y: f64) -> f64;
821}
822extern "C" {
823    pub fn __fmod(__x: f64, __y: f64) -> f64;
824}
825extern "C" {
826    pub fn isinf(__value: f64) -> ::std::os::raw::c_int;
827}
828extern "C" {
829    pub fn finite(__value: f64) -> ::std::os::raw::c_int;
830}
831extern "C" {
832    pub fn drem(__x: f64, __y: f64) -> f64;
833}
834extern "C" {
835    pub fn __drem(__x: f64, __y: f64) -> f64;
836}
837extern "C" {
838    pub fn significand(__x: f64) -> f64;
839}
840extern "C" {
841    pub fn __significand(__x: f64) -> f64;
842}
843extern "C" {
844    pub fn copysign(__x: f64, __y: f64) -> f64;
845}
846extern "C" {
847    pub fn __copysign(__x: f64, __y: f64) -> f64;
848}
849extern "C" {
850    pub fn nan(__tagb: *const ::std::os::raw::c_char) -> f64;
851}
852extern "C" {
853    pub fn __nan(__tagb: *const ::std::os::raw::c_char) -> f64;
854}
855extern "C" {
856    pub fn isnan(__value: f64) -> ::std::os::raw::c_int;
857}
858extern "C" {
859    pub fn j0(arg1: f64) -> f64;
860}
861extern "C" {
862    pub fn __j0(arg1: f64) -> f64;
863}
864extern "C" {
865    pub fn j1(arg1: f64) -> f64;
866}
867extern "C" {
868    pub fn __j1(arg1: f64) -> f64;
869}
870extern "C" {
871    pub fn jn(arg1: ::std::os::raw::c_int, arg2: f64) -> f64;
872}
873extern "C" {
874    pub fn __jn(arg1: ::std::os::raw::c_int, arg2: f64) -> f64;
875}
876extern "C" {
877    pub fn y0(arg1: f64) -> f64;
878}
879extern "C" {
880    pub fn __y0(arg1: f64) -> f64;
881}
882extern "C" {
883    pub fn y1(arg1: f64) -> f64;
884}
885extern "C" {
886    pub fn __y1(arg1: f64) -> f64;
887}
888extern "C" {
889    pub fn yn(arg1: ::std::os::raw::c_int, arg2: f64) -> f64;
890}
891extern "C" {
892    pub fn __yn(arg1: ::std::os::raw::c_int, arg2: f64) -> f64;
893}
894extern "C" {
895    pub fn erf(arg1: f64) -> f64;
896}
897extern "C" {
898    pub fn __erf(arg1: f64) -> f64;
899}
900extern "C" {
901    pub fn erfc(arg1: f64) -> f64;
902}
903extern "C" {
904    pub fn __erfc(arg1: f64) -> f64;
905}
906extern "C" {
907    pub fn lgamma(arg1: f64) -> f64;
908}
909extern "C" {
910    pub fn __lgamma(arg1: f64) -> f64;
911}
912extern "C" {
913    pub fn tgamma(arg1: f64) -> f64;
914}
915extern "C" {
916    pub fn __tgamma(arg1: f64) -> f64;
917}
918extern "C" {
919    pub fn gamma(arg1: f64) -> f64;
920}
921extern "C" {
922    pub fn __gamma(arg1: f64) -> f64;
923}
924extern "C" {
925    pub fn lgamma_r(arg1: f64, __signgamp: *mut ::std::os::raw::c_int) -> f64;
926}
927extern "C" {
928    pub fn __lgamma_r(arg1: f64, __signgamp: *mut ::std::os::raw::c_int) -> f64;
929}
930extern "C" {
931    pub fn rint(__x: f64) -> f64;
932}
933extern "C" {
934    pub fn __rint(__x: f64) -> f64;
935}
936extern "C" {
937    pub fn nextafter(__x: f64, __y: f64) -> f64;
938}
939extern "C" {
940    pub fn __nextafter(__x: f64, __y: f64) -> f64;
941}
942extern "C" {
943    pub fn nexttoward(__x: f64, __y: u128) -> f64;
944}
945extern "C" {
946    pub fn __nexttoward(__x: f64, __y: u128) -> f64;
947}
948extern "C" {
949    pub fn remainder(__x: f64, __y: f64) -> f64;
950}
951extern "C" {
952    pub fn __remainder(__x: f64, __y: f64) -> f64;
953}
954extern "C" {
955    pub fn scalbn(__x: f64, __n: ::std::os::raw::c_int) -> f64;
956}
957extern "C" {
958    pub fn __scalbn(__x: f64, __n: ::std::os::raw::c_int) -> f64;
959}
960extern "C" {
961    pub fn ilogb(__x: f64) -> ::std::os::raw::c_int;
962}
963extern "C" {
964    pub fn __ilogb(__x: f64) -> ::std::os::raw::c_int;
965}
966extern "C" {
967    pub fn scalbln(__x: f64, __n: ::std::os::raw::c_long) -> f64;
968}
969extern "C" {
970    pub fn __scalbln(__x: f64, __n: ::std::os::raw::c_long) -> f64;
971}
972extern "C" {
973    pub fn nearbyint(__x: f64) -> f64;
974}
975extern "C" {
976    pub fn __nearbyint(__x: f64) -> f64;
977}
978extern "C" {
979    pub fn round(__x: f64) -> f64;
980}
981extern "C" {
982    pub fn __round(__x: f64) -> f64;
983}
984extern "C" {
985    pub fn trunc(__x: f64) -> f64;
986}
987extern "C" {
988    pub fn __trunc(__x: f64) -> f64;
989}
990extern "C" {
991    pub fn remquo(__x: f64, __y: f64, __quo: *mut ::std::os::raw::c_int) -> f64;
992}
993extern "C" {
994    pub fn __remquo(__x: f64, __y: f64, __quo: *mut ::std::os::raw::c_int) -> f64;
995}
996extern "C" {
997    pub fn lrint(__x: f64) -> ::std::os::raw::c_long;
998}
999extern "C" {
1000    pub fn __lrint(__x: f64) -> ::std::os::raw::c_long;
1001}
1002extern "C" {
1003    pub fn llrint(__x: f64) -> ::std::os::raw::c_longlong;
1004}
1005extern "C" {
1006    pub fn __llrint(__x: f64) -> ::std::os::raw::c_longlong;
1007}
1008extern "C" {
1009    pub fn lround(__x: f64) -> ::std::os::raw::c_long;
1010}
1011extern "C" {
1012    pub fn __lround(__x: f64) -> ::std::os::raw::c_long;
1013}
1014extern "C" {
1015    pub fn llround(__x: f64) -> ::std::os::raw::c_longlong;
1016}
1017extern "C" {
1018    pub fn __llround(__x: f64) -> ::std::os::raw::c_longlong;
1019}
1020extern "C" {
1021    pub fn fdim(__x: f64, __y: f64) -> f64;
1022}
1023extern "C" {
1024    pub fn __fdim(__x: f64, __y: f64) -> f64;
1025}
1026extern "C" {
1027    pub fn fmax(__x: f64, __y: f64) -> f64;
1028}
1029extern "C" {
1030    pub fn __fmax(__x: f64, __y: f64) -> f64;
1031}
1032extern "C" {
1033    pub fn fmin(__x: f64, __y: f64) -> f64;
1034}
1035extern "C" {
1036    pub fn __fmin(__x: f64, __y: f64) -> f64;
1037}
1038extern "C" {
1039    pub fn fma(__x: f64, __y: f64, __z: f64) -> f64;
1040}
1041extern "C" {
1042    pub fn __fma(__x: f64, __y: f64, __z: f64) -> f64;
1043}
1044extern "C" {
1045    pub fn scalb(__x: f64, __n: f64) -> f64;
1046}
1047extern "C" {
1048    pub fn __scalb(__x: f64, __n: f64) -> f64;
1049}
1050extern "C" {
1051    pub fn __fpclassifyf(__value: f32) -> ::std::os::raw::c_int;
1052}
1053extern "C" {
1054    pub fn __signbitf(__value: f32) -> ::std::os::raw::c_int;
1055}
1056extern "C" {
1057    pub fn __isinff(__value: f32) -> ::std::os::raw::c_int;
1058}
1059extern "C" {
1060    pub fn __finitef(__value: f32) -> ::std::os::raw::c_int;
1061}
1062extern "C" {
1063    pub fn __isnanf(__value: f32) -> ::std::os::raw::c_int;
1064}
1065extern "C" {
1066    pub fn __iseqsigf(__x: f32, __y: f32) -> ::std::os::raw::c_int;
1067}
1068extern "C" {
1069    pub fn __issignalingf(__value: f32) -> ::std::os::raw::c_int;
1070}
1071extern "C" {
1072    pub fn acosf(__x: f32) -> f32;
1073}
1074extern "C" {
1075    pub fn __acosf(__x: f32) -> f32;
1076}
1077extern "C" {
1078    pub fn asinf(__x: f32) -> f32;
1079}
1080extern "C" {
1081    pub fn __asinf(__x: f32) -> f32;
1082}
1083extern "C" {
1084    pub fn atanf(__x: f32) -> f32;
1085}
1086extern "C" {
1087    pub fn __atanf(__x: f32) -> f32;
1088}
1089extern "C" {
1090    pub fn atan2f(__y: f32, __x: f32) -> f32;
1091}
1092extern "C" {
1093    pub fn __atan2f(__y: f32, __x: f32) -> f32;
1094}
1095extern "C" {
1096    pub fn cosf(__x: f32) -> f32;
1097}
1098extern "C" {
1099    pub fn __cosf(__x: f32) -> f32;
1100}
1101extern "C" {
1102    pub fn sinf(__x: f32) -> f32;
1103}
1104extern "C" {
1105    pub fn __sinf(__x: f32) -> f32;
1106}
1107extern "C" {
1108    pub fn tanf(__x: f32) -> f32;
1109}
1110extern "C" {
1111    pub fn __tanf(__x: f32) -> f32;
1112}
1113extern "C" {
1114    pub fn coshf(__x: f32) -> f32;
1115}
1116extern "C" {
1117    pub fn __coshf(__x: f32) -> f32;
1118}
1119extern "C" {
1120    pub fn sinhf(__x: f32) -> f32;
1121}
1122extern "C" {
1123    pub fn __sinhf(__x: f32) -> f32;
1124}
1125extern "C" {
1126    pub fn tanhf(__x: f32) -> f32;
1127}
1128extern "C" {
1129    pub fn __tanhf(__x: f32) -> f32;
1130}
1131extern "C" {
1132    pub fn acoshf(__x: f32) -> f32;
1133}
1134extern "C" {
1135    pub fn __acoshf(__x: f32) -> f32;
1136}
1137extern "C" {
1138    pub fn asinhf(__x: f32) -> f32;
1139}
1140extern "C" {
1141    pub fn __asinhf(__x: f32) -> f32;
1142}
1143extern "C" {
1144    pub fn atanhf(__x: f32) -> f32;
1145}
1146extern "C" {
1147    pub fn __atanhf(__x: f32) -> f32;
1148}
1149extern "C" {
1150    pub fn expf(__x: f32) -> f32;
1151}
1152extern "C" {
1153    pub fn __expf(__x: f32) -> f32;
1154}
1155extern "C" {
1156    pub fn frexpf(__x: f32, __exponent: *mut ::std::os::raw::c_int) -> f32;
1157}
1158extern "C" {
1159    pub fn __frexpf(__x: f32, __exponent: *mut ::std::os::raw::c_int) -> f32;
1160}
1161extern "C" {
1162    pub fn ldexpf(__x: f32, __exponent: ::std::os::raw::c_int) -> f32;
1163}
1164extern "C" {
1165    pub fn __ldexpf(__x: f32, __exponent: ::std::os::raw::c_int) -> f32;
1166}
1167extern "C" {
1168    pub fn logf(__x: f32) -> f32;
1169}
1170extern "C" {
1171    pub fn __logf(__x: f32) -> f32;
1172}
1173extern "C" {
1174    pub fn log10f(__x: f32) -> f32;
1175}
1176extern "C" {
1177    pub fn __log10f(__x: f32) -> f32;
1178}
1179extern "C" {
1180    pub fn modff(__x: f32, __iptr: *mut f32) -> f32;
1181}
1182extern "C" {
1183    pub fn __modff(__x: f32, __iptr: *mut f32) -> f32;
1184}
1185extern "C" {
1186    pub fn expm1f(__x: f32) -> f32;
1187}
1188extern "C" {
1189    pub fn __expm1f(__x: f32) -> f32;
1190}
1191extern "C" {
1192    pub fn log1pf(__x: f32) -> f32;
1193}
1194extern "C" {
1195    pub fn __log1pf(__x: f32) -> f32;
1196}
1197extern "C" {
1198    pub fn logbf(__x: f32) -> f32;
1199}
1200extern "C" {
1201    pub fn __logbf(__x: f32) -> f32;
1202}
1203extern "C" {
1204    pub fn exp2f(__x: f32) -> f32;
1205}
1206extern "C" {
1207    pub fn __exp2f(__x: f32) -> f32;
1208}
1209extern "C" {
1210    pub fn log2f(__x: f32) -> f32;
1211}
1212extern "C" {
1213    pub fn __log2f(__x: f32) -> f32;
1214}
1215extern "C" {
1216    pub fn powf(__x: f32, __y: f32) -> f32;
1217}
1218extern "C" {
1219    pub fn __powf(__x: f32, __y: f32) -> f32;
1220}
1221extern "C" {
1222    pub fn sqrtf(__x: f32) -> f32;
1223}
1224extern "C" {
1225    pub fn __sqrtf(__x: f32) -> f32;
1226}
1227extern "C" {
1228    pub fn hypotf(__x: f32, __y: f32) -> f32;
1229}
1230extern "C" {
1231    pub fn __hypotf(__x: f32, __y: f32) -> f32;
1232}
1233extern "C" {
1234    pub fn cbrtf(__x: f32) -> f32;
1235}
1236extern "C" {
1237    pub fn __cbrtf(__x: f32) -> f32;
1238}
1239extern "C" {
1240    pub fn ceilf(__x: f32) -> f32;
1241}
1242extern "C" {
1243    pub fn __ceilf(__x: f32) -> f32;
1244}
1245extern "C" {
1246    pub fn fabsf(__x: f32) -> f32;
1247}
1248extern "C" {
1249    pub fn __fabsf(__x: f32) -> f32;
1250}
1251extern "C" {
1252    pub fn floorf(__x: f32) -> f32;
1253}
1254extern "C" {
1255    pub fn __floorf(__x: f32) -> f32;
1256}
1257extern "C" {
1258    pub fn fmodf(__x: f32, __y: f32) -> f32;
1259}
1260extern "C" {
1261    pub fn __fmodf(__x: f32, __y: f32) -> f32;
1262}
1263extern "C" {
1264    pub fn isinff(__value: f32) -> ::std::os::raw::c_int;
1265}
1266extern "C" {
1267    pub fn finitef(__value: f32) -> ::std::os::raw::c_int;
1268}
1269extern "C" {
1270    pub fn dremf(__x: f32, __y: f32) -> f32;
1271}
1272extern "C" {
1273    pub fn __dremf(__x: f32, __y: f32) -> f32;
1274}
1275extern "C" {
1276    pub fn significandf(__x: f32) -> f32;
1277}
1278extern "C" {
1279    pub fn __significandf(__x: f32) -> f32;
1280}
1281extern "C" {
1282    pub fn copysignf(__x: f32, __y: f32) -> f32;
1283}
1284extern "C" {
1285    pub fn __copysignf(__x: f32, __y: f32) -> f32;
1286}
1287extern "C" {
1288    pub fn nanf(__tagb: *const ::std::os::raw::c_char) -> f32;
1289}
1290extern "C" {
1291    pub fn __nanf(__tagb: *const ::std::os::raw::c_char) -> f32;
1292}
1293extern "C" {
1294    pub fn isnanf(__value: f32) -> ::std::os::raw::c_int;
1295}
1296extern "C" {
1297    pub fn j0f(arg1: f32) -> f32;
1298}
1299extern "C" {
1300    pub fn __j0f(arg1: f32) -> f32;
1301}
1302extern "C" {
1303    pub fn j1f(arg1: f32) -> f32;
1304}
1305extern "C" {
1306    pub fn __j1f(arg1: f32) -> f32;
1307}
1308extern "C" {
1309    pub fn jnf(arg1: ::std::os::raw::c_int, arg2: f32) -> f32;
1310}
1311extern "C" {
1312    pub fn __jnf(arg1: ::std::os::raw::c_int, arg2: f32) -> f32;
1313}
1314extern "C" {
1315    pub fn y0f(arg1: f32) -> f32;
1316}
1317extern "C" {
1318    pub fn __y0f(arg1: f32) -> f32;
1319}
1320extern "C" {
1321    pub fn y1f(arg1: f32) -> f32;
1322}
1323extern "C" {
1324    pub fn __y1f(arg1: f32) -> f32;
1325}
1326extern "C" {
1327    pub fn ynf(arg1: ::std::os::raw::c_int, arg2: f32) -> f32;
1328}
1329extern "C" {
1330    pub fn __ynf(arg1: ::std::os::raw::c_int, arg2: f32) -> f32;
1331}
1332extern "C" {
1333    pub fn erff(arg1: f32) -> f32;
1334}
1335extern "C" {
1336    pub fn __erff(arg1: f32) -> f32;
1337}
1338extern "C" {
1339    pub fn erfcf(arg1: f32) -> f32;
1340}
1341extern "C" {
1342    pub fn __erfcf(arg1: f32) -> f32;
1343}
1344extern "C" {
1345    pub fn lgammaf(arg1: f32) -> f32;
1346}
1347extern "C" {
1348    pub fn __lgammaf(arg1: f32) -> f32;
1349}
1350extern "C" {
1351    pub fn tgammaf(arg1: f32) -> f32;
1352}
1353extern "C" {
1354    pub fn __tgammaf(arg1: f32) -> f32;
1355}
1356extern "C" {
1357    pub fn gammaf(arg1: f32) -> f32;
1358}
1359extern "C" {
1360    pub fn __gammaf(arg1: f32) -> f32;
1361}
1362extern "C" {
1363    pub fn lgammaf_r(arg1: f32, __signgamp: *mut ::std::os::raw::c_int) -> f32;
1364}
1365extern "C" {
1366    pub fn __lgammaf_r(arg1: f32, __signgamp: *mut ::std::os::raw::c_int) -> f32;
1367}
1368extern "C" {
1369    pub fn rintf(__x: f32) -> f32;
1370}
1371extern "C" {
1372    pub fn __rintf(__x: f32) -> f32;
1373}
1374extern "C" {
1375    pub fn nextafterf(__x: f32, __y: f32) -> f32;
1376}
1377extern "C" {
1378    pub fn __nextafterf(__x: f32, __y: f32) -> f32;
1379}
1380extern "C" {
1381    pub fn nexttowardf(__x: f32, __y: u128) -> f32;
1382}
1383extern "C" {
1384    pub fn __nexttowardf(__x: f32, __y: u128) -> f32;
1385}
1386extern "C" {
1387    pub fn remainderf(__x: f32, __y: f32) -> f32;
1388}
1389extern "C" {
1390    pub fn __remainderf(__x: f32, __y: f32) -> f32;
1391}
1392extern "C" {
1393    pub fn scalbnf(__x: f32, __n: ::std::os::raw::c_int) -> f32;
1394}
1395extern "C" {
1396    pub fn __scalbnf(__x: f32, __n: ::std::os::raw::c_int) -> f32;
1397}
1398extern "C" {
1399    pub fn ilogbf(__x: f32) -> ::std::os::raw::c_int;
1400}
1401extern "C" {
1402    pub fn __ilogbf(__x: f32) -> ::std::os::raw::c_int;
1403}
1404extern "C" {
1405    pub fn scalblnf(__x: f32, __n: ::std::os::raw::c_long) -> f32;
1406}
1407extern "C" {
1408    pub fn __scalblnf(__x: f32, __n: ::std::os::raw::c_long) -> f32;
1409}
1410extern "C" {
1411    pub fn nearbyintf(__x: f32) -> f32;
1412}
1413extern "C" {
1414    pub fn __nearbyintf(__x: f32) -> f32;
1415}
1416extern "C" {
1417    pub fn roundf(__x: f32) -> f32;
1418}
1419extern "C" {
1420    pub fn __roundf(__x: f32) -> f32;
1421}
1422extern "C" {
1423    pub fn truncf(__x: f32) -> f32;
1424}
1425extern "C" {
1426    pub fn __truncf(__x: f32) -> f32;
1427}
1428extern "C" {
1429    pub fn remquof(__x: f32, __y: f32, __quo: *mut ::std::os::raw::c_int) -> f32;
1430}
1431extern "C" {
1432    pub fn __remquof(__x: f32, __y: f32, __quo: *mut ::std::os::raw::c_int) -> f32;
1433}
1434extern "C" {
1435    pub fn lrintf(__x: f32) -> ::std::os::raw::c_long;
1436}
1437extern "C" {
1438    pub fn __lrintf(__x: f32) -> ::std::os::raw::c_long;
1439}
1440extern "C" {
1441    pub fn llrintf(__x: f32) -> ::std::os::raw::c_longlong;
1442}
1443extern "C" {
1444    pub fn __llrintf(__x: f32) -> ::std::os::raw::c_longlong;
1445}
1446extern "C" {
1447    pub fn lroundf(__x: f32) -> ::std::os::raw::c_long;
1448}
1449extern "C" {
1450    pub fn __lroundf(__x: f32) -> ::std::os::raw::c_long;
1451}
1452extern "C" {
1453    pub fn llroundf(__x: f32) -> ::std::os::raw::c_longlong;
1454}
1455extern "C" {
1456    pub fn __llroundf(__x: f32) -> ::std::os::raw::c_longlong;
1457}
1458extern "C" {
1459    pub fn fdimf(__x: f32, __y: f32) -> f32;
1460}
1461extern "C" {
1462    pub fn __fdimf(__x: f32, __y: f32) -> f32;
1463}
1464extern "C" {
1465    pub fn fmaxf(__x: f32, __y: f32) -> f32;
1466}
1467extern "C" {
1468    pub fn __fmaxf(__x: f32, __y: f32) -> f32;
1469}
1470extern "C" {
1471    pub fn fminf(__x: f32, __y: f32) -> f32;
1472}
1473extern "C" {
1474    pub fn __fminf(__x: f32, __y: f32) -> f32;
1475}
1476extern "C" {
1477    pub fn fmaf(__x: f32, __y: f32, __z: f32) -> f32;
1478}
1479extern "C" {
1480    pub fn __fmaf(__x: f32, __y: f32, __z: f32) -> f32;
1481}
1482extern "C" {
1483    pub fn scalbf(__x: f32, __n: f32) -> f32;
1484}
1485extern "C" {
1486    pub fn __scalbf(__x: f32, __n: f32) -> f32;
1487}
1488extern "C" {
1489    pub fn __fpclassifyl(__value: u128) -> ::std::os::raw::c_int;
1490}
1491extern "C" {
1492    pub fn __signbitl(__value: u128) -> ::std::os::raw::c_int;
1493}
1494extern "C" {
1495    pub fn __isinfl(__value: u128) -> ::std::os::raw::c_int;
1496}
1497extern "C" {
1498    pub fn __finitel(__value: u128) -> ::std::os::raw::c_int;
1499}
1500extern "C" {
1501    pub fn __isnanl(__value: u128) -> ::std::os::raw::c_int;
1502}
1503extern "C" {
1504    pub fn __iseqsigl(__x: u128, __y: u128) -> ::std::os::raw::c_int;
1505}
1506extern "C" {
1507    pub fn __issignalingl(__value: u128) -> ::std::os::raw::c_int;
1508}
1509extern "C" {
1510    pub fn acosl(__x: u128) -> u128;
1511}
1512extern "C" {
1513    pub fn __acosl(__x: u128) -> u128;
1514}
1515extern "C" {
1516    pub fn asinl(__x: u128) -> u128;
1517}
1518extern "C" {
1519    pub fn __asinl(__x: u128) -> u128;
1520}
1521extern "C" {
1522    pub fn atanl(__x: u128) -> u128;
1523}
1524extern "C" {
1525    pub fn __atanl(__x: u128) -> u128;
1526}
1527extern "C" {
1528    pub fn atan2l(__y: u128, __x: u128) -> u128;
1529}
1530extern "C" {
1531    pub fn __atan2l(__y: u128, __x: u128) -> u128;
1532}
1533extern "C" {
1534    pub fn cosl(__x: u128) -> u128;
1535}
1536extern "C" {
1537    pub fn __cosl(__x: u128) -> u128;
1538}
1539extern "C" {
1540    pub fn sinl(__x: u128) -> u128;
1541}
1542extern "C" {
1543    pub fn __sinl(__x: u128) -> u128;
1544}
1545extern "C" {
1546    pub fn tanl(__x: u128) -> u128;
1547}
1548extern "C" {
1549    pub fn __tanl(__x: u128) -> u128;
1550}
1551extern "C" {
1552    pub fn coshl(__x: u128) -> u128;
1553}
1554extern "C" {
1555    pub fn __coshl(__x: u128) -> u128;
1556}
1557extern "C" {
1558    pub fn sinhl(__x: u128) -> u128;
1559}
1560extern "C" {
1561    pub fn __sinhl(__x: u128) -> u128;
1562}
1563extern "C" {
1564    pub fn tanhl(__x: u128) -> u128;
1565}
1566extern "C" {
1567    pub fn __tanhl(__x: u128) -> u128;
1568}
1569extern "C" {
1570    pub fn acoshl(__x: u128) -> u128;
1571}
1572extern "C" {
1573    pub fn __acoshl(__x: u128) -> u128;
1574}
1575extern "C" {
1576    pub fn asinhl(__x: u128) -> u128;
1577}
1578extern "C" {
1579    pub fn __asinhl(__x: u128) -> u128;
1580}
1581extern "C" {
1582    pub fn atanhl(__x: u128) -> u128;
1583}
1584extern "C" {
1585    pub fn __atanhl(__x: u128) -> u128;
1586}
1587extern "C" {
1588    pub fn expl(__x: u128) -> u128;
1589}
1590extern "C" {
1591    pub fn __expl(__x: u128) -> u128;
1592}
1593extern "C" {
1594    pub fn frexpl(__x: u128, __exponent: *mut ::std::os::raw::c_int) -> u128;
1595}
1596extern "C" {
1597    pub fn __frexpl(__x: u128, __exponent: *mut ::std::os::raw::c_int) -> u128;
1598}
1599extern "C" {
1600    pub fn ldexpl(__x: u128, __exponent: ::std::os::raw::c_int) -> u128;
1601}
1602extern "C" {
1603    pub fn __ldexpl(__x: u128, __exponent: ::std::os::raw::c_int) -> u128;
1604}
1605extern "C" {
1606    pub fn logl(__x: u128) -> u128;
1607}
1608extern "C" {
1609    pub fn __logl(__x: u128) -> u128;
1610}
1611extern "C" {
1612    pub fn log10l(__x: u128) -> u128;
1613}
1614extern "C" {
1615    pub fn __log10l(__x: u128) -> u128;
1616}
1617extern "C" {
1618    pub fn modfl(__x: u128, __iptr: *mut u128) -> u128;
1619}
1620extern "C" {
1621    pub fn __modfl(__x: u128, __iptr: *mut u128) -> u128;
1622}
1623extern "C" {
1624    pub fn expm1l(__x: u128) -> u128;
1625}
1626extern "C" {
1627    pub fn __expm1l(__x: u128) -> u128;
1628}
1629extern "C" {
1630    pub fn log1pl(__x: u128) -> u128;
1631}
1632extern "C" {
1633    pub fn __log1pl(__x: u128) -> u128;
1634}
1635extern "C" {
1636    pub fn logbl(__x: u128) -> u128;
1637}
1638extern "C" {
1639    pub fn __logbl(__x: u128) -> u128;
1640}
1641extern "C" {
1642    pub fn exp2l(__x: u128) -> u128;
1643}
1644extern "C" {
1645    pub fn __exp2l(__x: u128) -> u128;
1646}
1647extern "C" {
1648    pub fn log2l(__x: u128) -> u128;
1649}
1650extern "C" {
1651    pub fn __log2l(__x: u128) -> u128;
1652}
1653extern "C" {
1654    pub fn powl(__x: u128, __y: u128) -> u128;
1655}
1656extern "C" {
1657    pub fn __powl(__x: u128, __y: u128) -> u128;
1658}
1659extern "C" {
1660    pub fn sqrtl(__x: u128) -> u128;
1661}
1662extern "C" {
1663    pub fn __sqrtl(__x: u128) -> u128;
1664}
1665extern "C" {
1666    pub fn hypotl(__x: u128, __y: u128) -> u128;
1667}
1668extern "C" {
1669    pub fn __hypotl(__x: u128, __y: u128) -> u128;
1670}
1671extern "C" {
1672    pub fn cbrtl(__x: u128) -> u128;
1673}
1674extern "C" {
1675    pub fn __cbrtl(__x: u128) -> u128;
1676}
1677extern "C" {
1678    pub fn ceill(__x: u128) -> u128;
1679}
1680extern "C" {
1681    pub fn __ceill(__x: u128) -> u128;
1682}
1683extern "C" {
1684    pub fn fabsl(__x: u128) -> u128;
1685}
1686extern "C" {
1687    pub fn __fabsl(__x: u128) -> u128;
1688}
1689extern "C" {
1690    pub fn floorl(__x: u128) -> u128;
1691}
1692extern "C" {
1693    pub fn __floorl(__x: u128) -> u128;
1694}
1695extern "C" {
1696    pub fn fmodl(__x: u128, __y: u128) -> u128;
1697}
1698extern "C" {
1699    pub fn __fmodl(__x: u128, __y: u128) -> u128;
1700}
1701extern "C" {
1702    pub fn isinfl(__value: u128) -> ::std::os::raw::c_int;
1703}
1704extern "C" {
1705    pub fn finitel(__value: u128) -> ::std::os::raw::c_int;
1706}
1707extern "C" {
1708    pub fn dreml(__x: u128, __y: u128) -> u128;
1709}
1710extern "C" {
1711    pub fn __dreml(__x: u128, __y: u128) -> u128;
1712}
1713extern "C" {
1714    pub fn significandl(__x: u128) -> u128;
1715}
1716extern "C" {
1717    pub fn __significandl(__x: u128) -> u128;
1718}
1719extern "C" {
1720    pub fn copysignl(__x: u128, __y: u128) -> u128;
1721}
1722extern "C" {
1723    pub fn __copysignl(__x: u128, __y: u128) -> u128;
1724}
1725extern "C" {
1726    pub fn nanl(__tagb: *const ::std::os::raw::c_char) -> u128;
1727}
1728extern "C" {
1729    pub fn __nanl(__tagb: *const ::std::os::raw::c_char) -> u128;
1730}
1731extern "C" {
1732    pub fn isnanl(__value: u128) -> ::std::os::raw::c_int;
1733}
1734extern "C" {
1735    pub fn j0l(arg1: u128) -> u128;
1736}
1737extern "C" {
1738    pub fn __j0l(arg1: u128) -> u128;
1739}
1740extern "C" {
1741    pub fn j1l(arg1: u128) -> u128;
1742}
1743extern "C" {
1744    pub fn __j1l(arg1: u128) -> u128;
1745}
1746extern "C" {
1747    pub fn jnl(arg1: ::std::os::raw::c_int, arg2: u128) -> u128;
1748}
1749extern "C" {
1750    pub fn __jnl(arg1: ::std::os::raw::c_int, arg2: u128) -> u128;
1751}
1752extern "C" {
1753    pub fn y0l(arg1: u128) -> u128;
1754}
1755extern "C" {
1756    pub fn __y0l(arg1: u128) -> u128;
1757}
1758extern "C" {
1759    pub fn y1l(arg1: u128) -> u128;
1760}
1761extern "C" {
1762    pub fn __y1l(arg1: u128) -> u128;
1763}
1764extern "C" {
1765    pub fn ynl(arg1: ::std::os::raw::c_int, arg2: u128) -> u128;
1766}
1767extern "C" {
1768    pub fn __ynl(arg1: ::std::os::raw::c_int, arg2: u128) -> u128;
1769}
1770extern "C" {
1771    pub fn erfl(arg1: u128) -> u128;
1772}
1773extern "C" {
1774    pub fn __erfl(arg1: u128) -> u128;
1775}
1776extern "C" {
1777    pub fn erfcl(arg1: u128) -> u128;
1778}
1779extern "C" {
1780    pub fn __erfcl(arg1: u128) -> u128;
1781}
1782extern "C" {
1783    pub fn lgammal(arg1: u128) -> u128;
1784}
1785extern "C" {
1786    pub fn __lgammal(arg1: u128) -> u128;
1787}
1788extern "C" {
1789    pub fn tgammal(arg1: u128) -> u128;
1790}
1791extern "C" {
1792    pub fn __tgammal(arg1: u128) -> u128;
1793}
1794extern "C" {
1795    pub fn gammal(arg1: u128) -> u128;
1796}
1797extern "C" {
1798    pub fn __gammal(arg1: u128) -> u128;
1799}
1800extern "C" {
1801    pub fn lgammal_r(arg1: u128, __signgamp: *mut ::std::os::raw::c_int) -> u128;
1802}
1803extern "C" {
1804    pub fn __lgammal_r(arg1: u128, __signgamp: *mut ::std::os::raw::c_int) -> u128;
1805}
1806extern "C" {
1807    pub fn rintl(__x: u128) -> u128;
1808}
1809extern "C" {
1810    pub fn __rintl(__x: u128) -> u128;
1811}
1812extern "C" {
1813    pub fn nextafterl(__x: u128, __y: u128) -> u128;
1814}
1815extern "C" {
1816    pub fn __nextafterl(__x: u128, __y: u128) -> u128;
1817}
1818extern "C" {
1819    pub fn nexttowardl(__x: u128, __y: u128) -> u128;
1820}
1821extern "C" {
1822    pub fn __nexttowardl(__x: u128, __y: u128) -> u128;
1823}
1824extern "C" {
1825    pub fn remainderl(__x: u128, __y: u128) -> u128;
1826}
1827extern "C" {
1828    pub fn __remainderl(__x: u128, __y: u128) -> u128;
1829}
1830extern "C" {
1831    pub fn scalbnl(__x: u128, __n: ::std::os::raw::c_int) -> u128;
1832}
1833extern "C" {
1834    pub fn __scalbnl(__x: u128, __n: ::std::os::raw::c_int) -> u128;
1835}
1836extern "C" {
1837    pub fn ilogbl(__x: u128) -> ::std::os::raw::c_int;
1838}
1839extern "C" {
1840    pub fn __ilogbl(__x: u128) -> ::std::os::raw::c_int;
1841}
1842extern "C" {
1843    pub fn scalblnl(__x: u128, __n: ::std::os::raw::c_long) -> u128;
1844}
1845extern "C" {
1846    pub fn __scalblnl(__x: u128, __n: ::std::os::raw::c_long) -> u128;
1847}
1848extern "C" {
1849    pub fn nearbyintl(__x: u128) -> u128;
1850}
1851extern "C" {
1852    pub fn __nearbyintl(__x: u128) -> u128;
1853}
1854extern "C" {
1855    pub fn roundl(__x: u128) -> u128;
1856}
1857extern "C" {
1858    pub fn __roundl(__x: u128) -> u128;
1859}
1860extern "C" {
1861    pub fn truncl(__x: u128) -> u128;
1862}
1863extern "C" {
1864    pub fn __truncl(__x: u128) -> u128;
1865}
1866extern "C" {
1867    pub fn remquol(__x: u128, __y: u128, __quo: *mut ::std::os::raw::c_int) -> u128;
1868}
1869extern "C" {
1870    pub fn __remquol(__x: u128, __y: u128, __quo: *mut ::std::os::raw::c_int) -> u128;
1871}
1872extern "C" {
1873    pub fn lrintl(__x: u128) -> ::std::os::raw::c_long;
1874}
1875extern "C" {
1876    pub fn __lrintl(__x: u128) -> ::std::os::raw::c_long;
1877}
1878extern "C" {
1879    pub fn llrintl(__x: u128) -> ::std::os::raw::c_longlong;
1880}
1881extern "C" {
1882    pub fn __llrintl(__x: u128) -> ::std::os::raw::c_longlong;
1883}
1884extern "C" {
1885    pub fn lroundl(__x: u128) -> ::std::os::raw::c_long;
1886}
1887extern "C" {
1888    pub fn __lroundl(__x: u128) -> ::std::os::raw::c_long;
1889}
1890extern "C" {
1891    pub fn llroundl(__x: u128) -> ::std::os::raw::c_longlong;
1892}
1893extern "C" {
1894    pub fn __llroundl(__x: u128) -> ::std::os::raw::c_longlong;
1895}
1896extern "C" {
1897    pub fn fdiml(__x: u128, __y: u128) -> u128;
1898}
1899extern "C" {
1900    pub fn __fdiml(__x: u128, __y: u128) -> u128;
1901}
1902extern "C" {
1903    pub fn fmaxl(__x: u128, __y: u128) -> u128;
1904}
1905extern "C" {
1906    pub fn __fmaxl(__x: u128, __y: u128) -> u128;
1907}
1908extern "C" {
1909    pub fn fminl(__x: u128, __y: u128) -> u128;
1910}
1911extern "C" {
1912    pub fn __fminl(__x: u128, __y: u128) -> u128;
1913}
1914extern "C" {
1915    pub fn fmal(__x: u128, __y: u128, __z: u128) -> u128;
1916}
1917extern "C" {
1918    pub fn __fmal(__x: u128, __y: u128, __z: u128) -> u128;
1919}
1920extern "C" {
1921    pub fn scalbl(__x: u128, __n: u128) -> u128;
1922}
1923extern "C" {
1924    pub fn __scalbl(__x: u128, __n: u128) -> u128;
1925}
1926extern "C" {
1927    pub static mut signgam: ::std::os::raw::c_int;
1928}
1929//pub const FP_NAN: _bindgen_ty_1 = 0;
1930//pub const FP_INFINITE: _bindgen_ty_1 = 1;
1931//pub const FP_ZERO: _bindgen_ty_1 = 2;
1932//pub const FP_SUBNORMAL: _bindgen_ty_1 = 3;
1933//pub const FP_NORMAL: _bindgen_ty_1 = 4;
1934pub type _bindgen_ty_1 = ::std::os::raw::c_uint;
1935pub type u_char = __u_char;
1936pub type u_short = __u_short;
1937pub type u_int = __u_int;
1938pub type u_long = __u_long;
1939pub type quad_t = __quad_t;
1940pub type u_quad_t = __u_quad_t;
1941pub type fsid_t = __fsid_t;
1942pub type loff_t = __loff_t;
1943pub type ino_t = __ino_t;
1944pub type dev_t = __dev_t;
1945pub type gid_t = __gid_t;
1946pub type mode_t = __mode_t;
1947pub type nlink_t = __nlink_t;
1948pub type uid_t = __uid_t;
1949pub type off_t = __off_t;
1950pub type pid_t = __pid_t;
1951pub type id_t = __id_t;
1952pub type daddr_t = __daddr_t;
1953pub type caddr_t = __caddr_t;
1954pub type key_t = __key_t;
1955pub type clock_t = __clock_t;
1956pub type clockid_t = __clockid_t;
1957pub type time_t = __time_t;
1958pub type timer_t = __timer_t;
1959pub type ulong = ::std::os::raw::c_ulong;
1960pub type ushort = ::std::os::raw::c_ushort;
1961pub type uint = ::std::os::raw::c_uint;
1962pub type u_int8_t = __uint8_t;
1963pub type u_int16_t = __uint16_t;
1964pub type u_int32_t = __uint32_t;
1965pub type u_int64_t = __uint64_t;
1966pub type register_t = ::std::os::raw::c_long;
1967#[repr(C)]
1968#[derive(Debug, Copy, Clone)]
1969pub struct __sigset_t {
1970    pub __val: [::std::os::raw::c_ulong; 16usize],
1971}
1972#[test]
1973fn bindgen_test_layout___sigset_t() {
1974    const UNINIT: ::std::mem::MaybeUninit<__sigset_t> = ::std::mem::MaybeUninit::uninit();
1975    let ptr = UNINIT.as_ptr();
1976    assert_eq!(
1977        ::std::mem::size_of::<__sigset_t>(),
1978        128usize,
1979        concat!("Size of: ", stringify!(__sigset_t))
1980    );
1981    assert_eq!(
1982        ::std::mem::align_of::<__sigset_t>(),
1983        8usize,
1984        concat!("Alignment of ", stringify!(__sigset_t))
1985    );
1986    assert_eq!(
1987        unsafe { ::std::ptr::addr_of!((*ptr).__val) as usize - ptr as usize },
1988        0usize,
1989        concat!(
1990            "Offset of field: ",
1991            stringify!(__sigset_t),
1992            "::",
1993            stringify!(__val)
1994        )
1995    );
1996}
1997pub type sigset_t = __sigset_t;
1998#[repr(C)]
1999#[derive(Debug, Copy, Clone)]
2000pub struct timeval {
2001    pub tv_sec: __time_t,
2002    pub tv_usec: __suseconds_t,
2003}
2004#[test]
2005fn bindgen_test_layout_timeval() {
2006    const UNINIT: ::std::mem::MaybeUninit<timeval> = ::std::mem::MaybeUninit::uninit();
2007    let ptr = UNINIT.as_ptr();
2008    assert_eq!(
2009        ::std::mem::size_of::<timeval>(),
2010        16usize,
2011        concat!("Size of: ", stringify!(timeval))
2012    );
2013    assert_eq!(
2014        ::std::mem::align_of::<timeval>(),
2015        8usize,
2016        concat!("Alignment of ", stringify!(timeval))
2017    );
2018    assert_eq!(
2019        unsafe { ::std::ptr::addr_of!((*ptr).tv_sec) as usize - ptr as usize },
2020        0usize,
2021        concat!(
2022            "Offset of field: ",
2023            stringify!(timeval),
2024            "::",
2025            stringify!(tv_sec)
2026        )
2027    );
2028    assert_eq!(
2029        unsafe { ::std::ptr::addr_of!((*ptr).tv_usec) as usize - ptr as usize },
2030        8usize,
2031        concat!(
2032            "Offset of field: ",
2033            stringify!(timeval),
2034            "::",
2035            stringify!(tv_usec)
2036        )
2037    );
2038}
2039#[repr(C)]
2040#[derive(Debug, Copy, Clone)]
2041pub struct timespec {
2042    pub tv_sec: __time_t,
2043    pub tv_nsec: __syscall_slong_t,
2044}
2045#[test]
2046fn bindgen_test_layout_timespec() {
2047    const UNINIT: ::std::mem::MaybeUninit<timespec> = ::std::mem::MaybeUninit::uninit();
2048    let ptr = UNINIT.as_ptr();
2049    assert_eq!(
2050        ::std::mem::size_of::<timespec>(),
2051        16usize,
2052        concat!("Size of: ", stringify!(timespec))
2053    );
2054    assert_eq!(
2055        ::std::mem::align_of::<timespec>(),
2056        8usize,
2057        concat!("Alignment of ", stringify!(timespec))
2058    );
2059    assert_eq!(
2060        unsafe { ::std::ptr::addr_of!((*ptr).tv_sec) as usize - ptr as usize },
2061        0usize,
2062        concat!(
2063            "Offset of field: ",
2064            stringify!(timespec),
2065            "::",
2066            stringify!(tv_sec)
2067        )
2068    );
2069    assert_eq!(
2070        unsafe { ::std::ptr::addr_of!((*ptr).tv_nsec) as usize - ptr as usize },
2071        8usize,
2072        concat!(
2073            "Offset of field: ",
2074            stringify!(timespec),
2075            "::",
2076            stringify!(tv_nsec)
2077        )
2078    );
2079}
2080pub type suseconds_t = __suseconds_t;
2081pub type __fd_mask = ::std::os::raw::c_long;
2082#[repr(C)]
2083#[derive(Debug, Copy, Clone)]
2084pub struct fd_set {
2085    pub __fds_bits: [__fd_mask; 16usize],
2086}
2087#[test]
2088fn bindgen_test_layout_fd_set() {
2089    const UNINIT: ::std::mem::MaybeUninit<fd_set> = ::std::mem::MaybeUninit::uninit();
2090    let ptr = UNINIT.as_ptr();
2091    assert_eq!(
2092        ::std::mem::size_of::<fd_set>(),
2093        128usize,
2094        concat!("Size of: ", stringify!(fd_set))
2095    );
2096    assert_eq!(
2097        ::std::mem::align_of::<fd_set>(),
2098        8usize,
2099        concat!("Alignment of ", stringify!(fd_set))
2100    );
2101    assert_eq!(
2102        unsafe { ::std::ptr::addr_of!((*ptr).__fds_bits) as usize - ptr as usize },
2103        0usize,
2104        concat!(
2105            "Offset of field: ",
2106            stringify!(fd_set),
2107            "::",
2108            stringify!(__fds_bits)
2109        )
2110    );
2111}
2112pub type fd_mask = __fd_mask;
2113extern "C" {
2114    pub fn select(
2115        __nfds: ::std::os::raw::c_int,
2116        __readfds: *mut fd_set,
2117        __writefds: *mut fd_set,
2118        __exceptfds: *mut fd_set,
2119        __timeout: *mut timeval,
2120    ) -> ::std::os::raw::c_int;
2121}
2122extern "C" {
2123    pub fn pselect(
2124        __nfds: ::std::os::raw::c_int,
2125        __readfds: *mut fd_set,
2126        __writefds: *mut fd_set,
2127        __exceptfds: *mut fd_set,
2128        __timeout: *const timespec,
2129        __sigmask: *const __sigset_t,
2130    ) -> ::std::os::raw::c_int;
2131}
2132pub type blksize_t = __blksize_t;
2133pub type blkcnt_t = __blkcnt_t;
2134pub type fsblkcnt_t = __fsblkcnt_t;
2135pub type fsfilcnt_t = __fsfilcnt_t;
2136#[repr(C)]
2137#[derive(Copy, Clone)]
2138pub union __atomic_wide_counter {
2139    pub __value64: ::std::os::raw::c_ulonglong,
2140    pub __value32: __atomic_wide_counter__bindgen_ty_1,
2141}
2142#[repr(C)]
2143#[derive(Debug, Copy, Clone)]
2144pub struct __atomic_wide_counter__bindgen_ty_1 {
2145    pub __low: ::std::os::raw::c_uint,
2146    pub __high: ::std::os::raw::c_uint,
2147}
2148#[test]
2149fn bindgen_test_layout___atomic_wide_counter__bindgen_ty_1() {
2150    const UNINIT: ::std::mem::MaybeUninit<__atomic_wide_counter__bindgen_ty_1> =
2151        ::std::mem::MaybeUninit::uninit();
2152    let ptr = UNINIT.as_ptr();
2153    assert_eq!(
2154        ::std::mem::size_of::<__atomic_wide_counter__bindgen_ty_1>(),
2155        8usize,
2156        concat!("Size of: ", stringify!(__atomic_wide_counter__bindgen_ty_1))
2157    );
2158    assert_eq!(
2159        ::std::mem::align_of::<__atomic_wide_counter__bindgen_ty_1>(),
2160        4usize,
2161        concat!(
2162            "Alignment of ",
2163            stringify!(__atomic_wide_counter__bindgen_ty_1)
2164        )
2165    );
2166    assert_eq!(
2167        unsafe { ::std::ptr::addr_of!((*ptr).__low) as usize - ptr as usize },
2168        0usize,
2169        concat!(
2170            "Offset of field: ",
2171            stringify!(__atomic_wide_counter__bindgen_ty_1),
2172            "::",
2173            stringify!(__low)
2174        )
2175    );
2176    assert_eq!(
2177        unsafe { ::std::ptr::addr_of!((*ptr).__high) as usize - ptr as usize },
2178        4usize,
2179        concat!(
2180            "Offset of field: ",
2181            stringify!(__atomic_wide_counter__bindgen_ty_1),
2182            "::",
2183            stringify!(__high)
2184        )
2185    );
2186}
2187#[test]
2188fn bindgen_test_layout___atomic_wide_counter() {
2189    const UNINIT: ::std::mem::MaybeUninit<__atomic_wide_counter> =
2190        ::std::mem::MaybeUninit::uninit();
2191    let ptr = UNINIT.as_ptr();
2192    assert_eq!(
2193        ::std::mem::size_of::<__atomic_wide_counter>(),
2194        8usize,
2195        concat!("Size of: ", stringify!(__atomic_wide_counter))
2196    );
2197    assert_eq!(
2198        ::std::mem::align_of::<__atomic_wide_counter>(),
2199        8usize,
2200        concat!("Alignment of ", stringify!(__atomic_wide_counter))
2201    );
2202    assert_eq!(
2203        unsafe { ::std::ptr::addr_of!((*ptr).__value64) as usize - ptr as usize },
2204        0usize,
2205        concat!(
2206            "Offset of field: ",
2207            stringify!(__atomic_wide_counter),
2208            "::",
2209            stringify!(__value64)
2210        )
2211    );
2212    assert_eq!(
2213        unsafe { ::std::ptr::addr_of!((*ptr).__value32) as usize - ptr as usize },
2214        0usize,
2215        concat!(
2216            "Offset of field: ",
2217            stringify!(__atomic_wide_counter),
2218            "::",
2219            stringify!(__value32)
2220        )
2221    );
2222}
2223#[repr(C)]
2224#[derive(Debug, Copy, Clone)]
2225pub struct __pthread_internal_list {
2226    pub __prev: *mut __pthread_internal_list,
2227    pub __next: *mut __pthread_internal_list,
2228}
2229#[test]
2230fn bindgen_test_layout___pthread_internal_list() {
2231    const UNINIT: ::std::mem::MaybeUninit<__pthread_internal_list> =
2232        ::std::mem::MaybeUninit::uninit();
2233    let ptr = UNINIT.as_ptr();
2234    assert_eq!(
2235        ::std::mem::size_of::<__pthread_internal_list>(),
2236        16usize,
2237        concat!("Size of: ", stringify!(__pthread_internal_list))
2238    );
2239    assert_eq!(
2240        ::std::mem::align_of::<__pthread_internal_list>(),
2241        8usize,
2242        concat!("Alignment of ", stringify!(__pthread_internal_list))
2243    );
2244    assert_eq!(
2245        unsafe { ::std::ptr::addr_of!((*ptr).__prev) as usize - ptr as usize },
2246        0usize,
2247        concat!(
2248            "Offset of field: ",
2249            stringify!(__pthread_internal_list),
2250            "::",
2251            stringify!(__prev)
2252        )
2253    );
2254    assert_eq!(
2255        unsafe { ::std::ptr::addr_of!((*ptr).__next) as usize - ptr as usize },
2256        8usize,
2257        concat!(
2258            "Offset of field: ",
2259            stringify!(__pthread_internal_list),
2260            "::",
2261            stringify!(__next)
2262        )
2263    );
2264}
2265pub type __pthread_list_t = __pthread_internal_list;
2266#[repr(C)]
2267#[derive(Debug, Copy, Clone)]
2268pub struct __pthread_internal_slist {
2269    pub __next: *mut __pthread_internal_slist,
2270}
2271#[test]
2272fn bindgen_test_layout___pthread_internal_slist() {
2273    const UNINIT: ::std::mem::MaybeUninit<__pthread_internal_slist> =
2274        ::std::mem::MaybeUninit::uninit();
2275    let ptr = UNINIT.as_ptr();
2276    assert_eq!(
2277        ::std::mem::size_of::<__pthread_internal_slist>(),
2278        8usize,
2279        concat!("Size of: ", stringify!(__pthread_internal_slist))
2280    );
2281    assert_eq!(
2282        ::std::mem::align_of::<__pthread_internal_slist>(),
2283        8usize,
2284        concat!("Alignment of ", stringify!(__pthread_internal_slist))
2285    );
2286    assert_eq!(
2287        unsafe { ::std::ptr::addr_of!((*ptr).__next) as usize - ptr as usize },
2288        0usize,
2289        concat!(
2290            "Offset of field: ",
2291            stringify!(__pthread_internal_slist),
2292            "::",
2293            stringify!(__next)
2294        )
2295    );
2296}
2297pub type __pthread_slist_t = __pthread_internal_slist;
2298#[repr(C)]
2299#[derive(Debug, Copy, Clone)]
2300pub struct __pthread_mutex_s {
2301    pub __lock: ::std::os::raw::c_int,
2302    pub __count: ::std::os::raw::c_uint,
2303    pub __owner: ::std::os::raw::c_int,
2304    pub __nusers: ::std::os::raw::c_uint,
2305    pub __kind: ::std::os::raw::c_int,
2306    pub __spins: ::std::os::raw::c_short,
2307    pub __elision: ::std::os::raw::c_short,
2308    pub __list: __pthread_list_t,
2309}
2310#[test]
2311fn bindgen_test_layout___pthread_mutex_s() {
2312    const UNINIT: ::std::mem::MaybeUninit<__pthread_mutex_s> = ::std::mem::MaybeUninit::uninit();
2313    let ptr = UNINIT.as_ptr();
2314    assert_eq!(
2315        ::std::mem::size_of::<__pthread_mutex_s>(),
2316        40usize,
2317        concat!("Size of: ", stringify!(__pthread_mutex_s))
2318    );
2319    assert_eq!(
2320        ::std::mem::align_of::<__pthread_mutex_s>(),
2321        8usize,
2322        concat!("Alignment of ", stringify!(__pthread_mutex_s))
2323    );
2324    assert_eq!(
2325        unsafe { ::std::ptr::addr_of!((*ptr).__lock) as usize - ptr as usize },
2326        0usize,
2327        concat!(
2328            "Offset of field: ",
2329            stringify!(__pthread_mutex_s),
2330            "::",
2331            stringify!(__lock)
2332        )
2333    );
2334    assert_eq!(
2335        unsafe { ::std::ptr::addr_of!((*ptr).__count) as usize - ptr as usize },
2336        4usize,
2337        concat!(
2338            "Offset of field: ",
2339            stringify!(__pthread_mutex_s),
2340            "::",
2341            stringify!(__count)
2342        )
2343    );
2344    assert_eq!(
2345        unsafe { ::std::ptr::addr_of!((*ptr).__owner) as usize - ptr as usize },
2346        8usize,
2347        concat!(
2348            "Offset of field: ",
2349            stringify!(__pthread_mutex_s),
2350            "::",
2351            stringify!(__owner)
2352        )
2353    );
2354    assert_eq!(
2355        unsafe { ::std::ptr::addr_of!((*ptr).__nusers) as usize - ptr as usize },
2356        12usize,
2357        concat!(
2358            "Offset of field: ",
2359            stringify!(__pthread_mutex_s),
2360            "::",
2361            stringify!(__nusers)
2362        )
2363    );
2364    assert_eq!(
2365        unsafe { ::std::ptr::addr_of!((*ptr).__kind) as usize - ptr as usize },
2366        16usize,
2367        concat!(
2368            "Offset of field: ",
2369            stringify!(__pthread_mutex_s),
2370            "::",
2371            stringify!(__kind)
2372        )
2373    );
2374    assert_eq!(
2375        unsafe { ::std::ptr::addr_of!((*ptr).__spins) as usize - ptr as usize },
2376        20usize,
2377        concat!(
2378            "Offset of field: ",
2379            stringify!(__pthread_mutex_s),
2380            "::",
2381            stringify!(__spins)
2382        )
2383    );
2384    assert_eq!(
2385        unsafe { ::std::ptr::addr_of!((*ptr).__elision) as usize - ptr as usize },
2386        22usize,
2387        concat!(
2388            "Offset of field: ",
2389            stringify!(__pthread_mutex_s),
2390            "::",
2391            stringify!(__elision)
2392        )
2393    );
2394    assert_eq!(
2395        unsafe { ::std::ptr::addr_of!((*ptr).__list) as usize - ptr as usize },
2396        24usize,
2397        concat!(
2398            "Offset of field: ",
2399            stringify!(__pthread_mutex_s),
2400            "::",
2401            stringify!(__list)
2402        )
2403    );
2404}
2405#[repr(C)]
2406#[derive(Debug, Copy, Clone)]
2407pub struct __pthread_rwlock_arch_t {
2408    pub __readers: ::std::os::raw::c_uint,
2409    pub __writers: ::std::os::raw::c_uint,
2410    pub __wrphase_futex: ::std::os::raw::c_uint,
2411    pub __writers_futex: ::std::os::raw::c_uint,
2412    pub __pad3: ::std::os::raw::c_uint,
2413    pub __pad4: ::std::os::raw::c_uint,
2414    pub __cur_writer: ::std::os::raw::c_int,
2415    pub __shared: ::std::os::raw::c_int,
2416    pub __rwelision: ::std::os::raw::c_schar,
2417    pub __pad1: [::std::os::raw::c_uchar; 7usize],
2418    pub __pad2: ::std::os::raw::c_ulong,
2419    pub __flags: ::std::os::raw::c_uint,
2420}
2421#[test]
2422fn bindgen_test_layout___pthread_rwlock_arch_t() {
2423    const UNINIT: ::std::mem::MaybeUninit<__pthread_rwlock_arch_t> =
2424        ::std::mem::MaybeUninit::uninit();
2425    let ptr = UNINIT.as_ptr();
2426    assert_eq!(
2427        ::std::mem::size_of::<__pthread_rwlock_arch_t>(),
2428        56usize,
2429        concat!("Size of: ", stringify!(__pthread_rwlock_arch_t))
2430    );
2431    assert_eq!(
2432        ::std::mem::align_of::<__pthread_rwlock_arch_t>(),
2433        8usize,
2434        concat!("Alignment of ", stringify!(__pthread_rwlock_arch_t))
2435    );
2436    assert_eq!(
2437        unsafe { ::std::ptr::addr_of!((*ptr).__readers) as usize - ptr as usize },
2438        0usize,
2439        concat!(
2440            "Offset of field: ",
2441            stringify!(__pthread_rwlock_arch_t),
2442            "::",
2443            stringify!(__readers)
2444        )
2445    );
2446    assert_eq!(
2447        unsafe { ::std::ptr::addr_of!((*ptr).__writers) as usize - ptr as usize },
2448        4usize,
2449        concat!(
2450            "Offset of field: ",
2451            stringify!(__pthread_rwlock_arch_t),
2452            "::",
2453            stringify!(__writers)
2454        )
2455    );
2456    assert_eq!(
2457        unsafe { ::std::ptr::addr_of!((*ptr).__wrphase_futex) as usize - ptr as usize },
2458        8usize,
2459        concat!(
2460            "Offset of field: ",
2461            stringify!(__pthread_rwlock_arch_t),
2462            "::",
2463            stringify!(__wrphase_futex)
2464        )
2465    );
2466    assert_eq!(
2467        unsafe { ::std::ptr::addr_of!((*ptr).__writers_futex) as usize - ptr as usize },
2468        12usize,
2469        concat!(
2470            "Offset of field: ",
2471            stringify!(__pthread_rwlock_arch_t),
2472            "::",
2473            stringify!(__writers_futex)
2474        )
2475    );
2476    assert_eq!(
2477        unsafe { ::std::ptr::addr_of!((*ptr).__pad3) as usize - ptr as usize },
2478        16usize,
2479        concat!(
2480            "Offset of field: ",
2481            stringify!(__pthread_rwlock_arch_t),
2482            "::",
2483            stringify!(__pad3)
2484        )
2485    );
2486    assert_eq!(
2487        unsafe { ::std::ptr::addr_of!((*ptr).__pad4) as usize - ptr as usize },
2488        20usize,
2489        concat!(
2490            "Offset of field: ",
2491            stringify!(__pthread_rwlock_arch_t),
2492            "::",
2493            stringify!(__pad4)
2494        )
2495    );
2496    assert_eq!(
2497        unsafe { ::std::ptr::addr_of!((*ptr).__cur_writer) as usize - ptr as usize },
2498        24usize,
2499        concat!(
2500            "Offset of field: ",
2501            stringify!(__pthread_rwlock_arch_t),
2502            "::",
2503            stringify!(__cur_writer)
2504        )
2505    );
2506    assert_eq!(
2507        unsafe { ::std::ptr::addr_of!((*ptr).__shared) as usize - ptr as usize },
2508        28usize,
2509        concat!(
2510            "Offset of field: ",
2511            stringify!(__pthread_rwlock_arch_t),
2512            "::",
2513            stringify!(__shared)
2514        )
2515    );
2516    assert_eq!(
2517        unsafe { ::std::ptr::addr_of!((*ptr).__rwelision) as usize - ptr as usize },
2518        32usize,
2519        concat!(
2520            "Offset of field: ",
2521            stringify!(__pthread_rwlock_arch_t),
2522            "::",
2523            stringify!(__rwelision)
2524        )
2525    );
2526    assert_eq!(
2527        unsafe { ::std::ptr::addr_of!((*ptr).__pad1) as usize - ptr as usize },
2528        33usize,
2529        concat!(
2530            "Offset of field: ",
2531            stringify!(__pthread_rwlock_arch_t),
2532            "::",
2533            stringify!(__pad1)
2534        )
2535    );
2536    assert_eq!(
2537        unsafe { ::std::ptr::addr_of!((*ptr).__pad2) as usize - ptr as usize },
2538        40usize,
2539        concat!(
2540            "Offset of field: ",
2541            stringify!(__pthread_rwlock_arch_t),
2542            "::",
2543            stringify!(__pad2)
2544        )
2545    );
2546    assert_eq!(
2547        unsafe { ::std::ptr::addr_of!((*ptr).__flags) as usize - ptr as usize },
2548        48usize,
2549        concat!(
2550            "Offset of field: ",
2551            stringify!(__pthread_rwlock_arch_t),
2552            "::",
2553            stringify!(__flags)
2554        )
2555    );
2556}
2557#[repr(C)]
2558#[derive(Copy, Clone)]
2559pub struct __pthread_cond_s {
2560    pub __wseq: __atomic_wide_counter,
2561    pub __g1_start: __atomic_wide_counter,
2562    pub __g_refs: [::std::os::raw::c_uint; 2usize],
2563    pub __g_size: [::std::os::raw::c_uint; 2usize],
2564    pub __g1_orig_size: ::std::os::raw::c_uint,
2565    pub __wrefs: ::std::os::raw::c_uint,
2566    pub __g_signals: [::std::os::raw::c_uint; 2usize],
2567}
2568#[test]
2569fn bindgen_test_layout___pthread_cond_s() {
2570    const UNINIT: ::std::mem::MaybeUninit<__pthread_cond_s> = ::std::mem::MaybeUninit::uninit();
2571    let ptr = UNINIT.as_ptr();
2572    assert_eq!(
2573        ::std::mem::size_of::<__pthread_cond_s>(),
2574        48usize,
2575        concat!("Size of: ", stringify!(__pthread_cond_s))
2576    );
2577    assert_eq!(
2578        ::std::mem::align_of::<__pthread_cond_s>(),
2579        8usize,
2580        concat!("Alignment of ", stringify!(__pthread_cond_s))
2581    );
2582    assert_eq!(
2583        unsafe { ::std::ptr::addr_of!((*ptr).__wseq) as usize - ptr as usize },
2584        0usize,
2585        concat!(
2586            "Offset of field: ",
2587            stringify!(__pthread_cond_s),
2588            "::",
2589            stringify!(__wseq)
2590        )
2591    );
2592    assert_eq!(
2593        unsafe { ::std::ptr::addr_of!((*ptr).__g1_start) as usize - ptr as usize },
2594        8usize,
2595        concat!(
2596            "Offset of field: ",
2597            stringify!(__pthread_cond_s),
2598            "::",
2599            stringify!(__g1_start)
2600        )
2601    );
2602    assert_eq!(
2603        unsafe { ::std::ptr::addr_of!((*ptr).__g_refs) as usize - ptr as usize },
2604        16usize,
2605        concat!(
2606            "Offset of field: ",
2607            stringify!(__pthread_cond_s),
2608            "::",
2609            stringify!(__g_refs)
2610        )
2611    );
2612    assert_eq!(
2613        unsafe { ::std::ptr::addr_of!((*ptr).__g_size) as usize - ptr as usize },
2614        24usize,
2615        concat!(
2616            "Offset of field: ",
2617            stringify!(__pthread_cond_s),
2618            "::",
2619            stringify!(__g_size)
2620        )
2621    );
2622    assert_eq!(
2623        unsafe { ::std::ptr::addr_of!((*ptr).__g1_orig_size) as usize - ptr as usize },
2624        32usize,
2625        concat!(
2626            "Offset of field: ",
2627            stringify!(__pthread_cond_s),
2628            "::",
2629            stringify!(__g1_orig_size)
2630        )
2631    );
2632    assert_eq!(
2633        unsafe { ::std::ptr::addr_of!((*ptr).__wrefs) as usize - ptr as usize },
2634        36usize,
2635        concat!(
2636            "Offset of field: ",
2637            stringify!(__pthread_cond_s),
2638            "::",
2639            stringify!(__wrefs)
2640        )
2641    );
2642    assert_eq!(
2643        unsafe { ::std::ptr::addr_of!((*ptr).__g_signals) as usize - ptr as usize },
2644        40usize,
2645        concat!(
2646            "Offset of field: ",
2647            stringify!(__pthread_cond_s),
2648            "::",
2649            stringify!(__g_signals)
2650        )
2651    );
2652}
2653pub type __tss_t = ::std::os::raw::c_uint;
2654pub type __thrd_t = ::std::os::raw::c_ulong;
2655#[repr(C)]
2656#[derive(Debug, Copy, Clone)]
2657pub struct __once_flag {
2658    pub __data: ::std::os::raw::c_int,
2659}
2660#[test]
2661fn bindgen_test_layout___once_flag() {
2662    const UNINIT: ::std::mem::MaybeUninit<__once_flag> = ::std::mem::MaybeUninit::uninit();
2663    let ptr = UNINIT.as_ptr();
2664    assert_eq!(
2665        ::std::mem::size_of::<__once_flag>(),
2666        4usize,
2667        concat!("Size of: ", stringify!(__once_flag))
2668    );
2669    assert_eq!(
2670        ::std::mem::align_of::<__once_flag>(),
2671        4usize,
2672        concat!("Alignment of ", stringify!(__once_flag))
2673    );
2674    assert_eq!(
2675        unsafe { ::std::ptr::addr_of!((*ptr).__data) as usize - ptr as usize },
2676        0usize,
2677        concat!(
2678            "Offset of field: ",
2679            stringify!(__once_flag),
2680            "::",
2681            stringify!(__data)
2682        )
2683    );
2684}
2685pub type pthread_t = ::std::os::raw::c_ulong;
2686#[repr(C)]
2687#[derive(Copy, Clone)]
2688pub union pthread_mutexattr_t {
2689    pub __size: [::std::os::raw::c_char; 4usize],
2690    pub __align: ::std::os::raw::c_int,
2691}
2692#[test]
2693fn bindgen_test_layout_pthread_mutexattr_t() {
2694    const UNINIT: ::std::mem::MaybeUninit<pthread_mutexattr_t> = ::std::mem::MaybeUninit::uninit();
2695    let ptr = UNINIT.as_ptr();
2696    assert_eq!(
2697        ::std::mem::size_of::<pthread_mutexattr_t>(),
2698        4usize,
2699        concat!("Size of: ", stringify!(pthread_mutexattr_t))
2700    );
2701    assert_eq!(
2702        ::std::mem::align_of::<pthread_mutexattr_t>(),
2703        4usize,
2704        concat!("Alignment of ", stringify!(pthread_mutexattr_t))
2705    );
2706    assert_eq!(
2707        unsafe { ::std::ptr::addr_of!((*ptr).__size) as usize - ptr as usize },
2708        0usize,
2709        concat!(
2710            "Offset of field: ",
2711            stringify!(pthread_mutexattr_t),
2712            "::",
2713            stringify!(__size)
2714        )
2715    );
2716    assert_eq!(
2717        unsafe { ::std::ptr::addr_of!((*ptr).__align) as usize - ptr as usize },
2718        0usize,
2719        concat!(
2720            "Offset of field: ",
2721            stringify!(pthread_mutexattr_t),
2722            "::",
2723            stringify!(__align)
2724        )
2725    );
2726}
2727#[repr(C)]
2728#[derive(Copy, Clone)]
2729pub union pthread_condattr_t {
2730    pub __size: [::std::os::raw::c_char; 4usize],
2731    pub __align: ::std::os::raw::c_int,
2732}
2733#[test]
2734fn bindgen_test_layout_pthread_condattr_t() {
2735    const UNINIT: ::std::mem::MaybeUninit<pthread_condattr_t> = ::std::mem::MaybeUninit::uninit();
2736    let ptr = UNINIT.as_ptr();
2737    assert_eq!(
2738        ::std::mem::size_of::<pthread_condattr_t>(),
2739        4usize,
2740        concat!("Size of: ", stringify!(pthread_condattr_t))
2741    );
2742    assert_eq!(
2743        ::std::mem::align_of::<pthread_condattr_t>(),
2744        4usize,
2745        concat!("Alignment of ", stringify!(pthread_condattr_t))
2746    );
2747    assert_eq!(
2748        unsafe { ::std::ptr::addr_of!((*ptr).__size) as usize - ptr as usize },
2749        0usize,
2750        concat!(
2751            "Offset of field: ",
2752            stringify!(pthread_condattr_t),
2753            "::",
2754            stringify!(__size)
2755        )
2756    );
2757    assert_eq!(
2758        unsafe { ::std::ptr::addr_of!((*ptr).__align) as usize - ptr as usize },
2759        0usize,
2760        concat!(
2761            "Offset of field: ",
2762            stringify!(pthread_condattr_t),
2763            "::",
2764            stringify!(__align)
2765        )
2766    );
2767}
2768pub type pthread_key_t = ::std::os::raw::c_uint;
2769pub type pthread_once_t = ::std::os::raw::c_int;
2770#[repr(C)]
2771#[derive(Copy, Clone)]
2772pub union pthread_attr_t {
2773    pub __size: [::std::os::raw::c_char; 56usize],
2774    pub __align: ::std::os::raw::c_long,
2775}
2776#[test]
2777fn bindgen_test_layout_pthread_attr_t() {
2778    const UNINIT: ::std::mem::MaybeUninit<pthread_attr_t> = ::std::mem::MaybeUninit::uninit();
2779    let ptr = UNINIT.as_ptr();
2780    assert_eq!(
2781        ::std::mem::size_of::<pthread_attr_t>(),
2782        56usize,
2783        concat!("Size of: ", stringify!(pthread_attr_t))
2784    );
2785    assert_eq!(
2786        ::std::mem::align_of::<pthread_attr_t>(),
2787        8usize,
2788        concat!("Alignment of ", stringify!(pthread_attr_t))
2789    );
2790    assert_eq!(
2791        unsafe { ::std::ptr::addr_of!((*ptr).__size) as usize - ptr as usize },
2792        0usize,
2793        concat!(
2794            "Offset of field: ",
2795            stringify!(pthread_attr_t),
2796            "::",
2797            stringify!(__size)
2798        )
2799    );
2800    assert_eq!(
2801        unsafe { ::std::ptr::addr_of!((*ptr).__align) as usize - ptr as usize },
2802        0usize,
2803        concat!(
2804            "Offset of field: ",
2805            stringify!(pthread_attr_t),
2806            "::",
2807            stringify!(__align)
2808        )
2809    );
2810}
2811#[repr(C)]
2812#[derive(Copy, Clone)]
2813pub union pthread_mutex_t {
2814    pub __data: __pthread_mutex_s,
2815    pub __size: [::std::os::raw::c_char; 40usize],
2816    pub __align: ::std::os::raw::c_long,
2817}
2818#[test]
2819fn bindgen_test_layout_pthread_mutex_t() {
2820    const UNINIT: ::std::mem::MaybeUninit<pthread_mutex_t> = ::std::mem::MaybeUninit::uninit();
2821    let ptr = UNINIT.as_ptr();
2822    assert_eq!(
2823        ::std::mem::size_of::<pthread_mutex_t>(),
2824        40usize,
2825        concat!("Size of: ", stringify!(pthread_mutex_t))
2826    );
2827    assert_eq!(
2828        ::std::mem::align_of::<pthread_mutex_t>(),
2829        8usize,
2830        concat!("Alignment of ", stringify!(pthread_mutex_t))
2831    );
2832    assert_eq!(
2833        unsafe { ::std::ptr::addr_of!((*ptr).__data) as usize - ptr as usize },
2834        0usize,
2835        concat!(
2836            "Offset of field: ",
2837            stringify!(pthread_mutex_t),
2838            "::",
2839            stringify!(__data)
2840        )
2841    );
2842    assert_eq!(
2843        unsafe { ::std::ptr::addr_of!((*ptr).__size) as usize - ptr as usize },
2844        0usize,
2845        concat!(
2846            "Offset of field: ",
2847            stringify!(pthread_mutex_t),
2848            "::",
2849            stringify!(__size)
2850        )
2851    );
2852    assert_eq!(
2853        unsafe { ::std::ptr::addr_of!((*ptr).__align) as usize - ptr as usize },
2854        0usize,
2855        concat!(
2856            "Offset of field: ",
2857            stringify!(pthread_mutex_t),
2858            "::",
2859            stringify!(__align)
2860        )
2861    );
2862}
2863#[repr(C)]
2864#[derive(Copy, Clone)]
2865pub union pthread_cond_t {
2866    pub __data: __pthread_cond_s,
2867    pub __size: [::std::os::raw::c_char; 48usize],
2868    pub __align: ::std::os::raw::c_longlong,
2869}
2870#[test]
2871fn bindgen_test_layout_pthread_cond_t() {
2872    const UNINIT: ::std::mem::MaybeUninit<pthread_cond_t> = ::std::mem::MaybeUninit::uninit();
2873    let ptr = UNINIT.as_ptr();
2874    assert_eq!(
2875        ::std::mem::size_of::<pthread_cond_t>(),
2876        48usize,
2877        concat!("Size of: ", stringify!(pthread_cond_t))
2878    );
2879    assert_eq!(
2880        ::std::mem::align_of::<pthread_cond_t>(),
2881        8usize,
2882        concat!("Alignment of ", stringify!(pthread_cond_t))
2883    );
2884    assert_eq!(
2885        unsafe { ::std::ptr::addr_of!((*ptr).__data) as usize - ptr as usize },
2886        0usize,
2887        concat!(
2888            "Offset of field: ",
2889            stringify!(pthread_cond_t),
2890            "::",
2891            stringify!(__data)
2892        )
2893    );
2894    assert_eq!(
2895        unsafe { ::std::ptr::addr_of!((*ptr).__size) as usize - ptr as usize },
2896        0usize,
2897        concat!(
2898            "Offset of field: ",
2899            stringify!(pthread_cond_t),
2900            "::",
2901            stringify!(__size)
2902        )
2903    );
2904    assert_eq!(
2905        unsafe { ::std::ptr::addr_of!((*ptr).__align) as usize - ptr as usize },
2906        0usize,
2907        concat!(
2908            "Offset of field: ",
2909            stringify!(pthread_cond_t),
2910            "::",
2911            stringify!(__align)
2912        )
2913    );
2914}
2915#[repr(C)]
2916#[derive(Copy, Clone)]
2917pub union pthread_rwlock_t {
2918    pub __data: __pthread_rwlock_arch_t,
2919    pub __size: [::std::os::raw::c_char; 56usize],
2920    pub __align: ::std::os::raw::c_long,
2921}
2922#[test]
2923fn bindgen_test_layout_pthread_rwlock_t() {
2924    const UNINIT: ::std::mem::MaybeUninit<pthread_rwlock_t> = ::std::mem::MaybeUninit::uninit();
2925    let ptr = UNINIT.as_ptr();
2926    assert_eq!(
2927        ::std::mem::size_of::<pthread_rwlock_t>(),
2928        56usize,
2929        concat!("Size of: ", stringify!(pthread_rwlock_t))
2930    );
2931    assert_eq!(
2932        ::std::mem::align_of::<pthread_rwlock_t>(),
2933        8usize,
2934        concat!("Alignment of ", stringify!(pthread_rwlock_t))
2935    );
2936    assert_eq!(
2937        unsafe { ::std::ptr::addr_of!((*ptr).__data) as usize - ptr as usize },
2938        0usize,
2939        concat!(
2940            "Offset of field: ",
2941            stringify!(pthread_rwlock_t),
2942            "::",
2943            stringify!(__data)
2944        )
2945    );
2946    assert_eq!(
2947        unsafe { ::std::ptr::addr_of!((*ptr).__size) as usize - ptr as usize },
2948        0usize,
2949        concat!(
2950            "Offset of field: ",
2951            stringify!(pthread_rwlock_t),
2952            "::",
2953            stringify!(__size)
2954        )
2955    );
2956    assert_eq!(
2957        unsafe { ::std::ptr::addr_of!((*ptr).__align) as usize - ptr as usize },
2958        0usize,
2959        concat!(
2960            "Offset of field: ",
2961            stringify!(pthread_rwlock_t),
2962            "::",
2963            stringify!(__align)
2964        )
2965    );
2966}
2967#[repr(C)]
2968#[derive(Copy, Clone)]
2969pub union pthread_rwlockattr_t {
2970    pub __size: [::std::os::raw::c_char; 8usize],
2971    pub __align: ::std::os::raw::c_long,
2972}
2973#[test]
2974fn bindgen_test_layout_pthread_rwlockattr_t() {
2975    const UNINIT: ::std::mem::MaybeUninit<pthread_rwlockattr_t> = ::std::mem::MaybeUninit::uninit();
2976    let ptr = UNINIT.as_ptr();
2977    assert_eq!(
2978        ::std::mem::size_of::<pthread_rwlockattr_t>(),
2979        8usize,
2980        concat!("Size of: ", stringify!(pthread_rwlockattr_t))
2981    );
2982    assert_eq!(
2983        ::std::mem::align_of::<pthread_rwlockattr_t>(),
2984        8usize,
2985        concat!("Alignment of ", stringify!(pthread_rwlockattr_t))
2986    );
2987    assert_eq!(
2988        unsafe { ::std::ptr::addr_of!((*ptr).__size) as usize - ptr as usize },
2989        0usize,
2990        concat!(
2991            "Offset of field: ",
2992            stringify!(pthread_rwlockattr_t),
2993            "::",
2994            stringify!(__size)
2995        )
2996    );
2997    assert_eq!(
2998        unsafe { ::std::ptr::addr_of!((*ptr).__align) as usize - ptr as usize },
2999        0usize,
3000        concat!(
3001            "Offset of field: ",
3002            stringify!(pthread_rwlockattr_t),
3003            "::",
3004            stringify!(__align)
3005        )
3006    );
3007}
3008pub type pthread_spinlock_t = ::std::os::raw::c_int;
3009#[repr(C)]
3010#[derive(Copy, Clone)]
3011pub union pthread_barrier_t {
3012    pub __size: [::std::os::raw::c_char; 32usize],
3013    pub __align: ::std::os::raw::c_long,
3014}
3015#[test]
3016fn bindgen_test_layout_pthread_barrier_t() {
3017    const UNINIT: ::std::mem::MaybeUninit<pthread_barrier_t> = ::std::mem::MaybeUninit::uninit();
3018    let ptr = UNINIT.as_ptr();
3019    assert_eq!(
3020        ::std::mem::size_of::<pthread_barrier_t>(),
3021        32usize,
3022        concat!("Size of: ", stringify!(pthread_barrier_t))
3023    );
3024    assert_eq!(
3025        ::std::mem::align_of::<pthread_barrier_t>(),
3026        8usize,
3027        concat!("Alignment of ", stringify!(pthread_barrier_t))
3028    );
3029    assert_eq!(
3030        unsafe { ::std::ptr::addr_of!((*ptr).__size) as usize - ptr as usize },
3031        0usize,
3032        concat!(
3033            "Offset of field: ",
3034            stringify!(pthread_barrier_t),
3035            "::",
3036            stringify!(__size)
3037        )
3038    );
3039    assert_eq!(
3040        unsafe { ::std::ptr::addr_of!((*ptr).__align) as usize - ptr as usize },
3041        0usize,
3042        concat!(
3043            "Offset of field: ",
3044            stringify!(pthread_barrier_t),
3045            "::",
3046            stringify!(__align)
3047        )
3048    );
3049}
3050#[repr(C)]
3051#[derive(Copy, Clone)]
3052pub union pthread_barrierattr_t {
3053    pub __size: [::std::os::raw::c_char; 4usize],
3054    pub __align: ::std::os::raw::c_int,
3055}
3056#[test]
3057fn bindgen_test_layout_pthread_barrierattr_t() {
3058    const UNINIT: ::std::mem::MaybeUninit<pthread_barrierattr_t> =
3059        ::std::mem::MaybeUninit::uninit();
3060    let ptr = UNINIT.as_ptr();
3061    assert_eq!(
3062        ::std::mem::size_of::<pthread_barrierattr_t>(),
3063        4usize,
3064        concat!("Size of: ", stringify!(pthread_barrierattr_t))
3065    );
3066    assert_eq!(
3067        ::std::mem::align_of::<pthread_barrierattr_t>(),
3068        4usize,
3069        concat!("Alignment of ", stringify!(pthread_barrierattr_t))
3070    );
3071    assert_eq!(
3072        unsafe { ::std::ptr::addr_of!((*ptr).__size) as usize - ptr as usize },
3073        0usize,
3074        concat!(
3075            "Offset of field: ",
3076            stringify!(pthread_barrierattr_t),
3077            "::",
3078            stringify!(__size)
3079        )
3080    );
3081    assert_eq!(
3082        unsafe { ::std::ptr::addr_of!((*ptr).__align) as usize - ptr as usize },
3083        0usize,
3084        concat!(
3085            "Offset of field: ",
3086            stringify!(pthread_barrierattr_t),
3087            "::",
3088            stringify!(__align)
3089        )
3090    );
3091}
3092pub const gd_entype_t_GD_NO_ENTRY: gd_entype_t = 0;
3093pub const gd_entype_t_GD_RAW_ENTRY: gd_entype_t = 1;
3094pub const gd_entype_t_GD_LINCOM_ENTRY: gd_entype_t = 2;
3095pub const gd_entype_t_GD_LINTERP_ENTRY: gd_entype_t = 3;
3096pub const gd_entype_t_GD_BIT_ENTRY: gd_entype_t = 4;
3097pub const gd_entype_t_GD_MULTIPLY_ENTRY: gd_entype_t = 5;
3098pub const gd_entype_t_GD_PHASE_ENTRY: gd_entype_t = 6;
3099pub const gd_entype_t_GD_INDEX_ENTRY: gd_entype_t = 7;
3100pub const gd_entype_t_GD_POLYNOM_ENTRY: gd_entype_t = 8;
3101pub const gd_entype_t_GD_SBIT_ENTRY: gd_entype_t = 9;
3102pub const gd_entype_t_GD_DIVIDE_ENTRY: gd_entype_t = 10;
3103pub const gd_entype_t_GD_RECIP_ENTRY: gd_entype_t = 11;
3104pub const gd_entype_t_GD_WINDOW_ENTRY: gd_entype_t = 12;
3105pub const gd_entype_t_GD_MPLEX_ENTRY: gd_entype_t = 13;
3106pub const gd_entype_t_GD_INDIR_ENTRY: gd_entype_t = 14;
3107pub const gd_entype_t_GD_SINDIR_ENTRY: gd_entype_t = 15;
3108pub const gd_entype_t_GD_CONST_ENTRY: gd_entype_t = 16;
3109pub const gd_entype_t_GD_STRING_ENTRY: gd_entype_t = 17;
3110pub const gd_entype_t_GD_CARRAY_ENTRY: gd_entype_t = 18;
3111pub const gd_entype_t_GD_SARRAY_ENTRY: gd_entype_t = 19;
3112pub const gd_entype_t_GD_ALIAS_ENTRY: gd_entype_t = -1;
3113pub type gd_entype_t = ::std::os::raw::c_int;
3114pub type int_least8_t = __int_least8_t;
3115pub type int_least16_t = __int_least16_t;
3116pub type int_least32_t = __int_least32_t;
3117pub type int_least64_t = __int_least64_t;
3118pub type uint_least8_t = __uint_least8_t;
3119pub type uint_least16_t = __uint_least16_t;
3120pub type uint_least32_t = __uint_least32_t;
3121pub type uint_least64_t = __uint_least64_t;
3122pub type int_fast8_t = ::std::os::raw::c_schar;
3123pub type int_fast16_t = ::std::os::raw::c_long;
3124pub type int_fast32_t = ::std::os::raw::c_long;
3125pub type int_fast64_t = ::std::os::raw::c_long;
3126pub type uint_fast8_t = ::std::os::raw::c_uchar;
3127pub type uint_fast16_t = ::std::os::raw::c_ulong;
3128pub type uint_fast32_t = ::std::os::raw::c_ulong;
3129pub type uint_fast64_t = ::std::os::raw::c_ulong;
3130pub type intmax_t = __intmax_t;
3131pub type uintmax_t = __uintmax_t;
3132pub type __gwchar_t = ::std::os::raw::c_int;
3133#[repr(C)]
3134#[derive(Debug, Copy, Clone)]
3135pub struct imaxdiv_t {
3136    pub quot: ::std::os::raw::c_long,
3137    pub rem: ::std::os::raw::c_long,
3138}
3139#[test]
3140fn bindgen_test_layout_imaxdiv_t() {
3141    const UNINIT: ::std::mem::MaybeUninit<imaxdiv_t> = ::std::mem::MaybeUninit::uninit();
3142    let ptr = UNINIT.as_ptr();
3143    assert_eq!(
3144        ::std::mem::size_of::<imaxdiv_t>(),
3145        16usize,
3146        concat!("Size of: ", stringify!(imaxdiv_t))
3147    );
3148    assert_eq!(
3149        ::std::mem::align_of::<imaxdiv_t>(),
3150        8usize,
3151        concat!("Alignment of ", stringify!(imaxdiv_t))
3152    );
3153    assert_eq!(
3154        unsafe { ::std::ptr::addr_of!((*ptr).quot) as usize - ptr as usize },
3155        0usize,
3156        concat!(
3157            "Offset of field: ",
3158            stringify!(imaxdiv_t),
3159            "::",
3160            stringify!(quot)
3161        )
3162    );
3163    assert_eq!(
3164        unsafe { ::std::ptr::addr_of!((*ptr).rem) as usize - ptr as usize },
3165        8usize,
3166        concat!(
3167            "Offset of field: ",
3168            stringify!(imaxdiv_t),
3169            "::",
3170            stringify!(rem)
3171        )
3172    );
3173}
3174extern "C" {
3175    pub fn imaxabs(__n: intmax_t) -> intmax_t;
3176}
3177extern "C" {
3178    pub fn imaxdiv(__numer: intmax_t, __denom: intmax_t) -> imaxdiv_t;
3179}
3180extern "C" {
3181    pub fn strtoimax(
3182        __nptr: *const ::std::os::raw::c_char,
3183        __endptr: *mut *mut ::std::os::raw::c_char,
3184        __base: ::std::os::raw::c_int,
3185    ) -> intmax_t;
3186}
3187extern "C" {
3188    pub fn strtoumax(
3189        __nptr: *const ::std::os::raw::c_char,
3190        __endptr: *mut *mut ::std::os::raw::c_char,
3191        __base: ::std::os::raw::c_int,
3192    ) -> uintmax_t;
3193}
3194extern "C" {
3195    pub fn wcstoimax(
3196        __nptr: *const __gwchar_t,
3197        __endptr: *mut *mut __gwchar_t,
3198        __base: ::std::os::raw::c_int,
3199    ) -> intmax_t;
3200}
3201extern "C" {
3202    pub fn wcstoumax(
3203        __nptr: *const __gwchar_t,
3204        __endptr: *mut *mut __gwchar_t,
3205        __base: ::std::os::raw::c_int,
3206    ) -> uintmax_t;
3207}
3208pub type gd_shift_t = i64;
3209pub const gd_type_t_GD_NULL: gd_type_t = 0;
3210pub const gd_type_t_GD_UNKNOWN: gd_type_t = 4000;
3211pub const gd_type_t_GD_UINT8: gd_type_t = 1;
3212pub const gd_type_t_GD_INT8: gd_type_t = 33;
3213pub const gd_type_t_GD_UINT16: gd_type_t = 2;
3214pub const gd_type_t_GD_INT16: gd_type_t = 34;
3215pub const gd_type_t_GD_UINT32: gd_type_t = 4;
3216pub const gd_type_t_GD_INT32: gd_type_t = 36;
3217pub const gd_type_t_GD_UINT64: gd_type_t = 8;
3218pub const gd_type_t_GD_INT64: gd_type_t = 40;
3219pub const gd_type_t_GD_FLOAT32: gd_type_t = 132;
3220pub const gd_type_t_GD_FLOAT64: gd_type_t = 136;
3221pub const gd_type_t_GD_COMPLEX64: gd_type_t = 264;
3222pub const gd_type_t_GD_COMPLEX128: gd_type_t = 272;
3223pub const gd_type_t_GD_STRING: gd_type_t = 520;
3224pub type gd_type_t = ::std::os::raw::c_uint;
3225pub const gd_windop_t_GD_WINDOP_UNK: gd_windop_t = 0;
3226pub const gd_windop_t_GD_WINDOP_EQ: gd_windop_t = 1;
3227pub const gd_windop_t_GD_WINDOP_GE: gd_windop_t = 2;
3228pub const gd_windop_t_GD_WINDOP_GT: gd_windop_t = 3;
3229pub const gd_windop_t_GD_WINDOP_LE: gd_windop_t = 4;
3230pub const gd_windop_t_GD_WINDOP_LT: gd_windop_t = 5;
3231pub const gd_windop_t_GD_WINDOP_NE: gd_windop_t = 6;
3232pub const gd_windop_t_GD_WINDOP_SET: gd_windop_t = 7;
3233pub const gd_windop_t_GD_WINDOP_CLR: gd_windop_t = 8;
3234pub type gd_windop_t = ::std::os::raw::c_uint;
3235#[repr(C)]
3236#[derive(Debug, Copy, Clone)]
3237pub struct gd_private_entry_ {
3238    _unused: [u8; 0],
3239}
3240#[repr(C)]
3241#[derive(Copy, Clone)]
3242pub union gd_triplet_t {
3243    pub i: i64,
3244    pub u: u64,
3245    pub r: f64,
3246}
3247#[test]
3248fn bindgen_test_layout_gd_triplet_t() {
3249    const UNINIT: ::std::mem::MaybeUninit<gd_triplet_t> = ::std::mem::MaybeUninit::uninit();
3250    let ptr = UNINIT.as_ptr();
3251    assert_eq!(
3252        ::std::mem::size_of::<gd_triplet_t>(),
3253        8usize,
3254        concat!("Size of: ", stringify!(gd_triplet_t))
3255    );
3256    assert_eq!(
3257        ::std::mem::align_of::<gd_triplet_t>(),
3258        8usize,
3259        concat!("Alignment of ", stringify!(gd_triplet_t))
3260    );
3261    assert_eq!(
3262        unsafe { ::std::ptr::addr_of!((*ptr).i) as usize - ptr as usize },
3263        0usize,
3264        concat!(
3265            "Offset of field: ",
3266            stringify!(gd_triplet_t),
3267            "::",
3268            stringify!(i)
3269        )
3270    );
3271    assert_eq!(
3272        unsafe { ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize },
3273        0usize,
3274        concat!(
3275            "Offset of field: ",
3276            stringify!(gd_triplet_t),
3277            "::",
3278            stringify!(u)
3279        )
3280    );
3281    assert_eq!(
3282        unsafe { ::std::ptr::addr_of!((*ptr).r) as usize - ptr as usize },
3283        0usize,
3284        concat!(
3285            "Offset of field: ",
3286            stringify!(gd_triplet_t),
3287            "::",
3288            stringify!(r)
3289        )
3290    );
3291}
3292#[repr(C)]
3293#[derive(Copy, Clone)]
3294pub struct gd_unified_entry_ {
3295    pub field: *mut ::std::os::raw::c_char,
3296    pub field_type: gd_entype_t,
3297    pub in_fields: [*mut ::std::os::raw::c_char; 3usize],
3298    pub scalar: [*mut ::std::os::raw::c_char; 6usize],
3299    pub scalar_ind: [::std::os::raw::c_int; 6usize],
3300    pub fragment_index: ::std::os::raw::c_int,
3301    pub flags: ::std::os::raw::c_uint,
3302    pub __bindgen_anon_1: gd_unified_entry___bindgen_ty_1,
3303    pub e: *mut gd_private_entry_,
3304}
3305#[repr(C)]
3306#[derive(Copy, Clone)]
3307pub union gd_unified_entry___bindgen_ty_1 {
3308    pub __bindgen_anon_1: gd_unified_entry___bindgen_ty_1__bindgen_ty_1,
3309    pub __bindgen_anon_2: gd_unified_entry___bindgen_ty_1__bindgen_ty_2,
3310    pub __bindgen_anon_3: gd_unified_entry___bindgen_ty_1__bindgen_ty_3,
3311    pub __bindgen_anon_4: gd_unified_entry___bindgen_ty_1__bindgen_ty_4,
3312    pub __bindgen_anon_5: gd_unified_entry___bindgen_ty_1__bindgen_ty_5,
3313    pub __bindgen_anon_6: gd_unified_entry___bindgen_ty_1__bindgen_ty_6,
3314    pub __bindgen_anon_7: gd_unified_entry___bindgen_ty_1__bindgen_ty_7,
3315    pub __bindgen_anon_8: gd_unified_entry___bindgen_ty_1__bindgen_ty_8,
3316    pub __bindgen_anon_9: gd_unified_entry___bindgen_ty_1__bindgen_ty_9,
3317    pub __bindgen_anon_10: gd_unified_entry___bindgen_ty_1__bindgen_ty_10,
3318}
3319#[repr(C)]
3320#[derive(Debug, Copy, Clone)]
3321pub struct gd_unified_entry___bindgen_ty_1__bindgen_ty_1 {
3322    pub spf: ::std::os::raw::c_uint,
3323    pub data_type: gd_type_t,
3324}
3325#[test]
3326fn bindgen_test_layout_gd_unified_entry___bindgen_ty_1__bindgen_ty_1() {
3327    const UNINIT: ::std::mem::MaybeUninit<gd_unified_entry___bindgen_ty_1__bindgen_ty_1> =
3328        ::std::mem::MaybeUninit::uninit();
3329    let ptr = UNINIT.as_ptr();
3330    assert_eq!(
3331        ::std::mem::size_of::<gd_unified_entry___bindgen_ty_1__bindgen_ty_1>(),
3332        8usize,
3333        concat!(
3334            "Size of: ",
3335            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_1)
3336        )
3337    );
3338    assert_eq!(
3339        ::std::mem::align_of::<gd_unified_entry___bindgen_ty_1__bindgen_ty_1>(),
3340        4usize,
3341        concat!(
3342            "Alignment of ",
3343            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_1)
3344        )
3345    );
3346    assert_eq!(
3347        unsafe { ::std::ptr::addr_of!((*ptr).spf) as usize - ptr as usize },
3348        0usize,
3349        concat!(
3350            "Offset of field: ",
3351            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_1),
3352            "::",
3353            stringify!(spf)
3354        )
3355    );
3356    assert_eq!(
3357        unsafe { ::std::ptr::addr_of!((*ptr).data_type) as usize - ptr as usize },
3358        4usize,
3359        concat!(
3360            "Offset of field: ",
3361            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_1),
3362            "::",
3363            stringify!(data_type)
3364        )
3365    );
3366}
3367#[repr(C)]
3368#[derive(Debug, Copy, Clone)]
3369pub struct gd_unified_entry___bindgen_ty_1__bindgen_ty_2 {
3370    pub n_fields: ::std::os::raw::c_int,
3371    pub m: [f64; 3usize],
3372    pub cm: [__BindgenComplex<f64>; 3usize],
3373    pub b: [f64; 3usize],
3374    pub cb: [__BindgenComplex<f64>; 3usize],
3375}
3376#[test]
3377fn bindgen_test_layout_gd_unified_entry___bindgen_ty_1__bindgen_ty_2() {
3378    const UNINIT: ::std::mem::MaybeUninit<gd_unified_entry___bindgen_ty_1__bindgen_ty_2> =
3379        ::std::mem::MaybeUninit::uninit();
3380    let ptr = UNINIT.as_ptr();
3381    assert_eq!(
3382        ::std::mem::size_of::<gd_unified_entry___bindgen_ty_1__bindgen_ty_2>(),
3383        152usize,
3384        concat!(
3385            "Size of: ",
3386            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_2)
3387        )
3388    );
3389    assert_eq!(
3390        ::std::mem::align_of::<gd_unified_entry___bindgen_ty_1__bindgen_ty_2>(),
3391        8usize,
3392        concat!(
3393            "Alignment of ",
3394            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_2)
3395        )
3396    );
3397    assert_eq!(
3398        unsafe { ::std::ptr::addr_of!((*ptr).n_fields) as usize - ptr as usize },
3399        0usize,
3400        concat!(
3401            "Offset of field: ",
3402            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_2),
3403            "::",
3404            stringify!(n_fields)
3405        )
3406    );
3407    assert_eq!(
3408        unsafe { ::std::ptr::addr_of!((*ptr).m) as usize - ptr as usize },
3409        8usize,
3410        concat!(
3411            "Offset of field: ",
3412            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_2),
3413            "::",
3414            stringify!(m)
3415        )
3416    );
3417    assert_eq!(
3418        unsafe { ::std::ptr::addr_of!((*ptr).cm) as usize - ptr as usize },
3419        32usize,
3420        concat!(
3421            "Offset of field: ",
3422            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_2),
3423            "::",
3424            stringify!(cm)
3425        )
3426    );
3427    assert_eq!(
3428        unsafe { ::std::ptr::addr_of!((*ptr).b) as usize - ptr as usize },
3429        80usize,
3430        concat!(
3431            "Offset of field: ",
3432            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_2),
3433            "::",
3434            stringify!(b)
3435        )
3436    );
3437    assert_eq!(
3438        unsafe { ::std::ptr::addr_of!((*ptr).cb) as usize - ptr as usize },
3439        104usize,
3440        concat!(
3441            "Offset of field: ",
3442            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_2),
3443            "::",
3444            stringify!(cb)
3445        )
3446    );
3447}
3448#[repr(C)]
3449#[derive(Debug, Copy, Clone)]
3450pub struct gd_unified_entry___bindgen_ty_1__bindgen_ty_3 {
3451    pub bitnum: ::std::os::raw::c_int,
3452    pub numbits: ::std::os::raw::c_int,
3453}
3454#[test]
3455fn bindgen_test_layout_gd_unified_entry___bindgen_ty_1__bindgen_ty_3() {
3456    const UNINIT: ::std::mem::MaybeUninit<gd_unified_entry___bindgen_ty_1__bindgen_ty_3> =
3457        ::std::mem::MaybeUninit::uninit();
3458    let ptr = UNINIT.as_ptr();
3459    assert_eq!(
3460        ::std::mem::size_of::<gd_unified_entry___bindgen_ty_1__bindgen_ty_3>(),
3461        8usize,
3462        concat!(
3463            "Size of: ",
3464            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_3)
3465        )
3466    );
3467    assert_eq!(
3468        ::std::mem::align_of::<gd_unified_entry___bindgen_ty_1__bindgen_ty_3>(),
3469        4usize,
3470        concat!(
3471            "Alignment of ",
3472            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_3)
3473        )
3474    );
3475    assert_eq!(
3476        unsafe { ::std::ptr::addr_of!((*ptr).bitnum) as usize - ptr as usize },
3477        0usize,
3478        concat!(
3479            "Offset of field: ",
3480            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_3),
3481            "::",
3482            stringify!(bitnum)
3483        )
3484    );
3485    assert_eq!(
3486        unsafe { ::std::ptr::addr_of!((*ptr).numbits) as usize - ptr as usize },
3487        4usize,
3488        concat!(
3489            "Offset of field: ",
3490            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_3),
3491            "::",
3492            stringify!(numbits)
3493        )
3494    );
3495}
3496#[repr(C)]
3497#[derive(Debug, Copy, Clone)]
3498pub struct gd_unified_entry___bindgen_ty_1__bindgen_ty_4 {
3499    pub poly_ord: ::std::os::raw::c_int,
3500    pub a: [f64; 6usize],
3501    pub ca: [__BindgenComplex<f64>; 6usize],
3502}
3503#[test]
3504fn bindgen_test_layout_gd_unified_entry___bindgen_ty_1__bindgen_ty_4() {
3505    const UNINIT: ::std::mem::MaybeUninit<gd_unified_entry___bindgen_ty_1__bindgen_ty_4> =
3506        ::std::mem::MaybeUninit::uninit();
3507    let ptr = UNINIT.as_ptr();
3508    assert_eq!(
3509        ::std::mem::size_of::<gd_unified_entry___bindgen_ty_1__bindgen_ty_4>(),
3510        152usize,
3511        concat!(
3512            "Size of: ",
3513            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_4)
3514        )
3515    );
3516    assert_eq!(
3517        ::std::mem::align_of::<gd_unified_entry___bindgen_ty_1__bindgen_ty_4>(),
3518        8usize,
3519        concat!(
3520            "Alignment of ",
3521            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_4)
3522        )
3523    );
3524    assert_eq!(
3525        unsafe { ::std::ptr::addr_of!((*ptr).poly_ord) as usize - ptr as usize },
3526        0usize,
3527        concat!(
3528            "Offset of field: ",
3529            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_4),
3530            "::",
3531            stringify!(poly_ord)
3532        )
3533    );
3534    assert_eq!(
3535        unsafe { ::std::ptr::addr_of!((*ptr).a) as usize - ptr as usize },
3536        8usize,
3537        concat!(
3538            "Offset of field: ",
3539            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_4),
3540            "::",
3541            stringify!(a)
3542        )
3543    );
3544    assert_eq!(
3545        unsafe { ::std::ptr::addr_of!((*ptr).ca) as usize - ptr as usize },
3546        56usize,
3547        concat!(
3548            "Offset of field: ",
3549            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_4),
3550            "::",
3551            stringify!(ca)
3552        )
3553    );
3554}
3555#[repr(C)]
3556#[derive(Debug, Copy, Clone)]
3557pub struct gd_unified_entry___bindgen_ty_1__bindgen_ty_5 {
3558    pub dividend: f64,
3559    pub cdividend: __BindgenComplex<f64>,
3560}
3561#[test]
3562fn bindgen_test_layout_gd_unified_entry___bindgen_ty_1__bindgen_ty_5() {
3563    const UNINIT: ::std::mem::MaybeUninit<gd_unified_entry___bindgen_ty_1__bindgen_ty_5> =
3564        ::std::mem::MaybeUninit::uninit();
3565    let ptr = UNINIT.as_ptr();
3566    assert_eq!(
3567        ::std::mem::size_of::<gd_unified_entry___bindgen_ty_1__bindgen_ty_5>(),
3568        24usize,
3569        concat!(
3570            "Size of: ",
3571            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_5)
3572        )
3573    );
3574    assert_eq!(
3575        ::std::mem::align_of::<gd_unified_entry___bindgen_ty_1__bindgen_ty_5>(),
3576        8usize,
3577        concat!(
3578            "Alignment of ",
3579            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_5)
3580        )
3581    );
3582    assert_eq!(
3583        unsafe { ::std::ptr::addr_of!((*ptr).dividend) as usize - ptr as usize },
3584        0usize,
3585        concat!(
3586            "Offset of field: ",
3587            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_5),
3588            "::",
3589            stringify!(dividend)
3590        )
3591    );
3592    assert_eq!(
3593        unsafe { ::std::ptr::addr_of!((*ptr).cdividend) as usize - ptr as usize },
3594        8usize,
3595        concat!(
3596            "Offset of field: ",
3597            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_5),
3598            "::",
3599            stringify!(cdividend)
3600        )
3601    );
3602}
3603#[repr(C)]
3604#[derive(Debug, Copy, Clone)]
3605pub struct gd_unified_entry___bindgen_ty_1__bindgen_ty_6 {
3606    pub table: *mut ::std::os::raw::c_char,
3607}
3608#[test]
3609fn bindgen_test_layout_gd_unified_entry___bindgen_ty_1__bindgen_ty_6() {
3610    const UNINIT: ::std::mem::MaybeUninit<gd_unified_entry___bindgen_ty_1__bindgen_ty_6> =
3611        ::std::mem::MaybeUninit::uninit();
3612    let ptr = UNINIT.as_ptr();
3613    assert_eq!(
3614        ::std::mem::size_of::<gd_unified_entry___bindgen_ty_1__bindgen_ty_6>(),
3615        8usize,
3616        concat!(
3617            "Size of: ",
3618            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_6)
3619        )
3620    );
3621    assert_eq!(
3622        ::std::mem::align_of::<gd_unified_entry___bindgen_ty_1__bindgen_ty_6>(),
3623        8usize,
3624        concat!(
3625            "Alignment of ",
3626            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_6)
3627        )
3628    );
3629    assert_eq!(
3630        unsafe { ::std::ptr::addr_of!((*ptr).table) as usize - ptr as usize },
3631        0usize,
3632        concat!(
3633            "Offset of field: ",
3634            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_6),
3635            "::",
3636            stringify!(table)
3637        )
3638    );
3639}
3640#[repr(C)]
3641#[derive(Debug, Copy, Clone)]
3642pub struct gd_unified_entry___bindgen_ty_1__bindgen_ty_7 {
3643    pub shift: i64,
3644}
3645#[test]
3646fn bindgen_test_layout_gd_unified_entry___bindgen_ty_1__bindgen_ty_7() {
3647    const UNINIT: ::std::mem::MaybeUninit<gd_unified_entry___bindgen_ty_1__bindgen_ty_7> =
3648        ::std::mem::MaybeUninit::uninit();
3649    let ptr = UNINIT.as_ptr();
3650    assert_eq!(
3651        ::std::mem::size_of::<gd_unified_entry___bindgen_ty_1__bindgen_ty_7>(),
3652        8usize,
3653        concat!(
3654            "Size of: ",
3655            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_7)
3656        )
3657    );
3658    assert_eq!(
3659        ::std::mem::align_of::<gd_unified_entry___bindgen_ty_1__bindgen_ty_7>(),
3660        8usize,
3661        concat!(
3662            "Alignment of ",
3663            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_7)
3664        )
3665    );
3666    assert_eq!(
3667        unsafe { ::std::ptr::addr_of!((*ptr).shift) as usize - ptr as usize },
3668        0usize,
3669        concat!(
3670            "Offset of field: ",
3671            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_7),
3672            "::",
3673            stringify!(shift)
3674        )
3675    );
3676}
3677#[repr(C)]
3678#[derive(Copy, Clone)]
3679pub struct gd_unified_entry___bindgen_ty_1__bindgen_ty_8 {
3680    pub windop: gd_windop_t,
3681    pub threshold: gd_triplet_t,
3682}
3683#[test]
3684fn bindgen_test_layout_gd_unified_entry___bindgen_ty_1__bindgen_ty_8() {
3685    const UNINIT: ::std::mem::MaybeUninit<gd_unified_entry___bindgen_ty_1__bindgen_ty_8> =
3686        ::std::mem::MaybeUninit::uninit();
3687    let ptr = UNINIT.as_ptr();
3688    assert_eq!(
3689        ::std::mem::size_of::<gd_unified_entry___bindgen_ty_1__bindgen_ty_8>(),
3690        16usize,
3691        concat!(
3692            "Size of: ",
3693            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_8)
3694        )
3695    );
3696    assert_eq!(
3697        ::std::mem::align_of::<gd_unified_entry___bindgen_ty_1__bindgen_ty_8>(),
3698        8usize,
3699        concat!(
3700            "Alignment of ",
3701            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_8)
3702        )
3703    );
3704    assert_eq!(
3705        unsafe { ::std::ptr::addr_of!((*ptr).windop) as usize - ptr as usize },
3706        0usize,
3707        concat!(
3708            "Offset of field: ",
3709            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_8),
3710            "::",
3711            stringify!(windop)
3712        )
3713    );
3714    assert_eq!(
3715        unsafe { ::std::ptr::addr_of!((*ptr).threshold) as usize - ptr as usize },
3716        8usize,
3717        concat!(
3718            "Offset of field: ",
3719            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_8),
3720            "::",
3721            stringify!(threshold)
3722        )
3723    );
3724}
3725#[repr(C)]
3726#[derive(Debug, Copy, Clone)]
3727pub struct gd_unified_entry___bindgen_ty_1__bindgen_ty_9 {
3728    pub count_val: ::std::os::raw::c_int,
3729    pub period: ::std::os::raw::c_int,
3730}
3731#[test]
3732fn bindgen_test_layout_gd_unified_entry___bindgen_ty_1__bindgen_ty_9() {
3733    const UNINIT: ::std::mem::MaybeUninit<gd_unified_entry___bindgen_ty_1__bindgen_ty_9> =
3734        ::std::mem::MaybeUninit::uninit();
3735    let ptr = UNINIT.as_ptr();
3736    assert_eq!(
3737        ::std::mem::size_of::<gd_unified_entry___bindgen_ty_1__bindgen_ty_9>(),
3738        8usize,
3739        concat!(
3740            "Size of: ",
3741            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_9)
3742        )
3743    );
3744    assert_eq!(
3745        ::std::mem::align_of::<gd_unified_entry___bindgen_ty_1__bindgen_ty_9>(),
3746        4usize,
3747        concat!(
3748            "Alignment of ",
3749            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_9)
3750        )
3751    );
3752    assert_eq!(
3753        unsafe { ::std::ptr::addr_of!((*ptr).count_val) as usize - ptr as usize },
3754        0usize,
3755        concat!(
3756            "Offset of field: ",
3757            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_9),
3758            "::",
3759            stringify!(count_val)
3760        )
3761    );
3762    assert_eq!(
3763        unsafe { ::std::ptr::addr_of!((*ptr).period) as usize - ptr as usize },
3764        4usize,
3765        concat!(
3766            "Offset of field: ",
3767            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_9),
3768            "::",
3769            stringify!(period)
3770        )
3771    );
3772}
3773#[repr(C)]
3774#[derive(Debug, Copy, Clone)]
3775pub struct gd_unified_entry___bindgen_ty_1__bindgen_ty_10 {
3776    pub const_type: gd_type_t,
3777    pub array_len: usize,
3778}
3779#[test]
3780fn bindgen_test_layout_gd_unified_entry___bindgen_ty_1__bindgen_ty_10() {
3781    const UNINIT: ::std::mem::MaybeUninit<gd_unified_entry___bindgen_ty_1__bindgen_ty_10> =
3782        ::std::mem::MaybeUninit::uninit();
3783    let ptr = UNINIT.as_ptr();
3784    assert_eq!(
3785        ::std::mem::size_of::<gd_unified_entry___bindgen_ty_1__bindgen_ty_10>(),
3786        16usize,
3787        concat!(
3788            "Size of: ",
3789            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_10)
3790        )
3791    );
3792    assert_eq!(
3793        ::std::mem::align_of::<gd_unified_entry___bindgen_ty_1__bindgen_ty_10>(),
3794        8usize,
3795        concat!(
3796            "Alignment of ",
3797            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_10)
3798        )
3799    );
3800    assert_eq!(
3801        unsafe { ::std::ptr::addr_of!((*ptr).const_type) as usize - ptr as usize },
3802        0usize,
3803        concat!(
3804            "Offset of field: ",
3805            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_10),
3806            "::",
3807            stringify!(const_type)
3808        )
3809    );
3810    assert_eq!(
3811        unsafe { ::std::ptr::addr_of!((*ptr).array_len) as usize - ptr as usize },
3812        8usize,
3813        concat!(
3814            "Offset of field: ",
3815            stringify!(gd_unified_entry___bindgen_ty_1__bindgen_ty_10),
3816            "::",
3817            stringify!(array_len)
3818        )
3819    );
3820}
3821#[test]
3822fn bindgen_test_layout_gd_unified_entry___bindgen_ty_1() {
3823    assert_eq!(
3824        ::std::mem::size_of::<gd_unified_entry___bindgen_ty_1>(),
3825        152usize,
3826        concat!("Size of: ", stringify!(gd_unified_entry___bindgen_ty_1))
3827    );
3828    assert_eq!(
3829        ::std::mem::align_of::<gd_unified_entry___bindgen_ty_1>(),
3830        8usize,
3831        concat!("Alignment of ", stringify!(gd_unified_entry___bindgen_ty_1))
3832    );
3833}
3834#[test]
3835fn bindgen_test_layout_gd_unified_entry_() {
3836    const UNINIT: ::std::mem::MaybeUninit<gd_unified_entry_> = ::std::mem::MaybeUninit::uninit();
3837    let ptr = UNINIT.as_ptr();
3838    assert_eq!(
3839        ::std::mem::size_of::<gd_unified_entry_>(),
3840        280usize,
3841        concat!("Size of: ", stringify!(gd_unified_entry_))
3842    );
3843    assert_eq!(
3844        ::std::mem::align_of::<gd_unified_entry_>(),
3845        8usize,
3846        concat!("Alignment of ", stringify!(gd_unified_entry_))
3847    );
3848    assert_eq!(
3849        unsafe { ::std::ptr::addr_of!((*ptr).field) as usize - ptr as usize },
3850        0usize,
3851        concat!(
3852            "Offset of field: ",
3853            stringify!(gd_unified_entry_),
3854            "::",
3855            stringify!(field)
3856        )
3857    );
3858    assert_eq!(
3859        unsafe { ::std::ptr::addr_of!((*ptr).field_type) as usize - ptr as usize },
3860        8usize,
3861        concat!(
3862            "Offset of field: ",
3863            stringify!(gd_unified_entry_),
3864            "::",
3865            stringify!(field_type)
3866        )
3867    );
3868    assert_eq!(
3869        unsafe { ::std::ptr::addr_of!((*ptr).in_fields) as usize - ptr as usize },
3870        16usize,
3871        concat!(
3872            "Offset of field: ",
3873            stringify!(gd_unified_entry_),
3874            "::",
3875            stringify!(in_fields)
3876        )
3877    );
3878    assert_eq!(
3879        unsafe { ::std::ptr::addr_of!((*ptr).scalar) as usize - ptr as usize },
3880        40usize,
3881        concat!(
3882            "Offset of field: ",
3883            stringify!(gd_unified_entry_),
3884            "::",
3885            stringify!(scalar)
3886        )
3887    );
3888    assert_eq!(
3889        unsafe { ::std::ptr::addr_of!((*ptr).scalar_ind) as usize - ptr as usize },
3890        88usize,
3891        concat!(
3892            "Offset of field: ",
3893            stringify!(gd_unified_entry_),
3894            "::",
3895            stringify!(scalar_ind)
3896        )
3897    );
3898    assert_eq!(
3899        unsafe { ::std::ptr::addr_of!((*ptr).fragment_index) as usize - ptr as usize },
3900        112usize,
3901        concat!(
3902            "Offset of field: ",
3903            stringify!(gd_unified_entry_),
3904            "::",
3905            stringify!(fragment_index)
3906        )
3907    );
3908    assert_eq!(
3909        unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
3910        116usize,
3911        concat!(
3912            "Offset of field: ",
3913            stringify!(gd_unified_entry_),
3914            "::",
3915            stringify!(flags)
3916        )
3917    );
3918    assert_eq!(
3919        unsafe { ::std::ptr::addr_of!((*ptr).e) as usize - ptr as usize },
3920        272usize,
3921        concat!(
3922            "Offset of field: ",
3923            stringify!(gd_unified_entry_),
3924            "::",
3925            stringify!(e)
3926        )
3927    );
3928}
3929pub type gd_entry_t = gd_unified_entry_;
3930#[repr(C)]
3931#[derive(Debug, Copy, Clone)]
3932pub struct gd_dirfile_ {
3933    _unused: [u8; 0],
3934}
3935pub type DIRFILE = gd_dirfile_;
3936#[repr(C)]
3937#[derive(Debug, Copy, Clone)]
3938pub struct gd_callback_data_ {
3939    pub dirfile: *const DIRFILE,
3940    pub suberror: ::std::os::raw::c_int,
3941    pub linenum: ::std::os::raw::c_int,
3942    pub filename: *const ::std::os::raw::c_char,
3943    pub line: *mut ::std::os::raw::c_char,
3944    pub buflen: usize,
3945}
3946#[test]
3947fn bindgen_test_layout_gd_callback_data_() {
3948    const UNINIT: ::std::mem::MaybeUninit<gd_callback_data_> = ::std::mem::MaybeUninit::uninit();
3949    let ptr = UNINIT.as_ptr();
3950    assert_eq!(
3951        ::std::mem::size_of::<gd_callback_data_>(),
3952        40usize,
3953        concat!("Size of: ", stringify!(gd_callback_data_))
3954    );
3955    assert_eq!(
3956        ::std::mem::align_of::<gd_callback_data_>(),
3957        8usize,
3958        concat!("Alignment of ", stringify!(gd_callback_data_))
3959    );
3960    assert_eq!(
3961        unsafe { ::std::ptr::addr_of!((*ptr).dirfile) as usize - ptr as usize },
3962        0usize,
3963        concat!(
3964            "Offset of field: ",
3965            stringify!(gd_callback_data_),
3966            "::",
3967            stringify!(dirfile)
3968        )
3969    );
3970    assert_eq!(
3971        unsafe { ::std::ptr::addr_of!((*ptr).suberror) as usize - ptr as usize },
3972        8usize,
3973        concat!(
3974            "Offset of field: ",
3975            stringify!(gd_callback_data_),
3976            "::",
3977            stringify!(suberror)
3978        )
3979    );
3980    assert_eq!(
3981        unsafe { ::std::ptr::addr_of!((*ptr).linenum) as usize - ptr as usize },
3982        12usize,
3983        concat!(
3984            "Offset of field: ",
3985            stringify!(gd_callback_data_),
3986            "::",
3987            stringify!(linenum)
3988        )
3989    );
3990    assert_eq!(
3991        unsafe { ::std::ptr::addr_of!((*ptr).filename) as usize - ptr as usize },
3992        16usize,
3993        concat!(
3994            "Offset of field: ",
3995            stringify!(gd_callback_data_),
3996            "::",
3997            stringify!(filename)
3998        )
3999    );
4000    assert_eq!(
4001        unsafe { ::std::ptr::addr_of!((*ptr).line) as usize - ptr as usize },
4002        24usize,
4003        concat!(
4004            "Offset of field: ",
4005            stringify!(gd_callback_data_),
4006            "::",
4007            stringify!(line)
4008        )
4009    );
4010    assert_eq!(
4011        unsafe { ::std::ptr::addr_of!((*ptr).buflen) as usize - ptr as usize },
4012        32usize,
4013        concat!(
4014            "Offset of field: ",
4015            stringify!(gd_callback_data_),
4016            "::",
4017            stringify!(buflen)
4018        )
4019    );
4020}
4021#[repr(C)]
4022#[derive(Debug, Copy, Clone)]
4023pub struct gd_carray_data_ {
4024    pub n: usize,
4025    pub d: *mut ::std::os::raw::c_void,
4026}
4027#[test]
4028fn bindgen_test_layout_gd_carray_data_() {
4029    const UNINIT: ::std::mem::MaybeUninit<gd_carray_data_> = ::std::mem::MaybeUninit::uninit();
4030    let ptr = UNINIT.as_ptr();
4031    assert_eq!(
4032        ::std::mem::size_of::<gd_carray_data_>(),
4033        16usize,
4034        concat!("Size of: ", stringify!(gd_carray_data_))
4035    );
4036    assert_eq!(
4037        ::std::mem::align_of::<gd_carray_data_>(),
4038        8usize,
4039        concat!("Alignment of ", stringify!(gd_carray_data_))
4040    );
4041    assert_eq!(
4042        unsafe { ::std::ptr::addr_of!((*ptr).n) as usize - ptr as usize },
4043        0usize,
4044        concat!(
4045            "Offset of field: ",
4046            stringify!(gd_carray_data_),
4047            "::",
4048            stringify!(n)
4049        )
4050    );
4051    assert_eq!(
4052        unsafe { ::std::ptr::addr_of!((*ptr).d) as usize - ptr as usize },
4053        8usize,
4054        concat!(
4055            "Offset of field: ",
4056            stringify!(gd_carray_data_),
4057            "::",
4058            stringify!(d)
4059        )
4060    );
4061}
4062pub type gd_carray_t = gd_carray_data_;
4063pub type gd_parser_data_t = gd_callback_data_;
4064pub type gd_parser_callback_t = ::std::option::Option<
4065    unsafe extern "C" fn(
4066        arg1: *mut gd_parser_data_t,
4067        arg2: *mut ::std::os::raw::c_void,
4068    ) -> ::std::os::raw::c_int,
4069>;
4070extern "C" {
4071    pub fn gd_alloc_funcs(
4072        malloc_func: ::std::option::Option<
4073            unsafe extern "C" fn(arg1: usize) -> *mut ::std::os::raw::c_void,
4074        >,
4075        free_func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
4076    );
4077}
4078extern "C" {
4079    pub fn gd_add_alias(
4080        dirfile: *mut DIRFILE,
4081        alias_name: *const ::std::os::raw::c_char,
4082        target_code: *const ::std::os::raw::c_char,
4083        fragment_index: ::std::os::raw::c_int,
4084    ) -> ::std::os::raw::c_int;
4085}
4086extern "C" {
4087    pub fn gd_add_bit(
4088        dirfile: *mut DIRFILE,
4089        field_code: *const ::std::os::raw::c_char,
4090        in_field: *const ::std::os::raw::c_char,
4091        bitnum: ::std::os::raw::c_int,
4092        numbits: ::std::os::raw::c_int,
4093        fragment_index: ::std::os::raw::c_int,
4094    ) -> ::std::os::raw::c_int;
4095}
4096extern "C" {
4097    pub fn gd_add_clincom(
4098        dirfile: *mut DIRFILE,
4099        field_code: *const ::std::os::raw::c_char,
4100        n_fields: ::std::os::raw::c_int,
4101        in_fields: *mut *const ::std::os::raw::c_char,
4102        cm: *const __BindgenComplex<f64>,
4103        cb: *const __BindgenComplex<f64>,
4104        fragment_index: ::std::os::raw::c_int,
4105    ) -> ::std::os::raw::c_int;
4106}
4107extern "C" {
4108    pub fn gd_add_carray(
4109        dirfile: *mut DIRFILE,
4110        field_code: *const ::std::os::raw::c_char,
4111        const_type: gd_type_t,
4112        array_len: usize,
4113        data_type: gd_type_t,
4114        values: *const ::std::os::raw::c_void,
4115        fragment_index: ::std::os::raw::c_int,
4116    ) -> ::std::os::raw::c_int;
4117}
4118extern "C" {
4119    pub fn gd_add_const(
4120        dirfile: *mut DIRFILE,
4121        field_code: *const ::std::os::raw::c_char,
4122        const_type: gd_type_t,
4123        data_type: gd_type_t,
4124        value: *const ::std::os::raw::c_void,
4125        fragment_index: ::std::os::raw::c_int,
4126    ) -> ::std::os::raw::c_int;
4127}
4128extern "C" {
4129    pub fn gd_add_cpolynom(
4130        dirfile: *mut DIRFILE,
4131        field_code: *const ::std::os::raw::c_char,
4132        poly_ord: ::std::os::raw::c_int,
4133        in_field: *const ::std::os::raw::c_char,
4134        ca: *const __BindgenComplex<f64>,
4135        fragment_index: ::std::os::raw::c_int,
4136    ) -> ::std::os::raw::c_int;
4137}
4138extern "C" {
4139    pub fn gd_add_crecip(
4140        dirfile: *mut DIRFILE,
4141        field_code: *const ::std::os::raw::c_char,
4142        in_field: *const ::std::os::raw::c_char,
4143        cdividend: __BindgenComplex<f64>,
4144        fragment_index: ::std::os::raw::c_int,
4145    ) -> ::std::os::raw::c_int;
4146}
4147extern "C" {
4148    pub fn gd_add_crecip89(
4149        dirfile: *mut DIRFILE,
4150        field_code: *const ::std::os::raw::c_char,
4151        in_field: *const ::std::os::raw::c_char,
4152        cdividend: *const f64,
4153        fragment_index: ::std::os::raw::c_int,
4154    ) -> ::std::os::raw::c_int;
4155}
4156extern "C" {
4157    pub fn gd_add_divide(
4158        dirfile: *mut DIRFILE,
4159        field_code: *const ::std::os::raw::c_char,
4160        in_field1: *const ::std::os::raw::c_char,
4161        in_field2: *const ::std::os::raw::c_char,
4162        fragment_index: ::std::os::raw::c_int,
4163    ) -> ::std::os::raw::c_int;
4164}
4165extern "C" {
4166    pub fn gd_add_indir(
4167        dirfile: *mut DIRFILE,
4168        field_code: *const ::std::os::raw::c_char,
4169        in_field1: *const ::std::os::raw::c_char,
4170        in_field2: *const ::std::os::raw::c_char,
4171        fragment_index: ::std::os::raw::c_int,
4172    ) -> ::std::os::raw::c_int;
4173}
4174extern "C" {
4175    pub fn gd_add_lincom(
4176        dirfile: *mut DIRFILE,
4177        field_code: *const ::std::os::raw::c_char,
4178        n_fields: ::std::os::raw::c_int,
4179        in_fields: *mut *const ::std::os::raw::c_char,
4180        m: *const f64,
4181        b: *const f64,
4182        fragment_index: ::std::os::raw::c_int,
4183    ) -> ::std::os::raw::c_int;
4184}
4185extern "C" {
4186    pub fn gd_add_linterp(
4187        dirfile: *mut DIRFILE,
4188        field_code: *const ::std::os::raw::c_char,
4189        in_field: *const ::std::os::raw::c_char,
4190        table: *const ::std::os::raw::c_char,
4191        fragment_index: ::std::os::raw::c_int,
4192    ) -> ::std::os::raw::c_int;
4193}
4194extern "C" {
4195    pub fn gd_add_mplex(
4196        dirfile: *mut DIRFILE,
4197        field_code: *const ::std::os::raw::c_char,
4198        in_field: *const ::std::os::raw::c_char,
4199        count_field: *const ::std::os::raw::c_char,
4200        count_val: ::std::os::raw::c_int,
4201        period: ::std::os::raw::c_int,
4202        fragment_index: ::std::os::raw::c_int,
4203    ) -> ::std::os::raw::c_int;
4204}
4205extern "C" {
4206    pub fn gd_add_multiply(
4207        dirfile: *mut DIRFILE,
4208        field_code: *const ::std::os::raw::c_char,
4209        in_field1: *const ::std::os::raw::c_char,
4210        in_field2: *const ::std::os::raw::c_char,
4211        fragment_index: ::std::os::raw::c_int,
4212    ) -> ::std::os::raw::c_int;
4213}
4214extern "C" {
4215    pub fn gd_add_phase(
4216        dirfile: *mut DIRFILE,
4217        field_code: *const ::std::os::raw::c_char,
4218        in_field: *const ::std::os::raw::c_char,
4219        shift: i64,
4220        fragment_index: ::std::os::raw::c_int,
4221    ) -> ::std::os::raw::c_int;
4222}
4223extern "C" {
4224    pub fn gd_add_polynom(
4225        dirfile: *mut DIRFILE,
4226        field_code: *const ::std::os::raw::c_char,
4227        poly_ord: ::std::os::raw::c_int,
4228        in_field: *const ::std::os::raw::c_char,
4229        a: *const f64,
4230        fragment_index: ::std::os::raw::c_int,
4231    ) -> ::std::os::raw::c_int;
4232}
4233extern "C" {
4234    pub fn gd_add_recip(
4235        dirfile: *mut DIRFILE,
4236        field_code: *const ::std::os::raw::c_char,
4237        in_field: *const ::std::os::raw::c_char,
4238        dividend: f64,
4239        fragment_index: ::std::os::raw::c_int,
4240    ) -> ::std::os::raw::c_int;
4241}
4242extern "C" {
4243    pub fn gd_add_sarray(
4244        dirfile: *mut DIRFILE,
4245        field_code: *const ::std::os::raw::c_char,
4246        array_len: usize,
4247        values: *mut *const ::std::os::raw::c_char,
4248        fragment_index: ::std::os::raw::c_int,
4249    ) -> ::std::os::raw::c_int;
4250}
4251extern "C" {
4252    pub fn gd_add_sbit(
4253        dirfile: *mut DIRFILE,
4254        field_code: *const ::std::os::raw::c_char,
4255        in_field: *const ::std::os::raw::c_char,
4256        bitnum: ::std::os::raw::c_int,
4257        numbits: ::std::os::raw::c_int,
4258        fragment_index: ::std::os::raw::c_int,
4259    ) -> ::std::os::raw::c_int;
4260}
4261extern "C" {
4262    pub fn gd_add_sindir(
4263        dirfile: *mut DIRFILE,
4264        field_code: *const ::std::os::raw::c_char,
4265        in_field1: *const ::std::os::raw::c_char,
4266        in_field2: *const ::std::os::raw::c_char,
4267        fragment_index: ::std::os::raw::c_int,
4268    ) -> ::std::os::raw::c_int;
4269}
4270extern "C" {
4271    pub fn gd_add_string(
4272        dirfile: *mut DIRFILE,
4273        field_code: *const ::std::os::raw::c_char,
4274        value: *const ::std::os::raw::c_char,
4275        fragment_index: ::std::os::raw::c_int,
4276    ) -> ::std::os::raw::c_int;
4277}
4278extern "C" {
4279    pub fn gd_add_window(
4280        dirfile: *mut DIRFILE,
4281        field_code: *const ::std::os::raw::c_char,
4282        in_field: *const ::std::os::raw::c_char,
4283        check_field: *const ::std::os::raw::c_char,
4284        windop: gd_windop_t,
4285        threshold: gd_triplet_t,
4286        fragment_index: ::std::os::raw::c_int,
4287    ) -> ::std::os::raw::c_int;
4288}
4289extern "C" {
4290    pub fn gd_alias_target(
4291        dirfile: *mut DIRFILE,
4292        field_code: *const ::std::os::raw::c_char,
4293    ) -> *const ::std::os::raw::c_char;
4294}
4295extern "C" {
4296    pub fn gd_aliases(
4297        dirfile: *mut DIRFILE,
4298        field_code: *const ::std::os::raw::c_char,
4299    ) -> *mut *const ::std::os::raw::c_char;
4300}
4301extern "C" {
4302    pub fn gd_alter_affixes(
4303        dirfile: *mut DIRFILE,
4304        index: ::std::os::raw::c_int,
4305        prefix: *const ::std::os::raw::c_char,
4306        suffix: *const ::std::os::raw::c_char,
4307    ) -> ::std::os::raw::c_int;
4308}
4309extern "C" {
4310    pub fn gd_alter_bit(
4311        dirfile: *mut DIRFILE,
4312        field_code: *const ::std::os::raw::c_char,
4313        in_field: *const ::std::os::raw::c_char,
4314        bitnum: ::std::os::raw::c_int,
4315        numbits: ::std::os::raw::c_int,
4316    ) -> ::std::os::raw::c_int;
4317}
4318extern "C" {
4319    pub fn gd_alter_carray(
4320        dirfile: *mut DIRFILE,
4321        field_code: *const ::std::os::raw::c_char,
4322        const_type: gd_type_t,
4323        array_len: usize,
4324    ) -> ::std::os::raw::c_int;
4325}
4326extern "C" {
4327    pub fn gd_alter_clincom(
4328        dirfile: *mut DIRFILE,
4329        field_code: *const ::std::os::raw::c_char,
4330        n_fields: ::std::os::raw::c_int,
4331        in_fields: *mut *const ::std::os::raw::c_char,
4332        m: *const __BindgenComplex<f64>,
4333        b: *const __BindgenComplex<f64>,
4334    ) -> ::std::os::raw::c_int;
4335}
4336extern "C" {
4337    pub fn gd_alter_const(
4338        dirfile: *mut DIRFILE,
4339        field_code: *const ::std::os::raw::c_char,
4340        const_type: gd_type_t,
4341    ) -> ::std::os::raw::c_int;
4342}
4343extern "C" {
4344    pub fn gd_alter_cpolynom(
4345        dirfile: *mut DIRFILE,
4346        field_code: *const ::std::os::raw::c_char,
4347        poly_ord: ::std::os::raw::c_int,
4348        in_field: *const ::std::os::raw::c_char,
4349        a: *const __BindgenComplex<f64>,
4350    ) -> ::std::os::raw::c_int;
4351}
4352extern "C" {
4353    pub fn gd_alter_crecip(
4354        dirfile: *mut DIRFILE,
4355        field_code: *const ::std::os::raw::c_char,
4356        in_field: *const ::std::os::raw::c_char,
4357        cdividend: __BindgenComplex<f64>,
4358    ) -> ::std::os::raw::c_int;
4359}
4360extern "C" {
4361    pub fn gd_alter_crecip89(
4362        dirfile: *mut DIRFILE,
4363        field_code: *const ::std::os::raw::c_char,
4364        in_field: *const ::std::os::raw::c_char,
4365        cdividend: *const f64,
4366    ) -> ::std::os::raw::c_int;
4367}
4368extern "C" {
4369    pub fn gd_alter_divide(
4370        dirfile: *mut DIRFILE,
4371        field_code: *const ::std::os::raw::c_char,
4372        in_field1: *const ::std::os::raw::c_char,
4373        in_field2: *const ::std::os::raw::c_char,
4374    ) -> ::std::os::raw::c_int;
4375}
4376extern "C" {
4377    pub fn gd_alter_indir(
4378        dirfile: *mut DIRFILE,
4379        field_code: *const ::std::os::raw::c_char,
4380        in_field1: *const ::std::os::raw::c_char,
4381        in_field2: *const ::std::os::raw::c_char,
4382    ) -> ::std::os::raw::c_int;
4383}
4384extern "C" {
4385    pub fn gd_alter_lincom(
4386        dirfile: *mut DIRFILE,
4387        field_code: *const ::std::os::raw::c_char,
4388        n_fields: ::std::os::raw::c_int,
4389        in_fields: *mut *const ::std::os::raw::c_char,
4390        m: *const f64,
4391        b: *const f64,
4392    ) -> ::std::os::raw::c_int;
4393}
4394extern "C" {
4395    pub fn gd_alter_mplex(
4396        dirfile: *mut DIRFILE,
4397        field_code: *const ::std::os::raw::c_char,
4398        in_field: *const ::std::os::raw::c_char,
4399        count_field: *const ::std::os::raw::c_char,
4400        count_val: ::std::os::raw::c_int,
4401        period: ::std::os::raw::c_int,
4402    ) -> ::std::os::raw::c_int;
4403}
4404extern "C" {
4405    pub fn gd_alter_multiply(
4406        dirfile: *mut DIRFILE,
4407        field_code: *const ::std::os::raw::c_char,
4408        in_field1: *const ::std::os::raw::c_char,
4409        in_field2: *const ::std::os::raw::c_char,
4410    ) -> ::std::os::raw::c_int;
4411}
4412extern "C" {
4413    pub fn gd_alter_phase(
4414        dirfile: *mut DIRFILE,
4415        field_code: *const ::std::os::raw::c_char,
4416        in_field: *const ::std::os::raw::c_char,
4417        shift: i64,
4418    ) -> ::std::os::raw::c_int;
4419}
4420extern "C" {
4421    pub fn gd_alter_polynom(
4422        dirfile: *mut DIRFILE,
4423        field_code: *const ::std::os::raw::c_char,
4424        poly_ord: ::std::os::raw::c_int,
4425        in_field: *const ::std::os::raw::c_char,
4426        a: *const f64,
4427    ) -> ::std::os::raw::c_int;
4428}
4429extern "C" {
4430    pub fn gd_alter_recip(
4431        dirfile: *mut DIRFILE,
4432        field_code: *const ::std::os::raw::c_char,
4433        in_field: *const ::std::os::raw::c_char,
4434        cdividend: f64,
4435    ) -> ::std::os::raw::c_int;
4436}
4437extern "C" {
4438    pub fn gd_alter_sarray(
4439        dirfile: *mut DIRFILE,
4440        field_code: *const ::std::os::raw::c_char,
4441        array_len: usize,
4442    ) -> ::std::os::raw::c_int;
4443}
4444extern "C" {
4445    pub fn gd_alter_sbit(
4446        dirfile: *mut DIRFILE,
4447        field_code: *const ::std::os::raw::c_char,
4448        in_field: *const ::std::os::raw::c_char,
4449        bitnum: ::std::os::raw::c_int,
4450        numbits: ::std::os::raw::c_int,
4451    ) -> ::std::os::raw::c_int;
4452}
4453extern "C" {
4454    pub fn gd_alter_sindir(
4455        dirfile: *mut DIRFILE,
4456        field_code: *const ::std::os::raw::c_char,
4457        in_field1: *const ::std::os::raw::c_char,
4458        in_field2: *const ::std::os::raw::c_char,
4459    ) -> ::std::os::raw::c_int;
4460}
4461extern "C" {
4462    pub fn gd_alter_window(
4463        dirfile: *mut DIRFILE,
4464        field_code: *const ::std::os::raw::c_char,
4465        in_field: *const ::std::os::raw::c_char,
4466        check_field: *const ::std::os::raw::c_char,
4467        windop: gd_windop_t,
4468        threshold: gd_triplet_t,
4469    ) -> ::std::os::raw::c_int;
4470}
4471extern "C" {
4472    pub fn gd_array_len(dirfile: *mut DIRFILE, field_code: *const ::std::os::raw::c_char) -> usize;
4473}
4474extern "C" {
4475    pub fn gd_carray_len(dirfile: *mut DIRFILE, field_code: *const ::std::os::raw::c_char)
4476        -> usize;
4477}
4478extern "C" {
4479    pub fn gd_get_carray(
4480        dirfile: *mut DIRFILE,
4481        field_code: *const ::std::os::raw::c_char,
4482        return_type: gd_type_t,
4483        data_out: *mut ::std::os::raw::c_void,
4484    ) -> ::std::os::raw::c_int;
4485}
4486extern "C" {
4487    pub fn gd_get_carray_slice(
4488        dirfile: *mut DIRFILE,
4489        field_code: *const ::std::os::raw::c_char,
4490        start: ::std::os::raw::c_ulong,
4491        n: usize,
4492        return_type: gd_type_t,
4493        data_out: *mut ::std::os::raw::c_void,
4494    ) -> ::std::os::raw::c_int;
4495}
4496extern "C" {
4497    pub fn gd_put_carray(
4498        dirfile: *mut DIRFILE,
4499        field_code: *const ::std::os::raw::c_char,
4500        data_type: gd_type_t,
4501        data_in: *const ::std::os::raw::c_void,
4502    ) -> ::std::os::raw::c_int;
4503}
4504extern "C" {
4505    pub fn gd_put_carray_slice(
4506        dirfile: *mut DIRFILE,
4507        field_code: *const ::std::os::raw::c_char,
4508        first: ::std::os::raw::c_ulong,
4509        n: usize,
4510        data_type: gd_type_t,
4511        data_in: *const ::std::os::raw::c_void,
4512    ) -> ::std::os::raw::c_int;
4513}
4514extern "C" {
4515    pub fn gd_get_constant(
4516        dirfile: *mut DIRFILE,
4517        field_code: *const ::std::os::raw::c_char,
4518        return_type: gd_type_t,
4519        data: *mut ::std::os::raw::c_void,
4520    ) -> ::std::os::raw::c_int;
4521}
4522extern "C" {
4523    pub fn gd_put_constant(
4524        dirfile: *mut DIRFILE,
4525        field_code: *const ::std::os::raw::c_char,
4526        data_type: gd_type_t,
4527        data: *const ::std::os::raw::c_void,
4528    ) -> ::std::os::raw::c_int;
4529}
4530extern "C" {
4531    pub fn gd_constants(
4532        dirfile: *mut DIRFILE,
4533        return_type: gd_type_t,
4534    ) -> *const ::std::os::raw::c_void;
4535}
4536extern "C" {
4537    pub fn gd_carrays(dirfile: *mut DIRFILE, return_type: gd_type_t) -> *const gd_carray_t;
4538}
4539extern "C" {
4540    pub fn gd_encoding(
4541        dirfile: *mut DIRFILE,
4542        fragment: ::std::os::raw::c_int,
4543    ) -> ::std::os::raw::c_ulong;
4544}
4545extern "C" {
4546    pub fn gd_encoding_support(encoding: ::std::os::raw::c_ulong) -> ::std::os::raw::c_int;
4547}
4548extern "C" {
4549    pub fn gd_endianness(
4550        dirfile: *mut DIRFILE,
4551        fragment: ::std::os::raw::c_int,
4552    ) -> ::std::os::raw::c_ulong;
4553}
4554extern "C" {
4555    pub fn gd_entry(
4556        dirfile: *mut DIRFILE,
4557        field_code: *const ::std::os::raw::c_char,
4558        entry: *mut gd_entry_t,
4559    ) -> ::std::os::raw::c_int;
4560}
4561extern "C" {
4562    pub fn gd_entry_list(
4563        dirfile: *mut DIRFILE,
4564        parent: *const ::std::os::raw::c_char,
4565        type_: ::std::os::raw::c_int,
4566        flags: ::std::os::raw::c_uint,
4567    ) -> *mut *const ::std::os::raw::c_char;
4568}
4569extern "C" {
4570    pub fn gd_entry_type(
4571        dirfile: *mut DIRFILE,
4572        field_code: *const ::std::os::raw::c_char,
4573    ) -> gd_entype_t;
4574}
4575extern "C" {
4576    pub fn gd_error(dirfile: *const DIRFILE) -> ::std::os::raw::c_int;
4577}
4578extern "C" {
4579    pub fn gd_error_count(dirfile: *mut DIRFILE) -> ::std::os::raw::c_int;
4580}
4581extern "C" {
4582    pub fn gd_error_string(
4583        dirfile: *const DIRFILE,
4584        buffer: *mut ::std::os::raw::c_char,
4585        buflen: usize,
4586    ) -> *mut ::std::os::raw::c_char;
4587}
4588extern "C" {
4589    pub fn gd_field_list(dirfile: *mut DIRFILE) -> *mut *const ::std::os::raw::c_char;
4590}
4591extern "C" {
4592    pub fn gd_field_list_by_type(
4593        dirfile: *mut DIRFILE,
4594        type_: gd_entype_t,
4595    ) -> *mut *const ::std::os::raw::c_char;
4596}
4597extern "C" {
4598    pub fn gd_flags(
4599        D: *mut DIRFILE,
4600        set: ::std::os::raw::c_ulong,
4601        resest: ::std::os::raw::c_ulong,
4602    ) -> ::std::os::raw::c_ulong;
4603}
4604extern "C" {
4605    pub fn gd_fragment_affixes(
4606        dirfile: *mut DIRFILE,
4607        index: ::std::os::raw::c_int,
4608        prefix: *mut *mut ::std::os::raw::c_char,
4609        suffix: *mut *mut ::std::os::raw::c_char,
4610    ) -> ::std::os::raw::c_int;
4611}
4612extern "C" {
4613    pub fn gd_fragment_index(
4614        dirfile: *mut DIRFILE,
4615        field_code: *const ::std::os::raw::c_char,
4616    ) -> ::std::os::raw::c_int;
4617}
4618extern "C" {
4619    pub fn gd_fragmentname(
4620        dirfile: *mut DIRFILE,
4621        index: ::std::os::raw::c_int,
4622    ) -> *const ::std::os::raw::c_char;
4623}
4624extern "C" {
4625    pub fn gd_fragment_namespace(
4626        D: *mut DIRFILE,
4627        index: ::std::os::raw::c_int,
4628        ns: *const ::std::os::raw::c_char,
4629    ) -> *const ::std::os::raw::c_char;
4630}
4631extern "C" {
4632    pub fn gd_free_entry_strings(entry: *mut gd_entry_t) -> *mut gd_entry_t;
4633}
4634extern "C" {
4635    pub fn gd_hidden(
4636        dirfile: *mut DIRFILE,
4637        field_code: *const ::std::os::raw::c_char,
4638    ) -> ::std::os::raw::c_int;
4639}
4640extern "C" {
4641    pub fn gd_hide(
4642        dirfile: *mut DIRFILE,
4643        field_code: *const ::std::os::raw::c_char,
4644    ) -> ::std::os::raw::c_int;
4645}
4646extern "C" {
4647    pub fn gd_invalid_dirfile() -> *mut DIRFILE;
4648}
4649extern "C" {
4650    pub fn gd_linterp_tablename(
4651        D: *mut DIRFILE,
4652        field_code: *const ::std::os::raw::c_char,
4653    ) -> *mut ::std::os::raw::c_char;
4654}
4655extern "C" {
4656    pub fn gd_madd(
4657        dirfile: *mut DIRFILE,
4658        entry: *const gd_entry_t,
4659        parent: *const ::std::os::raw::c_char,
4660    ) -> ::std::os::raw::c_int;
4661}
4662extern "C" {
4663    pub fn gd_madd_alias(
4664        dirfile: *mut DIRFILE,
4665        parent: *const ::std::os::raw::c_char,
4666        alias_name: *const ::std::os::raw::c_char,
4667        target_code: *const ::std::os::raw::c_char,
4668    ) -> ::std::os::raw::c_int;
4669}
4670extern "C" {
4671    pub fn gd_madd_bit(
4672        dirfile: *mut DIRFILE,
4673        parent: *const ::std::os::raw::c_char,
4674        field_code: *const ::std::os::raw::c_char,
4675        in_field: *const ::std::os::raw::c_char,
4676        bitnum: ::std::os::raw::c_int,
4677        numbits: ::std::os::raw::c_int,
4678    ) -> ::std::os::raw::c_int;
4679}
4680extern "C" {
4681    pub fn gd_madd_carray(
4682        dirfile: *mut DIRFILE,
4683        parent: *const ::std::os::raw::c_char,
4684        field_code: *const ::std::os::raw::c_char,
4685        const_type: gd_type_t,
4686        array_len: usize,
4687        data_type: gd_type_t,
4688        values: *const ::std::os::raw::c_void,
4689    ) -> ::std::os::raw::c_int;
4690}
4691extern "C" {
4692    pub fn gd_madd_clincom(
4693        dirfile: *mut DIRFILE,
4694        parent: *const ::std::os::raw::c_char,
4695        field_code: *const ::std::os::raw::c_char,
4696        n_fields: ::std::os::raw::c_int,
4697        in_fields: *mut *const ::std::os::raw::c_char,
4698        cm: *const __BindgenComplex<f64>,
4699        cb: *const __BindgenComplex<f64>,
4700    ) -> ::std::os::raw::c_int;
4701}
4702extern "C" {
4703    pub fn gd_madd_const(
4704        dirfile: *mut DIRFILE,
4705        parent: *const ::std::os::raw::c_char,
4706        field_code: *const ::std::os::raw::c_char,
4707        const_type: gd_type_t,
4708        data_type: gd_type_t,
4709        value: *const ::std::os::raw::c_void,
4710    ) -> ::std::os::raw::c_int;
4711}
4712extern "C" {
4713    pub fn gd_madd_cpolynom(
4714        dirfile: *mut DIRFILE,
4715        parent: *const ::std::os::raw::c_char,
4716        field_code: *const ::std::os::raw::c_char,
4717        poly_ord: ::std::os::raw::c_int,
4718        in_field: *const ::std::os::raw::c_char,
4719        ca: *const __BindgenComplex<f64>,
4720    ) -> ::std::os::raw::c_int;
4721}
4722extern "C" {
4723    pub fn gd_madd_crecip(
4724        dirfile: *mut DIRFILE,
4725        parent: *const ::std::os::raw::c_char,
4726        field_code: *const ::std::os::raw::c_char,
4727        in_field: *const ::std::os::raw::c_char,
4728        cdividend: __BindgenComplex<f64>,
4729    ) -> ::std::os::raw::c_int;
4730}
4731extern "C" {
4732    pub fn gd_madd_crecip89(
4733        dirfile: *mut DIRFILE,
4734        parent: *const ::std::os::raw::c_char,
4735        field_code: *const ::std::os::raw::c_char,
4736        in_field: *const ::std::os::raw::c_char,
4737        cdividend: *const f64,
4738    ) -> ::std::os::raw::c_int;
4739}
4740extern "C" {
4741    pub fn gd_madd_divide(
4742        dirfile: *mut DIRFILE,
4743        parent: *const ::std::os::raw::c_char,
4744        field_code: *const ::std::os::raw::c_char,
4745        in_field1: *const ::std::os::raw::c_char,
4746        in_field2: *const ::std::os::raw::c_char,
4747    ) -> ::std::os::raw::c_int;
4748}
4749extern "C" {
4750    pub fn gd_madd_indir(
4751        dirfile: *mut DIRFILE,
4752        parent: *const ::std::os::raw::c_char,
4753        field_code: *const ::std::os::raw::c_char,
4754        in_field1: *const ::std::os::raw::c_char,
4755        in_field2: *const ::std::os::raw::c_char,
4756    ) -> ::std::os::raw::c_int;
4757}
4758extern "C" {
4759    pub fn gd_madd_lincom(
4760        dirfile: *mut DIRFILE,
4761        parent: *const ::std::os::raw::c_char,
4762        field_code: *const ::std::os::raw::c_char,
4763        n_fields: ::std::os::raw::c_int,
4764        in_fields: *mut *const ::std::os::raw::c_char,
4765        m: *const f64,
4766        b: *const f64,
4767    ) -> ::std::os::raw::c_int;
4768}
4769extern "C" {
4770    pub fn gd_madd_linterp(
4771        dirfile: *mut DIRFILE,
4772        parent: *const ::std::os::raw::c_char,
4773        field_code: *const ::std::os::raw::c_char,
4774        in_field: *const ::std::os::raw::c_char,
4775        table: *const ::std::os::raw::c_char,
4776    ) -> ::std::os::raw::c_int;
4777}
4778extern "C" {
4779    pub fn gd_madd_mplex(
4780        dirfile: *mut DIRFILE,
4781        parent: *const ::std::os::raw::c_char,
4782        field_code: *const ::std::os::raw::c_char,
4783        in_field: *const ::std::os::raw::c_char,
4784        count_field: *const ::std::os::raw::c_char,
4785        count_val: ::std::os::raw::c_int,
4786        period: ::std::os::raw::c_int,
4787    ) -> ::std::os::raw::c_int;
4788}
4789extern "C" {
4790    pub fn gd_madd_multiply(
4791        dirfile: *mut DIRFILE,
4792        parent: *const ::std::os::raw::c_char,
4793        field_code: *const ::std::os::raw::c_char,
4794        in_field1: *const ::std::os::raw::c_char,
4795        in_field2: *const ::std::os::raw::c_char,
4796    ) -> ::std::os::raw::c_int;
4797}
4798extern "C" {
4799    pub fn gd_madd_phase(
4800        dirfile: *mut DIRFILE,
4801        parent: *const ::std::os::raw::c_char,
4802        field_code: *const ::std::os::raw::c_char,
4803        in_field: *const ::std::os::raw::c_char,
4804        shift: i64,
4805    ) -> ::std::os::raw::c_int;
4806}
4807extern "C" {
4808    pub fn gd_madd_polynom(
4809        dirfile: *mut DIRFILE,
4810        parent: *const ::std::os::raw::c_char,
4811        field_code: *const ::std::os::raw::c_char,
4812        poly_ord: ::std::os::raw::c_int,
4813        in_field: *const ::std::os::raw::c_char,
4814        a: *const f64,
4815    ) -> ::std::os::raw::c_int;
4816}
4817extern "C" {
4818    pub fn gd_madd_recip(
4819        dirfile: *mut DIRFILE,
4820        parent: *const ::std::os::raw::c_char,
4821        field_code: *const ::std::os::raw::c_char,
4822        in_field: *const ::std::os::raw::c_char,
4823        dividend: f64,
4824    ) -> ::std::os::raw::c_int;
4825}
4826extern "C" {
4827    pub fn gd_madd_sarray(
4828        dirfile: *mut DIRFILE,
4829        parent: *const ::std::os::raw::c_char,
4830        field_code: *const ::std::os::raw::c_char,
4831        array_len: usize,
4832        values: *mut *const ::std::os::raw::c_char,
4833    ) -> ::std::os::raw::c_int;
4834}
4835extern "C" {
4836    pub fn gd_madd_sbit(
4837        dirfile: *mut DIRFILE,
4838        parent: *const ::std::os::raw::c_char,
4839        field_code: *const ::std::os::raw::c_char,
4840        in_field: *const ::std::os::raw::c_char,
4841        bitnum: ::std::os::raw::c_int,
4842        numbits: ::std::os::raw::c_int,
4843    ) -> ::std::os::raw::c_int;
4844}
4845extern "C" {
4846    pub fn gd_madd_sindir(
4847        dirfile: *mut DIRFILE,
4848        parent: *const ::std::os::raw::c_char,
4849        field_code: *const ::std::os::raw::c_char,
4850        in_field1: *const ::std::os::raw::c_char,
4851        in_field2: *const ::std::os::raw::c_char,
4852    ) -> ::std::os::raw::c_int;
4853}
4854extern "C" {
4855    pub fn gd_madd_spec(
4856        dirfile: *mut DIRFILE,
4857        line: *const ::std::os::raw::c_char,
4858        parent: *const ::std::os::raw::c_char,
4859    ) -> ::std::os::raw::c_int;
4860}
4861extern "C" {
4862    pub fn gd_madd_string(
4863        dirfile: *mut DIRFILE,
4864        parent: *const ::std::os::raw::c_char,
4865        field_code: *const ::std::os::raw::c_char,
4866        value: *const ::std::os::raw::c_char,
4867    ) -> ::std::os::raw::c_int;
4868}
4869extern "C" {
4870    pub fn gd_madd_window(
4871        dirfile: *mut DIRFILE,
4872        parent: *const ::std::os::raw::c_char,
4873        field_code: *const ::std::os::raw::c_char,
4874        in_field: *const ::std::os::raw::c_char,
4875        check_field: *const ::std::os::raw::c_char,
4876        windop: gd_windop_t,
4877        threshold: gd_triplet_t,
4878    ) -> ::std::os::raw::c_int;
4879}
4880extern "C" {
4881    pub fn gd_match_entries(
4882        D: *mut DIRFILE,
4883        regex: *const ::std::os::raw::c_char,
4884        fragment: ::std::os::raw::c_int,
4885        type_: ::std::os::raw::c_int,
4886        flags: ::std::os::raw::c_uint,
4887        list: *mut *mut *const ::std::os::raw::c_char,
4888    ) -> ::std::os::raw::c_uint;
4889}
4890extern "C" {
4891    pub fn gd_dirfile_standards(
4892        dirfile: *mut DIRFILE,
4893        vers: ::std::os::raw::c_int,
4894    ) -> ::std::os::raw::c_int;
4895}
4896extern "C" {
4897    pub fn gd_mconstants(
4898        dirfile: *mut DIRFILE,
4899        parent: *const ::std::os::raw::c_char,
4900        return_type: gd_type_t,
4901    ) -> *const ::std::os::raw::c_void;
4902}
4903extern "C" {
4904    pub fn gd_mcarrays(
4905        dirfile: *mut DIRFILE,
4906        parent: *const ::std::os::raw::c_char,
4907        return_type: gd_type_t,
4908    ) -> *const gd_carray_t;
4909}
4910extern "C" {
4911    pub fn gd_mfield_list(
4912        dirfile: *mut DIRFILE,
4913        parent: *const ::std::os::raw::c_char,
4914    ) -> *mut *const ::std::os::raw::c_char;
4915}
4916extern "C" {
4917    pub fn gd_mfield_list_by_type(
4918        dirfile: *mut DIRFILE,
4919        parent: *const ::std::os::raw::c_char,
4920        type_: gd_entype_t,
4921    ) -> *mut *const ::std::os::raw::c_char;
4922}
4923extern "C" {
4924    pub fn gd_mplex_lookback(dirfile: *mut DIRFILE, lookback: ::std::os::raw::c_int);
4925}
4926extern "C" {
4927    pub fn gd_msarrays(
4928        dirfile: *mut DIRFILE,
4929        parent: *const ::std::os::raw::c_char,
4930    ) -> *mut *mut *const ::std::os::raw::c_char;
4931}
4932extern "C" {
4933    pub fn gd_mstrings(
4934        dirfile: *mut DIRFILE,
4935        parent: *const ::std::os::raw::c_char,
4936    ) -> *mut *const ::std::os::raw::c_char;
4937}
4938extern "C" {
4939    pub fn gd_mvector_list(
4940        dirfile: *mut DIRFILE,
4941        parent: *const ::std::os::raw::c_char,
4942    ) -> *mut *const ::std::os::raw::c_char;
4943}
4944extern "C" {
4945    pub fn gd_dirfilename(dirfile: *mut DIRFILE) -> *const ::std::os::raw::c_char;
4946}
4947extern "C" {
4948    pub fn gd_naliases(
4949        dirfile: *mut DIRFILE,
4950        field_code: *const ::std::os::raw::c_char,
4951    ) -> ::std::os::raw::c_uint;
4952}
4953extern "C" {
4954    pub fn gd_native_type(
4955        dirfile: *mut DIRFILE,
4956        field_code: *const ::std::os::raw::c_char,
4957    ) -> gd_type_t;
4958}
4959extern "C" {
4960    pub fn gd_nentries(
4961        D: *mut DIRFILE,
4962        parent: *const ::std::os::raw::c_char,
4963        type_: ::std::os::raw::c_int,
4964        flags: ::std::os::raw::c_uint,
4965    ) -> ::std::os::raw::c_uint;
4966}
4967extern "C" {
4968    pub fn gd_nfields(dirfile: *mut DIRFILE) -> ::std::os::raw::c_uint;
4969}
4970extern "C" {
4971    pub fn gd_nfields_by_type(dirfile: *mut DIRFILE, type_: gd_entype_t) -> ::std::os::raw::c_uint;
4972}
4973extern "C" {
4974    pub fn gd_nfragments(dirfile: *mut DIRFILE) -> ::std::os::raw::c_int;
4975}
4976extern "C" {
4977    pub fn gd_nmfields(
4978        dirfile: *mut DIRFILE,
4979        parent: *const ::std::os::raw::c_char,
4980    ) -> ::std::os::raw::c_uint;
4981}
4982extern "C" {
4983    pub fn gd_nmfields_by_type(
4984        dirfile: *mut DIRFILE,
4985        parent: *const ::std::os::raw::c_char,
4986        type_: gd_entype_t,
4987    ) -> ::std::os::raw::c_uint;
4988}
4989extern "C" {
4990    pub fn gd_nmvectors(
4991        dirfile: *mut DIRFILE,
4992        parent: *const ::std::os::raw::c_char,
4993    ) -> ::std::os::raw::c_uint;
4994}
4995extern "C" {
4996    pub fn gd_nvectors(dirfile: *mut DIRFILE) -> ::std::os::raw::c_uint;
4997}
4998extern "C" {
4999    pub fn gd_parent_fragment(
5000        dirfile: *mut DIRFILE,
5001        fragment_index: ::std::os::raw::c_int,
5002    ) -> ::std::os::raw::c_int;
5003}
5004extern "C" {
5005    pub fn gd_parser_callback(
5006        dirfile: *mut DIRFILE,
5007        sehandler: gd_parser_callback_t,
5008        arg1: *mut ::std::os::raw::c_void,
5009    );
5010}
5011extern "C" {
5012    pub fn gd_alter_protection(
5013        dirfile: *mut DIRFILE,
5014        protection_level: ::std::os::raw::c_int,
5015        fragment_index: ::std::os::raw::c_int,
5016    ) -> ::std::os::raw::c_int;
5017}
5018extern "C" {
5019    pub fn gd_protection(
5020        dirfile: *mut DIRFILE,
5021        fragment_index: ::std::os::raw::c_int,
5022    ) -> ::std::os::raw::c_int;
5023}
5024extern "C" {
5025    pub fn gd_raw_filename(
5026        dirfile: *mut DIRFILE,
5027        field_code: *const ::std::os::raw::c_char,
5028    ) -> *mut ::std::os::raw::c_char;
5029}
5030extern "C" {
5031    pub fn gd_reference(
5032        dirfile: *mut DIRFILE,
5033        field_code: *const ::std::os::raw::c_char,
5034    ) -> *const ::std::os::raw::c_char;
5035}
5036extern "C" {
5037    pub fn gd_get_sarray(
5038        dirfile: *mut DIRFILE,
5039        field_code: *const ::std::os::raw::c_char,
5040        data_out: *mut *const ::std::os::raw::c_char,
5041    ) -> ::std::os::raw::c_int;
5042}
5043extern "C" {
5044    pub fn gd_get_sarray_slice(
5045        dirfile: *mut DIRFILE,
5046        field_code: *const ::std::os::raw::c_char,
5047        start: ::std::os::raw::c_ulong,
5048        n: usize,
5049        data_out: *mut *const ::std::os::raw::c_char,
5050    ) -> ::std::os::raw::c_int;
5051}
5052extern "C" {
5053    pub fn gd_put_sarray(
5054        dirfile: *mut DIRFILE,
5055        field_code: *const ::std::os::raw::c_char,
5056        data_in: *mut *const ::std::os::raw::c_char,
5057    ) -> ::std::os::raw::c_int;
5058}
5059extern "C" {
5060    pub fn gd_put_sarray_slice(
5061        dirfile: *mut DIRFILE,
5062        field_code: *const ::std::os::raw::c_char,
5063        first: ::std::os::raw::c_ulong,
5064        n: usize,
5065        data_in: *mut *const ::std::os::raw::c_char,
5066    ) -> ::std::os::raw::c_int;
5067}
5068extern "C" {
5069    pub fn gd_spf(
5070        dirfile: *mut DIRFILE,
5071        field_code: *const ::std::os::raw::c_char,
5072    ) -> ::std::os::raw::c_uint;
5073}
5074extern "C" {
5075    pub fn gd_get_string(
5076        dirfile: *mut DIRFILE,
5077        field_code: *const ::std::os::raw::c_char,
5078        len: usize,
5079        data: *mut ::std::os::raw::c_char,
5080    ) -> usize;
5081}
5082extern "C" {
5083    pub fn gd_put_string(
5084        dirfile: *mut DIRFILE,
5085        field_code: *const ::std::os::raw::c_char,
5086        data: *const ::std::os::raw::c_char,
5087    ) -> ::std::os::raw::c_int;
5088}
5089extern "C" {
5090    pub fn gd_sarrays(dirfile: *mut DIRFILE) -> *mut *mut *const ::std::os::raw::c_char;
5091}
5092extern "C" {
5093    pub fn gd_strings(dirfile: *mut DIRFILE) -> *mut *const ::std::os::raw::c_char;
5094}
5095extern "C" {
5096    pub fn gd_strtok(
5097        D: *mut DIRFILE,
5098        string: *const ::std::os::raw::c_char,
5099    ) -> *mut ::std::os::raw::c_char;
5100}
5101extern "C" {
5102    pub fn gd_unhide(
5103        dirfile: *mut DIRFILE,
5104        field_code: *const ::std::os::raw::c_char,
5105    ) -> ::std::os::raw::c_int;
5106}
5107extern "C" {
5108    pub fn gd_validate(
5109        dirfile: *mut DIRFILE,
5110        field_code: *const ::std::os::raw::c_char,
5111    ) -> ::std::os::raw::c_int;
5112}
5113extern "C" {
5114    pub fn gd_verbose_prefix(
5115        D: *mut DIRFILE,
5116        prefix: *const ::std::os::raw::c_char,
5117    ) -> ::std::os::raw::c_int;
5118}
5119extern "C" {
5120    pub fn gd_vector_list(dirfile: *mut DIRFILE) -> *mut *const ::std::os::raw::c_char;
5121}
5122extern "C" {
5123    pub fn gd_add(dirfile: *mut DIRFILE, entry: *const gd_entry_t) -> ::std::os::raw::c_int;
5124}
5125extern "C" {
5126    pub fn gd_add_raw(
5127        dirfile: *mut DIRFILE,
5128        field_code: *const ::std::os::raw::c_char,
5129        data_type: gd_type_t,
5130        spf: ::std::os::raw::c_uint,
5131        fragment_index: ::std::os::raw::c_int,
5132    ) -> ::std::os::raw::c_int;
5133}
5134extern "C" {
5135    pub fn gd_add_spec(
5136        dirfile: *mut DIRFILE,
5137        line: *const ::std::os::raw::c_char,
5138        fragment_index: ::std::os::raw::c_int,
5139    ) -> ::std::os::raw::c_int;
5140}
5141extern "C" {
5142    pub fn gd_alter_encoding(
5143        dirfile: *mut DIRFILE,
5144        encoding: ::std::os::raw::c_ulong,
5145        fragment: ::std::os::raw::c_int,
5146        recode: ::std::os::raw::c_int,
5147    ) -> ::std::os::raw::c_int;
5148}
5149extern "C" {
5150    pub fn gd_alter_endianness(
5151        dirfile: *mut DIRFILE,
5152        byte_sex: ::std::os::raw::c_ulong,
5153        fragment: ::std::os::raw::c_int,
5154        recode: ::std::os::raw::c_int,
5155    ) -> ::std::os::raw::c_int;
5156}
5157extern "C" {
5158    pub fn gd_alter_entry(
5159        dirfile: *mut DIRFILE,
5160        field_code: *const ::std::os::raw::c_char,
5161        entry: *const gd_entry_t,
5162        recode: ::std::os::raw::c_int,
5163    ) -> ::std::os::raw::c_int;
5164}
5165extern "C" {
5166    pub fn gd_alter_linterp(
5167        dirfile: *mut DIRFILE,
5168        field_code: *const ::std::os::raw::c_char,
5169        in_field: *const ::std::os::raw::c_char,
5170        table: *const ::std::os::raw::c_char,
5171        recode: ::std::os::raw::c_int,
5172    ) -> ::std::os::raw::c_int;
5173}
5174extern "C" {
5175    pub fn gd_alter_raw(
5176        dirfile: *mut DIRFILE,
5177        field_code: *const ::std::os::raw::c_char,
5178        data_type: gd_type_t,
5179        spf: ::std::os::raw::c_uint,
5180        recode: ::std::os::raw::c_int,
5181    ) -> ::std::os::raw::c_int;
5182}
5183extern "C" {
5184    pub fn gd_alter_spec(
5185        dirfile: *mut DIRFILE,
5186        line: *const ::std::os::raw::c_char,
5187        recode: ::std::os::raw::c_int,
5188    ) -> ::std::os::raw::c_int;
5189}
5190extern "C" {
5191    pub fn gd_cbopen(
5192        dirfilename: *const ::std::os::raw::c_char,
5193        flags: ::std::os::raw::c_ulong,
5194        sehandler: gd_parser_callback_t,
5195        extra: *mut ::std::os::raw::c_void,
5196    ) -> *mut DIRFILE;
5197}
5198extern "C" {
5199    pub fn gd_close(dirfile: *mut DIRFILE) -> ::std::os::raw::c_int;
5200}
5201extern "C" {
5202    pub fn gd_delete(
5203        dirfile: *mut DIRFILE,
5204        field_code: *const ::std::os::raw::c_char,
5205        flags: ::std::os::raw::c_uint,
5206    ) -> ::std::os::raw::c_int;
5207}
5208extern "C" {
5209    pub fn gd_desync(dirfile: *mut DIRFILE, flags: ::std::os::raw::c_uint)
5210        -> ::std::os::raw::c_int;
5211}
5212extern "C" {
5213    pub fn gd_discard(dirfile: *mut DIRFILE) -> ::std::os::raw::c_int;
5214}
5215extern "C" {
5216    pub fn gd_flush(
5217        dirfile: *mut DIRFILE,
5218        field_code: *const ::std::os::raw::c_char,
5219    ) -> ::std::os::raw::c_int;
5220}
5221extern "C" {
5222    pub fn gd_include(
5223        dirfile: *mut DIRFILE,
5224        file: *const ::std::os::raw::c_char,
5225        fragment_index: ::std::os::raw::c_int,
5226        flags: ::std::os::raw::c_ulong,
5227    ) -> ::std::os::raw::c_int;
5228}
5229extern "C" {
5230    pub fn gd_include_affix(
5231        dirfile: *mut DIRFILE,
5232        file: *const ::std::os::raw::c_char,
5233        fragment_index: ::std::os::raw::c_int,
5234        prefix: *const ::std::os::raw::c_char,
5235        suffix: *const ::std::os::raw::c_char,
5236        flags: ::std::os::raw::c_ulong,
5237    ) -> ::std::os::raw::c_int;
5238}
5239extern "C" {
5240    pub fn gd_include_ns(
5241        D: *mut DIRFILE,
5242        file: *const ::std::os::raw::c_char,
5243        fragment_index: ::std::os::raw::c_int,
5244        ns: *const ::std::os::raw::c_char,
5245        flags: ::std::os::raw::c_ulong,
5246    ) -> ::std::os::raw::c_int;
5247}
5248extern "C" {
5249    pub fn gd_framenum(
5250        dirfile: *mut DIRFILE,
5251        field_code: *const ::std::os::raw::c_char,
5252        value: f64,
5253    ) -> f64;
5254}
5255extern "C" {
5256    pub fn gd_malter_spec(
5257        dirfile: *mut DIRFILE,
5258        line: *const ::std::os::raw::c_char,
5259        parent: *const ::std::os::raw::c_char,
5260        recode: ::std::os::raw::c_int,
5261    ) -> ::std::os::raw::c_int;
5262}
5263extern "C" {
5264    pub fn gd_metaflush(dirfile: *mut DIRFILE) -> ::std::os::raw::c_int;
5265}
5266extern "C" {
5267    pub fn gd_move(
5268        dirfile: *mut DIRFILE,
5269        field_code: *const ::std::os::raw::c_char,
5270        new_fragment: ::std::os::raw::c_int,
5271        flags: ::std::os::raw::c_uint,
5272    ) -> ::std::os::raw::c_int;
5273}
5274extern "C" {
5275    pub fn gd_open(
5276        dirfilename: *const ::std::os::raw::c_char,
5277        flags: ::std::os::raw::c_ulong,
5278    ) -> *mut DIRFILE;
5279}
5280extern "C" {
5281    pub fn gd_open_limit(
5282        dirfile: *mut DIRFILE,
5283        new_limit: ::std::os::raw::c_long,
5284    ) -> ::std::os::raw::c_long;
5285}
5286extern "C" {
5287    pub fn gd_raw_close(
5288        dirfile: *mut DIRFILE,
5289        field_code: *const ::std::os::raw::c_char,
5290    ) -> ::std::os::raw::c_int;
5291}
5292extern "C" {
5293    pub fn gd_rename(
5294        dirfile: *mut DIRFILE,
5295        old_code: *const ::std::os::raw::c_char,
5296        new_name: *const ::std::os::raw::c_char,
5297        flags: ::std::os::raw::c_uint,
5298    ) -> ::std::os::raw::c_int;
5299}
5300extern "C" {
5301    pub fn gd_rewrite_fragment(
5302        dirfile: *mut DIRFILE,
5303        fragment: ::std::os::raw::c_int,
5304    ) -> ::std::os::raw::c_int;
5305}
5306extern "C" {
5307    pub fn gd_sync(
5308        dirfile: *mut DIRFILE,
5309        field_code: *const ::std::os::raw::c_char,
5310    ) -> ::std::os::raw::c_int;
5311}
5312extern "C" {
5313    pub fn gd_uninclude(
5314        dirfile: *mut DIRFILE,
5315        fragment_index: ::std::os::raw::c_int,
5316        del: ::std::os::raw::c_int,
5317    ) -> ::std::os::raw::c_int;
5318}
5319extern "C" {
5320    pub fn gd_alter_frameoffset(
5321        dirfile: *mut DIRFILE,
5322        offset: off_t,
5323        fragment: ::std::os::raw::c_int,
5324        recode: ::std::os::raw::c_int,
5325    ) -> ::std::os::raw::c_int;
5326}
5327extern "C" {
5328    pub fn gd_getdata(
5329        dirfile: *mut DIRFILE,
5330        field_code: *const ::std::os::raw::c_char,
5331        first_frame: off_t,
5332        first_sample: off_t,
5333        num_frames: usize,
5334        num_samples: usize,
5335        return_type: gd_type_t,
5336        data: *mut ::std::os::raw::c_void,
5337    ) -> usize;
5338}
5339extern "C" {
5340    pub fn gd_putdata(
5341        dirfile: *mut DIRFILE,
5342        field_code: *const ::std::os::raw::c_char,
5343        first_frame: off_t,
5344        first_sample: off_t,
5345        num_frames: usize,
5346        num_samples: usize,
5347        data_type: gd_type_t,
5348        data: *const ::std::os::raw::c_void,
5349    ) -> usize;
5350}
5351extern "C" {
5352    pub fn gd_framenum_subset(
5353        dirfile: *mut DIRFILE,
5354        field_code: *const ::std::os::raw::c_char,
5355        value: f64,
5356        field_start: off_t,
5357        field_end: off_t,
5358    ) -> f64;
5359}
5360extern "C" {
5361    pub fn gd_frameoffset(dirfile: *mut DIRFILE, fragment: ::std::os::raw::c_int) -> off_t;
5362}
5363extern "C" {
5364    pub fn gd_nframes(dirfile: *mut DIRFILE) -> off_t;
5365}
5366extern "C" {
5367    pub fn gd_bof(dirfile: *mut DIRFILE, field_code: *const ::std::os::raw::c_char) -> off_t;
5368}
5369extern "C" {
5370    pub fn gd_eof(dirfile: *mut DIRFILE, field_code: *const ::std::os::raw::c_char) -> off_t;
5371}
5372extern "C" {
5373    pub fn gd_seek(
5374        dirfile: *mut DIRFILE,
5375        field_code: *const ::std::os::raw::c_char,
5376        frame_num: off_t,
5377        sample_num: off_t,
5378        whence: ::std::os::raw::c_int,
5379    ) -> off_t;
5380}
5381extern "C" {
5382    pub fn gd_tell(dirfile: *mut DIRFILE, field_code: *const ::std::os::raw::c_char) -> off_t;
5383}