ndless_sys/
lib.rs

1/* automatically generated by rust-bindgen */
2
3#![no_std]
4#![allow(non_upper_case_globals)]
5#![allow(non_camel_case_types)]
6#![allow(non_snake_case)]
7extern "C" {
8	pub fn abort() -> !;
9	pub fn exit(__status: cty::c_int) -> !;
10}
11
12pub type __u_char = cty::c_uchar;
13pub type __u_short = cty::c_ushort;
14pub type __u_int = cty::c_uint;
15pub type __u_long = cty::c_ulong;
16pub type __int8_t = cty::c_schar;
17pub type __uint8_t = cty::c_uchar;
18pub type __int16_t = cty::c_short;
19pub type __uint16_t = cty::c_ushort;
20pub type __int32_t = cty::c_int;
21pub type __uint32_t = cty::c_uint;
22pub type __int64_t = cty::c_long;
23pub type __uint64_t = cty::c_ulong;
24pub type __int_least8_t = __int8_t;
25pub type __uint_least8_t = __uint8_t;
26pub type __int_least16_t = __int16_t;
27pub type __uint_least16_t = __uint16_t;
28pub type __int_least32_t = __int32_t;
29pub type __uint_least32_t = __uint32_t;
30pub type __int_least64_t = __int64_t;
31pub type __uint_least64_t = __uint64_t;
32pub type __quad_t = cty::c_long;
33pub type __u_quad_t = cty::c_ulong;
34pub type __intmax_t = cty::c_long;
35pub type __uintmax_t = cty::c_ulong;
36pub type __dev_t = cty::c_ulong;
37pub type __uid_t = cty::c_uint;
38pub type __gid_t = cty::c_uint;
39pub type __ino_t = cty::c_ulong;
40pub type __ino64_t = cty::c_ulong;
41pub type __mode_t = cty::c_uint;
42pub type __nlink_t = cty::c_ulong;
43pub type __off_t = cty::c_long;
44pub type __off64_t = cty::c_long;
45pub type __pid_t = cty::c_int;
46#[repr(C)]
47#[derive(Debug, Copy, Clone)]
48pub struct __fsid_t {
49    pub __val: [cty::c_int; 2usize],
50}
51#[test]
52fn bindgen_test_layout___fsid_t() {
53    assert_eq!(
54        ::core::mem::size_of::<__fsid_t>(),
55        8usize,
56        concat!("Size of: ", stringify!(__fsid_t))
57    );
58    assert_eq!(
59        ::core::mem::align_of::<__fsid_t>(),
60        4usize,
61        concat!("Alignment of ", stringify!(__fsid_t))
62    );
63    assert_eq!(
64        unsafe { &(*(::core::ptr::null::<__fsid_t>())).__val as *const _ as usize },
65        0usize,
66        concat!(
67            "Offset of field: ",
68            stringify!(__fsid_t),
69            "::",
70            stringify!(__val)
71        )
72    );
73}
74pub type __clock_t = cty::c_long;
75pub type __rlim_t = cty::c_ulong;
76pub type __rlim64_t = cty::c_ulong;
77pub type __id_t = cty::c_uint;
78pub type __time_t = cty::c_long;
79pub type __useconds_t = cty::c_uint;
80pub type __suseconds_t = cty::c_long;
81pub type __daddr_t = cty::c_int;
82pub type __key_t = cty::c_int;
83pub type __clockid_t = cty::c_int;
84pub type __timer_t = *mut cty::c_void;
85pub type __blksize_t = cty::c_long;
86pub type __blkcnt_t = cty::c_long;
87pub type __blkcnt64_t = cty::c_long;
88pub type __fsblkcnt_t = cty::c_ulong;
89pub type __fsblkcnt64_t = cty::c_ulong;
90pub type __fsfilcnt_t = cty::c_ulong;
91pub type __fsfilcnt64_t = cty::c_ulong;
92pub type __fsword_t = cty::c_long;
93pub type __ssize_t = cty::c_long;
94pub type __syscall_slong_t = cty::c_long;
95pub type __syscall_ulong_t = cty::c_ulong;
96pub type __loff_t = __off64_t;
97pub type __caddr_t = *mut cty::c_char;
98pub type __intptr_t = cty::c_long;
99pub type __socklen_t = cty::c_uint;
100pub type __sig_atomic_t = cty::c_int;
101pub type int_least8_t = __int_least8_t;
102pub type int_least16_t = __int_least16_t;
103pub type int_least32_t = __int_least32_t;
104pub type int_least64_t = __int_least64_t;
105pub type uint_least8_t = __uint_least8_t;
106pub type uint_least16_t = __uint_least16_t;
107pub type uint_least32_t = __uint_least32_t;
108pub type uint_least64_t = __uint_least64_t;
109pub type int_fast8_t = cty::c_schar;
110pub type int_fast16_t = cty::c_long;
111pub type int_fast32_t = cty::c_long;
112pub type int_fast64_t = cty::c_long;
113pub type uint_fast8_t = cty::c_uchar;
114pub type uint_fast16_t = cty::c_ulong;
115pub type uint_fast32_t = cty::c_ulong;
116pub type uint_fast64_t = cty::c_ulong;
117pub type intmax_t = __intmax_t;
118pub type uintmax_t = __uintmax_t;
119pub type wchar_t = cty::c_int;
120pub type _Float32 = f32;
121pub type _Float64 = f64;
122pub type _Float32x = f64;
123pub type _Float64x = u128;
124#[repr(C)]
125#[derive(Debug, Copy, Clone)]
126pub struct div_t {
127    pub quot: cty::c_int,
128    pub rem: cty::c_int,
129}
130#[test]
131fn bindgen_test_layout_div_t() {
132    assert_eq!(
133        ::core::mem::size_of::<div_t>(),
134        8usize,
135        concat!("Size of: ", stringify!(div_t))
136    );
137    assert_eq!(
138        ::core::mem::align_of::<div_t>(),
139        4usize,
140        concat!("Alignment of ", stringify!(div_t))
141    );
142    assert_eq!(
143        unsafe { &(*(::core::ptr::null::<div_t>())).quot as *const _ as usize },
144        0usize,
145        concat!(
146            "Offset of field: ",
147            stringify!(div_t),
148            "::",
149            stringify!(quot)
150        )
151    );
152    assert_eq!(
153        unsafe { &(*(::core::ptr::null::<div_t>())).rem as *const _ as usize },
154        4usize,
155        concat!(
156            "Offset of field: ",
157            stringify!(div_t),
158            "::",
159            stringify!(rem)
160        )
161    );
162}
163#[repr(C)]
164#[derive(Debug, Copy, Clone)]
165pub struct ldiv_t {
166    pub quot: cty::c_long,
167    pub rem: cty::c_long,
168}
169#[test]
170fn bindgen_test_layout_ldiv_t() {
171    assert_eq!(
172        ::core::mem::size_of::<ldiv_t>(),
173        16usize,
174        concat!("Size of: ", stringify!(ldiv_t))
175    );
176    assert_eq!(
177        ::core::mem::align_of::<ldiv_t>(),
178        8usize,
179        concat!("Alignment of ", stringify!(ldiv_t))
180    );
181    assert_eq!(
182        unsafe { &(*(::core::ptr::null::<ldiv_t>())).quot as *const _ as usize },
183        0usize,
184        concat!(
185            "Offset of field: ",
186            stringify!(ldiv_t),
187            "::",
188            stringify!(quot)
189        )
190    );
191    assert_eq!(
192        unsafe { &(*(::core::ptr::null::<ldiv_t>())).rem as *const _ as usize },
193        8usize,
194        concat!(
195            "Offset of field: ",
196            stringify!(ldiv_t),
197            "::",
198            stringify!(rem)
199        )
200    );
201}
202#[repr(C)]
203#[derive(Debug, Copy, Clone)]
204pub struct lldiv_t {
205    pub quot: cty::c_longlong,
206    pub rem: cty::c_longlong,
207}
208#[test]
209fn bindgen_test_layout_lldiv_t() {
210    assert_eq!(
211        ::core::mem::size_of::<lldiv_t>(),
212        16usize,
213        concat!("Size of: ", stringify!(lldiv_t))
214    );
215    assert_eq!(
216        ::core::mem::align_of::<lldiv_t>(),
217        8usize,
218        concat!("Alignment of ", stringify!(lldiv_t))
219    );
220    assert_eq!(
221        unsafe { &(*(::core::ptr::null::<lldiv_t>())).quot as *const _ as usize },
222        0usize,
223        concat!(
224            "Offset of field: ",
225            stringify!(lldiv_t),
226            "::",
227            stringify!(quot)
228        )
229    );
230    assert_eq!(
231        unsafe { &(*(::core::ptr::null::<lldiv_t>())).rem as *const _ as usize },
232        8usize,
233        concat!(
234            "Offset of field: ",
235            stringify!(lldiv_t),
236            "::",
237            stringify!(rem)
238        )
239    );
240}
241extern "C" {
242    pub fn __ctype_get_mb_cur_max() -> usize;
243}
244extern "C" {
245    pub fn atof(__nptr: *const cty::c_char) -> f64;
246}
247extern "C" {
248    pub fn atoi(__nptr: *const cty::c_char) -> cty::c_int;
249}
250extern "C" {
251    pub fn atol(__nptr: *const cty::c_char) -> cty::c_long;
252}
253extern "C" {
254    pub fn atoll(__nptr: *const cty::c_char) -> cty::c_longlong;
255}
256extern "C" {
257    pub fn strtod(__nptr: *const cty::c_char, __endptr: *mut *mut cty::c_char) -> f64;
258}
259extern "C" {
260    pub fn strtof(__nptr: *const cty::c_char, __endptr: *mut *mut cty::c_char) -> f32;
261}
262extern "C" {
263    pub fn strtold(__nptr: *const cty::c_char, __endptr: *mut *mut cty::c_char) -> u128;
264}
265extern "C" {
266    pub fn strtol(
267        __nptr: *const cty::c_char,
268        __endptr: *mut *mut cty::c_char,
269        _start: cty::c_int,
270    ) -> cty::c_long;
271}
272extern "C" {
273    pub fn strtoul(
274        __nptr: *const cty::c_char,
275        __endptr: *mut *mut cty::c_char,
276        _start: cty::c_int,
277    ) -> cty::c_ulong;
278}
279extern "C" {
280    pub fn strtoq(
281        __nptr: *const cty::c_char,
282        __endptr: *mut *mut cty::c_char,
283        _start: cty::c_int,
284    ) -> cty::c_longlong;
285}
286extern "C" {
287    pub fn strtouq(
288        __nptr: *const cty::c_char,
289        __endptr: *mut *mut cty::c_char,
290        _start: cty::c_int,
291    ) -> cty::c_ulonglong;
292}
293extern "C" {
294    pub fn strtoll(
295        __nptr: *const cty::c_char,
296        __endptr: *mut *mut cty::c_char,
297        _start: cty::c_int,
298    ) -> cty::c_longlong;
299}
300extern "C" {
301    pub fn strtoull(
302        __nptr: *const cty::c_char,
303        __endptr: *mut *mut cty::c_char,
304        _start: cty::c_int,
305    ) -> cty::c_ulonglong;
306}
307extern "C" {
308    pub fn l64a(__n: cty::c_long) -> *mut cty::c_char;
309}
310extern "C" {
311    pub fn a64l(__s: *const cty::c_char) -> cty::c_long;
312}
313pub type u_char = __u_char;
314pub type u_short = __u_short;
315pub type u_int = __u_int;
316pub type u_long = __u_long;
317pub type quad_t = __quad_t;
318pub type u_quad_t = __u_quad_t;
319pub type fsid_t = __fsid_t;
320pub type loff_t = __loff_t;
321pub type ino_t = __ino_t;
322pub type dev_t = __dev_t;
323pub type gid_t = __gid_t;
324pub type mode_t = __mode_t;
325pub type nlink_t = __nlink_t;
326pub type uid_t = __uid_t;
327pub type off_t = __off_t;
328pub type pid_t = __pid_t;
329pub type id_t = __id_t;
330pub type daddr_t = __daddr_t;
331pub type caddr_t = __caddr_t;
332pub type key_t = __key_t;
333pub type clock_t = __clock_t;
334pub type clockid_t = __clockid_t;
335pub type time_t = __time_t;
336pub type timer_t = __timer_t;
337pub type ulong = cty::c_ulong;
338pub type ushort = cty::c_ushort;
339pub type uint = cty::c_uint;
340pub type u_int8_t = cty::c_uchar;
341pub type u_int16_t = cty::c_ushort;
342pub type u_int32_t = cty::c_uint;
343pub type u_int64_t = cty::c_ulong;
344pub type register_t = cty::c_long;
345#[repr(C)]
346#[derive(Debug, Copy, Clone)]
347pub struct __sigset_t {
348    pub __val: [cty::c_ulong; 16usize],
349}
350#[test]
351fn bindgen_test_layout___sigset_t() {
352    assert_eq!(
353        ::core::mem::size_of::<__sigset_t>(),
354        128usize,
355        concat!("Size of: ", stringify!(__sigset_t))
356    );
357    assert_eq!(
358        ::core::mem::align_of::<__sigset_t>(),
359        8usize,
360        concat!("Alignment of ", stringify!(__sigset_t))
361    );
362    assert_eq!(
363        unsafe { &(*(::core::ptr::null::<__sigset_t>())).__val as *const _ as usize },
364        0usize,
365        concat!(
366            "Offset of field: ",
367            stringify!(__sigset_t),
368            "::",
369            stringify!(__val)
370        )
371    );
372}
373pub type sigset_t = __sigset_t;
374#[repr(C)]
375#[derive(Debug, Copy, Clone)]
376pub struct timeval {
377    pub tv_sec: __time_t,
378    pub tv_usec: __suseconds_t,
379}
380#[test]
381fn bindgen_test_layout_timeval() {
382    assert_eq!(
383        ::core::mem::size_of::<timeval>(),
384        16usize,
385        concat!("Size of: ", stringify!(timeval))
386    );
387    assert_eq!(
388        ::core::mem::align_of::<timeval>(),
389        8usize,
390        concat!("Alignment of ", stringify!(timeval))
391    );
392    assert_eq!(
393        unsafe { &(*(::core::ptr::null::<timeval>())).tv_sec as *const _ as usize },
394        0usize,
395        concat!(
396            "Offset of field: ",
397            stringify!(timeval),
398            "::",
399            stringify!(tv_sec)
400        )
401    );
402    assert_eq!(
403        unsafe { &(*(::core::ptr::null::<timeval>())).tv_usec as *const _ as usize },
404        8usize,
405        concat!(
406            "Offset of field: ",
407            stringify!(timeval),
408            "::",
409            stringify!(tv_usec)
410        )
411    );
412}
413#[repr(C)]
414#[derive(Debug, Copy, Clone)]
415pub struct timespec {
416    pub tv_sec: __time_t,
417    pub tv_nsec: __syscall_slong_t,
418}
419#[test]
420fn bindgen_test_layout_timespec() {
421    assert_eq!(
422        ::core::mem::size_of::<timespec>(),
423        16usize,
424        concat!("Size of: ", stringify!(timespec))
425    );
426    assert_eq!(
427        ::core::mem::align_of::<timespec>(),
428        8usize,
429        concat!("Alignment of ", stringify!(timespec))
430    );
431    assert_eq!(
432        unsafe { &(*(::core::ptr::null::<timespec>())).tv_sec as *const _ as usize },
433        0usize,
434        concat!(
435            "Offset of field: ",
436            stringify!(timespec),
437            "::",
438            stringify!(tv_sec)
439        )
440    );
441    assert_eq!(
442        unsafe { &(*(::core::ptr::null::<timespec>())).tv_nsec as *const _ as usize },
443        8usize,
444        concat!(
445            "Offset of field: ",
446            stringify!(timespec),
447            "::",
448            stringify!(tv_nsec)
449        )
450    );
451}
452pub type suseconds_t = __suseconds_t;
453pub type __fd_mask = cty::c_long;
454#[repr(C)]
455#[derive(Debug, Copy, Clone)]
456pub struct fd_set {
457    pub __fds_bits: [__fd_mask; 16usize],
458}
459#[test]
460fn bindgen_test_layout_fd_set() {
461    assert_eq!(
462        ::core::mem::size_of::<fd_set>(),
463        128usize,
464        concat!("Size of: ", stringify!(fd_set))
465    );
466    assert_eq!(
467        ::core::mem::align_of::<fd_set>(),
468        8usize,
469        concat!("Alignment of ", stringify!(fd_set))
470    );
471    assert_eq!(
472        unsafe { &(*(::core::ptr::null::<fd_set>())).__fds_bits as *const _ as usize },
473        0usize,
474        concat!(
475            "Offset of field: ",
476            stringify!(fd_set),
477            "::",
478            stringify!(__fds_bits)
479        )
480    );
481}
482pub type fd_mask = __fd_mask;
483extern "C" {
484    pub fn select(
485        __nfds: cty::c_int,
486        __readfds: *mut fd_set,
487        __writefds: *mut fd_set,
488        __exceptfds: *mut fd_set,
489        __timeout: *mut timeval,
490    ) -> cty::c_int;
491}
492extern "C" {
493    pub fn pselect(
494        __nfds: cty::c_int,
495        __readfds: *mut fd_set,
496        __writefds: *mut fd_set,
497        __exceptfds: *mut fd_set,
498        __timeout: *const timespec,
499        __sigmask: *const __sigset_t,
500    ) -> cty::c_int;
501}
502pub type blksize_t = __blksize_t;
503pub type blkcnt_t = __blkcnt_t;
504pub type fsblkcnt_t = __fsblkcnt_t;
505pub type fsfilcnt_t = __fsfilcnt_t;
506#[repr(C)]
507#[derive(Debug, Copy, Clone)]
508pub struct __pthread_rwlock_arch_t {
509    pub __readers: cty::c_uint,
510    pub __writers: cty::c_uint,
511    pub __wrphase_futex: cty::c_uint,
512    pub __writers_futex: cty::c_uint,
513    pub __pad3: cty::c_uint,
514    pub __pad4: cty::c_uint,
515    pub __cur_writer: cty::c_int,
516    pub __shared: cty::c_int,
517    pub __rwelision: cty::c_schar,
518    pub __pad1: [cty::c_uchar; 7usize],
519    pub __pad2: cty::c_ulong,
520    pub __flags: cty::c_uint,
521}
522#[test]
523fn bindgen_test_layout___pthread_rwlock_arch_t() {
524    assert_eq!(
525        ::core::mem::size_of::<__pthread_rwlock_arch_t>(),
526        56usize,
527        concat!("Size of: ", stringify!(__pthread_rwlock_arch_t))
528    );
529    assert_eq!(
530        ::core::mem::align_of::<__pthread_rwlock_arch_t>(),
531        8usize,
532        concat!("Alignment of ", stringify!(__pthread_rwlock_arch_t))
533    );
534    assert_eq!(
535        unsafe {
536            &(*(::core::ptr::null::<__pthread_rwlock_arch_t>())).__readers as *const _ as usize
537        },
538        0usize,
539        concat!(
540            "Offset of field: ",
541            stringify!(__pthread_rwlock_arch_t),
542            "::",
543            stringify!(__readers)
544        )
545    );
546    assert_eq!(
547        unsafe {
548            &(*(::core::ptr::null::<__pthread_rwlock_arch_t>())).__writers as *const _ as usize
549        },
550        4usize,
551        concat!(
552            "Offset of field: ",
553            stringify!(__pthread_rwlock_arch_t),
554            "::",
555            stringify!(__writers)
556        )
557    );
558    assert_eq!(
559        unsafe {
560            &(*(::core::ptr::null::<__pthread_rwlock_arch_t>())).__wrphase_futex as *const _
561                as usize
562        },
563        8usize,
564        concat!(
565            "Offset of field: ",
566            stringify!(__pthread_rwlock_arch_t),
567            "::",
568            stringify!(__wrphase_futex)
569        )
570    );
571    assert_eq!(
572        unsafe {
573            &(*(::core::ptr::null::<__pthread_rwlock_arch_t>())).__writers_futex as *const _
574                as usize
575        },
576        12usize,
577        concat!(
578            "Offset of field: ",
579            stringify!(__pthread_rwlock_arch_t),
580            "::",
581            stringify!(__writers_futex)
582        )
583    );
584    assert_eq!(
585        unsafe { &(*(::core::ptr::null::<__pthread_rwlock_arch_t>())).__pad3 as *const _ as usize },
586        16usize,
587        concat!(
588            "Offset of field: ",
589            stringify!(__pthread_rwlock_arch_t),
590            "::",
591            stringify!(__pad3)
592        )
593    );
594    assert_eq!(
595        unsafe { &(*(::core::ptr::null::<__pthread_rwlock_arch_t>())).__pad4 as *const _ as usize },
596        20usize,
597        concat!(
598            "Offset of field: ",
599            stringify!(__pthread_rwlock_arch_t),
600            "::",
601            stringify!(__pad4)
602        )
603    );
604    assert_eq!(
605        unsafe {
606            &(*(::core::ptr::null::<__pthread_rwlock_arch_t>())).__cur_writer as *const _ as usize
607        },
608        24usize,
609        concat!(
610            "Offset of field: ",
611            stringify!(__pthread_rwlock_arch_t),
612            "::",
613            stringify!(__cur_writer)
614        )
615    );
616    assert_eq!(
617        unsafe {
618            &(*(::core::ptr::null::<__pthread_rwlock_arch_t>())).__shared as *const _ as usize
619        },
620        28usize,
621        concat!(
622            "Offset of field: ",
623            stringify!(__pthread_rwlock_arch_t),
624            "::",
625            stringify!(__shared)
626        )
627    );
628    assert_eq!(
629        unsafe {
630            &(*(::core::ptr::null::<__pthread_rwlock_arch_t>())).__rwelision as *const _ as usize
631        },
632        32usize,
633        concat!(
634            "Offset of field: ",
635            stringify!(__pthread_rwlock_arch_t),
636            "::",
637            stringify!(__rwelision)
638        )
639    );
640    assert_eq!(
641        unsafe { &(*(::core::ptr::null::<__pthread_rwlock_arch_t>())).__pad1 as *const _ as usize },
642        33usize,
643        concat!(
644            "Offset of field: ",
645            stringify!(__pthread_rwlock_arch_t),
646            "::",
647            stringify!(__pad1)
648        )
649    );
650    assert_eq!(
651        unsafe { &(*(::core::ptr::null::<__pthread_rwlock_arch_t>())).__pad2 as *const _ as usize },
652        40usize,
653        concat!(
654            "Offset of field: ",
655            stringify!(__pthread_rwlock_arch_t),
656            "::",
657            stringify!(__pad2)
658        )
659    );
660    assert_eq!(
661        unsafe {
662            &(*(::core::ptr::null::<__pthread_rwlock_arch_t>())).__flags as *const _ as usize
663        },
664        48usize,
665        concat!(
666            "Offset of field: ",
667            stringify!(__pthread_rwlock_arch_t),
668            "::",
669            stringify!(__flags)
670        )
671    );
672}
673#[repr(C)]
674#[derive(Debug, Copy, Clone)]
675pub struct __pthread_internal_list {
676    pub __prev: *mut __pthread_internal_list,
677    pub __next: *mut __pthread_internal_list,
678}
679#[test]
680fn bindgen_test_layout___pthread_internal_list() {
681    assert_eq!(
682        ::core::mem::size_of::<__pthread_internal_list>(),
683        16usize,
684        concat!("Size of: ", stringify!(__pthread_internal_list))
685    );
686    assert_eq!(
687        ::core::mem::align_of::<__pthread_internal_list>(),
688        8usize,
689        concat!("Alignment of ", stringify!(__pthread_internal_list))
690    );
691    assert_eq!(
692        unsafe { &(*(::core::ptr::null::<__pthread_internal_list>())).__prev as *const _ as usize },
693        0usize,
694        concat!(
695            "Offset of field: ",
696            stringify!(__pthread_internal_list),
697            "::",
698            stringify!(__prev)
699        )
700    );
701    assert_eq!(
702        unsafe { &(*(::core::ptr::null::<__pthread_internal_list>())).__next as *const _ as usize },
703        8usize,
704        concat!(
705            "Offset of field: ",
706            stringify!(__pthread_internal_list),
707            "::",
708            stringify!(__next)
709        )
710    );
711}
712pub type __pthread_list_t = __pthread_internal_list;
713#[repr(C)]
714#[derive(Debug, Copy, Clone)]
715pub struct __pthread_mutex_s {
716    pub __lock: cty::c_int,
717    pub __count: cty::c_uint,
718    pub __owner: cty::c_int,
719    pub __nusers: cty::c_uint,
720    pub __kind: cty::c_int,
721    pub __spins: cty::c_short,
722    pub __elision: cty::c_short,
723    pub __list: __pthread_list_t,
724}
725#[test]
726fn bindgen_test_layout___pthread_mutex_s() {
727    assert_eq!(
728        ::core::mem::size_of::<__pthread_mutex_s>(),
729        40usize,
730        concat!("Size of: ", stringify!(__pthread_mutex_s))
731    );
732    assert_eq!(
733        ::core::mem::align_of::<__pthread_mutex_s>(),
734        8usize,
735        concat!("Alignment of ", stringify!(__pthread_mutex_s))
736    );
737    assert_eq!(
738        unsafe { &(*(::core::ptr::null::<__pthread_mutex_s>())).__lock as *const _ as usize },
739        0usize,
740        concat!(
741            "Offset of field: ",
742            stringify!(__pthread_mutex_s),
743            "::",
744            stringify!(__lock)
745        )
746    );
747    assert_eq!(
748        unsafe { &(*(::core::ptr::null::<__pthread_mutex_s>())).__count as *const _ as usize },
749        4usize,
750        concat!(
751            "Offset of field: ",
752            stringify!(__pthread_mutex_s),
753            "::",
754            stringify!(__count)
755        )
756    );
757    assert_eq!(
758        unsafe { &(*(::core::ptr::null::<__pthread_mutex_s>())).__owner as *const _ as usize },
759        8usize,
760        concat!(
761            "Offset of field: ",
762            stringify!(__pthread_mutex_s),
763            "::",
764            stringify!(__owner)
765        )
766    );
767    assert_eq!(
768        unsafe { &(*(::core::ptr::null::<__pthread_mutex_s>())).__nusers as *const _ as usize },
769        12usize,
770        concat!(
771            "Offset of field: ",
772            stringify!(__pthread_mutex_s),
773            "::",
774            stringify!(__nusers)
775        )
776    );
777    assert_eq!(
778        unsafe { &(*(::core::ptr::null::<__pthread_mutex_s>())).__kind as *const _ as usize },
779        16usize,
780        concat!(
781            "Offset of field: ",
782            stringify!(__pthread_mutex_s),
783            "::",
784            stringify!(__kind)
785        )
786    );
787    assert_eq!(
788        unsafe { &(*(::core::ptr::null::<__pthread_mutex_s>())).__spins as *const _ as usize },
789        20usize,
790        concat!(
791            "Offset of field: ",
792            stringify!(__pthread_mutex_s),
793            "::",
794            stringify!(__spins)
795        )
796    );
797    assert_eq!(
798        unsafe { &(*(::core::ptr::null::<__pthread_mutex_s>())).__elision as *const _ as usize },
799        22usize,
800        concat!(
801            "Offset of field: ",
802            stringify!(__pthread_mutex_s),
803            "::",
804            stringify!(__elision)
805        )
806    );
807    assert_eq!(
808        unsafe { &(*(::core::ptr::null::<__pthread_mutex_s>())).__list as *const _ as usize },
809        24usize,
810        concat!(
811            "Offset of field: ",
812            stringify!(__pthread_mutex_s),
813            "::",
814            stringify!(__list)
815        )
816    );
817}
818#[repr(C)]
819#[derive(Copy, Clone)]
820pub struct __pthread_cond_s {
821    pub __bindgen_anon_1: __pthread_cond_s__bindgen_ty_1,
822    pub __bindgen_anon_2: __pthread_cond_s__bindgen_ty_2,
823    pub __g_refs: [cty::c_uint; 2usize],
824    pub __g_size: [cty::c_uint; 2usize],
825    pub __g1_orig_size: cty::c_uint,
826    pub __wrefs: cty::c_uint,
827    pub __g_signals: [cty::c_uint; 2usize],
828}
829#[repr(C)]
830#[repr(align(8))]
831#[derive(Copy, Clone)]
832pub union __pthread_cond_s__bindgen_ty_1 {
833    pub __wseq: cty::c_ulonglong,
834    pub __wseq32: __pthread_cond_s__bindgen_ty_1__bindgen_ty_1,
835    _bindgen_union_align: u64,
836}
837#[repr(C)]
838#[derive(Debug, Copy, Clone)]
839pub struct __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 {
840    pub __low: cty::c_uint,
841    pub __high: cty::c_uint,
842}
843#[test]
844fn bindgen_test_layout___pthread_cond_s__bindgen_ty_1__bindgen_ty_1() {
845    assert_eq!(
846        ::core::mem::size_of::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>(),
847        8usize,
848        concat!(
849            "Size of: ",
850            stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1)
851        )
852    );
853    assert_eq!(
854        ::core::mem::align_of::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>(),
855        4usize,
856        concat!(
857            "Alignment of ",
858            stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1)
859        )
860    );
861    assert_eq!(
862        unsafe {
863            &(*(::core::ptr::null::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>())).__low
864                as *const _ as usize
865        },
866        0usize,
867        concat!(
868            "Offset of field: ",
869            stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1),
870            "::",
871            stringify!(__low)
872        )
873    );
874    assert_eq!(
875        unsafe {
876            &(*(::core::ptr::null::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>())).__high
877                as *const _ as usize
878        },
879        4usize,
880        concat!(
881            "Offset of field: ",
882            stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1),
883            "::",
884            stringify!(__high)
885        )
886    );
887}
888#[test]
889fn bindgen_test_layout___pthread_cond_s__bindgen_ty_1() {
890    assert_eq!(
891        ::core::mem::size_of::<__pthread_cond_s__bindgen_ty_1>(),
892        8usize,
893        concat!("Size of: ", stringify!(__pthread_cond_s__bindgen_ty_1))
894    );
895    assert_eq!(
896        ::core::mem::align_of::<__pthread_cond_s__bindgen_ty_1>(),
897        8usize,
898        concat!("Alignment of ", stringify!(__pthread_cond_s__bindgen_ty_1))
899    );
900    assert_eq!(
901        unsafe {
902            &(*(::core::ptr::null::<__pthread_cond_s__bindgen_ty_1>())).__wseq as *const _ as usize
903        },
904        0usize,
905        concat!(
906            "Offset of field: ",
907            stringify!(__pthread_cond_s__bindgen_ty_1),
908            "::",
909            stringify!(__wseq)
910        )
911    );
912    assert_eq!(
913        unsafe {
914            &(*(::core::ptr::null::<__pthread_cond_s__bindgen_ty_1>())).__wseq32 as *const _
915                as usize
916        },
917        0usize,
918        concat!(
919            "Offset of field: ",
920            stringify!(__pthread_cond_s__bindgen_ty_1),
921            "::",
922            stringify!(__wseq32)
923        )
924    );
925}
926#[repr(C)]
927#[repr(align(8))]
928#[derive(Copy, Clone)]
929pub union __pthread_cond_s__bindgen_ty_2 {
930    pub __g1_start: cty::c_ulonglong,
931    pub __g1_start32: __pthread_cond_s__bindgen_ty_2__bindgen_ty_1,
932    _bindgen_union_align: u64,
933}
934#[repr(C)]
935#[derive(Debug, Copy, Clone)]
936pub struct __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 {
937    pub __low: cty::c_uint,
938    pub __high: cty::c_uint,
939}
940#[test]
941fn bindgen_test_layout___pthread_cond_s__bindgen_ty_2__bindgen_ty_1() {
942    assert_eq!(
943        ::core::mem::size_of::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>(),
944        8usize,
945        concat!(
946            "Size of: ",
947            stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1)
948        )
949    );
950    assert_eq!(
951        ::core::mem::align_of::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>(),
952        4usize,
953        concat!(
954            "Alignment of ",
955            stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1)
956        )
957    );
958    assert_eq!(
959        unsafe {
960            &(*(::core::ptr::null::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>())).__low
961                as *const _ as usize
962        },
963        0usize,
964        concat!(
965            "Offset of field: ",
966            stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1),
967            "::",
968            stringify!(__low)
969        )
970    );
971    assert_eq!(
972        unsafe {
973            &(*(::core::ptr::null::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>())).__high
974                as *const _ as usize
975        },
976        4usize,
977        concat!(
978            "Offset of field: ",
979            stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1),
980            "::",
981            stringify!(__high)
982        )
983    );
984}
985#[test]
986fn bindgen_test_layout___pthread_cond_s__bindgen_ty_2() {
987    assert_eq!(
988        ::core::mem::size_of::<__pthread_cond_s__bindgen_ty_2>(),
989        8usize,
990        concat!("Size of: ", stringify!(__pthread_cond_s__bindgen_ty_2))
991    );
992    assert_eq!(
993        ::core::mem::align_of::<__pthread_cond_s__bindgen_ty_2>(),
994        8usize,
995        concat!("Alignment of ", stringify!(__pthread_cond_s__bindgen_ty_2))
996    );
997    assert_eq!(
998        unsafe {
999            &(*(::core::ptr::null::<__pthread_cond_s__bindgen_ty_2>())).__g1_start as *const _
1000                as usize
1001        },
1002        0usize,
1003        concat!(
1004            "Offset of field: ",
1005            stringify!(__pthread_cond_s__bindgen_ty_2),
1006            "::",
1007            stringify!(__g1_start)
1008        )
1009    );
1010    assert_eq!(
1011        unsafe {
1012            &(*(::core::ptr::null::<__pthread_cond_s__bindgen_ty_2>())).__g1_start32 as *const _
1013                as usize
1014        },
1015        0usize,
1016        concat!(
1017            "Offset of field: ",
1018            stringify!(__pthread_cond_s__bindgen_ty_2),
1019            "::",
1020            stringify!(__g1_start32)
1021        )
1022    );
1023}
1024#[test]
1025fn bindgen_test_layout___pthread_cond_s() {
1026    assert_eq!(
1027        ::core::mem::size_of::<__pthread_cond_s>(),
1028        48usize,
1029        concat!("Size of: ", stringify!(__pthread_cond_s))
1030    );
1031    assert_eq!(
1032        ::core::mem::align_of::<__pthread_cond_s>(),
1033        8usize,
1034        concat!("Alignment of ", stringify!(__pthread_cond_s))
1035    );
1036    assert_eq!(
1037        unsafe { &(*(::core::ptr::null::<__pthread_cond_s>())).__g_refs as *const _ as usize },
1038        16usize,
1039        concat!(
1040            "Offset of field: ",
1041            stringify!(__pthread_cond_s),
1042            "::",
1043            stringify!(__g_refs)
1044        )
1045    );
1046    assert_eq!(
1047        unsafe { &(*(::core::ptr::null::<__pthread_cond_s>())).__g_size as *const _ as usize },
1048        24usize,
1049        concat!(
1050            "Offset of field: ",
1051            stringify!(__pthread_cond_s),
1052            "::",
1053            stringify!(__g_size)
1054        )
1055    );
1056    assert_eq!(
1057        unsafe {
1058            &(*(::core::ptr::null::<__pthread_cond_s>())).__g1_orig_size as *const _ as usize
1059        },
1060        32usize,
1061        concat!(
1062            "Offset of field: ",
1063            stringify!(__pthread_cond_s),
1064            "::",
1065            stringify!(__g1_orig_size)
1066        )
1067    );
1068    assert_eq!(
1069        unsafe { &(*(::core::ptr::null::<__pthread_cond_s>())).__wrefs as *const _ as usize },
1070        36usize,
1071        concat!(
1072            "Offset of field: ",
1073            stringify!(__pthread_cond_s),
1074            "::",
1075            stringify!(__wrefs)
1076        )
1077    );
1078    assert_eq!(
1079        unsafe { &(*(::core::ptr::null::<__pthread_cond_s>())).__g_signals as *const _ as usize },
1080        40usize,
1081        concat!(
1082            "Offset of field: ",
1083            stringify!(__pthread_cond_s),
1084            "::",
1085            stringify!(__g_signals)
1086        )
1087    );
1088}
1089pub type pthread_t = cty::c_ulong;
1090#[repr(C)]
1091#[repr(align(4))]
1092#[derive(Copy, Clone)]
1093pub union pthread_mutexattr_t {
1094    pub __size: [cty::c_char; 4usize],
1095    pub __align: cty::c_int,
1096    _bindgen_union_align: u32,
1097}
1098#[test]
1099fn bindgen_test_layout_pthread_mutexattr_t() {
1100    assert_eq!(
1101        ::core::mem::size_of::<pthread_mutexattr_t>(),
1102        4usize,
1103        concat!("Size of: ", stringify!(pthread_mutexattr_t))
1104    );
1105    assert_eq!(
1106        ::core::mem::align_of::<pthread_mutexattr_t>(),
1107        4usize,
1108        concat!("Alignment of ", stringify!(pthread_mutexattr_t))
1109    );
1110    assert_eq!(
1111        unsafe { &(*(::core::ptr::null::<pthread_mutexattr_t>())).__size as *const _ as usize },
1112        0usize,
1113        concat!(
1114            "Offset of field: ",
1115            stringify!(pthread_mutexattr_t),
1116            "::",
1117            stringify!(__size)
1118        )
1119    );
1120    assert_eq!(
1121        unsafe { &(*(::core::ptr::null::<pthread_mutexattr_t>())).__align as *const _ as usize },
1122        0usize,
1123        concat!(
1124            "Offset of field: ",
1125            stringify!(pthread_mutexattr_t),
1126            "::",
1127            stringify!(__align)
1128        )
1129    );
1130}
1131#[repr(C)]
1132#[repr(align(4))]
1133#[derive(Copy, Clone)]
1134pub union pthread_condattr_t {
1135    pub __size: [cty::c_char; 4usize],
1136    pub __align: cty::c_int,
1137    _bindgen_union_align: u32,
1138}
1139#[test]
1140fn bindgen_test_layout_pthread_condattr_t() {
1141    assert_eq!(
1142        ::core::mem::size_of::<pthread_condattr_t>(),
1143        4usize,
1144        concat!("Size of: ", stringify!(pthread_condattr_t))
1145    );
1146    assert_eq!(
1147        ::core::mem::align_of::<pthread_condattr_t>(),
1148        4usize,
1149        concat!("Alignment of ", stringify!(pthread_condattr_t))
1150    );
1151    assert_eq!(
1152        unsafe { &(*(::core::ptr::null::<pthread_condattr_t>())).__size as *const _ as usize },
1153        0usize,
1154        concat!(
1155            "Offset of field: ",
1156            stringify!(pthread_condattr_t),
1157            "::",
1158            stringify!(__size)
1159        )
1160    );
1161    assert_eq!(
1162        unsafe { &(*(::core::ptr::null::<pthread_condattr_t>())).__align as *const _ as usize },
1163        0usize,
1164        concat!(
1165            "Offset of field: ",
1166            stringify!(pthread_condattr_t),
1167            "::",
1168            stringify!(__align)
1169        )
1170    );
1171}
1172pub type pthread_key_t = cty::c_uint;
1173pub type pthread_once_t = cty::c_int;
1174#[repr(C)]
1175#[repr(align(8))]
1176#[derive(Copy, Clone)]
1177pub union pthread_attr_t {
1178    pub __size: [cty::c_char; 56usize],
1179    pub __align: cty::c_long,
1180    _bindgen_union_align: [u64; 7usize],
1181}
1182#[test]
1183fn bindgen_test_layout_pthread_attr_t() {
1184    assert_eq!(
1185        ::core::mem::size_of::<pthread_attr_t>(),
1186        56usize,
1187        concat!("Size of: ", stringify!(pthread_attr_t))
1188    );
1189    assert_eq!(
1190        ::core::mem::align_of::<pthread_attr_t>(),
1191        8usize,
1192        concat!("Alignment of ", stringify!(pthread_attr_t))
1193    );
1194    assert_eq!(
1195        unsafe { &(*(::core::ptr::null::<pthread_attr_t>())).__size as *const _ as usize },
1196        0usize,
1197        concat!(
1198            "Offset of field: ",
1199            stringify!(pthread_attr_t),
1200            "::",
1201            stringify!(__size)
1202        )
1203    );
1204    assert_eq!(
1205        unsafe { &(*(::core::ptr::null::<pthread_attr_t>())).__align as *const _ as usize },
1206        0usize,
1207        concat!(
1208            "Offset of field: ",
1209            stringify!(pthread_attr_t),
1210            "::",
1211            stringify!(__align)
1212        )
1213    );
1214}
1215#[repr(C)]
1216#[repr(align(8))]
1217#[derive(Copy, Clone)]
1218pub union pthread_mutex_t {
1219    pub __data: __pthread_mutex_s,
1220    pub __size: [cty::c_char; 40usize],
1221    pub __align: cty::c_long,
1222    _bindgen_union_align: [u64; 5usize],
1223}
1224#[test]
1225fn bindgen_test_layout_pthread_mutex_t() {
1226    assert_eq!(
1227        ::core::mem::size_of::<pthread_mutex_t>(),
1228        40usize,
1229        concat!("Size of: ", stringify!(pthread_mutex_t))
1230    );
1231    assert_eq!(
1232        ::core::mem::align_of::<pthread_mutex_t>(),
1233        8usize,
1234        concat!("Alignment of ", stringify!(pthread_mutex_t))
1235    );
1236    assert_eq!(
1237        unsafe { &(*(::core::ptr::null::<pthread_mutex_t>())).__data as *const _ as usize },
1238        0usize,
1239        concat!(
1240            "Offset of field: ",
1241            stringify!(pthread_mutex_t),
1242            "::",
1243            stringify!(__data)
1244        )
1245    );
1246    assert_eq!(
1247        unsafe { &(*(::core::ptr::null::<pthread_mutex_t>())).__size as *const _ as usize },
1248        0usize,
1249        concat!(
1250            "Offset of field: ",
1251            stringify!(pthread_mutex_t),
1252            "::",
1253            stringify!(__size)
1254        )
1255    );
1256    assert_eq!(
1257        unsafe { &(*(::core::ptr::null::<pthread_mutex_t>())).__align as *const _ as usize },
1258        0usize,
1259        concat!(
1260            "Offset of field: ",
1261            stringify!(pthread_mutex_t),
1262            "::",
1263            stringify!(__align)
1264        )
1265    );
1266}
1267#[repr(C)]
1268#[repr(align(8))]
1269#[derive(Copy, Clone)]
1270pub union pthread_cond_t {
1271    pub __data: __pthread_cond_s,
1272    pub __size: [cty::c_char; 48usize],
1273    pub __align: cty::c_longlong,
1274    _bindgen_union_align: [u64; 6usize],
1275}
1276#[test]
1277fn bindgen_test_layout_pthread_cond_t() {
1278    assert_eq!(
1279        ::core::mem::size_of::<pthread_cond_t>(),
1280        48usize,
1281        concat!("Size of: ", stringify!(pthread_cond_t))
1282    );
1283    assert_eq!(
1284        ::core::mem::align_of::<pthread_cond_t>(),
1285        8usize,
1286        concat!("Alignment of ", stringify!(pthread_cond_t))
1287    );
1288    assert_eq!(
1289        unsafe { &(*(::core::ptr::null::<pthread_cond_t>())).__data as *const _ as usize },
1290        0usize,
1291        concat!(
1292            "Offset of field: ",
1293            stringify!(pthread_cond_t),
1294            "::",
1295            stringify!(__data)
1296        )
1297    );
1298    assert_eq!(
1299        unsafe { &(*(::core::ptr::null::<pthread_cond_t>())).__size as *const _ as usize },
1300        0usize,
1301        concat!(
1302            "Offset of field: ",
1303            stringify!(pthread_cond_t),
1304            "::",
1305            stringify!(__size)
1306        )
1307    );
1308    assert_eq!(
1309        unsafe { &(*(::core::ptr::null::<pthread_cond_t>())).__align as *const _ as usize },
1310        0usize,
1311        concat!(
1312            "Offset of field: ",
1313            stringify!(pthread_cond_t),
1314            "::",
1315            stringify!(__align)
1316        )
1317    );
1318}
1319#[repr(C)]
1320#[repr(align(8))]
1321#[derive(Copy, Clone)]
1322pub union pthread_rwlock_t {
1323    pub __data: __pthread_rwlock_arch_t,
1324    pub __size: [cty::c_char; 56usize],
1325    pub __align: cty::c_long,
1326    _bindgen_union_align: [u64; 7usize],
1327}
1328#[test]
1329fn bindgen_test_layout_pthread_rwlock_t() {
1330    assert_eq!(
1331        ::core::mem::size_of::<pthread_rwlock_t>(),
1332        56usize,
1333        concat!("Size of: ", stringify!(pthread_rwlock_t))
1334    );
1335    assert_eq!(
1336        ::core::mem::align_of::<pthread_rwlock_t>(),
1337        8usize,
1338        concat!("Alignment of ", stringify!(pthread_rwlock_t))
1339    );
1340    assert_eq!(
1341        unsafe { &(*(::core::ptr::null::<pthread_rwlock_t>())).__data as *const _ as usize },
1342        0usize,
1343        concat!(
1344            "Offset of field: ",
1345            stringify!(pthread_rwlock_t),
1346            "::",
1347            stringify!(__data)
1348        )
1349    );
1350    assert_eq!(
1351        unsafe { &(*(::core::ptr::null::<pthread_rwlock_t>())).__size as *const _ as usize },
1352        0usize,
1353        concat!(
1354            "Offset of field: ",
1355            stringify!(pthread_rwlock_t),
1356            "::",
1357            stringify!(__size)
1358        )
1359    );
1360    assert_eq!(
1361        unsafe { &(*(::core::ptr::null::<pthread_rwlock_t>())).__align as *const _ as usize },
1362        0usize,
1363        concat!(
1364            "Offset of field: ",
1365            stringify!(pthread_rwlock_t),
1366            "::",
1367            stringify!(__align)
1368        )
1369    );
1370}
1371#[repr(C)]
1372#[repr(align(8))]
1373#[derive(Copy, Clone)]
1374pub union pthread_rwlockattr_t {
1375    pub __size: [cty::c_char; 8usize],
1376    pub __align: cty::c_long,
1377    _bindgen_union_align: u64,
1378}
1379#[test]
1380fn bindgen_test_layout_pthread_rwlockattr_t() {
1381    assert_eq!(
1382        ::core::mem::size_of::<pthread_rwlockattr_t>(),
1383        8usize,
1384        concat!("Size of: ", stringify!(pthread_rwlockattr_t))
1385    );
1386    assert_eq!(
1387        ::core::mem::align_of::<pthread_rwlockattr_t>(),
1388        8usize,
1389        concat!("Alignment of ", stringify!(pthread_rwlockattr_t))
1390    );
1391    assert_eq!(
1392        unsafe { &(*(::core::ptr::null::<pthread_rwlockattr_t>())).__size as *const _ as usize },
1393        0usize,
1394        concat!(
1395            "Offset of field: ",
1396            stringify!(pthread_rwlockattr_t),
1397            "::",
1398            stringify!(__size)
1399        )
1400    );
1401    assert_eq!(
1402        unsafe { &(*(::core::ptr::null::<pthread_rwlockattr_t>())).__align as *const _ as usize },
1403        0usize,
1404        concat!(
1405            "Offset of field: ",
1406            stringify!(pthread_rwlockattr_t),
1407            "::",
1408            stringify!(__align)
1409        )
1410    );
1411}
1412pub type pthread_spinlock_t = cty::c_int;
1413#[repr(C)]
1414#[repr(align(8))]
1415#[derive(Copy, Clone)]
1416pub union pthread_barrier_t {
1417    pub __size: [cty::c_char; 32usize],
1418    pub __align: cty::c_long,
1419    _bindgen_union_align: [u64; 4usize],
1420}
1421#[test]
1422fn bindgen_test_layout_pthread_barrier_t() {
1423    assert_eq!(
1424        ::core::mem::size_of::<pthread_barrier_t>(),
1425        32usize,
1426        concat!("Size of: ", stringify!(pthread_barrier_t))
1427    );
1428    assert_eq!(
1429        ::core::mem::align_of::<pthread_barrier_t>(),
1430        8usize,
1431        concat!("Alignment of ", stringify!(pthread_barrier_t))
1432    );
1433    assert_eq!(
1434        unsafe { &(*(::core::ptr::null::<pthread_barrier_t>())).__size as *const _ as usize },
1435        0usize,
1436        concat!(
1437            "Offset of field: ",
1438            stringify!(pthread_barrier_t),
1439            "::",
1440            stringify!(__size)
1441        )
1442    );
1443    assert_eq!(
1444        unsafe { &(*(::core::ptr::null::<pthread_barrier_t>())).__align as *const _ as usize },
1445        0usize,
1446        concat!(
1447            "Offset of field: ",
1448            stringify!(pthread_barrier_t),
1449            "::",
1450            stringify!(__align)
1451        )
1452    );
1453}
1454#[repr(C)]
1455#[repr(align(4))]
1456#[derive(Copy, Clone)]
1457pub union pthread_barrierattr_t {
1458    pub __size: [cty::c_char; 4usize],
1459    pub __align: cty::c_int,
1460    _bindgen_union_align: u32,
1461}
1462#[test]
1463fn bindgen_test_layout_pthread_barrierattr_t() {
1464    assert_eq!(
1465        ::core::mem::size_of::<pthread_barrierattr_t>(),
1466        4usize,
1467        concat!("Size of: ", stringify!(pthread_barrierattr_t))
1468    );
1469    assert_eq!(
1470        ::core::mem::align_of::<pthread_barrierattr_t>(),
1471        4usize,
1472        concat!("Alignment of ", stringify!(pthread_barrierattr_t))
1473    );
1474    assert_eq!(
1475        unsafe { &(*(::core::ptr::null::<pthread_barrierattr_t>())).__size as *const _ as usize },
1476        0usize,
1477        concat!(
1478            "Offset of field: ",
1479            stringify!(pthread_barrierattr_t),
1480            "::",
1481            stringify!(__size)
1482        )
1483    );
1484    assert_eq!(
1485        unsafe { &(*(::core::ptr::null::<pthread_barrierattr_t>())).__align as *const _ as usize },
1486        0usize,
1487        concat!(
1488            "Offset of field: ",
1489            stringify!(pthread_barrierattr_t),
1490            "::",
1491            stringify!(__align)
1492        )
1493    );
1494}
1495extern "C" {
1496    pub fn random() -> cty::c_long;
1497}
1498extern "C" {
1499    pub fn srandom(__seed: cty::c_uint);
1500}
1501extern "C" {
1502    pub fn initstate(
1503        __seed: cty::c_uint,
1504        __statebuf: *mut cty::c_char,
1505        __statelen: usize,
1506    ) -> *mut cty::c_char;
1507}
1508extern "C" {
1509    pub fn setstate(__statebuf: *mut cty::c_char) -> *mut cty::c_char;
1510}
1511#[repr(C)]
1512#[derive(Debug, Copy, Clone)]
1513pub struct random_data {
1514    pub fptr: *mut i32,
1515    pub rptr: *mut i32,
1516    pub state: *mut i32,
1517    pub rand_type: cty::c_int,
1518    pub rand_deg: cty::c_int,
1519    pub rand_sep: cty::c_int,
1520    pub end_ptr: *mut i32,
1521}
1522#[test]
1523fn bindgen_test_layout_random_data() {
1524    assert_eq!(
1525        ::core::mem::size_of::<random_data>(),
1526        48usize,
1527        concat!("Size of: ", stringify!(random_data))
1528    );
1529    assert_eq!(
1530        ::core::mem::align_of::<random_data>(),
1531        8usize,
1532        concat!("Alignment of ", stringify!(random_data))
1533    );
1534    assert_eq!(
1535        unsafe { &(*(::core::ptr::null::<random_data>())).fptr as *const _ as usize },
1536        0usize,
1537        concat!(
1538            "Offset of field: ",
1539            stringify!(random_data),
1540            "::",
1541            stringify!(fptr)
1542        )
1543    );
1544    assert_eq!(
1545        unsafe { &(*(::core::ptr::null::<random_data>())).rptr as *const _ as usize },
1546        8usize,
1547        concat!(
1548            "Offset of field: ",
1549            stringify!(random_data),
1550            "::",
1551            stringify!(rptr)
1552        )
1553    );
1554    assert_eq!(
1555        unsafe { &(*(::core::ptr::null::<random_data>())).state as *const _ as usize },
1556        16usize,
1557        concat!(
1558            "Offset of field: ",
1559            stringify!(random_data),
1560            "::",
1561            stringify!(state)
1562        )
1563    );
1564    assert_eq!(
1565        unsafe { &(*(::core::ptr::null::<random_data>())).rand_type as *const _ as usize },
1566        24usize,
1567        concat!(
1568            "Offset of field: ",
1569            stringify!(random_data),
1570            "::",
1571            stringify!(rand_type)
1572        )
1573    );
1574    assert_eq!(
1575        unsafe { &(*(::core::ptr::null::<random_data>())).rand_deg as *const _ as usize },
1576        28usize,
1577        concat!(
1578            "Offset of field: ",
1579            stringify!(random_data),
1580            "::",
1581            stringify!(rand_deg)
1582        )
1583    );
1584    assert_eq!(
1585        unsafe { &(*(::core::ptr::null::<random_data>())).rand_sep as *const _ as usize },
1586        32usize,
1587        concat!(
1588            "Offset of field: ",
1589            stringify!(random_data),
1590            "::",
1591            stringify!(rand_sep)
1592        )
1593    );
1594    assert_eq!(
1595        unsafe { &(*(::core::ptr::null::<random_data>())).end_ptr as *const _ as usize },
1596        40usize,
1597        concat!(
1598            "Offset of field: ",
1599            stringify!(random_data),
1600            "::",
1601            stringify!(end_ptr)
1602        )
1603    );
1604}
1605extern "C" {
1606    pub fn random_r(__buf: *mut random_data, __result: *mut i32) -> cty::c_int;
1607}
1608extern "C" {
1609    pub fn srandom_r(__seed: cty::c_uint, __buf: *mut random_data) -> cty::c_int;
1610}
1611extern "C" {
1612    pub fn initstate_r(
1613        __seed: cty::c_uint,
1614        __statebuf: *mut cty::c_char,
1615        __statelen: usize,
1616        __buf: *mut random_data,
1617    ) -> cty::c_int;
1618}
1619extern "C" {
1620    pub fn setstate_r(__statebuf: *mut cty::c_char, __buf: *mut random_data) -> cty::c_int;
1621}
1622extern "C" {
1623    pub fn rand() -> cty::c_int;
1624}
1625extern "C" {
1626    pub fn srand(__seed: cty::c_uint);
1627}
1628extern "C" {
1629    pub fn rand_r(__seed: *mut cty::c_uint) -> cty::c_int;
1630}
1631extern "C" {
1632    pub fn drand48() -> f64;
1633}
1634extern "C" {
1635    pub fn erand48(__xsubi: *mut cty::c_ushort) -> f64;
1636}
1637extern "C" {
1638    pub fn lrand48() -> cty::c_long;
1639}
1640extern "C" {
1641    pub fn nrand48(__xsubi: *mut cty::c_ushort) -> cty::c_long;
1642}
1643extern "C" {
1644    pub fn mrand48() -> cty::c_long;
1645}
1646extern "C" {
1647    pub fn jrand48(__xsubi: *mut cty::c_ushort) -> cty::c_long;
1648}
1649extern "C" {
1650    pub fn srand48(__seedval: cty::c_long);
1651}
1652extern "C" {
1653    pub fn seed48(__seed16v: *mut cty::c_ushort) -> *mut cty::c_ushort;
1654}
1655extern "C" {
1656    pub fn lcong48(__param: *mut cty::c_ushort);
1657}
1658#[repr(C)]
1659#[derive(Debug, Copy, Clone)]
1660pub struct drand48_data {
1661    pub __x: [cty::c_ushort; 3usize],
1662    pub __old_x: [cty::c_ushort; 3usize],
1663    pub __c: cty::c_ushort,
1664    pub __init: cty::c_ushort,
1665    pub __a: cty::c_ulonglong,
1666}
1667#[test]
1668fn bindgen_test_layout_drand48_data() {
1669    assert_eq!(
1670        ::core::mem::size_of::<drand48_data>(),
1671        24usize,
1672        concat!("Size of: ", stringify!(drand48_data))
1673    );
1674    assert_eq!(
1675        ::core::mem::align_of::<drand48_data>(),
1676        8usize,
1677        concat!("Alignment of ", stringify!(drand48_data))
1678    );
1679    assert_eq!(
1680        unsafe { &(*(::core::ptr::null::<drand48_data>())).__x as *const _ as usize },
1681        0usize,
1682        concat!(
1683            "Offset of field: ",
1684            stringify!(drand48_data),
1685            "::",
1686            stringify!(__x)
1687        )
1688    );
1689    assert_eq!(
1690        unsafe { &(*(::core::ptr::null::<drand48_data>())).__old_x as *const _ as usize },
1691        6usize,
1692        concat!(
1693            "Offset of field: ",
1694            stringify!(drand48_data),
1695            "::",
1696            stringify!(__old_x)
1697        )
1698    );
1699    assert_eq!(
1700        unsafe { &(*(::core::ptr::null::<drand48_data>())).__c as *const _ as usize },
1701        12usize,
1702        concat!(
1703            "Offset of field: ",
1704            stringify!(drand48_data),
1705            "::",
1706            stringify!(__c)
1707        )
1708    );
1709    assert_eq!(
1710        unsafe { &(*(::core::ptr::null::<drand48_data>())).__init as *const _ as usize },
1711        14usize,
1712        concat!(
1713            "Offset of field: ",
1714            stringify!(drand48_data),
1715            "::",
1716            stringify!(__init)
1717        )
1718    );
1719    assert_eq!(
1720        unsafe { &(*(::core::ptr::null::<drand48_data>())).__a as *const _ as usize },
1721        16usize,
1722        concat!(
1723            "Offset of field: ",
1724            stringify!(drand48_data),
1725            "::",
1726            stringify!(__a)
1727        )
1728    );
1729}
1730extern "C" {
1731    pub fn drand48_r(__buffer: *mut drand48_data, __result: *mut f64) -> cty::c_int;
1732}
1733extern "C" {
1734    pub fn erand48_r(
1735        __xsubi: *mut cty::c_ushort,
1736        __buffer: *mut drand48_data,
1737        __result: *mut f64,
1738    ) -> cty::c_int;
1739}
1740extern "C" {
1741    pub fn lrand48_r(__buffer: *mut drand48_data, __result: *mut cty::c_long) -> cty::c_int;
1742}
1743extern "C" {
1744    pub fn nrand48_r(
1745        __xsubi: *mut cty::c_ushort,
1746        __buffer: *mut drand48_data,
1747        __result: *mut cty::c_long,
1748    ) -> cty::c_int;
1749}
1750extern "C" {
1751    pub fn mrand48_r(__buffer: *mut drand48_data, __result: *mut cty::c_long) -> cty::c_int;
1752}
1753extern "C" {
1754    pub fn jrand48_r(
1755        __xsubi: *mut cty::c_ushort,
1756        __buffer: *mut drand48_data,
1757        __result: *mut cty::c_long,
1758    ) -> cty::c_int;
1759}
1760extern "C" {
1761    pub fn srand48_r(__seedval: cty::c_long, __buffer: *mut drand48_data) -> cty::c_int;
1762}
1763extern "C" {
1764    pub fn seed48_r(__seed16v: *mut cty::c_ushort, __buffer: *mut drand48_data) -> cty::c_int;
1765}
1766extern "C" {
1767    pub fn lcong48_r(__param: *mut cty::c_ushort, __buffer: *mut drand48_data) -> cty::c_int;
1768}
1769extern "C" {
1770    pub fn malloc(__size: usize) -> *mut cty::c_void;
1771}
1772extern "C" {
1773    pub fn calloc(__nmemb: usize, __size: usize) -> *mut cty::c_void;
1774}
1775extern "C" {
1776    pub fn realloc(__ptr: *mut cty::c_void, __size: usize) -> *mut cty::c_void;
1777}
1778extern "C" {
1779    pub fn free(__ptr: *mut cty::c_void);
1780}
1781extern "C" {
1782    pub fn alloca(__size: usize) -> *mut cty::c_void;
1783}
1784extern "C" {
1785    pub fn valloc(__size: usize) -> *mut cty::c_void;
1786}
1787extern "C" {
1788    pub fn posix_memalign(
1789        __memptr: *mut *mut cty::c_void,
1790        __alignment: usize,
1791        __size: usize,
1792    ) -> cty::c_int;
1793}
1794extern "C" {
1795    pub fn aligned_alloc(__alignment: usize, __size: usize) -> *mut cty::c_void;
1796}
1797extern "C" {
1798    pub fn atexit(__func: ::core::option::Option<unsafe extern "C" fn()>) -> cty::c_int;
1799}
1800extern "C" {
1801    pub fn at_quick_exit(__func: ::core::option::Option<unsafe extern "C" fn()>) -> cty::c_int;
1802}
1803extern "C" {
1804    pub fn on_exit(
1805        __func: ::core::option::Option<
1806            unsafe extern "C" fn(__status: cty::c_int, __arg: *mut cty::c_void),
1807        >,
1808        __arg: *mut cty::c_void,
1809    ) -> cty::c_int;
1810}
1811extern "C" {
1812    pub fn quick_exit(__status: cty::c_int);
1813}
1814extern "C" {
1815    pub fn _Exit(__status: cty::c_int);
1816}
1817extern "C" {
1818    pub fn getenv(__name: *const cty::c_char) -> *mut cty::c_char;
1819}
1820extern "C" {
1821    pub fn putenv(__string: *mut cty::c_char) -> cty::c_int;
1822}
1823extern "C" {
1824    pub fn setenv(
1825        __name: *const cty::c_char,
1826        __value: *const cty::c_char,
1827        __replace: cty::c_int,
1828    ) -> cty::c_int;
1829}
1830extern "C" {
1831    pub fn unsetenv(__name: *const cty::c_char) -> cty::c_int;
1832}
1833extern "C" {
1834    pub fn clearenv() -> cty::c_int;
1835}
1836extern "C" {
1837    pub fn mktemp(__template: *mut cty::c_char) -> *mut cty::c_char;
1838}
1839extern "C" {
1840    pub fn mkstemp(__template: *mut cty::c_char) -> cty::c_int;
1841}
1842extern "C" {
1843    pub fn mkstemps(__template: *mut cty::c_char, __suffixlen: cty::c_int) -> cty::c_int;
1844}
1845extern "C" {
1846    pub fn mkdtemp(__template: *mut cty::c_char) -> *mut cty::c_char;
1847}
1848extern "C" {
1849    pub fn system(__command: *const cty::c_char) -> cty::c_int;
1850}
1851extern "C" {
1852    pub fn realpath(__name: *const cty::c_char, __resolved: *mut cty::c_char) -> *mut cty::c_char;
1853}
1854pub type __compar_fn_t = ::core::option::Option<
1855    unsafe extern "C" fn(arg1: *const cty::c_void, arg2: *const cty::c_void) -> cty::c_int,
1856>;
1857extern "C" {
1858    pub fn bsearch(
1859        __key: *const cty::c_void,
1860        _start: *const cty::c_void,
1861        __nmemb: usize,
1862        __size: usize,
1863        __compar: __compar_fn_t,
1864    ) -> *mut cty::c_void;
1865}
1866extern "C" {
1867    pub fn qsort(_start: *mut cty::c_void, __nmemb: usize, __size: usize, __compar: __compar_fn_t);
1868}
1869extern "C" {
1870    pub fn abs(__x: cty::c_int) -> cty::c_int;
1871}
1872extern "C" {
1873    pub fn labs(__x: cty::c_long) -> cty::c_long;
1874}
1875extern "C" {
1876    pub fn llabs(__x: cty::c_longlong) -> cty::c_longlong;
1877}
1878extern "C" {
1879    pub fn div(__numer: cty::c_int, __denom: cty::c_int) -> div_t;
1880}
1881extern "C" {
1882    pub fn ldiv(__numer: cty::c_long, __denom: cty::c_long) -> ldiv_t;
1883}
1884extern "C" {
1885    pub fn lldiv(__numer: cty::c_longlong, __denom: cty::c_longlong) -> lldiv_t;
1886}
1887extern "C" {
1888    pub fn ecvt(
1889        __value: f64,
1890        __ndigit: cty::c_int,
1891        __decpt: *mut cty::c_int,
1892        __sign: *mut cty::c_int,
1893    ) -> *mut cty::c_char;
1894}
1895extern "C" {
1896    pub fn fcvt(
1897        __value: f64,
1898        __ndigit: cty::c_int,
1899        __decpt: *mut cty::c_int,
1900        __sign: *mut cty::c_int,
1901    ) -> *mut cty::c_char;
1902}
1903extern "C" {
1904    pub fn gcvt(__value: f64, __ndigit: cty::c_int, __buf: *mut cty::c_char) -> *mut cty::c_char;
1905}
1906extern "C" {
1907    pub fn qecvt(
1908        __value: u128,
1909        __ndigit: cty::c_int,
1910        __decpt: *mut cty::c_int,
1911        __sign: *mut cty::c_int,
1912    ) -> *mut cty::c_char;
1913}
1914extern "C" {
1915    pub fn qfcvt(
1916        __value: u128,
1917        __ndigit: cty::c_int,
1918        __decpt: *mut cty::c_int,
1919        __sign: *mut cty::c_int,
1920    ) -> *mut cty::c_char;
1921}
1922extern "C" {
1923    pub fn qgcvt(__value: u128, __ndigit: cty::c_int, __buf: *mut cty::c_char) -> *mut cty::c_char;
1924}
1925extern "C" {
1926    pub fn ecvt_r(
1927        __value: f64,
1928        __ndigit: cty::c_int,
1929        __decpt: *mut cty::c_int,
1930        __sign: *mut cty::c_int,
1931        __buf: *mut cty::c_char,
1932        __len: usize,
1933    ) -> cty::c_int;
1934}
1935extern "C" {
1936    pub fn fcvt_r(
1937        __value: f64,
1938        __ndigit: cty::c_int,
1939        __decpt: *mut cty::c_int,
1940        __sign: *mut cty::c_int,
1941        __buf: *mut cty::c_char,
1942        __len: usize,
1943    ) -> cty::c_int;
1944}
1945extern "C" {
1946    pub fn qecvt_r(
1947        __value: u128,
1948        __ndigit: cty::c_int,
1949        __decpt: *mut cty::c_int,
1950        __sign: *mut cty::c_int,
1951        __buf: *mut cty::c_char,
1952        __len: usize,
1953    ) -> cty::c_int;
1954}
1955extern "C" {
1956    pub fn qfcvt_r(
1957        __value: u128,
1958        __ndigit: cty::c_int,
1959        __decpt: *mut cty::c_int,
1960        __sign: *mut cty::c_int,
1961        __buf: *mut cty::c_char,
1962        __len: usize,
1963    ) -> cty::c_int;
1964}
1965extern "C" {
1966    pub fn mblen(__s: *const cty::c_char, __n: usize) -> cty::c_int;
1967}
1968extern "C" {
1969    pub fn mbtowc(__pwc: *mut wchar_t, __s: *const cty::c_char, __n: usize) -> cty::c_int;
1970}
1971extern "C" {
1972    pub fn wctomb(__s: *mut cty::c_char, __wchar: wchar_t) -> cty::c_int;
1973}
1974extern "C" {
1975    pub fn mbstowcs(__pwcs: *mut wchar_t, __s: *const cty::c_char, __n: usize) -> usize;
1976}
1977extern "C" {
1978    pub fn wcstombs(__s: *mut cty::c_char, __pwcs: *const wchar_t, __n: usize) -> usize;
1979}
1980extern "C" {
1981    pub fn rpmatch(__response: *const cty::c_char) -> cty::c_int;
1982}
1983extern "C" {
1984    pub fn getsubopt(
1985        __optionp: *mut *mut cty::c_char,
1986        __tokens: *const *mut cty::c_char,
1987        __valuep: *mut *mut cty::c_char,
1988    ) -> cty::c_int;
1989}
1990extern "C" {
1991    pub fn getloadavg(__loadavg: *mut f64, __nelem: cty::c_int) -> cty::c_int;
1992}
1993pub type va_list = __builtin_va_list;
1994pub type __gnuc_va_list = __builtin_va_list;
1995#[repr(C)]
1996#[derive(Copy, Clone)]
1997pub struct __mbstate_t {
1998    pub __count: cty::c_int,
1999    pub __value: __mbstate_t__bindgen_ty_1,
2000}
2001#[repr(C)]
2002#[repr(align(4))]
2003#[derive(Copy, Clone)]
2004pub union __mbstate_t__bindgen_ty_1 {
2005    pub __wch: cty::c_uint,
2006    pub __wchb: [cty::c_char; 4usize],
2007    _bindgen_union_align: u32,
2008}
2009#[test]
2010fn bindgen_test_layout___mbstate_t__bindgen_ty_1() {
2011    assert_eq!(
2012        ::core::mem::size_of::<__mbstate_t__bindgen_ty_1>(),
2013        4usize,
2014        concat!("Size of: ", stringify!(__mbstate_t__bindgen_ty_1))
2015    );
2016    assert_eq!(
2017        ::core::mem::align_of::<__mbstate_t__bindgen_ty_1>(),
2018        4usize,
2019        concat!("Alignment of ", stringify!(__mbstate_t__bindgen_ty_1))
2020    );
2021    assert_eq!(
2022        unsafe {
2023            &(*(::core::ptr::null::<__mbstate_t__bindgen_ty_1>())).__wch as *const _ as usize
2024        },
2025        0usize,
2026        concat!(
2027            "Offset of field: ",
2028            stringify!(__mbstate_t__bindgen_ty_1),
2029            "::",
2030            stringify!(__wch)
2031        )
2032    );
2033    assert_eq!(
2034        unsafe {
2035            &(*(::core::ptr::null::<__mbstate_t__bindgen_ty_1>())).__wchb as *const _ as usize
2036        },
2037        0usize,
2038        concat!(
2039            "Offset of field: ",
2040            stringify!(__mbstate_t__bindgen_ty_1),
2041            "::",
2042            stringify!(__wchb)
2043        )
2044    );
2045}
2046#[test]
2047fn bindgen_test_layout___mbstate_t() {
2048    assert_eq!(
2049        ::core::mem::size_of::<__mbstate_t>(),
2050        8usize,
2051        concat!("Size of: ", stringify!(__mbstate_t))
2052    );
2053    assert_eq!(
2054        ::core::mem::align_of::<__mbstate_t>(),
2055        4usize,
2056        concat!("Alignment of ", stringify!(__mbstate_t))
2057    );
2058    assert_eq!(
2059        unsafe { &(*(::core::ptr::null::<__mbstate_t>())).__count as *const _ as usize },
2060        0usize,
2061        concat!(
2062            "Offset of field: ",
2063            stringify!(__mbstate_t),
2064            "::",
2065            stringify!(__count)
2066        )
2067    );
2068    assert_eq!(
2069        unsafe { &(*(::core::ptr::null::<__mbstate_t>())).__value as *const _ as usize },
2070        4usize,
2071        concat!(
2072            "Offset of field: ",
2073            stringify!(__mbstate_t),
2074            "::",
2075            stringify!(__value)
2076        )
2077    );
2078}
2079#[repr(C)]
2080#[derive(Copy, Clone)]
2081pub struct _G_fpos_t {
2082    pub __pos: __off_t,
2083    pub __state: __mbstate_t,
2084}
2085#[test]
2086fn bindgen_test_layout__G_fpos_t() {
2087    assert_eq!(
2088        ::core::mem::size_of::<_G_fpos_t>(),
2089        16usize,
2090        concat!("Size of: ", stringify!(_G_fpos_t))
2091    );
2092    assert_eq!(
2093        ::core::mem::align_of::<_G_fpos_t>(),
2094        8usize,
2095        concat!("Alignment of ", stringify!(_G_fpos_t))
2096    );
2097    assert_eq!(
2098        unsafe { &(*(::core::ptr::null::<_G_fpos_t>())).__pos as *const _ as usize },
2099        0usize,
2100        concat!(
2101            "Offset of field: ",
2102            stringify!(_G_fpos_t),
2103            "::",
2104            stringify!(__pos)
2105        )
2106    );
2107    assert_eq!(
2108        unsafe { &(*(::core::ptr::null::<_G_fpos_t>())).__state as *const _ as usize },
2109        8usize,
2110        concat!(
2111            "Offset of field: ",
2112            stringify!(_G_fpos_t),
2113            "::",
2114            stringify!(__state)
2115        )
2116    );
2117}
2118pub type __fpos_t = _G_fpos_t;
2119#[repr(C)]
2120#[derive(Copy, Clone)]
2121pub struct _G_fpos64_t {
2122    pub __pos: __off64_t,
2123    pub __state: __mbstate_t,
2124}
2125#[test]
2126fn bindgen_test_layout__G_fpos64_t() {
2127    assert_eq!(
2128        ::core::mem::size_of::<_G_fpos64_t>(),
2129        16usize,
2130        concat!("Size of: ", stringify!(_G_fpos64_t))
2131    );
2132    assert_eq!(
2133        ::core::mem::align_of::<_G_fpos64_t>(),
2134        8usize,
2135        concat!("Alignment of ", stringify!(_G_fpos64_t))
2136    );
2137    assert_eq!(
2138        unsafe { &(*(::core::ptr::null::<_G_fpos64_t>())).__pos as *const _ as usize },
2139        0usize,
2140        concat!(
2141            "Offset of field: ",
2142            stringify!(_G_fpos64_t),
2143            "::",
2144            stringify!(__pos)
2145        )
2146    );
2147    assert_eq!(
2148        unsafe { &(*(::core::ptr::null::<_G_fpos64_t>())).__state as *const _ as usize },
2149        8usize,
2150        concat!(
2151            "Offset of field: ",
2152            stringify!(_G_fpos64_t),
2153            "::",
2154            stringify!(__state)
2155        )
2156    );
2157}
2158pub type __fpos64_t = _G_fpos64_t;
2159pub type __FILE = _IO_FILE;
2160pub type FILE = _IO_FILE;
2161#[repr(C)]
2162#[derive(Debug, Copy, Clone)]
2163pub struct _IO_marker {
2164    _unused: [u8; 0],
2165}
2166#[repr(C)]
2167#[derive(Debug, Copy, Clone)]
2168pub struct _IO_codecvt {
2169    _unused: [u8; 0],
2170}
2171#[repr(C)]
2172#[derive(Debug, Copy, Clone)]
2173pub struct _IO_wide_data {
2174    _unused: [u8; 0],
2175}
2176pub type _IO_lock_t = cty::c_void;
2177#[repr(C)]
2178#[derive(Debug, Copy, Clone)]
2179pub struct _IO_FILE {
2180    pub _flags: cty::c_int,
2181    pub _IO_read_ptr: *mut cty::c_char,
2182    pub _IO_read_end: *mut cty::c_char,
2183    pub _IO_read_base: *mut cty::c_char,
2184    pub _IO_write_base: *mut cty::c_char,
2185    pub _IO_write_ptr: *mut cty::c_char,
2186    pub _IO_write_end: *mut cty::c_char,
2187    pub _IO_buf_base: *mut cty::c_char,
2188    pub _IO_buf_end: *mut cty::c_char,
2189    pub _IO_save_base: *mut cty::c_char,
2190    pub _IO_backup_base: *mut cty::c_char,
2191    pub _IO_save_end: *mut cty::c_char,
2192    pub _markers: *mut _IO_marker,
2193    pub _chain: *mut _IO_FILE,
2194    pub _fileno: cty::c_int,
2195    pub _flags2: cty::c_int,
2196    pub _old_offset: __off_t,
2197    pub _cur_column: cty::c_ushort,
2198    pub _vtable_offset: cty::c_schar,
2199    pub _shortbuf: [cty::c_char; 1usize],
2200    pub _lock: *mut _IO_lock_t,
2201    pub _offset: __off64_t,
2202    pub _codecvt: *mut _IO_codecvt,
2203    pub _wide_data: *mut _IO_wide_data,
2204    pub _freeres_list: *mut _IO_FILE,
2205    pub _freeres_buf: *mut cty::c_void,
2206    pub __pad5: usize,
2207    pub _mode: cty::c_int,
2208    pub _unused2: [cty::c_char; 20usize],
2209}
2210#[test]
2211fn bindgen_test_layout__IO_FILE() {
2212    assert_eq!(
2213        ::core::mem::size_of::<_IO_FILE>(),
2214        216usize,
2215        concat!("Size of: ", stringify!(_IO_FILE))
2216    );
2217    assert_eq!(
2218        ::core::mem::align_of::<_IO_FILE>(),
2219        8usize,
2220        concat!("Alignment of ", stringify!(_IO_FILE))
2221    );
2222    assert_eq!(
2223        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._flags as *const _ as usize },
2224        0usize,
2225        concat!(
2226            "Offset of field: ",
2227            stringify!(_IO_FILE),
2228            "::",
2229            stringify!(_flags)
2230        )
2231    );
2232    assert_eq!(
2233        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._IO_read_ptr as *const _ as usize },
2234        8usize,
2235        concat!(
2236            "Offset of field: ",
2237            stringify!(_IO_FILE),
2238            "::",
2239            stringify!(_IO_read_ptr)
2240        )
2241    );
2242    assert_eq!(
2243        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._IO_read_end as *const _ as usize },
2244        16usize,
2245        concat!(
2246            "Offset of field: ",
2247            stringify!(_IO_FILE),
2248            "::",
2249            stringify!(_IO_read_end)
2250        )
2251    );
2252    assert_eq!(
2253        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._IO_read_base as *const _ as usize },
2254        24usize,
2255        concat!(
2256            "Offset of field: ",
2257            stringify!(_IO_FILE),
2258            "::",
2259            stringify!(_IO_read_base)
2260        )
2261    );
2262    assert_eq!(
2263        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._IO_write_base as *const _ as usize },
2264        32usize,
2265        concat!(
2266            "Offset of field: ",
2267            stringify!(_IO_FILE),
2268            "::",
2269            stringify!(_IO_write_base)
2270        )
2271    );
2272    assert_eq!(
2273        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._IO_write_ptr as *const _ as usize },
2274        40usize,
2275        concat!(
2276            "Offset of field: ",
2277            stringify!(_IO_FILE),
2278            "::",
2279            stringify!(_IO_write_ptr)
2280        )
2281    );
2282    assert_eq!(
2283        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._IO_write_end as *const _ as usize },
2284        48usize,
2285        concat!(
2286            "Offset of field: ",
2287            stringify!(_IO_FILE),
2288            "::",
2289            stringify!(_IO_write_end)
2290        )
2291    );
2292    assert_eq!(
2293        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._IO_buf_base as *const _ as usize },
2294        56usize,
2295        concat!(
2296            "Offset of field: ",
2297            stringify!(_IO_FILE),
2298            "::",
2299            stringify!(_IO_buf_base)
2300        )
2301    );
2302    assert_eq!(
2303        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._IO_buf_end as *const _ as usize },
2304        64usize,
2305        concat!(
2306            "Offset of field: ",
2307            stringify!(_IO_FILE),
2308            "::",
2309            stringify!(_IO_buf_end)
2310        )
2311    );
2312    assert_eq!(
2313        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._IO_save_base as *const _ as usize },
2314        72usize,
2315        concat!(
2316            "Offset of field: ",
2317            stringify!(_IO_FILE),
2318            "::",
2319            stringify!(_IO_save_base)
2320        )
2321    );
2322    assert_eq!(
2323        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._IO_backup_base as *const _ as usize },
2324        80usize,
2325        concat!(
2326            "Offset of field: ",
2327            stringify!(_IO_FILE),
2328            "::",
2329            stringify!(_IO_backup_base)
2330        )
2331    );
2332    assert_eq!(
2333        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._IO_save_end as *const _ as usize },
2334        88usize,
2335        concat!(
2336            "Offset of field: ",
2337            stringify!(_IO_FILE),
2338            "::",
2339            stringify!(_IO_save_end)
2340        )
2341    );
2342    assert_eq!(
2343        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._markers as *const _ as usize },
2344        96usize,
2345        concat!(
2346            "Offset of field: ",
2347            stringify!(_IO_FILE),
2348            "::",
2349            stringify!(_markers)
2350        )
2351    );
2352    assert_eq!(
2353        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._chain as *const _ as usize },
2354        104usize,
2355        concat!(
2356            "Offset of field: ",
2357            stringify!(_IO_FILE),
2358            "::",
2359            stringify!(_chain)
2360        )
2361    );
2362    assert_eq!(
2363        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._fileno as *const _ as usize },
2364        112usize,
2365        concat!(
2366            "Offset of field: ",
2367            stringify!(_IO_FILE),
2368            "::",
2369            stringify!(_fileno)
2370        )
2371    );
2372    assert_eq!(
2373        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._flags2 as *const _ as usize },
2374        116usize,
2375        concat!(
2376            "Offset of field: ",
2377            stringify!(_IO_FILE),
2378            "::",
2379            stringify!(_flags2)
2380        )
2381    );
2382    assert_eq!(
2383        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._old_offset as *const _ as usize },
2384        120usize,
2385        concat!(
2386            "Offset of field: ",
2387            stringify!(_IO_FILE),
2388            "::",
2389            stringify!(_old_offset)
2390        )
2391    );
2392    assert_eq!(
2393        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._cur_column as *const _ as usize },
2394        128usize,
2395        concat!(
2396            "Offset of field: ",
2397            stringify!(_IO_FILE),
2398            "::",
2399            stringify!(_cur_column)
2400        )
2401    );
2402    assert_eq!(
2403        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._vtable_offset as *const _ as usize },
2404        130usize,
2405        concat!(
2406            "Offset of field: ",
2407            stringify!(_IO_FILE),
2408            "::",
2409            stringify!(_vtable_offset)
2410        )
2411    );
2412    assert_eq!(
2413        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._shortbuf as *const _ as usize },
2414        131usize,
2415        concat!(
2416            "Offset of field: ",
2417            stringify!(_IO_FILE),
2418            "::",
2419            stringify!(_shortbuf)
2420        )
2421    );
2422    assert_eq!(
2423        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._lock as *const _ as usize },
2424        136usize,
2425        concat!(
2426            "Offset of field: ",
2427            stringify!(_IO_FILE),
2428            "::",
2429            stringify!(_lock)
2430        )
2431    );
2432    assert_eq!(
2433        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._offset as *const _ as usize },
2434        144usize,
2435        concat!(
2436            "Offset of field: ",
2437            stringify!(_IO_FILE),
2438            "::",
2439            stringify!(_offset)
2440        )
2441    );
2442    assert_eq!(
2443        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._codecvt as *const _ as usize },
2444        152usize,
2445        concat!(
2446            "Offset of field: ",
2447            stringify!(_IO_FILE),
2448            "::",
2449            stringify!(_codecvt)
2450        )
2451    );
2452    assert_eq!(
2453        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._wide_data as *const _ as usize },
2454        160usize,
2455        concat!(
2456            "Offset of field: ",
2457            stringify!(_IO_FILE),
2458            "::",
2459            stringify!(_wide_data)
2460        )
2461    );
2462    assert_eq!(
2463        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._freeres_list as *const _ as usize },
2464        168usize,
2465        concat!(
2466            "Offset of field: ",
2467            stringify!(_IO_FILE),
2468            "::",
2469            stringify!(_freeres_list)
2470        )
2471    );
2472    assert_eq!(
2473        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._freeres_buf as *const _ as usize },
2474        176usize,
2475        concat!(
2476            "Offset of field: ",
2477            stringify!(_IO_FILE),
2478            "::",
2479            stringify!(_freeres_buf)
2480        )
2481    );
2482    assert_eq!(
2483        unsafe { &(*(::core::ptr::null::<_IO_FILE>())).__pad5 as *const _ as usize },
2484        184usize,
2485        concat!(
2486            "Offset of field: ",
2487            stringify!(_IO_FILE),
2488            "::",
2489            stringify!(__pad5)
2490        )
2491    );
2492    assert_eq!(
2493        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._mode as *const _ as usize },
2494        192usize,
2495        concat!(
2496            "Offset of field: ",
2497            stringify!(_IO_FILE),
2498            "::",
2499            stringify!(_mode)
2500        )
2501    );
2502    assert_eq!(
2503        unsafe { &(*(::core::ptr::null::<_IO_FILE>()))._unused2 as *const _ as usize },
2504        196usize,
2505        concat!(
2506            "Offset of field: ",
2507            stringify!(_IO_FILE),
2508            "::",
2509            stringify!(_unused2)
2510        )
2511    );
2512}
2513pub type fpos_t = __fpos_t;
2514extern "C" {
2515    pub fn remove(__filename: *const cty::c_char) -> cty::c_int;
2516}
2517extern "C" {
2518    pub fn rename(__old: *const cty::c_char, __new: *const cty::c_char) -> cty::c_int;
2519}
2520extern "C" {
2521    pub fn renameat(
2522        __oldfd: cty::c_int,
2523        __old: *const cty::c_char,
2524        __newfd: cty::c_int,
2525        __new: *const cty::c_char,
2526    ) -> cty::c_int;
2527}
2528extern "C" {
2529    pub fn tmpfile() -> *mut FILE;
2530}
2531extern "C" {
2532    pub fn tmpnam(__s: *mut cty::c_char) -> *mut cty::c_char;
2533}
2534extern "C" {
2535    pub fn tmpnam_r(__s: *mut cty::c_char) -> *mut cty::c_char;
2536}
2537extern "C" {
2538    pub fn tempnam(__dir: *const cty::c_char, __pfx: *const cty::c_char) -> *mut cty::c_char;
2539}
2540extern "C" {
2541    pub fn fclose(__stream: *mut FILE) -> cty::c_int;
2542}
2543extern "C" {
2544    pub fn fflush(__stream: *mut FILE) -> cty::c_int;
2545}
2546extern "C" {
2547    pub fn fflush_unlocked(__stream: *mut FILE) -> cty::c_int;
2548}
2549extern "C" {
2550    pub fn fopen(__filename: *const cty::c_char, __modes: *const cty::c_char) -> *mut FILE;
2551}
2552extern "C" {
2553    pub fn freopen(
2554        __filename: *const cty::c_char,
2555        __modes: *const cty::c_char,
2556        __stream: *mut FILE,
2557    ) -> *mut FILE;
2558}
2559extern "C" {
2560    pub fn fdopen(__fd: cty::c_int, __modes: *const cty::c_char) -> *mut FILE;
2561}
2562extern "C" {
2563    pub fn fmemopen(__s: *mut cty::c_void, __len: usize, __modes: *const cty::c_char) -> *mut FILE;
2564}
2565extern "C" {
2566    pub fn open_memstream(__bufloc: *mut *mut cty::c_char, __sizeloc: *mut usize) -> *mut FILE;
2567}
2568extern "C" {
2569    pub fn setbuf(__stream: *mut FILE, __buf: *mut cty::c_char);
2570}
2571extern "C" {
2572    pub fn setvbuf(
2573        __stream: *mut FILE,
2574        __buf: *mut cty::c_char,
2575        __modes: cty::c_int,
2576        __n: usize,
2577    ) -> cty::c_int;
2578}
2579extern "C" {
2580    pub fn setbuffer(__stream: *mut FILE, __buf: *mut cty::c_char, __size: usize);
2581}
2582extern "C" {
2583    pub fn setlinebuf(__stream: *mut FILE);
2584}
2585extern "C" {
2586    pub fn fprintf(__stream: *mut FILE, __format: *const cty::c_char, ...) -> cty::c_int;
2587}
2588extern "C" {
2589    pub fn printf(__format: *const cty::c_char, ...) -> cty::c_int;
2590}
2591extern "C" {
2592    pub fn sprintf(__s: *mut cty::c_char, __format: *const cty::c_char, ...) -> cty::c_int;
2593}
2594extern "C" {
2595    pub fn vfprintf(
2596        __s: *mut FILE,
2597        __format: *const cty::c_char,
2598        __arg: *mut __va_list_tag,
2599    ) -> cty::c_int;
2600}
2601extern "C" {
2602    pub fn vprintf(__format: *const cty::c_char, __arg: *mut __va_list_tag) -> cty::c_int;
2603}
2604extern "C" {
2605    pub fn vsprintf(
2606        __s: *mut cty::c_char,
2607        __format: *const cty::c_char,
2608        __arg: *mut __va_list_tag,
2609    ) -> cty::c_int;
2610}
2611extern "C" {
2612    pub fn snprintf(
2613        __s: *mut cty::c_char,
2614        __maxlen: usize,
2615        __format: *const cty::c_char,
2616        ...
2617    ) -> cty::c_int;
2618}
2619extern "C" {
2620    pub fn vsnprintf(
2621        __s: *mut cty::c_char,
2622        __maxlen: usize,
2623        __format: *const cty::c_char,
2624        __arg: *mut __va_list_tag,
2625    ) -> cty::c_int;
2626}
2627extern "C" {
2628    pub fn vdprintf(
2629        __fd: cty::c_int,
2630        __fmt: *const cty::c_char,
2631        __arg: *mut __va_list_tag,
2632    ) -> cty::c_int;
2633}
2634extern "C" {
2635    pub fn dprintf(__fd: cty::c_int, __fmt: *const cty::c_char, ...) -> cty::c_int;
2636}
2637extern "C" {
2638    pub fn fscanf(__stream: *mut FILE, __format: *const cty::c_char, ...) -> cty::c_int;
2639}
2640extern "C" {
2641    pub fn scanf(__format: *const cty::c_char, ...) -> cty::c_int;
2642}
2643extern "C" {
2644    pub fn sscanf(__s: *const cty::c_char, __format: *const cty::c_char, ...) -> cty::c_int;
2645}
2646extern "C" {
2647    #[link_name = "\u{1}__isoc99_fscanf"]
2648    pub fn fscanf1(__stream: *mut FILE, __format: *const cty::c_char, ...) -> cty::c_int;
2649}
2650extern "C" {
2651    #[link_name = "\u{1}__isoc99_scanf"]
2652    pub fn scanf1(__format: *const cty::c_char, ...) -> cty::c_int;
2653}
2654extern "C" {
2655    #[link_name = "\u{1}__isoc99_sscanf"]
2656    pub fn sscanf1(__s: *const cty::c_char, __format: *const cty::c_char, ...) -> cty::c_int;
2657}
2658extern "C" {
2659    pub fn vfscanf(
2660        __s: *mut FILE,
2661        __format: *const cty::c_char,
2662        __arg: *mut __va_list_tag,
2663    ) -> cty::c_int;
2664}
2665extern "C" {
2666    pub fn vscanf(__format: *const cty::c_char, __arg: *mut __va_list_tag) -> cty::c_int;
2667}
2668extern "C" {
2669    pub fn vsscanf(
2670        __s: *const cty::c_char,
2671        __format: *const cty::c_char,
2672        __arg: *mut __va_list_tag,
2673    ) -> cty::c_int;
2674}
2675extern "C" {
2676    #[link_name = "\u{1}__isoc99_vfscanf"]
2677    pub fn vfscanf1(
2678        __s: *mut FILE,
2679        __format: *const cty::c_char,
2680        __arg: *mut __va_list_tag,
2681    ) -> cty::c_int;
2682}
2683extern "C" {
2684    #[link_name = "\u{1}__isoc99_vscanf"]
2685    pub fn vscanf1(__format: *const cty::c_char, __arg: *mut __va_list_tag) -> cty::c_int;
2686}
2687extern "C" {
2688    #[link_name = "\u{1}__isoc99_vsscanf"]
2689    pub fn vsscanf1(
2690        __s: *const cty::c_char,
2691        __format: *const cty::c_char,
2692        __arg: *mut __va_list_tag,
2693    ) -> cty::c_int;
2694}
2695extern "C" {
2696    pub fn fgetc(__stream: *mut FILE) -> cty::c_int;
2697}
2698extern "C" {
2699    pub fn getc(__stream: *mut FILE) -> cty::c_int;
2700}
2701extern "C" {
2702    pub fn getchar() -> cty::c_int;
2703}
2704extern "C" {
2705    pub fn getc_unlocked(__stream: *mut FILE) -> cty::c_int;
2706}
2707extern "C" {
2708    pub fn getchar_unlocked() -> cty::c_int;
2709}
2710extern "C" {
2711    pub fn fgetc_unlocked(__stream: *mut FILE) -> cty::c_int;
2712}
2713extern "C" {
2714    pub fn fputc(__c: cty::c_int, __stream: *mut FILE) -> cty::c_int;
2715}
2716extern "C" {
2717    pub fn putc(__c: cty::c_int, __stream: *mut FILE) -> cty::c_int;
2718}
2719extern "C" {
2720    pub fn putchar(__c: cty::c_int) -> cty::c_int;
2721}
2722extern "C" {
2723    pub fn fputc_unlocked(__c: cty::c_int, __stream: *mut FILE) -> cty::c_int;
2724}
2725extern "C" {
2726    pub fn putc_unlocked(__c: cty::c_int, __stream: *mut FILE) -> cty::c_int;
2727}
2728extern "C" {
2729    pub fn putchar_unlocked(__c: cty::c_int) -> cty::c_int;
2730}
2731extern "C" {
2732    pub fn getw(__stream: *mut FILE) -> cty::c_int;
2733}
2734extern "C" {
2735    pub fn putw(__w: cty::c_int, __stream: *mut FILE) -> cty::c_int;
2736}
2737extern "C" {
2738    pub fn fgets(__s: *mut cty::c_char, __n: cty::c_int, __stream: *mut FILE) -> *mut cty::c_char;
2739}
2740extern "C" {
2741    pub fn __getdelim(
2742        __lineptr: *mut *mut cty::c_char,
2743        __n: *mut usize,
2744        __delimiter: cty::c_int,
2745        __stream: *mut FILE,
2746    ) -> __ssize_t;
2747}
2748extern "C" {
2749    pub fn getdelim(
2750        __lineptr: *mut *mut cty::c_char,
2751        __n: *mut usize,
2752        __delimiter: cty::c_int,
2753        __stream: *mut FILE,
2754    ) -> __ssize_t;
2755}
2756extern "C" {
2757    pub fn getline(
2758        __lineptr: *mut *mut cty::c_char,
2759        __n: *mut usize,
2760        __stream: *mut FILE,
2761    ) -> __ssize_t;
2762}
2763extern "C" {
2764    pub fn fputs(__s: *const cty::c_char, __stream: *mut FILE) -> cty::c_int;
2765}
2766extern "C" {
2767    pub fn puts(__s: *const cty::c_char) -> cty::c_int;
2768}
2769extern "C" {
2770    pub fn ungetc(__c: cty::c_int, __stream: *mut FILE) -> cty::c_int;
2771}
2772extern "C" {
2773    pub fn fread(
2774        __ptr: *mut cty::c_void,
2775        __size: usize,
2776        __n: usize,
2777        __stream: *mut FILE,
2778    ) -> cty::c_ulong;
2779}
2780extern "C" {
2781    pub fn fwrite(
2782        __ptr: *const cty::c_void,
2783        __size: usize,
2784        __n: usize,
2785        __s: *mut FILE,
2786    ) -> cty::c_ulong;
2787}
2788extern "C" {
2789    pub fn fread_unlocked(
2790        __ptr: *mut cty::c_void,
2791        __size: usize,
2792        __n: usize,
2793        __stream: *mut FILE,
2794    ) -> usize;
2795}
2796extern "C" {
2797    pub fn fwrite_unlocked(
2798        __ptr: *const cty::c_void,
2799        __size: usize,
2800        __n: usize,
2801        __stream: *mut FILE,
2802    ) -> usize;
2803}
2804extern "C" {
2805    pub fn fseek(__stream: *mut FILE, __off: cty::c_long, __whence: cty::c_int) -> cty::c_int;
2806}
2807extern "C" {
2808    pub fn ftell(__stream: *mut FILE) -> cty::c_long;
2809}
2810extern "C" {
2811    pub fn rewind(__stream: *mut FILE);
2812}
2813extern "C" {
2814    pub fn fseeko(__stream: *mut FILE, __off: __off_t, __whence: cty::c_int) -> cty::c_int;
2815}
2816extern "C" {
2817    pub fn ftello(__stream: *mut FILE) -> __off_t;
2818}
2819extern "C" {
2820    pub fn fgetpos(__stream: *mut FILE, __pos: *mut fpos_t) -> cty::c_int;
2821}
2822extern "C" {
2823    pub fn fsetpos(__stream: *mut FILE, __pos: *const fpos_t) -> cty::c_int;
2824}
2825extern "C" {
2826    pub fn clearerr(__stream: *mut FILE);
2827}
2828extern "C" {
2829    pub fn feof(__stream: *mut FILE) -> cty::c_int;
2830}
2831extern "C" {
2832    pub fn ferror(__stream: *mut FILE) -> cty::c_int;
2833}
2834extern "C" {
2835    pub fn clearerr_unlocked(__stream: *mut FILE);
2836}
2837extern "C" {
2838    pub fn feof_unlocked(__stream: *mut FILE) -> cty::c_int;
2839}
2840extern "C" {
2841    pub fn ferror_unlocked(__stream: *mut FILE) -> cty::c_int;
2842}
2843extern "C" {
2844    pub fn perror(__s: *const cty::c_char);
2845}
2846extern "C" {
2847    pub fn fileno(__stream: *mut FILE) -> cty::c_int;
2848}
2849extern "C" {
2850    pub fn fileno_unlocked(__stream: *mut FILE) -> cty::c_int;
2851}
2852extern "C" {
2853    pub fn popen(__command: *const cty::c_char, __modes: *const cty::c_char) -> *mut FILE;
2854}
2855extern "C" {
2856    pub fn pclose(__stream: *mut FILE) -> cty::c_int;
2857}
2858extern "C" {
2859    pub fn ctermid(__s: *mut cty::c_char) -> *mut cty::c_char;
2860}
2861extern "C" {
2862    pub fn flockfile(__stream: *mut FILE);
2863}
2864extern "C" {
2865    pub fn ftrylockfile(__stream: *mut FILE) -> cty::c_int;
2866}
2867extern "C" {
2868    pub fn funlockfile(__stream: *mut FILE);
2869}
2870extern "C" {
2871    pub fn __uflow(arg1: *mut FILE) -> cty::c_int;
2872}
2873extern "C" {
2874    pub fn __overflow(arg1: *mut FILE, arg2: cty::c_int) -> cty::c_int;
2875}
2876extern "C" {
2877    pub fn memcpy(
2878        __dest: *mut cty::c_void,
2879        __src: *const cty::c_void,
2880        __n: usize,
2881    ) -> *mut cty::c_void;
2882}
2883extern "C" {
2884    pub fn memmove(
2885        __dest: *mut cty::c_void,
2886        __src: *const cty::c_void,
2887        __n: usize,
2888    ) -> *mut cty::c_void;
2889}
2890extern "C" {
2891    pub fn memccpy(
2892        __dest: *mut cty::c_void,
2893        __src: *const cty::c_void,
2894        __c: cty::c_int,
2895        __n: usize,
2896    ) -> *mut cty::c_void;
2897}
2898extern "C" {
2899    pub fn memset(__s: *mut cty::c_void, __c: cty::c_int, __n: usize) -> *mut cty::c_void;
2900}
2901extern "C" {
2902    pub fn memcmp(__s1: *const cty::c_void, __s2: *const cty::c_void, __n: usize) -> cty::c_int;
2903}
2904extern "C" {
2905    pub fn memchr(__s: *const cty::c_void, __c: cty::c_int, __n: usize) -> *mut cty::c_void;
2906}
2907extern "C" {
2908    pub fn strcpy(__dest: *mut cty::c_char, __src: *const cty::c_char) -> *mut cty::c_char;
2909}
2910extern "C" {
2911    pub fn strncpy(
2912        __dest: *mut cty::c_char,
2913        __src: *const cty::c_char,
2914        __n: usize,
2915    ) -> *mut cty::c_char;
2916}
2917extern "C" {
2918    pub fn strcat(__dest: *mut cty::c_char, __src: *const cty::c_char) -> *mut cty::c_char;
2919}
2920extern "C" {
2921    pub fn strncat(
2922        __dest: *mut cty::c_char,
2923        __src: *const cty::c_char,
2924        __n: usize,
2925    ) -> *mut cty::c_char;
2926}
2927extern "C" {
2928    pub fn strcmp(__s1: *const cty::c_char, __s2: *const cty::c_char) -> cty::c_int;
2929}
2930extern "C" {
2931    pub fn strncmp(__s1: *const cty::c_char, __s2: *const cty::c_char, __n: usize) -> cty::c_int;
2932}
2933extern "C" {
2934    pub fn strcoll(__s1: *const cty::c_char, __s2: *const cty::c_char) -> cty::c_int;
2935}
2936extern "C" {
2937    pub fn strxfrm(__dest: *mut cty::c_char, __src: *const cty::c_char, __n: usize)
2938        -> cty::c_ulong;
2939}
2940#[repr(C)]
2941#[derive(Debug, Copy, Clone)]
2942pub struct __locale_struct {
2943    pub __locales: [*mut __locale_data; 13usize],
2944    pub __ctype_b: *const cty::c_ushort,
2945    pub __ctype_tolower: *const cty::c_int,
2946    pub __ctype_toupper: *const cty::c_int,
2947    pub __names: [*const cty::c_char; 13usize],
2948}
2949#[test]
2950fn bindgen_test_layout___locale_struct() {
2951    assert_eq!(
2952        ::core::mem::size_of::<__locale_struct>(),
2953        232usize,
2954        concat!("Size of: ", stringify!(__locale_struct))
2955    );
2956    assert_eq!(
2957        ::core::mem::align_of::<__locale_struct>(),
2958        8usize,
2959        concat!("Alignment of ", stringify!(__locale_struct))
2960    );
2961    assert_eq!(
2962        unsafe { &(*(::core::ptr::null::<__locale_struct>())).__locales as *const _ as usize },
2963        0usize,
2964        concat!(
2965            "Offset of field: ",
2966            stringify!(__locale_struct),
2967            "::",
2968            stringify!(__locales)
2969        )
2970    );
2971    assert_eq!(
2972        unsafe { &(*(::core::ptr::null::<__locale_struct>())).__ctype_b as *const _ as usize },
2973        104usize,
2974        concat!(
2975            "Offset of field: ",
2976            stringify!(__locale_struct),
2977            "::",
2978            stringify!(__ctype_b)
2979        )
2980    );
2981    assert_eq!(
2982        unsafe {
2983            &(*(::core::ptr::null::<__locale_struct>())).__ctype_tolower as *const _ as usize
2984        },
2985        112usize,
2986        concat!(
2987            "Offset of field: ",
2988            stringify!(__locale_struct),
2989            "::",
2990            stringify!(__ctype_tolower)
2991        )
2992    );
2993    assert_eq!(
2994        unsafe {
2995            &(*(::core::ptr::null::<__locale_struct>())).__ctype_toupper as *const _ as usize
2996        },
2997        120usize,
2998        concat!(
2999            "Offset of field: ",
3000            stringify!(__locale_struct),
3001            "::",
3002            stringify!(__ctype_toupper)
3003        )
3004    );
3005    assert_eq!(
3006        unsafe { &(*(::core::ptr::null::<__locale_struct>())).__names as *const _ as usize },
3007        128usize,
3008        concat!(
3009            "Offset of field: ",
3010            stringify!(__locale_struct),
3011            "::",
3012            stringify!(__names)
3013        )
3014    );
3015}
3016pub type __locale_t = *mut __locale_struct;
3017pub type locale_t = __locale_t;
3018extern "C" {
3019    pub fn strcoll_l(
3020        __s1: *const cty::c_char,
3021        __s2: *const cty::c_char,
3022        __l: locale_t,
3023    ) -> cty::c_int;
3024}
3025extern "C" {
3026    pub fn strxfrm_l(
3027        __dest: *mut cty::c_char,
3028        __src: *const cty::c_char,
3029        __n: usize,
3030        __l: locale_t,
3031    ) -> usize;
3032}
3033extern "C" {
3034    pub fn strdup(__s: *const cty::c_char) -> *mut cty::c_char;
3035}
3036extern "C" {
3037    pub fn strndup(__string: *const cty::c_char, __n: usize) -> *mut cty::c_char;
3038}
3039extern "C" {
3040    pub fn strchr(__s: *const cty::c_char, __c: cty::c_int) -> *mut cty::c_char;
3041}
3042extern "C" {
3043    pub fn strrchr(__s: *const cty::c_char, __c: cty::c_int) -> *mut cty::c_char;
3044}
3045extern "C" {
3046    pub fn strcspn(__s: *const cty::c_char, __reject: *const cty::c_char) -> cty::c_ulong;
3047}
3048extern "C" {
3049    pub fn strspn(__s: *const cty::c_char, __accept: *const cty::c_char) -> cty::c_ulong;
3050}
3051extern "C" {
3052    pub fn strpbrk(__s: *const cty::c_char, __accept: *const cty::c_char) -> *mut cty::c_char;
3053}
3054extern "C" {
3055    pub fn strstr(__haystack: *const cty::c_char, __needle: *const cty::c_char)
3056        -> *mut cty::c_char;
3057}
3058extern "C" {
3059    pub fn strtok(__s: *mut cty::c_char, __delim: *const cty::c_char) -> *mut cty::c_char;
3060}
3061extern "C" {
3062    pub fn __strtok_r(
3063        __s: *mut cty::c_char,
3064        __delim: *const cty::c_char,
3065        __save_ptr: *mut *mut cty::c_char,
3066    ) -> *mut cty::c_char;
3067}
3068extern "C" {
3069    pub fn strtok_r(
3070        __s: *mut cty::c_char,
3071        __delim: *const cty::c_char,
3072        __save_ptr: *mut *mut cty::c_char,
3073    ) -> *mut cty::c_char;
3074}
3075extern "C" {
3076    pub fn strlen(__s: *const cty::c_char) -> cty::c_ulong;
3077}
3078extern "C" {
3079    pub fn strnlen(__string: *const cty::c_char, __maxlen: usize) -> usize;
3080}
3081extern "C" {
3082    pub fn strerror(__errnum: cty::c_int) -> *mut cty::c_char;
3083}
3084extern "C" {
3085    #[link_name = "\u{1}__xpg_strerror_r"]
3086    pub fn strerror_r(__errnum: cty::c_int, __buf: *mut cty::c_char, __buflen: usize)
3087        -> cty::c_int;
3088}
3089extern "C" {
3090    pub fn strerror_l(__errnum: cty::c_int, __l: locale_t) -> *mut cty::c_char;
3091}
3092extern "C" {
3093    pub fn bcmp(__s1: *const cty::c_void, __s2: *const cty::c_void, __n: usize) -> cty::c_int;
3094}
3095extern "C" {
3096    pub fn bcopy(__src: *const cty::c_void, __dest: *mut cty::c_void, __n: usize);
3097}
3098extern "C" {
3099    pub fn bzero(__s: *mut cty::c_void, __n: usize);
3100}
3101extern "C" {
3102    pub fn index(__s: *const cty::c_char, __c: cty::c_int) -> *mut cty::c_char;
3103}
3104extern "C" {
3105    pub fn rindex(__s: *const cty::c_char, __c: cty::c_int) -> *mut cty::c_char;
3106}
3107extern "C" {
3108    pub fn ffs(__i: cty::c_int) -> cty::c_int;
3109}
3110extern "C" {
3111    pub fn ffsl(__l: cty::c_long) -> cty::c_int;
3112}
3113extern "C" {
3114    pub fn ffsll(__ll: cty::c_longlong) -> cty::c_int;
3115}
3116extern "C" {
3117    pub fn strcasecmp(__s1: *const cty::c_char, __s2: *const cty::c_char) -> cty::c_int;
3118}
3119extern "C" {
3120    pub fn strncasecmp(
3121        __s1: *const cty::c_char,
3122        __s2: *const cty::c_char,
3123        __n: usize,
3124    ) -> cty::c_int;
3125}
3126extern "C" {
3127    pub fn strcasecmp_l(
3128        __s1: *const cty::c_char,
3129        __s2: *const cty::c_char,
3130        __loc: locale_t,
3131    ) -> cty::c_int;
3132}
3133extern "C" {
3134    pub fn strncasecmp_l(
3135        __s1: *const cty::c_char,
3136        __s2: *const cty::c_char,
3137        __n: usize,
3138        __loc: locale_t,
3139    ) -> cty::c_int;
3140}
3141extern "C" {
3142    pub fn explicit_bzero(__s: *mut cty::c_void, __n: usize);
3143}
3144extern "C" {
3145    pub fn strsep(
3146        __stringp: *mut *mut cty::c_char,
3147        __delim: *const cty::c_char,
3148    ) -> *mut cty::c_char;
3149}
3150extern "C" {
3151    pub fn strsignal(__sig: cty::c_int) -> *mut cty::c_char;
3152}
3153extern "C" {
3154    pub fn __stpcpy(__dest: *mut cty::c_char, __src: *const cty::c_char) -> *mut cty::c_char;
3155}
3156extern "C" {
3157    pub fn stpcpy(__dest: *mut cty::c_char, __src: *const cty::c_char) -> *mut cty::c_char;
3158}
3159extern "C" {
3160    pub fn __stpncpy(
3161        __dest: *mut cty::c_char,
3162        __src: *const cty::c_char,
3163        __n: usize,
3164    ) -> *mut cty::c_char;
3165}
3166extern "C" {
3167    pub fn stpncpy(
3168        __dest: *mut cty::c_char,
3169        __src: *const cty::c_char,
3170        __n: usize,
3171    ) -> *mut cty::c_char;
3172}
3173#[repr(C)]
3174#[derive(Debug, Copy, Clone)]
3175pub struct stat {
3176    pub st_dev: __dev_t,
3177    pub st_ino: __ino_t,
3178    pub st_nlink: __nlink_t,
3179    pub st_mode: __mode_t,
3180    pub st_uid: __uid_t,
3181    pub st_gid: __gid_t,
3182    pub __pad0: cty::c_int,
3183    pub st_rdev: __dev_t,
3184    pub st_size: __off_t,
3185    pub st_blksize: __blksize_t,
3186    pub st_blocks: __blkcnt_t,
3187    pub st_atim: timespec,
3188    pub st_mtim: timespec,
3189    pub st_ctim: timespec,
3190    pub __glibc_reserved: [__syscall_slong_t; 3usize],
3191}
3192#[test]
3193fn bindgen_test_layout_stat() {
3194    assert_eq!(
3195        ::core::mem::size_of::<stat>(),
3196        144usize,
3197        concat!("Size of: ", stringify!(stat))
3198    );
3199    assert_eq!(
3200        ::core::mem::align_of::<stat>(),
3201        8usize,
3202        concat!("Alignment of ", stringify!(stat))
3203    );
3204    assert_eq!(
3205        unsafe { &(*(::core::ptr::null::<stat>())).st_dev as *const _ as usize },
3206        0usize,
3207        concat!(
3208            "Offset of field: ",
3209            stringify!(stat),
3210            "::",
3211            stringify!(st_dev)
3212        )
3213    );
3214    assert_eq!(
3215        unsafe { &(*(::core::ptr::null::<stat>())).st_ino as *const _ as usize },
3216        8usize,
3217        concat!(
3218            "Offset of field: ",
3219            stringify!(stat),
3220            "::",
3221            stringify!(st_ino)
3222        )
3223    );
3224    assert_eq!(
3225        unsafe { &(*(::core::ptr::null::<stat>())).st_nlink as *const _ as usize },
3226        16usize,
3227        concat!(
3228            "Offset of field: ",
3229            stringify!(stat),
3230            "::",
3231            stringify!(st_nlink)
3232        )
3233    );
3234    assert_eq!(
3235        unsafe { &(*(::core::ptr::null::<stat>())).st_mode as *const _ as usize },
3236        24usize,
3237        concat!(
3238            "Offset of field: ",
3239            stringify!(stat),
3240            "::",
3241            stringify!(st_mode)
3242        )
3243    );
3244    assert_eq!(
3245        unsafe { &(*(::core::ptr::null::<stat>())).st_uid as *const _ as usize },
3246        28usize,
3247        concat!(
3248            "Offset of field: ",
3249            stringify!(stat),
3250            "::",
3251            stringify!(st_uid)
3252        )
3253    );
3254    assert_eq!(
3255        unsafe { &(*(::core::ptr::null::<stat>())).st_gid as *const _ as usize },
3256        32usize,
3257        concat!(
3258            "Offset of field: ",
3259            stringify!(stat),
3260            "::",
3261            stringify!(st_gid)
3262        )
3263    );
3264    assert_eq!(
3265        unsafe { &(*(::core::ptr::null::<stat>())).__pad0 as *const _ as usize },
3266        36usize,
3267        concat!(
3268            "Offset of field: ",
3269            stringify!(stat),
3270            "::",
3271            stringify!(__pad0)
3272        )
3273    );
3274    assert_eq!(
3275        unsafe { &(*(::core::ptr::null::<stat>())).st_rdev as *const _ as usize },
3276        40usize,
3277        concat!(
3278            "Offset of field: ",
3279            stringify!(stat),
3280            "::",
3281            stringify!(st_rdev)
3282        )
3283    );
3284    assert_eq!(
3285        unsafe { &(*(::core::ptr::null::<stat>())).st_size as *const _ as usize },
3286        48usize,
3287        concat!(
3288            "Offset of field: ",
3289            stringify!(stat),
3290            "::",
3291            stringify!(st_size)
3292        )
3293    );
3294    assert_eq!(
3295        unsafe { &(*(::core::ptr::null::<stat>())).st_blksize as *const _ as usize },
3296        56usize,
3297        concat!(
3298            "Offset of field: ",
3299            stringify!(stat),
3300            "::",
3301            stringify!(st_blksize)
3302        )
3303    );
3304    assert_eq!(
3305        unsafe { &(*(::core::ptr::null::<stat>())).st_blocks as *const _ as usize },
3306        64usize,
3307        concat!(
3308            "Offset of field: ",
3309            stringify!(stat),
3310            "::",
3311            stringify!(st_blocks)
3312        )
3313    );
3314    assert_eq!(
3315        unsafe { &(*(::core::ptr::null::<stat>())).st_atim as *const _ as usize },
3316        72usize,
3317        concat!(
3318            "Offset of field: ",
3319            stringify!(stat),
3320            "::",
3321            stringify!(st_atim)
3322        )
3323    );
3324    assert_eq!(
3325        unsafe { &(*(::core::ptr::null::<stat>())).st_mtim as *const _ as usize },
3326        88usize,
3327        concat!(
3328            "Offset of field: ",
3329            stringify!(stat),
3330            "::",
3331            stringify!(st_mtim)
3332        )
3333    );
3334    assert_eq!(
3335        unsafe { &(*(::core::ptr::null::<stat>())).st_ctim as *const _ as usize },
3336        104usize,
3337        concat!(
3338            "Offset of field: ",
3339            stringify!(stat),
3340            "::",
3341            stringify!(st_ctim)
3342        )
3343    );
3344    assert_eq!(
3345        unsafe { &(*(::core::ptr::null::<stat>())).__glibc_reserved as *const _ as usize },
3346        120usize,
3347        concat!(
3348            "Offset of field: ",
3349            stringify!(stat),
3350            "::",
3351            stringify!(__glibc_reserved)
3352        )
3353    );
3354}
3355extern "C" {
3356    pub fn stat(__file: *const cty::c_char, __buf: *mut stat) -> cty::c_int;
3357}
3358extern "C" {
3359    pub fn fstat(__fd: cty::c_int, __buf: *mut stat) -> cty::c_int;
3360}
3361extern "C" {
3362    pub fn fstatat(
3363        __fd: cty::c_int,
3364        __file: *const cty::c_char,
3365        __buf: *mut stat,
3366        __flag: cty::c_int,
3367    ) -> cty::c_int;
3368}
3369extern "C" {
3370    pub fn lstat(__file: *const cty::c_char, __buf: *mut stat) -> cty::c_int;
3371}
3372extern "C" {
3373    pub fn chmod(__file: *const cty::c_char, __mode: __mode_t) -> cty::c_int;
3374}
3375extern "C" {
3376    pub fn lchmod(__file: *const cty::c_char, __mode: __mode_t) -> cty::c_int;
3377}
3378extern "C" {
3379    pub fn fchmod(__fd: cty::c_int, __mode: __mode_t) -> cty::c_int;
3380}
3381extern "C" {
3382    pub fn fchmodat(
3383        __fd: cty::c_int,
3384        __file: *const cty::c_char,
3385        __mode: __mode_t,
3386        __flag: cty::c_int,
3387    ) -> cty::c_int;
3388}
3389extern "C" {
3390    pub fn umask(__mask: __mode_t) -> __mode_t;
3391}
3392extern "C" {
3393    pub fn mkdir(__path: *const cty::c_char, __mode: __mode_t) -> cty::c_int;
3394}
3395extern "C" {
3396    pub fn mkdirat(__fd: cty::c_int, __path: *const cty::c_char, __mode: __mode_t) -> cty::c_int;
3397}
3398extern "C" {
3399    pub fn mknod(__path: *const cty::c_char, __mode: __mode_t, __dev: __dev_t) -> cty::c_int;
3400}
3401extern "C" {
3402    pub fn mknodat(
3403        __fd: cty::c_int,
3404        __path: *const cty::c_char,
3405        __mode: __mode_t,
3406        __dev: __dev_t,
3407    ) -> cty::c_int;
3408}
3409extern "C" {
3410    pub fn mkfifo(__path: *const cty::c_char, __mode: __mode_t) -> cty::c_int;
3411}
3412extern "C" {
3413    pub fn mkfifoat(__fd: cty::c_int, __path: *const cty::c_char, __mode: __mode_t) -> cty::c_int;
3414}
3415extern "C" {
3416    pub fn utimensat(
3417        __fd: cty::c_int,
3418        __path: *const cty::c_char,
3419        __times: *const timespec,
3420        __flags: cty::c_int,
3421    ) -> cty::c_int;
3422}
3423extern "C" {
3424    pub fn futimens(__fd: cty::c_int, __times: *const timespec) -> cty::c_int;
3425}
3426extern "C" {
3427    pub fn __fxstat(__ver: cty::c_int, __fildes: cty::c_int, __stat_buf: *mut stat) -> cty::c_int;
3428}
3429extern "C" {
3430    pub fn __xstat(
3431        __ver: cty::c_int,
3432        __filename: *const cty::c_char,
3433        __stat_buf: *mut stat,
3434    ) -> cty::c_int;
3435}
3436extern "C" {
3437    pub fn __lxstat(
3438        __ver: cty::c_int,
3439        __filename: *const cty::c_char,
3440        __stat_buf: *mut stat,
3441    ) -> cty::c_int;
3442}
3443extern "C" {
3444    pub fn __fxstatat(
3445        __ver: cty::c_int,
3446        __fildes: cty::c_int,
3447        __filename: *const cty::c_char,
3448        __stat_buf: *mut stat,
3449        __flag: cty::c_int,
3450    ) -> cty::c_int;
3451}
3452extern "C" {
3453    pub fn __xmknod(
3454        __ver: cty::c_int,
3455        __path: *const cty::c_char,
3456        __mode: __mode_t,
3457        __dev: *mut __dev_t,
3458    ) -> cty::c_int;
3459}
3460extern "C" {
3461    pub fn __xmknodat(
3462        __ver: cty::c_int,
3463        __fd: cty::c_int,
3464        __path: *const cty::c_char,
3465        __mode: __mode_t,
3466        __dev: *mut __dev_t,
3467    ) -> cty::c_int;
3468}
3469pub type useconds_t = __useconds_t;
3470pub type socklen_t = __socklen_t;
3471extern "C" {
3472    pub fn access(__name: *const cty::c_char, __type: cty::c_int) -> cty::c_int;
3473}
3474extern "C" {
3475    pub fn faccessat(
3476        __fd: cty::c_int,
3477        __file: *const cty::c_char,
3478        __type: cty::c_int,
3479        __flag: cty::c_int,
3480    ) -> cty::c_int;
3481}
3482extern "C" {
3483    pub fn lseek(__fd: cty::c_int, __offset: __off_t, __whence: cty::c_int) -> __off_t;
3484}
3485extern "C" {
3486    pub fn close(__fd: cty::c_int) -> cty::c_int;
3487}
3488extern "C" {
3489    pub fn read(__fd: cty::c_int, __buf: *mut cty::c_void, __nbytes: usize) -> isize;
3490}
3491extern "C" {
3492    pub fn write(__fd: cty::c_int, __buf: *const cty::c_void, __n: usize) -> isize;
3493}
3494extern "C" {
3495    pub fn pread(
3496        __fd: cty::c_int,
3497        __buf: *mut cty::c_void,
3498        __nbytes: usize,
3499        __offset: __off_t,
3500    ) -> isize;
3501}
3502extern "C" {
3503    pub fn pwrite(
3504        __fd: cty::c_int,
3505        __buf: *const cty::c_void,
3506        __n: usize,
3507        __offset: __off_t,
3508    ) -> isize;
3509}
3510extern "C" {
3511    pub fn pipe(__pipedes: *mut cty::c_int) -> cty::c_int;
3512}
3513extern "C" {
3514    pub fn alarm(__seconds: cty::c_uint) -> cty::c_uint;
3515}
3516extern "C" {
3517    pub fn sleep(__seconds: cty::c_uint) -> cty::c_uint;
3518}
3519extern "C" {
3520    pub fn ualarm(__value: __useconds_t, __interval: __useconds_t) -> __useconds_t;
3521}
3522extern "C" {
3523    pub fn usleep(__useconds: __useconds_t) -> cty::c_int;
3524}
3525extern "C" {
3526    pub fn pause() -> cty::c_int;
3527}
3528extern "C" {
3529    pub fn chown(__file: *const cty::c_char, __owner: __uid_t, __group: __gid_t) -> cty::c_int;
3530}
3531extern "C" {
3532    pub fn fchown(__fd: cty::c_int, __owner: __uid_t, __group: __gid_t) -> cty::c_int;
3533}
3534extern "C" {
3535    pub fn lchown(__file: *const cty::c_char, __owner: __uid_t, __group: __gid_t) -> cty::c_int;
3536}
3537extern "C" {
3538    pub fn fchownat(
3539        __fd: cty::c_int,
3540        __file: *const cty::c_char,
3541        __owner: __uid_t,
3542        __group: __gid_t,
3543        __flag: cty::c_int,
3544    ) -> cty::c_int;
3545}
3546extern "C" {
3547    pub fn chdir(__path: *const cty::c_char) -> cty::c_int;
3548}
3549extern "C" {
3550    pub fn fchdir(__fd: cty::c_int) -> cty::c_int;
3551}
3552extern "C" {
3553    pub fn getcwd(__buf: *mut cty::c_char, __size: usize) -> *mut cty::c_char;
3554}
3555extern "C" {
3556    pub fn getwd(__buf: *mut cty::c_char) -> *mut cty::c_char;
3557}
3558extern "C" {
3559    pub fn dup(__fd: cty::c_int) -> cty::c_int;
3560}
3561extern "C" {
3562    pub fn dup2(__fd: cty::c_int, __fd2: cty::c_int) -> cty::c_int;
3563}
3564extern "C" {
3565    pub fn execve(
3566        __path: *const cty::c_char,
3567        __argv: *const *mut cty::c_char,
3568        __envp: *const *mut cty::c_char,
3569    ) -> cty::c_int;
3570}
3571extern "C" {
3572    pub fn fexecve(
3573        __fd: cty::c_int,
3574        __argv: *const *mut cty::c_char,
3575        __envp: *const *mut cty::c_char,
3576    ) -> cty::c_int;
3577}
3578extern "C" {
3579    pub fn execv(__path: *const cty::c_char, __argv: *const *mut cty::c_char) -> cty::c_int;
3580}
3581extern "C" {
3582    pub fn execle(__path: *const cty::c_char, __arg: *const cty::c_char, ...) -> cty::c_int;
3583}
3584extern "C" {
3585    pub fn execl(__path: *const cty::c_char, __arg: *const cty::c_char, ...) -> cty::c_int;
3586}
3587extern "C" {
3588    pub fn execvp(__file: *const cty::c_char, __argv: *const *mut cty::c_char) -> cty::c_int;
3589}
3590extern "C" {
3591    pub fn execlp(__file: *const cty::c_char, __arg: *const cty::c_char, ...) -> cty::c_int;
3592}
3593extern "C" {
3594    pub fn nice(__inc: cty::c_int) -> cty::c_int;
3595}
3596extern "C" {
3597    pub fn _exit(__status: cty::c_int);
3598}
3599pub const _PC_LINK_MAX: _bindgen_ty_1 = 0;
3600pub const _PC_MAX_CANON: _bindgen_ty_1 = 1;
3601pub const _PC_MAX_INPUT: _bindgen_ty_1 = 2;
3602pub const _PC_NAME_MAX: _bindgen_ty_1 = 3;
3603pub const _PC_PATH_MAX: _bindgen_ty_1 = 4;
3604pub const _PC_PIPE_BUF: _bindgen_ty_1 = 5;
3605pub const _PC_CHOWN_RESTRICTED: _bindgen_ty_1 = 6;
3606pub const _PC_NO_TRUNC: _bindgen_ty_1 = 7;
3607pub const _PC_VDISABLE: _bindgen_ty_1 = 8;
3608pub const _PC_SYNC_IO: _bindgen_ty_1 = 9;
3609pub const _PC_ASYNC_IO: _bindgen_ty_1 = 10;
3610pub const _PC_PRIO_IO: _bindgen_ty_1 = 11;
3611pub const _PC_SOCK_MAXBUF: _bindgen_ty_1 = 12;
3612pub const _PC_FILESIZEBITS: _bindgen_ty_1 = 13;
3613pub const _PC_REC_INCR_XFER_SIZE: _bindgen_ty_1 = 14;
3614pub const _PC_REC_MAX_XFER_SIZE: _bindgen_ty_1 = 15;
3615pub const _PC_REC_MIN_XFER_SIZE: _bindgen_ty_1 = 16;
3616pub const _PC_REC_XFER_ALIGN: _bindgen_ty_1 = 17;
3617pub const _PC_ALLOC_SIZE_MIN: _bindgen_ty_1 = 18;
3618pub const _PC_SYMLINK_MAX: _bindgen_ty_1 = 19;
3619pub const _PC_2_SYMLINKS: _bindgen_ty_1 = 20;
3620pub type _bindgen_ty_1 = u32;
3621pub const _SC_ARG_MAX: _bindgen_ty_2 = 0;
3622pub const _SC_CHILD_MAX: _bindgen_ty_2 = 1;
3623pub const _SC_CLK_TCK: _bindgen_ty_2 = 2;
3624pub const _SC_NGROUPS_MAX: _bindgen_ty_2 = 3;
3625pub const _SC_OPEN_MAX: _bindgen_ty_2 = 4;
3626pub const _SC_STREAM_MAX: _bindgen_ty_2 = 5;
3627pub const _SC_TZNAME_MAX: _bindgen_ty_2 = 6;
3628pub const _SC_JOB_CONTROL: _bindgen_ty_2 = 7;
3629pub const _SC_SAVED_IDS: _bindgen_ty_2 = 8;
3630pub const _SC_REALTIME_SIGNALS: _bindgen_ty_2 = 9;
3631pub const _SC_PRIORITY_SCHEDULING: _bindgen_ty_2 = 10;
3632pub const _SC_TIMERS: _bindgen_ty_2 = 11;
3633pub const _SC_ASYNCHRONOUS_IO: _bindgen_ty_2 = 12;
3634pub const _SC_PRIORITIZED_IO: _bindgen_ty_2 = 13;
3635pub const _SC_SYNCHRONIZED_IO: _bindgen_ty_2 = 14;
3636pub const _SC_FSYNC: _bindgen_ty_2 = 15;
3637pub const _SC_MAPPED_FILES: _bindgen_ty_2 = 16;
3638pub const _SC_MEMLOCK: _bindgen_ty_2 = 17;
3639pub const _SC_MEMLOCK_RANGE: _bindgen_ty_2 = 18;
3640pub const _SC_MEMORY_PROTECTION: _bindgen_ty_2 = 19;
3641pub const _SC_MESSAGE_PASSING: _bindgen_ty_2 = 20;
3642pub const _SC_SEMAPHORES: _bindgen_ty_2 = 21;
3643pub const _SC_SHARED_MEMORY_OBJECTS: _bindgen_ty_2 = 22;
3644pub const _SC_AIO_LISTIO_MAX: _bindgen_ty_2 = 23;
3645pub const _SC_AIO_MAX: _bindgen_ty_2 = 24;
3646pub const _SC_AIO_PRIO_DELTA_MAX: _bindgen_ty_2 = 25;
3647pub const _SC_DELAYTIMER_MAX: _bindgen_ty_2 = 26;
3648pub const _SC_MQ_OPEN_MAX: _bindgen_ty_2 = 27;
3649pub const _SC_MQ_PRIO_MAX: _bindgen_ty_2 = 28;
3650pub const _SC_VERSION: _bindgen_ty_2 = 29;
3651pub const _SC_PAGESIZE: _bindgen_ty_2 = 30;
3652pub const _SC_RTSIG_MAX: _bindgen_ty_2 = 31;
3653pub const _SC_SEM_NSEMS_MAX: _bindgen_ty_2 = 32;
3654pub const _SC_SEM_VALUE_MAX: _bindgen_ty_2 = 33;
3655pub const _SC_SIGQUEUE_MAX: _bindgen_ty_2 = 34;
3656pub const _SC_TIMER_MAX: _bindgen_ty_2 = 35;
3657pub const _SC_BC_BASE_MAX: _bindgen_ty_2 = 36;
3658pub const _SC_BC_DIM_MAX: _bindgen_ty_2 = 37;
3659pub const _SC_BC_SCALE_MAX: _bindgen_ty_2 = 38;
3660pub const _SC_BC_STRING_MAX: _bindgen_ty_2 = 39;
3661pub const _SC_COLL_WEIGHTS_MAX: _bindgen_ty_2 = 40;
3662pub const _SC_EQUIV_CLASS_MAX: _bindgen_ty_2 = 41;
3663pub const _SC_EXPR_NEST_MAX: _bindgen_ty_2 = 42;
3664pub const _SC_LINE_MAX: _bindgen_ty_2 = 43;
3665pub const _SC_RE_DUP_MAX: _bindgen_ty_2 = 44;
3666pub const _SC_CHARCLASS_NAME_MAX: _bindgen_ty_2 = 45;
3667pub const _SC_2_VERSION: _bindgen_ty_2 = 46;
3668pub const _SC_2_C_BIND: _bindgen_ty_2 = 47;
3669pub const _SC_2_C_DEV: _bindgen_ty_2 = 48;
3670pub const _SC_2_FORT_DEV: _bindgen_ty_2 = 49;
3671pub const _SC_2_FORT_RUN: _bindgen_ty_2 = 50;
3672pub const _SC_2_SW_DEV: _bindgen_ty_2 = 51;
3673pub const _SC_2_LOCALEDEF: _bindgen_ty_2 = 52;
3674pub const _SC_PII: _bindgen_ty_2 = 53;
3675pub const _SC_PII_XTI: _bindgen_ty_2 = 54;
3676pub const _SC_PII_SOCKET: _bindgen_ty_2 = 55;
3677pub const _SC_PII_INTERNET: _bindgen_ty_2 = 56;
3678pub const _SC_PII_OSI: _bindgen_ty_2 = 57;
3679pub const _SC_POLL: _bindgen_ty_2 = 58;
3680pub const _SC_SELECT: _bindgen_ty_2 = 59;
3681pub const _SC_UIO_MAXIOV: _bindgen_ty_2 = 60;
3682pub const _SC_IOV_MAX: _bindgen_ty_2 = 60;
3683pub const _SC_PII_INTERNET_STREAM: _bindgen_ty_2 = 61;
3684pub const _SC_PII_INTERNET_DGRAM: _bindgen_ty_2 = 62;
3685pub const _SC_PII_OSI_COTS: _bindgen_ty_2 = 63;
3686pub const _SC_PII_OSI_CLTS: _bindgen_ty_2 = 64;
3687pub const _SC_PII_OSI_M: _bindgen_ty_2 = 65;
3688pub const _SC_T_IOV_MAX: _bindgen_ty_2 = 66;
3689pub const _SC_THREADS: _bindgen_ty_2 = 67;
3690pub const _SC_THREAD_SAFE_FUNCTIONS: _bindgen_ty_2 = 68;
3691pub const _SC_GETGR_R_SIZE_MAX: _bindgen_ty_2 = 69;
3692pub const _SC_GETPW_R_SIZE_MAX: _bindgen_ty_2 = 70;
3693pub const _SC_LOGIN_NAME_MAX: _bindgen_ty_2 = 71;
3694pub const _SC_TTY_NAME_MAX: _bindgen_ty_2 = 72;
3695pub const _SC_THREAD_DESTRUCTOR_ITERATIONS: _bindgen_ty_2 = 73;
3696pub const _SC_THREAD_KEYS_MAX: _bindgen_ty_2 = 74;
3697pub const _SC_THREAD_STACK_MIN: _bindgen_ty_2 = 75;
3698pub const _SC_THREAD_THREADS_MAX: _bindgen_ty_2 = 76;
3699pub const _SC_THREAD_ATTR_STACKADDR: _bindgen_ty_2 = 77;
3700pub const _SC_THREAD_ATTR_STACKSIZE: _bindgen_ty_2 = 78;
3701pub const _SC_THREAD_PRIORITY_SCHEDULING: _bindgen_ty_2 = 79;
3702pub const _SC_THREAD_PRIO_INHERIT: _bindgen_ty_2 = 80;
3703pub const _SC_THREAD_PRIO_PROTECT: _bindgen_ty_2 = 81;
3704pub const _SC_THREAD_PROCESS_SHARED: _bindgen_ty_2 = 82;
3705pub const _SC_NPROCESSORS_CONF: _bindgen_ty_2 = 83;
3706pub const _SC_NPROCESSORS_ONLN: _bindgen_ty_2 = 84;
3707pub const _SC_PHYS_PAGES: _bindgen_ty_2 = 85;
3708pub const _SC_AVPHYS_PAGES: _bindgen_ty_2 = 86;
3709pub const _SC_ATEXIT_MAX: _bindgen_ty_2 = 87;
3710pub const _SC_PASS_MAX: _bindgen_ty_2 = 88;
3711pub const _SC_XOPEN_VERSION: _bindgen_ty_2 = 89;
3712pub const _SC_XOPEN_XCU_VERSION: _bindgen_ty_2 = 90;
3713pub const _SC_XOPEN_UNIX: _bindgen_ty_2 = 91;
3714pub const _SC_XOPEN_CRYPT: _bindgen_ty_2 = 92;
3715pub const _SC_XOPEN_ENH_I18N: _bindgen_ty_2 = 93;
3716pub const _SC_XOPEN_SHM: _bindgen_ty_2 = 94;
3717pub const _SC_2_CHAR_TERM: _bindgen_ty_2 = 95;
3718pub const _SC_2_C_VERSION: _bindgen_ty_2 = 96;
3719pub const _SC_2_UPE: _bindgen_ty_2 = 97;
3720pub const _SC_XOPEN_XPG2: _bindgen_ty_2 = 98;
3721pub const _SC_XOPEN_XPG3: _bindgen_ty_2 = 99;
3722pub const _SC_XOPEN_XPG4: _bindgen_ty_2 = 100;
3723pub const _SC_CHAR_BIT: _bindgen_ty_2 = 101;
3724pub const _SC_CHAR_MAX: _bindgen_ty_2 = 102;
3725pub const _SC_CHAR_MIN: _bindgen_ty_2 = 103;
3726pub const _SC_INT_MAX: _bindgen_ty_2 = 104;
3727pub const _SC_INT_MIN: _bindgen_ty_2 = 105;
3728pub const _SC_LONG_BIT: _bindgen_ty_2 = 106;
3729pub const _SC_WORD_BIT: _bindgen_ty_2 = 107;
3730pub const _SC_MB_LEN_MAX: _bindgen_ty_2 = 108;
3731pub const _SC_NZERO: _bindgen_ty_2 = 109;
3732pub const _SC_SSIZE_MAX: _bindgen_ty_2 = 110;
3733pub const _SC_SCHAR_MAX: _bindgen_ty_2 = 111;
3734pub const _SC_SCHAR_MIN: _bindgen_ty_2 = 112;
3735pub const _SC_SHRT_MAX: _bindgen_ty_2 = 113;
3736pub const _SC_SHRT_MIN: _bindgen_ty_2 = 114;
3737pub const _SC_UCHAR_MAX: _bindgen_ty_2 = 115;
3738pub const _SC_UINT_MAX: _bindgen_ty_2 = 116;
3739pub const _SC_ULONG_MAX: _bindgen_ty_2 = 117;
3740pub const _SC_USHRT_MAX: _bindgen_ty_2 = 118;
3741pub const _SC_NL_ARGMAX: _bindgen_ty_2 = 119;
3742pub const _SC_NL_LANGMAX: _bindgen_ty_2 = 120;
3743pub const _SC_NL_MSGMAX: _bindgen_ty_2 = 121;
3744pub const _SC_NL_NMAX: _bindgen_ty_2 = 122;
3745pub const _SC_NL_SETMAX: _bindgen_ty_2 = 123;
3746pub const _SC_NL_TEXTMAX: _bindgen_ty_2 = 124;
3747pub const _SC_XBS5_ILP32_OFF32: _bindgen_ty_2 = 125;
3748pub const _SC_XBS5_ILP32_OFFBIG: _bindgen_ty_2 = 126;
3749pub const _SC_XBS5_LP64_OFF64: _bindgen_ty_2 = 127;
3750pub const _SC_XBS5_LPBIG_OFFBIG: _bindgen_ty_2 = 128;
3751pub const _SC_XOPEN_LEGACY: _bindgen_ty_2 = 129;
3752pub const _SC_XOPEN_REALTIME: _bindgen_ty_2 = 130;
3753pub const _SC_XOPEN_REALTIME_THREADS: _bindgen_ty_2 = 131;
3754pub const _SC_ADVISORY_INFO: _bindgen_ty_2 = 132;
3755pub const _SC_BARRIERS: _bindgen_ty_2 = 133;
3756pub const _SC_BASE: _bindgen_ty_2 = 134;
3757pub const _SC_C_LANG_SUPPORT: _bindgen_ty_2 = 135;
3758pub const _SC_C_LANG_SUPPORT_R: _bindgen_ty_2 = 136;
3759pub const _SC_CLOCK_SELECTION: _bindgen_ty_2 = 137;
3760pub const _SC_CPUTIME: _bindgen_ty_2 = 138;
3761pub const _SC_THREAD_CPUTIME: _bindgen_ty_2 = 139;
3762pub const _SC_DEVICE_IO: _bindgen_ty_2 = 140;
3763pub const _SC_DEVICE_SPECIFIC: _bindgen_ty_2 = 141;
3764pub const _SC_DEVICE_SPECIFIC_R: _bindgen_ty_2 = 142;
3765pub const _SC_FD_MGMT: _bindgen_ty_2 = 143;
3766pub const _SC_FIFO: _bindgen_ty_2 = 144;
3767pub const _SC_PIPE: _bindgen_ty_2 = 145;
3768pub const _SC_FILE_ATTRIBUTES: _bindgen_ty_2 = 146;
3769pub const _SC_FILE_LOCKING: _bindgen_ty_2 = 147;
3770pub const _SC_FILE_SYSTEM: _bindgen_ty_2 = 148;
3771pub const _SC_MONOTONIC_CLOCK: _bindgen_ty_2 = 149;
3772pub const _SC_MULTI_PROCESS: _bindgen_ty_2 = 150;
3773pub const _SC_SINGLE_PROCESS: _bindgen_ty_2 = 151;
3774pub const _SC_NETWORKING: _bindgen_ty_2 = 152;
3775pub const _SC_READER_WRITER_LOCKS: _bindgen_ty_2 = 153;
3776pub const _SC_SPIN_LOCKS: _bindgen_ty_2 = 154;
3777pub const _SC_REGEXP: _bindgen_ty_2 = 155;
3778pub const _SC_REGEX_VERSION: _bindgen_ty_2 = 156;
3779pub const _SC_SHELL: _bindgen_ty_2 = 157;
3780pub const _SC_SIGNALS: _bindgen_ty_2 = 158;
3781pub const _SC_SPAWN: _bindgen_ty_2 = 159;
3782pub const _SC_SPORADIC_SERVER: _bindgen_ty_2 = 160;
3783pub const _SC_THREAD_SPORADIC_SERVER: _bindgen_ty_2 = 161;
3784pub const _SC_SYSTEM_DATABASE: _bindgen_ty_2 = 162;
3785pub const _SC_SYSTEM_DATABASE_R: _bindgen_ty_2 = 163;
3786pub const _SC_TIMEOUTS: _bindgen_ty_2 = 164;
3787pub const _SC_TYPED_MEMORY_OBJECTS: _bindgen_ty_2 = 165;
3788pub const _SC_USER_GROUPS: _bindgen_ty_2 = 166;
3789pub const _SC_USER_GROUPS_R: _bindgen_ty_2 = 167;
3790pub const _SC_2_PBS: _bindgen_ty_2 = 168;
3791pub const _SC_2_PBS_ACCOUNTING: _bindgen_ty_2 = 169;
3792pub const _SC_2_PBS_LOCATE: _bindgen_ty_2 = 170;
3793pub const _SC_2_PBS_MESSAGE: _bindgen_ty_2 = 171;
3794pub const _SC_2_PBS_TRACK: _bindgen_ty_2 = 172;
3795pub const _SC_SYMLOOP_MAX: _bindgen_ty_2 = 173;
3796pub const _SC_STREAMS: _bindgen_ty_2 = 174;
3797pub const _SC_2_PBS_CHECKPOINT: _bindgen_ty_2 = 175;
3798pub const _SC_V6_ILP32_OFF32: _bindgen_ty_2 = 176;
3799pub const _SC_V6_ILP32_OFFBIG: _bindgen_ty_2 = 177;
3800pub const _SC_V6_LP64_OFF64: _bindgen_ty_2 = 178;
3801pub const _SC_V6_LPBIG_OFFBIG: _bindgen_ty_2 = 179;
3802pub const _SC_HOST_NAME_MAX: _bindgen_ty_2 = 180;
3803pub const _SC_TRACE: _bindgen_ty_2 = 181;
3804pub const _SC_TRACE_EVENT_FILTER: _bindgen_ty_2 = 182;
3805pub const _SC_TRACE_INHERIT: _bindgen_ty_2 = 183;
3806pub const _SC_TRACE_LOG: _bindgen_ty_2 = 184;
3807pub const _SC_LEVEL1_ICACHE_SIZE: _bindgen_ty_2 = 185;
3808pub const _SC_LEVEL1_ICACHE_ASSOC: _bindgen_ty_2 = 186;
3809pub const _SC_LEVEL1_ICACHE_LINESIZE: _bindgen_ty_2 = 187;
3810pub const _SC_LEVEL1_DCACHE_SIZE: _bindgen_ty_2 = 188;
3811pub const _SC_LEVEL1_DCACHE_ASSOC: _bindgen_ty_2 = 189;
3812pub const _SC_LEVEL1_DCACHE_LINESIZE: _bindgen_ty_2 = 190;
3813pub const _SC_LEVEL2_CACHE_SIZE: _bindgen_ty_2 = 191;
3814pub const _SC_LEVEL2_CACHE_ASSOC: _bindgen_ty_2 = 192;
3815pub const _SC_LEVEL2_CACHE_LINESIZE: _bindgen_ty_2 = 193;
3816pub const _SC_LEVEL3_CACHE_SIZE: _bindgen_ty_2 = 194;
3817pub const _SC_LEVEL3_CACHE_ASSOC: _bindgen_ty_2 = 195;
3818pub const _SC_LEVEL3_CACHE_LINESIZE: _bindgen_ty_2 = 196;
3819pub const _SC_LEVEL4_CACHE_SIZE: _bindgen_ty_2 = 197;
3820pub const _SC_LEVEL4_CACHE_ASSOC: _bindgen_ty_2 = 198;
3821pub const _SC_LEVEL4_CACHE_LINESIZE: _bindgen_ty_2 = 199;
3822pub const _SC_IPV6: _bindgen_ty_2 = 235;
3823pub const _SC_RAW_SOCKETS: _bindgen_ty_2 = 236;
3824pub const _SC_V7_ILP32_OFF32: _bindgen_ty_2 = 237;
3825pub const _SC_V7_ILP32_OFFBIG: _bindgen_ty_2 = 238;
3826pub const _SC_V7_LP64_OFF64: _bindgen_ty_2 = 239;
3827pub const _SC_V7_LPBIG_OFFBIG: _bindgen_ty_2 = 240;
3828pub const _SC_SS_REPL_MAX: _bindgen_ty_2 = 241;
3829pub const _SC_TRACE_EVENT_NAME_MAX: _bindgen_ty_2 = 242;
3830pub const _SC_TRACE_NAME_MAX: _bindgen_ty_2 = 243;
3831pub const _SC_TRACE_SYS_MAX: _bindgen_ty_2 = 244;
3832pub const _SC_TRACE_USER_EVENT_MAX: _bindgen_ty_2 = 245;
3833pub const _SC_XOPEN_STREAMS: _bindgen_ty_2 = 246;
3834pub const _SC_THREAD_ROBUST_PRIO_INHERIT: _bindgen_ty_2 = 247;
3835pub const _SC_THREAD_ROBUST_PRIO_PROTECT: _bindgen_ty_2 = 248;
3836pub type _bindgen_ty_2 = u32;
3837pub const _CS_PATH: _bindgen_ty_3 = 0;
3838pub const _CS_V6_WIDTH_RESTRICTED_ENVS: _bindgen_ty_3 = 1;
3839pub const _CS_GNU_LIBC_VERSION: _bindgen_ty_3 = 2;
3840pub const _CS_GNU_LIBPTHREAD_VERSION: _bindgen_ty_3 = 3;
3841pub const _CS_V5_WIDTH_RESTRICTED_ENVS: _bindgen_ty_3 = 4;
3842pub const _CS_V7_WIDTH_RESTRICTED_ENVS: _bindgen_ty_3 = 5;
3843pub const _CS_LFS_CFLAGS: _bindgen_ty_3 = 1000;
3844pub const _CS_LFS_LDFLAGS: _bindgen_ty_3 = 1001;
3845pub const _CS_LFS_LIBS: _bindgen_ty_3 = 1002;
3846pub const _CS_LFS_LINTFLAGS: _bindgen_ty_3 = 1003;
3847pub const _CS_LFS64_CFLAGS: _bindgen_ty_3 = 1004;
3848pub const _CS_LFS64_LDFLAGS: _bindgen_ty_3 = 1005;
3849pub const _CS_LFS64_LIBS: _bindgen_ty_3 = 1006;
3850pub const _CS_LFS64_LINTFLAGS: _bindgen_ty_3 = 1007;
3851pub const _CS_XBS5_ILP32_OFF32_CFLAGS: _bindgen_ty_3 = 1100;
3852pub const _CS_XBS5_ILP32_OFF32_LDFLAGS: _bindgen_ty_3 = 1101;
3853pub const _CS_XBS5_ILP32_OFF32_LIBS: _bindgen_ty_3 = 1102;
3854pub const _CS_XBS5_ILP32_OFF32_LINTFLAGS: _bindgen_ty_3 = 1103;
3855pub const _CS_XBS5_ILP32_OFFBIG_CFLAGS: _bindgen_ty_3 = 1104;
3856pub const _CS_XBS5_ILP32_OFFBIG_LDFLAGS: _bindgen_ty_3 = 1105;
3857pub const _CS_XBS5_ILP32_OFFBIG_LIBS: _bindgen_ty_3 = 1106;
3858pub const _CS_XBS5_ILP32_OFFBIG_LINTFLAGS: _bindgen_ty_3 = 1107;
3859pub const _CS_XBS5_LP64_OFF64_CFLAGS: _bindgen_ty_3 = 1108;
3860pub const _CS_XBS5_LP64_OFF64_LDFLAGS: _bindgen_ty_3 = 1109;
3861pub const _CS_XBS5_LP64_OFF64_LIBS: _bindgen_ty_3 = 1110;
3862pub const _CS_XBS5_LP64_OFF64_LINTFLAGS: _bindgen_ty_3 = 1111;
3863pub const _CS_XBS5_LPBIG_OFFBIG_CFLAGS: _bindgen_ty_3 = 1112;
3864pub const _CS_XBS5_LPBIG_OFFBIG_LDFLAGS: _bindgen_ty_3 = 1113;
3865pub const _CS_XBS5_LPBIG_OFFBIG_LIBS: _bindgen_ty_3 = 1114;
3866pub const _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS: _bindgen_ty_3 = 1115;
3867pub const _CS_POSIX_V6_ILP32_OFF32_CFLAGS: _bindgen_ty_3 = 1116;
3868pub const _CS_POSIX_V6_ILP32_OFF32_LDFLAGS: _bindgen_ty_3 = 1117;
3869pub const _CS_POSIX_V6_ILP32_OFF32_LIBS: _bindgen_ty_3 = 1118;
3870pub const _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS: _bindgen_ty_3 = 1119;
3871pub const _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS: _bindgen_ty_3 = 1120;
3872pub const _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS: _bindgen_ty_3 = 1121;
3873pub const _CS_POSIX_V6_ILP32_OFFBIG_LIBS: _bindgen_ty_3 = 1122;
3874pub const _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS: _bindgen_ty_3 = 1123;
3875pub const _CS_POSIX_V6_LP64_OFF64_CFLAGS: _bindgen_ty_3 = 1124;
3876pub const _CS_POSIX_V6_LP64_OFF64_LDFLAGS: _bindgen_ty_3 = 1125;
3877pub const _CS_POSIX_V6_LP64_OFF64_LIBS: _bindgen_ty_3 = 1126;
3878pub const _CS_POSIX_V6_LP64_OFF64_LINTFLAGS: _bindgen_ty_3 = 1127;
3879pub const _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS: _bindgen_ty_3 = 1128;
3880pub const _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS: _bindgen_ty_3 = 1129;
3881pub const _CS_POSIX_V6_LPBIG_OFFBIG_LIBS: _bindgen_ty_3 = 1130;
3882pub const _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS: _bindgen_ty_3 = 1131;
3883pub const _CS_POSIX_V7_ILP32_OFF32_CFLAGS: _bindgen_ty_3 = 1132;
3884pub const _CS_POSIX_V7_ILP32_OFF32_LDFLAGS: _bindgen_ty_3 = 1133;
3885pub const _CS_POSIX_V7_ILP32_OFF32_LIBS: _bindgen_ty_3 = 1134;
3886pub const _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS: _bindgen_ty_3 = 1135;
3887pub const _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS: _bindgen_ty_3 = 1136;
3888pub const _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS: _bindgen_ty_3 = 1137;
3889pub const _CS_POSIX_V7_ILP32_OFFBIG_LIBS: _bindgen_ty_3 = 1138;
3890pub const _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS: _bindgen_ty_3 = 1139;
3891pub const _CS_POSIX_V7_LP64_OFF64_CFLAGS: _bindgen_ty_3 = 1140;
3892pub const _CS_POSIX_V7_LP64_OFF64_LDFLAGS: _bindgen_ty_3 = 1141;
3893pub const _CS_POSIX_V7_LP64_OFF64_LIBS: _bindgen_ty_3 = 1142;
3894pub const _CS_POSIX_V7_LP64_OFF64_LINTFLAGS: _bindgen_ty_3 = 1143;
3895pub const _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS: _bindgen_ty_3 = 1144;
3896pub const _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS: _bindgen_ty_3 = 1145;
3897pub const _CS_POSIX_V7_LPBIG_OFFBIG_LIBS: _bindgen_ty_3 = 1146;
3898pub const _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS: _bindgen_ty_3 = 1147;
3899pub const _CS_V6_ENV: _bindgen_ty_3 = 1148;
3900pub const _CS_V7_ENV: _bindgen_ty_3 = 1149;
3901pub type _bindgen_ty_3 = u32;
3902extern "C" {
3903    pub fn pathconf(__path: *const cty::c_char, __name: cty::c_int) -> cty::c_long;
3904}
3905extern "C" {
3906    pub fn fpathconf(__fd: cty::c_int, __name: cty::c_int) -> cty::c_long;
3907}
3908extern "C" {
3909    pub fn sysconf(__name: cty::c_int) -> cty::c_long;
3910}
3911extern "C" {
3912    pub fn confstr(__name: cty::c_int, __buf: *mut cty::c_char, __len: usize) -> usize;
3913}
3914extern "C" {
3915    pub fn getpid() -> __pid_t;
3916}
3917extern "C" {
3918    pub fn getppid() -> __pid_t;
3919}
3920extern "C" {
3921    pub fn getpgrp() -> __pid_t;
3922}
3923extern "C" {
3924    pub fn __getpgid(__pid: __pid_t) -> __pid_t;
3925}
3926extern "C" {
3927    pub fn getpgid(__pid: __pid_t) -> __pid_t;
3928}
3929extern "C" {
3930    pub fn setpgid(__pid: __pid_t, __pgid: __pid_t) -> cty::c_int;
3931}
3932extern "C" {
3933    pub fn setpgrp() -> cty::c_int;
3934}
3935extern "C" {
3936    pub fn setsid() -> __pid_t;
3937}
3938extern "C" {
3939    pub fn getsid(__pid: __pid_t) -> __pid_t;
3940}
3941extern "C" {
3942    pub fn getuid() -> __uid_t;
3943}
3944extern "C" {
3945    pub fn geteuid() -> __uid_t;
3946}
3947extern "C" {
3948    pub fn getgid() -> __gid_t;
3949}
3950extern "C" {
3951    pub fn getegid() -> __gid_t;
3952}
3953extern "C" {
3954    pub fn getgroups(__size: cty::c_int, __list: *mut __gid_t) -> cty::c_int;
3955}
3956extern "C" {
3957    pub fn setuid(__uid: __uid_t) -> cty::c_int;
3958}
3959extern "C" {
3960    pub fn setreuid(__ruid: __uid_t, __euid: __uid_t) -> cty::c_int;
3961}
3962extern "C" {
3963    pub fn seteuid(__uid: __uid_t) -> cty::c_int;
3964}
3965extern "C" {
3966    pub fn setgid(__gid: __gid_t) -> cty::c_int;
3967}
3968extern "C" {
3969    pub fn setregid(__rgid: __gid_t, __egid: __gid_t) -> cty::c_int;
3970}
3971extern "C" {
3972    pub fn setegid(__gid: __gid_t) -> cty::c_int;
3973}
3974extern "C" {
3975    pub fn fork() -> __pid_t;
3976}
3977extern "C" {
3978    pub fn vfork() -> cty::c_int;
3979}
3980extern "C" {
3981    pub fn ttyname(__fd: cty::c_int) -> *mut cty::c_char;
3982}
3983extern "C" {
3984    pub fn ttyname_r(__fd: cty::c_int, __buf: *mut cty::c_char, __buflen: usize) -> cty::c_int;
3985}
3986extern "C" {
3987    pub fn isatty(__fd: cty::c_int) -> cty::c_int;
3988}
3989extern "C" {
3990    pub fn ttyslot() -> cty::c_int;
3991}
3992extern "C" {
3993    pub fn link(__from: *const cty::c_char, __to: *const cty::c_char) -> cty::c_int;
3994}
3995extern "C" {
3996    pub fn linkat(
3997        __fromfd: cty::c_int,
3998        __from: *const cty::c_char,
3999        __tofd: cty::c_int,
4000        __to: *const cty::c_char,
4001        __flags: cty::c_int,
4002    ) -> cty::c_int;
4003}
4004extern "C" {
4005    pub fn symlink(__from: *const cty::c_char, __to: *const cty::c_char) -> cty::c_int;
4006}
4007extern "C" {
4008    pub fn readlink(__path: *const cty::c_char, __buf: *mut cty::c_char, __len: usize) -> isize;
4009}
4010extern "C" {
4011    pub fn symlinkat(
4012        __from: *const cty::c_char,
4013        __tofd: cty::c_int,
4014        __to: *const cty::c_char,
4015    ) -> cty::c_int;
4016}
4017extern "C" {
4018    pub fn readlinkat(
4019        __fd: cty::c_int,
4020        __path: *const cty::c_char,
4021        __buf: *mut cty::c_char,
4022        __len: usize,
4023    ) -> isize;
4024}
4025extern "C" {
4026    pub fn unlink(__name: *const cty::c_char) -> cty::c_int;
4027}
4028extern "C" {
4029    pub fn unlinkat(__fd: cty::c_int, __name: *const cty::c_char, __flag: cty::c_int)
4030        -> cty::c_int;
4031}
4032extern "C" {
4033    pub fn rmdir(__path: *const cty::c_char) -> cty::c_int;
4034}
4035extern "C" {
4036    pub fn tcgetpgrp(__fd: cty::c_int) -> __pid_t;
4037}
4038extern "C" {
4039    pub fn tcsetpgrp(__fd: cty::c_int, __pgrp_id: __pid_t) -> cty::c_int;
4040}
4041extern "C" {
4042    pub fn getlogin() -> *mut cty::c_char;
4043}
4044extern "C" {
4045    pub fn getlogin_r(__name: *mut cty::c_char, __name_len: usize) -> cty::c_int;
4046}
4047extern "C" {
4048    pub fn setlogin(__name: *const cty::c_char) -> cty::c_int;
4049}
4050extern "C" {
4051    pub fn getopt(
4052        ___argc: cty::c_int,
4053        ___argv: *const *mut cty::c_char,
4054        __shortopts: *const cty::c_char,
4055    ) -> cty::c_int;
4056}
4057extern "C" {
4058    pub fn gethostname(__name: *mut cty::c_char, __len: usize) -> cty::c_int;
4059}
4060extern "C" {
4061    pub fn sethostname(__name: *const cty::c_char, __len: usize) -> cty::c_int;
4062}
4063extern "C" {
4064    pub fn sethostid(__id: cty::c_long) -> cty::c_int;
4065}
4066extern "C" {
4067    pub fn getdomainname(__name: *mut cty::c_char, __len: usize) -> cty::c_int;
4068}
4069extern "C" {
4070    pub fn setdomainname(__name: *const cty::c_char, __len: usize) -> cty::c_int;
4071}
4072extern "C" {
4073    pub fn vhangup() -> cty::c_int;
4074}
4075extern "C" {
4076    pub fn revoke(__file: *const cty::c_char) -> cty::c_int;
4077}
4078extern "C" {
4079    pub fn profil(
4080        __sample_buffer: *mut cty::c_ushort,
4081        __size: usize,
4082        __offset: usize,
4083        __scale: cty::c_uint,
4084    ) -> cty::c_int;
4085}
4086extern "C" {
4087    pub fn acct(__name: *const cty::c_char) -> cty::c_int;
4088}
4089extern "C" {
4090    pub fn getusershell() -> *mut cty::c_char;
4091}
4092extern "C" {
4093    pub fn endusershell();
4094}
4095extern "C" {
4096    pub fn setusershell();
4097}
4098extern "C" {
4099    pub fn daemon(__nochdir: cty::c_int, __noclose: cty::c_int) -> cty::c_int;
4100}
4101extern "C" {
4102    pub fn chroot(__path: *const cty::c_char) -> cty::c_int;
4103}
4104extern "C" {
4105    pub fn getpass(__prompt: *const cty::c_char) -> *mut cty::c_char;
4106}
4107extern "C" {
4108    pub fn fsync(__fd: cty::c_int) -> cty::c_int;
4109}
4110extern "C" {
4111    pub fn gethostid() -> cty::c_long;
4112}
4113extern "C" {
4114    pub fn sync();
4115}
4116extern "C" {
4117    pub fn getpagesize() -> cty::c_int;
4118}
4119extern "C" {
4120    pub fn getdtablesize() -> cty::c_int;
4121}
4122extern "C" {
4123    pub fn truncate(__file: *const cty::c_char, __length: __off_t) -> cty::c_int;
4124}
4125extern "C" {
4126    pub fn ftruncate(__fd: cty::c_int, __length: __off_t) -> cty::c_int;
4127}
4128extern "C" {
4129    pub fn brk(__addr: *mut cty::c_void) -> cty::c_int;
4130}
4131extern "C" {
4132    pub fn sbrk(__delta: isize) -> *mut cty::c_void;
4133}
4134extern "C" {
4135    pub fn syscall(__sysno: cty::c_long, ...) -> cty::c_long;
4136}
4137extern "C" {
4138    pub fn lockf(__fd: cty::c_int, __cmd: cty::c_int, __len: __off_t) -> cty::c_int;
4139}
4140extern "C" {
4141    pub fn fdatasync(__fildes: cty::c_int) -> cty::c_int;
4142}
4143extern "C" {
4144    pub fn crypt(__key: *const cty::c_char, __salt: *const cty::c_char) -> *mut cty::c_char;
4145}
4146extern "C" {
4147    pub fn getentropy(__buffer: *mut cty::c_void, __length: usize) -> cty::c_int;
4148}
4149extern "C" {
4150    pub fn __errno_location() -> *mut cty::c_int;
4151}
4152pub type float_t = f32;
4153pub type double_t = f64;
4154extern "C" {
4155    pub fn __fpclassify(__value: f64) -> cty::c_int;
4156}
4157extern "C" {
4158    pub fn __signbit(__value: f64) -> cty::c_int;
4159}
4160extern "C" {
4161    pub fn __isinf(__value: f64) -> cty::c_int;
4162}
4163extern "C" {
4164    pub fn __finite(__value: f64) -> cty::c_int;
4165}
4166extern "C" {
4167    pub fn __isnan(__value: f64) -> cty::c_int;
4168}
4169extern "C" {
4170    pub fn __iseqsig(__x: f64, __y: f64) -> cty::c_int;
4171}
4172extern "C" {
4173    pub fn __issignaling(__value: f64) -> cty::c_int;
4174}
4175extern "C" {
4176    pub fn acos(__x: f64) -> f64;
4177}
4178extern "C" {
4179    pub fn __acos(__x: f64) -> f64;
4180}
4181extern "C" {
4182    pub fn asin(__x: f64) -> f64;
4183}
4184extern "C" {
4185    pub fn __asin(__x: f64) -> f64;
4186}
4187extern "C" {
4188    pub fn atan(__x: f64) -> f64;
4189}
4190extern "C" {
4191    pub fn __atan(__x: f64) -> f64;
4192}
4193extern "C" {
4194    pub fn atan2(__y: f64, __x: f64) -> f64;
4195}
4196extern "C" {
4197    pub fn __atan2(__y: f64, __x: f64) -> f64;
4198}
4199extern "C" {
4200    pub fn cos(__x: f64) -> f64;
4201}
4202extern "C" {
4203    pub fn __cos(__x: f64) -> f64;
4204}
4205extern "C" {
4206    pub fn sin(__x: f64) -> f64;
4207}
4208extern "C" {
4209    pub fn __sin(__x: f64) -> f64;
4210}
4211extern "C" {
4212    pub fn tan(__x: f64) -> f64;
4213}
4214extern "C" {
4215    pub fn __tan(__x: f64) -> f64;
4216}
4217extern "C" {
4218    pub fn cosh(__x: f64) -> f64;
4219}
4220extern "C" {
4221    pub fn __cosh(__x: f64) -> f64;
4222}
4223extern "C" {
4224    pub fn sinh(__x: f64) -> f64;
4225}
4226extern "C" {
4227    pub fn __sinh(__x: f64) -> f64;
4228}
4229extern "C" {
4230    pub fn tanh(__x: f64) -> f64;
4231}
4232extern "C" {
4233    pub fn __tanh(__x: f64) -> f64;
4234}
4235extern "C" {
4236    pub fn acosh(__x: f64) -> f64;
4237}
4238extern "C" {
4239    pub fn __acosh(__x: f64) -> f64;
4240}
4241extern "C" {
4242    pub fn asinh(__x: f64) -> f64;
4243}
4244extern "C" {
4245    pub fn __asinh(__x: f64) -> f64;
4246}
4247extern "C" {
4248    pub fn atanh(__x: f64) -> f64;
4249}
4250extern "C" {
4251    pub fn __atanh(__x: f64) -> f64;
4252}
4253extern "C" {
4254    pub fn exp(__x: f64) -> f64;
4255}
4256extern "C" {
4257    pub fn __exp(__x: f64) -> f64;
4258}
4259extern "C" {
4260    pub fn frexp(__x: f64, __exponent: *mut cty::c_int) -> f64;
4261}
4262extern "C" {
4263    pub fn __frexp(__x: f64, __exponent: *mut cty::c_int) -> f64;
4264}
4265extern "C" {
4266    pub fn ldexp(__x: f64, __exponent: cty::c_int) -> f64;
4267}
4268extern "C" {
4269    pub fn __ldexp(__x: f64, __exponent: cty::c_int) -> f64;
4270}
4271extern "C" {
4272    pub fn log(__x: f64) -> f64;
4273}
4274extern "C" {
4275    pub fn __log(__x: f64) -> f64;
4276}
4277extern "C" {
4278    pub fn log10(__x: f64) -> f64;
4279}
4280extern "C" {
4281    pub fn __log10(__x: f64) -> f64;
4282}
4283extern "C" {
4284    pub fn modf(__x: f64, __iptr: *mut f64) -> f64;
4285}
4286extern "C" {
4287    pub fn __modf(__x: f64, __iptr: *mut f64) -> f64;
4288}
4289extern "C" {
4290    pub fn expm1(__x: f64) -> f64;
4291}
4292extern "C" {
4293    pub fn __expm1(__x: f64) -> f64;
4294}
4295extern "C" {
4296    pub fn log1p(__x: f64) -> f64;
4297}
4298extern "C" {
4299    pub fn __log1p(__x: f64) -> f64;
4300}
4301extern "C" {
4302    pub fn logb(__x: f64) -> f64;
4303}
4304extern "C" {
4305    pub fn __logb(__x: f64) -> f64;
4306}
4307extern "C" {
4308    pub fn exp2(__x: f64) -> f64;
4309}
4310extern "C" {
4311    pub fn __exp2(__x: f64) -> f64;
4312}
4313extern "C" {
4314    pub fn log2(__x: f64) -> f64;
4315}
4316extern "C" {
4317    pub fn __log2(__x: f64) -> f64;
4318}
4319extern "C" {
4320    pub fn pow(__x: f64, __y: f64) -> f64;
4321}
4322extern "C" {
4323    pub fn __pow(__x: f64, __y: f64) -> f64;
4324}
4325extern "C" {
4326    pub fn sqrt(__x: f64) -> f64;
4327}
4328extern "C" {
4329    pub fn __sqrt(__x: f64) -> f64;
4330}
4331extern "C" {
4332    pub fn hypot(__x: f64, __y: f64) -> f64;
4333}
4334extern "C" {
4335    pub fn __hypot(__x: f64, __y: f64) -> f64;
4336}
4337extern "C" {
4338    pub fn cbrt(__x: f64) -> f64;
4339}
4340extern "C" {
4341    pub fn __cbrt(__x: f64) -> f64;
4342}
4343extern "C" {
4344    pub fn ceil(__x: f64) -> f64;
4345}
4346extern "C" {
4347    pub fn __ceil(__x: f64) -> f64;
4348}
4349extern "C" {
4350    pub fn fabs(__x: f64) -> f64;
4351}
4352extern "C" {
4353    pub fn __fabs(__x: f64) -> f64;
4354}
4355extern "C" {
4356    pub fn floor(__x: f64) -> f64;
4357}
4358extern "C" {
4359    pub fn __floor(__x: f64) -> f64;
4360}
4361extern "C" {
4362    pub fn fmod(__x: f64, __y: f64) -> f64;
4363}
4364extern "C" {
4365    pub fn __fmod(__x: f64, __y: f64) -> f64;
4366}
4367extern "C" {
4368    pub fn isinf(__value: f64) -> cty::c_int;
4369}
4370extern "C" {
4371    pub fn finite(__value: f64) -> cty::c_int;
4372}
4373extern "C" {
4374    pub fn drem(__x: f64, __y: f64) -> f64;
4375}
4376extern "C" {
4377    pub fn __drem(__x: f64, __y: f64) -> f64;
4378}
4379extern "C" {
4380    pub fn significand(__x: f64) -> f64;
4381}
4382extern "C" {
4383    pub fn __significand(__x: f64) -> f64;
4384}
4385extern "C" {
4386    pub fn copysign(__x: f64, __y: f64) -> f64;
4387}
4388extern "C" {
4389    pub fn __copysign(__x: f64, __y: f64) -> f64;
4390}
4391extern "C" {
4392    pub fn nan(__tagb: *const cty::c_char) -> f64;
4393}
4394extern "C" {
4395    pub fn __nan(__tagb: *const cty::c_char) -> f64;
4396}
4397extern "C" {
4398    pub fn isnan(__value: f64) -> cty::c_int;
4399}
4400extern "C" {
4401    pub fn j0(arg1: f64) -> f64;
4402}
4403extern "C" {
4404    pub fn __j0(arg1: f64) -> f64;
4405}
4406extern "C" {
4407    pub fn j1(arg1: f64) -> f64;
4408}
4409extern "C" {
4410    pub fn __j1(arg1: f64) -> f64;
4411}
4412extern "C" {
4413    pub fn jn(arg1: cty::c_int, arg2: f64) -> f64;
4414}
4415extern "C" {
4416    pub fn __jn(arg1: cty::c_int, arg2: f64) -> f64;
4417}
4418extern "C" {
4419    pub fn y0(arg1: f64) -> f64;
4420}
4421extern "C" {
4422    pub fn __y0(arg1: f64) -> f64;
4423}
4424extern "C" {
4425    pub fn y1(arg1: f64) -> f64;
4426}
4427extern "C" {
4428    pub fn __y1(arg1: f64) -> f64;
4429}
4430extern "C" {
4431    pub fn yn(arg1: cty::c_int, arg2: f64) -> f64;
4432}
4433extern "C" {
4434    pub fn __yn(arg1: cty::c_int, arg2: f64) -> f64;
4435}
4436extern "C" {
4437    pub fn erf(arg1: f64) -> f64;
4438}
4439extern "C" {
4440    pub fn __erf(arg1: f64) -> f64;
4441}
4442extern "C" {
4443    pub fn erfc(arg1: f64) -> f64;
4444}
4445extern "C" {
4446    pub fn __erfc(arg1: f64) -> f64;
4447}
4448extern "C" {
4449    pub fn lgamma(arg1: f64) -> f64;
4450}
4451extern "C" {
4452    pub fn __lgamma(arg1: f64) -> f64;
4453}
4454extern "C" {
4455    pub fn tgamma(arg1: f64) -> f64;
4456}
4457extern "C" {
4458    pub fn __tgamma(arg1: f64) -> f64;
4459}
4460extern "C" {
4461    pub fn gamma(arg1: f64) -> f64;
4462}
4463extern "C" {
4464    pub fn __gamma(arg1: f64) -> f64;
4465}
4466extern "C" {
4467    pub fn lgamma_r(arg1: f64, __signgamp: *mut cty::c_int) -> f64;
4468}
4469extern "C" {
4470    pub fn __lgamma_r(arg1: f64, __signgamp: *mut cty::c_int) -> f64;
4471}
4472extern "C" {
4473    pub fn rint(__x: f64) -> f64;
4474}
4475extern "C" {
4476    pub fn __rint(__x: f64) -> f64;
4477}
4478extern "C" {
4479    pub fn nextafter(__x: f64, __y: f64) -> f64;
4480}
4481extern "C" {
4482    pub fn __nextafter(__x: f64, __y: f64) -> f64;
4483}
4484extern "C" {
4485    pub fn nexttoward(__x: f64, __y: u128) -> f64;
4486}
4487extern "C" {
4488    pub fn __nexttoward(__x: f64, __y: u128) -> f64;
4489}
4490extern "C" {
4491    pub fn remainder(__x: f64, __y: f64) -> f64;
4492}
4493extern "C" {
4494    pub fn __remainder(__x: f64, __y: f64) -> f64;
4495}
4496extern "C" {
4497    pub fn scalbn(__x: f64, __n: cty::c_int) -> f64;
4498}
4499extern "C" {
4500    pub fn __scalbn(__x: f64, __n: cty::c_int) -> f64;
4501}
4502extern "C" {
4503    pub fn ilogb(__x: f64) -> cty::c_int;
4504}
4505extern "C" {
4506    pub fn __ilogb(__x: f64) -> cty::c_int;
4507}
4508extern "C" {
4509    pub fn scalbln(__x: f64, __n: cty::c_long) -> f64;
4510}
4511extern "C" {
4512    pub fn __scalbln(__x: f64, __n: cty::c_long) -> f64;
4513}
4514extern "C" {
4515    pub fn nearbyint(__x: f64) -> f64;
4516}
4517extern "C" {
4518    pub fn __nearbyint(__x: f64) -> f64;
4519}
4520extern "C" {
4521    pub fn round(__x: f64) -> f64;
4522}
4523extern "C" {
4524    pub fn __round(__x: f64) -> f64;
4525}
4526extern "C" {
4527    pub fn trunc(__x: f64) -> f64;
4528}
4529extern "C" {
4530    pub fn __trunc(__x: f64) -> f64;
4531}
4532extern "C" {
4533    pub fn remquo(__x: f64, __y: f64, __quo: *mut cty::c_int) -> f64;
4534}
4535extern "C" {
4536    pub fn __remquo(__x: f64, __y: f64, __quo: *mut cty::c_int) -> f64;
4537}
4538extern "C" {
4539    pub fn lrint(__x: f64) -> cty::c_long;
4540}
4541extern "C" {
4542    pub fn __lrint(__x: f64) -> cty::c_long;
4543}
4544extern "C" {
4545    pub fn llrint(__x: f64) -> cty::c_longlong;
4546}
4547extern "C" {
4548    pub fn __llrint(__x: f64) -> cty::c_longlong;
4549}
4550extern "C" {
4551    pub fn lround(__x: f64) -> cty::c_long;
4552}
4553extern "C" {
4554    pub fn __lround(__x: f64) -> cty::c_long;
4555}
4556extern "C" {
4557    pub fn llround(__x: f64) -> cty::c_longlong;
4558}
4559extern "C" {
4560    pub fn __llround(__x: f64) -> cty::c_longlong;
4561}
4562extern "C" {
4563    pub fn fdim(__x: f64, __y: f64) -> f64;
4564}
4565extern "C" {
4566    pub fn __fdim(__x: f64, __y: f64) -> f64;
4567}
4568extern "C" {
4569    pub fn fmax(__x: f64, __y: f64) -> f64;
4570}
4571extern "C" {
4572    pub fn __fmax(__x: f64, __y: f64) -> f64;
4573}
4574extern "C" {
4575    pub fn fmin(__x: f64, __y: f64) -> f64;
4576}
4577extern "C" {
4578    pub fn __fmin(__x: f64, __y: f64) -> f64;
4579}
4580extern "C" {
4581    pub fn fma(__x: f64, __y: f64, __z: f64) -> f64;
4582}
4583extern "C" {
4584    pub fn __fma(__x: f64, __y: f64, __z: f64) -> f64;
4585}
4586extern "C" {
4587    pub fn scalb(__x: f64, __n: f64) -> f64;
4588}
4589extern "C" {
4590    pub fn __scalb(__x: f64, __n: f64) -> f64;
4591}
4592extern "C" {
4593    pub fn __fpclassifyf(__value: f32) -> cty::c_int;
4594}
4595extern "C" {
4596    pub fn __signbitf(__value: f32) -> cty::c_int;
4597}
4598extern "C" {
4599    pub fn __isinff(__value: f32) -> cty::c_int;
4600}
4601extern "C" {
4602    pub fn __finitef(__value: f32) -> cty::c_int;
4603}
4604extern "C" {
4605    pub fn __isnanf(__value: f32) -> cty::c_int;
4606}
4607extern "C" {
4608    pub fn __iseqsigf(__x: f32, __y: f32) -> cty::c_int;
4609}
4610extern "C" {
4611    pub fn __issignalingf(__value: f32) -> cty::c_int;
4612}
4613extern "C" {
4614    pub fn acosf(__x: f32) -> f32;
4615}
4616extern "C" {
4617    pub fn __acosf(__x: f32) -> f32;
4618}
4619extern "C" {
4620    pub fn asinf(__x: f32) -> f32;
4621}
4622extern "C" {
4623    pub fn __asinf(__x: f32) -> f32;
4624}
4625extern "C" {
4626    pub fn atanf(__x: f32) -> f32;
4627}
4628extern "C" {
4629    pub fn __atanf(__x: f32) -> f32;
4630}
4631extern "C" {
4632    pub fn atan2f(__y: f32, __x: f32) -> f32;
4633}
4634extern "C" {
4635    pub fn __atan2f(__y: f32, __x: f32) -> f32;
4636}
4637extern "C" {
4638    pub fn cosf(__x: f32) -> f32;
4639}
4640extern "C" {
4641    pub fn __cosf(__x: f32) -> f32;
4642}
4643extern "C" {
4644    pub fn sinf(__x: f32) -> f32;
4645}
4646extern "C" {
4647    pub fn __sinf(__x: f32) -> f32;
4648}
4649extern "C" {
4650    pub fn tanf(__x: f32) -> f32;
4651}
4652extern "C" {
4653    pub fn __tanf(__x: f32) -> f32;
4654}
4655extern "C" {
4656    pub fn coshf(__x: f32) -> f32;
4657}
4658extern "C" {
4659    pub fn __coshf(__x: f32) -> f32;
4660}
4661extern "C" {
4662    pub fn sinhf(__x: f32) -> f32;
4663}
4664extern "C" {
4665    pub fn __sinhf(__x: f32) -> f32;
4666}
4667extern "C" {
4668    pub fn tanhf(__x: f32) -> f32;
4669}
4670extern "C" {
4671    pub fn __tanhf(__x: f32) -> f32;
4672}
4673extern "C" {
4674    pub fn acoshf(__x: f32) -> f32;
4675}
4676extern "C" {
4677    pub fn __acoshf(__x: f32) -> f32;
4678}
4679extern "C" {
4680    pub fn asinhf(__x: f32) -> f32;
4681}
4682extern "C" {
4683    pub fn __asinhf(__x: f32) -> f32;
4684}
4685extern "C" {
4686    pub fn atanhf(__x: f32) -> f32;
4687}
4688extern "C" {
4689    pub fn __atanhf(__x: f32) -> f32;
4690}
4691extern "C" {
4692    pub fn expf(__x: f32) -> f32;
4693}
4694extern "C" {
4695    pub fn __expf(__x: f32) -> f32;
4696}
4697extern "C" {
4698    pub fn frexpf(__x: f32, __exponent: *mut cty::c_int) -> f32;
4699}
4700extern "C" {
4701    pub fn __frexpf(__x: f32, __exponent: *mut cty::c_int) -> f32;
4702}
4703extern "C" {
4704    pub fn ldexpf(__x: f32, __exponent: cty::c_int) -> f32;
4705}
4706extern "C" {
4707    pub fn __ldexpf(__x: f32, __exponent: cty::c_int) -> f32;
4708}
4709extern "C" {
4710    pub fn logf(__x: f32) -> f32;
4711}
4712extern "C" {
4713    pub fn __logf(__x: f32) -> f32;
4714}
4715extern "C" {
4716    pub fn log10f(__x: f32) -> f32;
4717}
4718extern "C" {
4719    pub fn __log10f(__x: f32) -> f32;
4720}
4721extern "C" {
4722    pub fn modff(__x: f32, __iptr: *mut f32) -> f32;
4723}
4724extern "C" {
4725    pub fn __modff(__x: f32, __iptr: *mut f32) -> f32;
4726}
4727extern "C" {
4728    pub fn expm1f(__x: f32) -> f32;
4729}
4730extern "C" {
4731    pub fn __expm1f(__x: f32) -> f32;
4732}
4733extern "C" {
4734    pub fn log1pf(__x: f32) -> f32;
4735}
4736extern "C" {
4737    pub fn __log1pf(__x: f32) -> f32;
4738}
4739extern "C" {
4740    pub fn logbf(__x: f32) -> f32;
4741}
4742extern "C" {
4743    pub fn __logbf(__x: f32) -> f32;
4744}
4745extern "C" {
4746    pub fn exp2f(__x: f32) -> f32;
4747}
4748extern "C" {
4749    pub fn __exp2f(__x: f32) -> f32;
4750}
4751extern "C" {
4752    pub fn log2f(__x: f32) -> f32;
4753}
4754extern "C" {
4755    pub fn __log2f(__x: f32) -> f32;
4756}
4757extern "C" {
4758    pub fn powf(__x: f32, __y: f32) -> f32;
4759}
4760extern "C" {
4761    pub fn __powf(__x: f32, __y: f32) -> f32;
4762}
4763extern "C" {
4764    pub fn sqrtf(__x: f32) -> f32;
4765}
4766extern "C" {
4767    pub fn __sqrtf(__x: f32) -> f32;
4768}
4769extern "C" {
4770    pub fn hypotf(__x: f32, __y: f32) -> f32;
4771}
4772extern "C" {
4773    pub fn __hypotf(__x: f32, __y: f32) -> f32;
4774}
4775extern "C" {
4776    pub fn cbrtf(__x: f32) -> f32;
4777}
4778extern "C" {
4779    pub fn __cbrtf(__x: f32) -> f32;
4780}
4781extern "C" {
4782    pub fn ceilf(__x: f32) -> f32;
4783}
4784extern "C" {
4785    pub fn __ceilf(__x: f32) -> f32;
4786}
4787extern "C" {
4788    pub fn fabsf(__x: f32) -> f32;
4789}
4790extern "C" {
4791    pub fn __fabsf(__x: f32) -> f32;
4792}
4793extern "C" {
4794    pub fn floorf(__x: f32) -> f32;
4795}
4796extern "C" {
4797    pub fn __floorf(__x: f32) -> f32;
4798}
4799extern "C" {
4800    pub fn fmodf(__x: f32, __y: f32) -> f32;
4801}
4802extern "C" {
4803    pub fn __fmodf(__x: f32, __y: f32) -> f32;
4804}
4805extern "C" {
4806    pub fn isinff(__value: f32) -> cty::c_int;
4807}
4808extern "C" {
4809    pub fn finitef(__value: f32) -> cty::c_int;
4810}
4811extern "C" {
4812    pub fn dremf(__x: f32, __y: f32) -> f32;
4813}
4814extern "C" {
4815    pub fn __dremf(__x: f32, __y: f32) -> f32;
4816}
4817extern "C" {
4818    pub fn significandf(__x: f32) -> f32;
4819}
4820extern "C" {
4821    pub fn __significandf(__x: f32) -> f32;
4822}
4823extern "C" {
4824    pub fn copysignf(__x: f32, __y: f32) -> f32;
4825}
4826extern "C" {
4827    pub fn __copysignf(__x: f32, __y: f32) -> f32;
4828}
4829extern "C" {
4830    pub fn nanf(__tagb: *const cty::c_char) -> f32;
4831}
4832extern "C" {
4833    pub fn __nanf(__tagb: *const cty::c_char) -> f32;
4834}
4835extern "C" {
4836    pub fn isnanf(__value: f32) -> cty::c_int;
4837}
4838extern "C" {
4839    pub fn j0f(arg1: f32) -> f32;
4840}
4841extern "C" {
4842    pub fn __j0f(arg1: f32) -> f32;
4843}
4844extern "C" {
4845    pub fn j1f(arg1: f32) -> f32;
4846}
4847extern "C" {
4848    pub fn __j1f(arg1: f32) -> f32;
4849}
4850extern "C" {
4851    pub fn jnf(arg1: cty::c_int, arg2: f32) -> f32;
4852}
4853extern "C" {
4854    pub fn __jnf(arg1: cty::c_int, arg2: f32) -> f32;
4855}
4856extern "C" {
4857    pub fn y0f(arg1: f32) -> f32;
4858}
4859extern "C" {
4860    pub fn __y0f(arg1: f32) -> f32;
4861}
4862extern "C" {
4863    pub fn y1f(arg1: f32) -> f32;
4864}
4865extern "C" {
4866    pub fn __y1f(arg1: f32) -> f32;
4867}
4868extern "C" {
4869    pub fn ynf(arg1: cty::c_int, arg2: f32) -> f32;
4870}
4871extern "C" {
4872    pub fn __ynf(arg1: cty::c_int, arg2: f32) -> f32;
4873}
4874extern "C" {
4875    pub fn erff(arg1: f32) -> f32;
4876}
4877extern "C" {
4878    pub fn __erff(arg1: f32) -> f32;
4879}
4880extern "C" {
4881    pub fn erfcf(arg1: f32) -> f32;
4882}
4883extern "C" {
4884    pub fn __erfcf(arg1: f32) -> f32;
4885}
4886extern "C" {
4887    pub fn lgammaf(arg1: f32) -> f32;
4888}
4889extern "C" {
4890    pub fn __lgammaf(arg1: f32) -> f32;
4891}
4892extern "C" {
4893    pub fn tgammaf(arg1: f32) -> f32;
4894}
4895extern "C" {
4896    pub fn __tgammaf(arg1: f32) -> f32;
4897}
4898extern "C" {
4899    pub fn gammaf(arg1: f32) -> f32;
4900}
4901extern "C" {
4902    pub fn __gammaf(arg1: f32) -> f32;
4903}
4904extern "C" {
4905    pub fn lgammaf_r(arg1: f32, __signgamp: *mut cty::c_int) -> f32;
4906}
4907extern "C" {
4908    pub fn __lgammaf_r(arg1: f32, __signgamp: *mut cty::c_int) -> f32;
4909}
4910extern "C" {
4911    pub fn rintf(__x: f32) -> f32;
4912}
4913extern "C" {
4914    pub fn __rintf(__x: f32) -> f32;
4915}
4916extern "C" {
4917    pub fn nextafterf(__x: f32, __y: f32) -> f32;
4918}
4919extern "C" {
4920    pub fn __nextafterf(__x: f32, __y: f32) -> f32;
4921}
4922extern "C" {
4923    pub fn nexttowardf(__x: f32, __y: u128) -> f32;
4924}
4925extern "C" {
4926    pub fn __nexttowardf(__x: f32, __y: u128) -> f32;
4927}
4928extern "C" {
4929    pub fn remainderf(__x: f32, __y: f32) -> f32;
4930}
4931extern "C" {
4932    pub fn __remainderf(__x: f32, __y: f32) -> f32;
4933}
4934extern "C" {
4935    pub fn scalbnf(__x: f32, __n: cty::c_int) -> f32;
4936}
4937extern "C" {
4938    pub fn __scalbnf(__x: f32, __n: cty::c_int) -> f32;
4939}
4940extern "C" {
4941    pub fn ilogbf(__x: f32) -> cty::c_int;
4942}
4943extern "C" {
4944    pub fn __ilogbf(__x: f32) -> cty::c_int;
4945}
4946extern "C" {
4947    pub fn scalblnf(__x: f32, __n: cty::c_long) -> f32;
4948}
4949extern "C" {
4950    pub fn __scalblnf(__x: f32, __n: cty::c_long) -> f32;
4951}
4952extern "C" {
4953    pub fn nearbyintf(__x: f32) -> f32;
4954}
4955extern "C" {
4956    pub fn __nearbyintf(__x: f32) -> f32;
4957}
4958extern "C" {
4959    pub fn roundf(__x: f32) -> f32;
4960}
4961extern "C" {
4962    pub fn __roundf(__x: f32) -> f32;
4963}
4964extern "C" {
4965    pub fn truncf(__x: f32) -> f32;
4966}
4967extern "C" {
4968    pub fn __truncf(__x: f32) -> f32;
4969}
4970extern "C" {
4971    pub fn remquof(__x: f32, __y: f32, __quo: *mut cty::c_int) -> f32;
4972}
4973extern "C" {
4974    pub fn __remquof(__x: f32, __y: f32, __quo: *mut cty::c_int) -> f32;
4975}
4976extern "C" {
4977    pub fn lrintf(__x: f32) -> cty::c_long;
4978}
4979extern "C" {
4980    pub fn __lrintf(__x: f32) -> cty::c_long;
4981}
4982extern "C" {
4983    pub fn llrintf(__x: f32) -> cty::c_longlong;
4984}
4985extern "C" {
4986    pub fn __llrintf(__x: f32) -> cty::c_longlong;
4987}
4988extern "C" {
4989    pub fn lroundf(__x: f32) -> cty::c_long;
4990}
4991extern "C" {
4992    pub fn __lroundf(__x: f32) -> cty::c_long;
4993}
4994extern "C" {
4995    pub fn llroundf(__x: f32) -> cty::c_longlong;
4996}
4997extern "C" {
4998    pub fn __llroundf(__x: f32) -> cty::c_longlong;
4999}
5000extern "C" {
5001    pub fn fdimf(__x: f32, __y: f32) -> f32;
5002}
5003extern "C" {
5004    pub fn __fdimf(__x: f32, __y: f32) -> f32;
5005}
5006extern "C" {
5007    pub fn fmaxf(__x: f32, __y: f32) -> f32;
5008}
5009extern "C" {
5010    pub fn __fmaxf(__x: f32, __y: f32) -> f32;
5011}
5012extern "C" {
5013    pub fn fminf(__x: f32, __y: f32) -> f32;
5014}
5015extern "C" {
5016    pub fn __fminf(__x: f32, __y: f32) -> f32;
5017}
5018extern "C" {
5019    pub fn fmaf(__x: f32, __y: f32, __z: f32) -> f32;
5020}
5021extern "C" {
5022    pub fn __fmaf(__x: f32, __y: f32, __z: f32) -> f32;
5023}
5024extern "C" {
5025    pub fn scalbf(__x: f32, __n: f32) -> f32;
5026}
5027extern "C" {
5028    pub fn __scalbf(__x: f32, __n: f32) -> f32;
5029}
5030extern "C" {
5031    pub fn __fpclassifyl(__value: u128) -> cty::c_int;
5032}
5033extern "C" {
5034    pub fn __signbitl(__value: u128) -> cty::c_int;
5035}
5036extern "C" {
5037    pub fn __isinfl(__value: u128) -> cty::c_int;
5038}
5039extern "C" {
5040    pub fn __finitel(__value: u128) -> cty::c_int;
5041}
5042extern "C" {
5043    pub fn __isnanl(__value: u128) -> cty::c_int;
5044}
5045extern "C" {
5046    pub fn __iseqsigl(__x: u128, __y: u128) -> cty::c_int;
5047}
5048extern "C" {
5049    pub fn __issignalingl(__value: u128) -> cty::c_int;
5050}
5051extern "C" {
5052    pub fn acosl(__x: u128) -> u128;
5053}
5054extern "C" {
5055    pub fn __acosl(__x: u128) -> u128;
5056}
5057extern "C" {
5058    pub fn asinl(__x: u128) -> u128;
5059}
5060extern "C" {
5061    pub fn __asinl(__x: u128) -> u128;
5062}
5063extern "C" {
5064    pub fn atanl(__x: u128) -> u128;
5065}
5066extern "C" {
5067    pub fn __atanl(__x: u128) -> u128;
5068}
5069extern "C" {
5070    pub fn atan2l(__y: u128, __x: u128) -> u128;
5071}
5072extern "C" {
5073    pub fn __atan2l(__y: u128, __x: u128) -> u128;
5074}
5075extern "C" {
5076    pub fn cosl(__x: u128) -> u128;
5077}
5078extern "C" {
5079    pub fn __cosl(__x: u128) -> u128;
5080}
5081extern "C" {
5082    pub fn sinl(__x: u128) -> u128;
5083}
5084extern "C" {
5085    pub fn __sinl(__x: u128) -> u128;
5086}
5087extern "C" {
5088    pub fn tanl(__x: u128) -> u128;
5089}
5090extern "C" {
5091    pub fn __tanl(__x: u128) -> u128;
5092}
5093extern "C" {
5094    pub fn coshl(__x: u128) -> u128;
5095}
5096extern "C" {
5097    pub fn __coshl(__x: u128) -> u128;
5098}
5099extern "C" {
5100    pub fn sinhl(__x: u128) -> u128;
5101}
5102extern "C" {
5103    pub fn __sinhl(__x: u128) -> u128;
5104}
5105extern "C" {
5106    pub fn tanhl(__x: u128) -> u128;
5107}
5108extern "C" {
5109    pub fn __tanhl(__x: u128) -> u128;
5110}
5111extern "C" {
5112    pub fn acoshl(__x: u128) -> u128;
5113}
5114extern "C" {
5115    pub fn __acoshl(__x: u128) -> u128;
5116}
5117extern "C" {
5118    pub fn asinhl(__x: u128) -> u128;
5119}
5120extern "C" {
5121    pub fn __asinhl(__x: u128) -> u128;
5122}
5123extern "C" {
5124    pub fn atanhl(__x: u128) -> u128;
5125}
5126extern "C" {
5127    pub fn __atanhl(__x: u128) -> u128;
5128}
5129extern "C" {
5130    pub fn expl(__x: u128) -> u128;
5131}
5132extern "C" {
5133    pub fn __expl(__x: u128) -> u128;
5134}
5135extern "C" {
5136    pub fn frexpl(__x: u128, __exponent: *mut cty::c_int) -> u128;
5137}
5138extern "C" {
5139    pub fn __frexpl(__x: u128, __exponent: *mut cty::c_int) -> u128;
5140}
5141extern "C" {
5142    pub fn ldexpl(__x: u128, __exponent: cty::c_int) -> u128;
5143}
5144extern "C" {
5145    pub fn __ldexpl(__x: u128, __exponent: cty::c_int) -> u128;
5146}
5147extern "C" {
5148    pub fn logl(__x: u128) -> u128;
5149}
5150extern "C" {
5151    pub fn __logl(__x: u128) -> u128;
5152}
5153extern "C" {
5154    pub fn log10l(__x: u128) -> u128;
5155}
5156extern "C" {
5157    pub fn __log10l(__x: u128) -> u128;
5158}
5159extern "C" {
5160    pub fn modfl(__x: u128, __iptr: *mut u128) -> u128;
5161}
5162extern "C" {
5163    pub fn __modfl(__x: u128, __iptr: *mut u128) -> u128;
5164}
5165extern "C" {
5166    pub fn expm1l(__x: u128) -> u128;
5167}
5168extern "C" {
5169    pub fn __expm1l(__x: u128) -> u128;
5170}
5171extern "C" {
5172    pub fn log1pl(__x: u128) -> u128;
5173}
5174extern "C" {
5175    pub fn __log1pl(__x: u128) -> u128;
5176}
5177extern "C" {
5178    pub fn logbl(__x: u128) -> u128;
5179}
5180extern "C" {
5181    pub fn __logbl(__x: u128) -> u128;
5182}
5183extern "C" {
5184    pub fn exp2l(__x: u128) -> u128;
5185}
5186extern "C" {
5187    pub fn __exp2l(__x: u128) -> u128;
5188}
5189extern "C" {
5190    pub fn log2l(__x: u128) -> u128;
5191}
5192extern "C" {
5193    pub fn __log2l(__x: u128) -> u128;
5194}
5195extern "C" {
5196    pub fn powl(__x: u128, __y: u128) -> u128;
5197}
5198extern "C" {
5199    pub fn __powl(__x: u128, __y: u128) -> u128;
5200}
5201extern "C" {
5202    pub fn sqrtl(__x: u128) -> u128;
5203}
5204extern "C" {
5205    pub fn __sqrtl(__x: u128) -> u128;
5206}
5207extern "C" {
5208    pub fn hypotl(__x: u128, __y: u128) -> u128;
5209}
5210extern "C" {
5211    pub fn __hypotl(__x: u128, __y: u128) -> u128;
5212}
5213extern "C" {
5214    pub fn cbrtl(__x: u128) -> u128;
5215}
5216extern "C" {
5217    pub fn __cbrtl(__x: u128) -> u128;
5218}
5219extern "C" {
5220    pub fn ceill(__x: u128) -> u128;
5221}
5222extern "C" {
5223    pub fn __ceill(__x: u128) -> u128;
5224}
5225extern "C" {
5226    pub fn fabsl(__x: u128) -> u128;
5227}
5228extern "C" {
5229    pub fn __fabsl(__x: u128) -> u128;
5230}
5231extern "C" {
5232    pub fn floorl(__x: u128) -> u128;
5233}
5234extern "C" {
5235    pub fn __floorl(__x: u128) -> u128;
5236}
5237extern "C" {
5238    pub fn fmodl(__x: u128, __y: u128) -> u128;
5239}
5240extern "C" {
5241    pub fn __fmodl(__x: u128, __y: u128) -> u128;
5242}
5243extern "C" {
5244    pub fn isinfl(__value: u128) -> cty::c_int;
5245}
5246extern "C" {
5247    pub fn finitel(__value: u128) -> cty::c_int;
5248}
5249extern "C" {
5250    pub fn dreml(__x: u128, __y: u128) -> u128;
5251}
5252extern "C" {
5253    pub fn __dreml(__x: u128, __y: u128) -> u128;
5254}
5255extern "C" {
5256    pub fn significandl(__x: u128) -> u128;
5257}
5258extern "C" {
5259    pub fn __significandl(__x: u128) -> u128;
5260}
5261extern "C" {
5262    pub fn copysignl(__x: u128, __y: u128) -> u128;
5263}
5264extern "C" {
5265    pub fn __copysignl(__x: u128, __y: u128) -> u128;
5266}
5267extern "C" {
5268    pub fn nanl(__tagb: *const cty::c_char) -> u128;
5269}
5270extern "C" {
5271    pub fn __nanl(__tagb: *const cty::c_char) -> u128;
5272}
5273extern "C" {
5274    pub fn isnanl(__value: u128) -> cty::c_int;
5275}
5276extern "C" {
5277    pub fn j0l(arg1: u128) -> u128;
5278}
5279extern "C" {
5280    pub fn __j0l(arg1: u128) -> u128;
5281}
5282extern "C" {
5283    pub fn j1l(arg1: u128) -> u128;
5284}
5285extern "C" {
5286    pub fn __j1l(arg1: u128) -> u128;
5287}
5288extern "C" {
5289    pub fn jnl(arg1: cty::c_int, arg2: u128) -> u128;
5290}
5291extern "C" {
5292    pub fn __jnl(arg1: cty::c_int, arg2: u128) -> u128;
5293}
5294extern "C" {
5295    pub fn y0l(arg1: u128) -> u128;
5296}
5297extern "C" {
5298    pub fn __y0l(arg1: u128) -> u128;
5299}
5300extern "C" {
5301    pub fn y1l(arg1: u128) -> u128;
5302}
5303extern "C" {
5304    pub fn __y1l(arg1: u128) -> u128;
5305}
5306extern "C" {
5307    pub fn ynl(arg1: cty::c_int, arg2: u128) -> u128;
5308}
5309extern "C" {
5310    pub fn __ynl(arg1: cty::c_int, arg2: u128) -> u128;
5311}
5312extern "C" {
5313    pub fn erfl(arg1: u128) -> u128;
5314}
5315extern "C" {
5316    pub fn __erfl(arg1: u128) -> u128;
5317}
5318extern "C" {
5319    pub fn erfcl(arg1: u128) -> u128;
5320}
5321extern "C" {
5322    pub fn __erfcl(arg1: u128) -> u128;
5323}
5324extern "C" {
5325    pub fn lgammal(arg1: u128) -> u128;
5326}
5327extern "C" {
5328    pub fn __lgammal(arg1: u128) -> u128;
5329}
5330extern "C" {
5331    pub fn tgammal(arg1: u128) -> u128;
5332}
5333extern "C" {
5334    pub fn __tgammal(arg1: u128) -> u128;
5335}
5336extern "C" {
5337    pub fn gammal(arg1: u128) -> u128;
5338}
5339extern "C" {
5340    pub fn __gammal(arg1: u128) -> u128;
5341}
5342extern "C" {
5343    pub fn lgammal_r(arg1: u128, __signgamp: *mut cty::c_int) -> u128;
5344}
5345extern "C" {
5346    pub fn __lgammal_r(arg1: u128, __signgamp: *mut cty::c_int) -> u128;
5347}
5348extern "C" {
5349    pub fn rintl(__x: u128) -> u128;
5350}
5351extern "C" {
5352    pub fn __rintl(__x: u128) -> u128;
5353}
5354extern "C" {
5355    pub fn nextafterl(__x: u128, __y: u128) -> u128;
5356}
5357extern "C" {
5358    pub fn __nextafterl(__x: u128, __y: u128) -> u128;
5359}
5360extern "C" {
5361    pub fn nexttowardl(__x: u128, __y: u128) -> u128;
5362}
5363extern "C" {
5364    pub fn __nexttowardl(__x: u128, __y: u128) -> u128;
5365}
5366extern "C" {
5367    pub fn remainderl(__x: u128, __y: u128) -> u128;
5368}
5369extern "C" {
5370    pub fn __remainderl(__x: u128, __y: u128) -> u128;
5371}
5372extern "C" {
5373    pub fn scalbnl(__x: u128, __n: cty::c_int) -> u128;
5374}
5375extern "C" {
5376    pub fn __scalbnl(__x: u128, __n: cty::c_int) -> u128;
5377}
5378extern "C" {
5379    pub fn ilogbl(__x: u128) -> cty::c_int;
5380}
5381extern "C" {
5382    pub fn __ilogbl(__x: u128) -> cty::c_int;
5383}
5384extern "C" {
5385    pub fn scalblnl(__x: u128, __n: cty::c_long) -> u128;
5386}
5387extern "C" {
5388    pub fn __scalblnl(__x: u128, __n: cty::c_long) -> u128;
5389}
5390extern "C" {
5391    pub fn nearbyintl(__x: u128) -> u128;
5392}
5393extern "C" {
5394    pub fn __nearbyintl(__x: u128) -> u128;
5395}
5396extern "C" {
5397    pub fn roundl(__x: u128) -> u128;
5398}
5399extern "C" {
5400    pub fn __roundl(__x: u128) -> u128;
5401}
5402extern "C" {
5403    pub fn truncl(__x: u128) -> u128;
5404}
5405extern "C" {
5406    pub fn __truncl(__x: u128) -> u128;
5407}
5408extern "C" {
5409    pub fn remquol(__x: u128, __y: u128, __quo: *mut cty::c_int) -> u128;
5410}
5411extern "C" {
5412    pub fn __remquol(__x: u128, __y: u128, __quo: *mut cty::c_int) -> u128;
5413}
5414extern "C" {
5415    pub fn lrintl(__x: u128) -> cty::c_long;
5416}
5417extern "C" {
5418    pub fn __lrintl(__x: u128) -> cty::c_long;
5419}
5420extern "C" {
5421    pub fn llrintl(__x: u128) -> cty::c_longlong;
5422}
5423extern "C" {
5424    pub fn __llrintl(__x: u128) -> cty::c_longlong;
5425}
5426extern "C" {
5427    pub fn lroundl(__x: u128) -> cty::c_long;
5428}
5429extern "C" {
5430    pub fn __lroundl(__x: u128) -> cty::c_long;
5431}
5432extern "C" {
5433    pub fn llroundl(__x: u128) -> cty::c_longlong;
5434}
5435extern "C" {
5436    pub fn __llroundl(__x: u128) -> cty::c_longlong;
5437}
5438extern "C" {
5439    pub fn fdiml(__x: u128, __y: u128) -> u128;
5440}
5441extern "C" {
5442    pub fn __fdiml(__x: u128, __y: u128) -> u128;
5443}
5444extern "C" {
5445    pub fn fmaxl(__x: u128, __y: u128) -> u128;
5446}
5447extern "C" {
5448    pub fn __fmaxl(__x: u128, __y: u128) -> u128;
5449}
5450extern "C" {
5451    pub fn fminl(__x: u128, __y: u128) -> u128;
5452}
5453extern "C" {
5454    pub fn __fminl(__x: u128, __y: u128) -> u128;
5455}
5456extern "C" {
5457    pub fn fmal(__x: u128, __y: u128, __z: u128) -> u128;
5458}
5459extern "C" {
5460    pub fn __fmal(__x: u128, __y: u128, __z: u128) -> u128;
5461}
5462extern "C" {
5463    pub fn scalbl(__x: u128, __n: u128) -> u128;
5464}
5465extern "C" {
5466    pub fn __scalbl(__x: u128, __n: u128) -> u128;
5467}
5468pub const FP_NAN: _bindgen_ty_4 = 0;
5469pub const FP_INFINITE: _bindgen_ty_4 = 1;
5470pub const FP_ZERO: _bindgen_ty_4 = 2;
5471pub const FP_SUBNORMAL: _bindgen_ty_4 = 3;
5472pub const FP_NORMAL: _bindgen_ty_4 = 4;
5473pub type _bindgen_ty_4 = u32;
5474pub const tpad_arrow_TPAD_ARROW_NONE: tpad_arrow = 0;
5475pub const tpad_arrow_TPAD_ARROW_UP: tpad_arrow = 1;
5476pub const tpad_arrow_TPAD_ARROW_UPRIGHT: tpad_arrow = 2;
5477pub const tpad_arrow_TPAD_ARROW_RIGHT: tpad_arrow = 3;
5478pub const tpad_arrow_TPAD_ARROW_RIGHTDOWN: tpad_arrow = 4;
5479pub const tpad_arrow_TPAD_ARROW_DOWN: tpad_arrow = 5;
5480pub const tpad_arrow_TPAD_ARROW_DOWNLEFT: tpad_arrow = 6;
5481pub const tpad_arrow_TPAD_ARROW_LEFT: tpad_arrow = 7;
5482pub const tpad_arrow_TPAD_ARROW_LEFTUP: tpad_arrow = 8;
5483pub const tpad_arrow_TPAD_ARROW_CLICK: tpad_arrow = 9;
5484#[doc = " Keys (key=(offset, 2^bit #)"]
5485pub type tpad_arrow = u32;
5486pub use self::tpad_arrow as tpad_arrow_t;
5487#[repr(C)]
5488#[derive(Debug, Copy, Clone)]
5489pub struct t_key {
5490    pub row: cty::c_int,
5491    pub col: cty::c_int,
5492    pub tpad_row: cty::c_int,
5493    pub tpad_col: cty::c_int,
5494    pub tpad_arrow: tpad_arrow_t,
5495}
5496#[test]
5497fn bindgen_test_layout_t_key() {
5498    assert_eq!(
5499        ::core::mem::size_of::<t_key>(),
5500        20usize,
5501        concat!("Size of: ", stringify!(t_key))
5502    );
5503    assert_eq!(
5504        ::core::mem::align_of::<t_key>(),
5505        4usize,
5506        concat!("Alignment of ", stringify!(t_key))
5507    );
5508    assert_eq!(
5509        unsafe { &(*(::core::ptr::null::<t_key>())).row as *const _ as usize },
5510        0usize,
5511        concat!(
5512            "Offset of field: ",
5513            stringify!(t_key),
5514            "::",
5515            stringify!(row)
5516        )
5517    );
5518    assert_eq!(
5519        unsafe { &(*(::core::ptr::null::<t_key>())).col as *const _ as usize },
5520        4usize,
5521        concat!(
5522            "Offset of field: ",
5523            stringify!(t_key),
5524            "::",
5525            stringify!(col)
5526        )
5527    );
5528    assert_eq!(
5529        unsafe { &(*(::core::ptr::null::<t_key>())).tpad_row as *const _ as usize },
5530        8usize,
5531        concat!(
5532            "Offset of field: ",
5533            stringify!(t_key),
5534            "::",
5535            stringify!(tpad_row)
5536        )
5537    );
5538    assert_eq!(
5539        unsafe { &(*(::core::ptr::null::<t_key>())).tpad_col as *const _ as usize },
5540        12usize,
5541        concat!(
5542            "Offset of field: ",
5543            stringify!(t_key),
5544            "::",
5545            stringify!(tpad_col)
5546        )
5547    );
5548    assert_eq!(
5549        unsafe { &(*(::core::ptr::null::<t_key>())).tpad_arrow as *const _ as usize },
5550        16usize,
5551        concat!(
5552            "Offset of field: ",
5553            stringify!(t_key),
5554            "::",
5555            stringify!(tpad_arrow)
5556        )
5557    );
5558}
5559#[repr(C)]
5560#[derive(Debug, Copy, Clone)]
5561pub struct device {
5562    _unused: [u8; 0],
5563}
5564pub type device_t = *mut device;
5565#[repr(C)]
5566#[derive(Debug, Copy, Clone)]
5567pub struct clist {
5568    pub c_cc: cty::c_int,
5569    pub c_cbcount: cty::c_int,
5570    pub c_cbmax: cty::c_int,
5571    pub c_cbreserved: cty::c_int,
5572    pub c_cf: *mut cty::c_char,
5573    pub c_cl: *mut cty::c_char,
5574}
5575#[test]
5576fn bindgen_test_layout_clist() {
5577    assert_eq!(
5578        ::core::mem::size_of::<clist>(),
5579        32usize,
5580        concat!("Size of: ", stringify!(clist))
5581    );
5582    assert_eq!(
5583        ::core::mem::align_of::<clist>(),
5584        8usize,
5585        concat!("Alignment of ", stringify!(clist))
5586    );
5587    assert_eq!(
5588        unsafe { &(*(::core::ptr::null::<clist>())).c_cc as *const _ as usize },
5589        0usize,
5590        concat!(
5591            "Offset of field: ",
5592            stringify!(clist),
5593            "::",
5594            stringify!(c_cc)
5595        )
5596    );
5597    assert_eq!(
5598        unsafe { &(*(::core::ptr::null::<clist>())).c_cbcount as *const _ as usize },
5599        4usize,
5600        concat!(
5601            "Offset of field: ",
5602            stringify!(clist),
5603            "::",
5604            stringify!(c_cbcount)
5605        )
5606    );
5607    assert_eq!(
5608        unsafe { &(*(::core::ptr::null::<clist>())).c_cbmax as *const _ as usize },
5609        8usize,
5610        concat!(
5611            "Offset of field: ",
5612            stringify!(clist),
5613            "::",
5614            stringify!(c_cbmax)
5615        )
5616    );
5617    assert_eq!(
5618        unsafe { &(*(::core::ptr::null::<clist>())).c_cbreserved as *const _ as usize },
5619        12usize,
5620        concat!(
5621            "Offset of field: ",
5622            stringify!(clist),
5623            "::",
5624            stringify!(c_cbreserved)
5625        )
5626    );
5627    assert_eq!(
5628        unsafe { &(*(::core::ptr::null::<clist>())).c_cf as *const _ as usize },
5629        16usize,
5630        concat!(
5631            "Offset of field: ",
5632            stringify!(clist),
5633            "::",
5634            stringify!(c_cf)
5635        )
5636    );
5637    assert_eq!(
5638        unsafe { &(*(::core::ptr::null::<clist>())).c_cl as *const _ as usize },
5639        24usize,
5640        concat!(
5641            "Offset of field: ",
5642            stringify!(clist),
5643            "::",
5644            stringify!(c_cl)
5645        )
5646    );
5647}
5648#[repr(C)]
5649#[derive(Debug, Copy, Clone)]
5650pub struct timezone {
5651    pub tz_minuteswest: cty::c_int,
5652    pub tz_dsttime: cty::c_int,
5653}
5654#[test]
5655fn bindgen_test_layout_timezone() {
5656    assert_eq!(
5657        ::core::mem::size_of::<timezone>(),
5658        8usize,
5659        concat!("Size of: ", stringify!(timezone))
5660    );
5661    assert_eq!(
5662        ::core::mem::align_of::<timezone>(),
5663        4usize,
5664        concat!("Alignment of ", stringify!(timezone))
5665    );
5666    assert_eq!(
5667        unsafe { &(*(::core::ptr::null::<timezone>())).tz_minuteswest as *const _ as usize },
5668        0usize,
5669        concat!(
5670            "Offset of field: ",
5671            stringify!(timezone),
5672            "::",
5673            stringify!(tz_minuteswest)
5674        )
5675    );
5676    assert_eq!(
5677        unsafe { &(*(::core::ptr::null::<timezone>())).tz_dsttime as *const _ as usize },
5678        4usize,
5679        concat!(
5680            "Offset of field: ",
5681            stringify!(timezone),
5682            "::",
5683            stringify!(tz_dsttime)
5684        )
5685    );
5686}
5687pub type __timezone_ptr_t = *mut timezone;
5688extern "C" {
5689    pub fn gettimeofday(__tv: *mut timeval, __tz: __timezone_ptr_t) -> cty::c_int;
5690}
5691extern "C" {
5692    pub fn settimeofday(__tv: *const timeval, __tz: *const timezone) -> cty::c_int;
5693}
5694extern "C" {
5695    pub fn adjtime(__delta: *const timeval, __olddelta: *mut timeval) -> cty::c_int;
5696}
5697pub const __itimer_which_ITIMER_REAL: __itimer_which = 0;
5698pub const __itimer_which_ITIMER_VIRTUAL: __itimer_which = 1;
5699pub const __itimer_which_ITIMER_PROF: __itimer_which = 2;
5700pub type __itimer_which = u32;
5701#[repr(C)]
5702#[derive(Debug, Copy, Clone)]
5703pub struct itimerval {
5704    pub it_interval: timeval,
5705    pub it_value: timeval,
5706}
5707#[test]
5708fn bindgen_test_layout_itimerval() {
5709    assert_eq!(
5710        ::core::mem::size_of::<itimerval>(),
5711        32usize,
5712        concat!("Size of: ", stringify!(itimerval))
5713    );
5714    assert_eq!(
5715        ::core::mem::align_of::<itimerval>(),
5716        8usize,
5717        concat!("Alignment of ", stringify!(itimerval))
5718    );
5719    assert_eq!(
5720        unsafe { &(*(::core::ptr::null::<itimerval>())).it_interval as *const _ as usize },
5721        0usize,
5722        concat!(
5723            "Offset of field: ",
5724            stringify!(itimerval),
5725            "::",
5726            stringify!(it_interval)
5727        )
5728    );
5729    assert_eq!(
5730        unsafe { &(*(::core::ptr::null::<itimerval>())).it_value as *const _ as usize },
5731        16usize,
5732        concat!(
5733            "Offset of field: ",
5734            stringify!(itimerval),
5735            "::",
5736            stringify!(it_value)
5737        )
5738    );
5739}
5740pub type __itimer_which_t = cty::c_int;
5741extern "C" {
5742    pub fn getitimer(__which: __itimer_which_t, __value: *mut itimerval) -> cty::c_int;
5743}
5744extern "C" {
5745    pub fn setitimer(
5746        __which: __itimer_which_t,
5747        __new: *const itimerval,
5748        __old: *mut itimerval,
5749    ) -> cty::c_int;
5750}
5751extern "C" {
5752    pub fn utimes(__file: *const cty::c_char, __tvp: *const timeval) -> cty::c_int;
5753}
5754extern "C" {
5755    pub fn lutimes(__file: *const cty::c_char, __tvp: *const timeval) -> cty::c_int;
5756}
5757extern "C" {
5758    pub fn futimes(__fd: cty::c_int, __tvp: *const timeval) -> cty::c_int;
5759}
5760pub type uByte = u_int8_t;
5761pub type uWord = [u_int8_t; 2usize];
5762pub type uDWord = [u_int8_t; 4usize];
5763#[repr(C, packed)]
5764#[derive(Debug, Copy, Clone)]
5765pub struct usb_device_request_t {
5766    pub bmRequestType: uByte,
5767    pub bRequest: uByte,
5768    pub wValue: uWord,
5769    pub wIndex: uWord,
5770    pub wLength: uWord,
5771}
5772#[test]
5773fn bindgen_test_layout_usb_device_request_t() {
5774    assert_eq!(
5775        ::core::mem::size_of::<usb_device_request_t>(),
5776        8usize,
5777        concat!("Size of: ", stringify!(usb_device_request_t))
5778    );
5779    assert_eq!(
5780        ::core::mem::align_of::<usb_device_request_t>(),
5781        1usize,
5782        concat!("Alignment of ", stringify!(usb_device_request_t))
5783    );
5784    assert_eq!(
5785        unsafe {
5786            &(*(::core::ptr::null::<usb_device_request_t>())).bmRequestType as *const _ as usize
5787        },
5788        0usize,
5789        concat!(
5790            "Offset of field: ",
5791            stringify!(usb_device_request_t),
5792            "::",
5793            stringify!(bmRequestType)
5794        )
5795    );
5796    assert_eq!(
5797        unsafe { &(*(::core::ptr::null::<usb_device_request_t>())).bRequest as *const _ as usize },
5798        1usize,
5799        concat!(
5800            "Offset of field: ",
5801            stringify!(usb_device_request_t),
5802            "::",
5803            stringify!(bRequest)
5804        )
5805    );
5806    assert_eq!(
5807        unsafe { &(*(::core::ptr::null::<usb_device_request_t>())).wValue as *const _ as usize },
5808        2usize,
5809        concat!(
5810            "Offset of field: ",
5811            stringify!(usb_device_request_t),
5812            "::",
5813            stringify!(wValue)
5814        )
5815    );
5816    assert_eq!(
5817        unsafe { &(*(::core::ptr::null::<usb_device_request_t>())).wIndex as *const _ as usize },
5818        4usize,
5819        concat!(
5820            "Offset of field: ",
5821            stringify!(usb_device_request_t),
5822            "::",
5823            stringify!(wIndex)
5824        )
5825    );
5826    assert_eq!(
5827        unsafe { &(*(::core::ptr::null::<usb_device_request_t>())).wLength as *const _ as usize },
5828        6usize,
5829        concat!(
5830            "Offset of field: ",
5831            stringify!(usb_device_request_t),
5832            "::",
5833            stringify!(wLength)
5834        )
5835    );
5836}
5837#[repr(C, packed)]
5838#[derive(Debug, Copy, Clone)]
5839pub struct usb_descriptor_t {
5840    pub bLength: uByte,
5841    pub bDescriptorType: uByte,
5842    pub bDescriptorSubtype: uByte,
5843}
5844#[test]
5845fn bindgen_test_layout_usb_descriptor_t() {
5846    assert_eq!(
5847        ::core::mem::size_of::<usb_descriptor_t>(),
5848        3usize,
5849        concat!("Size of: ", stringify!(usb_descriptor_t))
5850    );
5851    assert_eq!(
5852        ::core::mem::align_of::<usb_descriptor_t>(),
5853        1usize,
5854        concat!("Alignment of ", stringify!(usb_descriptor_t))
5855    );
5856    assert_eq!(
5857        unsafe { &(*(::core::ptr::null::<usb_descriptor_t>())).bLength as *const _ as usize },
5858        0usize,
5859        concat!(
5860            "Offset of field: ",
5861            stringify!(usb_descriptor_t),
5862            "::",
5863            stringify!(bLength)
5864        )
5865    );
5866    assert_eq!(
5867        unsafe {
5868            &(*(::core::ptr::null::<usb_descriptor_t>())).bDescriptorType as *const _ as usize
5869        },
5870        1usize,
5871        concat!(
5872            "Offset of field: ",
5873            stringify!(usb_descriptor_t),
5874            "::",
5875            stringify!(bDescriptorType)
5876        )
5877    );
5878    assert_eq!(
5879        unsafe {
5880            &(*(::core::ptr::null::<usb_descriptor_t>())).bDescriptorSubtype as *const _ as usize
5881        },
5882        2usize,
5883        concat!(
5884            "Offset of field: ",
5885            stringify!(usb_descriptor_t),
5886            "::",
5887            stringify!(bDescriptorSubtype)
5888        )
5889    );
5890}
5891#[repr(C, packed)]
5892#[derive(Debug, Copy, Clone)]
5893pub struct usb_device_descriptor_t {
5894    pub bLength: uByte,
5895    pub bDescriptorType: uByte,
5896    pub bcdUSB: uWord,
5897    pub bDeviceClass: uByte,
5898    pub bDeviceSubClass: uByte,
5899    pub bDeviceProtocol: uByte,
5900    pub bMaxPacketSize: uByte,
5901    pub idVendor: uWord,
5902    pub idProduct: uWord,
5903    pub bcdDevice: uWord,
5904    pub iManufacturer: uByte,
5905    pub iProduct: uByte,
5906    pub iSerialNumber: uByte,
5907    pub bNumConfigurations: uByte,
5908}
5909#[test]
5910fn bindgen_test_layout_usb_device_descriptor_t() {
5911    assert_eq!(
5912        ::core::mem::size_of::<usb_device_descriptor_t>(),
5913        18usize,
5914        concat!("Size of: ", stringify!(usb_device_descriptor_t))
5915    );
5916    assert_eq!(
5917        ::core::mem::align_of::<usb_device_descriptor_t>(),
5918        1usize,
5919        concat!("Alignment of ", stringify!(usb_device_descriptor_t))
5920    );
5921    assert_eq!(
5922        unsafe {
5923            &(*(::core::ptr::null::<usb_device_descriptor_t>())).bLength as *const _ as usize
5924        },
5925        0usize,
5926        concat!(
5927            "Offset of field: ",
5928            stringify!(usb_device_descriptor_t),
5929            "::",
5930            stringify!(bLength)
5931        )
5932    );
5933    assert_eq!(
5934        unsafe {
5935            &(*(::core::ptr::null::<usb_device_descriptor_t>())).bDescriptorType as *const _
5936                as usize
5937        },
5938        1usize,
5939        concat!(
5940            "Offset of field: ",
5941            stringify!(usb_device_descriptor_t),
5942            "::",
5943            stringify!(bDescriptorType)
5944        )
5945    );
5946    assert_eq!(
5947        unsafe { &(*(::core::ptr::null::<usb_device_descriptor_t>())).bcdUSB as *const _ as usize },
5948        2usize,
5949        concat!(
5950            "Offset of field: ",
5951            stringify!(usb_device_descriptor_t),
5952            "::",
5953            stringify!(bcdUSB)
5954        )
5955    );
5956    assert_eq!(
5957        unsafe {
5958            &(*(::core::ptr::null::<usb_device_descriptor_t>())).bDeviceClass as *const _ as usize
5959        },
5960        4usize,
5961        concat!(
5962            "Offset of field: ",
5963            stringify!(usb_device_descriptor_t),
5964            "::",
5965            stringify!(bDeviceClass)
5966        )
5967    );
5968    assert_eq!(
5969        unsafe {
5970            &(*(::core::ptr::null::<usb_device_descriptor_t>())).bDeviceSubClass as *const _
5971                as usize
5972        },
5973        5usize,
5974        concat!(
5975            "Offset of field: ",
5976            stringify!(usb_device_descriptor_t),
5977            "::",
5978            stringify!(bDeviceSubClass)
5979        )
5980    );
5981    assert_eq!(
5982        unsafe {
5983            &(*(::core::ptr::null::<usb_device_descriptor_t>())).bDeviceProtocol as *const _
5984                as usize
5985        },
5986        6usize,
5987        concat!(
5988            "Offset of field: ",
5989            stringify!(usb_device_descriptor_t),
5990            "::",
5991            stringify!(bDeviceProtocol)
5992        )
5993    );
5994    assert_eq!(
5995        unsafe {
5996            &(*(::core::ptr::null::<usb_device_descriptor_t>())).bMaxPacketSize as *const _ as usize
5997        },
5998        7usize,
5999        concat!(
6000            "Offset of field: ",
6001            stringify!(usb_device_descriptor_t),
6002            "::",
6003            stringify!(bMaxPacketSize)
6004        )
6005    );
6006    assert_eq!(
6007        unsafe {
6008            &(*(::core::ptr::null::<usb_device_descriptor_t>())).idVendor as *const _ as usize
6009        },
6010        8usize,
6011        concat!(
6012            "Offset of field: ",
6013            stringify!(usb_device_descriptor_t),
6014            "::",
6015            stringify!(idVendor)
6016        )
6017    );
6018    assert_eq!(
6019        unsafe {
6020            &(*(::core::ptr::null::<usb_device_descriptor_t>())).idProduct as *const _ as usize
6021        },
6022        10usize,
6023        concat!(
6024            "Offset of field: ",
6025            stringify!(usb_device_descriptor_t),
6026            "::",
6027            stringify!(idProduct)
6028        )
6029    );
6030    assert_eq!(
6031        unsafe {
6032            &(*(::core::ptr::null::<usb_device_descriptor_t>())).bcdDevice as *const _ as usize
6033        },
6034        12usize,
6035        concat!(
6036            "Offset of field: ",
6037            stringify!(usb_device_descriptor_t),
6038            "::",
6039            stringify!(bcdDevice)
6040        )
6041    );
6042    assert_eq!(
6043        unsafe {
6044            &(*(::core::ptr::null::<usb_device_descriptor_t>())).iManufacturer as *const _ as usize
6045        },
6046        14usize,
6047        concat!(
6048            "Offset of field: ",
6049            stringify!(usb_device_descriptor_t),
6050            "::",
6051            stringify!(iManufacturer)
6052        )
6053    );
6054    assert_eq!(
6055        unsafe {
6056            &(*(::core::ptr::null::<usb_device_descriptor_t>())).iProduct as *const _ as usize
6057        },
6058        15usize,
6059        concat!(
6060            "Offset of field: ",
6061            stringify!(usb_device_descriptor_t),
6062            "::",
6063            stringify!(iProduct)
6064        )
6065    );
6066    assert_eq!(
6067        unsafe {
6068            &(*(::core::ptr::null::<usb_device_descriptor_t>())).iSerialNumber as *const _ as usize
6069        },
6070        16usize,
6071        concat!(
6072            "Offset of field: ",
6073            stringify!(usb_device_descriptor_t),
6074            "::",
6075            stringify!(iSerialNumber)
6076        )
6077    );
6078    assert_eq!(
6079        unsafe {
6080            &(*(::core::ptr::null::<usb_device_descriptor_t>())).bNumConfigurations as *const _
6081                as usize
6082        },
6083        17usize,
6084        concat!(
6085            "Offset of field: ",
6086            stringify!(usb_device_descriptor_t),
6087            "::",
6088            stringify!(bNumConfigurations)
6089        )
6090    );
6091}
6092#[repr(C, packed)]
6093#[derive(Debug, Copy, Clone)]
6094pub struct usb_config_descriptor_t {
6095    pub bLength: uByte,
6096    pub bDescriptorType: uByte,
6097    pub wTotalLength: uWord,
6098    pub bNumInterface: uByte,
6099    pub bConfigurationValue: uByte,
6100    pub iConfiguration: uByte,
6101    pub bmAttributes: uByte,
6102    pub bMaxPower: uByte,
6103}
6104#[test]
6105fn bindgen_test_layout_usb_config_descriptor_t() {
6106    assert_eq!(
6107        ::core::mem::size_of::<usb_config_descriptor_t>(),
6108        9usize,
6109        concat!("Size of: ", stringify!(usb_config_descriptor_t))
6110    );
6111    assert_eq!(
6112        ::core::mem::align_of::<usb_config_descriptor_t>(),
6113        1usize,
6114        concat!("Alignment of ", stringify!(usb_config_descriptor_t))
6115    );
6116    assert_eq!(
6117        unsafe {
6118            &(*(::core::ptr::null::<usb_config_descriptor_t>())).bLength as *const _ as usize
6119        },
6120        0usize,
6121        concat!(
6122            "Offset of field: ",
6123            stringify!(usb_config_descriptor_t),
6124            "::",
6125            stringify!(bLength)
6126        )
6127    );
6128    assert_eq!(
6129        unsafe {
6130            &(*(::core::ptr::null::<usb_config_descriptor_t>())).bDescriptorType as *const _
6131                as usize
6132        },
6133        1usize,
6134        concat!(
6135            "Offset of field: ",
6136            stringify!(usb_config_descriptor_t),
6137            "::",
6138            stringify!(bDescriptorType)
6139        )
6140    );
6141    assert_eq!(
6142        unsafe {
6143            &(*(::core::ptr::null::<usb_config_descriptor_t>())).wTotalLength as *const _ as usize
6144        },
6145        2usize,
6146        concat!(
6147            "Offset of field: ",
6148            stringify!(usb_config_descriptor_t),
6149            "::",
6150            stringify!(wTotalLength)
6151        )
6152    );
6153    assert_eq!(
6154        unsafe {
6155            &(*(::core::ptr::null::<usb_config_descriptor_t>())).bNumInterface as *const _ as usize
6156        },
6157        4usize,
6158        concat!(
6159            "Offset of field: ",
6160            stringify!(usb_config_descriptor_t),
6161            "::",
6162            stringify!(bNumInterface)
6163        )
6164    );
6165    assert_eq!(
6166        unsafe {
6167            &(*(::core::ptr::null::<usb_config_descriptor_t>())).bConfigurationValue as *const _
6168                as usize
6169        },
6170        5usize,
6171        concat!(
6172            "Offset of field: ",
6173            stringify!(usb_config_descriptor_t),
6174            "::",
6175            stringify!(bConfigurationValue)
6176        )
6177    );
6178    assert_eq!(
6179        unsafe {
6180            &(*(::core::ptr::null::<usb_config_descriptor_t>())).iConfiguration as *const _ as usize
6181        },
6182        6usize,
6183        concat!(
6184            "Offset of field: ",
6185            stringify!(usb_config_descriptor_t),
6186            "::",
6187            stringify!(iConfiguration)
6188        )
6189    );
6190    assert_eq!(
6191        unsafe {
6192            &(*(::core::ptr::null::<usb_config_descriptor_t>())).bmAttributes as *const _ as usize
6193        },
6194        7usize,
6195        concat!(
6196            "Offset of field: ",
6197            stringify!(usb_config_descriptor_t),
6198            "::",
6199            stringify!(bmAttributes)
6200        )
6201    );
6202    assert_eq!(
6203        unsafe {
6204            &(*(::core::ptr::null::<usb_config_descriptor_t>())).bMaxPower as *const _ as usize
6205        },
6206        8usize,
6207        concat!(
6208            "Offset of field: ",
6209            stringify!(usb_config_descriptor_t),
6210            "::",
6211            stringify!(bMaxPower)
6212        )
6213    );
6214}
6215#[repr(C, packed)]
6216#[derive(Debug, Copy, Clone)]
6217pub struct usb_interface_descriptor_t {
6218    pub bLength: uByte,
6219    pub bDescriptorType: uByte,
6220    pub bInterfaceNumber: uByte,
6221    pub bAlternateSetting: uByte,
6222    pub bNumEndpoints: uByte,
6223    pub bInterfaceClass: uByte,
6224    pub bInterfaceSubClass: uByte,
6225    pub bInterfaceProtocol: uByte,
6226    pub iInterface: uByte,
6227}
6228#[test]
6229fn bindgen_test_layout_usb_interface_descriptor_t() {
6230    assert_eq!(
6231        ::core::mem::size_of::<usb_interface_descriptor_t>(),
6232        9usize,
6233        concat!("Size of: ", stringify!(usb_interface_descriptor_t))
6234    );
6235    assert_eq!(
6236        ::core::mem::align_of::<usb_interface_descriptor_t>(),
6237        1usize,
6238        concat!("Alignment of ", stringify!(usb_interface_descriptor_t))
6239    );
6240    assert_eq!(
6241        unsafe {
6242            &(*(::core::ptr::null::<usb_interface_descriptor_t>())).bLength as *const _ as usize
6243        },
6244        0usize,
6245        concat!(
6246            "Offset of field: ",
6247            stringify!(usb_interface_descriptor_t),
6248            "::",
6249            stringify!(bLength)
6250        )
6251    );
6252    assert_eq!(
6253        unsafe {
6254            &(*(::core::ptr::null::<usb_interface_descriptor_t>())).bDescriptorType as *const _
6255                as usize
6256        },
6257        1usize,
6258        concat!(
6259            "Offset of field: ",
6260            stringify!(usb_interface_descriptor_t),
6261            "::",
6262            stringify!(bDescriptorType)
6263        )
6264    );
6265    assert_eq!(
6266        unsafe {
6267            &(*(::core::ptr::null::<usb_interface_descriptor_t>())).bInterfaceNumber as *const _
6268                as usize
6269        },
6270        2usize,
6271        concat!(
6272            "Offset of field: ",
6273            stringify!(usb_interface_descriptor_t),
6274            "::",
6275            stringify!(bInterfaceNumber)
6276        )
6277    );
6278    assert_eq!(
6279        unsafe {
6280            &(*(::core::ptr::null::<usb_interface_descriptor_t>())).bAlternateSetting as *const _
6281                as usize
6282        },
6283        3usize,
6284        concat!(
6285            "Offset of field: ",
6286            stringify!(usb_interface_descriptor_t),
6287            "::",
6288            stringify!(bAlternateSetting)
6289        )
6290    );
6291    assert_eq!(
6292        unsafe {
6293            &(*(::core::ptr::null::<usb_interface_descriptor_t>())).bNumEndpoints as *const _
6294                as usize
6295        },
6296        4usize,
6297        concat!(
6298            "Offset of field: ",
6299            stringify!(usb_interface_descriptor_t),
6300            "::",
6301            stringify!(bNumEndpoints)
6302        )
6303    );
6304    assert_eq!(
6305        unsafe {
6306            &(*(::core::ptr::null::<usb_interface_descriptor_t>())).bInterfaceClass as *const _
6307                as usize
6308        },
6309        5usize,
6310        concat!(
6311            "Offset of field: ",
6312            stringify!(usb_interface_descriptor_t),
6313            "::",
6314            stringify!(bInterfaceClass)
6315        )
6316    );
6317    assert_eq!(
6318        unsafe {
6319            &(*(::core::ptr::null::<usb_interface_descriptor_t>())).bInterfaceSubClass as *const _
6320                as usize
6321        },
6322        6usize,
6323        concat!(
6324            "Offset of field: ",
6325            stringify!(usb_interface_descriptor_t),
6326            "::",
6327            stringify!(bInterfaceSubClass)
6328        )
6329    );
6330    assert_eq!(
6331        unsafe {
6332            &(*(::core::ptr::null::<usb_interface_descriptor_t>())).bInterfaceProtocol as *const _
6333                as usize
6334        },
6335        7usize,
6336        concat!(
6337            "Offset of field: ",
6338            stringify!(usb_interface_descriptor_t),
6339            "::",
6340            stringify!(bInterfaceProtocol)
6341        )
6342    );
6343    assert_eq!(
6344        unsafe {
6345            &(*(::core::ptr::null::<usb_interface_descriptor_t>())).iInterface as *const _ as usize
6346        },
6347        8usize,
6348        concat!(
6349            "Offset of field: ",
6350            stringify!(usb_interface_descriptor_t),
6351            "::",
6352            stringify!(iInterface)
6353        )
6354    );
6355}
6356#[repr(C, packed)]
6357#[derive(Debug, Copy, Clone)]
6358pub struct usb_endpoint_descriptor_t {
6359    pub bLength: uByte,
6360    pub bDescriptorType: uByte,
6361    pub bEndpointAddress: uByte,
6362    pub bmAttributes: uByte,
6363    pub wMaxPacketSize: uWord,
6364    pub bInterval: uByte,
6365}
6366#[test]
6367fn bindgen_test_layout_usb_endpoint_descriptor_t() {
6368    assert_eq!(
6369        ::core::mem::size_of::<usb_endpoint_descriptor_t>(),
6370        7usize,
6371        concat!("Size of: ", stringify!(usb_endpoint_descriptor_t))
6372    );
6373    assert_eq!(
6374        ::core::mem::align_of::<usb_endpoint_descriptor_t>(),
6375        1usize,
6376        concat!("Alignment of ", stringify!(usb_endpoint_descriptor_t))
6377    );
6378    assert_eq!(
6379        unsafe {
6380            &(*(::core::ptr::null::<usb_endpoint_descriptor_t>())).bLength as *const _ as usize
6381        },
6382        0usize,
6383        concat!(
6384            "Offset of field: ",
6385            stringify!(usb_endpoint_descriptor_t),
6386            "::",
6387            stringify!(bLength)
6388        )
6389    );
6390    assert_eq!(
6391        unsafe {
6392            &(*(::core::ptr::null::<usb_endpoint_descriptor_t>())).bDescriptorType as *const _
6393                as usize
6394        },
6395        1usize,
6396        concat!(
6397            "Offset of field: ",
6398            stringify!(usb_endpoint_descriptor_t),
6399            "::",
6400            stringify!(bDescriptorType)
6401        )
6402    );
6403    assert_eq!(
6404        unsafe {
6405            &(*(::core::ptr::null::<usb_endpoint_descriptor_t>())).bEndpointAddress as *const _
6406                as usize
6407        },
6408        2usize,
6409        concat!(
6410            "Offset of field: ",
6411            stringify!(usb_endpoint_descriptor_t),
6412            "::",
6413            stringify!(bEndpointAddress)
6414        )
6415    );
6416    assert_eq!(
6417        unsafe {
6418            &(*(::core::ptr::null::<usb_endpoint_descriptor_t>())).bmAttributes as *const _ as usize
6419        },
6420        3usize,
6421        concat!(
6422            "Offset of field: ",
6423            stringify!(usb_endpoint_descriptor_t),
6424            "::",
6425            stringify!(bmAttributes)
6426        )
6427    );
6428    assert_eq!(
6429        unsafe {
6430            &(*(::core::ptr::null::<usb_endpoint_descriptor_t>())).wMaxPacketSize as *const _
6431                as usize
6432        },
6433        4usize,
6434        concat!(
6435            "Offset of field: ",
6436            stringify!(usb_endpoint_descriptor_t),
6437            "::",
6438            stringify!(wMaxPacketSize)
6439        )
6440    );
6441    assert_eq!(
6442        unsafe {
6443            &(*(::core::ptr::null::<usb_endpoint_descriptor_t>())).bInterval as *const _ as usize
6444        },
6445        6usize,
6446        concat!(
6447            "Offset of field: ",
6448            stringify!(usb_endpoint_descriptor_t),
6449            "::",
6450            stringify!(bInterval)
6451        )
6452    );
6453}
6454#[repr(C, packed)]
6455#[derive(Copy, Clone)]
6456pub struct usb_string_descriptor_t {
6457    pub bLength: uByte,
6458    pub bDescriptorType: uByte,
6459    pub bString: [uWord; 127usize],
6460}
6461#[test]
6462fn bindgen_test_layout_usb_string_descriptor_t() {
6463    assert_eq!(
6464        ::core::mem::size_of::<usb_string_descriptor_t>(),
6465        256usize,
6466        concat!("Size of: ", stringify!(usb_string_descriptor_t))
6467    );
6468    assert_eq!(
6469        ::core::mem::align_of::<usb_string_descriptor_t>(),
6470        1usize,
6471        concat!("Alignment of ", stringify!(usb_string_descriptor_t))
6472    );
6473    assert_eq!(
6474        unsafe {
6475            &(*(::core::ptr::null::<usb_string_descriptor_t>())).bLength as *const _ as usize
6476        },
6477        0usize,
6478        concat!(
6479            "Offset of field: ",
6480            stringify!(usb_string_descriptor_t),
6481            "::",
6482            stringify!(bLength)
6483        )
6484    );
6485    assert_eq!(
6486        unsafe {
6487            &(*(::core::ptr::null::<usb_string_descriptor_t>())).bDescriptorType as *const _
6488                as usize
6489        },
6490        1usize,
6491        concat!(
6492            "Offset of field: ",
6493            stringify!(usb_string_descriptor_t),
6494            "::",
6495            stringify!(bDescriptorType)
6496        )
6497    );
6498    assert_eq!(
6499        unsafe {
6500            &(*(::core::ptr::null::<usb_string_descriptor_t>())).bString as *const _ as usize
6501        },
6502        2usize,
6503        concat!(
6504            "Offset of field: ",
6505            stringify!(usb_string_descriptor_t),
6506            "::",
6507            stringify!(bString)
6508        )
6509    );
6510}
6511#[repr(C, packed)]
6512#[derive(Debug, Copy, Clone)]
6513pub struct usb_hub_descriptor_t {
6514    pub bDescLength: uByte,
6515    pub bDescriptorType: uByte,
6516    pub bNbrPorts: uByte,
6517    pub wHubCharacteristics: uWord,
6518    pub bPwrOn2PwrGood: uByte,
6519    pub bHubContrCurrent: uByte,
6520    pub DeviceRemovable: [uByte; 32usize],
6521    pub PortPowerCtrlMask: [uByte; 1usize],
6522}
6523#[test]
6524fn bindgen_test_layout_usb_hub_descriptor_t() {
6525    assert_eq!(
6526        ::core::mem::size_of::<usb_hub_descriptor_t>(),
6527        40usize,
6528        concat!("Size of: ", stringify!(usb_hub_descriptor_t))
6529    );
6530    assert_eq!(
6531        ::core::mem::align_of::<usb_hub_descriptor_t>(),
6532        1usize,
6533        concat!("Alignment of ", stringify!(usb_hub_descriptor_t))
6534    );
6535    assert_eq!(
6536        unsafe {
6537            &(*(::core::ptr::null::<usb_hub_descriptor_t>())).bDescLength as *const _ as usize
6538        },
6539        0usize,
6540        concat!(
6541            "Offset of field: ",
6542            stringify!(usb_hub_descriptor_t),
6543            "::",
6544            stringify!(bDescLength)
6545        )
6546    );
6547    assert_eq!(
6548        unsafe {
6549            &(*(::core::ptr::null::<usb_hub_descriptor_t>())).bDescriptorType as *const _ as usize
6550        },
6551        1usize,
6552        concat!(
6553            "Offset of field: ",
6554            stringify!(usb_hub_descriptor_t),
6555            "::",
6556            stringify!(bDescriptorType)
6557        )
6558    );
6559    assert_eq!(
6560        unsafe { &(*(::core::ptr::null::<usb_hub_descriptor_t>())).bNbrPorts as *const _ as usize },
6561        2usize,
6562        concat!(
6563            "Offset of field: ",
6564            stringify!(usb_hub_descriptor_t),
6565            "::",
6566            stringify!(bNbrPorts)
6567        )
6568    );
6569    assert_eq!(
6570        unsafe {
6571            &(*(::core::ptr::null::<usb_hub_descriptor_t>())).wHubCharacteristics as *const _
6572                as usize
6573        },
6574        3usize,
6575        concat!(
6576            "Offset of field: ",
6577            stringify!(usb_hub_descriptor_t),
6578            "::",
6579            stringify!(wHubCharacteristics)
6580        )
6581    );
6582    assert_eq!(
6583        unsafe {
6584            &(*(::core::ptr::null::<usb_hub_descriptor_t>())).bPwrOn2PwrGood as *const _ as usize
6585        },
6586        5usize,
6587        concat!(
6588            "Offset of field: ",
6589            stringify!(usb_hub_descriptor_t),
6590            "::",
6591            stringify!(bPwrOn2PwrGood)
6592        )
6593    );
6594    assert_eq!(
6595        unsafe {
6596            &(*(::core::ptr::null::<usb_hub_descriptor_t>())).bHubContrCurrent as *const _ as usize
6597        },
6598        6usize,
6599        concat!(
6600            "Offset of field: ",
6601            stringify!(usb_hub_descriptor_t),
6602            "::",
6603            stringify!(bHubContrCurrent)
6604        )
6605    );
6606    assert_eq!(
6607        unsafe {
6608            &(*(::core::ptr::null::<usb_hub_descriptor_t>())).DeviceRemovable as *const _ as usize
6609        },
6610        7usize,
6611        concat!(
6612            "Offset of field: ",
6613            stringify!(usb_hub_descriptor_t),
6614            "::",
6615            stringify!(DeviceRemovable)
6616        )
6617    );
6618    assert_eq!(
6619        unsafe {
6620            &(*(::core::ptr::null::<usb_hub_descriptor_t>())).PortPowerCtrlMask as *const _ as usize
6621        },
6622        39usize,
6623        concat!(
6624            "Offset of field: ",
6625            stringify!(usb_hub_descriptor_t),
6626            "::",
6627            stringify!(PortPowerCtrlMask)
6628        )
6629    );
6630}
6631#[repr(C, packed)]
6632#[derive(Debug, Copy, Clone)]
6633pub struct usb_device_qualifier_t {
6634    pub bLength: uByte,
6635    pub bDescriptorType: uByte,
6636    pub bcdUSB: uWord,
6637    pub bDeviceClass: uByte,
6638    pub bDeviceSubClass: uByte,
6639    pub bDeviceProtocol: uByte,
6640    pub bMaxPacketSize0: uByte,
6641    pub bNumConfigurations: uByte,
6642    pub bReserved: uByte,
6643}
6644#[test]
6645fn bindgen_test_layout_usb_device_qualifier_t() {
6646    assert_eq!(
6647        ::core::mem::size_of::<usb_device_qualifier_t>(),
6648        10usize,
6649        concat!("Size of: ", stringify!(usb_device_qualifier_t))
6650    );
6651    assert_eq!(
6652        ::core::mem::align_of::<usb_device_qualifier_t>(),
6653        1usize,
6654        concat!("Alignment of ", stringify!(usb_device_qualifier_t))
6655    );
6656    assert_eq!(
6657        unsafe { &(*(::core::ptr::null::<usb_device_qualifier_t>())).bLength as *const _ as usize },
6658        0usize,
6659        concat!(
6660            "Offset of field: ",
6661            stringify!(usb_device_qualifier_t),
6662            "::",
6663            stringify!(bLength)
6664        )
6665    );
6666    assert_eq!(
6667        unsafe {
6668            &(*(::core::ptr::null::<usb_device_qualifier_t>())).bDescriptorType as *const _ as usize
6669        },
6670        1usize,
6671        concat!(
6672            "Offset of field: ",
6673            stringify!(usb_device_qualifier_t),
6674            "::",
6675            stringify!(bDescriptorType)
6676        )
6677    );
6678    assert_eq!(
6679        unsafe { &(*(::core::ptr::null::<usb_device_qualifier_t>())).bcdUSB as *const _ as usize },
6680        2usize,
6681        concat!(
6682            "Offset of field: ",
6683            stringify!(usb_device_qualifier_t),
6684            "::",
6685            stringify!(bcdUSB)
6686        )
6687    );
6688    assert_eq!(
6689        unsafe {
6690            &(*(::core::ptr::null::<usb_device_qualifier_t>())).bDeviceClass as *const _ as usize
6691        },
6692        4usize,
6693        concat!(
6694            "Offset of field: ",
6695            stringify!(usb_device_qualifier_t),
6696            "::",
6697            stringify!(bDeviceClass)
6698        )
6699    );
6700    assert_eq!(
6701        unsafe {
6702            &(*(::core::ptr::null::<usb_device_qualifier_t>())).bDeviceSubClass as *const _ as usize
6703        },
6704        5usize,
6705        concat!(
6706            "Offset of field: ",
6707            stringify!(usb_device_qualifier_t),
6708            "::",
6709            stringify!(bDeviceSubClass)
6710        )
6711    );
6712    assert_eq!(
6713        unsafe {
6714            &(*(::core::ptr::null::<usb_device_qualifier_t>())).bDeviceProtocol as *const _ as usize
6715        },
6716        6usize,
6717        concat!(
6718            "Offset of field: ",
6719            stringify!(usb_device_qualifier_t),
6720            "::",
6721            stringify!(bDeviceProtocol)
6722        )
6723    );
6724    assert_eq!(
6725        unsafe {
6726            &(*(::core::ptr::null::<usb_device_qualifier_t>())).bMaxPacketSize0 as *const _ as usize
6727        },
6728        7usize,
6729        concat!(
6730            "Offset of field: ",
6731            stringify!(usb_device_qualifier_t),
6732            "::",
6733            stringify!(bMaxPacketSize0)
6734        )
6735    );
6736    assert_eq!(
6737        unsafe {
6738            &(*(::core::ptr::null::<usb_device_qualifier_t>())).bNumConfigurations as *const _
6739                as usize
6740        },
6741        8usize,
6742        concat!(
6743            "Offset of field: ",
6744            stringify!(usb_device_qualifier_t),
6745            "::",
6746            stringify!(bNumConfigurations)
6747        )
6748    );
6749    assert_eq!(
6750        unsafe {
6751            &(*(::core::ptr::null::<usb_device_qualifier_t>())).bReserved as *const _ as usize
6752        },
6753        9usize,
6754        concat!(
6755            "Offset of field: ",
6756            stringify!(usb_device_qualifier_t),
6757            "::",
6758            stringify!(bReserved)
6759        )
6760    );
6761}
6762#[repr(C, packed)]
6763#[derive(Debug, Copy, Clone)]
6764pub struct usb_otg_descriptor_t {
6765    pub bLength: uByte,
6766    pub bDescriptorType: uByte,
6767    pub bmAttributes: uByte,
6768}
6769#[test]
6770fn bindgen_test_layout_usb_otg_descriptor_t() {
6771    assert_eq!(
6772        ::core::mem::size_of::<usb_otg_descriptor_t>(),
6773        3usize,
6774        concat!("Size of: ", stringify!(usb_otg_descriptor_t))
6775    );
6776    assert_eq!(
6777        ::core::mem::align_of::<usb_otg_descriptor_t>(),
6778        1usize,
6779        concat!("Alignment of ", stringify!(usb_otg_descriptor_t))
6780    );
6781    assert_eq!(
6782        unsafe { &(*(::core::ptr::null::<usb_otg_descriptor_t>())).bLength as *const _ as usize },
6783        0usize,
6784        concat!(
6785            "Offset of field: ",
6786            stringify!(usb_otg_descriptor_t),
6787            "::",
6788            stringify!(bLength)
6789        )
6790    );
6791    assert_eq!(
6792        unsafe {
6793            &(*(::core::ptr::null::<usb_otg_descriptor_t>())).bDescriptorType as *const _ as usize
6794        },
6795        1usize,
6796        concat!(
6797            "Offset of field: ",
6798            stringify!(usb_otg_descriptor_t),
6799            "::",
6800            stringify!(bDescriptorType)
6801        )
6802    );
6803    assert_eq!(
6804        unsafe {
6805            &(*(::core::ptr::null::<usb_otg_descriptor_t>())).bmAttributes as *const _ as usize
6806        },
6807        2usize,
6808        concat!(
6809            "Offset of field: ",
6810            stringify!(usb_otg_descriptor_t),
6811            "::",
6812            stringify!(bmAttributes)
6813        )
6814    );
6815}
6816#[repr(C, packed)]
6817#[derive(Debug, Copy, Clone)]
6818pub struct usb_status_t {
6819    pub wStatus: uWord,
6820}
6821#[test]
6822fn bindgen_test_layout_usb_status_t() {
6823    assert_eq!(
6824        ::core::mem::size_of::<usb_status_t>(),
6825        2usize,
6826        concat!("Size of: ", stringify!(usb_status_t))
6827    );
6828    assert_eq!(
6829        ::core::mem::align_of::<usb_status_t>(),
6830        1usize,
6831        concat!("Alignment of ", stringify!(usb_status_t))
6832    );
6833    assert_eq!(
6834        unsafe { &(*(::core::ptr::null::<usb_status_t>())).wStatus as *const _ as usize },
6835        0usize,
6836        concat!(
6837            "Offset of field: ",
6838            stringify!(usb_status_t),
6839            "::",
6840            stringify!(wStatus)
6841        )
6842    );
6843}
6844#[repr(C, packed)]
6845#[derive(Debug, Copy, Clone)]
6846pub struct usb_hub_status_t {
6847    pub wHubStatus: uWord,
6848    pub wHubChange: uWord,
6849}
6850#[test]
6851fn bindgen_test_layout_usb_hub_status_t() {
6852    assert_eq!(
6853        ::core::mem::size_of::<usb_hub_status_t>(),
6854        4usize,
6855        concat!("Size of: ", stringify!(usb_hub_status_t))
6856    );
6857    assert_eq!(
6858        ::core::mem::align_of::<usb_hub_status_t>(),
6859        1usize,
6860        concat!("Alignment of ", stringify!(usb_hub_status_t))
6861    );
6862    assert_eq!(
6863        unsafe { &(*(::core::ptr::null::<usb_hub_status_t>())).wHubStatus as *const _ as usize },
6864        0usize,
6865        concat!(
6866            "Offset of field: ",
6867            stringify!(usb_hub_status_t),
6868            "::",
6869            stringify!(wHubStatus)
6870        )
6871    );
6872    assert_eq!(
6873        unsafe { &(*(::core::ptr::null::<usb_hub_status_t>())).wHubChange as *const _ as usize },
6874        2usize,
6875        concat!(
6876            "Offset of field: ",
6877            stringify!(usb_hub_status_t),
6878            "::",
6879            stringify!(wHubChange)
6880        )
6881    );
6882}
6883#[repr(C, packed)]
6884#[derive(Debug, Copy, Clone)]
6885pub struct usb_port_status_t {
6886    pub wPortStatus: uWord,
6887    pub wPortChange: uWord,
6888}
6889#[test]
6890fn bindgen_test_layout_usb_port_status_t() {
6891    assert_eq!(
6892        ::core::mem::size_of::<usb_port_status_t>(),
6893        4usize,
6894        concat!("Size of: ", stringify!(usb_port_status_t))
6895    );
6896    assert_eq!(
6897        ::core::mem::align_of::<usb_port_status_t>(),
6898        1usize,
6899        concat!("Alignment of ", stringify!(usb_port_status_t))
6900    );
6901    assert_eq!(
6902        unsafe { &(*(::core::ptr::null::<usb_port_status_t>())).wPortStatus as *const _ as usize },
6903        0usize,
6904        concat!(
6905            "Offset of field: ",
6906            stringify!(usb_port_status_t),
6907            "::",
6908            stringify!(wPortStatus)
6909        )
6910    );
6911    assert_eq!(
6912        unsafe { &(*(::core::ptr::null::<usb_port_status_t>())).wPortChange as *const _ as usize },
6913        2usize,
6914        concat!(
6915            "Offset of field: ",
6916            stringify!(usb_port_status_t),
6917            "::",
6918            stringify!(wPortChange)
6919        )
6920    );
6921}
6922#[doc = " ioctl() related stuff"]
6923#[repr(C)]
6924#[derive(Debug, Copy, Clone)]
6925pub struct usb_ctl_request {
6926    pub ucr_addr: cty::c_int,
6927    pub ucr_request: usb_device_request_t,
6928    pub ucr_data: *mut cty::c_void,
6929    pub ucr_flags: cty::c_int,
6930    pub ucr_actlen: cty::c_int,
6931}
6932#[test]
6933fn bindgen_test_layout_usb_ctl_request() {
6934    assert_eq!(
6935        ::core::mem::size_of::<usb_ctl_request>(),
6936        32usize,
6937        concat!("Size of: ", stringify!(usb_ctl_request))
6938    );
6939    assert_eq!(
6940        ::core::mem::align_of::<usb_ctl_request>(),
6941        8usize,
6942        concat!("Alignment of ", stringify!(usb_ctl_request))
6943    );
6944    assert_eq!(
6945        unsafe { &(*(::core::ptr::null::<usb_ctl_request>())).ucr_addr as *const _ as usize },
6946        0usize,
6947        concat!(
6948            "Offset of field: ",
6949            stringify!(usb_ctl_request),
6950            "::",
6951            stringify!(ucr_addr)
6952        )
6953    );
6954    assert_eq!(
6955        unsafe { &(*(::core::ptr::null::<usb_ctl_request>())).ucr_request as *const _ as usize },
6956        4usize,
6957        concat!(
6958            "Offset of field: ",
6959            stringify!(usb_ctl_request),
6960            "::",
6961            stringify!(ucr_request)
6962        )
6963    );
6964    assert_eq!(
6965        unsafe { &(*(::core::ptr::null::<usb_ctl_request>())).ucr_data as *const _ as usize },
6966        16usize,
6967        concat!(
6968            "Offset of field: ",
6969            stringify!(usb_ctl_request),
6970            "::",
6971            stringify!(ucr_data)
6972        )
6973    );
6974    assert_eq!(
6975        unsafe { &(*(::core::ptr::null::<usb_ctl_request>())).ucr_flags as *const _ as usize },
6976        24usize,
6977        concat!(
6978            "Offset of field: ",
6979            stringify!(usb_ctl_request),
6980            "::",
6981            stringify!(ucr_flags)
6982        )
6983    );
6984    assert_eq!(
6985        unsafe { &(*(::core::ptr::null::<usb_ctl_request>())).ucr_actlen as *const _ as usize },
6986        28usize,
6987        concat!(
6988            "Offset of field: ",
6989            stringify!(usb_ctl_request),
6990            "::",
6991            stringify!(ucr_actlen)
6992        )
6993    );
6994}
6995#[repr(C)]
6996#[derive(Debug, Copy, Clone)]
6997pub struct usb_alt_interface {
6998    pub uai_config_index: cty::c_int,
6999    pub uai_interface_index: cty::c_int,
7000    pub uai_alt_no: cty::c_int,
7001}
7002#[test]
7003fn bindgen_test_layout_usb_alt_interface() {
7004    assert_eq!(
7005        ::core::mem::size_of::<usb_alt_interface>(),
7006        12usize,
7007        concat!("Size of: ", stringify!(usb_alt_interface))
7008    );
7009    assert_eq!(
7010        ::core::mem::align_of::<usb_alt_interface>(),
7011        4usize,
7012        concat!("Alignment of ", stringify!(usb_alt_interface))
7013    );
7014    assert_eq!(
7015        unsafe {
7016            &(*(::core::ptr::null::<usb_alt_interface>())).uai_config_index as *const _ as usize
7017        },
7018        0usize,
7019        concat!(
7020            "Offset of field: ",
7021            stringify!(usb_alt_interface),
7022            "::",
7023            stringify!(uai_config_index)
7024        )
7025    );
7026    assert_eq!(
7027        unsafe {
7028            &(*(::core::ptr::null::<usb_alt_interface>())).uai_interface_index as *const _ as usize
7029        },
7030        4usize,
7031        concat!(
7032            "Offset of field: ",
7033            stringify!(usb_alt_interface),
7034            "::",
7035            stringify!(uai_interface_index)
7036        )
7037    );
7038    assert_eq!(
7039        unsafe { &(*(::core::ptr::null::<usb_alt_interface>())).uai_alt_no as *const _ as usize },
7040        8usize,
7041        concat!(
7042            "Offset of field: ",
7043            stringify!(usb_alt_interface),
7044            "::",
7045            stringify!(uai_alt_no)
7046        )
7047    );
7048}
7049#[repr(C)]
7050#[derive(Debug, Copy, Clone)]
7051pub struct usb_config_desc {
7052    pub ucd_config_index: cty::c_int,
7053    pub ucd_desc: usb_config_descriptor_t,
7054}
7055#[test]
7056fn bindgen_test_layout_usb_config_desc() {
7057    assert_eq!(
7058        ::core::mem::size_of::<usb_config_desc>(),
7059        16usize,
7060        concat!("Size of: ", stringify!(usb_config_desc))
7061    );
7062    assert_eq!(
7063        ::core::mem::align_of::<usb_config_desc>(),
7064        4usize,
7065        concat!("Alignment of ", stringify!(usb_config_desc))
7066    );
7067    assert_eq!(
7068        unsafe {
7069            &(*(::core::ptr::null::<usb_config_desc>())).ucd_config_index as *const _ as usize
7070        },
7071        0usize,
7072        concat!(
7073            "Offset of field: ",
7074            stringify!(usb_config_desc),
7075            "::",
7076            stringify!(ucd_config_index)
7077        )
7078    );
7079    assert_eq!(
7080        unsafe { &(*(::core::ptr::null::<usb_config_desc>())).ucd_desc as *const _ as usize },
7081        4usize,
7082        concat!(
7083            "Offset of field: ",
7084            stringify!(usb_config_desc),
7085            "::",
7086            stringify!(ucd_desc)
7087        )
7088    );
7089}
7090#[repr(C)]
7091#[derive(Debug, Copy, Clone)]
7092pub struct usb_interface_desc {
7093    pub uid_config_index: cty::c_int,
7094    pub uid_interface_index: cty::c_int,
7095    pub uid_alt_index: cty::c_int,
7096    pub uid_desc: usb_interface_descriptor_t,
7097}
7098#[test]
7099fn bindgen_test_layout_usb_interface_desc() {
7100    assert_eq!(
7101        ::core::mem::size_of::<usb_interface_desc>(),
7102        24usize,
7103        concat!("Size of: ", stringify!(usb_interface_desc))
7104    );
7105    assert_eq!(
7106        ::core::mem::align_of::<usb_interface_desc>(),
7107        4usize,
7108        concat!("Alignment of ", stringify!(usb_interface_desc))
7109    );
7110    assert_eq!(
7111        unsafe {
7112            &(*(::core::ptr::null::<usb_interface_desc>())).uid_config_index as *const _ as usize
7113        },
7114        0usize,
7115        concat!(
7116            "Offset of field: ",
7117            stringify!(usb_interface_desc),
7118            "::",
7119            stringify!(uid_config_index)
7120        )
7121    );
7122    assert_eq!(
7123        unsafe {
7124            &(*(::core::ptr::null::<usb_interface_desc>())).uid_interface_index as *const _ as usize
7125        },
7126        4usize,
7127        concat!(
7128            "Offset of field: ",
7129            stringify!(usb_interface_desc),
7130            "::",
7131            stringify!(uid_interface_index)
7132        )
7133    );
7134    assert_eq!(
7135        unsafe {
7136            &(*(::core::ptr::null::<usb_interface_desc>())).uid_alt_index as *const _ as usize
7137        },
7138        8usize,
7139        concat!(
7140            "Offset of field: ",
7141            stringify!(usb_interface_desc),
7142            "::",
7143            stringify!(uid_alt_index)
7144        )
7145    );
7146    assert_eq!(
7147        unsafe { &(*(::core::ptr::null::<usb_interface_desc>())).uid_desc as *const _ as usize },
7148        12usize,
7149        concat!(
7150            "Offset of field: ",
7151            stringify!(usb_interface_desc),
7152            "::",
7153            stringify!(uid_desc)
7154        )
7155    );
7156}
7157#[repr(C)]
7158#[derive(Debug, Copy, Clone)]
7159pub struct usb_endpoint_desc {
7160    pub ued_config_index: cty::c_int,
7161    pub ued_interface_index: cty::c_int,
7162    pub ued_alt_index: cty::c_int,
7163    pub ued_endpoint_index: cty::c_int,
7164    pub ued_desc: usb_endpoint_descriptor_t,
7165}
7166#[test]
7167fn bindgen_test_layout_usb_endpoint_desc() {
7168    assert_eq!(
7169        ::core::mem::size_of::<usb_endpoint_desc>(),
7170        24usize,
7171        concat!("Size of: ", stringify!(usb_endpoint_desc))
7172    );
7173    assert_eq!(
7174        ::core::mem::align_of::<usb_endpoint_desc>(),
7175        4usize,
7176        concat!("Alignment of ", stringify!(usb_endpoint_desc))
7177    );
7178    assert_eq!(
7179        unsafe {
7180            &(*(::core::ptr::null::<usb_endpoint_desc>())).ued_config_index as *const _ as usize
7181        },
7182        0usize,
7183        concat!(
7184            "Offset of field: ",
7185            stringify!(usb_endpoint_desc),
7186            "::",
7187            stringify!(ued_config_index)
7188        )
7189    );
7190    assert_eq!(
7191        unsafe {
7192            &(*(::core::ptr::null::<usb_endpoint_desc>())).ued_interface_index as *const _ as usize
7193        },
7194        4usize,
7195        concat!(
7196            "Offset of field: ",
7197            stringify!(usb_endpoint_desc),
7198            "::",
7199            stringify!(ued_interface_index)
7200        )
7201    );
7202    assert_eq!(
7203        unsafe {
7204            &(*(::core::ptr::null::<usb_endpoint_desc>())).ued_alt_index as *const _ as usize
7205        },
7206        8usize,
7207        concat!(
7208            "Offset of field: ",
7209            stringify!(usb_endpoint_desc),
7210            "::",
7211            stringify!(ued_alt_index)
7212        )
7213    );
7214    assert_eq!(
7215        unsafe {
7216            &(*(::core::ptr::null::<usb_endpoint_desc>())).ued_endpoint_index as *const _ as usize
7217        },
7218        12usize,
7219        concat!(
7220            "Offset of field: ",
7221            stringify!(usb_endpoint_desc),
7222            "::",
7223            stringify!(ued_endpoint_index)
7224        )
7225    );
7226    assert_eq!(
7227        unsafe { &(*(::core::ptr::null::<usb_endpoint_desc>())).ued_desc as *const _ as usize },
7228        16usize,
7229        concat!(
7230            "Offset of field: ",
7231            stringify!(usb_endpoint_desc),
7232            "::",
7233            stringify!(ued_desc)
7234        )
7235    );
7236}
7237#[repr(C)]
7238#[derive(Debug, Copy, Clone)]
7239pub struct usb_full_desc {
7240    pub ufd_config_index: cty::c_int,
7241    pub ufd_size: u_int,
7242    pub ufd_data: *mut u_char,
7243}
7244#[test]
7245fn bindgen_test_layout_usb_full_desc() {
7246    assert_eq!(
7247        ::core::mem::size_of::<usb_full_desc>(),
7248        16usize,
7249        concat!("Size of: ", stringify!(usb_full_desc))
7250    );
7251    assert_eq!(
7252        ::core::mem::align_of::<usb_full_desc>(),
7253        8usize,
7254        concat!("Alignment of ", stringify!(usb_full_desc))
7255    );
7256    assert_eq!(
7257        unsafe { &(*(::core::ptr::null::<usb_full_desc>())).ufd_config_index as *const _ as usize },
7258        0usize,
7259        concat!(
7260            "Offset of field: ",
7261            stringify!(usb_full_desc),
7262            "::",
7263            stringify!(ufd_config_index)
7264        )
7265    );
7266    assert_eq!(
7267        unsafe { &(*(::core::ptr::null::<usb_full_desc>())).ufd_size as *const _ as usize },
7268        4usize,
7269        concat!(
7270            "Offset of field: ",
7271            stringify!(usb_full_desc),
7272            "::",
7273            stringify!(ufd_size)
7274        )
7275    );
7276    assert_eq!(
7277        unsafe { &(*(::core::ptr::null::<usb_full_desc>())).ufd_data as *const _ as usize },
7278        8usize,
7279        concat!(
7280            "Offset of field: ",
7281            stringify!(usb_full_desc),
7282            "::",
7283            stringify!(ufd_data)
7284        )
7285    );
7286}
7287#[repr(C)]
7288#[derive(Copy, Clone)]
7289pub struct usb_string_desc {
7290    pub usd_string_index: cty::c_int,
7291    pub usd_language_id: cty::c_int,
7292    pub usd_desc: usb_string_descriptor_t,
7293}
7294#[test]
7295fn bindgen_test_layout_usb_string_desc() {
7296    assert_eq!(
7297        ::core::mem::size_of::<usb_string_desc>(),
7298        264usize,
7299        concat!("Size of: ", stringify!(usb_string_desc))
7300    );
7301    assert_eq!(
7302        ::core::mem::align_of::<usb_string_desc>(),
7303        4usize,
7304        concat!("Alignment of ", stringify!(usb_string_desc))
7305    );
7306    assert_eq!(
7307        unsafe {
7308            &(*(::core::ptr::null::<usb_string_desc>())).usd_string_index as *const _ as usize
7309        },
7310        0usize,
7311        concat!(
7312            "Offset of field: ",
7313            stringify!(usb_string_desc),
7314            "::",
7315            stringify!(usd_string_index)
7316        )
7317    );
7318    assert_eq!(
7319        unsafe {
7320            &(*(::core::ptr::null::<usb_string_desc>())).usd_language_id as *const _ as usize
7321        },
7322        4usize,
7323        concat!(
7324            "Offset of field: ",
7325            stringify!(usb_string_desc),
7326            "::",
7327            stringify!(usd_language_id)
7328        )
7329    );
7330    assert_eq!(
7331        unsafe { &(*(::core::ptr::null::<usb_string_desc>())).usd_desc as *const _ as usize },
7332        8usize,
7333        concat!(
7334            "Offset of field: ",
7335            stringify!(usb_string_desc),
7336            "::",
7337            stringify!(usd_desc)
7338        )
7339    );
7340}
7341#[repr(C)]
7342#[derive(Copy, Clone)]
7343pub struct usb_ctl_report_desc {
7344    pub ucrd_size: cty::c_int,
7345    pub ucrd_data: [u_char; 1024usize],
7346}
7347#[test]
7348fn bindgen_test_layout_usb_ctl_report_desc() {
7349    assert_eq!(
7350        ::core::mem::size_of::<usb_ctl_report_desc>(),
7351        1028usize,
7352        concat!("Size of: ", stringify!(usb_ctl_report_desc))
7353    );
7354    assert_eq!(
7355        ::core::mem::align_of::<usb_ctl_report_desc>(),
7356        4usize,
7357        concat!("Alignment of ", stringify!(usb_ctl_report_desc))
7358    );
7359    assert_eq!(
7360        unsafe { &(*(::core::ptr::null::<usb_ctl_report_desc>())).ucrd_size as *const _ as usize },
7361        0usize,
7362        concat!(
7363            "Offset of field: ",
7364            stringify!(usb_ctl_report_desc),
7365            "::",
7366            stringify!(ucrd_size)
7367        )
7368    );
7369    assert_eq!(
7370        unsafe { &(*(::core::ptr::null::<usb_ctl_report_desc>())).ucrd_data as *const _ as usize },
7371        4usize,
7372        concat!(
7373            "Offset of field: ",
7374            stringify!(usb_ctl_report_desc),
7375            "::",
7376            stringify!(ucrd_data)
7377        )
7378    );
7379}
7380#[repr(C)]
7381#[derive(Debug, Copy, Clone)]
7382pub struct usb_event_cookie_t {
7383    pub cookie: u_int32_t,
7384}
7385#[test]
7386fn bindgen_test_layout_usb_event_cookie_t() {
7387    assert_eq!(
7388        ::core::mem::size_of::<usb_event_cookie_t>(),
7389        4usize,
7390        concat!("Size of: ", stringify!(usb_event_cookie_t))
7391    );
7392    assert_eq!(
7393        ::core::mem::align_of::<usb_event_cookie_t>(),
7394        4usize,
7395        concat!("Alignment of ", stringify!(usb_event_cookie_t))
7396    );
7397    assert_eq!(
7398        unsafe { &(*(::core::ptr::null::<usb_event_cookie_t>())).cookie as *const _ as usize },
7399        0usize,
7400        concat!(
7401            "Offset of field: ",
7402            stringify!(usb_event_cookie_t),
7403            "::",
7404            stringify!(cookie)
7405        )
7406    );
7407}
7408#[repr(C)]
7409#[derive(Copy, Clone)]
7410pub struct usb_device_info {
7411    pub udi_bus: u_int8_t,
7412    pub udi_addr: u_int8_t,
7413    pub udi_cookie: usb_event_cookie_t,
7414    pub udi_product: [cty::c_char; 128usize],
7415    pub udi_vendor: [cty::c_char; 128usize],
7416    pub udi_release: [cty::c_char; 8usize],
7417    pub udi_productNo: u_int16_t,
7418    pub udi_vendorNo: u_int16_t,
7419    pub udi_releaseNo: u_int16_t,
7420    pub udi_class: u_int8_t,
7421    pub udi_subclass: u_int8_t,
7422    pub udi_protocol: u_int8_t,
7423    pub udi_config: u_int8_t,
7424    pub udi_speed: u_int8_t,
7425    pub udi_power: cty::c_int,
7426    pub udi_nports: cty::c_int,
7427    pub udi_devnames: [[cty::c_char; 16usize]; 4usize],
7428    pub udi_ports: [u_int8_t; 16usize],
7429}
7430#[test]
7431fn bindgen_test_layout_usb_device_info() {
7432    assert_eq!(
7433        ::core::mem::size_of::<usb_device_info>(),
7434        372usize,
7435        concat!("Size of: ", stringify!(usb_device_info))
7436    );
7437    assert_eq!(
7438        ::core::mem::align_of::<usb_device_info>(),
7439        4usize,
7440        concat!("Alignment of ", stringify!(usb_device_info))
7441    );
7442    assert_eq!(
7443        unsafe { &(*(::core::ptr::null::<usb_device_info>())).udi_bus as *const _ as usize },
7444        0usize,
7445        concat!(
7446            "Offset of field: ",
7447            stringify!(usb_device_info),
7448            "::",
7449            stringify!(udi_bus)
7450        )
7451    );
7452    assert_eq!(
7453        unsafe { &(*(::core::ptr::null::<usb_device_info>())).udi_addr as *const _ as usize },
7454        1usize,
7455        concat!(
7456            "Offset of field: ",
7457            stringify!(usb_device_info),
7458            "::",
7459            stringify!(udi_addr)
7460        )
7461    );
7462    assert_eq!(
7463        unsafe { &(*(::core::ptr::null::<usb_device_info>())).udi_cookie as *const _ as usize },
7464        4usize,
7465        concat!(
7466            "Offset of field: ",
7467            stringify!(usb_device_info),
7468            "::",
7469            stringify!(udi_cookie)
7470        )
7471    );
7472    assert_eq!(
7473        unsafe { &(*(::core::ptr::null::<usb_device_info>())).udi_product as *const _ as usize },
7474        8usize,
7475        concat!(
7476            "Offset of field: ",
7477            stringify!(usb_device_info),
7478            "::",
7479            stringify!(udi_product)
7480        )
7481    );
7482    assert_eq!(
7483        unsafe { &(*(::core::ptr::null::<usb_device_info>())).udi_vendor as *const _ as usize },
7484        136usize,
7485        concat!(
7486            "Offset of field: ",
7487            stringify!(usb_device_info),
7488            "::",
7489            stringify!(udi_vendor)
7490        )
7491    );
7492    assert_eq!(
7493        unsafe { &(*(::core::ptr::null::<usb_device_info>())).udi_release as *const _ as usize },
7494        264usize,
7495        concat!(
7496            "Offset of field: ",
7497            stringify!(usb_device_info),
7498            "::",
7499            stringify!(udi_release)
7500        )
7501    );
7502    assert_eq!(
7503        unsafe { &(*(::core::ptr::null::<usb_device_info>())).udi_productNo as *const _ as usize },
7504        272usize,
7505        concat!(
7506            "Offset of field: ",
7507            stringify!(usb_device_info),
7508            "::",
7509            stringify!(udi_productNo)
7510        )
7511    );
7512    assert_eq!(
7513        unsafe { &(*(::core::ptr::null::<usb_device_info>())).udi_vendorNo as *const _ as usize },
7514        274usize,
7515        concat!(
7516            "Offset of field: ",
7517            stringify!(usb_device_info),
7518            "::",
7519            stringify!(udi_vendorNo)
7520        )
7521    );
7522    assert_eq!(
7523        unsafe { &(*(::core::ptr::null::<usb_device_info>())).udi_releaseNo as *const _ as usize },
7524        276usize,
7525        concat!(
7526            "Offset of field: ",
7527            stringify!(usb_device_info),
7528            "::",
7529            stringify!(udi_releaseNo)
7530        )
7531    );
7532    assert_eq!(
7533        unsafe { &(*(::core::ptr::null::<usb_device_info>())).udi_class as *const _ as usize },
7534        278usize,
7535        concat!(
7536            "Offset of field: ",
7537            stringify!(usb_device_info),
7538            "::",
7539            stringify!(udi_class)
7540        )
7541    );
7542    assert_eq!(
7543        unsafe { &(*(::core::ptr::null::<usb_device_info>())).udi_subclass as *const _ as usize },
7544        279usize,
7545        concat!(
7546            "Offset of field: ",
7547            stringify!(usb_device_info),
7548            "::",
7549            stringify!(udi_subclass)
7550        )
7551    );
7552    assert_eq!(
7553        unsafe { &(*(::core::ptr::null::<usb_device_info>())).udi_protocol as *const _ as usize },
7554        280usize,
7555        concat!(
7556            "Offset of field: ",
7557            stringify!(usb_device_info),
7558            "::",
7559            stringify!(udi_protocol)
7560        )
7561    );
7562    assert_eq!(
7563        unsafe { &(*(::core::ptr::null::<usb_device_info>())).udi_config as *const _ as usize },
7564        281usize,
7565        concat!(
7566            "Offset of field: ",
7567            stringify!(usb_device_info),
7568            "::",
7569            stringify!(udi_config)
7570        )
7571    );
7572    assert_eq!(
7573        unsafe { &(*(::core::ptr::null::<usb_device_info>())).udi_speed as *const _ as usize },
7574        282usize,
7575        concat!(
7576            "Offset of field: ",
7577            stringify!(usb_device_info),
7578            "::",
7579            stringify!(udi_speed)
7580        )
7581    );
7582    assert_eq!(
7583        unsafe { &(*(::core::ptr::null::<usb_device_info>())).udi_power as *const _ as usize },
7584        284usize,
7585        concat!(
7586            "Offset of field: ",
7587            stringify!(usb_device_info),
7588            "::",
7589            stringify!(udi_power)
7590        )
7591    );
7592    assert_eq!(
7593        unsafe { &(*(::core::ptr::null::<usb_device_info>())).udi_nports as *const _ as usize },
7594        288usize,
7595        concat!(
7596            "Offset of field: ",
7597            stringify!(usb_device_info),
7598            "::",
7599            stringify!(udi_nports)
7600        )
7601    );
7602    assert_eq!(
7603        unsafe { &(*(::core::ptr::null::<usb_device_info>())).udi_devnames as *const _ as usize },
7604        292usize,
7605        concat!(
7606            "Offset of field: ",
7607            stringify!(usb_device_info),
7608            "::",
7609            stringify!(udi_devnames)
7610        )
7611    );
7612    assert_eq!(
7613        unsafe { &(*(::core::ptr::null::<usb_device_info>())).udi_ports as *const _ as usize },
7614        356usize,
7615        concat!(
7616            "Offset of field: ",
7617            stringify!(usb_device_info),
7618            "::",
7619            stringify!(udi_ports)
7620        )
7621    );
7622}
7623#[repr(C)]
7624#[derive(Copy, Clone)]
7625pub struct usb_ctl_report {
7626    pub ucr_report: cty::c_int,
7627    pub ucr_data: [u_char; 1024usize],
7628}
7629#[test]
7630fn bindgen_test_layout_usb_ctl_report() {
7631    assert_eq!(
7632        ::core::mem::size_of::<usb_ctl_report>(),
7633        1028usize,
7634        concat!("Size of: ", stringify!(usb_ctl_report))
7635    );
7636    assert_eq!(
7637        ::core::mem::align_of::<usb_ctl_report>(),
7638        4usize,
7639        concat!("Alignment of ", stringify!(usb_ctl_report))
7640    );
7641    assert_eq!(
7642        unsafe { &(*(::core::ptr::null::<usb_ctl_report>())).ucr_report as *const _ as usize },
7643        0usize,
7644        concat!(
7645            "Offset of field: ",
7646            stringify!(usb_ctl_report),
7647            "::",
7648            stringify!(ucr_report)
7649        )
7650    );
7651    assert_eq!(
7652        unsafe { &(*(::core::ptr::null::<usb_ctl_report>())).ucr_data as *const _ as usize },
7653        4usize,
7654        concat!(
7655            "Offset of field: ",
7656            stringify!(usb_ctl_report),
7657            "::",
7658            stringify!(ucr_data)
7659        )
7660    );
7661}
7662#[repr(C)]
7663#[derive(Debug, Copy, Clone)]
7664pub struct usb_device_stats {
7665    pub uds_requests: [u_long; 4usize],
7666}
7667#[test]
7668fn bindgen_test_layout_usb_device_stats() {
7669    assert_eq!(
7670        ::core::mem::size_of::<usb_device_stats>(),
7671        32usize,
7672        concat!("Size of: ", stringify!(usb_device_stats))
7673    );
7674    assert_eq!(
7675        ::core::mem::align_of::<usb_device_stats>(),
7676        8usize,
7677        concat!("Alignment of ", stringify!(usb_device_stats))
7678    );
7679    assert_eq!(
7680        unsafe { &(*(::core::ptr::null::<usb_device_stats>())).uds_requests as *const _ as usize },
7681        0usize,
7682        concat!(
7683            "Offset of field: ",
7684            stringify!(usb_device_stats),
7685            "::",
7686            stringify!(uds_requests)
7687        )
7688    );
7689}
7690#[repr(C)]
7691#[derive(Copy, Clone)]
7692pub struct usb_event {
7693    pub ue_type: cty::c_int,
7694    pub ue_time: timespec,
7695    pub u: usb_event__bindgen_ty_1,
7696}
7697#[repr(C)]
7698#[repr(align(4))]
7699#[derive(Copy, Clone)]
7700pub union usb_event__bindgen_ty_1 {
7701    pub ue_ctrlr: usb_event__bindgen_ty_1__bindgen_ty_1,
7702    pub ue_device: usb_device_info,
7703    pub ue_driver: usb_event__bindgen_ty_1__bindgen_ty_2,
7704    _bindgen_union_align: [u32; 93usize],
7705}
7706#[repr(C)]
7707#[derive(Debug, Copy, Clone)]
7708pub struct usb_event__bindgen_ty_1__bindgen_ty_1 {
7709    pub ue_bus: cty::c_int,
7710}
7711#[test]
7712fn bindgen_test_layout_usb_event__bindgen_ty_1__bindgen_ty_1() {
7713    assert_eq!(
7714        ::core::mem::size_of::<usb_event__bindgen_ty_1__bindgen_ty_1>(),
7715        4usize,
7716        concat!(
7717            "Size of: ",
7718            stringify!(usb_event__bindgen_ty_1__bindgen_ty_1)
7719        )
7720    );
7721    assert_eq!(
7722        ::core::mem::align_of::<usb_event__bindgen_ty_1__bindgen_ty_1>(),
7723        4usize,
7724        concat!(
7725            "Alignment of ",
7726            stringify!(usb_event__bindgen_ty_1__bindgen_ty_1)
7727        )
7728    );
7729    assert_eq!(
7730        unsafe {
7731            &(*(::core::ptr::null::<usb_event__bindgen_ty_1__bindgen_ty_1>())).ue_bus as *const _
7732                as usize
7733        },
7734        0usize,
7735        concat!(
7736            "Offset of field: ",
7737            stringify!(usb_event__bindgen_ty_1__bindgen_ty_1),
7738            "::",
7739            stringify!(ue_bus)
7740        )
7741    );
7742}
7743#[repr(C)]
7744#[derive(Debug, Copy, Clone)]
7745pub struct usb_event__bindgen_ty_1__bindgen_ty_2 {
7746    pub ue_cookie: usb_event_cookie_t,
7747    pub ue_devname: [cty::c_char; 16usize],
7748}
7749#[test]
7750fn bindgen_test_layout_usb_event__bindgen_ty_1__bindgen_ty_2() {
7751    assert_eq!(
7752        ::core::mem::size_of::<usb_event__bindgen_ty_1__bindgen_ty_2>(),
7753        20usize,
7754        concat!(
7755            "Size of: ",
7756            stringify!(usb_event__bindgen_ty_1__bindgen_ty_2)
7757        )
7758    );
7759    assert_eq!(
7760        ::core::mem::align_of::<usb_event__bindgen_ty_1__bindgen_ty_2>(),
7761        4usize,
7762        concat!(
7763            "Alignment of ",
7764            stringify!(usb_event__bindgen_ty_1__bindgen_ty_2)
7765        )
7766    );
7767    assert_eq!(
7768        unsafe {
7769            &(*(::core::ptr::null::<usb_event__bindgen_ty_1__bindgen_ty_2>())).ue_cookie as *const _
7770                as usize
7771        },
7772        0usize,
7773        concat!(
7774            "Offset of field: ",
7775            stringify!(usb_event__bindgen_ty_1__bindgen_ty_2),
7776            "::",
7777            stringify!(ue_cookie)
7778        )
7779    );
7780    assert_eq!(
7781        unsafe {
7782            &(*(::core::ptr::null::<usb_event__bindgen_ty_1__bindgen_ty_2>())).ue_devname
7783                as *const _ as usize
7784        },
7785        4usize,
7786        concat!(
7787            "Offset of field: ",
7788            stringify!(usb_event__bindgen_ty_1__bindgen_ty_2),
7789            "::",
7790            stringify!(ue_devname)
7791        )
7792    );
7793}
7794#[test]
7795fn bindgen_test_layout_usb_event__bindgen_ty_1() {
7796    assert_eq!(
7797        ::core::mem::size_of::<usb_event__bindgen_ty_1>(),
7798        372usize,
7799        concat!("Size of: ", stringify!(usb_event__bindgen_ty_1))
7800    );
7801    assert_eq!(
7802        ::core::mem::align_of::<usb_event__bindgen_ty_1>(),
7803        4usize,
7804        concat!("Alignment of ", stringify!(usb_event__bindgen_ty_1))
7805    );
7806    assert_eq!(
7807        unsafe {
7808            &(*(::core::ptr::null::<usb_event__bindgen_ty_1>())).ue_ctrlr as *const _ as usize
7809        },
7810        0usize,
7811        concat!(
7812            "Offset of field: ",
7813            stringify!(usb_event__bindgen_ty_1),
7814            "::",
7815            stringify!(ue_ctrlr)
7816        )
7817    );
7818    assert_eq!(
7819        unsafe {
7820            &(*(::core::ptr::null::<usb_event__bindgen_ty_1>())).ue_device as *const _ as usize
7821        },
7822        0usize,
7823        concat!(
7824            "Offset of field: ",
7825            stringify!(usb_event__bindgen_ty_1),
7826            "::",
7827            stringify!(ue_device)
7828        )
7829    );
7830    assert_eq!(
7831        unsafe {
7832            &(*(::core::ptr::null::<usb_event__bindgen_ty_1>())).ue_driver as *const _ as usize
7833        },
7834        0usize,
7835        concat!(
7836            "Offset of field: ",
7837            stringify!(usb_event__bindgen_ty_1),
7838            "::",
7839            stringify!(ue_driver)
7840        )
7841    );
7842}
7843#[test]
7844fn bindgen_test_layout_usb_event() {
7845    assert_eq!(
7846        ::core::mem::size_of::<usb_event>(),
7847        400usize,
7848        concat!("Size of: ", stringify!(usb_event))
7849    );
7850    assert_eq!(
7851        ::core::mem::align_of::<usb_event>(),
7852        8usize,
7853        concat!("Alignment of ", stringify!(usb_event))
7854    );
7855    assert_eq!(
7856        unsafe { &(*(::core::ptr::null::<usb_event>())).ue_type as *const _ as usize },
7857        0usize,
7858        concat!(
7859            "Offset of field: ",
7860            stringify!(usb_event),
7861            "::",
7862            stringify!(ue_type)
7863        )
7864    );
7865    assert_eq!(
7866        unsafe { &(*(::core::ptr::null::<usb_event>())).ue_time as *const _ as usize },
7867        8usize,
7868        concat!(
7869            "Offset of field: ",
7870            stringify!(usb_event),
7871            "::",
7872            stringify!(ue_time)
7873        )
7874    );
7875    assert_eq!(
7876        unsafe { &(*(::core::ptr::null::<usb_event>())).u as *const _ as usize },
7877        24usize,
7878        concat!(
7879            "Offset of field: ",
7880            stringify!(usb_event),
7881            "::",
7882            stringify!(u)
7883        )
7884    );
7885}
7886#[repr(C)]
7887#[derive(Debug, Copy, Clone)]
7888pub struct usbd_bus {
7889    _unused: [u8; 0],
7890}
7891pub type usbd_bus_handle = *mut usbd_bus;
7892#[repr(C)]
7893#[derive(Debug, Copy, Clone)]
7894pub struct usbd_device {
7895    _unused: [u8; 0],
7896}
7897pub type usbd_device_handle = *mut usbd_device;
7898#[repr(C)]
7899#[derive(Debug, Copy, Clone)]
7900pub struct usbd_interface {
7901    _unused: [u8; 0],
7902}
7903pub type usbd_interface_handle = *mut usbd_interface;
7904#[repr(C)]
7905#[derive(Debug, Copy, Clone)]
7906pub struct usbd_pipe {
7907    _unused: [u8; 0],
7908}
7909pub type usbd_pipe_handle = *mut usbd_pipe;
7910#[repr(C)]
7911#[derive(Debug, Copy, Clone)]
7912pub struct usbd_xfer {
7913    _unused: [u8; 0],
7914}
7915pub type usbd_xfer_handle = *mut usbd_xfer;
7916pub type usbd_private_handle = *mut cty::c_void;
7917pub const usbd_status_USBD_NORMAL_COMPLETION: usbd_status = 0;
7918pub const usbd_status_USBD_IN_PROGRESS: usbd_status = 1;
7919pub const usbd_status_USBD_PENDING_REQUESTS: usbd_status = 2;
7920pub const usbd_status_USBD_NOT_STARTED: usbd_status = 3;
7921pub const usbd_status_USBD_INVAL: usbd_status = 4;
7922pub const usbd_status_USBD_NOMEM: usbd_status = 5;
7923pub const usbd_status_USBD_CANCELLED: usbd_status = 6;
7924pub const usbd_status_USBD_BAD_ADDRESS: usbd_status = 7;
7925pub const usbd_status_USBD_IN_USE: usbd_status = 8;
7926pub const usbd_status_USBD_NO_ADDR: usbd_status = 9;
7927pub const usbd_status_USBD_SET_ADDR_FAILED: usbd_status = 10;
7928pub const usbd_status_USBD_NO_POWER: usbd_status = 11;
7929pub const usbd_status_USBD_TOO_DEEP: usbd_status = 12;
7930pub const usbd_status_USBD_IOERROR: usbd_status = 13;
7931pub const usbd_status_USBD_NOT_CONFIGURED: usbd_status = 14;
7932pub const usbd_status_USBD_TIMEOUT: usbd_status = 15;
7933pub const usbd_status_USBD_SHORT_XFER: usbd_status = 16;
7934pub const usbd_status_USBD_STALLED: usbd_status = 17;
7935pub const usbd_status_USBD_INTERRUPTED: usbd_status = 18;
7936pub const usbd_status_USBD_ERROR_MAX: usbd_status = 19;
7937pub type usbd_status = u32;
7938pub type usbd_callback = ::core::option::Option<
7939    unsafe extern "C" fn(arg1: usbd_xfer_handle, arg2: usbd_private_handle, arg3: usbd_status),
7940>;
7941#[repr(C)]
7942#[derive(Debug, Copy, Clone)]
7943pub struct usb_task {
7944    pub next: usb_task__bindgen_ty_1,
7945    pub fun: ::core::option::Option<unsafe extern "C" fn(arg1: *mut cty::c_void)>,
7946    pub arg: *mut cty::c_void,
7947    pub onqueue: cty::c_char,
7948}
7949#[repr(C)]
7950#[derive(Debug, Copy, Clone)]
7951pub struct usb_task__bindgen_ty_1 {
7952    pub tqe_next: *mut usb_task,
7953    pub tqe_prev: *mut *mut usb_task,
7954}
7955#[test]
7956fn bindgen_test_layout_usb_task__bindgen_ty_1() {
7957    assert_eq!(
7958        ::core::mem::size_of::<usb_task__bindgen_ty_1>(),
7959        16usize,
7960        concat!("Size of: ", stringify!(usb_task__bindgen_ty_1))
7961    );
7962    assert_eq!(
7963        ::core::mem::align_of::<usb_task__bindgen_ty_1>(),
7964        8usize,
7965        concat!("Alignment of ", stringify!(usb_task__bindgen_ty_1))
7966    );
7967    assert_eq!(
7968        unsafe {
7969            &(*(::core::ptr::null::<usb_task__bindgen_ty_1>())).tqe_next as *const _ as usize
7970        },
7971        0usize,
7972        concat!(
7973            "Offset of field: ",
7974            stringify!(usb_task__bindgen_ty_1),
7975            "::",
7976            stringify!(tqe_next)
7977        )
7978    );
7979    assert_eq!(
7980        unsafe {
7981            &(*(::core::ptr::null::<usb_task__bindgen_ty_1>())).tqe_prev as *const _ as usize
7982        },
7983        8usize,
7984        concat!(
7985            "Offset of field: ",
7986            stringify!(usb_task__bindgen_ty_1),
7987            "::",
7988            stringify!(tqe_prev)
7989        )
7990    );
7991}
7992#[test]
7993fn bindgen_test_layout_usb_task() {
7994    assert_eq!(
7995        ::core::mem::size_of::<usb_task>(),
7996        40usize,
7997        concat!("Size of: ", stringify!(usb_task))
7998    );
7999    assert_eq!(
8000        ::core::mem::align_of::<usb_task>(),
8001        8usize,
8002        concat!("Alignment of ", stringify!(usb_task))
8003    );
8004    assert_eq!(
8005        unsafe { &(*(::core::ptr::null::<usb_task>())).next as *const _ as usize },
8006        0usize,
8007        concat!(
8008            "Offset of field: ",
8009            stringify!(usb_task),
8010            "::",
8011            stringify!(next)
8012        )
8013    );
8014    assert_eq!(
8015        unsafe { &(*(::core::ptr::null::<usb_task>())).fun as *const _ as usize },
8016        16usize,
8017        concat!(
8018            "Offset of field: ",
8019            stringify!(usb_task),
8020            "::",
8021            stringify!(fun)
8022        )
8023    );
8024    assert_eq!(
8025        unsafe { &(*(::core::ptr::null::<usb_task>())).arg as *const _ as usize },
8026        24usize,
8027        concat!(
8028            "Offset of field: ",
8029            stringify!(usb_task),
8030            "::",
8031            stringify!(arg)
8032        )
8033    );
8034    assert_eq!(
8035        unsafe { &(*(::core::ptr::null::<usb_task>())).onqueue as *const _ as usize },
8036        32usize,
8037        concat!(
8038            "Offset of field: ",
8039            stringify!(usb_task),
8040            "::",
8041            stringify!(onqueue)
8042        )
8043    );
8044}
8045#[repr(C)]
8046#[derive(Debug, Copy, Clone)]
8047pub struct usb_devno {
8048    pub ud_vendor: u_int16_t,
8049    pub ud_product: u_int16_t,
8050}
8051#[test]
8052fn bindgen_test_layout_usb_devno() {
8053    assert_eq!(
8054        ::core::mem::size_of::<usb_devno>(),
8055        4usize,
8056        concat!("Size of: ", stringify!(usb_devno))
8057    );
8058    assert_eq!(
8059        ::core::mem::align_of::<usb_devno>(),
8060        2usize,
8061        concat!("Alignment of ", stringify!(usb_devno))
8062    );
8063    assert_eq!(
8064        unsafe { &(*(::core::ptr::null::<usb_devno>())).ud_vendor as *const _ as usize },
8065        0usize,
8066        concat!(
8067            "Offset of field: ",
8068            stringify!(usb_devno),
8069            "::",
8070            stringify!(ud_vendor)
8071        )
8072    );
8073    assert_eq!(
8074        unsafe { &(*(::core::ptr::null::<usb_devno>())).ud_product as *const _ as usize },
8075        2usize,
8076        concat!(
8077            "Offset of field: ",
8078            stringify!(usb_devno),
8079            "::",
8080            stringify!(ud_product)
8081        )
8082    );
8083}
8084#[repr(C)]
8085#[derive(Debug, Copy, Clone)]
8086pub struct usb_attach_arg {
8087    pub port: cty::c_int,
8088    pub configno: cty::c_int,
8089    pub ifaceno: cty::c_int,
8090    pub vendor: cty::c_int,
8091    pub product: cty::c_int,
8092    pub release: cty::c_int,
8093    pub device: usbd_device_handle,
8094    pub iface: usbd_interface_handle,
8095    pub usegeneric: cty::c_int,
8096    pub ifaces: *mut usbd_interface_handle,
8097    pub nifaces: cty::c_int,
8098}
8099#[test]
8100fn bindgen_test_layout_usb_attach_arg() {
8101    assert_eq!(
8102        ::core::mem::size_of::<usb_attach_arg>(),
8103        64usize,
8104        concat!("Size of: ", stringify!(usb_attach_arg))
8105    );
8106    assert_eq!(
8107        ::core::mem::align_of::<usb_attach_arg>(),
8108        8usize,
8109        concat!("Alignment of ", stringify!(usb_attach_arg))
8110    );
8111    assert_eq!(
8112        unsafe { &(*(::core::ptr::null::<usb_attach_arg>())).port as *const _ as usize },
8113        0usize,
8114        concat!(
8115            "Offset of field: ",
8116            stringify!(usb_attach_arg),
8117            "::",
8118            stringify!(port)
8119        )
8120    );
8121    assert_eq!(
8122        unsafe { &(*(::core::ptr::null::<usb_attach_arg>())).configno as *const _ as usize },
8123        4usize,
8124        concat!(
8125            "Offset of field: ",
8126            stringify!(usb_attach_arg),
8127            "::",
8128            stringify!(configno)
8129        )
8130    );
8131    assert_eq!(
8132        unsafe { &(*(::core::ptr::null::<usb_attach_arg>())).ifaceno as *const _ as usize },
8133        8usize,
8134        concat!(
8135            "Offset of field: ",
8136            stringify!(usb_attach_arg),
8137            "::",
8138            stringify!(ifaceno)
8139        )
8140    );
8141    assert_eq!(
8142        unsafe { &(*(::core::ptr::null::<usb_attach_arg>())).vendor as *const _ as usize },
8143        12usize,
8144        concat!(
8145            "Offset of field: ",
8146            stringify!(usb_attach_arg),
8147            "::",
8148            stringify!(vendor)
8149        )
8150    );
8151    assert_eq!(
8152        unsafe { &(*(::core::ptr::null::<usb_attach_arg>())).product as *const _ as usize },
8153        16usize,
8154        concat!(
8155            "Offset of field: ",
8156            stringify!(usb_attach_arg),
8157            "::",
8158            stringify!(product)
8159        )
8160    );
8161    assert_eq!(
8162        unsafe { &(*(::core::ptr::null::<usb_attach_arg>())).release as *const _ as usize },
8163        20usize,
8164        concat!(
8165            "Offset of field: ",
8166            stringify!(usb_attach_arg),
8167            "::",
8168            stringify!(release)
8169        )
8170    );
8171    assert_eq!(
8172        unsafe { &(*(::core::ptr::null::<usb_attach_arg>())).device as *const _ as usize },
8173        24usize,
8174        concat!(
8175            "Offset of field: ",
8176            stringify!(usb_attach_arg),
8177            "::",
8178            stringify!(device)
8179        )
8180    );
8181    assert_eq!(
8182        unsafe { &(*(::core::ptr::null::<usb_attach_arg>())).iface as *const _ as usize },
8183        32usize,
8184        concat!(
8185            "Offset of field: ",
8186            stringify!(usb_attach_arg),
8187            "::",
8188            stringify!(iface)
8189        )
8190    );
8191    assert_eq!(
8192        unsafe { &(*(::core::ptr::null::<usb_attach_arg>())).usegeneric as *const _ as usize },
8193        40usize,
8194        concat!(
8195            "Offset of field: ",
8196            stringify!(usb_attach_arg),
8197            "::",
8198            stringify!(usegeneric)
8199        )
8200    );
8201    assert_eq!(
8202        unsafe { &(*(::core::ptr::null::<usb_attach_arg>())).ifaces as *const _ as usize },
8203        48usize,
8204        concat!(
8205            "Offset of field: ",
8206            stringify!(usb_attach_arg),
8207            "::",
8208            stringify!(ifaces)
8209        )
8210    );
8211    assert_eq!(
8212        unsafe { &(*(::core::ptr::null::<usb_attach_arg>())).nifaces as *const _ as usize },
8213        56usize,
8214        concat!(
8215            "Offset of field: ",
8216            stringify!(usb_attach_arg),
8217            "::",
8218            stringify!(nifaces)
8219        )
8220    );
8221}
8222#[repr(C)]
8223#[derive(Debug, Copy, Clone)]
8224pub struct lua_State {
8225    _unused: [u8; 0],
8226}
8227pub type lua_CFunction =
8228    ::core::option::Option<unsafe extern "C" fn(L: *mut lua_State) -> cty::c_int>;
8229pub type lua_Reader = ::core::option::Option<
8230    unsafe extern "C" fn(
8231        L: *mut lua_State,
8232        ud: *mut cty::c_void,
8233        sz: *mut usize,
8234    ) -> *const cty::c_char,
8235>;
8236pub type lua_Writer = ::core::option::Option<
8237    unsafe extern "C" fn(
8238        L: *mut lua_State,
8239        p: *const cty::c_void,
8240        sz: usize,
8241        ud: *mut cty::c_void,
8242    ) -> cty::c_int,
8243>;
8244pub type lua_Alloc = ::core::option::Option<
8245    unsafe extern "C" fn(
8246        ud: *mut cty::c_void,
8247        ptr: *mut cty::c_void,
8248        osize: usize,
8249        nsize: usize,
8250    ) -> *mut cty::c_void,
8251>;
8252pub type lua_Number = f64;
8253pub type lua_Integer = cty::c_int;
8254extern "C" {
8255    pub fn lua_newstate(f: lua_Alloc, ud: *mut cty::c_void) -> *mut lua_State;
8256}
8257extern "C" {
8258    pub fn lua_close(L: *mut lua_State);
8259}
8260extern "C" {
8261    pub fn lua_newthread(L: *mut lua_State) -> *mut lua_State;
8262}
8263extern "C" {
8264    pub fn lua_atpanic(L: *mut lua_State, panicf: lua_CFunction) -> lua_CFunction;
8265}
8266extern "C" {
8267    pub fn lua_gettop(L: *mut lua_State) -> cty::c_int;
8268}
8269extern "C" {
8270    pub fn lua_settop(L: *mut lua_State, idx: cty::c_int);
8271}
8272extern "C" {
8273    pub fn lua_pushvalue(L: *mut lua_State, idx: cty::c_int);
8274}
8275extern "C" {
8276    pub fn lua_remove(L: *mut lua_State, idx: cty::c_int);
8277}
8278extern "C" {
8279    pub fn lua_insert(L: *mut lua_State, idx: cty::c_int);
8280}
8281extern "C" {
8282    pub fn lua_replace(L: *mut lua_State, idx: cty::c_int);
8283}
8284extern "C" {
8285    pub fn lua_checkstack(L: *mut lua_State, sz: cty::c_int) -> cty::c_int;
8286}
8287extern "C" {
8288    pub fn lua_xmove(from: *mut lua_State, to: *mut lua_State, n: cty::c_int);
8289}
8290extern "C" {
8291    pub fn lua_isnumber(L: *mut lua_State, idx: cty::c_int) -> cty::c_int;
8292}
8293extern "C" {
8294    pub fn lua_isstring(L: *mut lua_State, idx: cty::c_int) -> cty::c_int;
8295}
8296extern "C" {
8297    pub fn lua_iscfunction(L: *mut lua_State, idx: cty::c_int) -> cty::c_int;
8298}
8299extern "C" {
8300    pub fn lua_isuserdata(L: *mut lua_State, idx: cty::c_int) -> cty::c_int;
8301}
8302extern "C" {
8303    pub fn lua_type(L: *mut lua_State, idx: cty::c_int) -> cty::c_int;
8304}
8305extern "C" {
8306    pub fn lua_typename(L: *mut lua_State, tp: cty::c_int) -> *const cty::c_char;
8307}
8308extern "C" {
8309    pub fn lua_equal(L: *mut lua_State, idx1: cty::c_int, idx2: cty::c_int) -> cty::c_int;
8310}
8311extern "C" {
8312    pub fn lua_rawequal(L: *mut lua_State, idx1: cty::c_int, idx2: cty::c_int) -> cty::c_int;
8313}
8314extern "C" {
8315    pub fn lua_lessthan(L: *mut lua_State, idx1: cty::c_int, idx2: cty::c_int) -> cty::c_int;
8316}
8317extern "C" {
8318    pub fn lua_tonumber(L: *mut lua_State, idx: cty::c_int) -> lua_Number;
8319}
8320extern "C" {
8321    pub fn lua_tointeger(L: *mut lua_State, idx: cty::c_int) -> lua_Integer;
8322}
8323extern "C" {
8324    pub fn lua_toboolean(L: *mut lua_State, idx: cty::c_int) -> cty::c_int;
8325}
8326extern "C" {
8327    pub fn lua_tolstring(L: *mut lua_State, idx: cty::c_int, len: *mut usize)
8328        -> *const cty::c_char;
8329}
8330extern "C" {
8331    pub fn lua_objlen(L: *mut lua_State, idx: cty::c_int) -> usize;
8332}
8333extern "C" {
8334    pub fn lua_tocfunction(L: *mut lua_State, idx: cty::c_int) -> lua_CFunction;
8335}
8336extern "C" {
8337    pub fn lua_touserdata(L: *mut lua_State, idx: cty::c_int) -> *mut cty::c_void;
8338}
8339extern "C" {
8340    pub fn lua_tothread(L: *mut lua_State, idx: cty::c_int) -> *mut lua_State;
8341}
8342extern "C" {
8343    pub fn lua_topointer(L: *mut lua_State, idx: cty::c_int) -> *const cty::c_void;
8344}
8345extern "C" {
8346    pub fn lua_pushnil(L: *mut lua_State);
8347}
8348extern "C" {
8349    pub fn lua_pushnumber(L: *mut lua_State, n: lua_Number);
8350}
8351extern "C" {
8352    pub fn lua_pushinteger(L: *mut lua_State, n: lua_Integer);
8353}
8354extern "C" {
8355    pub fn lua_pushlstring(L: *mut lua_State, s: *const cty::c_char, l: usize);
8356}
8357extern "C" {
8358    pub fn lua_pushstring(L: *mut lua_State, s: *const cty::c_char);
8359}
8360extern "C" {
8361    pub fn lua_pushvfstring(
8362        L: *mut lua_State,
8363        fmt: *const cty::c_char,
8364        argp: *mut __va_list_tag,
8365    ) -> *const cty::c_char;
8366}
8367extern "C" {
8368    pub fn lua_pushfstring(L: *mut lua_State, fmt: *const cty::c_char, ...) -> *const cty::c_char;
8369}
8370extern "C" {
8371    pub fn lua_pushcclosure(L: *mut lua_State, fn_: lua_CFunction, n: cty::c_int);
8372}
8373extern "C" {
8374    pub fn lua_pushboolean(L: *mut lua_State, b: cty::c_int);
8375}
8376extern "C" {
8377    pub fn lua_pushlightuserdata(L: *mut lua_State, p: *mut cty::c_void);
8378}
8379extern "C" {
8380    pub fn lua_pushthread(L: *mut lua_State) -> cty::c_int;
8381}
8382extern "C" {
8383    pub fn lua_gettable(L: *mut lua_State, idx: cty::c_int);
8384}
8385extern "C" {
8386    pub fn lua_getfield(L: *mut lua_State, idx: cty::c_int, k: *const cty::c_char);
8387}
8388extern "C" {
8389    pub fn lua_rawget(L: *mut lua_State, idx: cty::c_int);
8390}
8391extern "C" {
8392    pub fn lua_rawgeti(L: *mut lua_State, idx: cty::c_int, n: cty::c_int);
8393}
8394extern "C" {
8395    pub fn lua_createtable(L: *mut lua_State, narr: cty::c_int, nrec: cty::c_int);
8396}
8397extern "C" {
8398    pub fn lua_newuserdata(L: *mut lua_State, sz: usize) -> *mut cty::c_void;
8399}
8400extern "C" {
8401    pub fn lua_getmetatable(L: *mut lua_State, objindex: cty::c_int) -> cty::c_int;
8402}
8403extern "C" {
8404    pub fn lua_getfenv(L: *mut lua_State, idx: cty::c_int);
8405}
8406extern "C" {
8407    pub fn lua_settable(L: *mut lua_State, idx: cty::c_int);
8408}
8409extern "C" {
8410    pub fn lua_setfield(L: *mut lua_State, idx: cty::c_int, k: *const cty::c_char);
8411}
8412extern "C" {
8413    pub fn lua_rawset(L: *mut lua_State, idx: cty::c_int);
8414}
8415extern "C" {
8416    pub fn lua_rawseti(L: *mut lua_State, idx: cty::c_int, n: cty::c_int);
8417}
8418extern "C" {
8419    pub fn lua_setmetatable(L: *mut lua_State, objindex: cty::c_int) -> cty::c_int;
8420}
8421extern "C" {
8422    pub fn lua_setfenv(L: *mut lua_State, idx: cty::c_int) -> cty::c_int;
8423}
8424extern "C" {
8425    pub fn lua_call(L: *mut lua_State, nargs: cty::c_int, nresults: cty::c_int);
8426}
8427extern "C" {
8428    pub fn lua_pcall(
8429        L: *mut lua_State,
8430        nargs: cty::c_int,
8431        nresults: cty::c_int,
8432        errfunc: cty::c_int,
8433    ) -> cty::c_int;
8434}
8435extern "C" {
8436    pub fn lua_cpcall(L: *mut lua_State, func: lua_CFunction, ud: *mut cty::c_void) -> cty::c_int;
8437}
8438extern "C" {
8439    pub fn lua_load(
8440        L: *mut lua_State,
8441        reader: lua_Reader,
8442        dt: *mut cty::c_void,
8443        chunkname: *const cty::c_char,
8444    ) -> cty::c_int;
8445}
8446extern "C" {
8447    pub fn lua_dump(L: *mut lua_State, writer: lua_Writer, data: *mut cty::c_void) -> cty::c_int;
8448}
8449extern "C" {
8450    pub fn lua_yield(L: *mut lua_State, nresults: cty::c_int) -> cty::c_int;
8451}
8452extern "C" {
8453    pub fn lua_resume(L: *mut lua_State, narg: cty::c_int) -> cty::c_int;
8454}
8455extern "C" {
8456    pub fn lua_status(L: *mut lua_State) -> cty::c_int;
8457}
8458extern "C" {
8459    pub fn lua_gc(L: *mut lua_State, what: cty::c_int, data: cty::c_int) -> cty::c_int;
8460}
8461extern "C" {
8462    pub fn lua_error(L: *mut lua_State) -> cty::c_int;
8463}
8464extern "C" {
8465    pub fn lua_next(L: *mut lua_State, idx: cty::c_int) -> cty::c_int;
8466}
8467extern "C" {
8468    pub fn lua_concat(L: *mut lua_State, n: cty::c_int);
8469}
8470extern "C" {
8471    pub fn lua_getallocf(L: *mut lua_State, ud: *mut *mut cty::c_void) -> lua_Alloc;
8472}
8473extern "C" {
8474    pub fn lua_setallocf(L: *mut lua_State, f: lua_Alloc, ud: *mut cty::c_void);
8475}
8476pub type lua_Hook =
8477    ::core::option::Option<unsafe extern "C" fn(L: *mut lua_State, ar: *mut lua_Debug)>;
8478extern "C" {
8479    pub fn lua_getstack(L: *mut lua_State, level: cty::c_int, ar: *mut lua_Debug) -> cty::c_int;
8480}
8481extern "C" {
8482    pub fn lua_getinfo(
8483        L: *mut lua_State,
8484        what: *const cty::c_char,
8485        ar: *mut lua_Debug,
8486    ) -> cty::c_int;
8487}
8488extern "C" {
8489    pub fn lua_getlocal(
8490        L: *mut lua_State,
8491        ar: *const lua_Debug,
8492        n: cty::c_int,
8493    ) -> *const cty::c_char;
8494}
8495extern "C" {
8496    pub fn lua_setlocal(
8497        L: *mut lua_State,
8498        ar: *const lua_Debug,
8499        n: cty::c_int,
8500    ) -> *const cty::c_char;
8501}
8502extern "C" {
8503    pub fn lua_getupvalue(
8504        L: *mut lua_State,
8505        funcindex: cty::c_int,
8506        n: cty::c_int,
8507    ) -> *const cty::c_char;
8508}
8509extern "C" {
8510    pub fn lua_setupvalue(
8511        L: *mut lua_State,
8512        funcindex: cty::c_int,
8513        n: cty::c_int,
8514    ) -> *const cty::c_char;
8515}
8516extern "C" {
8517    pub fn lua_sethook(
8518        L: *mut lua_State,
8519        func: lua_Hook,
8520        mask: cty::c_int,
8521        count: cty::c_int,
8522    ) -> cty::c_int;
8523}
8524extern "C" {
8525    pub fn lua_gethook(L: *mut lua_State) -> lua_Hook;
8526}
8527extern "C" {
8528    pub fn lua_gethookmask(L: *mut lua_State) -> cty::c_int;
8529}
8530extern "C" {
8531    pub fn lua_gethookcount(L: *mut lua_State) -> cty::c_int;
8532}
8533#[repr(C)]
8534#[derive(Copy, Clone)]
8535pub struct lua_Debug {
8536    pub event: cty::c_int,
8537    pub name: *const cty::c_char,
8538    pub namewhat: *const cty::c_char,
8539    pub what: *const cty::c_char,
8540    pub source: *const cty::c_char,
8541    pub currentline: cty::c_int,
8542    pub nups: cty::c_int,
8543    pub linedefined: cty::c_int,
8544    pub lastlinedefined: cty::c_int,
8545    pub short_src: [cty::c_char; 60usize],
8546    pub i_ci: cty::c_int,
8547}
8548#[test]
8549fn bindgen_test_layout_lua_Debug() {
8550    assert_eq!(
8551        ::core::mem::size_of::<lua_Debug>(),
8552        120usize,
8553        concat!("Size of: ", stringify!(lua_Debug))
8554    );
8555    assert_eq!(
8556        ::core::mem::align_of::<lua_Debug>(),
8557        8usize,
8558        concat!("Alignment of ", stringify!(lua_Debug))
8559    );
8560    assert_eq!(
8561        unsafe { &(*(::core::ptr::null::<lua_Debug>())).event as *const _ as usize },
8562        0usize,
8563        concat!(
8564            "Offset of field: ",
8565            stringify!(lua_Debug),
8566            "::",
8567            stringify!(event)
8568        )
8569    );
8570    assert_eq!(
8571        unsafe { &(*(::core::ptr::null::<lua_Debug>())).name as *const _ as usize },
8572        8usize,
8573        concat!(
8574            "Offset of field: ",
8575            stringify!(lua_Debug),
8576            "::",
8577            stringify!(name)
8578        )
8579    );
8580    assert_eq!(
8581        unsafe { &(*(::core::ptr::null::<lua_Debug>())).namewhat as *const _ as usize },
8582        16usize,
8583        concat!(
8584            "Offset of field: ",
8585            stringify!(lua_Debug),
8586            "::",
8587            stringify!(namewhat)
8588        )
8589    );
8590    assert_eq!(
8591        unsafe { &(*(::core::ptr::null::<lua_Debug>())).what as *const _ as usize },
8592        24usize,
8593        concat!(
8594            "Offset of field: ",
8595            stringify!(lua_Debug),
8596            "::",
8597            stringify!(what)
8598        )
8599    );
8600    assert_eq!(
8601        unsafe { &(*(::core::ptr::null::<lua_Debug>())).source as *const _ as usize },
8602        32usize,
8603        concat!(
8604            "Offset of field: ",
8605            stringify!(lua_Debug),
8606            "::",
8607            stringify!(source)
8608        )
8609    );
8610    assert_eq!(
8611        unsafe { &(*(::core::ptr::null::<lua_Debug>())).currentline as *const _ as usize },
8612        40usize,
8613        concat!(
8614            "Offset of field: ",
8615            stringify!(lua_Debug),
8616            "::",
8617            stringify!(currentline)
8618        )
8619    );
8620    assert_eq!(
8621        unsafe { &(*(::core::ptr::null::<lua_Debug>())).nups as *const _ as usize },
8622        44usize,
8623        concat!(
8624            "Offset of field: ",
8625            stringify!(lua_Debug),
8626            "::",
8627            stringify!(nups)
8628        )
8629    );
8630    assert_eq!(
8631        unsafe { &(*(::core::ptr::null::<lua_Debug>())).linedefined as *const _ as usize },
8632        48usize,
8633        concat!(
8634            "Offset of field: ",
8635            stringify!(lua_Debug),
8636            "::",
8637            stringify!(linedefined)
8638        )
8639    );
8640    assert_eq!(
8641        unsafe { &(*(::core::ptr::null::<lua_Debug>())).lastlinedefined as *const _ as usize },
8642        52usize,
8643        concat!(
8644            "Offset of field: ",
8645            stringify!(lua_Debug),
8646            "::",
8647            stringify!(lastlinedefined)
8648        )
8649    );
8650    assert_eq!(
8651        unsafe { &(*(::core::ptr::null::<lua_Debug>())).short_src as *const _ as usize },
8652        56usize,
8653        concat!(
8654            "Offset of field: ",
8655            stringify!(lua_Debug),
8656            "::",
8657            stringify!(short_src)
8658        )
8659    );
8660    assert_eq!(
8661        unsafe { &(*(::core::ptr::null::<lua_Debug>())).i_ci as *const _ as usize },
8662        116usize,
8663        concat!(
8664            "Offset of field: ",
8665            stringify!(lua_Debug),
8666            "::",
8667            stringify!(i_ci)
8668        )
8669    );
8670}
8671#[repr(C)]
8672#[derive(Debug, Copy, Clone)]
8673pub struct luaL_Reg {
8674    pub name: *const cty::c_char,
8675    pub func: lua_CFunction,
8676}
8677#[test]
8678fn bindgen_test_layout_luaL_Reg() {
8679    assert_eq!(
8680        ::core::mem::size_of::<luaL_Reg>(),
8681        16usize,
8682        concat!("Size of: ", stringify!(luaL_Reg))
8683    );
8684    assert_eq!(
8685        ::core::mem::align_of::<luaL_Reg>(),
8686        8usize,
8687        concat!("Alignment of ", stringify!(luaL_Reg))
8688    );
8689    assert_eq!(
8690        unsafe { &(*(::core::ptr::null::<luaL_Reg>())).name as *const _ as usize },
8691        0usize,
8692        concat!(
8693            "Offset of field: ",
8694            stringify!(luaL_Reg),
8695            "::",
8696            stringify!(name)
8697        )
8698    );
8699    assert_eq!(
8700        unsafe { &(*(::core::ptr::null::<luaL_Reg>())).func as *const _ as usize },
8701        8usize,
8702        concat!(
8703            "Offset of field: ",
8704            stringify!(luaL_Reg),
8705            "::",
8706            stringify!(func)
8707        )
8708    );
8709}
8710extern "C" {
8711    pub fn luaL_openlib(
8712        L: *mut lua_State,
8713        libname: *const cty::c_char,
8714        l: *const luaL_Reg,
8715        nup: cty::c_int,
8716    );
8717}
8718extern "C" {
8719    pub fn luaL_getmetafield(
8720        L: *mut lua_State,
8721        obj: cty::c_int,
8722        e: *const cty::c_char,
8723    ) -> cty::c_int;
8724}
8725extern "C" {
8726    pub fn luaL_callmeta(L: *mut lua_State, obj: cty::c_int, e: *const cty::c_char) -> cty::c_int;
8727}
8728extern "C" {
8729    pub fn luaL_typerror(
8730        L: *mut lua_State,
8731        narg: cty::c_int,
8732        tname: *const cty::c_char,
8733    ) -> cty::c_int;
8734}
8735extern "C" {
8736    pub fn luaL_argerror(
8737        L: *mut lua_State,
8738        numarg: cty::c_int,
8739        extramsg: *const cty::c_char,
8740    ) -> cty::c_int;
8741}
8742extern "C" {
8743    pub fn luaL_optlstring(
8744        L: *mut lua_State,
8745        numArg: cty::c_int,
8746        def: *const cty::c_char,
8747        l: *mut usize,
8748    ) -> *const cty::c_char;
8749}
8750extern "C" {
8751    pub fn luaL_checknumber(L: *mut lua_State, numArg: cty::c_int) -> lua_Number;
8752}
8753extern "C" {
8754    pub fn luaL_optnumber(L: *mut lua_State, nArg: cty::c_int, def: lua_Number) -> lua_Number;
8755}
8756extern "C" {
8757    pub fn luaL_checkinteger(L: *mut lua_State, numArg: cty::c_int) -> lua_Integer;
8758}
8759extern "C" {
8760    pub fn luaL_optinteger(L: *mut lua_State, nArg: cty::c_int, def: lua_Integer) -> lua_Integer;
8761}
8762extern "C" {
8763    pub fn luaL_checkstack(L: *mut lua_State, sz: cty::c_int, msg: *const cty::c_char);
8764}
8765extern "C" {
8766    pub fn luaL_checktype(L: *mut lua_State, narg: cty::c_int, t: cty::c_int);
8767}
8768extern "C" {
8769    pub fn luaL_checkany(L: *mut lua_State, narg: cty::c_int);
8770}
8771extern "C" {
8772    pub fn luaL_newmetatable(L: *mut lua_State, tname: *const cty::c_char) -> cty::c_int;
8773}
8774extern "C" {
8775    pub fn luaL_checkudata(
8776        L: *mut lua_State,
8777        ud: cty::c_int,
8778        tname: *const cty::c_char,
8779    ) -> *mut cty::c_void;
8780}
8781extern "C" {
8782    pub fn luaL_where(L: *mut lua_State, lvl: cty::c_int);
8783}
8784extern "C" {
8785    pub fn luaL_checkoption(
8786        L: *mut lua_State,
8787        narg: cty::c_int,
8788        def: *const cty::c_char,
8789        lst: *const *const cty::c_char,
8790    ) -> cty::c_int;
8791}
8792extern "C" {
8793    pub fn luaL_ref(L: *mut lua_State, t: cty::c_int) -> cty::c_int;
8794}
8795extern "C" {
8796    pub fn luaL_unref(L: *mut lua_State, t: cty::c_int, ref_: cty::c_int);
8797}
8798extern "C" {
8799    pub fn luaL_loadfile(L: *mut lua_State, filename: *const cty::c_char) -> cty::c_int;
8800}
8801extern "C" {
8802    pub fn luaL_loadbuffer(
8803        L: *mut lua_State,
8804        buff: *const cty::c_char,
8805        sz: usize,
8806        name: *const cty::c_char,
8807    ) -> cty::c_int;
8808}
8809extern "C" {
8810    pub fn luaL_loadstring(L: *mut lua_State, s: *const cty::c_char) -> cty::c_int;
8811}
8812extern "C" {
8813    pub fn luaL_newstate() -> *mut lua_State;
8814}
8815extern "C" {
8816    pub fn luaL_gsub(
8817        L: *mut lua_State,
8818        s: *const cty::c_char,
8819        p: *const cty::c_char,
8820        r: *const cty::c_char,
8821    ) -> *const cty::c_char;
8822}
8823extern "C" {
8824    pub fn luaL_findtable(
8825        L: *mut lua_State,
8826        idx: cty::c_int,
8827        fname: *const cty::c_char,
8828        szhint: cty::c_int,
8829    ) -> *const cty::c_char;
8830}
8831#[repr(C)]
8832#[derive(Copy, Clone)]
8833pub struct luaL_Buffer {
8834    pub p: *mut cty::c_char,
8835    pub lvl: cty::c_int,
8836    pub L: *mut lua_State,
8837    pub buffer: [cty::c_char; 8192usize],
8838}
8839#[test]
8840fn bindgen_test_layout_luaL_Buffer() {
8841    assert_eq!(
8842        ::core::mem::size_of::<luaL_Buffer>(),
8843        8216usize,
8844        concat!("Size of: ", stringify!(luaL_Buffer))
8845    );
8846    assert_eq!(
8847        ::core::mem::align_of::<luaL_Buffer>(),
8848        8usize,
8849        concat!("Alignment of ", stringify!(luaL_Buffer))
8850    );
8851    assert_eq!(
8852        unsafe { &(*(::core::ptr::null::<luaL_Buffer>())).p as *const _ as usize },
8853        0usize,
8854        concat!(
8855            "Offset of field: ",
8856            stringify!(luaL_Buffer),
8857            "::",
8858            stringify!(p)
8859        )
8860    );
8861    assert_eq!(
8862        unsafe { &(*(::core::ptr::null::<luaL_Buffer>())).lvl as *const _ as usize },
8863        8usize,
8864        concat!(
8865            "Offset of field: ",
8866            stringify!(luaL_Buffer),
8867            "::",
8868            stringify!(lvl)
8869        )
8870    );
8871    assert_eq!(
8872        unsafe { &(*(::core::ptr::null::<luaL_Buffer>())).L as *const _ as usize },
8873        16usize,
8874        concat!(
8875            "Offset of field: ",
8876            stringify!(luaL_Buffer),
8877            "::",
8878            stringify!(L)
8879        )
8880    );
8881    assert_eq!(
8882        unsafe { &(*(::core::ptr::null::<luaL_Buffer>())).buffer as *const _ as usize },
8883        24usize,
8884        concat!(
8885            "Offset of field: ",
8886            stringify!(luaL_Buffer),
8887            "::",
8888            stringify!(buffer)
8889        )
8890    );
8891}
8892extern "C" {
8893    pub fn luaL_buffinit(L: *mut lua_State, B: *mut luaL_Buffer);
8894}
8895extern "C" {
8896    pub fn luaL_prepbuffer(B: *mut luaL_Buffer) -> *mut cty::c_char;
8897}
8898extern "C" {
8899    pub fn luaL_addlstring(B: *mut luaL_Buffer, s: *const cty::c_char, l: usize);
8900}
8901extern "C" {
8902    pub fn luaL_addstring(B: *mut luaL_Buffer, s: *const cty::c_char);
8903}
8904extern "C" {
8905    pub fn luaL_addvalue(B: *mut luaL_Buffer);
8906}
8907extern "C" {
8908    pub fn luaL_pushresult(B: *mut luaL_Buffer);
8909}
8910pub const BOOL_FALSE: BOOL = 0;
8911pub const BOOL_TRUE: BOOL = 1;
8912pub type BOOL = u32;
8913#[repr(C)]
8914#[derive(Debug, Copy, Clone)]
8915pub struct _bindgen_ty_5 {
8916    pub str: *mut cty::c_char,
8917    pub len: cty::c_int,
8918    pub chunk_size: cty::c_int,
8919    pub unknown_field: cty::c_int,
8920}
8921#[test]
8922fn bindgen_test_layout__bindgen_ty_5() {
8923    assert_eq!(
8924        ::core::mem::size_of::<_bindgen_ty_5>(),
8925        24usize,
8926        concat!("Size of: ", stringify!(_bindgen_ty_5))
8927    );
8928    assert_eq!(
8929        ::core::mem::align_of::<_bindgen_ty_5>(),
8930        8usize,
8931        concat!("Alignment of ", stringify!(_bindgen_ty_5))
8932    );
8933    assert_eq!(
8934        unsafe { &(*(::core::ptr::null::<_bindgen_ty_5>())).str as *const _ as usize },
8935        0usize,
8936        concat!(
8937            "Offset of field: ",
8938            stringify!(_bindgen_ty_5),
8939            "::",
8940            stringify!(str)
8941        )
8942    );
8943    assert_eq!(
8944        unsafe { &(*(::core::ptr::null::<_bindgen_ty_5>())).len as *const _ as usize },
8945        8usize,
8946        concat!(
8947            "Offset of field: ",
8948            stringify!(_bindgen_ty_5),
8949            "::",
8950            stringify!(len)
8951        )
8952    );
8953    assert_eq!(
8954        unsafe { &(*(::core::ptr::null::<_bindgen_ty_5>())).chunk_size as *const _ as usize },
8955        12usize,
8956        concat!(
8957            "Offset of field: ",
8958            stringify!(_bindgen_ty_5),
8959            "::",
8960            stringify!(chunk_size)
8961        )
8962    );
8963    assert_eq!(
8964        unsafe { &(*(::core::ptr::null::<_bindgen_ty_5>())).unknown_field as *const _ as usize },
8965        16usize,
8966        concat!(
8967            "Offset of field: ",
8968            stringify!(_bindgen_ty_5),
8969            "::",
8970            stringify!(unknown_field)
8971        )
8972    );
8973}
8974pub type String = *mut _bindgen_ty_5;
8975pub type NU_TASK = cty::c_void;
8976pub type PCFD = cty::c_int;
8977#[repr(C)]
8978#[derive(Copy, Clone)]
8979pub struct dstat {
8980    pub unknown1: [cty::c_char; 13usize],
8981    pub filepath: [cty::c_char; 266usize],
8982    pub fattribute: cty::c_uchar,
8983    pub unknown2: cty::c_ushort,
8984    pub unknown3: cty::c_ushort,
8985    pub unknown4: cty::c_ushort,
8986    pub unknown5: cty::c_ushort,
8987    pub fsize: cty::c_ulong,
8988    pub unknown6: *mut cty::c_void,
8989    pub unknown7: *mut cty::c_void,
8990    pub unknown8: cty::c_uint,
8991    pub unknown9: cty::c_ushort,
8992}
8993#[test]
8994fn bindgen_test_layout_dstat() {
8995    assert_eq!(
8996        ::core::mem::size_of::<dstat>(),
8997        320usize,
8998        concat!("Size of: ", stringify!(dstat))
8999    );
9000    assert_eq!(
9001        ::core::mem::align_of::<dstat>(),
9002        8usize,
9003        concat!("Alignment of ", stringify!(dstat))
9004    );
9005    assert_eq!(
9006        unsafe { &(*(::core::ptr::null::<dstat>())).unknown1 as *const _ as usize },
9007        0usize,
9008        concat!(
9009            "Offset of field: ",
9010            stringify!(dstat),
9011            "::",
9012            stringify!(unknown1)
9013        )
9014    );
9015    assert_eq!(
9016        unsafe { &(*(::core::ptr::null::<dstat>())).filepath as *const _ as usize },
9017        13usize,
9018        concat!(
9019            "Offset of field: ",
9020            stringify!(dstat),
9021            "::",
9022            stringify!(filepath)
9023        )
9024    );
9025    assert_eq!(
9026        unsafe { &(*(::core::ptr::null::<dstat>())).fattribute as *const _ as usize },
9027        279usize,
9028        concat!(
9029            "Offset of field: ",
9030            stringify!(dstat),
9031            "::",
9032            stringify!(fattribute)
9033        )
9034    );
9035    assert_eq!(
9036        unsafe { &(*(::core::ptr::null::<dstat>())).unknown2 as *const _ as usize },
9037        280usize,
9038        concat!(
9039            "Offset of field: ",
9040            stringify!(dstat),
9041            "::",
9042            stringify!(unknown2)
9043        )
9044    );
9045    assert_eq!(
9046        unsafe { &(*(::core::ptr::null::<dstat>())).unknown3 as *const _ as usize },
9047        282usize,
9048        concat!(
9049            "Offset of field: ",
9050            stringify!(dstat),
9051            "::",
9052            stringify!(unknown3)
9053        )
9054    );
9055    assert_eq!(
9056        unsafe { &(*(::core::ptr::null::<dstat>())).unknown4 as *const _ as usize },
9057        284usize,
9058        concat!(
9059            "Offset of field: ",
9060            stringify!(dstat),
9061            "::",
9062            stringify!(unknown4)
9063        )
9064    );
9065    assert_eq!(
9066        unsafe { &(*(::core::ptr::null::<dstat>())).unknown5 as *const _ as usize },
9067        286usize,
9068        concat!(
9069            "Offset of field: ",
9070            stringify!(dstat),
9071            "::",
9072            stringify!(unknown5)
9073        )
9074    );
9075    assert_eq!(
9076        unsafe { &(*(::core::ptr::null::<dstat>())).fsize as *const _ as usize },
9077        288usize,
9078        concat!(
9079            "Offset of field: ",
9080            stringify!(dstat),
9081            "::",
9082            stringify!(fsize)
9083        )
9084    );
9085    assert_eq!(
9086        unsafe { &(*(::core::ptr::null::<dstat>())).unknown6 as *const _ as usize },
9087        296usize,
9088        concat!(
9089            "Offset of field: ",
9090            stringify!(dstat),
9091            "::",
9092            stringify!(unknown6)
9093        )
9094    );
9095    assert_eq!(
9096        unsafe { &(*(::core::ptr::null::<dstat>())).unknown7 as *const _ as usize },
9097        304usize,
9098        concat!(
9099            "Offset of field: ",
9100            stringify!(dstat),
9101            "::",
9102            stringify!(unknown7)
9103        )
9104    );
9105    assert_eq!(
9106        unsafe { &(*(::core::ptr::null::<dstat>())).unknown8 as *const _ as usize },
9107        312usize,
9108        concat!(
9109            "Offset of field: ",
9110            stringify!(dstat),
9111            "::",
9112            stringify!(unknown8)
9113        )
9114    );
9115    assert_eq!(
9116        unsafe { &(*(::core::ptr::null::<dstat>())).unknown9 as *const _ as usize },
9117        316usize,
9118        concat!(
9119            "Offset of field: ",
9120            stringify!(dstat),
9121            "::",
9122            stringify!(unknown9)
9123        )
9124    );
9125}
9126pub type DSTAT = dstat;
9127#[repr(C)]
9128#[derive(Debug, Copy, Clone)]
9129pub struct s_ns_event {
9130    pub timestamp: cty::c_uint,
9131    pub type_: cty::c_ushort,
9132    pub ascii: cty::c_ushort,
9133    pub key: cty::c_uint,
9134    pub cursor_x: cty::c_uint,
9135    pub cursor_y: cty::c_uint,
9136    pub unknown: cty::c_uint,
9137    pub modifiers: cty::c_ushort,
9138    pub click: cty::c_uchar,
9139}
9140#[test]
9141fn bindgen_test_layout_s_ns_event() {
9142    assert_eq!(
9143        ::core::mem::size_of::<s_ns_event>(),
9144        28usize,
9145        concat!("Size of: ", stringify!(s_ns_event))
9146    );
9147    assert_eq!(
9148        ::core::mem::align_of::<s_ns_event>(),
9149        4usize,
9150        concat!("Alignment of ", stringify!(s_ns_event))
9151    );
9152    assert_eq!(
9153        unsafe { &(*(::core::ptr::null::<s_ns_event>())).timestamp as *const _ as usize },
9154        0usize,
9155        concat!(
9156            "Offset of field: ",
9157            stringify!(s_ns_event),
9158            "::",
9159            stringify!(timestamp)
9160        )
9161    );
9162    assert_eq!(
9163        unsafe { &(*(::core::ptr::null::<s_ns_event>())).type_ as *const _ as usize },
9164        4usize,
9165        concat!(
9166            "Offset of field: ",
9167            stringify!(s_ns_event),
9168            "::",
9169            stringify!(type_)
9170        )
9171    );
9172    assert_eq!(
9173        unsafe { &(*(::core::ptr::null::<s_ns_event>())).ascii as *const _ as usize },
9174        6usize,
9175        concat!(
9176            "Offset of field: ",
9177            stringify!(s_ns_event),
9178            "::",
9179            stringify!(ascii)
9180        )
9181    );
9182    assert_eq!(
9183        unsafe { &(*(::core::ptr::null::<s_ns_event>())).key as *const _ as usize },
9184        8usize,
9185        concat!(
9186            "Offset of field: ",
9187            stringify!(s_ns_event),
9188            "::",
9189            stringify!(key)
9190        )
9191    );
9192    assert_eq!(
9193        unsafe { &(*(::core::ptr::null::<s_ns_event>())).cursor_x as *const _ as usize },
9194        12usize,
9195        concat!(
9196            "Offset of field: ",
9197            stringify!(s_ns_event),
9198            "::",
9199            stringify!(cursor_x)
9200        )
9201    );
9202    assert_eq!(
9203        unsafe { &(*(::core::ptr::null::<s_ns_event>())).cursor_y as *const _ as usize },
9204        16usize,
9205        concat!(
9206            "Offset of field: ",
9207            stringify!(s_ns_event),
9208            "::",
9209            stringify!(cursor_y)
9210        )
9211    );
9212    assert_eq!(
9213        unsafe { &(*(::core::ptr::null::<s_ns_event>())).unknown as *const _ as usize },
9214        20usize,
9215        concat!(
9216            "Offset of field: ",
9217            stringify!(s_ns_event),
9218            "::",
9219            stringify!(unknown)
9220        )
9221    );
9222    assert_eq!(
9223        unsafe { &(*(::core::ptr::null::<s_ns_event>())).modifiers as *const _ as usize },
9224        24usize,
9225        concat!(
9226            "Offset of field: ",
9227            stringify!(s_ns_event),
9228            "::",
9229            stringify!(modifiers)
9230        )
9231    );
9232    assert_eq!(
9233        unsafe { &(*(::core::ptr::null::<s_ns_event>())).click as *const _ as usize },
9234        26usize,
9235        concat!(
9236            "Offset of field: ",
9237            stringify!(s_ns_event),
9238            "::",
9239            stringify!(click)
9240        )
9241    );
9242}
9243pub const e_resourceID_RES_CLNK: e_resourceID = 1668050539;
9244pub const e_resourceID_RES_CTLG: e_resourceID = 1668574311;
9245pub const e_resourceID_RES_DCOL: e_resourceID = 1684238188;
9246pub const e_resourceID_RES_DLOG: e_resourceID = 1684828007;
9247pub const e_resourceID_RES_DTST: e_resourceID = 1685353332;
9248pub const e_resourceID_RES_GEOG: e_resourceID = 1734700903;
9249pub const e_resourceID_RES_MATH: e_resourceID = 1835103336;
9250pub const e_resourceID_RES_MWIZ: e_resourceID = 1836542330;
9251pub const e_resourceID_RES_NTPD: e_resourceID = 1853124708;
9252pub const e_resourceID_RES_PGED: e_resourceID = 1885824356;
9253pub const e_resourceID_RES_QCKP: e_resourceID = 1902340976;
9254pub const e_resourceID_RES_QUES: e_resourceID = 1903519091;
9255pub const e_resourceID_RES_SCPD: e_resourceID = 1935896676;
9256pub const e_resourceID_RES_SYST: e_resourceID = 1937339252;
9257pub const e_resourceID_RES_TBLT: e_resourceID = 1952607348;
9258pub type e_resourceID = u32;
9259#[repr(C)]
9260#[derive(Debug, Copy, Clone)]
9261pub struct nuc_stat {
9262    pub st_dev: cty::c_ushort,
9263    pub st_ino: cty::c_uint,
9264    pub st_mode: cty::c_uint,
9265    pub st_nlink: cty::c_ushort,
9266    pub st_uid: cty::c_ushort,
9267    pub st_gid: cty::c_ushort,
9268    pub st_rdev: cty::c_ushort,
9269    pub st_size: cty::c_uint,
9270    pub st_atime: cty::c_uint,
9271    pub st_mtime: cty::c_uint,
9272    pub st_ctime: cty::c_uint,
9273}
9274#[test]
9275fn bindgen_test_layout_nuc_stat() {
9276    assert_eq!(
9277        ::core::mem::size_of::<nuc_stat>(),
9278        36usize,
9279        concat!("Size of: ", stringify!(nuc_stat))
9280    );
9281    assert_eq!(
9282        ::core::mem::align_of::<nuc_stat>(),
9283        4usize,
9284        concat!("Alignment of ", stringify!(nuc_stat))
9285    );
9286    assert_eq!(
9287        unsafe { &(*(::core::ptr::null::<nuc_stat>())).st_dev as *const _ as usize },
9288        0usize,
9289        concat!(
9290            "Offset of field: ",
9291            stringify!(nuc_stat),
9292            "::",
9293            stringify!(st_dev)
9294        )
9295    );
9296    assert_eq!(
9297        unsafe { &(*(::core::ptr::null::<nuc_stat>())).st_ino as *const _ as usize },
9298        4usize,
9299        concat!(
9300            "Offset of field: ",
9301            stringify!(nuc_stat),
9302            "::",
9303            stringify!(st_ino)
9304        )
9305    );
9306    assert_eq!(
9307        unsafe { &(*(::core::ptr::null::<nuc_stat>())).st_mode as *const _ as usize },
9308        8usize,
9309        concat!(
9310            "Offset of field: ",
9311            stringify!(nuc_stat),
9312            "::",
9313            stringify!(st_mode)
9314        )
9315    );
9316    assert_eq!(
9317        unsafe { &(*(::core::ptr::null::<nuc_stat>())).st_nlink as *const _ as usize },
9318        12usize,
9319        concat!(
9320            "Offset of field: ",
9321            stringify!(nuc_stat),
9322            "::",
9323            stringify!(st_nlink)
9324        )
9325    );
9326    assert_eq!(
9327        unsafe { &(*(::core::ptr::null::<nuc_stat>())).st_uid as *const _ as usize },
9328        14usize,
9329        concat!(
9330            "Offset of field: ",
9331            stringify!(nuc_stat),
9332            "::",
9333            stringify!(st_uid)
9334        )
9335    );
9336    assert_eq!(
9337        unsafe { &(*(::core::ptr::null::<nuc_stat>())).st_gid as *const _ as usize },
9338        16usize,
9339        concat!(
9340            "Offset of field: ",
9341            stringify!(nuc_stat),
9342            "::",
9343            stringify!(st_gid)
9344        )
9345    );
9346    assert_eq!(
9347        unsafe { &(*(::core::ptr::null::<nuc_stat>())).st_rdev as *const _ as usize },
9348        18usize,
9349        concat!(
9350            "Offset of field: ",
9351            stringify!(nuc_stat),
9352            "::",
9353            stringify!(st_rdev)
9354        )
9355    );
9356    assert_eq!(
9357        unsafe { &(*(::core::ptr::null::<nuc_stat>())).st_size as *const _ as usize },
9358        20usize,
9359        concat!(
9360            "Offset of field: ",
9361            stringify!(nuc_stat),
9362            "::",
9363            stringify!(st_size)
9364        )
9365    );
9366    assert_eq!(
9367        unsafe { &(*(::core::ptr::null::<nuc_stat>())).st_atime as *const _ as usize },
9368        24usize,
9369        concat!(
9370            "Offset of field: ",
9371            stringify!(nuc_stat),
9372            "::",
9373            stringify!(st_atime)
9374        )
9375    );
9376    assert_eq!(
9377        unsafe { &(*(::core::ptr::null::<nuc_stat>())).st_mtime as *const _ as usize },
9378        28usize,
9379        concat!(
9380            "Offset of field: ",
9381            stringify!(nuc_stat),
9382            "::",
9383            stringify!(st_mtime)
9384        )
9385    );
9386    assert_eq!(
9387        unsafe { &(*(::core::ptr::null::<nuc_stat>())).st_ctime as *const _ as usize },
9388        32usize,
9389        concat!(
9390            "Offset of field: ",
9391            stringify!(nuc_stat),
9392            "::",
9393            stringify!(st_ctime)
9394        )
9395    );
9396}
9397pub type NUC_FILE = cty::c_void;
9398pub type NUC_DIR = cty::c_void;
9399#[repr(C)]
9400#[derive(Debug, Copy, Clone)]
9401pub struct nuc_dirent {
9402    pub d_name: [cty::c_char; 1usize],
9403}
9404#[test]
9405fn bindgen_test_layout_nuc_dirent() {
9406    assert_eq!(
9407        ::core::mem::size_of::<nuc_dirent>(),
9408        1usize,
9409        concat!("Size of: ", stringify!(nuc_dirent))
9410    );
9411    assert_eq!(
9412        ::core::mem::align_of::<nuc_dirent>(),
9413        1usize,
9414        concat!("Alignment of ", stringify!(nuc_dirent))
9415    );
9416    assert_eq!(
9417        unsafe { &(*(::core::ptr::null::<nuc_dirent>())).d_name as *const _ as usize },
9418        0usize,
9419        concat!(
9420            "Offset of field: ",
9421            stringify!(nuc_dirent),
9422            "::",
9423            stringify!(d_name)
9424        )
9425    );
9426}
9427#[repr(C)]
9428#[derive(Debug, Copy, Clone)]
9429pub struct _nn_ch {
9430    _unused: [u8; 0],
9431}
9432pub type nn_ch_t = *mut _nn_ch;
9433#[repr(C)]
9434#[derive(Debug, Copy, Clone)]
9435pub struct _nn_nh {
9436    _unused: [u8; 0],
9437}
9438pub type nn_nh_t = *mut _nn_nh;
9439#[repr(C)]
9440#[derive(Debug, Copy, Clone)]
9441pub struct _nn_oh {
9442    _unused: [u8; 0],
9443}
9444pub type nn_oh_t = *mut _nn_oh;
9445extern "C" {
9446    pub fn keypad_type() -> *mut cty::c_uchar;
9447}
9448extern "C" {
9449    pub fn nl_ndless_rev() -> cty::c_uint;
9450}
9451extern "C" {
9452    pub fn nl_hwtype() -> cty::c_uint;
9453}
9454extern "C" {
9455    pub fn nl_hwsubtype() -> cty::c_uint;
9456}
9457extern "C" {
9458    pub fn nl_loaded_by_3rd_party_loader() -> BOOL;
9459}
9460extern "C" {
9461    pub fn nl_isstartup() -> BOOL;
9462}
9463extern "C" {
9464    pub fn _nl_hassyscall(nr: cty::c_int) -> BOOL;
9465}
9466extern "C" {
9467    pub fn nl_set_resident();
9468}
9469extern "C" {
9470    pub fn nl_osvalue(values: *const cty::c_uint, size: cty::c_uint) -> cty::c_uint;
9471}
9472extern "C" {
9473    pub fn nl_exec(
9474        prg: *const cty::c_char,
9475        argc: cty::c_int,
9476        argv: *mut *mut cty::c_char,
9477    ) -> cty::c_int;
9478}
9479extern "C" {
9480    pub fn nl_lua_getstate() -> *mut lua_State;
9481}
9482#[repr(C)]
9483#[derive(Debug, Copy, Clone)]
9484pub struct touchpad_info_t {
9485    pub width: u16,
9486    pub height: u16,
9487}
9488#[test]
9489fn bindgen_test_layout_touchpad_info_t() {
9490    assert_eq!(
9491        ::core::mem::size_of::<touchpad_info_t>(),
9492        4usize,
9493        concat!("Size of: ", stringify!(touchpad_info_t))
9494    );
9495    assert_eq!(
9496        ::core::mem::align_of::<touchpad_info_t>(),
9497        2usize,
9498        concat!("Alignment of ", stringify!(touchpad_info_t))
9499    );
9500    assert_eq!(
9501        unsafe { &(*(::core::ptr::null::<touchpad_info_t>())).width as *const _ as usize },
9502        0usize,
9503        concat!(
9504            "Offset of field: ",
9505            stringify!(touchpad_info_t),
9506            "::",
9507            stringify!(width)
9508        )
9509    );
9510    assert_eq!(
9511        unsafe { &(*(::core::ptr::null::<touchpad_info_t>())).height as *const _ as usize },
9512        2usize,
9513        concat!(
9514            "Offset of field: ",
9515            stringify!(touchpad_info_t),
9516            "::",
9517            stringify!(height)
9518        )
9519    );
9520}
9521#[repr(C)]
9522#[derive(Debug, Copy, Clone)]
9523pub struct touchpad_report_t {
9524    pub contact: cty::c_uchar,
9525    pub proximity: cty::c_uchar,
9526    pub x: u16,
9527    pub y: u16,
9528    pub x_velocity: cty::c_uchar,
9529    pub y_velocity: cty::c_uchar,
9530    pub dummy: u16,
9531    pub pressed: cty::c_uchar,
9532    pub arrow: cty::c_uchar,
9533}
9534#[test]
9535fn bindgen_test_layout_touchpad_report_t() {
9536    assert_eq!(
9537        ::core::mem::size_of::<touchpad_report_t>(),
9538        12usize,
9539        concat!("Size of: ", stringify!(touchpad_report_t))
9540    );
9541    assert_eq!(
9542        ::core::mem::align_of::<touchpad_report_t>(),
9543        2usize,
9544        concat!("Alignment of ", stringify!(touchpad_report_t))
9545    );
9546    assert_eq!(
9547        unsafe { &(*(::core::ptr::null::<touchpad_report_t>())).contact as *const _ as usize },
9548        0usize,
9549        concat!(
9550            "Offset of field: ",
9551            stringify!(touchpad_report_t),
9552            "::",
9553            stringify!(contact)
9554        )
9555    );
9556    assert_eq!(
9557        unsafe { &(*(::core::ptr::null::<touchpad_report_t>())).proximity as *const _ as usize },
9558        1usize,
9559        concat!(
9560            "Offset of field: ",
9561            stringify!(touchpad_report_t),
9562            "::",
9563            stringify!(proximity)
9564        )
9565    );
9566    assert_eq!(
9567        unsafe { &(*(::core::ptr::null::<touchpad_report_t>())).x as *const _ as usize },
9568        2usize,
9569        concat!(
9570            "Offset of field: ",
9571            stringify!(touchpad_report_t),
9572            "::",
9573            stringify!(x)
9574        )
9575    );
9576    assert_eq!(
9577        unsafe { &(*(::core::ptr::null::<touchpad_report_t>())).y as *const _ as usize },
9578        4usize,
9579        concat!(
9580            "Offset of field: ",
9581            stringify!(touchpad_report_t),
9582            "::",
9583            stringify!(y)
9584        )
9585    );
9586    assert_eq!(
9587        unsafe { &(*(::core::ptr::null::<touchpad_report_t>())).x_velocity as *const _ as usize },
9588        6usize,
9589        concat!(
9590            "Offset of field: ",
9591            stringify!(touchpad_report_t),
9592            "::",
9593            stringify!(x_velocity)
9594        )
9595    );
9596    assert_eq!(
9597        unsafe { &(*(::core::ptr::null::<touchpad_report_t>())).y_velocity as *const _ as usize },
9598        7usize,
9599        concat!(
9600            "Offset of field: ",
9601            stringify!(touchpad_report_t),
9602            "::",
9603            stringify!(y_velocity)
9604        )
9605    );
9606    assert_eq!(
9607        unsafe { &(*(::core::ptr::null::<touchpad_report_t>())).dummy as *const _ as usize },
9608        8usize,
9609        concat!(
9610            "Offset of field: ",
9611            stringify!(touchpad_report_t),
9612            "::",
9613            stringify!(dummy)
9614        )
9615    );
9616    assert_eq!(
9617        unsafe { &(*(::core::ptr::null::<touchpad_report_t>())).pressed as *const _ as usize },
9618        10usize,
9619        concat!(
9620            "Offset of field: ",
9621            stringify!(touchpad_report_t),
9622            "::",
9623            stringify!(pressed)
9624        )
9625    );
9626    assert_eq!(
9627        unsafe { &(*(::core::ptr::null::<touchpad_report_t>())).arrow as *const _ as usize },
9628        11usize,
9629        concat!(
9630            "Offset of field: ",
9631            stringify!(touchpad_report_t),
9632            "::",
9633            stringify!(arrow)
9634        )
9635    );
9636}
9637pub const scr_type_t_SCR_TYPE_INVALID: scr_type_t = -1;
9638pub const scr_type_t_SCR_320x240_565: scr_type_t = 0;
9639pub const scr_type_t_SCR_320x240_4: scr_type_t = 1;
9640pub const scr_type_t_SCR_240x320_565: scr_type_t = 2;
9641pub const scr_type_t_SCR_320x240_16: scr_type_t = 3;
9642pub const scr_type_t_SCR_320x240_8: scr_type_t = 4;
9643pub const scr_type_t_SCR_320x240_555: scr_type_t = 5;
9644pub const scr_type_t_SCR_240x320_555: scr_type_t = 6;
9645pub const scr_type_t_SCR_TYPE_COUNT: scr_type_t = 7;
9646pub type scr_type_t = i32;
9647extern "C" {
9648    pub fn assert_ndless_rev(required_rev: cty::c_uint);
9649}
9650extern "C" {
9651    pub fn any_key_pressed() -> BOOL;
9652}
9653extern "C" {
9654    pub fn clear_cache();
9655}
9656extern "C" {
9657    pub fn enable_relative_paths(argv: *mut *mut cty::c_char) -> cty::c_int;
9658}
9659extern "C" {
9660    pub fn file_each(
9661        folder: *const cty::c_char,
9662        callback: ::core::option::Option<
9663            unsafe extern "C" fn(path: *const cty::c_char, context: *mut cty::c_void) -> cty::c_int,
9664        >,
9665        context: *mut cty::c_void,
9666    ) -> cty::c_int;
9667}
9668extern "C" {
9669    pub fn idle();
9670}
9671extern "C" {
9672    pub fn msleep(millisec: cty::c_uint) -> cty::c_uint;
9673}
9674extern "C" {
9675    pub fn locate(
9676        filename: *const cty::c_char,
9677        dst_path: *mut cty::c_char,
9678        dst_path_size: usize,
9679    ) -> cty::c_int;
9680}
9681extern "C" {
9682    pub fn on_key_pressed() -> BOOL;
9683}
9684extern "C" {
9685    pub fn refresh_osscr();
9686}
9687extern "C" {
9688    pub fn set_cpu_speed(speed: cty::c_uint) -> cty::c_uint;
9689}
9690extern "C" {
9691    pub fn _show_msgbox(
9692        title: *const cty::c_char,
9693        msg: *const cty::c_char,
9694        button_num: cty::c_uint,
9695        ...
9696    ) -> cty::c_uint;
9697}
9698extern "C" {
9699    pub fn show_msg_user_input(
9700        title: *const cty::c_char,
9701        msg: *const cty::c_char,
9702        defaultvalue: *const cty::c_char,
9703        value_ref: *mut *mut cty::c_char,
9704    ) -> cty::c_int;
9705}
9706extern "C" {
9707    pub fn show_1numeric_input(
9708        title: *const cty::c_char,
9709        subtitle: *const cty::c_char,
9710        msg: *const cty::c_char,
9711        value_ref: *mut cty::c_int,
9712        min_value: cty::c_int,
9713        max_value: cty::c_int,
9714    ) -> cty::c_int;
9715}
9716extern "C" {
9717    pub fn show_2numeric_input(
9718        title: *const cty::c_char,
9719        subtitle: *const cty::c_char,
9720        msg1: *const cty::c_char,
9721        value1_ref: *mut cty::c_int,
9722        min_value1: cty::c_int,
9723        max_value1: cty::c_int,
9724        msg2: *const cty::c_char,
9725        value2_ref: *mut cty::c_int,
9726        min_value2: cty::c_int,
9727        max_value2: cty::c_int,
9728    ) -> cty::c_int;
9729}
9730extern "C" {
9731    pub fn touchpad_getinfo() -> *mut touchpad_info_t;
9732}
9733extern "C" {
9734    pub fn touchpad_scan(report: *mut touchpad_report_t) -> cty::c_int;
9735}
9736extern "C" {
9737    pub fn touchpad_arrow_pressed(arrow: tpad_arrow_t) -> BOOL;
9738}
9739extern "C" {
9740    pub fn usbd_set_idle(
9741        iface: usbd_interface_handle,
9742        duration: cty::c_int,
9743        id: cty::c_int,
9744    ) -> usbd_status;
9745}
9746extern "C" {
9747    pub fn usbd_set_protocol(iface: usbd_interface_handle, report: cty::c_int) -> usbd_status;
9748}
9749extern "C" {
9750    pub fn isKeyPressed(key: *const t_key) -> BOOL;
9751}
9752extern "C" {
9753    pub fn wait_key_pressed();
9754}
9755extern "C" {
9756    pub fn wait_no_key_pressed();
9757}
9758extern "C" {
9759    pub fn cfg_open();
9760}
9761extern "C" {
9762    pub fn cfg_open_file(filepath: *const cty::c_char);
9763}
9764extern "C" {
9765    pub fn cfg_close();
9766}
9767extern "C" {
9768    pub fn cfg_get(key: *const cty::c_char) -> *mut cty::c_char;
9769}
9770extern "C" {
9771    pub fn cfg_register_fileext(ext: *const cty::c_char, prgm: *const cty::c_char);
9772}
9773extern "C" {
9774    pub fn cfg_register_fileext_file(
9775        fielpath: *const cty::c_char,
9776        ext: *const cty::c_char,
9777        prgm: *const cty::c_char,
9778    );
9779}
9780extern "C" {
9781    pub fn lcd_init(type_: scr_type_t) -> bool;
9782}
9783extern "C" {
9784    pub fn lcd_blit(buffer: *mut cty::c_void, buffer_type: scr_type_t);
9785}
9786extern "C" {
9787    pub fn lcd_type() -> scr_type_t;
9788}
9789extern "C" {
9790    pub fn _is_touchpad() -> BOOL;
9791}
9792extern "C" {
9793    pub fn hwtype() -> cty::c_uint;
9794}
9795pub const gui_gc_ClipRectOp_GC_CRO_RESET: gui_gc_ClipRectOp = 0;
9796pub const gui_gc_ClipRectOp_GC_CRO_SET: gui_gc_ClipRectOp = 1;
9797pub const gui_gc_ClipRectOp_GC_CRO_INTERSECT: gui_gc_ClipRectOp = 2;
9798pub const gui_gc_ClipRectOp_GC_CRO_NULL: gui_gc_ClipRectOp = 3;
9799pub type gui_gc_ClipRectOp = u32;
9800pub const gui_gc_Alpha_GC_A_OFF: gui_gc_Alpha = 255;
9801pub const gui_gc_Alpha_GC_A_HALF: gui_gc_Alpha = 128;
9802pub type gui_gc_Alpha = u32;
9803pub const gui_gc_PenMode_GC_PM_SMOOTH: gui_gc_PenMode = 0;
9804pub const gui_gc_PenMode_GC_PM_DOTTED: gui_gc_PenMode = 1;
9805pub const gui_gc_PenMode_GC_PM_DASHED: gui_gc_PenMode = 2;
9806pub type gui_gc_PenMode = u32;
9807pub const gui_gc_PenSize_GC_PS_THIN: gui_gc_PenSize = 0;
9808pub const gui_gc_PenSize_GC_PS_MEDIUM: gui_gc_PenSize = 1;
9809pub const gui_gc_PenSize_GC_PS_THICK: gui_gc_PenSize = 2;
9810pub type gui_gc_PenSize = u32;
9811pub const gui_gc_StringMode_GC_SM_NORMAL: gui_gc_StringMode = 1;
9812pub const gui_gc_StringMode_GC_SM_SHRINK: gui_gc_StringMode = 2;
9813pub const gui_gc_StringMode_GC_SM_OVERLAP: gui_gc_StringMode = 3;
9814pub const gui_gc_StringMode_GC_SM_BASELINE: gui_gc_StringMode = 16;
9815pub const gui_gc_StringMode_GC_SM_BOTTOM: gui_gc_StringMode = 32;
9816pub const gui_gc_StringMode_GC_SM_MIDDLE: gui_gc_StringMode = 48;
9817pub const gui_gc_StringMode_GC_SM_TOP: gui_gc_StringMode = 64;
9818pub const gui_gc_StringMode_GC_SM_RIGHT: gui_gc_StringMode = 256;
9819pub const gui_gc_StringMode_GC_SM_DOWN: gui_gc_StringMode = 512;
9820pub const gui_gc_StringMode_GC_SM_LEFT: gui_gc_StringMode = 768;
9821pub type gui_gc_StringMode = u32;
9822#[repr(C)]
9823#[derive(Debug, Copy, Clone)]
9824pub struct gui_gc_Sprite {
9825    pub width: cty::c_short,
9826    pub height: cty::c_short,
9827    pub pixels: *mut cty::c_char,
9828}
9829#[test]
9830fn bindgen_test_layout_gui_gc_Sprite() {
9831    assert_eq!(
9832        ::core::mem::size_of::<gui_gc_Sprite>(),
9833        16usize,
9834        concat!("Size of: ", stringify!(gui_gc_Sprite))
9835    );
9836    assert_eq!(
9837        ::core::mem::align_of::<gui_gc_Sprite>(),
9838        8usize,
9839        concat!("Alignment of ", stringify!(gui_gc_Sprite))
9840    );
9841    assert_eq!(
9842        unsafe { &(*(::core::ptr::null::<gui_gc_Sprite>())).width as *const _ as usize },
9843        0usize,
9844        concat!(
9845            "Offset of field: ",
9846            stringify!(gui_gc_Sprite),
9847            "::",
9848            stringify!(width)
9849        )
9850    );
9851    assert_eq!(
9852        unsafe { &(*(::core::ptr::null::<gui_gc_Sprite>())).height as *const _ as usize },
9853        2usize,
9854        concat!(
9855            "Offset of field: ",
9856            stringify!(gui_gc_Sprite),
9857            "::",
9858            stringify!(height)
9859        )
9860    );
9861    assert_eq!(
9862        unsafe { &(*(::core::ptr::null::<gui_gc_Sprite>())).pixels as *const _ as usize },
9863        8usize,
9864        concat!(
9865            "Offset of field: ",
9866            stringify!(gui_gc_Sprite),
9867            "::",
9868            stringify!(pixels)
9869        )
9870    );
9871}
9872#[repr(C)]
9873#[derive(Debug, Copy, Clone)]
9874pub struct gui_gc_Image_header {
9875    pub width: cty::c_uint,
9876    pub height: cty::c_uint,
9877    pub empty: cty::c_uint,
9878    pub buff_size: cty::c_uint,
9879    pub depth: cty::c_short,
9880    pub enc: cty::c_short,
9881}
9882#[test]
9883fn bindgen_test_layout_gui_gc_Image_header() {
9884    assert_eq!(
9885        ::core::mem::size_of::<gui_gc_Image_header>(),
9886        20usize,
9887        concat!("Size of: ", stringify!(gui_gc_Image_header))
9888    );
9889    assert_eq!(
9890        ::core::mem::align_of::<gui_gc_Image_header>(),
9891        4usize,
9892        concat!("Alignment of ", stringify!(gui_gc_Image_header))
9893    );
9894    assert_eq!(
9895        unsafe { &(*(::core::ptr::null::<gui_gc_Image_header>())).width as *const _ as usize },
9896        0usize,
9897        concat!(
9898            "Offset of field: ",
9899            stringify!(gui_gc_Image_header),
9900            "::",
9901            stringify!(width)
9902        )
9903    );
9904    assert_eq!(
9905        unsafe { &(*(::core::ptr::null::<gui_gc_Image_header>())).height as *const _ as usize },
9906        4usize,
9907        concat!(
9908            "Offset of field: ",
9909            stringify!(gui_gc_Image_header),
9910            "::",
9911            stringify!(height)
9912        )
9913    );
9914    assert_eq!(
9915        unsafe { &(*(::core::ptr::null::<gui_gc_Image_header>())).empty as *const _ as usize },
9916        8usize,
9917        concat!(
9918            "Offset of field: ",
9919            stringify!(gui_gc_Image_header),
9920            "::",
9921            stringify!(empty)
9922        )
9923    );
9924    assert_eq!(
9925        unsafe { &(*(::core::ptr::null::<gui_gc_Image_header>())).buff_size as *const _ as usize },
9926        12usize,
9927        concat!(
9928            "Offset of field: ",
9929            stringify!(gui_gc_Image_header),
9930            "::",
9931            stringify!(buff_size)
9932        )
9933    );
9934    assert_eq!(
9935        unsafe { &(*(::core::ptr::null::<gui_gc_Image_header>())).depth as *const _ as usize },
9936        16usize,
9937        concat!(
9938            "Offset of field: ",
9939            stringify!(gui_gc_Image_header),
9940            "::",
9941            stringify!(depth)
9942        )
9943    );
9944    assert_eq!(
9945        unsafe { &(*(::core::ptr::null::<gui_gc_Image_header>())).enc as *const _ as usize },
9946        18usize,
9947        concat!(
9948            "Offset of field: ",
9949            stringify!(gui_gc_Image_header),
9950            "::",
9951            stringify!(enc)
9952        )
9953    );
9954}
9955pub const gui_gc_Font_Regular9: gui_gc_Font = 9;
9956pub const gui_gc_Font_SerifRegular9: gui_gc_Font = 1033;
9957pub const gui_gc_Font_Regular10: gui_gc_Font = 10;
9958pub const gui_gc_Font_SerifRegular10: gui_gc_Font = 1034;
9959pub const gui_gc_Font_Regular11: gui_gc_Font = 11;
9960pub const gui_gc_Font_SerifRegular11: gui_gc_Font = 1035;
9961pub const gui_gc_Font_Regular12: gui_gc_Font = 12;
9962pub const gui_gc_Font_SerifRegular12: gui_gc_Font = 1036;
9963pub const gui_gc_Font_Bold9: gui_gc_Font = 265;
9964pub const gui_gc_Font_SerifBold9: gui_gc_Font = 1289;
9965pub const gui_gc_Font_Bold10: gui_gc_Font = 266;
9966pub const gui_gc_Font_SerifBold10: gui_gc_Font = 1290;
9967pub const gui_gc_Font_Bold11: gui_gc_Font = 267;
9968pub const gui_gc_Font_SerifBold11: gui_gc_Font = 1291;
9969pub const gui_gc_Font_Bold12: gui_gc_Font = 268;
9970pub const gui_gc_Font_SerifBold12: gui_gc_Font = 1292;
9971pub const gui_gc_Font_Italic9: gui_gc_Font = 521;
9972pub const gui_gc_Font_SerifItalic9: gui_gc_Font = 1545;
9973pub const gui_gc_Font_Italic10: gui_gc_Font = 522;
9974pub const gui_gc_Font_SerifItalic10: gui_gc_Font = 1546;
9975pub const gui_gc_Font_Italic11: gui_gc_Font = 523;
9976pub const gui_gc_Font_SerifItalic11: gui_gc_Font = 1547;
9977pub const gui_gc_Font_Italic12: gui_gc_Font = 524;
9978pub const gui_gc_Font_SerifItalic12: gui_gc_Font = 1548;
9979pub const gui_gc_Font_BoldItalic9: gui_gc_Font = 777;
9980pub const gui_gc_Font_SerifBoldItalic9: gui_gc_Font = 1801;
9981pub const gui_gc_Font_BoldItalic10: gui_gc_Font = 778;
9982pub const gui_gc_Font_SerifBoldItalic10: gui_gc_Font = 1802;
9983pub const gui_gc_Font_BoldItalic11: gui_gc_Font = 779;
9984pub const gui_gc_Font_SerifBoldItalic11: gui_gc_Font = 1803;
9985pub const gui_gc_Font_BoldItalic12: gui_gc_Font = 780;
9986pub const gui_gc_Font_SerifBoldItalic12: gui_gc_Font = 1804;
9987pub const gui_gc_Font_SerifBold24: gui_gc_Font = 1304;
9988pub const gui_gc_Font_SerifRegular7: gui_gc_Font = 1031;
9989pub type gui_gc_Font = u32;
9990pub type Gc = *mut *mut cty::c_void;
9991extern "C" {
9992    pub fn gui_gc_global_GC() -> Gc;
9993}
9994extern "C" {
9995    pub fn gui_gc_free(arg1: Gc);
9996}
9997extern "C" {
9998    pub fn gui_gc_copy(arg1: Gc, w: cty::c_int, h: cty::c_int) -> Gc;
9999}
10000extern "C" {
10001    pub fn gui_gc_begin(arg1: Gc) -> cty::c_int;
10002}
10003extern "C" {
10004    pub fn gui_gc_finish(arg1: Gc);
10005}
10006extern "C" {
10007    pub fn gui_gc_clipRect(
10008        gc: Gc,
10009        x: cty::c_int,
10010        y: cty::c_int,
10011        w: cty::c_int,
10012        h: cty::c_int,
10013        op: gui_gc_ClipRectOp,
10014    );
10015}
10016extern "C" {
10017    pub fn gui_gc_setColorRGB(arg1: Gc, r: cty::c_int, g: cty::c_int, b: cty::c_int);
10018}
10019extern "C" {
10020    pub fn gui_gc_setColor(arg1: Gc, arg2: cty::c_int);
10021}
10022extern "C" {
10023    pub fn gui_gc_setAlpha(arg1: Gc, arg2: gui_gc_Alpha);
10024}
10025extern "C" {
10026    pub fn gui_gc_setFont(arg1: Gc, arg2: gui_gc_Font);
10027}
10028extern "C" {
10029    pub fn gui_gc_getFont(arg1: Gc) -> gui_gc_Font;
10030}
10031extern "C" {
10032    pub fn gui_gc_setPen(arg1: Gc, arg2: gui_gc_PenSize, arg3: gui_gc_PenMode);
10033}
10034extern "C" {
10035    pub fn gui_gc_setRegin(
10036        gc: Gc,
10037        xs: cty::c_int,
10038        ys: cty::c_int,
10039        ws: cty::c_int,
10040        hs: cty::c_int,
10041        x: cty::c_int,
10042        y: cty::c_int,
10043        w: cty::c_int,
10044        h: cty::c_int,
10045    );
10046}
10047extern "C" {
10048    pub fn gui_gc_drawArc(
10049        gc: Gc,
10050        x: cty::c_int,
10051        y: cty::c_int,
10052        w: cty::c_int,
10053        h: cty::c_int,
10054        start: cty::c_int,
10055        end: cty::c_int,
10056    );
10057}
10058extern "C" {
10059    pub fn gui_gc_drawIcon(
10060        gc: Gc,
10061        res: e_resourceID,
10062        icon: cty::c_int,
10063        x: cty::c_int,
10064        y: cty::c_int,
10065    );
10066}
10067extern "C" {
10068    pub fn gui_gc_drawSprite(arg1: Gc, arg2: *mut gui_gc_Sprite, x: cty::c_int, y: cty::c_int);
10069}
10070extern "C" {
10071    pub fn gui_gc_drawLine(
10072        arg1: Gc,
10073        x1: cty::c_int,
10074        y1: cty::c_int,
10075        x2: cty::c_int,
10076        y2: cty::c_int,
10077    );
10078}
10079extern "C" {
10080    pub fn gui_gc_drawRect(arg1: Gc, x: cty::c_int, y: cty::c_int, w: cty::c_int, h: cty::c_int);
10081}
10082extern "C" {
10083    pub fn gui_gc_drawString(
10084        gc: Gc,
10085        utf16: *mut cty::c_char,
10086        x: cty::c_int,
10087        y: cty::c_int,
10088        mode: gui_gc_StringMode,
10089    );
10090}
10091extern "C" {
10092    pub fn gui_gc_drawPoly(arg1: Gc, points: *mut cty::c_uint, count: cty::c_uint);
10093}
10094extern "C" {
10095    pub fn gui_gc_fillArc(
10096        arg1: Gc,
10097        x: cty::c_int,
10098        y: cty::c_int,
10099        w: cty::c_int,
10100        h: cty::c_int,
10101        start: cty::c_int,
10102        end: cty::c_int,
10103    );
10104}
10105extern "C" {
10106    pub fn gui_gc_fillPoly(arg1: Gc, points: *mut cty::c_uint, count: cty::c_uint);
10107}
10108extern "C" {
10109    pub fn gui_gc_fillRect(arg1: Gc, x: cty::c_int, y: cty::c_int, w: cty::c_int, h: cty::c_int);
10110}
10111extern "C" {
10112    pub fn gui_gc_fillGradient(
10113        arg1: Gc,
10114        x: cty::c_int,
10115        y: cty::c_int,
10116        w: cty::c_int,
10117        h: cty::c_int,
10118        start_color: cty::c_int,
10119        end_color: cty::c_int,
10120        vertical: cty::c_int,
10121    );
10122}
10123extern "C" {
10124    pub fn gui_gc_drawImage(arg1: Gc, TI_Image: *mut cty::c_char, x: cty::c_int, y: cty::c_int);
10125}
10126extern "C" {
10127    pub fn gui_gc_getStringWidth(
10128        arg1: Gc,
10129        arg2: gui_gc_Font,
10130        utf16: *mut cty::c_char,
10131        start: cty::c_int,
10132        length: cty::c_int,
10133    ) -> cty::c_int;
10134}
10135extern "C" {
10136    pub fn gui_gc_getCharWidth(arg1: Gc, arg2: gui_gc_Font, c: cty::c_short) -> cty::c_int;
10137}
10138extern "C" {
10139    pub fn gui_gc_getStringSmallHeight(
10140        arg1: Gc,
10141        font: gui_gc_Font,
10142        utf16: *mut cty::c_char,
10143        start: cty::c_int,
10144        length: cty::c_int,
10145    ) -> cty::c_int;
10146}
10147extern "C" {
10148    pub fn gui_gc_getCharHeight(arg1: Gc, arg2: gui_gc_Font, c: cty::c_short) -> cty::c_int;
10149}
10150extern "C" {
10151    pub fn gui_gc_getStringHeight(
10152        arg1: Gc,
10153        font: gui_gc_Font,
10154        utf16: *mut cty::c_char,
10155        start: cty::c_int,
10156        length: cty::c_int,
10157    ) -> cty::c_int;
10158}
10159extern "C" {
10160    pub fn gui_gc_getFontHeight(arg1: Gc, arg2: gui_gc_Font) -> cty::c_int;
10161}
10162extern "C" {
10163    pub fn gui_gc_getIconSize(
10164        arg1: Gc,
10165        res: e_resourceID,
10166        icon: cty::c_uint,
10167        w: *mut cty::c_uint,
10168        h: *mut cty::c_uint,
10169    ) -> cty::c_int;
10170}
10171extern "C" {
10172    pub fn gui_gc_blit_gc(
10173        source: Gc,
10174        xs: cty::c_int,
10175        ys: cty::c_int,
10176        ws: cty::c_int,
10177        hs: cty::c_int,
10178        dest: Gc,
10179        xd: cty::c_int,
10180        yd: cty::c_int,
10181        wd: cty::c_int,
10182        hd: cty::c_int,
10183    );
10184}
10185extern "C" {
10186    pub fn gui_gc_blit_buffer(
10187        gc: Gc,
10188        buffer: *mut cty::c_char,
10189        x: cty::c_int,
10190        y: cty::c_int,
10191        w: cty::c_int,
10192        h: cty::c_int,
10193    );
10194}
10195extern "C" {
10196    pub fn gui_gc_blit_to_screen(gc: Gc);
10197}
10198extern "C" {
10199    pub fn gui_gc_blit_to_screen_region(
10200        gc: Gc,
10201        x: cty::c_uint,
10202        y: cty::c_uint,
10203        w: cty::c_uint,
10204        h: cty::c_uint,
10205    );
10206}
10207#[repr(C)]
10208#[repr(align(16))]
10209#[derive(Debug, Copy, Clone)]
10210pub struct max_align_t {
10211    pub __clang_max_align_nonce1: cty::c_longlong,
10212    pub __bindgen_padding_0: u64,
10213    pub __clang_max_align_nonce2: u128,
10214}
10215#[test]
10216fn bindgen_test_layout_max_align_t() {
10217    assert_eq!(
10218        ::core::mem::size_of::<max_align_t>(),
10219        32usize,
10220        concat!("Size of: ", stringify!(max_align_t))
10221    );
10222    assert_eq!(
10223        ::core::mem::align_of::<max_align_t>(),
10224        16usize,
10225        concat!("Alignment of ", stringify!(max_align_t))
10226    );
10227    assert_eq!(
10228        unsafe {
10229            &(*(::core::ptr::null::<max_align_t>())).__clang_max_align_nonce1 as *const _ as usize
10230        },
10231        0usize,
10232        concat!(
10233            "Offset of field: ",
10234            stringify!(max_align_t),
10235            "::",
10236            stringify!(__clang_max_align_nonce1)
10237        )
10238    );
10239    assert_eq!(
10240        unsafe {
10241            &(*(::core::ptr::null::<max_align_t>())).__clang_max_align_nonce2 as *const _ as usize
10242        },
10243        16usize,
10244        concat!(
10245            "Offset of field: ",
10246            stringify!(max_align_t),
10247            "::",
10248            stringify!(__clang_max_align_nonce2)
10249        )
10250    );
10251}
10252extern "C" {
10253    pub fn luaopen_base(L: *mut lua_State) -> cty::c_int;
10254}
10255extern "C" {
10256    pub fn luaopen_table(L: *mut lua_State) -> cty::c_int;
10257}
10258extern "C" {
10259    pub fn luaopen_io(L: *mut lua_State) -> cty::c_int;
10260}
10261extern "C" {
10262    pub fn luaopen_os(L: *mut lua_State) -> cty::c_int;
10263}
10264extern "C" {
10265    pub fn luaopen_string(L: *mut lua_State) -> cty::c_int;
10266}
10267extern "C" {
10268    pub fn luaopen_math(L: *mut lua_State) -> cty::c_int;
10269}
10270extern "C" {
10271    pub fn luaopen_debug(L: *mut lua_State) -> cty::c_int;
10272}
10273extern "C" {
10274    pub fn luaopen_package(L: *mut lua_State) -> cty::c_int;
10275}
10276extern "C" {
10277    pub fn luaL_openlibs(L: *mut lua_State);
10278}
10279extern "C" {
10280    pub fn nuc_fopen(p1: *const cty::c_char, p2: *const cty::c_char) -> *mut NUC_FILE;
10281}
10282extern "C" {
10283    pub fn nuc_fread(p1: *mut cty::c_void, p2: usize, p3: usize, p4: *mut NUC_FILE) -> usize;
10284}
10285extern "C" {
10286    pub fn nuc_fwrite(p1: *mut cty::c_void, p2: usize, p3: usize, p4: *mut NUC_FILE) -> usize;
10287}
10288extern "C" {
10289    pub fn nuc_fclose(p1: *mut NUC_FILE) -> cty::c_int;
10290}
10291extern "C" {
10292    pub fn nuc_fgets(p1: *mut cty::c_char, p2: cty::c_int, p3: *mut NUC_FILE) -> *mut cty::c_char;
10293}
10294extern "C" {
10295    pub fn ascii2utf16(p1: *mut cty::c_void, p2: *const cty::c_char, p3: cty::c_int);
10296}
10297extern "C" {
10298    pub fn TCT_Local_Control_Interrupts(p1: cty::c_int) -> cty::c_int;
10299}
10300extern "C" {
10301    pub fn nuc_stat(p1: *const cty::c_char, p2: *mut nuc_stat) -> cty::c_int;
10302}
10303extern "C" {
10304    pub fn TCC_Terminate_Task(p1: *mut NU_TASK) -> cty::c_int;
10305}
10306extern "C" {
10307    pub fn nuc_puts(p1: *const cty::c_char) -> cty::c_int;
10308}
10309extern "C" {
10310    pub fn NU_Get_First(p1: *mut dstat, p2: *const cty::c_char) -> cty::c_int;
10311}
10312extern "C" {
10313    pub fn NU_Get_Next(p1: *mut dstat) -> cty::c_int;
10314}
10315extern "C" {
10316    pub fn NU_Done(p1: *mut dstat);
10317}
10318extern "C" {
10319    pub fn show_dialog_box2_(
10320        p1: cty::c_int,
10321        p2: *const cty::c_char,
10322        p3: *const cty::c_char,
10323        p4: *mut *const cty::c_char,
10324    );
10325}
10326extern "C" {
10327    pub fn nuc_fseek(p1: *mut NUC_FILE, p2: cty::c_long, p3: cty::c_int) -> cty::c_int;
10328}
10329extern "C" {
10330    pub fn NU_Current_Dir(p1: *const cty::c_char, p2: *const cty::c_char) -> cty::c_int;
10331}
10332extern "C" {
10333    pub fn NU_Set_Current_Dir(p1: *const cty::c_char) -> cty::c_int;
10334}
10335extern "C" {
10336    pub fn touchpad_read(p1: cty::c_uchar, p2: cty::c_uchar, p3: *mut cty::c_void) -> cty::c_int;
10337}
10338extern "C" {
10339    pub fn touchpad_write(p1: cty::c_uchar, p2: cty::c_uchar, p3: *mut cty::c_void) -> cty::c_int;
10340}
10341extern "C" {
10342    pub fn TCC_Current_Task_Pointer() -> *mut NU_TASK;
10343}
10344extern "C" {
10345    pub fn nuc_ftell(p1: *mut NUC_FILE) -> cty::c_long;
10346}
10347extern "C" {
10348    pub fn NU_Open(p1: *mut cty::c_char, p2: u32, p3: u32) -> PCFD;
10349}
10350extern "C" {
10351    pub fn NU_Close(p1: PCFD) -> cty::c_int;
10352}
10353extern "C" {
10354    pub fn NU_Truncate(p1: PCFD, p2: cty::c_long) -> cty::c_int;
10355}
10356extern "C" {
10357    pub fn _show_msgbox_2b(
10358        p1: cty::c_int,
10359        p2: *const cty::c_char,
10360        p3: *const cty::c_char,
10361        p4: *const cty::c_char,
10362        p5: cty::c_int,
10363        p6: *const cty::c_char,
10364        p7: cty::c_int,
10365        p8: *mut *const cty::c_char,
10366    ) -> cty::c_int;
10367}
10368extern "C" {
10369    pub fn _show_msgbox_3b(
10370        p1: cty::c_int,
10371        p2: *const cty::c_char,
10372        p3: *const cty::c_char,
10373        p4: *const cty::c_char,
10374        p5: cty::c_int,
10375        p6: *const cty::c_char,
10376        p7: cty::c_int,
10377        p8: *const cty::c_char,
10378        p9: cty::c_int,
10379        p10: *mut *const cty::c_char,
10380    ) -> cty::c_int;
10381}
10382extern "C" {
10383    pub fn nuc_opendir(p1: *const cty::c_char) -> *mut NUC_DIR;
10384}
10385extern "C" {
10386    pub fn nuc_readdir(p1: *mut NUC_DIR) -> *mut nuc_dirent;
10387}
10388extern "C" {
10389    pub fn nuc_closedir(p1: *mut NUC_DIR) -> cty::c_int;
10390}
10391extern "C" {
10392    pub fn luaL_register(p1: *mut lua_State, p2: *const cty::c_char, p3: *const luaL_Reg);
10393}
10394extern "C" {
10395    pub fn luaL_checklstring(
10396        p1: *mut lua_State,
10397        p2: cty::c_int,
10398        p3: *mut usize,
10399    ) -> *const cty::c_char;
10400}
10401extern "C" {
10402    pub fn luaL_error(p1: *mut lua_State, fmt: *const cty::c_char, ...) -> cty::c_int;
10403}
10404extern "C" {
10405    pub fn refresh_homescr();
10406}
10407extern "C" {
10408    pub fn refresh_docbrowser(p1: cty::c_int);
10409}
10410extern "C" {
10411    pub fn utf162ascii(p1: *mut cty::c_char, p2: *const u16, p3: cty::c_int);
10412}
10413extern "C" {
10414    pub fn utf16_strlen(p1: *const u16) -> usize;
10415}
10416extern "C" {
10417    pub fn _show_1NumericInput(
10418        p1: cty::c_int,
10419        p2: *const cty::c_char,
10420        p3: *const cty::c_char,
10421        p4: *const cty::c_char,
10422        p5: *mut cty::c_int,
10423        p6: cty::c_int,
10424        p7: cty::c_int,
10425        p8: cty::c_int,
10426    ) -> cty::c_int;
10427}
10428extern "C" {
10429    pub fn _show_2NumericInput(
10430        p1: cty::c_int,
10431        p2: *const cty::c_char,
10432        p3: *const cty::c_char,
10433        p4: *const cty::c_char,
10434        p5: *mut cty::c_int,
10435        p6: cty::c_int,
10436        p7: cty::c_int,
10437        p8: cty::c_int,
10438        p9: *const cty::c_char,
10439        p10: *mut cty::c_int,
10440        p11: cty::c_int,
10441        p12: cty::c_int,
10442        p13: cty::c_int,
10443    ) -> cty::c_int;
10444}
10445extern "C" {
10446    pub fn _show_msgUserInput(
10447        p1: cty::c_int,
10448        p2: *mut String,
10449        p3: *const cty::c_char,
10450        p4: *const cty::c_char,
10451    ) -> cty::c_int;
10452}
10453extern "C" {
10454    pub fn string_new() -> String;
10455}
10456extern "C" {
10457    pub fn string_free(p1: String);
10458}
10459extern "C" {
10460    pub fn string_to_ascii(p1: String) -> *mut cty::c_char;
10461}
10462extern "C" {
10463    pub fn string_lower(p1: String);
10464}
10465extern "C" {
10466    pub fn string_charAt(p1: String, p2: cty::c_int) -> cty::c_char;
10467}
10468extern "C" {
10469    pub fn string_concat_utf16(p1: String, p2: *const cty::c_char) -> cty::c_int;
10470}
10471extern "C" {
10472    pub fn string_set_ascii(p1: String, p2: *const cty::c_char) -> cty::c_int;
10473}
10474extern "C" {
10475    pub fn string_set_utf16(p1: String, p2: *const cty::c_char) -> cty::c_int;
10476}
10477extern "C" {
10478    pub fn string_indexOf_utf16(p1: String, p2: cty::c_int, p3: *const cty::c_char) -> cty::c_int;
10479}
10480extern "C" {
10481    pub fn string_last_indexOf_utf16(
10482        p1: String,
10483        p2: cty::c_int,
10484        p3: *const cty::c_char,
10485    ) -> cty::c_int;
10486}
10487extern "C" {
10488    pub fn string_compareTo_utf16(p1: String, p2: *const cty::c_char) -> cty::c_int;
10489}
10490extern "C" {
10491    pub fn string_substring(
10492        p1: String,
10493        p2: String,
10494        p3: cty::c_int,
10495        p4: cty::c_int,
10496    ) -> *mut cty::c_char;
10497}
10498extern "C" {
10499    pub fn string_erase(p1: String, p2: cty::c_int);
10500}
10501extern "C" {
10502    pub fn string_truncate(p1: String, p2: cty::c_int);
10503}
10504extern "C" {
10505    pub fn string_subtrsing_utf16(
10506        p1: String,
10507        p2: *const cty::c_char,
10508        p3: *mut cty::c_int,
10509    ) -> *mut cty::c_char;
10510}
10511extern "C" {
10512    pub fn string_insert_replace_utf16(
10513        p1: String,
10514        p2: *const cty::c_char,
10515        p3: cty::c_int,
10516        p4: cty::c_int,
10517    ) -> cty::c_int;
10518}
10519extern "C" {
10520    pub fn string_insert_utf16(p1: String, p2: *const cty::c_char, p3: cty::c_int) -> cty::c_int;
10521}
10522extern "C" {
10523    pub fn string_sprintf_utf16(p1: String, fmt: *const cty::c_char, ...) -> cty::c_int;
10524}
10525extern "C" {
10526    pub fn usbd_open_pipe(
10527        p1: usbd_interface_handle,
10528        p2: u8,
10529        p3: u8,
10530        p4: *mut usbd_pipe_handle,
10531    ) -> usbd_status;
10532}
10533extern "C" {
10534    pub fn usbd_close_pipe(p1: usbd_pipe_handle) -> usbd_status;
10535}
10536extern "C" {
10537    pub fn usbd_transfer(p1: usbd_xfer_handle) -> usbd_status;
10538}
10539extern "C" {
10540    pub fn usbd_alloc_xfer(p1: usbd_device_handle) -> usbd_xfer_handle;
10541}
10542extern "C" {
10543    pub fn usbd_free_xfer(p1: usbd_xfer_handle) -> usbd_status;
10544}
10545extern "C" {
10546    pub fn usbd_setup_xfer(
10547        p1: usbd_xfer_handle,
10548        p2: usbd_pipe_handle,
10549        p3: usbd_private_handle,
10550        p4: *mut cty::c_void,
10551        p5: u32,
10552        p6: u16,
10553        p7: u32,
10554        p8: usbd_callback,
10555    );
10556}
10557extern "C" {
10558    pub fn usbd_setup_isoc_xfer(
10559        p1: usbd_xfer_handle,
10560        p2: usbd_pipe_handle,
10561        p3: usbd_private_handle,
10562        p4: *mut u16,
10563        p5: u32,
10564        p6: u16,
10565        p7: usbd_callback,
10566    );
10567}
10568extern "C" {
10569    pub fn usbd_get_xfer_status(
10570        p1: usbd_xfer_handle,
10571        p2: *mut usbd_private_handle,
10572        p3: *mut *mut cty::c_void,
10573        p4: *mut u32,
10574        p5: *mut usbd_status,
10575    );
10576}
10577extern "C" {
10578    pub fn usbd_interface2endpoint_descriptor(
10579        p1: usbd_interface_handle,
10580        p2: u8,
10581    ) -> *mut usb_endpoint_descriptor_t;
10582}
10583extern "C" {
10584    pub fn usbd_abort_pipe(p1: usbd_pipe_handle) -> usbd_status;
10585}
10586extern "C" {
10587    pub fn usbd_clear_endpoint_stall(p1: usbd_pipe_handle) -> usbd_status;
10588}
10589extern "C" {
10590    pub fn usbd_endpoint_count(p1: usbd_interface_handle, p2: *mut u8) -> usbd_status;
10591}
10592extern "C" {
10593    pub fn usbd_interface_count(p1: usbd_device_handle, p2: *mut u8) -> usbd_status;
10594}
10595extern "C" {
10596    pub fn usbd_interface2device_handle(
10597        p1: usbd_interface_handle,
10598        p2: *mut usbd_device_handle,
10599    ) -> usbd_status;
10600}
10601extern "C" {
10602    pub fn usbd_device2interface_handle(
10603        p1: usbd_device_handle,
10604        p2: u8,
10605        p3: *mut usbd_interface_handle,
10606    ) -> usbd_status;
10607}
10608extern "C" {
10609    pub fn usbd_pipe2device_handle(p1: usbd_pipe_handle) -> usbd_status;
10610}
10611extern "C" {
10612    pub fn usbd_sync_transfer(p1: usbd_xfer_handle) -> usbd_status;
10613}
10614extern "C" {
10615    pub fn usbd_open_pipe_intr(
10616        p1: usbd_interface_handle,
10617        p2: u8,
10618        p3: u8,
10619        p4: *mut usbd_pipe_handle,
10620        p5: usbd_private_handle,
10621        p6: *mut cty::c_void,
10622        p8: *mut u32,
10623        p9: usbd_callback,
10624        p10: cty::c_int,
10625    ) -> usbd_status;
10626}
10627extern "C" {
10628    pub fn usbd_do_request(
10629        p1: usbd_device_handle,
10630        p2: *mut usb_device_request_t,
10631        p3: *mut cty::c_void,
10632    ) -> usbd_status;
10633}
10634extern "C" {
10635    pub fn usbd_do_request_flags(
10636        p1: usbd_device_handle,
10637        p2: *mut usb_device_request_t,
10638        p3: *mut cty::c_void,
10639        p4: u16,
10640        p5: *mut cty::c_int,
10641    ) -> usbd_status;
10642}
10643extern "C" {
10644    pub fn usbd_do_request_flags_pipe(
10645        p1: usbd_device_handle,
10646        p2: usbd_pipe_handle,
10647        p3: *mut usb_device_request_t,
10648        p4: *mut cty::c_void,
10649        p5: u16,
10650        p6: *mut cty::c_int,
10651    ) -> usbd_status;
10652}
10653extern "C" {
10654    pub fn usbd_get_interface_descriptor(
10655        p1: usbd_interface_handle,
10656    ) -> *mut usb_interface_descriptor_t;
10657}
10658extern "C" {
10659    pub fn usbd_get_config_descriptor(p1: usbd_device_handle) -> *mut usb_config_descriptor_t;
10660}
10661extern "C" {
10662    pub fn usbd_set_interface(p1: usbd_interface_handle, p2: cty::c_int) -> usbd_status;
10663}
10664extern "C" {
10665    pub fn usbd_get_interface(p1: usbd_interface_handle, p2: *mut u8) -> usbd_status;
10666}
10667extern "C" {
10668    pub fn usbd_find_idesc(
10669        p1: *mut usb_config_descriptor_t,
10670        p2: cty::c_int,
10671        p3: cty::c_int,
10672    ) -> *mut usb_interface_descriptor_t;
10673}
10674extern "C" {
10675    pub fn usbd_errstr(p1: usbd_status) -> *const cty::c_char;
10676}
10677extern "C" {
10678    pub fn usbd_devinfo(p1: usbd_device_handle, p2: cty::c_int, p3: *mut cty::c_char);
10679}
10680extern "C" {
10681    pub fn usbd_get_endpoint_descriptor(
10682        p1: usbd_interface_handle,
10683        p2: u8,
10684    ) -> *mut usb_endpoint_descriptor_t;
10685}
10686extern "C" {
10687    pub fn usb_register_driver(
10688        p1: cty::c_int,
10689        p2: *mut ::core::option::Option<unsafe extern "C" fn(arg1: device_t) -> cty::c_int>,
10690        p3: *const cty::c_char,
10691        p4: cty::c_int,
10692        p5: cty::c_uint,
10693    ) -> cty::c_int;
10694}
10695extern "C" {
10696    pub fn device_get_ivars(p1: device_t) -> *mut cty::c_void;
10697}
10698extern "C" {
10699    pub fn device_get_softc(p1: device_t) -> *mut cty::c_void;
10700}
10701extern "C" {
10702    pub fn get_event(p1: *mut s_ns_event) -> cty::c_int;
10703}
10704extern "C" {
10705    pub fn send_key_event(p1: *mut s_ns_event, p2: cty::c_ushort, p3: BOOL, p4: BOOL);
10706}
10707extern "C" {
10708    pub fn send_click_event(p1: *mut s_ns_event, p2: cty::c_ushort, p3: BOOL, p4: BOOL);
10709}
10710extern "C" {
10711    pub fn send_pad_event(p1: *mut s_ns_event, p2: cty::c_ushort, p3: BOOL, p4: BOOL);
10712}
10713extern "C" {
10714    pub fn TI_NN_NodeEnumDone(p1: nn_oh_t) -> i16;
10715}
10716extern "C" {
10717    pub fn TI_NN_NodeEnumNext(p1: nn_oh_t, p2: *mut nn_nh_t) -> i16;
10718}
10719extern "C" {
10720    pub fn TI_NN_GetConnMaxPktSize(p1: nn_ch_t) -> u32;
10721}
10722extern "C" {
10723    pub fn TI_NN_Read(p1: nn_ch_t, p2: u32, p3: *mut cty::c_void, p4: u32, p5: u32) -> u16;
10724}
10725extern "C" {
10726    pub fn TI_NN_Write(p1: nn_ch_t, p2: *mut cty::c_void, p3: u32) -> i16;
10727}
10728extern "C" {
10729    pub fn TI_NN_StartService(
10730        p1: u32,
10731        p2: *mut cty::c_void,
10732        p3: ::core::option::Option<unsafe extern "C" fn(arg1: nn_ch_t, arg2: *mut cty::c_void)>,
10733    ) -> i16;
10734}
10735extern "C" {
10736    pub fn TI_NN_StopService(p1: u32) -> i16;
10737}
10738extern "C" {
10739    pub fn TI_NN_Connect(p1: nn_nh_t, p2: u32, p3: *mut nn_ch_t) -> i16;
10740}
10741extern "C" {
10742    pub fn TI_NN_Disconnect(p1: nn_ch_t) -> i16;
10743}
10744extern "C" {
10745    pub fn TI_NN_NodeEnumInit(p1: nn_ch_t) -> i16;
10746}
10747extern "C" {
10748    pub fn TI_NN_DestroyOperationHandle(p1: nn_oh_t) -> i16;
10749}
10750extern "C" {
10751    pub fn TI_NN_CreateOperationHandle() -> nn_oh_t;
10752}
10753extern "C" {
10754    pub fn get_documents_dir() -> *const cty::c_char;
10755}
10756extern "C" {
10757    pub fn gui_gc_setRegion(
10758        p1: Gc,
10759        p2: cty::c_int,
10760        p3: cty::c_int,
10761        p4: cty::c_int,
10762        p5: cty::c_int,
10763        p6: cty::c_int,
10764        p7: cty::c_int,
10765        p8: cty::c_int,
10766        p9: cty::c_int,
10767    );
10768}
10769extern "C" {
10770    pub fn read_nand(
10771        dest: *mut cty::c_void,
10772        size: cty::c_int,
10773        nand_offset: cty::c_int,
10774        unknown: cty::c_int,
10775        percent_max: cty::c_int,
10776        progress_cb: *mut cty::c_void,
10777    );
10778}
10779extern "C" {
10780    pub fn write_nand(p1: *mut cty::c_void, p2: cty::c_int, p3: cty::c_uint) -> cty::c_int;
10781}
10782extern "C" {
10783    pub fn nand_erase_range(p1: cty::c_int, p2: cty::c_int) -> cty::c_int;
10784}
10785extern "C" {
10786    pub fn TI_MS_evaluateExpr_ACBER(
10787        p1: *mut cty::c_void,
10788        p2: *mut cty::c_void,
10789        p3: *const u16,
10790        p4: *mut cty::c_void,
10791        p5: *mut cty::c_void,
10792    ) -> cty::c_int;
10793}
10794extern "C" {
10795    pub fn get_res_string(p1: cty::c_int, p2: cty::c_int) -> *mut cty::c_char;
10796}
10797extern "C" {
10798    pub fn disp_str(p1: *const cty::c_char, p2: *mut cty::c_int, p3: cty::c_int);
10799}
10800extern "C" {
10801    pub fn TI_MS_MathExprToStr(
10802        p1: *mut cty::c_void,
10803        p2: *mut cty::c_void,
10804        p3: *mut *mut u16,
10805    ) -> cty::c_int;
10806}
10807pub type __builtin_va_list = [__va_list_tag; 1usize];
10808#[repr(C)]
10809#[derive(Debug, Copy, Clone)]
10810pub struct __va_list_tag {
10811    pub gp_offset: cty::c_uint,
10812    pub fp_offset: cty::c_uint,
10813    pub overflow_arg_area: *mut cty::c_void,
10814    pub reg_save_area: *mut cty::c_void,
10815}
10816#[test]
10817fn bindgen_test_layout___va_list_tag() {
10818    assert_eq!(
10819        ::core::mem::size_of::<__va_list_tag>(),
10820        24usize,
10821        concat!("Size of: ", stringify!(__va_list_tag))
10822    );
10823    assert_eq!(
10824        ::core::mem::align_of::<__va_list_tag>(),
10825        8usize,
10826        concat!("Alignment of ", stringify!(__va_list_tag))
10827    );
10828    assert_eq!(
10829        unsafe { &(*(::core::ptr::null::<__va_list_tag>())).gp_offset as *const _ as usize },
10830        0usize,
10831        concat!(
10832            "Offset of field: ",
10833            stringify!(__va_list_tag),
10834            "::",
10835            stringify!(gp_offset)
10836        )
10837    );
10838    assert_eq!(
10839        unsafe { &(*(::core::ptr::null::<__va_list_tag>())).fp_offset as *const _ as usize },
10840        4usize,
10841        concat!(
10842            "Offset of field: ",
10843            stringify!(__va_list_tag),
10844            "::",
10845            stringify!(fp_offset)
10846        )
10847    );
10848    assert_eq!(
10849        unsafe {
10850            &(*(::core::ptr::null::<__va_list_tag>())).overflow_arg_area as *const _ as usize
10851        },
10852        8usize,
10853        concat!(
10854            "Offset of field: ",
10855            stringify!(__va_list_tag),
10856            "::",
10857            stringify!(overflow_arg_area)
10858        )
10859    );
10860    assert_eq!(
10861        unsafe { &(*(::core::ptr::null::<__va_list_tag>())).reg_save_area as *const _ as usize },
10862        16usize,
10863        concat!(
10864            "Offset of field: ",
10865            stringify!(__va_list_tag),
10866            "::",
10867            stringify!(reg_save_area)
10868        )
10869    );
10870}
10871#[repr(C)]
10872#[derive(Debug, Copy, Clone)]
10873pub struct __locale_data {
10874    pub _address: u8,
10875}