1 /* automatically generated by rust-bindgen */
2 
3 #[repr(C)]
4 #[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)]
5 pub struct __BindgenBitfieldUnit<Storage, Align>
6 where
7     Storage: AsRef<[u8]> + AsMut<[u8]>,
8 {
9     storage: Storage,
10     align: [Align; 0],
11 }
12 
13 impl<Storage, Align> __BindgenBitfieldUnit<Storage, Align>
14 where
15     Storage: AsRef<[u8]> + AsMut<[u8]>,
16 {
17     #[inline]
new(storage: Storage) -> Self18     pub fn new(storage: Storage) -> Self {
19         Self { storage, align: [] }
20     }
21 
22     #[inline]
get_bit(&self, index: usize) -> bool23     pub fn get_bit(&self, index: usize) -> bool {
24         debug_assert!(index / 8 < self.storage.as_ref().len());
25 
26         let byte_index = index / 8;
27         let byte = self.storage.as_ref()[byte_index];
28 
29         let bit_index = index % 8;
30         let mask = 1 << bit_index;
31 
32         byte & mask == mask
33     }
34 
35     #[inline]
set_bit(&mut self, index: usize, val: bool)36     pub fn set_bit(&mut self, index: usize, val: bool) {
37         debug_assert!(index / 8 < self.storage.as_ref().len());
38 
39         let byte_index = index / 8;
40         let byte = &mut self.storage.as_mut()[byte_index];
41 
42         let bit_index = index % 8;
43         let mask = 1 << bit_index;
44 
45         if val {
46             *byte |= mask;
47         } else {
48             *byte &= !mask;
49         }
50     }
51 
52     #[inline]
get(&self, bit_offset: usize, bit_width: u8) -> u6453     pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 {
54         debug_assert!(bit_width <= 64);
55         debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
56         debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
57 
58         let mut val = 0;
59 
60         for i in 0..(bit_width as usize) {
61             if self.get_bit(i + bit_offset) {
62                 val |= 1 << i;
63             }
64         }
65 
66         val
67     }
68 
69     #[inline]
set(&mut self, bit_offset: usize, bit_width: u8, val: u64)70     pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) {
71         debug_assert!(bit_width <= 64);
72         debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
73         debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
74 
75         for i in 0..(bit_width as usize) {
76             let mask = 1 << i;
77             let val_bit_is_set = val & mask == mask;
78             self.set_bit(i + bit_offset, val_bit_is_set);
79         }
80     }
81 }
82 #[repr(C)]
83 #[derive(Default)]
84 pub struct __IncompleteArrayField<T>(::std::marker::PhantomData<T>);
85 impl<T> __IncompleteArrayField<T> {
86     #[inline]
new() -> Self87     pub fn new() -> Self {
88         __IncompleteArrayField(::std::marker::PhantomData)
89     }
90     #[inline]
as_ptr(&self) -> *const T91     pub unsafe fn as_ptr(&self) -> *const T {
92         ::std::mem::transmute(self)
93     }
94     #[inline]
as_mut_ptr(&mut self) -> *mut T95     pub unsafe fn as_mut_ptr(&mut self) -> *mut T {
96         ::std::mem::transmute(self)
97     }
98     #[inline]
as_slice(&self, len: usize) -> &[T]99     pub unsafe fn as_slice(&self, len: usize) -> &[T] {
100         ::std::slice::from_raw_parts(self.as_ptr(), len)
101     }
102     #[inline]
as_mut_slice(&mut self, len: usize) -> &mut [T]103     pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] {
104         ::std::slice::from_raw_parts_mut(self.as_mut_ptr(), len)
105     }
106 }
107 impl<T> ::std::fmt::Debug for __IncompleteArrayField<T> {
fmt(&self, fmt: &mut ::std::fmt::Formatter) -> ::std::fmt::Result108     fn fmt(&self, fmt: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
109         fmt.write_str("__IncompleteArrayField")
110     }
111 }
112 impl<T> ::std::clone::Clone for __IncompleteArrayField<T> {
113     #[inline]
clone(&self) -> Self114     fn clone(&self) -> Self {
115         Self::new()
116     }
117 }
118 impl<T> ::std::marker::Copy for __IncompleteArrayField<T> {}
119 pub const __BITS_PER_LONG: u32 = 64;
120 pub const __FD_SETSIZE: u32 = 1024;
121 pub const _FEATURES_H: u32 = 1;
122 pub const _DEFAULT_SOURCE: u32 = 1;
123 pub const __USE_ISOC11: u32 = 1;
124 pub const __USE_ISOC99: u32 = 1;
125 pub const __USE_ISOC95: u32 = 1;
126 pub const __USE_POSIX_IMPLICITLY: u32 = 1;
127 pub const _POSIX_SOURCE: u32 = 1;
128 pub const _POSIX_C_SOURCE: u32 = 200809;
129 pub const __USE_POSIX: u32 = 1;
130 pub const __USE_POSIX2: u32 = 1;
131 pub const __USE_POSIX199309: u32 = 1;
132 pub const __USE_POSIX199506: u32 = 1;
133 pub const __USE_XOPEN2K: u32 = 1;
134 pub const __USE_XOPEN2K8: u32 = 1;
135 pub const _ATFILE_SOURCE: u32 = 1;
136 pub const __USE_MISC: u32 = 1;
137 pub const __USE_ATFILE: u32 = 1;
138 pub const __USE_FORTIFY_LEVEL: u32 = 0;
139 pub const _STDC_PREDEF_H: u32 = 1;
140 pub const __STDC_IEC_559__: u32 = 1;
141 pub const __STDC_IEC_559_COMPLEX__: u32 = 1;
142 pub const __STDC_ISO_10646__: u32 = 201505;
143 pub const __STDC_NO_THREADS__: u32 = 1;
144 pub const __GNU_LIBRARY__: u32 = 6;
145 pub const __GLIBC__: u32 = 2;
146 pub const __GLIBC_MINOR__: u32 = 23;
147 pub const _SYS_CDEFS_H: u32 = 1;
148 pub const __WORDSIZE: u32 = 64;
149 pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1;
150 pub const __SYSCALL_WORDSIZE: u32 = 64;
151 pub const _STDLIB_H: u32 = 1;
152 pub const WNOHANG: u32 = 1;
153 pub const WUNTRACED: u32 = 2;
154 pub const WSTOPPED: u32 = 2;
155 pub const WEXITED: u32 = 4;
156 pub const WCONTINUED: u32 = 8;
157 pub const WNOWAIT: u32 = 16777216;
158 pub const __WNOTHREAD: u32 = 536870912;
159 pub const __WALL: u32 = 1073741824;
160 pub const __WCLONE: u32 = 2147483648;
161 pub const __ENUM_IDTYPE_T: u32 = 1;
162 pub const __W_CONTINUED: u32 = 65535;
163 pub const __WCOREFLAG: u32 = 128;
164 pub const _ENDIAN_H: u32 = 1;
165 pub const __LITTLE_ENDIAN: u32 = 1234;
166 pub const __BIG_ENDIAN: u32 = 4321;
167 pub const __PDP_ENDIAN: u32 = 3412;
168 pub const __BYTE_ORDER: u32 = 1234;
169 pub const __FLOAT_WORD_ORDER: u32 = 1234;
170 pub const LITTLE_ENDIAN: u32 = 1234;
171 pub const BIG_ENDIAN: u32 = 4321;
172 pub const PDP_ENDIAN: u32 = 3412;
173 pub const BYTE_ORDER: u32 = 1234;
174 pub const _BITS_BYTESWAP_H: u32 = 1;
175 pub const _BITS_TYPES_H: u32 = 1;
176 pub const _BITS_TYPESIZES_H: u32 = 1;
177 pub const __OFF_T_MATCHES_OFF64_T: u32 = 1;
178 pub const __INO_T_MATCHES_INO64_T: u32 = 1;
179 pub const __ldiv_t_defined: u32 = 1;
180 pub const __lldiv_t_defined: u32 = 1;
181 pub const RAND_MAX: u32 = 2147483647;
182 pub const EXIT_FAILURE: u32 = 1;
183 pub const EXIT_SUCCESS: u32 = 0;
184 pub const _SYS_TYPES_H: u32 = 1;
185 pub const __clock_t_defined: u32 = 1;
186 pub const __time_t_defined: u32 = 1;
187 pub const __clockid_t_defined: u32 = 1;
188 pub const __timer_t_defined: u32 = 1;
189 pub const __BIT_TYPES_DEFINED__: u32 = 1;
190 pub const _SYS_SELECT_H: u32 = 1;
191 pub const __FD_ZERO_STOS: &'static [u8; 6usize] = b"stosq\0";
192 pub const _SIGSET_H_types: u32 = 1;
193 pub const __timespec_defined: u32 = 1;
194 pub const _STRUCT_TIMEVAL: u32 = 1;
195 pub const FD_SETSIZE: u32 = 1024;
196 pub const _SYS_SYSMACROS_H: u32 = 1;
197 pub const _BITS_PTHREADTYPES_H: u32 = 1;
198 pub const __SIZEOF_PTHREAD_ATTR_T: u32 = 56;
199 pub const __SIZEOF_PTHREAD_MUTEX_T: u32 = 40;
200 pub const __SIZEOF_PTHREAD_MUTEXATTR_T: u32 = 4;
201 pub const __SIZEOF_PTHREAD_COND_T: u32 = 48;
202 pub const __SIZEOF_PTHREAD_CONDATTR_T: u32 = 4;
203 pub const __SIZEOF_PTHREAD_RWLOCK_T: u32 = 56;
204 pub const __SIZEOF_PTHREAD_RWLOCKATTR_T: u32 = 8;
205 pub const __SIZEOF_PTHREAD_BARRIER_T: u32 = 32;
206 pub const __SIZEOF_PTHREAD_BARRIERATTR_T: u32 = 4;
207 pub const __have_pthread_attr_t: u32 = 1;
208 pub const __PTHREAD_MUTEX_HAVE_PREV: u32 = 1;
209 pub const __PTHREAD_RWLOCK_INT_FLAGS_SHARED: u32 = 1;
210 pub const _ALLOCA_H: u32 = 1;
211 pub const SNDRV_PCM_INFO_MMAP: u32 = 1;
212 pub const SNDRV_PCM_INFO_MMAP_VALID: u32 = 2;
213 pub const SNDRV_PCM_INFO_DOUBLE: u32 = 4;
214 pub const SNDRV_PCM_INFO_BATCH: u32 = 16;
215 pub const SNDRV_PCM_INFO_SYNC_APPLPTR: u32 = 32;
216 pub const SNDRV_PCM_INFO_INTERLEAVED: u32 = 256;
217 pub const SNDRV_PCM_INFO_NONINTERLEAVED: u32 = 512;
218 pub const SNDRV_PCM_INFO_COMPLEX: u32 = 1024;
219 pub const SNDRV_PCM_INFO_BLOCK_TRANSFER: u32 = 65536;
220 pub const SNDRV_PCM_INFO_OVERRANGE: u32 = 131072;
221 pub const SNDRV_PCM_INFO_RESUME: u32 = 262144;
222 pub const SNDRV_PCM_INFO_PAUSE: u32 = 524288;
223 pub const SNDRV_PCM_INFO_HALF_DUPLEX: u32 = 1048576;
224 pub const SNDRV_PCM_INFO_JOINT_DUPLEX: u32 = 2097152;
225 pub const SNDRV_PCM_INFO_SYNC_START: u32 = 4194304;
226 pub const SNDRV_PCM_INFO_NO_PERIOD_WAKEUP: u32 = 8388608;
227 pub const SNDRV_PCM_INFO_HAS_WALL_CLOCK: u32 = 16777216;
228 pub const SNDRV_PCM_INFO_HAS_LINK_ATIME: u32 = 16777216;
229 pub const SNDRV_PCM_INFO_HAS_LINK_ABSOLUTE_ATIME: u32 = 33554432;
230 pub const SNDRV_PCM_INFO_HAS_LINK_ESTIMATED_ATIME: u32 = 67108864;
231 pub const SNDRV_PCM_INFO_HAS_LINK_SYNCHRONIZED_ATIME: u32 = 134217728;
232 pub const SNDRV_PCM_INFO_DRAIN_TRIGGER: u32 = 1073741824;
233 pub const SNDRV_PCM_INFO_FIFO_IN_FRAMES: u32 = 2147483648;
234 pub const SNDRV_PCM_HW_PARAM_ACCESS: u32 = 0;
235 pub const SNDRV_PCM_HW_PARAM_FORMAT: u32 = 1;
236 pub const SNDRV_PCM_HW_PARAM_SUBFORMAT: u32 = 2;
237 pub const SNDRV_PCM_HW_PARAM_FIRST_MASK: u32 = 0;
238 pub const SNDRV_PCM_HW_PARAM_LAST_MASK: u32 = 2;
239 pub const SNDRV_PCM_HW_PARAM_SAMPLE_BITS: u32 = 8;
240 pub const SNDRV_PCM_HW_PARAM_FRAME_BITS: u32 = 9;
241 pub const SNDRV_PCM_HW_PARAM_CHANNELS: u32 = 10;
242 pub const SNDRV_PCM_HW_PARAM_RATE: u32 = 11;
243 pub const SNDRV_PCM_HW_PARAM_PERIOD_TIME: u32 = 12;
244 pub const SNDRV_PCM_HW_PARAM_PERIOD_SIZE: u32 = 13;
245 pub const SNDRV_PCM_HW_PARAM_PERIOD_BYTES: u32 = 14;
246 pub const SNDRV_PCM_HW_PARAM_PERIODS: u32 = 15;
247 pub const SNDRV_PCM_HW_PARAM_BUFFER_TIME: u32 = 16;
248 pub const SNDRV_PCM_HW_PARAM_BUFFER_SIZE: u32 = 17;
249 pub const SNDRV_PCM_HW_PARAM_BUFFER_BYTES: u32 = 18;
250 pub const SNDRV_PCM_HW_PARAM_TICK_TIME: u32 = 19;
251 pub const SNDRV_PCM_HW_PARAM_FIRST_INTERVAL: u32 = 8;
252 pub const SNDRV_PCM_HW_PARAM_LAST_INTERVAL: u32 = 19;
253 pub const SNDRV_PCM_HW_PARAMS_NORESAMPLE: u32 = 1;
254 pub const SNDRV_PCM_HW_PARAMS_EXPORT_BUFFER: u32 = 2;
255 pub const SNDRV_PCM_HW_PARAMS_NO_PERIOD_WAKEUP: u32 = 4;
256 pub const SNDRV_MASK_MAX: u32 = 256;
257 pub const SNDRV_PCM_SYNC_PTR_HWSYNC: u32 = 1;
258 pub const SNDRV_PCM_SYNC_PTR_APPL: u32 = 2;
259 pub const SNDRV_PCM_SYNC_PTR_AVAIL_MIN: u32 = 4;
260 pub const SNDRV_CHMAP_POSITION_MASK: u32 = 65535;
261 pub const SNDRV_CHMAP_PHASE_INVERSE: u32 = 65536;
262 pub const SNDRV_CHMAP_DRIVER_SPEC: u32 = 131072;
263 pub const SNDRV_RAWMIDI_INFO_OUTPUT: u32 = 1;
264 pub const SNDRV_RAWMIDI_INFO_INPUT: u32 = 2;
265 pub const SNDRV_RAWMIDI_INFO_DUPLEX: u32 = 4;
266 pub const SNDRV_TIMER_GLOBAL_SYSTEM: u32 = 0;
267 pub const SNDRV_TIMER_GLOBAL_RTC: u32 = 1;
268 pub const SNDRV_TIMER_GLOBAL_HPET: u32 = 2;
269 pub const SNDRV_TIMER_GLOBAL_HRTIMER: u32 = 3;
270 pub const SNDRV_TIMER_FLG_SLAVE: u32 = 1;
271 pub const SNDRV_TIMER_PSFLG_AUTO: u32 = 1;
272 pub const SNDRV_TIMER_PSFLG_EXCLUSIVE: u32 = 2;
273 pub const SNDRV_TIMER_PSFLG_EARLY_EVENT: u32 = 4;
274 pub const SNDRV_CTL_ELEM_ACCESS_READ: u32 = 1;
275 pub const SNDRV_CTL_ELEM_ACCESS_WRITE: u32 = 2;
276 pub const SNDRV_CTL_ELEM_ACCESS_READWRITE: u32 = 3;
277 pub const SNDRV_CTL_ELEM_ACCESS_VOLATILE: u32 = 4;
278 pub const SNDRV_CTL_ELEM_ACCESS_TIMESTAMP: u32 = 8;
279 pub const SNDRV_CTL_ELEM_ACCESS_TLV_READ: u32 = 16;
280 pub const SNDRV_CTL_ELEM_ACCESS_TLV_WRITE: u32 = 32;
281 pub const SNDRV_CTL_ELEM_ACCESS_TLV_READWRITE: u32 = 48;
282 pub const SNDRV_CTL_ELEM_ACCESS_TLV_COMMAND: u32 = 64;
283 pub const SNDRV_CTL_ELEM_ACCESS_INACTIVE: u32 = 256;
284 pub const SNDRV_CTL_ELEM_ACCESS_LOCK: u32 = 512;
285 pub const SNDRV_CTL_ELEM_ACCESS_OWNER: u32 = 1024;
286 pub const SNDRV_CTL_ELEM_ACCESS_TLV_CALLBACK: u32 = 268435456;
287 pub const SNDRV_CTL_ELEM_ACCESS_USER: u32 = 536870912;
288 pub const SNDRV_CTL_POWER_D0: u32 = 0;
289 pub const SNDRV_CTL_POWER_D1: u32 = 256;
290 pub const SNDRV_CTL_POWER_D2: u32 = 512;
291 pub const SNDRV_CTL_POWER_D3: u32 = 768;
292 pub const SNDRV_CTL_POWER_D3hot: u32 = 768;
293 pub const SNDRV_CTL_POWER_D3cold: u32 = 769;
294 pub const SNDRV_CTL_ELEM_ID_NAME_MAXLEN: u32 = 44;
295 pub const SNDRV_CTL_EVENT_MASK_VALUE: u32 = 1;
296 pub const SNDRV_CTL_EVENT_MASK_INFO: u32 = 2;
297 pub const SNDRV_CTL_EVENT_MASK_ADD: u32 = 4;
298 pub const SNDRV_CTL_EVENT_MASK_TLV: u32 = 8;
299 pub const SNDRV_CTL_EVENT_MASK_REMOVE: i32 = -1;
300 pub const SNDRV_CTL_NAME_NONE: &'static [u8; 1usize] = b"\0";
301 pub const SNDRV_CTL_NAME_PLAYBACK: &'static [u8; 10usize] = b"Playback \0";
302 pub const SNDRV_CTL_NAME_CAPTURE: &'static [u8; 9usize] = b"Capture \0";
303 pub const SNDRV_CTL_NAME_IEC958_NONE: &'static [u8; 1usize] = b"\0";
304 pub const SNDRV_CTL_NAME_IEC958_SWITCH: &'static [u8; 7usize] = b"Switch\0";
305 pub const SNDRV_CTL_NAME_IEC958_VOLUME: &'static [u8; 7usize] = b"Volume\0";
306 pub const SNDRV_CTL_NAME_IEC958_DEFAULT: &'static [u8; 8usize] = b"Default\0";
307 pub const SNDRV_CTL_NAME_IEC958_MASK: &'static [u8; 5usize] = b"Mask\0";
308 pub const SNDRV_CTL_NAME_IEC958_CON_MASK: &'static [u8; 9usize] = b"Con Mask\0";
309 pub const SNDRV_CTL_NAME_IEC958_PRO_MASK: &'static [u8; 9usize] = b"Pro Mask\0";
310 pub const SNDRV_CTL_NAME_IEC958_PCM_STREAM: &'static [u8; 11usize] = b"PCM Stream\0";
311 pub type __s8 = ::std::os::raw::c_schar;
312 pub type __u8 = ::std::os::raw::c_uchar;
313 pub type __s16 = ::std::os::raw::c_short;
314 pub type __u16 = ::std::os::raw::c_ushort;
315 pub type __s32 = ::std::os::raw::c_int;
316 pub type __u32 = ::std::os::raw::c_uint;
317 pub type __s64 = ::std::os::raw::c_longlong;
318 pub type __u64 = ::std::os::raw::c_ulonglong;
319 #[repr(C)]
320 #[derive(Debug, Copy, Clone)]
321 pub struct __kernel_fd_set {
322     pub fds_bits: [::std::os::raw::c_ulong; 16usize],
323 }
324 #[test]
bindgen_test_layout___kernel_fd_set()325 fn bindgen_test_layout___kernel_fd_set() {
326     assert_eq!(
327         ::std::mem::size_of::<__kernel_fd_set>(),
328         128usize,
329         concat!("Size of: ", stringify!(__kernel_fd_set))
330     );
331     assert_eq!(
332         ::std::mem::align_of::<__kernel_fd_set>(),
333         8usize,
334         concat!("Alignment of ", stringify!(__kernel_fd_set))
335     );
336     assert_eq!(
337         unsafe { &(*(::std::ptr::null::<__kernel_fd_set>())).fds_bits as *const _ as usize },
338         0usize,
339         concat!(
340             "Offset of field: ",
341             stringify!(__kernel_fd_set),
342             "::",
343             stringify!(fds_bits)
344         )
345     );
346 }
347 pub type __kernel_sighandler_t =
348     ::std::option::Option<unsafe extern "C" fn(arg1: ::std::os::raw::c_int)>;
349 pub type __kernel_key_t = ::std::os::raw::c_int;
350 pub type __kernel_mqd_t = ::std::os::raw::c_int;
351 pub type __kernel_old_uid_t = ::std::os::raw::c_ushort;
352 pub type __kernel_old_gid_t = ::std::os::raw::c_ushort;
353 pub type __kernel_old_dev_t = ::std::os::raw::c_ulong;
354 pub type __kernel_long_t = ::std::os::raw::c_long;
355 pub type __kernel_ulong_t = ::std::os::raw::c_ulong;
356 pub type __kernel_ino_t = __kernel_ulong_t;
357 pub type __kernel_mode_t = ::std::os::raw::c_uint;
358 pub type __kernel_pid_t = ::std::os::raw::c_int;
359 pub type __kernel_ipc_pid_t = ::std::os::raw::c_int;
360 pub type __kernel_uid_t = ::std::os::raw::c_uint;
361 pub type __kernel_gid_t = ::std::os::raw::c_uint;
362 pub type __kernel_suseconds_t = __kernel_long_t;
363 pub type __kernel_daddr_t = ::std::os::raw::c_int;
364 pub type __kernel_uid32_t = ::std::os::raw::c_uint;
365 pub type __kernel_gid32_t = ::std::os::raw::c_uint;
366 pub type __kernel_size_t = __kernel_ulong_t;
367 pub type __kernel_ssize_t = __kernel_long_t;
368 pub type __kernel_ptrdiff_t = __kernel_long_t;
369 #[repr(C)]
370 #[derive(Debug, Copy, Clone)]
371 pub struct __kernel_fsid_t {
372     pub val: [::std::os::raw::c_int; 2usize],
373 }
374 #[test]
bindgen_test_layout___kernel_fsid_t()375 fn bindgen_test_layout___kernel_fsid_t() {
376     assert_eq!(
377         ::std::mem::size_of::<__kernel_fsid_t>(),
378         8usize,
379         concat!("Size of: ", stringify!(__kernel_fsid_t))
380     );
381     assert_eq!(
382         ::std::mem::align_of::<__kernel_fsid_t>(),
383         4usize,
384         concat!("Alignment of ", stringify!(__kernel_fsid_t))
385     );
386     assert_eq!(
387         unsafe { &(*(::std::ptr::null::<__kernel_fsid_t>())).val as *const _ as usize },
388         0usize,
389         concat!(
390             "Offset of field: ",
391             stringify!(__kernel_fsid_t),
392             "::",
393             stringify!(val)
394         )
395     );
396 }
397 pub type __kernel_off_t = __kernel_long_t;
398 pub type __kernel_loff_t = ::std::os::raw::c_longlong;
399 pub type __kernel_time_t = __kernel_long_t;
400 pub type __kernel_clock_t = __kernel_long_t;
401 pub type __kernel_timer_t = ::std::os::raw::c_int;
402 pub type __kernel_clockid_t = ::std::os::raw::c_int;
403 pub type __kernel_caddr_t = *mut ::std::os::raw::c_char;
404 pub type __kernel_uid16_t = ::std::os::raw::c_ushort;
405 pub type __kernel_gid16_t = ::std::os::raw::c_ushort;
406 pub type __le16 = __u16;
407 pub type __be16 = __u16;
408 pub type __le32 = __u32;
409 pub type __be32 = __u32;
410 pub type __le64 = __u64;
411 pub type __be64 = __u64;
412 pub type __sum16 = __u16;
413 pub type __wsum = __u32;
414 pub type wchar_t = ::std::os::raw::c_int;
415 pub const idtype_t_P_ALL: idtype_t = 0;
416 pub const idtype_t_P_PID: idtype_t = 1;
417 pub const idtype_t_P_PGID: idtype_t = 2;
418 pub type idtype_t = u32;
419 pub type __u_char = ::std::os::raw::c_uchar;
420 pub type __u_short = ::std::os::raw::c_ushort;
421 pub type __u_int = ::std::os::raw::c_uint;
422 pub type __u_long = ::std::os::raw::c_ulong;
423 pub type __int8_t = ::std::os::raw::c_schar;
424 pub type __uint8_t = ::std::os::raw::c_uchar;
425 pub type __int16_t = ::std::os::raw::c_short;
426 pub type __uint16_t = ::std::os::raw::c_ushort;
427 pub type __int32_t = ::std::os::raw::c_int;
428 pub type __uint32_t = ::std::os::raw::c_uint;
429 pub type __int64_t = ::std::os::raw::c_long;
430 pub type __uint64_t = ::std::os::raw::c_ulong;
431 pub type __quad_t = ::std::os::raw::c_long;
432 pub type __u_quad_t = ::std::os::raw::c_ulong;
433 pub type __dev_t = ::std::os::raw::c_ulong;
434 pub type __uid_t = ::std::os::raw::c_uint;
435 pub type __gid_t = ::std::os::raw::c_uint;
436 pub type __ino_t = ::std::os::raw::c_ulong;
437 pub type __ino64_t = ::std::os::raw::c_ulong;
438 pub type __mode_t = ::std::os::raw::c_uint;
439 pub type __nlink_t = ::std::os::raw::c_ulong;
440 pub type __off_t = ::std::os::raw::c_long;
441 pub type __off64_t = ::std::os::raw::c_long;
442 pub type __pid_t = ::std::os::raw::c_int;
443 #[repr(C)]
444 #[derive(Debug, Copy, Clone)]
445 pub struct __fsid_t {
446     pub __val: [::std::os::raw::c_int; 2usize],
447 }
448 #[test]
bindgen_test_layout___fsid_t()449 fn bindgen_test_layout___fsid_t() {
450     assert_eq!(
451         ::std::mem::size_of::<__fsid_t>(),
452         8usize,
453         concat!("Size of: ", stringify!(__fsid_t))
454     );
455     assert_eq!(
456         ::std::mem::align_of::<__fsid_t>(),
457         4usize,
458         concat!("Alignment of ", stringify!(__fsid_t))
459     );
460     assert_eq!(
461         unsafe { &(*(::std::ptr::null::<__fsid_t>())).__val as *const _ as usize },
462         0usize,
463         concat!(
464             "Offset of field: ",
465             stringify!(__fsid_t),
466             "::",
467             stringify!(__val)
468         )
469     );
470 }
471 pub type __clock_t = ::std::os::raw::c_long;
472 pub type __rlim_t = ::std::os::raw::c_ulong;
473 pub type __rlim64_t = ::std::os::raw::c_ulong;
474 pub type __id_t = ::std::os::raw::c_uint;
475 pub type __time_t = ::std::os::raw::c_long;
476 pub type __useconds_t = ::std::os::raw::c_uint;
477 pub type __suseconds_t = ::std::os::raw::c_long;
478 pub type __daddr_t = ::std::os::raw::c_int;
479 pub type __key_t = ::std::os::raw::c_int;
480 pub type __clockid_t = ::std::os::raw::c_int;
481 pub type __timer_t = *mut ::std::os::raw::c_void;
482 pub type __blksize_t = ::std::os::raw::c_long;
483 pub type __blkcnt_t = ::std::os::raw::c_long;
484 pub type __blkcnt64_t = ::std::os::raw::c_long;
485 pub type __fsblkcnt_t = ::std::os::raw::c_ulong;
486 pub type __fsblkcnt64_t = ::std::os::raw::c_ulong;
487 pub type __fsfilcnt_t = ::std::os::raw::c_ulong;
488 pub type __fsfilcnt64_t = ::std::os::raw::c_ulong;
489 pub type __fsword_t = ::std::os::raw::c_long;
490 pub type __ssize_t = ::std::os::raw::c_long;
491 pub type __syscall_slong_t = ::std::os::raw::c_long;
492 pub type __syscall_ulong_t = ::std::os::raw::c_ulong;
493 pub type __loff_t = __off64_t;
494 pub type __qaddr_t = *mut __quad_t;
495 pub type __caddr_t = *mut ::std::os::raw::c_char;
496 pub type __intptr_t = ::std::os::raw::c_long;
497 pub type __socklen_t = ::std::os::raw::c_uint;
498 #[repr(C)]
499 #[derive(Copy, Clone)]
500 pub union wait {
501     pub w_status: ::std::os::raw::c_int,
502     pub __wait_terminated: wait__bindgen_ty_1,
503     pub __wait_stopped: wait__bindgen_ty_2,
504     _bindgen_union_align: u32,
505 }
506 #[repr(C)]
507 #[derive(Debug, Copy, Clone)]
508 pub struct wait__bindgen_ty_1 {
509     pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize], u8>,
510     pub __bindgen_align: [u32; 0usize],
511 }
512 #[test]
bindgen_test_layout_wait__bindgen_ty_1()513 fn bindgen_test_layout_wait__bindgen_ty_1() {
514     assert_eq!(
515         ::std::mem::size_of::<wait__bindgen_ty_1>(),
516         4usize,
517         concat!("Size of: ", stringify!(wait__bindgen_ty_1))
518     );
519     assert_eq!(
520         ::std::mem::align_of::<wait__bindgen_ty_1>(),
521         4usize,
522         concat!("Alignment of ", stringify!(wait__bindgen_ty_1))
523     );
524 }
525 impl wait__bindgen_ty_1 {
526     #[inline]
__w_termsig(&self) -> ::std::os::raw::c_uint527     pub fn __w_termsig(&self) -> ::std::os::raw::c_uint {
528         unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 7u8) as u32) }
529     }
530     #[inline]
set___w_termsig(&mut self, val: ::std::os::raw::c_uint)531     pub fn set___w_termsig(&mut self, val: ::std::os::raw::c_uint) {
532         unsafe {
533             let val: u32 = ::std::mem::transmute(val);
534             self._bitfield_1.set(0usize, 7u8, val as u64)
535         }
536     }
537     #[inline]
__w_coredump(&self) -> ::std::os::raw::c_uint538     pub fn __w_coredump(&self) -> ::std::os::raw::c_uint {
539         unsafe { ::std::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u32) }
540     }
541     #[inline]
set___w_coredump(&mut self, val: ::std::os::raw::c_uint)542     pub fn set___w_coredump(&mut self, val: ::std::os::raw::c_uint) {
543         unsafe {
544             let val: u32 = ::std::mem::transmute(val);
545             self._bitfield_1.set(7usize, 1u8, val as u64)
546         }
547     }
548     #[inline]
__w_retcode(&self) -> ::std::os::raw::c_uint549     pub fn __w_retcode(&self) -> ::std::os::raw::c_uint {
550         unsafe { ::std::mem::transmute(self._bitfield_1.get(8usize, 8u8) as u32) }
551     }
552     #[inline]
set___w_retcode(&mut self, val: ::std::os::raw::c_uint)553     pub fn set___w_retcode(&mut self, val: ::std::os::raw::c_uint) {
554         unsafe {
555             let val: u32 = ::std::mem::transmute(val);
556             self._bitfield_1.set(8usize, 8u8, val as u64)
557         }
558     }
559     #[inline]
new_bitfield_1( __w_termsig: ::std::os::raw::c_uint, __w_coredump: ::std::os::raw::c_uint, __w_retcode: ::std::os::raw::c_uint, ) -> __BindgenBitfieldUnit<[u8; 4usize], u8>560     pub fn new_bitfield_1(
561         __w_termsig: ::std::os::raw::c_uint,
562         __w_coredump: ::std::os::raw::c_uint,
563         __w_retcode: ::std::os::raw::c_uint,
564     ) -> __BindgenBitfieldUnit<[u8; 4usize], u8> {
565         let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize], u8> =
566             Default::default();
567         __bindgen_bitfield_unit.set(0usize, 7u8, {
568             let __w_termsig: u32 = unsafe { ::std::mem::transmute(__w_termsig) };
569             __w_termsig as u64
570         });
571         __bindgen_bitfield_unit.set(7usize, 1u8, {
572             let __w_coredump: u32 = unsafe { ::std::mem::transmute(__w_coredump) };
573             __w_coredump as u64
574         });
575         __bindgen_bitfield_unit.set(8usize, 8u8, {
576             let __w_retcode: u32 = unsafe { ::std::mem::transmute(__w_retcode) };
577             __w_retcode as u64
578         });
579         __bindgen_bitfield_unit
580     }
581 }
582 #[repr(C)]
583 #[derive(Debug, Copy, Clone)]
584 pub struct wait__bindgen_ty_2 {
585     pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize], u8>,
586     pub __bindgen_align: [u32; 0usize],
587 }
588 #[test]
bindgen_test_layout_wait__bindgen_ty_2()589 fn bindgen_test_layout_wait__bindgen_ty_2() {
590     assert_eq!(
591         ::std::mem::size_of::<wait__bindgen_ty_2>(),
592         4usize,
593         concat!("Size of: ", stringify!(wait__bindgen_ty_2))
594     );
595     assert_eq!(
596         ::std::mem::align_of::<wait__bindgen_ty_2>(),
597         4usize,
598         concat!("Alignment of ", stringify!(wait__bindgen_ty_2))
599     );
600 }
601 impl wait__bindgen_ty_2 {
602     #[inline]
__w_stopval(&self) -> ::std::os::raw::c_uint603     pub fn __w_stopval(&self) -> ::std::os::raw::c_uint {
604         unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 8u8) as u32) }
605     }
606     #[inline]
set___w_stopval(&mut self, val: ::std::os::raw::c_uint)607     pub fn set___w_stopval(&mut self, val: ::std::os::raw::c_uint) {
608         unsafe {
609             let val: u32 = ::std::mem::transmute(val);
610             self._bitfield_1.set(0usize, 8u8, val as u64)
611         }
612     }
613     #[inline]
__w_stopsig(&self) -> ::std::os::raw::c_uint614     pub fn __w_stopsig(&self) -> ::std::os::raw::c_uint {
615         unsafe { ::std::mem::transmute(self._bitfield_1.get(8usize, 8u8) as u32) }
616     }
617     #[inline]
set___w_stopsig(&mut self, val: ::std::os::raw::c_uint)618     pub fn set___w_stopsig(&mut self, val: ::std::os::raw::c_uint) {
619         unsafe {
620             let val: u32 = ::std::mem::transmute(val);
621             self._bitfield_1.set(8usize, 8u8, val as u64)
622         }
623     }
624     #[inline]
new_bitfield_1( __w_stopval: ::std::os::raw::c_uint, __w_stopsig: ::std::os::raw::c_uint, ) -> __BindgenBitfieldUnit<[u8; 4usize], u8>625     pub fn new_bitfield_1(
626         __w_stopval: ::std::os::raw::c_uint,
627         __w_stopsig: ::std::os::raw::c_uint,
628     ) -> __BindgenBitfieldUnit<[u8; 4usize], u8> {
629         let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize], u8> =
630             Default::default();
631         __bindgen_bitfield_unit.set(0usize, 8u8, {
632             let __w_stopval: u32 = unsafe { ::std::mem::transmute(__w_stopval) };
633             __w_stopval as u64
634         });
635         __bindgen_bitfield_unit.set(8usize, 8u8, {
636             let __w_stopsig: u32 = unsafe { ::std::mem::transmute(__w_stopsig) };
637             __w_stopsig as u64
638         });
639         __bindgen_bitfield_unit
640     }
641 }
642 #[test]
bindgen_test_layout_wait()643 fn bindgen_test_layout_wait() {
644     assert_eq!(
645         ::std::mem::size_of::<wait>(),
646         4usize,
647         concat!("Size of: ", stringify!(wait))
648     );
649     assert_eq!(
650         ::std::mem::align_of::<wait>(),
651         4usize,
652         concat!("Alignment of ", stringify!(wait))
653     );
654     assert_eq!(
655         unsafe { &(*(::std::ptr::null::<wait>())).w_status as *const _ as usize },
656         0usize,
657         concat!(
658             "Offset of field: ",
659             stringify!(wait),
660             "::",
661             stringify!(w_status)
662         )
663     );
664     assert_eq!(
665         unsafe { &(*(::std::ptr::null::<wait>())).__wait_terminated as *const _ as usize },
666         0usize,
667         concat!(
668             "Offset of field: ",
669             stringify!(wait),
670             "::",
671             stringify!(__wait_terminated)
672         )
673     );
674     assert_eq!(
675         unsafe { &(*(::std::ptr::null::<wait>())).__wait_stopped as *const _ as usize },
676         0usize,
677         concat!(
678             "Offset of field: ",
679             stringify!(wait),
680             "::",
681             stringify!(__wait_stopped)
682         )
683     );
684 }
685 #[repr(C)]
686 #[derive(Copy, Clone)]
687 pub union __WAIT_STATUS {
688     pub __uptr: *mut wait,
689     pub __iptr: *mut ::std::os::raw::c_int,
690     _bindgen_union_align: u64,
691 }
692 #[test]
bindgen_test_layout___WAIT_STATUS()693 fn bindgen_test_layout___WAIT_STATUS() {
694     assert_eq!(
695         ::std::mem::size_of::<__WAIT_STATUS>(),
696         8usize,
697         concat!("Size of: ", stringify!(__WAIT_STATUS))
698     );
699     assert_eq!(
700         ::std::mem::align_of::<__WAIT_STATUS>(),
701         8usize,
702         concat!("Alignment of ", stringify!(__WAIT_STATUS))
703     );
704     assert_eq!(
705         unsafe { &(*(::std::ptr::null::<__WAIT_STATUS>())).__uptr as *const _ as usize },
706         0usize,
707         concat!(
708             "Offset of field: ",
709             stringify!(__WAIT_STATUS),
710             "::",
711             stringify!(__uptr)
712         )
713     );
714     assert_eq!(
715         unsafe { &(*(::std::ptr::null::<__WAIT_STATUS>())).__iptr as *const _ as usize },
716         0usize,
717         concat!(
718             "Offset of field: ",
719             stringify!(__WAIT_STATUS),
720             "::",
721             stringify!(__iptr)
722         )
723     );
724 }
725 #[repr(C)]
726 #[derive(Debug, Copy, Clone)]
727 pub struct div_t {
728     pub quot: ::std::os::raw::c_int,
729     pub rem: ::std::os::raw::c_int,
730 }
731 #[test]
bindgen_test_layout_div_t()732 fn bindgen_test_layout_div_t() {
733     assert_eq!(
734         ::std::mem::size_of::<div_t>(),
735         8usize,
736         concat!("Size of: ", stringify!(div_t))
737     );
738     assert_eq!(
739         ::std::mem::align_of::<div_t>(),
740         4usize,
741         concat!("Alignment of ", stringify!(div_t))
742     );
743     assert_eq!(
744         unsafe { &(*(::std::ptr::null::<div_t>())).quot as *const _ as usize },
745         0usize,
746         concat!(
747             "Offset of field: ",
748             stringify!(div_t),
749             "::",
750             stringify!(quot)
751         )
752     );
753     assert_eq!(
754         unsafe { &(*(::std::ptr::null::<div_t>())).rem as *const _ as usize },
755         4usize,
756         concat!(
757             "Offset of field: ",
758             stringify!(div_t),
759             "::",
760             stringify!(rem)
761         )
762     );
763 }
764 #[repr(C)]
765 #[derive(Debug, Copy, Clone)]
766 pub struct ldiv_t {
767     pub quot: ::std::os::raw::c_long,
768     pub rem: ::std::os::raw::c_long,
769 }
770 #[test]
bindgen_test_layout_ldiv_t()771 fn bindgen_test_layout_ldiv_t() {
772     assert_eq!(
773         ::std::mem::size_of::<ldiv_t>(),
774         16usize,
775         concat!("Size of: ", stringify!(ldiv_t))
776     );
777     assert_eq!(
778         ::std::mem::align_of::<ldiv_t>(),
779         8usize,
780         concat!("Alignment of ", stringify!(ldiv_t))
781     );
782     assert_eq!(
783         unsafe { &(*(::std::ptr::null::<ldiv_t>())).quot as *const _ as usize },
784         0usize,
785         concat!(
786             "Offset of field: ",
787             stringify!(ldiv_t),
788             "::",
789             stringify!(quot)
790         )
791     );
792     assert_eq!(
793         unsafe { &(*(::std::ptr::null::<ldiv_t>())).rem as *const _ as usize },
794         8usize,
795         concat!(
796             "Offset of field: ",
797             stringify!(ldiv_t),
798             "::",
799             stringify!(rem)
800         )
801     );
802 }
803 #[repr(C)]
804 #[derive(Debug, Copy, Clone)]
805 pub struct lldiv_t {
806     pub quot: ::std::os::raw::c_longlong,
807     pub rem: ::std::os::raw::c_longlong,
808 }
809 #[test]
bindgen_test_layout_lldiv_t()810 fn bindgen_test_layout_lldiv_t() {
811     assert_eq!(
812         ::std::mem::size_of::<lldiv_t>(),
813         16usize,
814         concat!("Size of: ", stringify!(lldiv_t))
815     );
816     assert_eq!(
817         ::std::mem::align_of::<lldiv_t>(),
818         8usize,
819         concat!("Alignment of ", stringify!(lldiv_t))
820     );
821     assert_eq!(
822         unsafe { &(*(::std::ptr::null::<lldiv_t>())).quot as *const _ as usize },
823         0usize,
824         concat!(
825             "Offset of field: ",
826             stringify!(lldiv_t),
827             "::",
828             stringify!(quot)
829         )
830     );
831     assert_eq!(
832         unsafe { &(*(::std::ptr::null::<lldiv_t>())).rem as *const _ as usize },
833         8usize,
834         concat!(
835             "Offset of field: ",
836             stringify!(lldiv_t),
837             "::",
838             stringify!(rem)
839         )
840     );
841 }
842 extern "C" {
__ctype_get_mb_cur_max() -> usize843     pub fn __ctype_get_mb_cur_max() -> usize;
844 }
845 extern "C" {
atof(__nptr: *const ::std::os::raw::c_char) -> f64846     pub fn atof(__nptr: *const ::std::os::raw::c_char) -> f64;
847 }
848 extern "C" {
atoi(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int849     pub fn atoi(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
850 }
851 extern "C" {
atol(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_long852     pub fn atol(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_long;
853 }
854 extern "C" {
atoll(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_longlong855     pub fn atoll(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_longlong;
856 }
857 extern "C" {
strtod( __nptr: *const ::std::os::raw::c_char, __endptr: *mut *mut ::std::os::raw::c_char, ) -> f64858     pub fn strtod(
859         __nptr: *const ::std::os::raw::c_char,
860         __endptr: *mut *mut ::std::os::raw::c_char,
861     ) -> f64;
862 }
863 extern "C" {
strtof( __nptr: *const ::std::os::raw::c_char, __endptr: *mut *mut ::std::os::raw::c_char, ) -> f32864     pub fn strtof(
865         __nptr: *const ::std::os::raw::c_char,
866         __endptr: *mut *mut ::std::os::raw::c_char,
867     ) -> f32;
868 }
869 extern "C" {
strtold( __nptr: *const ::std::os::raw::c_char, __endptr: *mut *mut ::std::os::raw::c_char, ) -> f64870     pub fn strtold(
871         __nptr: *const ::std::os::raw::c_char,
872         __endptr: *mut *mut ::std::os::raw::c_char,
873     ) -> f64;
874 }
875 extern "C" {
strtol( __nptr: *const ::std::os::raw::c_char, __endptr: *mut *mut ::std::os::raw::c_char, __base: ::std::os::raw::c_int, ) -> ::std::os::raw::c_long876     pub fn strtol(
877         __nptr: *const ::std::os::raw::c_char,
878         __endptr: *mut *mut ::std::os::raw::c_char,
879         __base: ::std::os::raw::c_int,
880     ) -> ::std::os::raw::c_long;
881 }
882 extern "C" {
strtoul( __nptr: *const ::std::os::raw::c_char, __endptr: *mut *mut ::std::os::raw::c_char, __base: ::std::os::raw::c_int, ) -> ::std::os::raw::c_ulong883     pub fn strtoul(
884         __nptr: *const ::std::os::raw::c_char,
885         __endptr: *mut *mut ::std::os::raw::c_char,
886         __base: ::std::os::raw::c_int,
887     ) -> ::std::os::raw::c_ulong;
888 }
889 extern "C" {
strtoq( __nptr: *const ::std::os::raw::c_char, __endptr: *mut *mut ::std::os::raw::c_char, __base: ::std::os::raw::c_int, ) -> ::std::os::raw::c_longlong890     pub fn strtoq(
891         __nptr: *const ::std::os::raw::c_char,
892         __endptr: *mut *mut ::std::os::raw::c_char,
893         __base: ::std::os::raw::c_int,
894     ) -> ::std::os::raw::c_longlong;
895 }
896 extern "C" {
strtouq( __nptr: *const ::std::os::raw::c_char, __endptr: *mut *mut ::std::os::raw::c_char, __base: ::std::os::raw::c_int, ) -> ::std::os::raw::c_ulonglong897     pub fn strtouq(
898         __nptr: *const ::std::os::raw::c_char,
899         __endptr: *mut *mut ::std::os::raw::c_char,
900         __base: ::std::os::raw::c_int,
901     ) -> ::std::os::raw::c_ulonglong;
902 }
903 extern "C" {
strtoll( __nptr: *const ::std::os::raw::c_char, __endptr: *mut *mut ::std::os::raw::c_char, __base: ::std::os::raw::c_int, ) -> ::std::os::raw::c_longlong904     pub fn strtoll(
905         __nptr: *const ::std::os::raw::c_char,
906         __endptr: *mut *mut ::std::os::raw::c_char,
907         __base: ::std::os::raw::c_int,
908     ) -> ::std::os::raw::c_longlong;
909 }
910 extern "C" {
strtoull( __nptr: *const ::std::os::raw::c_char, __endptr: *mut *mut ::std::os::raw::c_char, __base: ::std::os::raw::c_int, ) -> ::std::os::raw::c_ulonglong911     pub fn strtoull(
912         __nptr: *const ::std::os::raw::c_char,
913         __endptr: *mut *mut ::std::os::raw::c_char,
914         __base: ::std::os::raw::c_int,
915     ) -> ::std::os::raw::c_ulonglong;
916 }
917 extern "C" {
l64a(__n: ::std::os::raw::c_long) -> *mut ::std::os::raw::c_char918     pub fn l64a(__n: ::std::os::raw::c_long) -> *mut ::std::os::raw::c_char;
919 }
920 extern "C" {
a64l(__s: *const ::std::os::raw::c_char) -> ::std::os::raw::c_long921     pub fn a64l(__s: *const ::std::os::raw::c_char) -> ::std::os::raw::c_long;
922 }
923 pub type u_char = __u_char;
924 pub type u_short = __u_short;
925 pub type u_int = __u_int;
926 pub type u_long = __u_long;
927 pub type quad_t = __quad_t;
928 pub type u_quad_t = __u_quad_t;
929 pub type fsid_t = __fsid_t;
930 pub type loff_t = __loff_t;
931 pub type ino_t = __ino_t;
932 pub type dev_t = __dev_t;
933 pub type gid_t = __gid_t;
934 pub type mode_t = __mode_t;
935 pub type nlink_t = __nlink_t;
936 pub type uid_t = __uid_t;
937 pub type off_t = __off_t;
938 pub type pid_t = __pid_t;
939 pub type id_t = __id_t;
940 pub type daddr_t = __daddr_t;
941 pub type caddr_t = __caddr_t;
942 pub type key_t = __key_t;
943 pub type clock_t = __clock_t;
944 pub type time_t = __time_t;
945 pub type clockid_t = __clockid_t;
946 pub type timer_t = __timer_t;
947 pub type ulong = ::std::os::raw::c_ulong;
948 pub type ushort = ::std::os::raw::c_ushort;
949 pub type uint = ::std::os::raw::c_uint;
950 pub type u_int8_t = ::std::os::raw::c_uchar;
951 pub type u_int16_t = ::std::os::raw::c_ushort;
952 pub type u_int32_t = ::std::os::raw::c_uint;
953 pub type u_int64_t = ::std::os::raw::c_ulong;
954 pub type register_t = ::std::os::raw::c_long;
955 pub type __sig_atomic_t = ::std::os::raw::c_int;
956 #[repr(C)]
957 #[derive(Debug, Copy, Clone)]
958 pub struct __sigset_t {
959     pub __val: [::std::os::raw::c_ulong; 16usize],
960 }
961 #[test]
bindgen_test_layout___sigset_t()962 fn bindgen_test_layout___sigset_t() {
963     assert_eq!(
964         ::std::mem::size_of::<__sigset_t>(),
965         128usize,
966         concat!("Size of: ", stringify!(__sigset_t))
967     );
968     assert_eq!(
969         ::std::mem::align_of::<__sigset_t>(),
970         8usize,
971         concat!("Alignment of ", stringify!(__sigset_t))
972     );
973     assert_eq!(
974         unsafe { &(*(::std::ptr::null::<__sigset_t>())).__val as *const _ as usize },
975         0usize,
976         concat!(
977             "Offset of field: ",
978             stringify!(__sigset_t),
979             "::",
980             stringify!(__val)
981         )
982     );
983 }
984 pub type sigset_t = __sigset_t;
985 #[repr(C)]
986 #[derive(Debug, Copy, Clone)]
987 pub struct timespec {
988     pub tv_sec: __time_t,
989     pub tv_nsec: __syscall_slong_t,
990 }
991 #[test]
bindgen_test_layout_timespec()992 fn bindgen_test_layout_timespec() {
993     assert_eq!(
994         ::std::mem::size_of::<timespec>(),
995         16usize,
996         concat!("Size of: ", stringify!(timespec))
997     );
998     assert_eq!(
999         ::std::mem::align_of::<timespec>(),
1000         8usize,
1001         concat!("Alignment of ", stringify!(timespec))
1002     );
1003     assert_eq!(
1004         unsafe { &(*(::std::ptr::null::<timespec>())).tv_sec as *const _ as usize },
1005         0usize,
1006         concat!(
1007             "Offset of field: ",
1008             stringify!(timespec),
1009             "::",
1010             stringify!(tv_sec)
1011         )
1012     );
1013     assert_eq!(
1014         unsafe { &(*(::std::ptr::null::<timespec>())).tv_nsec as *const _ as usize },
1015         8usize,
1016         concat!(
1017             "Offset of field: ",
1018             stringify!(timespec),
1019             "::",
1020             stringify!(tv_nsec)
1021         )
1022     );
1023 }
1024 #[repr(C)]
1025 #[derive(Debug, Copy, Clone)]
1026 pub struct timeval {
1027     pub tv_sec: __time_t,
1028     pub tv_usec: __suseconds_t,
1029 }
1030 #[test]
bindgen_test_layout_timeval()1031 fn bindgen_test_layout_timeval() {
1032     assert_eq!(
1033         ::std::mem::size_of::<timeval>(),
1034         16usize,
1035         concat!("Size of: ", stringify!(timeval))
1036     );
1037     assert_eq!(
1038         ::std::mem::align_of::<timeval>(),
1039         8usize,
1040         concat!("Alignment of ", stringify!(timeval))
1041     );
1042     assert_eq!(
1043         unsafe { &(*(::std::ptr::null::<timeval>())).tv_sec as *const _ as usize },
1044         0usize,
1045         concat!(
1046             "Offset of field: ",
1047             stringify!(timeval),
1048             "::",
1049             stringify!(tv_sec)
1050         )
1051     );
1052     assert_eq!(
1053         unsafe { &(*(::std::ptr::null::<timeval>())).tv_usec as *const _ as usize },
1054         8usize,
1055         concat!(
1056             "Offset of field: ",
1057             stringify!(timeval),
1058             "::",
1059             stringify!(tv_usec)
1060         )
1061     );
1062 }
1063 pub type suseconds_t = __suseconds_t;
1064 pub type __fd_mask = ::std::os::raw::c_long;
1065 #[repr(C)]
1066 #[derive(Debug, Copy, Clone)]
1067 pub struct fd_set {
1068     pub __fds_bits: [__fd_mask; 16usize],
1069 }
1070 #[test]
bindgen_test_layout_fd_set()1071 fn bindgen_test_layout_fd_set() {
1072     assert_eq!(
1073         ::std::mem::size_of::<fd_set>(),
1074         128usize,
1075         concat!("Size of: ", stringify!(fd_set))
1076     );
1077     assert_eq!(
1078         ::std::mem::align_of::<fd_set>(),
1079         8usize,
1080         concat!("Alignment of ", stringify!(fd_set))
1081     );
1082     assert_eq!(
1083         unsafe { &(*(::std::ptr::null::<fd_set>())).__fds_bits as *const _ as usize },
1084         0usize,
1085         concat!(
1086             "Offset of field: ",
1087             stringify!(fd_set),
1088             "::",
1089             stringify!(__fds_bits)
1090         )
1091     );
1092 }
1093 pub type fd_mask = __fd_mask;
1094 extern "C" {
select( __nfds: ::std::os::raw::c_int, __readfds: *mut fd_set, __writefds: *mut fd_set, __exceptfds: *mut fd_set, __timeout: *mut timeval, ) -> ::std::os::raw::c_int1095     pub fn select(
1096         __nfds: ::std::os::raw::c_int,
1097         __readfds: *mut fd_set,
1098         __writefds: *mut fd_set,
1099         __exceptfds: *mut fd_set,
1100         __timeout: *mut timeval,
1101     ) -> ::std::os::raw::c_int;
1102 }
1103 extern "C" {
pselect( __nfds: ::std::os::raw::c_int, __readfds: *mut fd_set, __writefds: *mut fd_set, __exceptfds: *mut fd_set, __timeout: *const timespec, __sigmask: *const __sigset_t, ) -> ::std::os::raw::c_int1104     pub fn pselect(
1105         __nfds: ::std::os::raw::c_int,
1106         __readfds: *mut fd_set,
1107         __writefds: *mut fd_set,
1108         __exceptfds: *mut fd_set,
1109         __timeout: *const timespec,
1110         __sigmask: *const __sigset_t,
1111     ) -> ::std::os::raw::c_int;
1112 }
1113 extern "C" {
gnu_dev_major(__dev: ::std::os::raw::c_ulonglong) -> ::std::os::raw::c_uint1114     pub fn gnu_dev_major(__dev: ::std::os::raw::c_ulonglong) -> ::std::os::raw::c_uint;
1115 }
1116 extern "C" {
gnu_dev_minor(__dev: ::std::os::raw::c_ulonglong) -> ::std::os::raw::c_uint1117     pub fn gnu_dev_minor(__dev: ::std::os::raw::c_ulonglong) -> ::std::os::raw::c_uint;
1118 }
1119 extern "C" {
gnu_dev_makedev( __major: ::std::os::raw::c_uint, __minor: ::std::os::raw::c_uint, ) -> ::std::os::raw::c_ulonglong1120     pub fn gnu_dev_makedev(
1121         __major: ::std::os::raw::c_uint,
1122         __minor: ::std::os::raw::c_uint,
1123     ) -> ::std::os::raw::c_ulonglong;
1124 }
1125 pub type blksize_t = __blksize_t;
1126 pub type blkcnt_t = __blkcnt_t;
1127 pub type fsblkcnt_t = __fsblkcnt_t;
1128 pub type fsfilcnt_t = __fsfilcnt_t;
1129 pub type pthread_t = ::std::os::raw::c_ulong;
1130 #[repr(C)]
1131 #[derive(Copy, Clone)]
1132 pub union pthread_attr_t {
1133     pub __size: [::std::os::raw::c_char; 56usize],
1134     pub __align: ::std::os::raw::c_long,
1135     _bindgen_union_align: [u64; 7usize],
1136 }
1137 #[test]
bindgen_test_layout_pthread_attr_t()1138 fn bindgen_test_layout_pthread_attr_t() {
1139     assert_eq!(
1140         ::std::mem::size_of::<pthread_attr_t>(),
1141         56usize,
1142         concat!("Size of: ", stringify!(pthread_attr_t))
1143     );
1144     assert_eq!(
1145         ::std::mem::align_of::<pthread_attr_t>(),
1146         8usize,
1147         concat!("Alignment of ", stringify!(pthread_attr_t))
1148     );
1149     assert_eq!(
1150         unsafe { &(*(::std::ptr::null::<pthread_attr_t>())).__size as *const _ as usize },
1151         0usize,
1152         concat!(
1153             "Offset of field: ",
1154             stringify!(pthread_attr_t),
1155             "::",
1156             stringify!(__size)
1157         )
1158     );
1159     assert_eq!(
1160         unsafe { &(*(::std::ptr::null::<pthread_attr_t>())).__align as *const _ as usize },
1161         0usize,
1162         concat!(
1163             "Offset of field: ",
1164             stringify!(pthread_attr_t),
1165             "::",
1166             stringify!(__align)
1167         )
1168     );
1169 }
1170 #[repr(C)]
1171 #[derive(Debug, Copy, Clone)]
1172 pub struct __pthread_internal_list {
1173     pub __prev: *mut __pthread_internal_list,
1174     pub __next: *mut __pthread_internal_list,
1175 }
1176 #[test]
bindgen_test_layout___pthread_internal_list()1177 fn bindgen_test_layout___pthread_internal_list() {
1178     assert_eq!(
1179         ::std::mem::size_of::<__pthread_internal_list>(),
1180         16usize,
1181         concat!("Size of: ", stringify!(__pthread_internal_list))
1182     );
1183     assert_eq!(
1184         ::std::mem::align_of::<__pthread_internal_list>(),
1185         8usize,
1186         concat!("Alignment of ", stringify!(__pthread_internal_list))
1187     );
1188     assert_eq!(
1189         unsafe { &(*(::std::ptr::null::<__pthread_internal_list>())).__prev as *const _ as usize },
1190         0usize,
1191         concat!(
1192             "Offset of field: ",
1193             stringify!(__pthread_internal_list),
1194             "::",
1195             stringify!(__prev)
1196         )
1197     );
1198     assert_eq!(
1199         unsafe { &(*(::std::ptr::null::<__pthread_internal_list>())).__next as *const _ as usize },
1200         8usize,
1201         concat!(
1202             "Offset of field: ",
1203             stringify!(__pthread_internal_list),
1204             "::",
1205             stringify!(__next)
1206         )
1207     );
1208 }
1209 pub type __pthread_list_t = __pthread_internal_list;
1210 #[repr(C)]
1211 #[derive(Copy, Clone)]
1212 pub union pthread_mutex_t {
1213     pub __data: pthread_mutex_t___pthread_mutex_s,
1214     pub __size: [::std::os::raw::c_char; 40usize],
1215     pub __align: ::std::os::raw::c_long,
1216     _bindgen_union_align: [u64; 5usize],
1217 }
1218 #[repr(C)]
1219 #[derive(Debug, Copy, Clone)]
1220 pub struct pthread_mutex_t___pthread_mutex_s {
1221     pub __lock: ::std::os::raw::c_int,
1222     pub __count: ::std::os::raw::c_uint,
1223     pub __owner: ::std::os::raw::c_int,
1224     pub __nusers: ::std::os::raw::c_uint,
1225     pub __kind: ::std::os::raw::c_int,
1226     pub __spins: ::std::os::raw::c_short,
1227     pub __elision: ::std::os::raw::c_short,
1228     pub __list: __pthread_list_t,
1229 }
1230 #[test]
bindgen_test_layout_pthread_mutex_t___pthread_mutex_s()1231 fn bindgen_test_layout_pthread_mutex_t___pthread_mutex_s() {
1232     assert_eq!(
1233         ::std::mem::size_of::<pthread_mutex_t___pthread_mutex_s>(),
1234         40usize,
1235         concat!("Size of: ", stringify!(pthread_mutex_t___pthread_mutex_s))
1236     );
1237     assert_eq!(
1238         ::std::mem::align_of::<pthread_mutex_t___pthread_mutex_s>(),
1239         8usize,
1240         concat!(
1241             "Alignment of ",
1242             stringify!(pthread_mutex_t___pthread_mutex_s)
1243         )
1244     );
1245     assert_eq!(
1246         unsafe {
1247             &(*(::std::ptr::null::<pthread_mutex_t___pthread_mutex_s>())).__lock as *const _
1248                 as usize
1249         },
1250         0usize,
1251         concat!(
1252             "Offset of field: ",
1253             stringify!(pthread_mutex_t___pthread_mutex_s),
1254             "::",
1255             stringify!(__lock)
1256         )
1257     );
1258     assert_eq!(
1259         unsafe {
1260             &(*(::std::ptr::null::<pthread_mutex_t___pthread_mutex_s>())).__count as *const _
1261                 as usize
1262         },
1263         4usize,
1264         concat!(
1265             "Offset of field: ",
1266             stringify!(pthread_mutex_t___pthread_mutex_s),
1267             "::",
1268             stringify!(__count)
1269         )
1270     );
1271     assert_eq!(
1272         unsafe {
1273             &(*(::std::ptr::null::<pthread_mutex_t___pthread_mutex_s>())).__owner as *const _
1274                 as usize
1275         },
1276         8usize,
1277         concat!(
1278             "Offset of field: ",
1279             stringify!(pthread_mutex_t___pthread_mutex_s),
1280             "::",
1281             stringify!(__owner)
1282         )
1283     );
1284     assert_eq!(
1285         unsafe {
1286             &(*(::std::ptr::null::<pthread_mutex_t___pthread_mutex_s>())).__nusers as *const _
1287                 as usize
1288         },
1289         12usize,
1290         concat!(
1291             "Offset of field: ",
1292             stringify!(pthread_mutex_t___pthread_mutex_s),
1293             "::",
1294             stringify!(__nusers)
1295         )
1296     );
1297     assert_eq!(
1298         unsafe {
1299             &(*(::std::ptr::null::<pthread_mutex_t___pthread_mutex_s>())).__kind as *const _
1300                 as usize
1301         },
1302         16usize,
1303         concat!(
1304             "Offset of field: ",
1305             stringify!(pthread_mutex_t___pthread_mutex_s),
1306             "::",
1307             stringify!(__kind)
1308         )
1309     );
1310     assert_eq!(
1311         unsafe {
1312             &(*(::std::ptr::null::<pthread_mutex_t___pthread_mutex_s>())).__spins as *const _
1313                 as usize
1314         },
1315         20usize,
1316         concat!(
1317             "Offset of field: ",
1318             stringify!(pthread_mutex_t___pthread_mutex_s),
1319             "::",
1320             stringify!(__spins)
1321         )
1322     );
1323     assert_eq!(
1324         unsafe {
1325             &(*(::std::ptr::null::<pthread_mutex_t___pthread_mutex_s>())).__elision as *const _
1326                 as usize
1327         },
1328         22usize,
1329         concat!(
1330             "Offset of field: ",
1331             stringify!(pthread_mutex_t___pthread_mutex_s),
1332             "::",
1333             stringify!(__elision)
1334         )
1335     );
1336     assert_eq!(
1337         unsafe {
1338             &(*(::std::ptr::null::<pthread_mutex_t___pthread_mutex_s>())).__list as *const _
1339                 as usize
1340         },
1341         24usize,
1342         concat!(
1343             "Offset of field: ",
1344             stringify!(pthread_mutex_t___pthread_mutex_s),
1345             "::",
1346             stringify!(__list)
1347         )
1348     );
1349 }
1350 #[test]
bindgen_test_layout_pthread_mutex_t()1351 fn bindgen_test_layout_pthread_mutex_t() {
1352     assert_eq!(
1353         ::std::mem::size_of::<pthread_mutex_t>(),
1354         40usize,
1355         concat!("Size of: ", stringify!(pthread_mutex_t))
1356     );
1357     assert_eq!(
1358         ::std::mem::align_of::<pthread_mutex_t>(),
1359         8usize,
1360         concat!("Alignment of ", stringify!(pthread_mutex_t))
1361     );
1362     assert_eq!(
1363         unsafe { &(*(::std::ptr::null::<pthread_mutex_t>())).__data as *const _ as usize },
1364         0usize,
1365         concat!(
1366             "Offset of field: ",
1367             stringify!(pthread_mutex_t),
1368             "::",
1369             stringify!(__data)
1370         )
1371     );
1372     assert_eq!(
1373         unsafe { &(*(::std::ptr::null::<pthread_mutex_t>())).__size as *const _ as usize },
1374         0usize,
1375         concat!(
1376             "Offset of field: ",
1377             stringify!(pthread_mutex_t),
1378             "::",
1379             stringify!(__size)
1380         )
1381     );
1382     assert_eq!(
1383         unsafe { &(*(::std::ptr::null::<pthread_mutex_t>())).__align as *const _ as usize },
1384         0usize,
1385         concat!(
1386             "Offset of field: ",
1387             stringify!(pthread_mutex_t),
1388             "::",
1389             stringify!(__align)
1390         )
1391     );
1392 }
1393 #[repr(C)]
1394 #[derive(Copy, Clone)]
1395 pub union pthread_mutexattr_t {
1396     pub __size: [::std::os::raw::c_char; 4usize],
1397     pub __align: ::std::os::raw::c_int,
1398     _bindgen_union_align: u32,
1399 }
1400 #[test]
bindgen_test_layout_pthread_mutexattr_t()1401 fn bindgen_test_layout_pthread_mutexattr_t() {
1402     assert_eq!(
1403         ::std::mem::size_of::<pthread_mutexattr_t>(),
1404         4usize,
1405         concat!("Size of: ", stringify!(pthread_mutexattr_t))
1406     );
1407     assert_eq!(
1408         ::std::mem::align_of::<pthread_mutexattr_t>(),
1409         4usize,
1410         concat!("Alignment of ", stringify!(pthread_mutexattr_t))
1411     );
1412     assert_eq!(
1413         unsafe { &(*(::std::ptr::null::<pthread_mutexattr_t>())).__size as *const _ as usize },
1414         0usize,
1415         concat!(
1416             "Offset of field: ",
1417             stringify!(pthread_mutexattr_t),
1418             "::",
1419             stringify!(__size)
1420         )
1421     );
1422     assert_eq!(
1423         unsafe { &(*(::std::ptr::null::<pthread_mutexattr_t>())).__align as *const _ as usize },
1424         0usize,
1425         concat!(
1426             "Offset of field: ",
1427             stringify!(pthread_mutexattr_t),
1428             "::",
1429             stringify!(__align)
1430         )
1431     );
1432 }
1433 #[repr(C)]
1434 #[derive(Copy, Clone)]
1435 pub union pthread_cond_t {
1436     pub __data: pthread_cond_t__bindgen_ty_1,
1437     pub __size: [::std::os::raw::c_char; 48usize],
1438     pub __align: ::std::os::raw::c_longlong,
1439     _bindgen_union_align: [u64; 6usize],
1440 }
1441 #[repr(C)]
1442 #[derive(Debug, Copy, Clone)]
1443 pub struct pthread_cond_t__bindgen_ty_1 {
1444     pub __lock: ::std::os::raw::c_int,
1445     pub __futex: ::std::os::raw::c_uint,
1446     pub __total_seq: ::std::os::raw::c_ulonglong,
1447     pub __wakeup_seq: ::std::os::raw::c_ulonglong,
1448     pub __woken_seq: ::std::os::raw::c_ulonglong,
1449     pub __mutex: *mut ::std::os::raw::c_void,
1450     pub __nwaiters: ::std::os::raw::c_uint,
1451     pub __broadcast_seq: ::std::os::raw::c_uint,
1452 }
1453 #[test]
bindgen_test_layout_pthread_cond_t__bindgen_ty_1()1454 fn bindgen_test_layout_pthread_cond_t__bindgen_ty_1() {
1455     assert_eq!(
1456         ::std::mem::size_of::<pthread_cond_t__bindgen_ty_1>(),
1457         48usize,
1458         concat!("Size of: ", stringify!(pthread_cond_t__bindgen_ty_1))
1459     );
1460     assert_eq!(
1461         ::std::mem::align_of::<pthread_cond_t__bindgen_ty_1>(),
1462         8usize,
1463         concat!("Alignment of ", stringify!(pthread_cond_t__bindgen_ty_1))
1464     );
1465     assert_eq!(
1466         unsafe {
1467             &(*(::std::ptr::null::<pthread_cond_t__bindgen_ty_1>())).__lock as *const _ as usize
1468         },
1469         0usize,
1470         concat!(
1471             "Offset of field: ",
1472             stringify!(pthread_cond_t__bindgen_ty_1),
1473             "::",
1474             stringify!(__lock)
1475         )
1476     );
1477     assert_eq!(
1478         unsafe {
1479             &(*(::std::ptr::null::<pthread_cond_t__bindgen_ty_1>())).__futex as *const _ as usize
1480         },
1481         4usize,
1482         concat!(
1483             "Offset of field: ",
1484             stringify!(pthread_cond_t__bindgen_ty_1),
1485             "::",
1486             stringify!(__futex)
1487         )
1488     );
1489     assert_eq!(
1490         unsafe {
1491             &(*(::std::ptr::null::<pthread_cond_t__bindgen_ty_1>())).__total_seq as *const _
1492                 as usize
1493         },
1494         8usize,
1495         concat!(
1496             "Offset of field: ",
1497             stringify!(pthread_cond_t__bindgen_ty_1),
1498             "::",
1499             stringify!(__total_seq)
1500         )
1501     );
1502     assert_eq!(
1503         unsafe {
1504             &(*(::std::ptr::null::<pthread_cond_t__bindgen_ty_1>())).__wakeup_seq as *const _
1505                 as usize
1506         },
1507         16usize,
1508         concat!(
1509             "Offset of field: ",
1510             stringify!(pthread_cond_t__bindgen_ty_1),
1511             "::",
1512             stringify!(__wakeup_seq)
1513         )
1514     );
1515     assert_eq!(
1516         unsafe {
1517             &(*(::std::ptr::null::<pthread_cond_t__bindgen_ty_1>())).__woken_seq as *const _
1518                 as usize
1519         },
1520         24usize,
1521         concat!(
1522             "Offset of field: ",
1523             stringify!(pthread_cond_t__bindgen_ty_1),
1524             "::",
1525             stringify!(__woken_seq)
1526         )
1527     );
1528     assert_eq!(
1529         unsafe {
1530             &(*(::std::ptr::null::<pthread_cond_t__bindgen_ty_1>())).__mutex as *const _ as usize
1531         },
1532         32usize,
1533         concat!(
1534             "Offset of field: ",
1535             stringify!(pthread_cond_t__bindgen_ty_1),
1536             "::",
1537             stringify!(__mutex)
1538         )
1539     );
1540     assert_eq!(
1541         unsafe {
1542             &(*(::std::ptr::null::<pthread_cond_t__bindgen_ty_1>())).__nwaiters as *const _ as usize
1543         },
1544         40usize,
1545         concat!(
1546             "Offset of field: ",
1547             stringify!(pthread_cond_t__bindgen_ty_1),
1548             "::",
1549             stringify!(__nwaiters)
1550         )
1551     );
1552     assert_eq!(
1553         unsafe {
1554             &(*(::std::ptr::null::<pthread_cond_t__bindgen_ty_1>())).__broadcast_seq as *const _
1555                 as usize
1556         },
1557         44usize,
1558         concat!(
1559             "Offset of field: ",
1560             stringify!(pthread_cond_t__bindgen_ty_1),
1561             "::",
1562             stringify!(__broadcast_seq)
1563         )
1564     );
1565 }
1566 #[test]
bindgen_test_layout_pthread_cond_t()1567 fn bindgen_test_layout_pthread_cond_t() {
1568     assert_eq!(
1569         ::std::mem::size_of::<pthread_cond_t>(),
1570         48usize,
1571         concat!("Size of: ", stringify!(pthread_cond_t))
1572     );
1573     assert_eq!(
1574         ::std::mem::align_of::<pthread_cond_t>(),
1575         8usize,
1576         concat!("Alignment of ", stringify!(pthread_cond_t))
1577     );
1578     assert_eq!(
1579         unsafe { &(*(::std::ptr::null::<pthread_cond_t>())).__data as *const _ as usize },
1580         0usize,
1581         concat!(
1582             "Offset of field: ",
1583             stringify!(pthread_cond_t),
1584             "::",
1585             stringify!(__data)
1586         )
1587     );
1588     assert_eq!(
1589         unsafe { &(*(::std::ptr::null::<pthread_cond_t>())).__size as *const _ as usize },
1590         0usize,
1591         concat!(
1592             "Offset of field: ",
1593             stringify!(pthread_cond_t),
1594             "::",
1595             stringify!(__size)
1596         )
1597     );
1598     assert_eq!(
1599         unsafe { &(*(::std::ptr::null::<pthread_cond_t>())).__align as *const _ as usize },
1600         0usize,
1601         concat!(
1602             "Offset of field: ",
1603             stringify!(pthread_cond_t),
1604             "::",
1605             stringify!(__align)
1606         )
1607     );
1608 }
1609 #[repr(C)]
1610 #[derive(Copy, Clone)]
1611 pub union pthread_condattr_t {
1612     pub __size: [::std::os::raw::c_char; 4usize],
1613     pub __align: ::std::os::raw::c_int,
1614     _bindgen_union_align: u32,
1615 }
1616 #[test]
bindgen_test_layout_pthread_condattr_t()1617 fn bindgen_test_layout_pthread_condattr_t() {
1618     assert_eq!(
1619         ::std::mem::size_of::<pthread_condattr_t>(),
1620         4usize,
1621         concat!("Size of: ", stringify!(pthread_condattr_t))
1622     );
1623     assert_eq!(
1624         ::std::mem::align_of::<pthread_condattr_t>(),
1625         4usize,
1626         concat!("Alignment of ", stringify!(pthread_condattr_t))
1627     );
1628     assert_eq!(
1629         unsafe { &(*(::std::ptr::null::<pthread_condattr_t>())).__size as *const _ as usize },
1630         0usize,
1631         concat!(
1632             "Offset of field: ",
1633             stringify!(pthread_condattr_t),
1634             "::",
1635             stringify!(__size)
1636         )
1637     );
1638     assert_eq!(
1639         unsafe { &(*(::std::ptr::null::<pthread_condattr_t>())).__align as *const _ as usize },
1640         0usize,
1641         concat!(
1642             "Offset of field: ",
1643             stringify!(pthread_condattr_t),
1644             "::",
1645             stringify!(__align)
1646         )
1647     );
1648 }
1649 pub type pthread_key_t = ::std::os::raw::c_uint;
1650 pub type pthread_once_t = ::std::os::raw::c_int;
1651 #[repr(C)]
1652 #[derive(Copy, Clone)]
1653 pub union pthread_rwlock_t {
1654     pub __data: pthread_rwlock_t__bindgen_ty_1,
1655     pub __size: [::std::os::raw::c_char; 56usize],
1656     pub __align: ::std::os::raw::c_long,
1657     _bindgen_union_align: [u64; 7usize],
1658 }
1659 #[repr(C)]
1660 #[derive(Debug, Copy, Clone)]
1661 pub struct pthread_rwlock_t__bindgen_ty_1 {
1662     pub __lock: ::std::os::raw::c_int,
1663     pub __nr_readers: ::std::os::raw::c_uint,
1664     pub __readers_wakeup: ::std::os::raw::c_uint,
1665     pub __writer_wakeup: ::std::os::raw::c_uint,
1666     pub __nr_readers_queued: ::std::os::raw::c_uint,
1667     pub __nr_writers_queued: ::std::os::raw::c_uint,
1668     pub __writer: ::std::os::raw::c_int,
1669     pub __shared: ::std::os::raw::c_int,
1670     pub __rwelision: ::std::os::raw::c_schar,
1671     pub __pad1: [::std::os::raw::c_uchar; 7usize],
1672     pub __pad2: ::std::os::raw::c_ulong,
1673     pub __flags: ::std::os::raw::c_uint,
1674 }
1675 #[test]
bindgen_test_layout_pthread_rwlock_t__bindgen_ty_1()1676 fn bindgen_test_layout_pthread_rwlock_t__bindgen_ty_1() {
1677     assert_eq!(
1678         ::std::mem::size_of::<pthread_rwlock_t__bindgen_ty_1>(),
1679         56usize,
1680         concat!("Size of: ", stringify!(pthread_rwlock_t__bindgen_ty_1))
1681     );
1682     assert_eq!(
1683         ::std::mem::align_of::<pthread_rwlock_t__bindgen_ty_1>(),
1684         8usize,
1685         concat!("Alignment of ", stringify!(pthread_rwlock_t__bindgen_ty_1))
1686     );
1687     assert_eq!(
1688         unsafe {
1689             &(*(::std::ptr::null::<pthread_rwlock_t__bindgen_ty_1>())).__lock as *const _ as usize
1690         },
1691         0usize,
1692         concat!(
1693             "Offset of field: ",
1694             stringify!(pthread_rwlock_t__bindgen_ty_1),
1695             "::",
1696             stringify!(__lock)
1697         )
1698     );
1699     assert_eq!(
1700         unsafe {
1701             &(*(::std::ptr::null::<pthread_rwlock_t__bindgen_ty_1>())).__nr_readers as *const _
1702                 as usize
1703         },
1704         4usize,
1705         concat!(
1706             "Offset of field: ",
1707             stringify!(pthread_rwlock_t__bindgen_ty_1),
1708             "::",
1709             stringify!(__nr_readers)
1710         )
1711     );
1712     assert_eq!(
1713         unsafe {
1714             &(*(::std::ptr::null::<pthread_rwlock_t__bindgen_ty_1>())).__readers_wakeup as *const _
1715                 as usize
1716         },
1717         8usize,
1718         concat!(
1719             "Offset of field: ",
1720             stringify!(pthread_rwlock_t__bindgen_ty_1),
1721             "::",
1722             stringify!(__readers_wakeup)
1723         )
1724     );
1725     assert_eq!(
1726         unsafe {
1727             &(*(::std::ptr::null::<pthread_rwlock_t__bindgen_ty_1>())).__writer_wakeup as *const _
1728                 as usize
1729         },
1730         12usize,
1731         concat!(
1732             "Offset of field: ",
1733             stringify!(pthread_rwlock_t__bindgen_ty_1),
1734             "::",
1735             stringify!(__writer_wakeup)
1736         )
1737     );
1738     assert_eq!(
1739         unsafe {
1740             &(*(::std::ptr::null::<pthread_rwlock_t__bindgen_ty_1>())).__nr_readers_queued
1741                 as *const _ as usize
1742         },
1743         16usize,
1744         concat!(
1745             "Offset of field: ",
1746             stringify!(pthread_rwlock_t__bindgen_ty_1),
1747             "::",
1748             stringify!(__nr_readers_queued)
1749         )
1750     );
1751     assert_eq!(
1752         unsafe {
1753             &(*(::std::ptr::null::<pthread_rwlock_t__bindgen_ty_1>())).__nr_writers_queued
1754                 as *const _ as usize
1755         },
1756         20usize,
1757         concat!(
1758             "Offset of field: ",
1759             stringify!(pthread_rwlock_t__bindgen_ty_1),
1760             "::",
1761             stringify!(__nr_writers_queued)
1762         )
1763     );
1764     assert_eq!(
1765         unsafe {
1766             &(*(::std::ptr::null::<pthread_rwlock_t__bindgen_ty_1>())).__writer as *const _ as usize
1767         },
1768         24usize,
1769         concat!(
1770             "Offset of field: ",
1771             stringify!(pthread_rwlock_t__bindgen_ty_1),
1772             "::",
1773             stringify!(__writer)
1774         )
1775     );
1776     assert_eq!(
1777         unsafe {
1778             &(*(::std::ptr::null::<pthread_rwlock_t__bindgen_ty_1>())).__shared as *const _ as usize
1779         },
1780         28usize,
1781         concat!(
1782             "Offset of field: ",
1783             stringify!(pthread_rwlock_t__bindgen_ty_1),
1784             "::",
1785             stringify!(__shared)
1786         )
1787     );
1788     assert_eq!(
1789         unsafe {
1790             &(*(::std::ptr::null::<pthread_rwlock_t__bindgen_ty_1>())).__rwelision as *const _
1791                 as usize
1792         },
1793         32usize,
1794         concat!(
1795             "Offset of field: ",
1796             stringify!(pthread_rwlock_t__bindgen_ty_1),
1797             "::",
1798             stringify!(__rwelision)
1799         )
1800     );
1801     assert_eq!(
1802         unsafe {
1803             &(*(::std::ptr::null::<pthread_rwlock_t__bindgen_ty_1>())).__pad1 as *const _ as usize
1804         },
1805         33usize,
1806         concat!(
1807             "Offset of field: ",
1808             stringify!(pthread_rwlock_t__bindgen_ty_1),
1809             "::",
1810             stringify!(__pad1)
1811         )
1812     );
1813     assert_eq!(
1814         unsafe {
1815             &(*(::std::ptr::null::<pthread_rwlock_t__bindgen_ty_1>())).__pad2 as *const _ as usize
1816         },
1817         40usize,
1818         concat!(
1819             "Offset of field: ",
1820             stringify!(pthread_rwlock_t__bindgen_ty_1),
1821             "::",
1822             stringify!(__pad2)
1823         )
1824     );
1825     assert_eq!(
1826         unsafe {
1827             &(*(::std::ptr::null::<pthread_rwlock_t__bindgen_ty_1>())).__flags as *const _ as usize
1828         },
1829         48usize,
1830         concat!(
1831             "Offset of field: ",
1832             stringify!(pthread_rwlock_t__bindgen_ty_1),
1833             "::",
1834             stringify!(__flags)
1835         )
1836     );
1837 }
1838 #[test]
bindgen_test_layout_pthread_rwlock_t()1839 fn bindgen_test_layout_pthread_rwlock_t() {
1840     assert_eq!(
1841         ::std::mem::size_of::<pthread_rwlock_t>(),
1842         56usize,
1843         concat!("Size of: ", stringify!(pthread_rwlock_t))
1844     );
1845     assert_eq!(
1846         ::std::mem::align_of::<pthread_rwlock_t>(),
1847         8usize,
1848         concat!("Alignment of ", stringify!(pthread_rwlock_t))
1849     );
1850     assert_eq!(
1851         unsafe { &(*(::std::ptr::null::<pthread_rwlock_t>())).__data as *const _ as usize },
1852         0usize,
1853         concat!(
1854             "Offset of field: ",
1855             stringify!(pthread_rwlock_t),
1856             "::",
1857             stringify!(__data)
1858         )
1859     );
1860     assert_eq!(
1861         unsafe { &(*(::std::ptr::null::<pthread_rwlock_t>())).__size as *const _ as usize },
1862         0usize,
1863         concat!(
1864             "Offset of field: ",
1865             stringify!(pthread_rwlock_t),
1866             "::",
1867             stringify!(__size)
1868         )
1869     );
1870     assert_eq!(
1871         unsafe { &(*(::std::ptr::null::<pthread_rwlock_t>())).__align as *const _ as usize },
1872         0usize,
1873         concat!(
1874             "Offset of field: ",
1875             stringify!(pthread_rwlock_t),
1876             "::",
1877             stringify!(__align)
1878         )
1879     );
1880 }
1881 #[repr(C)]
1882 #[derive(Copy, Clone)]
1883 pub union pthread_rwlockattr_t {
1884     pub __size: [::std::os::raw::c_char; 8usize],
1885     pub __align: ::std::os::raw::c_long,
1886     _bindgen_union_align: u64,
1887 }
1888 #[test]
bindgen_test_layout_pthread_rwlockattr_t()1889 fn bindgen_test_layout_pthread_rwlockattr_t() {
1890     assert_eq!(
1891         ::std::mem::size_of::<pthread_rwlockattr_t>(),
1892         8usize,
1893         concat!("Size of: ", stringify!(pthread_rwlockattr_t))
1894     );
1895     assert_eq!(
1896         ::std::mem::align_of::<pthread_rwlockattr_t>(),
1897         8usize,
1898         concat!("Alignment of ", stringify!(pthread_rwlockattr_t))
1899     );
1900     assert_eq!(
1901         unsafe { &(*(::std::ptr::null::<pthread_rwlockattr_t>())).__size as *const _ as usize },
1902         0usize,
1903         concat!(
1904             "Offset of field: ",
1905             stringify!(pthread_rwlockattr_t),
1906             "::",
1907             stringify!(__size)
1908         )
1909     );
1910     assert_eq!(
1911         unsafe { &(*(::std::ptr::null::<pthread_rwlockattr_t>())).__align as *const _ as usize },
1912         0usize,
1913         concat!(
1914             "Offset of field: ",
1915             stringify!(pthread_rwlockattr_t),
1916             "::",
1917             stringify!(__align)
1918         )
1919     );
1920 }
1921 pub type pthread_spinlock_t = ::std::os::raw::c_int;
1922 #[repr(C)]
1923 #[derive(Copy, Clone)]
1924 pub union pthread_barrier_t {
1925     pub __size: [::std::os::raw::c_char; 32usize],
1926     pub __align: ::std::os::raw::c_long,
1927     _bindgen_union_align: [u64; 4usize],
1928 }
1929 #[test]
bindgen_test_layout_pthread_barrier_t()1930 fn bindgen_test_layout_pthread_barrier_t() {
1931     assert_eq!(
1932         ::std::mem::size_of::<pthread_barrier_t>(),
1933         32usize,
1934         concat!("Size of: ", stringify!(pthread_barrier_t))
1935     );
1936     assert_eq!(
1937         ::std::mem::align_of::<pthread_barrier_t>(),
1938         8usize,
1939         concat!("Alignment of ", stringify!(pthread_barrier_t))
1940     );
1941     assert_eq!(
1942         unsafe { &(*(::std::ptr::null::<pthread_barrier_t>())).__size as *const _ as usize },
1943         0usize,
1944         concat!(
1945             "Offset of field: ",
1946             stringify!(pthread_barrier_t),
1947             "::",
1948             stringify!(__size)
1949         )
1950     );
1951     assert_eq!(
1952         unsafe { &(*(::std::ptr::null::<pthread_barrier_t>())).__align as *const _ as usize },
1953         0usize,
1954         concat!(
1955             "Offset of field: ",
1956             stringify!(pthread_barrier_t),
1957             "::",
1958             stringify!(__align)
1959         )
1960     );
1961 }
1962 #[repr(C)]
1963 #[derive(Copy, Clone)]
1964 pub union pthread_barrierattr_t {
1965     pub __size: [::std::os::raw::c_char; 4usize],
1966     pub __align: ::std::os::raw::c_int,
1967     _bindgen_union_align: u32,
1968 }
1969 #[test]
bindgen_test_layout_pthread_barrierattr_t()1970 fn bindgen_test_layout_pthread_barrierattr_t() {
1971     assert_eq!(
1972         ::std::mem::size_of::<pthread_barrierattr_t>(),
1973         4usize,
1974         concat!("Size of: ", stringify!(pthread_barrierattr_t))
1975     );
1976     assert_eq!(
1977         ::std::mem::align_of::<pthread_barrierattr_t>(),
1978         4usize,
1979         concat!("Alignment of ", stringify!(pthread_barrierattr_t))
1980     );
1981     assert_eq!(
1982         unsafe { &(*(::std::ptr::null::<pthread_barrierattr_t>())).__size as *const _ as usize },
1983         0usize,
1984         concat!(
1985             "Offset of field: ",
1986             stringify!(pthread_barrierattr_t),
1987             "::",
1988             stringify!(__size)
1989         )
1990     );
1991     assert_eq!(
1992         unsafe { &(*(::std::ptr::null::<pthread_barrierattr_t>())).__align as *const _ as usize },
1993         0usize,
1994         concat!(
1995             "Offset of field: ",
1996             stringify!(pthread_barrierattr_t),
1997             "::",
1998             stringify!(__align)
1999         )
2000     );
2001 }
2002 extern "C" {
random() -> ::std::os::raw::c_long2003     pub fn random() -> ::std::os::raw::c_long;
2004 }
2005 extern "C" {
srandom(__seed: ::std::os::raw::c_uint)2006     pub fn srandom(__seed: ::std::os::raw::c_uint);
2007 }
2008 extern "C" {
initstate( __seed: ::std::os::raw::c_uint, __statebuf: *mut ::std::os::raw::c_char, __statelen: usize, ) -> *mut ::std::os::raw::c_char2009     pub fn initstate(
2010         __seed: ::std::os::raw::c_uint,
2011         __statebuf: *mut ::std::os::raw::c_char,
2012         __statelen: usize,
2013     ) -> *mut ::std::os::raw::c_char;
2014 }
2015 extern "C" {
setstate(__statebuf: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char2016     pub fn setstate(__statebuf: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
2017 }
2018 #[repr(C)]
2019 #[derive(Debug, Copy, Clone)]
2020 pub struct random_data {
2021     pub fptr: *mut i32,
2022     pub rptr: *mut i32,
2023     pub state: *mut i32,
2024     pub rand_type: ::std::os::raw::c_int,
2025     pub rand_deg: ::std::os::raw::c_int,
2026     pub rand_sep: ::std::os::raw::c_int,
2027     pub end_ptr: *mut i32,
2028 }
2029 #[test]
bindgen_test_layout_random_data()2030 fn bindgen_test_layout_random_data() {
2031     assert_eq!(
2032         ::std::mem::size_of::<random_data>(),
2033         48usize,
2034         concat!("Size of: ", stringify!(random_data))
2035     );
2036     assert_eq!(
2037         ::std::mem::align_of::<random_data>(),
2038         8usize,
2039         concat!("Alignment of ", stringify!(random_data))
2040     );
2041     assert_eq!(
2042         unsafe { &(*(::std::ptr::null::<random_data>())).fptr as *const _ as usize },
2043         0usize,
2044         concat!(
2045             "Offset of field: ",
2046             stringify!(random_data),
2047             "::",
2048             stringify!(fptr)
2049         )
2050     );
2051     assert_eq!(
2052         unsafe { &(*(::std::ptr::null::<random_data>())).rptr as *const _ as usize },
2053         8usize,
2054         concat!(
2055             "Offset of field: ",
2056             stringify!(random_data),
2057             "::",
2058             stringify!(rptr)
2059         )
2060     );
2061     assert_eq!(
2062         unsafe { &(*(::std::ptr::null::<random_data>())).state as *const _ as usize },
2063         16usize,
2064         concat!(
2065             "Offset of field: ",
2066             stringify!(random_data),
2067             "::",
2068             stringify!(state)
2069         )
2070     );
2071     assert_eq!(
2072         unsafe { &(*(::std::ptr::null::<random_data>())).rand_type as *const _ as usize },
2073         24usize,
2074         concat!(
2075             "Offset of field: ",
2076             stringify!(random_data),
2077             "::",
2078             stringify!(rand_type)
2079         )
2080     );
2081     assert_eq!(
2082         unsafe { &(*(::std::ptr::null::<random_data>())).rand_deg as *const _ as usize },
2083         28usize,
2084         concat!(
2085             "Offset of field: ",
2086             stringify!(random_data),
2087             "::",
2088             stringify!(rand_deg)
2089         )
2090     );
2091     assert_eq!(
2092         unsafe { &(*(::std::ptr::null::<random_data>())).rand_sep as *const _ as usize },
2093         32usize,
2094         concat!(
2095             "Offset of field: ",
2096             stringify!(random_data),
2097             "::",
2098             stringify!(rand_sep)
2099         )
2100     );
2101     assert_eq!(
2102         unsafe { &(*(::std::ptr::null::<random_data>())).end_ptr as *const _ as usize },
2103         40usize,
2104         concat!(
2105             "Offset of field: ",
2106             stringify!(random_data),
2107             "::",
2108             stringify!(end_ptr)
2109         )
2110     );
2111 }
2112 extern "C" {
random_r(__buf: *mut random_data, __result: *mut i32) -> ::std::os::raw::c_int2113     pub fn random_r(__buf: *mut random_data, __result: *mut i32) -> ::std::os::raw::c_int;
2114 }
2115 extern "C" {
srandom_r( __seed: ::std::os::raw::c_uint, __buf: *mut random_data, ) -> ::std::os::raw::c_int2116     pub fn srandom_r(
2117         __seed: ::std::os::raw::c_uint,
2118         __buf: *mut random_data,
2119     ) -> ::std::os::raw::c_int;
2120 }
2121 extern "C" {
initstate_r( __seed: ::std::os::raw::c_uint, __statebuf: *mut ::std::os::raw::c_char, __statelen: usize, __buf: *mut random_data, ) -> ::std::os::raw::c_int2122     pub fn initstate_r(
2123         __seed: ::std::os::raw::c_uint,
2124         __statebuf: *mut ::std::os::raw::c_char,
2125         __statelen: usize,
2126         __buf: *mut random_data,
2127     ) -> ::std::os::raw::c_int;
2128 }
2129 extern "C" {
setstate_r( __statebuf: *mut ::std::os::raw::c_char, __buf: *mut random_data, ) -> ::std::os::raw::c_int2130     pub fn setstate_r(
2131         __statebuf: *mut ::std::os::raw::c_char,
2132         __buf: *mut random_data,
2133     ) -> ::std::os::raw::c_int;
2134 }
2135 extern "C" {
rand() -> ::std::os::raw::c_int2136     pub fn rand() -> ::std::os::raw::c_int;
2137 }
2138 extern "C" {
srand(__seed: ::std::os::raw::c_uint)2139     pub fn srand(__seed: ::std::os::raw::c_uint);
2140 }
2141 extern "C" {
rand_r(__seed: *mut ::std::os::raw::c_uint) -> ::std::os::raw::c_int2142     pub fn rand_r(__seed: *mut ::std::os::raw::c_uint) -> ::std::os::raw::c_int;
2143 }
2144 extern "C" {
drand48() -> f642145     pub fn drand48() -> f64;
2146 }
2147 extern "C" {
erand48(__xsubi: *mut ::std::os::raw::c_ushort) -> f642148     pub fn erand48(__xsubi: *mut ::std::os::raw::c_ushort) -> f64;
2149 }
2150 extern "C" {
lrand48() -> ::std::os::raw::c_long2151     pub fn lrand48() -> ::std::os::raw::c_long;
2152 }
2153 extern "C" {
nrand48(__xsubi: *mut ::std::os::raw::c_ushort) -> ::std::os::raw::c_long2154     pub fn nrand48(__xsubi: *mut ::std::os::raw::c_ushort) -> ::std::os::raw::c_long;
2155 }
2156 extern "C" {
mrand48() -> ::std::os::raw::c_long2157     pub fn mrand48() -> ::std::os::raw::c_long;
2158 }
2159 extern "C" {
jrand48(__xsubi: *mut ::std::os::raw::c_ushort) -> ::std::os::raw::c_long2160     pub fn jrand48(__xsubi: *mut ::std::os::raw::c_ushort) -> ::std::os::raw::c_long;
2161 }
2162 extern "C" {
srand48(__seedval: ::std::os::raw::c_long)2163     pub fn srand48(__seedval: ::std::os::raw::c_long);
2164 }
2165 extern "C" {
seed48(__seed16v: *mut ::std::os::raw::c_ushort) -> *mut ::std::os::raw::c_ushort2166     pub fn seed48(__seed16v: *mut ::std::os::raw::c_ushort) -> *mut ::std::os::raw::c_ushort;
2167 }
2168 extern "C" {
lcong48(__param: *mut ::std::os::raw::c_ushort)2169     pub fn lcong48(__param: *mut ::std::os::raw::c_ushort);
2170 }
2171 #[repr(C)]
2172 #[derive(Debug, Copy, Clone)]
2173 pub struct drand48_data {
2174     pub __x: [::std::os::raw::c_ushort; 3usize],
2175     pub __old_x: [::std::os::raw::c_ushort; 3usize],
2176     pub __c: ::std::os::raw::c_ushort,
2177     pub __init: ::std::os::raw::c_ushort,
2178     pub __a: ::std::os::raw::c_ulonglong,
2179 }
2180 #[test]
bindgen_test_layout_drand48_data()2181 fn bindgen_test_layout_drand48_data() {
2182     assert_eq!(
2183         ::std::mem::size_of::<drand48_data>(),
2184         24usize,
2185         concat!("Size of: ", stringify!(drand48_data))
2186     );
2187     assert_eq!(
2188         ::std::mem::align_of::<drand48_data>(),
2189         8usize,
2190         concat!("Alignment of ", stringify!(drand48_data))
2191     );
2192     assert_eq!(
2193         unsafe { &(*(::std::ptr::null::<drand48_data>())).__x as *const _ as usize },
2194         0usize,
2195         concat!(
2196             "Offset of field: ",
2197             stringify!(drand48_data),
2198             "::",
2199             stringify!(__x)
2200         )
2201     );
2202     assert_eq!(
2203         unsafe { &(*(::std::ptr::null::<drand48_data>())).__old_x as *const _ as usize },
2204         6usize,
2205         concat!(
2206             "Offset of field: ",
2207             stringify!(drand48_data),
2208             "::",
2209             stringify!(__old_x)
2210         )
2211     );
2212     assert_eq!(
2213         unsafe { &(*(::std::ptr::null::<drand48_data>())).__c as *const _ as usize },
2214         12usize,
2215         concat!(
2216             "Offset of field: ",
2217             stringify!(drand48_data),
2218             "::",
2219             stringify!(__c)
2220         )
2221     );
2222     assert_eq!(
2223         unsafe { &(*(::std::ptr::null::<drand48_data>())).__init as *const _ as usize },
2224         14usize,
2225         concat!(
2226             "Offset of field: ",
2227             stringify!(drand48_data),
2228             "::",
2229             stringify!(__init)
2230         )
2231     );
2232     assert_eq!(
2233         unsafe { &(*(::std::ptr::null::<drand48_data>())).__a as *const _ as usize },
2234         16usize,
2235         concat!(
2236             "Offset of field: ",
2237             stringify!(drand48_data),
2238             "::",
2239             stringify!(__a)
2240         )
2241     );
2242 }
2243 extern "C" {
drand48_r(__buffer: *mut drand48_data, __result: *mut f64) -> ::std::os::raw::c_int2244     pub fn drand48_r(__buffer: *mut drand48_data, __result: *mut f64) -> ::std::os::raw::c_int;
2245 }
2246 extern "C" {
erand48_r( __xsubi: *mut ::std::os::raw::c_ushort, __buffer: *mut drand48_data, __result: *mut f64, ) -> ::std::os::raw::c_int2247     pub fn erand48_r(
2248         __xsubi: *mut ::std::os::raw::c_ushort,
2249         __buffer: *mut drand48_data,
2250         __result: *mut f64,
2251     ) -> ::std::os::raw::c_int;
2252 }
2253 extern "C" {
lrand48_r( __buffer: *mut drand48_data, __result: *mut ::std::os::raw::c_long, ) -> ::std::os::raw::c_int2254     pub fn lrand48_r(
2255         __buffer: *mut drand48_data,
2256         __result: *mut ::std::os::raw::c_long,
2257     ) -> ::std::os::raw::c_int;
2258 }
2259 extern "C" {
nrand48_r( __xsubi: *mut ::std::os::raw::c_ushort, __buffer: *mut drand48_data, __result: *mut ::std::os::raw::c_long, ) -> ::std::os::raw::c_int2260     pub fn nrand48_r(
2261         __xsubi: *mut ::std::os::raw::c_ushort,
2262         __buffer: *mut drand48_data,
2263         __result: *mut ::std::os::raw::c_long,
2264     ) -> ::std::os::raw::c_int;
2265 }
2266 extern "C" {
mrand48_r( __buffer: *mut drand48_data, __result: *mut ::std::os::raw::c_long, ) -> ::std::os::raw::c_int2267     pub fn mrand48_r(
2268         __buffer: *mut drand48_data,
2269         __result: *mut ::std::os::raw::c_long,
2270     ) -> ::std::os::raw::c_int;
2271 }
2272 extern "C" {
jrand48_r( __xsubi: *mut ::std::os::raw::c_ushort, __buffer: *mut drand48_data, __result: *mut ::std::os::raw::c_long, ) -> ::std::os::raw::c_int2273     pub fn jrand48_r(
2274         __xsubi: *mut ::std::os::raw::c_ushort,
2275         __buffer: *mut drand48_data,
2276         __result: *mut ::std::os::raw::c_long,
2277     ) -> ::std::os::raw::c_int;
2278 }
2279 extern "C" {
srand48_r( __seedval: ::std::os::raw::c_long, __buffer: *mut drand48_data, ) -> ::std::os::raw::c_int2280     pub fn srand48_r(
2281         __seedval: ::std::os::raw::c_long,
2282         __buffer: *mut drand48_data,
2283     ) -> ::std::os::raw::c_int;
2284 }
2285 extern "C" {
seed48_r( __seed16v: *mut ::std::os::raw::c_ushort, __buffer: *mut drand48_data, ) -> ::std::os::raw::c_int2286     pub fn seed48_r(
2287         __seed16v: *mut ::std::os::raw::c_ushort,
2288         __buffer: *mut drand48_data,
2289     ) -> ::std::os::raw::c_int;
2290 }
2291 extern "C" {
lcong48_r( __param: *mut ::std::os::raw::c_ushort, __buffer: *mut drand48_data, ) -> ::std::os::raw::c_int2292     pub fn lcong48_r(
2293         __param: *mut ::std::os::raw::c_ushort,
2294         __buffer: *mut drand48_data,
2295     ) -> ::std::os::raw::c_int;
2296 }
2297 extern "C" {
malloc(__size: usize) -> *mut ::std::os::raw::c_void2298     pub fn malloc(__size: usize) -> *mut ::std::os::raw::c_void;
2299 }
2300 extern "C" {
calloc(__nmemb: usize, __size: usize) -> *mut ::std::os::raw::c_void2301     pub fn calloc(__nmemb: usize, __size: usize) -> *mut ::std::os::raw::c_void;
2302 }
2303 extern "C" {
realloc( __ptr: *mut ::std::os::raw::c_void, __size: usize, ) -> *mut ::std::os::raw::c_void2304     pub fn realloc(
2305         __ptr: *mut ::std::os::raw::c_void,
2306         __size: usize,
2307     ) -> *mut ::std::os::raw::c_void;
2308 }
2309 extern "C" {
free(__ptr: *mut ::std::os::raw::c_void)2310     pub fn free(__ptr: *mut ::std::os::raw::c_void);
2311 }
2312 extern "C" {
cfree(__ptr: *mut ::std::os::raw::c_void)2313     pub fn cfree(__ptr: *mut ::std::os::raw::c_void);
2314 }
2315 extern "C" {
alloca(__size: usize) -> *mut ::std::os::raw::c_void2316     pub fn alloca(__size: usize) -> *mut ::std::os::raw::c_void;
2317 }
2318 extern "C" {
valloc(__size: usize) -> *mut ::std::os::raw::c_void2319     pub fn valloc(__size: usize) -> *mut ::std::os::raw::c_void;
2320 }
2321 extern "C" {
posix_memalign( __memptr: *mut *mut ::std::os::raw::c_void, __alignment: usize, __size: usize, ) -> ::std::os::raw::c_int2322     pub fn posix_memalign(
2323         __memptr: *mut *mut ::std::os::raw::c_void,
2324         __alignment: usize,
2325         __size: usize,
2326     ) -> ::std::os::raw::c_int;
2327 }
2328 extern "C" {
aligned_alloc(__alignment: usize, __size: usize) -> *mut ::std::os::raw::c_void2329     pub fn aligned_alloc(__alignment: usize, __size: usize) -> *mut ::std::os::raw::c_void;
2330 }
2331 extern "C" {
abort()2332     pub fn abort();
2333 }
2334 extern "C" {
atexit(__func: ::std::option::Option<unsafe extern "C" fn()>) -> ::std::os::raw::c_int2335     pub fn atexit(__func: ::std::option::Option<unsafe extern "C" fn()>) -> ::std::os::raw::c_int;
2336 }
2337 extern "C" {
at_quick_exit( __func: ::std::option::Option<unsafe extern "C" fn()>, ) -> ::std::os::raw::c_int2338     pub fn at_quick_exit(
2339         __func: ::std::option::Option<unsafe extern "C" fn()>,
2340     ) -> ::std::os::raw::c_int;
2341 }
2342 extern "C" {
on_exit( __func: ::std::option::Option< unsafe extern "C" fn( __status: ::std::os::raw::c_int, __arg: *mut ::std::os::raw::c_void, ), >, __arg: *mut ::std::os::raw::c_void, ) -> ::std::os::raw::c_int2343     pub fn on_exit(
2344         __func: ::std::option::Option<
2345             unsafe extern "C" fn(
2346                 __status: ::std::os::raw::c_int,
2347                 __arg: *mut ::std::os::raw::c_void,
2348             ),
2349         >,
2350         __arg: *mut ::std::os::raw::c_void,
2351     ) -> ::std::os::raw::c_int;
2352 }
2353 extern "C" {
exit(__status: ::std::os::raw::c_int)2354     pub fn exit(__status: ::std::os::raw::c_int);
2355 }
2356 extern "C" {
quick_exit(__status: ::std::os::raw::c_int)2357     pub fn quick_exit(__status: ::std::os::raw::c_int);
2358 }
2359 extern "C" {
_Exit(__status: ::std::os::raw::c_int)2360     pub fn _Exit(__status: ::std::os::raw::c_int);
2361 }
2362 extern "C" {
getenv(__name: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char2363     pub fn getenv(__name: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
2364 }
2365 extern "C" {
putenv(__string: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int2366     pub fn putenv(__string: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int;
2367 }
2368 extern "C" {
setenv( __name: *const ::std::os::raw::c_char, __value: *const ::std::os::raw::c_char, __replace: ::std::os::raw::c_int, ) -> ::std::os::raw::c_int2369     pub fn setenv(
2370         __name: *const ::std::os::raw::c_char,
2371         __value: *const ::std::os::raw::c_char,
2372         __replace: ::std::os::raw::c_int,
2373     ) -> ::std::os::raw::c_int;
2374 }
2375 extern "C" {
unsetenv(__name: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int2376     pub fn unsetenv(__name: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
2377 }
2378 extern "C" {
clearenv() -> ::std::os::raw::c_int2379     pub fn clearenv() -> ::std::os::raw::c_int;
2380 }
2381 extern "C" {
mktemp(__template: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char2382     pub fn mktemp(__template: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
2383 }
2384 extern "C" {
mkstemp(__template: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int2385     pub fn mkstemp(__template: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int;
2386 }
2387 extern "C" {
mkstemps( __template: *mut ::std::os::raw::c_char, __suffixlen: ::std::os::raw::c_int, ) -> ::std::os::raw::c_int2388     pub fn mkstemps(
2389         __template: *mut ::std::os::raw::c_char,
2390         __suffixlen: ::std::os::raw::c_int,
2391     ) -> ::std::os::raw::c_int;
2392 }
2393 extern "C" {
mkdtemp(__template: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char2394     pub fn mkdtemp(__template: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
2395 }
2396 extern "C" {
system(__command: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int2397     pub fn system(__command: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
2398 }
2399 extern "C" {
realpath( __name: *const ::std::os::raw::c_char, __resolved: *mut ::std::os::raw::c_char, ) -> *mut ::std::os::raw::c_char2400     pub fn realpath(
2401         __name: *const ::std::os::raw::c_char,
2402         __resolved: *mut ::std::os::raw::c_char,
2403     ) -> *mut ::std::os::raw::c_char;
2404 }
2405 pub type __compar_fn_t = ::std::option::Option<
2406     unsafe extern "C" fn(arg1: *const ::std::os::raw::c_void, arg2: *const ::std::os::raw::c_void)
2407         -> ::std::os::raw::c_int,
2408 >;
2409 extern "C" {
bsearch( __key: *const ::std::os::raw::c_void, __base: *const ::std::os::raw::c_void, __nmemb: usize, __size: usize, __compar: __compar_fn_t, ) -> *mut ::std::os::raw::c_void2410     pub fn bsearch(
2411         __key: *const ::std::os::raw::c_void,
2412         __base: *const ::std::os::raw::c_void,
2413         __nmemb: usize,
2414         __size: usize,
2415         __compar: __compar_fn_t,
2416     ) -> *mut ::std::os::raw::c_void;
2417 }
2418 extern "C" {
qsort( __base: *mut ::std::os::raw::c_void, __nmemb: usize, __size: usize, __compar: __compar_fn_t, )2419     pub fn qsort(
2420         __base: *mut ::std::os::raw::c_void,
2421         __nmemb: usize,
2422         __size: usize,
2423         __compar: __compar_fn_t,
2424     );
2425 }
2426 extern "C" {
abs(__x: ::std::os::raw::c_int) -> ::std::os::raw::c_int2427     pub fn abs(__x: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
2428 }
2429 extern "C" {
labs(__x: ::std::os::raw::c_long) -> ::std::os::raw::c_long2430     pub fn labs(__x: ::std::os::raw::c_long) -> ::std::os::raw::c_long;
2431 }
2432 extern "C" {
llabs(__x: ::std::os::raw::c_longlong) -> ::std::os::raw::c_longlong2433     pub fn llabs(__x: ::std::os::raw::c_longlong) -> ::std::os::raw::c_longlong;
2434 }
2435 extern "C" {
div(__numer: ::std::os::raw::c_int, __denom: ::std::os::raw::c_int) -> div_t2436     pub fn div(__numer: ::std::os::raw::c_int, __denom: ::std::os::raw::c_int) -> div_t;
2437 }
2438 extern "C" {
ldiv(__numer: ::std::os::raw::c_long, __denom: ::std::os::raw::c_long) -> ldiv_t2439     pub fn ldiv(__numer: ::std::os::raw::c_long, __denom: ::std::os::raw::c_long) -> ldiv_t;
2440 }
2441 extern "C" {
lldiv( __numer: ::std::os::raw::c_longlong, __denom: ::std::os::raw::c_longlong, ) -> lldiv_t2442     pub fn lldiv(
2443         __numer: ::std::os::raw::c_longlong,
2444         __denom: ::std::os::raw::c_longlong,
2445     ) -> lldiv_t;
2446 }
2447 extern "C" {
ecvt( __value: f64, __ndigit: ::std::os::raw::c_int, __decpt: *mut ::std::os::raw::c_int, __sign: *mut ::std::os::raw::c_int, ) -> *mut ::std::os::raw::c_char2448     pub fn ecvt(
2449         __value: f64,
2450         __ndigit: ::std::os::raw::c_int,
2451         __decpt: *mut ::std::os::raw::c_int,
2452         __sign: *mut ::std::os::raw::c_int,
2453     ) -> *mut ::std::os::raw::c_char;
2454 }
2455 extern "C" {
fcvt( __value: f64, __ndigit: ::std::os::raw::c_int, __decpt: *mut ::std::os::raw::c_int, __sign: *mut ::std::os::raw::c_int, ) -> *mut ::std::os::raw::c_char2456     pub fn fcvt(
2457         __value: f64,
2458         __ndigit: ::std::os::raw::c_int,
2459         __decpt: *mut ::std::os::raw::c_int,
2460         __sign: *mut ::std::os::raw::c_int,
2461     ) -> *mut ::std::os::raw::c_char;
2462 }
2463 extern "C" {
gcvt( __value: f64, __ndigit: ::std::os::raw::c_int, __buf: *mut ::std::os::raw::c_char, ) -> *mut ::std::os::raw::c_char2464     pub fn gcvt(
2465         __value: f64,
2466         __ndigit: ::std::os::raw::c_int,
2467         __buf: *mut ::std::os::raw::c_char,
2468     ) -> *mut ::std::os::raw::c_char;
2469 }
2470 extern "C" {
qecvt( __value: f64, __ndigit: ::std::os::raw::c_int, __decpt: *mut ::std::os::raw::c_int, __sign: *mut ::std::os::raw::c_int, ) -> *mut ::std::os::raw::c_char2471     pub fn qecvt(
2472         __value: f64,
2473         __ndigit: ::std::os::raw::c_int,
2474         __decpt: *mut ::std::os::raw::c_int,
2475         __sign: *mut ::std::os::raw::c_int,
2476     ) -> *mut ::std::os::raw::c_char;
2477 }
2478 extern "C" {
qfcvt( __value: f64, __ndigit: ::std::os::raw::c_int, __decpt: *mut ::std::os::raw::c_int, __sign: *mut ::std::os::raw::c_int, ) -> *mut ::std::os::raw::c_char2479     pub fn qfcvt(
2480         __value: f64,
2481         __ndigit: ::std::os::raw::c_int,
2482         __decpt: *mut ::std::os::raw::c_int,
2483         __sign: *mut ::std::os::raw::c_int,
2484     ) -> *mut ::std::os::raw::c_char;
2485 }
2486 extern "C" {
qgcvt( __value: f64, __ndigit: ::std::os::raw::c_int, __buf: *mut ::std::os::raw::c_char, ) -> *mut ::std::os::raw::c_char2487     pub fn qgcvt(
2488         __value: f64,
2489         __ndigit: ::std::os::raw::c_int,
2490         __buf: *mut ::std::os::raw::c_char,
2491     ) -> *mut ::std::os::raw::c_char;
2492 }
2493 extern "C" {
ecvt_r( __value: f64, __ndigit: ::std::os::raw::c_int, __decpt: *mut ::std::os::raw::c_int, __sign: *mut ::std::os::raw::c_int, __buf: *mut ::std::os::raw::c_char, __len: usize, ) -> ::std::os::raw::c_int2494     pub fn ecvt_r(
2495         __value: f64,
2496         __ndigit: ::std::os::raw::c_int,
2497         __decpt: *mut ::std::os::raw::c_int,
2498         __sign: *mut ::std::os::raw::c_int,
2499         __buf: *mut ::std::os::raw::c_char,
2500         __len: usize,
2501     ) -> ::std::os::raw::c_int;
2502 }
2503 extern "C" {
fcvt_r( __value: f64, __ndigit: ::std::os::raw::c_int, __decpt: *mut ::std::os::raw::c_int, __sign: *mut ::std::os::raw::c_int, __buf: *mut ::std::os::raw::c_char, __len: usize, ) -> ::std::os::raw::c_int2504     pub fn fcvt_r(
2505         __value: f64,
2506         __ndigit: ::std::os::raw::c_int,
2507         __decpt: *mut ::std::os::raw::c_int,
2508         __sign: *mut ::std::os::raw::c_int,
2509         __buf: *mut ::std::os::raw::c_char,
2510         __len: usize,
2511     ) -> ::std::os::raw::c_int;
2512 }
2513 extern "C" {
qecvt_r( __value: f64, __ndigit: ::std::os::raw::c_int, __decpt: *mut ::std::os::raw::c_int, __sign: *mut ::std::os::raw::c_int, __buf: *mut ::std::os::raw::c_char, __len: usize, ) -> ::std::os::raw::c_int2514     pub fn qecvt_r(
2515         __value: f64,
2516         __ndigit: ::std::os::raw::c_int,
2517         __decpt: *mut ::std::os::raw::c_int,
2518         __sign: *mut ::std::os::raw::c_int,
2519         __buf: *mut ::std::os::raw::c_char,
2520         __len: usize,
2521     ) -> ::std::os::raw::c_int;
2522 }
2523 extern "C" {
qfcvt_r( __value: f64, __ndigit: ::std::os::raw::c_int, __decpt: *mut ::std::os::raw::c_int, __sign: *mut ::std::os::raw::c_int, __buf: *mut ::std::os::raw::c_char, __len: usize, ) -> ::std::os::raw::c_int2524     pub fn qfcvt_r(
2525         __value: f64,
2526         __ndigit: ::std::os::raw::c_int,
2527         __decpt: *mut ::std::os::raw::c_int,
2528         __sign: *mut ::std::os::raw::c_int,
2529         __buf: *mut ::std::os::raw::c_char,
2530         __len: usize,
2531     ) -> ::std::os::raw::c_int;
2532 }
2533 extern "C" {
mblen(__s: *const ::std::os::raw::c_char, __n: usize) -> ::std::os::raw::c_int2534     pub fn mblen(__s: *const ::std::os::raw::c_char, __n: usize) -> ::std::os::raw::c_int;
2535 }
2536 extern "C" {
mbtowc( __pwc: *mut wchar_t, __s: *const ::std::os::raw::c_char, __n: usize, ) -> ::std::os::raw::c_int2537     pub fn mbtowc(
2538         __pwc: *mut wchar_t,
2539         __s: *const ::std::os::raw::c_char,
2540         __n: usize,
2541     ) -> ::std::os::raw::c_int;
2542 }
2543 extern "C" {
wctomb(__s: *mut ::std::os::raw::c_char, __wchar: wchar_t) -> ::std::os::raw::c_int2544     pub fn wctomb(__s: *mut ::std::os::raw::c_char, __wchar: wchar_t) -> ::std::os::raw::c_int;
2545 }
2546 extern "C" {
mbstowcs(__pwcs: *mut wchar_t, __s: *const ::std::os::raw::c_char, __n: usize) -> usize2547     pub fn mbstowcs(__pwcs: *mut wchar_t, __s: *const ::std::os::raw::c_char, __n: usize) -> usize;
2548 }
2549 extern "C" {
wcstombs(__s: *mut ::std::os::raw::c_char, __pwcs: *const wchar_t, __n: usize) -> usize2550     pub fn wcstombs(__s: *mut ::std::os::raw::c_char, __pwcs: *const wchar_t, __n: usize) -> usize;
2551 }
2552 extern "C" {
rpmatch(__response: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int2553     pub fn rpmatch(__response: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
2554 }
2555 extern "C" {
getsubopt( __optionp: *mut *mut ::std::os::raw::c_char, __tokens: *const *const ::std::os::raw::c_char, __valuep: *mut *mut ::std::os::raw::c_char, ) -> ::std::os::raw::c_int2556     pub fn getsubopt(
2557         __optionp: *mut *mut ::std::os::raw::c_char,
2558         __tokens: *const *const ::std::os::raw::c_char,
2559         __valuep: *mut *mut ::std::os::raw::c_char,
2560     ) -> ::std::os::raw::c_int;
2561 }
2562 extern "C" {
getloadavg(__loadavg: *mut f64, __nelem: ::std::os::raw::c_int) -> ::std::os::raw::c_int2563     pub fn getloadavg(__loadavg: *mut f64, __nelem: ::std::os::raw::c_int)
2564         -> ::std::os::raw::c_int;
2565 }
2566 /// *
2567 /// Digital audio interface					    *
2568 /// *
2569 #[repr(C)]
2570 #[derive(Copy, Clone)]
2571 pub struct snd_aes_iec958 {
2572     pub status: [::std::os::raw::c_uchar; 24usize],
2573     pub subcode: [::std::os::raw::c_uchar; 147usize],
2574     pub pad: ::std::os::raw::c_uchar,
2575     pub dig_subframe: [::std::os::raw::c_uchar; 4usize],
2576 }
2577 #[test]
bindgen_test_layout_snd_aes_iec958()2578 fn bindgen_test_layout_snd_aes_iec958() {
2579     assert_eq!(
2580         ::std::mem::size_of::<snd_aes_iec958>(),
2581         176usize,
2582         concat!("Size of: ", stringify!(snd_aes_iec958))
2583     );
2584     assert_eq!(
2585         ::std::mem::align_of::<snd_aes_iec958>(),
2586         1usize,
2587         concat!("Alignment of ", stringify!(snd_aes_iec958))
2588     );
2589     assert_eq!(
2590         unsafe { &(*(::std::ptr::null::<snd_aes_iec958>())).status as *const _ as usize },
2591         0usize,
2592         concat!(
2593             "Offset of field: ",
2594             stringify!(snd_aes_iec958),
2595             "::",
2596             stringify!(status)
2597         )
2598     );
2599     assert_eq!(
2600         unsafe { &(*(::std::ptr::null::<snd_aes_iec958>())).subcode as *const _ as usize },
2601         24usize,
2602         concat!(
2603             "Offset of field: ",
2604             stringify!(snd_aes_iec958),
2605             "::",
2606             stringify!(subcode)
2607         )
2608     );
2609     assert_eq!(
2610         unsafe { &(*(::std::ptr::null::<snd_aes_iec958>())).pad as *const _ as usize },
2611         171usize,
2612         concat!(
2613             "Offset of field: ",
2614             stringify!(snd_aes_iec958),
2615             "::",
2616             stringify!(pad)
2617         )
2618     );
2619     assert_eq!(
2620         unsafe { &(*(::std::ptr::null::<snd_aes_iec958>())).dig_subframe as *const _ as usize },
2621         172usize,
2622         concat!(
2623             "Offset of field: ",
2624             stringify!(snd_aes_iec958),
2625             "::",
2626             stringify!(dig_subframe)
2627         )
2628     );
2629 }
2630 /// *
2631 /// CEA-861 Audio InfoFrame. Used in HDMI and DisplayPort		    *
2632 /// *
2633 #[repr(C)]
2634 #[derive(Debug, Copy, Clone)]
2635 pub struct snd_cea_861_aud_if {
2636     pub db1_ct_cc: ::std::os::raw::c_uchar,
2637     pub db2_sf_ss: ::std::os::raw::c_uchar,
2638     pub db3: ::std::os::raw::c_uchar,
2639     pub db4_ca: ::std::os::raw::c_uchar,
2640     pub db5_dminh_lsv: ::std::os::raw::c_uchar,
2641 }
2642 #[test]
bindgen_test_layout_snd_cea_861_aud_if()2643 fn bindgen_test_layout_snd_cea_861_aud_if() {
2644     assert_eq!(
2645         ::std::mem::size_of::<snd_cea_861_aud_if>(),
2646         5usize,
2647         concat!("Size of: ", stringify!(snd_cea_861_aud_if))
2648     );
2649     assert_eq!(
2650         ::std::mem::align_of::<snd_cea_861_aud_if>(),
2651         1usize,
2652         concat!("Alignment of ", stringify!(snd_cea_861_aud_if))
2653     );
2654     assert_eq!(
2655         unsafe { &(*(::std::ptr::null::<snd_cea_861_aud_if>())).db1_ct_cc as *const _ as usize },
2656         0usize,
2657         concat!(
2658             "Offset of field: ",
2659             stringify!(snd_cea_861_aud_if),
2660             "::",
2661             stringify!(db1_ct_cc)
2662         )
2663     );
2664     assert_eq!(
2665         unsafe { &(*(::std::ptr::null::<snd_cea_861_aud_if>())).db2_sf_ss as *const _ as usize },
2666         1usize,
2667         concat!(
2668             "Offset of field: ",
2669             stringify!(snd_cea_861_aud_if),
2670             "::",
2671             stringify!(db2_sf_ss)
2672         )
2673     );
2674     assert_eq!(
2675         unsafe { &(*(::std::ptr::null::<snd_cea_861_aud_if>())).db3 as *const _ as usize },
2676         2usize,
2677         concat!(
2678             "Offset of field: ",
2679             stringify!(snd_cea_861_aud_if),
2680             "::",
2681             stringify!(db3)
2682         )
2683     );
2684     assert_eq!(
2685         unsafe { &(*(::std::ptr::null::<snd_cea_861_aud_if>())).db4_ca as *const _ as usize },
2686         3usize,
2687         concat!(
2688             "Offset of field: ",
2689             stringify!(snd_cea_861_aud_if),
2690             "::",
2691             stringify!(db4_ca)
2692         )
2693     );
2694     assert_eq!(
2695         unsafe {
2696             &(*(::std::ptr::null::<snd_cea_861_aud_if>())).db5_dminh_lsv as *const _ as usize
2697         },
2698         4usize,
2699         concat!(
2700             "Offset of field: ",
2701             stringify!(snd_cea_861_aud_if),
2702             "::",
2703             stringify!(db5_dminh_lsv)
2704         )
2705     );
2706 }
2707 pub const SNDRV_HWDEP_IFACE_OPL2: _bindgen_ty_1 = 0;
2708 pub const SNDRV_HWDEP_IFACE_OPL3: _bindgen_ty_1 = 1;
2709 pub const SNDRV_HWDEP_IFACE_OPL4: _bindgen_ty_1 = 2;
2710 pub const SNDRV_HWDEP_IFACE_SB16CSP: _bindgen_ty_1 = 3;
2711 pub const SNDRV_HWDEP_IFACE_EMU10K1: _bindgen_ty_1 = 4;
2712 pub const SNDRV_HWDEP_IFACE_YSS225: _bindgen_ty_1 = 5;
2713 pub const SNDRV_HWDEP_IFACE_ICS2115: _bindgen_ty_1 = 6;
2714 pub const SNDRV_HWDEP_IFACE_SSCAPE: _bindgen_ty_1 = 7;
2715 pub const SNDRV_HWDEP_IFACE_VX: _bindgen_ty_1 = 8;
2716 pub const SNDRV_HWDEP_IFACE_MIXART: _bindgen_ty_1 = 9;
2717 pub const SNDRV_HWDEP_IFACE_USX2Y: _bindgen_ty_1 = 10;
2718 pub const SNDRV_HWDEP_IFACE_EMUX_WAVETABLE: _bindgen_ty_1 = 11;
2719 pub const SNDRV_HWDEP_IFACE_BLUETOOTH: _bindgen_ty_1 = 12;
2720 pub const SNDRV_HWDEP_IFACE_USX2Y_PCM: _bindgen_ty_1 = 13;
2721 pub const SNDRV_HWDEP_IFACE_PCXHR: _bindgen_ty_1 = 14;
2722 pub const SNDRV_HWDEP_IFACE_SB_RC: _bindgen_ty_1 = 15;
2723 pub const SNDRV_HWDEP_IFACE_HDA: _bindgen_ty_1 = 16;
2724 pub const SNDRV_HWDEP_IFACE_USB_STREAM: _bindgen_ty_1 = 17;
2725 pub const SNDRV_HWDEP_IFACE_FW_DICE: _bindgen_ty_1 = 18;
2726 pub const SNDRV_HWDEP_IFACE_FW_FIREWORKS: _bindgen_ty_1 = 19;
2727 pub const SNDRV_HWDEP_IFACE_FW_BEBOB: _bindgen_ty_1 = 20;
2728 pub const SNDRV_HWDEP_IFACE_FW_OXFW: _bindgen_ty_1 = 21;
2729 pub const SNDRV_HWDEP_IFACE_FW_DIGI00X: _bindgen_ty_1 = 22;
2730 pub const SNDRV_HWDEP_IFACE_FW_TASCAM: _bindgen_ty_1 = 23;
2731 pub const SNDRV_HWDEP_IFACE_LINE6: _bindgen_ty_1 = 24;
2732 pub const SNDRV_HWDEP_IFACE_FW_MOTU: _bindgen_ty_1 = 25;
2733 pub const SNDRV_HWDEP_IFACE_FW_FIREFACE: _bindgen_ty_1 = 26;
2734 pub const SNDRV_HWDEP_IFACE_LAST: _bindgen_ty_1 = 26;
2735 pub type _bindgen_ty_1 = u32;
2736 #[repr(C)]
2737 #[derive(Copy, Clone)]
2738 pub struct snd_hwdep_info {
2739     pub device: ::std::os::raw::c_uint,
2740     pub card: ::std::os::raw::c_int,
2741     pub id: [::std::os::raw::c_uchar; 64usize],
2742     pub name: [::std::os::raw::c_uchar; 80usize],
2743     pub iface: ::std::os::raw::c_int,
2744     pub reserved: [::std::os::raw::c_uchar; 64usize],
2745 }
2746 #[test]
bindgen_test_layout_snd_hwdep_info()2747 fn bindgen_test_layout_snd_hwdep_info() {
2748     assert_eq!(
2749         ::std::mem::size_of::<snd_hwdep_info>(),
2750         220usize,
2751         concat!("Size of: ", stringify!(snd_hwdep_info))
2752     );
2753     assert_eq!(
2754         ::std::mem::align_of::<snd_hwdep_info>(),
2755         4usize,
2756         concat!("Alignment of ", stringify!(snd_hwdep_info))
2757     );
2758     assert_eq!(
2759         unsafe { &(*(::std::ptr::null::<snd_hwdep_info>())).device as *const _ as usize },
2760         0usize,
2761         concat!(
2762             "Offset of field: ",
2763             stringify!(snd_hwdep_info),
2764             "::",
2765             stringify!(device)
2766         )
2767     );
2768     assert_eq!(
2769         unsafe { &(*(::std::ptr::null::<snd_hwdep_info>())).card as *const _ as usize },
2770         4usize,
2771         concat!(
2772             "Offset of field: ",
2773             stringify!(snd_hwdep_info),
2774             "::",
2775             stringify!(card)
2776         )
2777     );
2778     assert_eq!(
2779         unsafe { &(*(::std::ptr::null::<snd_hwdep_info>())).id as *const _ as usize },
2780         8usize,
2781         concat!(
2782             "Offset of field: ",
2783             stringify!(snd_hwdep_info),
2784             "::",
2785             stringify!(id)
2786         )
2787     );
2788     assert_eq!(
2789         unsafe { &(*(::std::ptr::null::<snd_hwdep_info>())).name as *const _ as usize },
2790         72usize,
2791         concat!(
2792             "Offset of field: ",
2793             stringify!(snd_hwdep_info),
2794             "::",
2795             stringify!(name)
2796         )
2797     );
2798     assert_eq!(
2799         unsafe { &(*(::std::ptr::null::<snd_hwdep_info>())).iface as *const _ as usize },
2800         152usize,
2801         concat!(
2802             "Offset of field: ",
2803             stringify!(snd_hwdep_info),
2804             "::",
2805             stringify!(iface)
2806         )
2807     );
2808     assert_eq!(
2809         unsafe { &(*(::std::ptr::null::<snd_hwdep_info>())).reserved as *const _ as usize },
2810         156usize,
2811         concat!(
2812             "Offset of field: ",
2813             stringify!(snd_hwdep_info),
2814             "::",
2815             stringify!(reserved)
2816         )
2817     );
2818 }
2819 #[repr(C)]
2820 #[derive(Debug, Copy, Clone)]
2821 pub struct snd_hwdep_dsp_status {
2822     pub version: ::std::os::raw::c_uint,
2823     pub id: [::std::os::raw::c_uchar; 32usize],
2824     pub num_dsps: ::std::os::raw::c_uint,
2825     pub dsp_loaded: ::std::os::raw::c_uint,
2826     pub chip_ready: ::std::os::raw::c_uint,
2827     pub reserved: [::std::os::raw::c_uchar; 16usize],
2828 }
2829 #[test]
bindgen_test_layout_snd_hwdep_dsp_status()2830 fn bindgen_test_layout_snd_hwdep_dsp_status() {
2831     assert_eq!(
2832         ::std::mem::size_of::<snd_hwdep_dsp_status>(),
2833         64usize,
2834         concat!("Size of: ", stringify!(snd_hwdep_dsp_status))
2835     );
2836     assert_eq!(
2837         ::std::mem::align_of::<snd_hwdep_dsp_status>(),
2838         4usize,
2839         concat!("Alignment of ", stringify!(snd_hwdep_dsp_status))
2840     );
2841     assert_eq!(
2842         unsafe { &(*(::std::ptr::null::<snd_hwdep_dsp_status>())).version as *const _ as usize },
2843         0usize,
2844         concat!(
2845             "Offset of field: ",
2846             stringify!(snd_hwdep_dsp_status),
2847             "::",
2848             stringify!(version)
2849         )
2850     );
2851     assert_eq!(
2852         unsafe { &(*(::std::ptr::null::<snd_hwdep_dsp_status>())).id as *const _ as usize },
2853         4usize,
2854         concat!(
2855             "Offset of field: ",
2856             stringify!(snd_hwdep_dsp_status),
2857             "::",
2858             stringify!(id)
2859         )
2860     );
2861     assert_eq!(
2862         unsafe { &(*(::std::ptr::null::<snd_hwdep_dsp_status>())).num_dsps as *const _ as usize },
2863         36usize,
2864         concat!(
2865             "Offset of field: ",
2866             stringify!(snd_hwdep_dsp_status),
2867             "::",
2868             stringify!(num_dsps)
2869         )
2870     );
2871     assert_eq!(
2872         unsafe { &(*(::std::ptr::null::<snd_hwdep_dsp_status>())).dsp_loaded as *const _ as usize },
2873         40usize,
2874         concat!(
2875             "Offset of field: ",
2876             stringify!(snd_hwdep_dsp_status),
2877             "::",
2878             stringify!(dsp_loaded)
2879         )
2880     );
2881     assert_eq!(
2882         unsafe { &(*(::std::ptr::null::<snd_hwdep_dsp_status>())).chip_ready as *const _ as usize },
2883         44usize,
2884         concat!(
2885             "Offset of field: ",
2886             stringify!(snd_hwdep_dsp_status),
2887             "::",
2888             stringify!(chip_ready)
2889         )
2890     );
2891     assert_eq!(
2892         unsafe { &(*(::std::ptr::null::<snd_hwdep_dsp_status>())).reserved as *const _ as usize },
2893         48usize,
2894         concat!(
2895             "Offset of field: ",
2896             stringify!(snd_hwdep_dsp_status),
2897             "::",
2898             stringify!(reserved)
2899         )
2900     );
2901 }
2902 #[repr(C)]
2903 #[derive(Copy, Clone)]
2904 pub struct snd_hwdep_dsp_image {
2905     pub index: ::std::os::raw::c_uint,
2906     pub name: [::std::os::raw::c_uchar; 64usize],
2907     pub image: *mut ::std::os::raw::c_uchar,
2908     pub length: usize,
2909     pub driver_data: ::std::os::raw::c_ulong,
2910 }
2911 #[test]
bindgen_test_layout_snd_hwdep_dsp_image()2912 fn bindgen_test_layout_snd_hwdep_dsp_image() {
2913     assert_eq!(
2914         ::std::mem::size_of::<snd_hwdep_dsp_image>(),
2915         96usize,
2916         concat!("Size of: ", stringify!(snd_hwdep_dsp_image))
2917     );
2918     assert_eq!(
2919         ::std::mem::align_of::<snd_hwdep_dsp_image>(),
2920         8usize,
2921         concat!("Alignment of ", stringify!(snd_hwdep_dsp_image))
2922     );
2923     assert_eq!(
2924         unsafe { &(*(::std::ptr::null::<snd_hwdep_dsp_image>())).index as *const _ as usize },
2925         0usize,
2926         concat!(
2927             "Offset of field: ",
2928             stringify!(snd_hwdep_dsp_image),
2929             "::",
2930             stringify!(index)
2931         )
2932     );
2933     assert_eq!(
2934         unsafe { &(*(::std::ptr::null::<snd_hwdep_dsp_image>())).name as *const _ as usize },
2935         4usize,
2936         concat!(
2937             "Offset of field: ",
2938             stringify!(snd_hwdep_dsp_image),
2939             "::",
2940             stringify!(name)
2941         )
2942     );
2943     assert_eq!(
2944         unsafe { &(*(::std::ptr::null::<snd_hwdep_dsp_image>())).image as *const _ as usize },
2945         72usize,
2946         concat!(
2947             "Offset of field: ",
2948             stringify!(snd_hwdep_dsp_image),
2949             "::",
2950             stringify!(image)
2951         )
2952     );
2953     assert_eq!(
2954         unsafe { &(*(::std::ptr::null::<snd_hwdep_dsp_image>())).length as *const _ as usize },
2955         80usize,
2956         concat!(
2957             "Offset of field: ",
2958             stringify!(snd_hwdep_dsp_image),
2959             "::",
2960             stringify!(length)
2961         )
2962     );
2963     assert_eq!(
2964         unsafe { &(*(::std::ptr::null::<snd_hwdep_dsp_image>())).driver_data as *const _ as usize },
2965         88usize,
2966         concat!(
2967             "Offset of field: ",
2968             stringify!(snd_hwdep_dsp_image),
2969             "::",
2970             stringify!(driver_data)
2971         )
2972     );
2973 }
2974 pub type snd_pcm_uframes_t = ::std::os::raw::c_ulong;
2975 pub type snd_pcm_sframes_t = ::std::os::raw::c_long;
2976 pub const SNDRV_PCM_CLASS_GENERIC: _bindgen_ty_2 = 0;
2977 pub const SNDRV_PCM_CLASS_MULTI: _bindgen_ty_2 = 1;
2978 pub const SNDRV_PCM_CLASS_MODEM: _bindgen_ty_2 = 2;
2979 pub const SNDRV_PCM_CLASS_DIGITIZER: _bindgen_ty_2 = 3;
2980 pub const SNDRV_PCM_CLASS_LAST: _bindgen_ty_2 = 3;
2981 pub type _bindgen_ty_2 = u32;
2982 pub const SNDRV_PCM_SUBCLASS_GENERIC_MIX: _bindgen_ty_3 = 0;
2983 pub const SNDRV_PCM_SUBCLASS_MULTI_MIX: _bindgen_ty_3 = 1;
2984 pub const SNDRV_PCM_SUBCLASS_LAST: _bindgen_ty_3 = 1;
2985 pub type _bindgen_ty_3 = u32;
2986 pub const SNDRV_PCM_STREAM_PLAYBACK: _bindgen_ty_4 = 0;
2987 pub const SNDRV_PCM_STREAM_CAPTURE: _bindgen_ty_4 = 1;
2988 pub const SNDRV_PCM_STREAM_LAST: _bindgen_ty_4 = 1;
2989 pub type _bindgen_ty_4 = u32;
2990 pub type snd_pcm_access_t = ::std::os::raw::c_int;
2991 pub type snd_pcm_format_t = ::std::os::raw::c_int;
2992 pub type snd_pcm_subformat_t = ::std::os::raw::c_int;
2993 pub type snd_pcm_state_t = ::std::os::raw::c_int;
2994 pub const SNDRV_PCM_MMAP_OFFSET_DATA: _bindgen_ty_5 = 0;
2995 pub const SNDRV_PCM_MMAP_OFFSET_STATUS: _bindgen_ty_5 = 2147483648;
2996 pub const SNDRV_PCM_MMAP_OFFSET_CONTROL: _bindgen_ty_5 = 2164260864;
2997 pub type _bindgen_ty_5 = u32;
2998 #[repr(C)]
2999 #[derive(Copy, Clone)]
3000 pub union snd_pcm_sync_id {
3001     pub id: [::std::os::raw::c_uchar; 16usize],
3002     pub id16: [::std::os::raw::c_ushort; 8usize],
3003     pub id32: [::std::os::raw::c_uint; 4usize],
3004     _bindgen_union_align: [u32; 4usize],
3005 }
3006 #[test]
bindgen_test_layout_snd_pcm_sync_id()3007 fn bindgen_test_layout_snd_pcm_sync_id() {
3008     assert_eq!(
3009         ::std::mem::size_of::<snd_pcm_sync_id>(),
3010         16usize,
3011         concat!("Size of: ", stringify!(snd_pcm_sync_id))
3012     );
3013     assert_eq!(
3014         ::std::mem::align_of::<snd_pcm_sync_id>(),
3015         4usize,
3016         concat!("Alignment of ", stringify!(snd_pcm_sync_id))
3017     );
3018     assert_eq!(
3019         unsafe { &(*(::std::ptr::null::<snd_pcm_sync_id>())).id as *const _ as usize },
3020         0usize,
3021         concat!(
3022             "Offset of field: ",
3023             stringify!(snd_pcm_sync_id),
3024             "::",
3025             stringify!(id)
3026         )
3027     );
3028     assert_eq!(
3029         unsafe { &(*(::std::ptr::null::<snd_pcm_sync_id>())).id16 as *const _ as usize },
3030         0usize,
3031         concat!(
3032             "Offset of field: ",
3033             stringify!(snd_pcm_sync_id),
3034             "::",
3035             stringify!(id16)
3036         )
3037     );
3038     assert_eq!(
3039         unsafe { &(*(::std::ptr::null::<snd_pcm_sync_id>())).id32 as *const _ as usize },
3040         0usize,
3041         concat!(
3042             "Offset of field: ",
3043             stringify!(snd_pcm_sync_id),
3044             "::",
3045             stringify!(id32)
3046         )
3047     );
3048 }
3049 #[repr(C)]
3050 #[derive(Copy, Clone)]
3051 pub struct snd_pcm_info {
3052     pub device: ::std::os::raw::c_uint,
3053     pub subdevice: ::std::os::raw::c_uint,
3054     pub stream: ::std::os::raw::c_int,
3055     pub card: ::std::os::raw::c_int,
3056     pub id: [::std::os::raw::c_uchar; 64usize],
3057     pub name: [::std::os::raw::c_uchar; 80usize],
3058     pub subname: [::std::os::raw::c_uchar; 32usize],
3059     pub dev_class: ::std::os::raw::c_int,
3060     pub dev_subclass: ::std::os::raw::c_int,
3061     pub subdevices_count: ::std::os::raw::c_uint,
3062     pub subdevices_avail: ::std::os::raw::c_uint,
3063     pub sync: snd_pcm_sync_id,
3064     pub reserved: [::std::os::raw::c_uchar; 64usize],
3065 }
3066 #[test]
bindgen_test_layout_snd_pcm_info()3067 fn bindgen_test_layout_snd_pcm_info() {
3068     assert_eq!(
3069         ::std::mem::size_of::<snd_pcm_info>(),
3070         288usize,
3071         concat!("Size of: ", stringify!(snd_pcm_info))
3072     );
3073     assert_eq!(
3074         ::std::mem::align_of::<snd_pcm_info>(),
3075         4usize,
3076         concat!("Alignment of ", stringify!(snd_pcm_info))
3077     );
3078     assert_eq!(
3079         unsafe { &(*(::std::ptr::null::<snd_pcm_info>())).device as *const _ as usize },
3080         0usize,
3081         concat!(
3082             "Offset of field: ",
3083             stringify!(snd_pcm_info),
3084             "::",
3085             stringify!(device)
3086         )
3087     );
3088     assert_eq!(
3089         unsafe { &(*(::std::ptr::null::<snd_pcm_info>())).subdevice as *const _ as usize },
3090         4usize,
3091         concat!(
3092             "Offset of field: ",
3093             stringify!(snd_pcm_info),
3094             "::",
3095             stringify!(subdevice)
3096         )
3097     );
3098     assert_eq!(
3099         unsafe { &(*(::std::ptr::null::<snd_pcm_info>())).stream as *const _ as usize },
3100         8usize,
3101         concat!(
3102             "Offset of field: ",
3103             stringify!(snd_pcm_info),
3104             "::",
3105             stringify!(stream)
3106         )
3107     );
3108     assert_eq!(
3109         unsafe { &(*(::std::ptr::null::<snd_pcm_info>())).card as *const _ as usize },
3110         12usize,
3111         concat!(
3112             "Offset of field: ",
3113             stringify!(snd_pcm_info),
3114             "::",
3115             stringify!(card)
3116         )
3117     );
3118     assert_eq!(
3119         unsafe { &(*(::std::ptr::null::<snd_pcm_info>())).id as *const _ as usize },
3120         16usize,
3121         concat!(
3122             "Offset of field: ",
3123             stringify!(snd_pcm_info),
3124             "::",
3125             stringify!(id)
3126         )
3127     );
3128     assert_eq!(
3129         unsafe { &(*(::std::ptr::null::<snd_pcm_info>())).name as *const _ as usize },
3130         80usize,
3131         concat!(
3132             "Offset of field: ",
3133             stringify!(snd_pcm_info),
3134             "::",
3135             stringify!(name)
3136         )
3137     );
3138     assert_eq!(
3139         unsafe { &(*(::std::ptr::null::<snd_pcm_info>())).subname as *const _ as usize },
3140         160usize,
3141         concat!(
3142             "Offset of field: ",
3143             stringify!(snd_pcm_info),
3144             "::",
3145             stringify!(subname)
3146         )
3147     );
3148     assert_eq!(
3149         unsafe { &(*(::std::ptr::null::<snd_pcm_info>())).dev_class as *const _ as usize },
3150         192usize,
3151         concat!(
3152             "Offset of field: ",
3153             stringify!(snd_pcm_info),
3154             "::",
3155             stringify!(dev_class)
3156         )
3157     );
3158     assert_eq!(
3159         unsafe { &(*(::std::ptr::null::<snd_pcm_info>())).dev_subclass as *const _ as usize },
3160         196usize,
3161         concat!(
3162             "Offset of field: ",
3163             stringify!(snd_pcm_info),
3164             "::",
3165             stringify!(dev_subclass)
3166         )
3167     );
3168     assert_eq!(
3169         unsafe { &(*(::std::ptr::null::<snd_pcm_info>())).subdevices_count as *const _ as usize },
3170         200usize,
3171         concat!(
3172             "Offset of field: ",
3173             stringify!(snd_pcm_info),
3174             "::",
3175             stringify!(subdevices_count)
3176         )
3177     );
3178     assert_eq!(
3179         unsafe { &(*(::std::ptr::null::<snd_pcm_info>())).subdevices_avail as *const _ as usize },
3180         204usize,
3181         concat!(
3182             "Offset of field: ",
3183             stringify!(snd_pcm_info),
3184             "::",
3185             stringify!(subdevices_avail)
3186         )
3187     );
3188     assert_eq!(
3189         unsafe { &(*(::std::ptr::null::<snd_pcm_info>())).sync as *const _ as usize },
3190         208usize,
3191         concat!(
3192             "Offset of field: ",
3193             stringify!(snd_pcm_info),
3194             "::",
3195             stringify!(sync)
3196         )
3197     );
3198     assert_eq!(
3199         unsafe { &(*(::std::ptr::null::<snd_pcm_info>())).reserved as *const _ as usize },
3200         224usize,
3201         concat!(
3202             "Offset of field: ",
3203             stringify!(snd_pcm_info),
3204             "::",
3205             stringify!(reserved)
3206         )
3207     );
3208 }
3209 pub type snd_pcm_hw_param_t = ::std::os::raw::c_int;
3210 #[repr(C)]
3211 #[derive(Debug, Copy, Clone)]
3212 pub struct snd_interval {
3213     pub min: ::std::os::raw::c_uint,
3214     pub max: ::std::os::raw::c_uint,
3215     pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize], u8>,
3216     pub __bindgen_padding_0: [u8; 3usize],
3217 }
3218 #[test]
bindgen_test_layout_snd_interval()3219 fn bindgen_test_layout_snd_interval() {
3220     assert_eq!(
3221         ::std::mem::size_of::<snd_interval>(),
3222         12usize,
3223         concat!("Size of: ", stringify!(snd_interval))
3224     );
3225     assert_eq!(
3226         ::std::mem::align_of::<snd_interval>(),
3227         4usize,
3228         concat!("Alignment of ", stringify!(snd_interval))
3229     );
3230     assert_eq!(
3231         unsafe { &(*(::std::ptr::null::<snd_interval>())).min as *const _ as usize },
3232         0usize,
3233         concat!(
3234             "Offset of field: ",
3235             stringify!(snd_interval),
3236             "::",
3237             stringify!(min)
3238         )
3239     );
3240     assert_eq!(
3241         unsafe { &(*(::std::ptr::null::<snd_interval>())).max as *const _ as usize },
3242         4usize,
3243         concat!(
3244             "Offset of field: ",
3245             stringify!(snd_interval),
3246             "::",
3247             stringify!(max)
3248         )
3249     );
3250 }
3251 impl snd_interval {
3252     #[inline]
openmin(&self) -> ::std::os::raw::c_uint3253     pub fn openmin(&self) -> ::std::os::raw::c_uint {
3254         unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
3255     }
3256     #[inline]
set_openmin(&mut self, val: ::std::os::raw::c_uint)3257     pub fn set_openmin(&mut self, val: ::std::os::raw::c_uint) {
3258         unsafe {
3259             let val: u32 = ::std::mem::transmute(val);
3260             self._bitfield_1.set(0usize, 1u8, val as u64)
3261         }
3262     }
3263     #[inline]
openmax(&self) -> ::std::os::raw::c_uint3264     pub fn openmax(&self) -> ::std::os::raw::c_uint {
3265         unsafe { ::std::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) }
3266     }
3267     #[inline]
set_openmax(&mut self, val: ::std::os::raw::c_uint)3268     pub fn set_openmax(&mut self, val: ::std::os::raw::c_uint) {
3269         unsafe {
3270             let val: u32 = ::std::mem::transmute(val);
3271             self._bitfield_1.set(1usize, 1u8, val as u64)
3272         }
3273     }
3274     #[inline]
integer(&self) -> ::std::os::raw::c_uint3275     pub fn integer(&self) -> ::std::os::raw::c_uint {
3276         unsafe { ::std::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) }
3277     }
3278     #[inline]
set_integer(&mut self, val: ::std::os::raw::c_uint)3279     pub fn set_integer(&mut self, val: ::std::os::raw::c_uint) {
3280         unsafe {
3281             let val: u32 = ::std::mem::transmute(val);
3282             self._bitfield_1.set(2usize, 1u8, val as u64)
3283         }
3284     }
3285     #[inline]
empty(&self) -> ::std::os::raw::c_uint3286     pub fn empty(&self) -> ::std::os::raw::c_uint {
3287         unsafe { ::std::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) }
3288     }
3289     #[inline]
set_empty(&mut self, val: ::std::os::raw::c_uint)3290     pub fn set_empty(&mut self, val: ::std::os::raw::c_uint) {
3291         unsafe {
3292             let val: u32 = ::std::mem::transmute(val);
3293             self._bitfield_1.set(3usize, 1u8, val as u64)
3294         }
3295     }
3296     #[inline]
new_bitfield_1( openmin: ::std::os::raw::c_uint, openmax: ::std::os::raw::c_uint, integer: ::std::os::raw::c_uint, empty: ::std::os::raw::c_uint, ) -> __BindgenBitfieldUnit<[u8; 1usize], u8>3297     pub fn new_bitfield_1(
3298         openmin: ::std::os::raw::c_uint,
3299         openmax: ::std::os::raw::c_uint,
3300         integer: ::std::os::raw::c_uint,
3301         empty: ::std::os::raw::c_uint,
3302     ) -> __BindgenBitfieldUnit<[u8; 1usize], u8> {
3303         let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize], u8> =
3304             Default::default();
3305         __bindgen_bitfield_unit.set(0usize, 1u8, {
3306             let openmin: u32 = unsafe { ::std::mem::transmute(openmin) };
3307             openmin as u64
3308         });
3309         __bindgen_bitfield_unit.set(1usize, 1u8, {
3310             let openmax: u32 = unsafe { ::std::mem::transmute(openmax) };
3311             openmax as u64
3312         });
3313         __bindgen_bitfield_unit.set(2usize, 1u8, {
3314             let integer: u32 = unsafe { ::std::mem::transmute(integer) };
3315             integer as u64
3316         });
3317         __bindgen_bitfield_unit.set(3usize, 1u8, {
3318             let empty: u32 = unsafe { ::std::mem::transmute(empty) };
3319             empty as u64
3320         });
3321         __bindgen_bitfield_unit
3322     }
3323 }
3324 #[repr(C)]
3325 #[derive(Debug, Copy, Clone)]
3326 pub struct snd_mask {
3327     pub bits: [__u32; 8usize],
3328 }
3329 #[test]
bindgen_test_layout_snd_mask()3330 fn bindgen_test_layout_snd_mask() {
3331     assert_eq!(
3332         ::std::mem::size_of::<snd_mask>(),
3333         32usize,
3334         concat!("Size of: ", stringify!(snd_mask))
3335     );
3336     assert_eq!(
3337         ::std::mem::align_of::<snd_mask>(),
3338         4usize,
3339         concat!("Alignment of ", stringify!(snd_mask))
3340     );
3341     assert_eq!(
3342         unsafe { &(*(::std::ptr::null::<snd_mask>())).bits as *const _ as usize },
3343         0usize,
3344         concat!(
3345             "Offset of field: ",
3346             stringify!(snd_mask),
3347             "::",
3348             stringify!(bits)
3349         )
3350     );
3351 }
3352 #[repr(C)]
3353 #[derive(Copy, Clone)]
3354 pub struct snd_pcm_hw_params {
3355     pub flags: ::std::os::raw::c_uint,
3356     pub masks: [snd_mask; 3usize],
3357     pub mres: [snd_mask; 5usize],
3358     pub intervals: [snd_interval; 12usize],
3359     pub ires: [snd_interval; 9usize],
3360     pub rmask: ::std::os::raw::c_uint,
3361     pub cmask: ::std::os::raw::c_uint,
3362     pub info: ::std::os::raw::c_uint,
3363     pub msbits: ::std::os::raw::c_uint,
3364     pub rate_num: ::std::os::raw::c_uint,
3365     pub rate_den: ::std::os::raw::c_uint,
3366     pub fifo_size: snd_pcm_uframes_t,
3367     pub reserved: [::std::os::raw::c_uchar; 64usize],
3368 }
3369 #[test]
bindgen_test_layout_snd_pcm_hw_params()3370 fn bindgen_test_layout_snd_pcm_hw_params() {
3371     assert_eq!(
3372         ::std::mem::size_of::<snd_pcm_hw_params>(),
3373         608usize,
3374         concat!("Size of: ", stringify!(snd_pcm_hw_params))
3375     );
3376     assert_eq!(
3377         ::std::mem::align_of::<snd_pcm_hw_params>(),
3378         8usize,
3379         concat!("Alignment of ", stringify!(snd_pcm_hw_params))
3380     );
3381     assert_eq!(
3382         unsafe { &(*(::std::ptr::null::<snd_pcm_hw_params>())).flags as *const _ as usize },
3383         0usize,
3384         concat!(
3385             "Offset of field: ",
3386             stringify!(snd_pcm_hw_params),
3387             "::",
3388             stringify!(flags)
3389         )
3390     );
3391     assert_eq!(
3392         unsafe { &(*(::std::ptr::null::<snd_pcm_hw_params>())).masks as *const _ as usize },
3393         4usize,
3394         concat!(
3395             "Offset of field: ",
3396             stringify!(snd_pcm_hw_params),
3397             "::",
3398             stringify!(masks)
3399         )
3400     );
3401     assert_eq!(
3402         unsafe { &(*(::std::ptr::null::<snd_pcm_hw_params>())).mres as *const _ as usize },
3403         100usize,
3404         concat!(
3405             "Offset of field: ",
3406             stringify!(snd_pcm_hw_params),
3407             "::",
3408             stringify!(mres)
3409         )
3410     );
3411     assert_eq!(
3412         unsafe { &(*(::std::ptr::null::<snd_pcm_hw_params>())).intervals as *const _ as usize },
3413         260usize,
3414         concat!(
3415             "Offset of field: ",
3416             stringify!(snd_pcm_hw_params),
3417             "::",
3418             stringify!(intervals)
3419         )
3420     );
3421     assert_eq!(
3422         unsafe { &(*(::std::ptr::null::<snd_pcm_hw_params>())).ires as *const _ as usize },
3423         404usize,
3424         concat!(
3425             "Offset of field: ",
3426             stringify!(snd_pcm_hw_params),
3427             "::",
3428             stringify!(ires)
3429         )
3430     );
3431     assert_eq!(
3432         unsafe { &(*(::std::ptr::null::<snd_pcm_hw_params>())).rmask as *const _ as usize },
3433         512usize,
3434         concat!(
3435             "Offset of field: ",
3436             stringify!(snd_pcm_hw_params),
3437             "::",
3438             stringify!(rmask)
3439         )
3440     );
3441     assert_eq!(
3442         unsafe { &(*(::std::ptr::null::<snd_pcm_hw_params>())).cmask as *const _ as usize },
3443         516usize,
3444         concat!(
3445             "Offset of field: ",
3446             stringify!(snd_pcm_hw_params),
3447             "::",
3448             stringify!(cmask)
3449         )
3450     );
3451     assert_eq!(
3452         unsafe { &(*(::std::ptr::null::<snd_pcm_hw_params>())).info as *const _ as usize },
3453         520usize,
3454         concat!(
3455             "Offset of field: ",
3456             stringify!(snd_pcm_hw_params),
3457             "::",
3458             stringify!(info)
3459         )
3460     );
3461     assert_eq!(
3462         unsafe { &(*(::std::ptr::null::<snd_pcm_hw_params>())).msbits as *const _ as usize },
3463         524usize,
3464         concat!(
3465             "Offset of field: ",
3466             stringify!(snd_pcm_hw_params),
3467             "::",
3468             stringify!(msbits)
3469         )
3470     );
3471     assert_eq!(
3472         unsafe { &(*(::std::ptr::null::<snd_pcm_hw_params>())).rate_num as *const _ as usize },
3473         528usize,
3474         concat!(
3475             "Offset of field: ",
3476             stringify!(snd_pcm_hw_params),
3477             "::",
3478             stringify!(rate_num)
3479         )
3480     );
3481     assert_eq!(
3482         unsafe { &(*(::std::ptr::null::<snd_pcm_hw_params>())).rate_den as *const _ as usize },
3483         532usize,
3484         concat!(
3485             "Offset of field: ",
3486             stringify!(snd_pcm_hw_params),
3487             "::",
3488             stringify!(rate_den)
3489         )
3490     );
3491     assert_eq!(
3492         unsafe { &(*(::std::ptr::null::<snd_pcm_hw_params>())).fifo_size as *const _ as usize },
3493         536usize,
3494         concat!(
3495             "Offset of field: ",
3496             stringify!(snd_pcm_hw_params),
3497             "::",
3498             stringify!(fifo_size)
3499         )
3500     );
3501     assert_eq!(
3502         unsafe { &(*(::std::ptr::null::<snd_pcm_hw_params>())).reserved as *const _ as usize },
3503         544usize,
3504         concat!(
3505             "Offset of field: ",
3506             stringify!(snd_pcm_hw_params),
3507             "::",
3508             stringify!(reserved)
3509         )
3510     );
3511 }
3512 pub const SNDRV_PCM_TSTAMP_NONE: _bindgen_ty_6 = 0;
3513 pub const SNDRV_PCM_TSTAMP_ENABLE: _bindgen_ty_6 = 1;
3514 pub const SNDRV_PCM_TSTAMP_LAST: _bindgen_ty_6 = 1;
3515 pub type _bindgen_ty_6 = u32;
3516 #[repr(C)]
3517 #[derive(Copy, Clone)]
3518 pub struct snd_pcm_sw_params {
3519     pub tstamp_mode: ::std::os::raw::c_int,
3520     pub period_step: ::std::os::raw::c_uint,
3521     pub sleep_min: ::std::os::raw::c_uint,
3522     pub avail_min: snd_pcm_uframes_t,
3523     pub xfer_align: snd_pcm_uframes_t,
3524     pub start_threshold: snd_pcm_uframes_t,
3525     pub stop_threshold: snd_pcm_uframes_t,
3526     pub silence_threshold: snd_pcm_uframes_t,
3527     pub silence_size: snd_pcm_uframes_t,
3528     pub boundary: snd_pcm_uframes_t,
3529     pub proto: ::std::os::raw::c_uint,
3530     pub tstamp_type: ::std::os::raw::c_uint,
3531     pub reserved: [::std::os::raw::c_uchar; 56usize],
3532 }
3533 #[test]
bindgen_test_layout_snd_pcm_sw_params()3534 fn bindgen_test_layout_snd_pcm_sw_params() {
3535     assert_eq!(
3536         ::std::mem::size_of::<snd_pcm_sw_params>(),
3537         136usize,
3538         concat!("Size of: ", stringify!(snd_pcm_sw_params))
3539     );
3540     assert_eq!(
3541         ::std::mem::align_of::<snd_pcm_sw_params>(),
3542         8usize,
3543         concat!("Alignment of ", stringify!(snd_pcm_sw_params))
3544     );
3545     assert_eq!(
3546         unsafe { &(*(::std::ptr::null::<snd_pcm_sw_params>())).tstamp_mode as *const _ as usize },
3547         0usize,
3548         concat!(
3549             "Offset of field: ",
3550             stringify!(snd_pcm_sw_params),
3551             "::",
3552             stringify!(tstamp_mode)
3553         )
3554     );
3555     assert_eq!(
3556         unsafe { &(*(::std::ptr::null::<snd_pcm_sw_params>())).period_step as *const _ as usize },
3557         4usize,
3558         concat!(
3559             "Offset of field: ",
3560             stringify!(snd_pcm_sw_params),
3561             "::",
3562             stringify!(period_step)
3563         )
3564     );
3565     assert_eq!(
3566         unsafe { &(*(::std::ptr::null::<snd_pcm_sw_params>())).sleep_min as *const _ as usize },
3567         8usize,
3568         concat!(
3569             "Offset of field: ",
3570             stringify!(snd_pcm_sw_params),
3571             "::",
3572             stringify!(sleep_min)
3573         )
3574     );
3575     assert_eq!(
3576         unsafe { &(*(::std::ptr::null::<snd_pcm_sw_params>())).avail_min as *const _ as usize },
3577         16usize,
3578         concat!(
3579             "Offset of field: ",
3580             stringify!(snd_pcm_sw_params),
3581             "::",
3582             stringify!(avail_min)
3583         )
3584     );
3585     assert_eq!(
3586         unsafe { &(*(::std::ptr::null::<snd_pcm_sw_params>())).xfer_align as *const _ as usize },
3587         24usize,
3588         concat!(
3589             "Offset of field: ",
3590             stringify!(snd_pcm_sw_params),
3591             "::",
3592             stringify!(xfer_align)
3593         )
3594     );
3595     assert_eq!(
3596         unsafe {
3597             &(*(::std::ptr::null::<snd_pcm_sw_params>())).start_threshold as *const _ as usize
3598         },
3599         32usize,
3600         concat!(
3601             "Offset of field: ",
3602             stringify!(snd_pcm_sw_params),
3603             "::",
3604             stringify!(start_threshold)
3605         )
3606     );
3607     assert_eq!(
3608         unsafe {
3609             &(*(::std::ptr::null::<snd_pcm_sw_params>())).stop_threshold as *const _ as usize
3610         },
3611         40usize,
3612         concat!(
3613             "Offset of field: ",
3614             stringify!(snd_pcm_sw_params),
3615             "::",
3616             stringify!(stop_threshold)
3617         )
3618     );
3619     assert_eq!(
3620         unsafe {
3621             &(*(::std::ptr::null::<snd_pcm_sw_params>())).silence_threshold as *const _ as usize
3622         },
3623         48usize,
3624         concat!(
3625             "Offset of field: ",
3626             stringify!(snd_pcm_sw_params),
3627             "::",
3628             stringify!(silence_threshold)
3629         )
3630     );
3631     assert_eq!(
3632         unsafe { &(*(::std::ptr::null::<snd_pcm_sw_params>())).silence_size as *const _ as usize },
3633         56usize,
3634         concat!(
3635             "Offset of field: ",
3636             stringify!(snd_pcm_sw_params),
3637             "::",
3638             stringify!(silence_size)
3639         )
3640     );
3641     assert_eq!(
3642         unsafe { &(*(::std::ptr::null::<snd_pcm_sw_params>())).boundary as *const _ as usize },
3643         64usize,
3644         concat!(
3645             "Offset of field: ",
3646             stringify!(snd_pcm_sw_params),
3647             "::",
3648             stringify!(boundary)
3649         )
3650     );
3651     assert_eq!(
3652         unsafe { &(*(::std::ptr::null::<snd_pcm_sw_params>())).proto as *const _ as usize },
3653         72usize,
3654         concat!(
3655             "Offset of field: ",
3656             stringify!(snd_pcm_sw_params),
3657             "::",
3658             stringify!(proto)
3659         )
3660     );
3661     assert_eq!(
3662         unsafe { &(*(::std::ptr::null::<snd_pcm_sw_params>())).tstamp_type as *const _ as usize },
3663         76usize,
3664         concat!(
3665             "Offset of field: ",
3666             stringify!(snd_pcm_sw_params),
3667             "::",
3668             stringify!(tstamp_type)
3669         )
3670     );
3671     assert_eq!(
3672         unsafe { &(*(::std::ptr::null::<snd_pcm_sw_params>())).reserved as *const _ as usize },
3673         80usize,
3674         concat!(
3675             "Offset of field: ",
3676             stringify!(snd_pcm_sw_params),
3677             "::",
3678             stringify!(reserved)
3679         )
3680     );
3681 }
3682 #[repr(C)]
3683 #[derive(Debug, Copy, Clone)]
3684 pub struct snd_pcm_channel_info {
3685     pub channel: ::std::os::raw::c_uint,
3686     pub offset: __kernel_off_t,
3687     pub first: ::std::os::raw::c_uint,
3688     pub step: ::std::os::raw::c_uint,
3689 }
3690 #[test]
bindgen_test_layout_snd_pcm_channel_info()3691 fn bindgen_test_layout_snd_pcm_channel_info() {
3692     assert_eq!(
3693         ::std::mem::size_of::<snd_pcm_channel_info>(),
3694         24usize,
3695         concat!("Size of: ", stringify!(snd_pcm_channel_info))
3696     );
3697     assert_eq!(
3698         ::std::mem::align_of::<snd_pcm_channel_info>(),
3699         8usize,
3700         concat!("Alignment of ", stringify!(snd_pcm_channel_info))
3701     );
3702     assert_eq!(
3703         unsafe { &(*(::std::ptr::null::<snd_pcm_channel_info>())).channel as *const _ as usize },
3704         0usize,
3705         concat!(
3706             "Offset of field: ",
3707             stringify!(snd_pcm_channel_info),
3708             "::",
3709             stringify!(channel)
3710         )
3711     );
3712     assert_eq!(
3713         unsafe { &(*(::std::ptr::null::<snd_pcm_channel_info>())).offset as *const _ as usize },
3714         8usize,
3715         concat!(
3716             "Offset of field: ",
3717             stringify!(snd_pcm_channel_info),
3718             "::",
3719             stringify!(offset)
3720         )
3721     );
3722     assert_eq!(
3723         unsafe { &(*(::std::ptr::null::<snd_pcm_channel_info>())).first as *const _ as usize },
3724         16usize,
3725         concat!(
3726             "Offset of field: ",
3727             stringify!(snd_pcm_channel_info),
3728             "::",
3729             stringify!(first)
3730         )
3731     );
3732     assert_eq!(
3733         unsafe { &(*(::std::ptr::null::<snd_pcm_channel_info>())).step as *const _ as usize },
3734         20usize,
3735         concat!(
3736             "Offset of field: ",
3737             stringify!(snd_pcm_channel_info),
3738             "::",
3739             stringify!(step)
3740         )
3741     );
3742 }
3743 pub const SNDRV_PCM_AUDIO_TSTAMP_TYPE_COMPAT: _bindgen_ty_7 = 0;
3744 pub const SNDRV_PCM_AUDIO_TSTAMP_TYPE_DEFAULT: _bindgen_ty_7 = 1;
3745 pub const SNDRV_PCM_AUDIO_TSTAMP_TYPE_LINK: _bindgen_ty_7 = 2;
3746 pub const SNDRV_PCM_AUDIO_TSTAMP_TYPE_LINK_ABSOLUTE: _bindgen_ty_7 = 3;
3747 pub const SNDRV_PCM_AUDIO_TSTAMP_TYPE_LINK_ESTIMATED: _bindgen_ty_7 = 4;
3748 pub const SNDRV_PCM_AUDIO_TSTAMP_TYPE_LINK_SYNCHRONIZED: _bindgen_ty_7 = 5;
3749 pub const SNDRV_PCM_AUDIO_TSTAMP_TYPE_LAST: _bindgen_ty_7 = 5;
3750 pub type _bindgen_ty_7 = u32;
3751 #[repr(C)]
3752 #[derive(Debug, Copy, Clone)]
3753 pub struct snd_pcm_status {
3754     pub state: snd_pcm_state_t,
3755     pub trigger_tstamp: timespec,
3756     pub tstamp: timespec,
3757     pub appl_ptr: snd_pcm_uframes_t,
3758     pub hw_ptr: snd_pcm_uframes_t,
3759     pub delay: snd_pcm_sframes_t,
3760     pub avail: snd_pcm_uframes_t,
3761     pub avail_max: snd_pcm_uframes_t,
3762     pub overrange: snd_pcm_uframes_t,
3763     pub suspended_state: snd_pcm_state_t,
3764     pub audio_tstamp_data: __u32,
3765     pub audio_tstamp: timespec,
3766     pub driver_tstamp: timespec,
3767     pub audio_tstamp_accuracy: __u32,
3768     pub reserved: [::std::os::raw::c_uchar; 20usize],
3769 }
3770 #[test]
bindgen_test_layout_snd_pcm_status()3771 fn bindgen_test_layout_snd_pcm_status() {
3772     assert_eq!(
3773         ::std::mem::size_of::<snd_pcm_status>(),
3774         152usize,
3775         concat!("Size of: ", stringify!(snd_pcm_status))
3776     );
3777     assert_eq!(
3778         ::std::mem::align_of::<snd_pcm_status>(),
3779         8usize,
3780         concat!("Alignment of ", stringify!(snd_pcm_status))
3781     );
3782     assert_eq!(
3783         unsafe { &(*(::std::ptr::null::<snd_pcm_status>())).state as *const _ as usize },
3784         0usize,
3785         concat!(
3786             "Offset of field: ",
3787             stringify!(snd_pcm_status),
3788             "::",
3789             stringify!(state)
3790         )
3791     );
3792     assert_eq!(
3793         unsafe { &(*(::std::ptr::null::<snd_pcm_status>())).trigger_tstamp as *const _ as usize },
3794         8usize,
3795         concat!(
3796             "Offset of field: ",
3797             stringify!(snd_pcm_status),
3798             "::",
3799             stringify!(trigger_tstamp)
3800         )
3801     );
3802     assert_eq!(
3803         unsafe { &(*(::std::ptr::null::<snd_pcm_status>())).tstamp as *const _ as usize },
3804         24usize,
3805         concat!(
3806             "Offset of field: ",
3807             stringify!(snd_pcm_status),
3808             "::",
3809             stringify!(tstamp)
3810         )
3811     );
3812     assert_eq!(
3813         unsafe { &(*(::std::ptr::null::<snd_pcm_status>())).appl_ptr as *const _ as usize },
3814         40usize,
3815         concat!(
3816             "Offset of field: ",
3817             stringify!(snd_pcm_status),
3818             "::",
3819             stringify!(appl_ptr)
3820         )
3821     );
3822     assert_eq!(
3823         unsafe { &(*(::std::ptr::null::<snd_pcm_status>())).hw_ptr as *const _ as usize },
3824         48usize,
3825         concat!(
3826             "Offset of field: ",
3827             stringify!(snd_pcm_status),
3828             "::",
3829             stringify!(hw_ptr)
3830         )
3831     );
3832     assert_eq!(
3833         unsafe { &(*(::std::ptr::null::<snd_pcm_status>())).delay as *const _ as usize },
3834         56usize,
3835         concat!(
3836             "Offset of field: ",
3837             stringify!(snd_pcm_status),
3838             "::",
3839             stringify!(delay)
3840         )
3841     );
3842     assert_eq!(
3843         unsafe { &(*(::std::ptr::null::<snd_pcm_status>())).avail as *const _ as usize },
3844         64usize,
3845         concat!(
3846             "Offset of field: ",
3847             stringify!(snd_pcm_status),
3848             "::",
3849             stringify!(avail)
3850         )
3851     );
3852     assert_eq!(
3853         unsafe { &(*(::std::ptr::null::<snd_pcm_status>())).avail_max as *const _ as usize },
3854         72usize,
3855         concat!(
3856             "Offset of field: ",
3857             stringify!(snd_pcm_status),
3858             "::",
3859             stringify!(avail_max)
3860         )
3861     );
3862     assert_eq!(
3863         unsafe { &(*(::std::ptr::null::<snd_pcm_status>())).overrange as *const _ as usize },
3864         80usize,
3865         concat!(
3866             "Offset of field: ",
3867             stringify!(snd_pcm_status),
3868             "::",
3869             stringify!(overrange)
3870         )
3871     );
3872     assert_eq!(
3873         unsafe { &(*(::std::ptr::null::<snd_pcm_status>())).suspended_state as *const _ as usize },
3874         88usize,
3875         concat!(
3876             "Offset of field: ",
3877             stringify!(snd_pcm_status),
3878             "::",
3879             stringify!(suspended_state)
3880         )
3881     );
3882     assert_eq!(
3883         unsafe {
3884             &(*(::std::ptr::null::<snd_pcm_status>())).audio_tstamp_data as *const _ as usize
3885         },
3886         92usize,
3887         concat!(
3888             "Offset of field: ",
3889             stringify!(snd_pcm_status),
3890             "::",
3891             stringify!(audio_tstamp_data)
3892         )
3893     );
3894     assert_eq!(
3895         unsafe { &(*(::std::ptr::null::<snd_pcm_status>())).audio_tstamp as *const _ as usize },
3896         96usize,
3897         concat!(
3898             "Offset of field: ",
3899             stringify!(snd_pcm_status),
3900             "::",
3901             stringify!(audio_tstamp)
3902         )
3903     );
3904     assert_eq!(
3905         unsafe { &(*(::std::ptr::null::<snd_pcm_status>())).driver_tstamp as *const _ as usize },
3906         112usize,
3907         concat!(
3908             "Offset of field: ",
3909             stringify!(snd_pcm_status),
3910             "::",
3911             stringify!(driver_tstamp)
3912         )
3913     );
3914     assert_eq!(
3915         unsafe {
3916             &(*(::std::ptr::null::<snd_pcm_status>())).audio_tstamp_accuracy as *const _ as usize
3917         },
3918         128usize,
3919         concat!(
3920             "Offset of field: ",
3921             stringify!(snd_pcm_status),
3922             "::",
3923             stringify!(audio_tstamp_accuracy)
3924         )
3925     );
3926     assert_eq!(
3927         unsafe { &(*(::std::ptr::null::<snd_pcm_status>())).reserved as *const _ as usize },
3928         132usize,
3929         concat!(
3930             "Offset of field: ",
3931             stringify!(snd_pcm_status),
3932             "::",
3933             stringify!(reserved)
3934         )
3935     );
3936 }
3937 #[repr(C)]
3938 #[derive(Debug, Copy, Clone)]
3939 pub struct snd_pcm_mmap_status {
3940     pub state: snd_pcm_state_t,
3941     pub pad1: ::std::os::raw::c_int,
3942     pub hw_ptr: snd_pcm_uframes_t,
3943     pub tstamp: timespec,
3944     pub suspended_state: snd_pcm_state_t,
3945     pub audio_tstamp: timespec,
3946 }
3947 #[test]
bindgen_test_layout_snd_pcm_mmap_status()3948 fn bindgen_test_layout_snd_pcm_mmap_status() {
3949     assert_eq!(
3950         ::std::mem::size_of::<snd_pcm_mmap_status>(),
3951         56usize,
3952         concat!("Size of: ", stringify!(snd_pcm_mmap_status))
3953     );
3954     assert_eq!(
3955         ::std::mem::align_of::<snd_pcm_mmap_status>(),
3956         8usize,
3957         concat!("Alignment of ", stringify!(snd_pcm_mmap_status))
3958     );
3959     assert_eq!(
3960         unsafe { &(*(::std::ptr::null::<snd_pcm_mmap_status>())).state as *const _ as usize },
3961         0usize,
3962         concat!(
3963             "Offset of field: ",
3964             stringify!(snd_pcm_mmap_status),
3965             "::",
3966             stringify!(state)
3967         )
3968     );
3969     assert_eq!(
3970         unsafe { &(*(::std::ptr::null::<snd_pcm_mmap_status>())).pad1 as *const _ as usize },
3971         4usize,
3972         concat!(
3973             "Offset of field: ",
3974             stringify!(snd_pcm_mmap_status),
3975             "::",
3976             stringify!(pad1)
3977         )
3978     );
3979     assert_eq!(
3980         unsafe { &(*(::std::ptr::null::<snd_pcm_mmap_status>())).hw_ptr as *const _ as usize },
3981         8usize,
3982         concat!(
3983             "Offset of field: ",
3984             stringify!(snd_pcm_mmap_status),
3985             "::",
3986             stringify!(hw_ptr)
3987         )
3988     );
3989     assert_eq!(
3990         unsafe { &(*(::std::ptr::null::<snd_pcm_mmap_status>())).tstamp as *const _ as usize },
3991         16usize,
3992         concat!(
3993             "Offset of field: ",
3994             stringify!(snd_pcm_mmap_status),
3995             "::",
3996             stringify!(tstamp)
3997         )
3998     );
3999     assert_eq!(
4000         unsafe {
4001             &(*(::std::ptr::null::<snd_pcm_mmap_status>())).suspended_state as *const _ as usize
4002         },
4003         32usize,
4004         concat!(
4005             "Offset of field: ",
4006             stringify!(snd_pcm_mmap_status),
4007             "::",
4008             stringify!(suspended_state)
4009         )
4010     );
4011     assert_eq!(
4012         unsafe {
4013             &(*(::std::ptr::null::<snd_pcm_mmap_status>())).audio_tstamp as *const _ as usize
4014         },
4015         40usize,
4016         concat!(
4017             "Offset of field: ",
4018             stringify!(snd_pcm_mmap_status),
4019             "::",
4020             stringify!(audio_tstamp)
4021         )
4022     );
4023 }
4024 #[repr(C)]
4025 #[derive(Debug, Copy, Clone)]
4026 pub struct snd_pcm_mmap_control {
4027     pub appl_ptr: snd_pcm_uframes_t,
4028     pub avail_min: snd_pcm_uframes_t,
4029 }
4030 #[test]
bindgen_test_layout_snd_pcm_mmap_control()4031 fn bindgen_test_layout_snd_pcm_mmap_control() {
4032     assert_eq!(
4033         ::std::mem::size_of::<snd_pcm_mmap_control>(),
4034         16usize,
4035         concat!("Size of: ", stringify!(snd_pcm_mmap_control))
4036     );
4037     assert_eq!(
4038         ::std::mem::align_of::<snd_pcm_mmap_control>(),
4039         8usize,
4040         concat!("Alignment of ", stringify!(snd_pcm_mmap_control))
4041     );
4042     assert_eq!(
4043         unsafe { &(*(::std::ptr::null::<snd_pcm_mmap_control>())).appl_ptr as *const _ as usize },
4044         0usize,
4045         concat!(
4046             "Offset of field: ",
4047             stringify!(snd_pcm_mmap_control),
4048             "::",
4049             stringify!(appl_ptr)
4050         )
4051     );
4052     assert_eq!(
4053         unsafe { &(*(::std::ptr::null::<snd_pcm_mmap_control>())).avail_min as *const _ as usize },
4054         8usize,
4055         concat!(
4056             "Offset of field: ",
4057             stringify!(snd_pcm_mmap_control),
4058             "::",
4059             stringify!(avail_min)
4060         )
4061     );
4062 }
4063 #[repr(C)]
4064 #[derive(Copy, Clone)]
4065 pub struct snd_pcm_sync_ptr {
4066     pub flags: ::std::os::raw::c_uint,
4067     pub s: snd_pcm_sync_ptr__bindgen_ty_1,
4068     pub c: snd_pcm_sync_ptr__bindgen_ty_2,
4069 }
4070 #[repr(C)]
4071 #[derive(Copy, Clone)]
4072 pub union snd_pcm_sync_ptr__bindgen_ty_1 {
4073     pub status: snd_pcm_mmap_status,
4074     pub reserved: [::std::os::raw::c_uchar; 64usize],
4075     _bindgen_union_align: [u64; 8usize],
4076 }
4077 #[test]
bindgen_test_layout_snd_pcm_sync_ptr__bindgen_ty_1()4078 fn bindgen_test_layout_snd_pcm_sync_ptr__bindgen_ty_1() {
4079     assert_eq!(
4080         ::std::mem::size_of::<snd_pcm_sync_ptr__bindgen_ty_1>(),
4081         64usize,
4082         concat!("Size of: ", stringify!(snd_pcm_sync_ptr__bindgen_ty_1))
4083     );
4084     assert_eq!(
4085         ::std::mem::align_of::<snd_pcm_sync_ptr__bindgen_ty_1>(),
4086         8usize,
4087         concat!("Alignment of ", stringify!(snd_pcm_sync_ptr__bindgen_ty_1))
4088     );
4089     assert_eq!(
4090         unsafe {
4091             &(*(::std::ptr::null::<snd_pcm_sync_ptr__bindgen_ty_1>())).status as *const _ as usize
4092         },
4093         0usize,
4094         concat!(
4095             "Offset of field: ",
4096             stringify!(snd_pcm_sync_ptr__bindgen_ty_1),
4097             "::",
4098             stringify!(status)
4099         )
4100     );
4101     assert_eq!(
4102         unsafe {
4103             &(*(::std::ptr::null::<snd_pcm_sync_ptr__bindgen_ty_1>())).reserved as *const _ as usize
4104         },
4105         0usize,
4106         concat!(
4107             "Offset of field: ",
4108             stringify!(snd_pcm_sync_ptr__bindgen_ty_1),
4109             "::",
4110             stringify!(reserved)
4111         )
4112     );
4113 }
4114 #[repr(C)]
4115 #[derive(Copy, Clone)]
4116 pub union snd_pcm_sync_ptr__bindgen_ty_2 {
4117     pub control: snd_pcm_mmap_control,
4118     pub reserved: [::std::os::raw::c_uchar; 64usize],
4119     _bindgen_union_align: [u64; 8usize],
4120 }
4121 #[test]
bindgen_test_layout_snd_pcm_sync_ptr__bindgen_ty_2()4122 fn bindgen_test_layout_snd_pcm_sync_ptr__bindgen_ty_2() {
4123     assert_eq!(
4124         ::std::mem::size_of::<snd_pcm_sync_ptr__bindgen_ty_2>(),
4125         64usize,
4126         concat!("Size of: ", stringify!(snd_pcm_sync_ptr__bindgen_ty_2))
4127     );
4128     assert_eq!(
4129         ::std::mem::align_of::<snd_pcm_sync_ptr__bindgen_ty_2>(),
4130         8usize,
4131         concat!("Alignment of ", stringify!(snd_pcm_sync_ptr__bindgen_ty_2))
4132     );
4133     assert_eq!(
4134         unsafe {
4135             &(*(::std::ptr::null::<snd_pcm_sync_ptr__bindgen_ty_2>())).control as *const _ as usize
4136         },
4137         0usize,
4138         concat!(
4139             "Offset of field: ",
4140             stringify!(snd_pcm_sync_ptr__bindgen_ty_2),
4141             "::",
4142             stringify!(control)
4143         )
4144     );
4145     assert_eq!(
4146         unsafe {
4147             &(*(::std::ptr::null::<snd_pcm_sync_ptr__bindgen_ty_2>())).reserved as *const _ as usize
4148         },
4149         0usize,
4150         concat!(
4151             "Offset of field: ",
4152             stringify!(snd_pcm_sync_ptr__bindgen_ty_2),
4153             "::",
4154             stringify!(reserved)
4155         )
4156     );
4157 }
4158 #[test]
bindgen_test_layout_snd_pcm_sync_ptr()4159 fn bindgen_test_layout_snd_pcm_sync_ptr() {
4160     assert_eq!(
4161         ::std::mem::size_of::<snd_pcm_sync_ptr>(),
4162         136usize,
4163         concat!("Size of: ", stringify!(snd_pcm_sync_ptr))
4164     );
4165     assert_eq!(
4166         ::std::mem::align_of::<snd_pcm_sync_ptr>(),
4167         8usize,
4168         concat!("Alignment of ", stringify!(snd_pcm_sync_ptr))
4169     );
4170     assert_eq!(
4171         unsafe { &(*(::std::ptr::null::<snd_pcm_sync_ptr>())).flags as *const _ as usize },
4172         0usize,
4173         concat!(
4174             "Offset of field: ",
4175             stringify!(snd_pcm_sync_ptr),
4176             "::",
4177             stringify!(flags)
4178         )
4179     );
4180     assert_eq!(
4181         unsafe { &(*(::std::ptr::null::<snd_pcm_sync_ptr>())).s as *const _ as usize },
4182         8usize,
4183         concat!(
4184             "Offset of field: ",
4185             stringify!(snd_pcm_sync_ptr),
4186             "::",
4187             stringify!(s)
4188         )
4189     );
4190     assert_eq!(
4191         unsafe { &(*(::std::ptr::null::<snd_pcm_sync_ptr>())).c as *const _ as usize },
4192         72usize,
4193         concat!(
4194             "Offset of field: ",
4195             stringify!(snd_pcm_sync_ptr),
4196             "::",
4197             stringify!(c)
4198         )
4199     );
4200 }
4201 #[repr(C)]
4202 #[derive(Debug, Copy, Clone)]
4203 pub struct snd_xferi {
4204     pub result: snd_pcm_sframes_t,
4205     pub buf: *mut ::std::os::raw::c_void,
4206     pub frames: snd_pcm_uframes_t,
4207 }
4208 #[test]
bindgen_test_layout_snd_xferi()4209 fn bindgen_test_layout_snd_xferi() {
4210     assert_eq!(
4211         ::std::mem::size_of::<snd_xferi>(),
4212         24usize,
4213         concat!("Size of: ", stringify!(snd_xferi))
4214     );
4215     assert_eq!(
4216         ::std::mem::align_of::<snd_xferi>(),
4217         8usize,
4218         concat!("Alignment of ", stringify!(snd_xferi))
4219     );
4220     assert_eq!(
4221         unsafe { &(*(::std::ptr::null::<snd_xferi>())).result as *const _ as usize },
4222         0usize,
4223         concat!(
4224             "Offset of field: ",
4225             stringify!(snd_xferi),
4226             "::",
4227             stringify!(result)
4228         )
4229     );
4230     assert_eq!(
4231         unsafe { &(*(::std::ptr::null::<snd_xferi>())).buf as *const _ as usize },
4232         8usize,
4233         concat!(
4234             "Offset of field: ",
4235             stringify!(snd_xferi),
4236             "::",
4237             stringify!(buf)
4238         )
4239     );
4240     assert_eq!(
4241         unsafe { &(*(::std::ptr::null::<snd_xferi>())).frames as *const _ as usize },
4242         16usize,
4243         concat!(
4244             "Offset of field: ",
4245             stringify!(snd_xferi),
4246             "::",
4247             stringify!(frames)
4248         )
4249     );
4250 }
4251 #[repr(C)]
4252 #[derive(Debug, Copy, Clone)]
4253 pub struct snd_xfern {
4254     pub result: snd_pcm_sframes_t,
4255     pub bufs: *mut *mut ::std::os::raw::c_void,
4256     pub frames: snd_pcm_uframes_t,
4257 }
4258 #[test]
bindgen_test_layout_snd_xfern()4259 fn bindgen_test_layout_snd_xfern() {
4260     assert_eq!(
4261         ::std::mem::size_of::<snd_xfern>(),
4262         24usize,
4263         concat!("Size of: ", stringify!(snd_xfern))
4264     );
4265     assert_eq!(
4266         ::std::mem::align_of::<snd_xfern>(),
4267         8usize,
4268         concat!("Alignment of ", stringify!(snd_xfern))
4269     );
4270     assert_eq!(
4271         unsafe { &(*(::std::ptr::null::<snd_xfern>())).result as *const _ as usize },
4272         0usize,
4273         concat!(
4274             "Offset of field: ",
4275             stringify!(snd_xfern),
4276             "::",
4277             stringify!(result)
4278         )
4279     );
4280     assert_eq!(
4281         unsafe { &(*(::std::ptr::null::<snd_xfern>())).bufs as *const _ as usize },
4282         8usize,
4283         concat!(
4284             "Offset of field: ",
4285             stringify!(snd_xfern),
4286             "::",
4287             stringify!(bufs)
4288         )
4289     );
4290     assert_eq!(
4291         unsafe { &(*(::std::ptr::null::<snd_xfern>())).frames as *const _ as usize },
4292         16usize,
4293         concat!(
4294             "Offset of field: ",
4295             stringify!(snd_xfern),
4296             "::",
4297             stringify!(frames)
4298         )
4299     );
4300 }
4301 pub const SNDRV_PCM_TSTAMP_TYPE_GETTIMEOFDAY: _bindgen_ty_8 = 0;
4302 pub const SNDRV_PCM_TSTAMP_TYPE_MONOTONIC: _bindgen_ty_8 = 1;
4303 pub const SNDRV_PCM_TSTAMP_TYPE_MONOTONIC_RAW: _bindgen_ty_8 = 2;
4304 pub const SNDRV_PCM_TSTAMP_TYPE_LAST: _bindgen_ty_8 = 2;
4305 pub type _bindgen_ty_8 = u32;
4306 pub const SNDRV_CHMAP_UNKNOWN: _bindgen_ty_9 = 0;
4307 pub const SNDRV_CHMAP_NA: _bindgen_ty_9 = 1;
4308 pub const SNDRV_CHMAP_MONO: _bindgen_ty_9 = 2;
4309 pub const SNDRV_CHMAP_FL: _bindgen_ty_9 = 3;
4310 pub const SNDRV_CHMAP_FR: _bindgen_ty_9 = 4;
4311 pub const SNDRV_CHMAP_RL: _bindgen_ty_9 = 5;
4312 pub const SNDRV_CHMAP_RR: _bindgen_ty_9 = 6;
4313 pub const SNDRV_CHMAP_FC: _bindgen_ty_9 = 7;
4314 pub const SNDRV_CHMAP_LFE: _bindgen_ty_9 = 8;
4315 pub const SNDRV_CHMAP_SL: _bindgen_ty_9 = 9;
4316 pub const SNDRV_CHMAP_SR: _bindgen_ty_9 = 10;
4317 pub const SNDRV_CHMAP_RC: _bindgen_ty_9 = 11;
4318 pub const SNDRV_CHMAP_FLC: _bindgen_ty_9 = 12;
4319 pub const SNDRV_CHMAP_FRC: _bindgen_ty_9 = 13;
4320 pub const SNDRV_CHMAP_RLC: _bindgen_ty_9 = 14;
4321 pub const SNDRV_CHMAP_RRC: _bindgen_ty_9 = 15;
4322 pub const SNDRV_CHMAP_FLW: _bindgen_ty_9 = 16;
4323 pub const SNDRV_CHMAP_FRW: _bindgen_ty_9 = 17;
4324 pub const SNDRV_CHMAP_FLH: _bindgen_ty_9 = 18;
4325 pub const SNDRV_CHMAP_FCH: _bindgen_ty_9 = 19;
4326 pub const SNDRV_CHMAP_FRH: _bindgen_ty_9 = 20;
4327 pub const SNDRV_CHMAP_TC: _bindgen_ty_9 = 21;
4328 pub const SNDRV_CHMAP_TFL: _bindgen_ty_9 = 22;
4329 pub const SNDRV_CHMAP_TFR: _bindgen_ty_9 = 23;
4330 pub const SNDRV_CHMAP_TFC: _bindgen_ty_9 = 24;
4331 pub const SNDRV_CHMAP_TRL: _bindgen_ty_9 = 25;
4332 pub const SNDRV_CHMAP_TRR: _bindgen_ty_9 = 26;
4333 pub const SNDRV_CHMAP_TRC: _bindgen_ty_9 = 27;
4334 pub const SNDRV_CHMAP_TFLC: _bindgen_ty_9 = 28;
4335 pub const SNDRV_CHMAP_TFRC: _bindgen_ty_9 = 29;
4336 pub const SNDRV_CHMAP_TSL: _bindgen_ty_9 = 30;
4337 pub const SNDRV_CHMAP_TSR: _bindgen_ty_9 = 31;
4338 pub const SNDRV_CHMAP_LLFE: _bindgen_ty_9 = 32;
4339 pub const SNDRV_CHMAP_RLFE: _bindgen_ty_9 = 33;
4340 pub const SNDRV_CHMAP_BC: _bindgen_ty_9 = 34;
4341 pub const SNDRV_CHMAP_BLC: _bindgen_ty_9 = 35;
4342 pub const SNDRV_CHMAP_BRC: _bindgen_ty_9 = 36;
4343 pub const SNDRV_CHMAP_LAST: _bindgen_ty_9 = 36;
4344 pub type _bindgen_ty_9 = u32;
4345 pub const SNDRV_RAWMIDI_STREAM_OUTPUT: _bindgen_ty_10 = 0;
4346 pub const SNDRV_RAWMIDI_STREAM_INPUT: _bindgen_ty_10 = 1;
4347 pub const SNDRV_RAWMIDI_STREAM_LAST: _bindgen_ty_10 = 1;
4348 pub type _bindgen_ty_10 = u32;
4349 #[repr(C)]
4350 #[derive(Copy, Clone)]
4351 pub struct snd_rawmidi_info {
4352     pub device: ::std::os::raw::c_uint,
4353     pub subdevice: ::std::os::raw::c_uint,
4354     pub stream: ::std::os::raw::c_int,
4355     pub card: ::std::os::raw::c_int,
4356     pub flags: ::std::os::raw::c_uint,
4357     pub id: [::std::os::raw::c_uchar; 64usize],
4358     pub name: [::std::os::raw::c_uchar; 80usize],
4359     pub subname: [::std::os::raw::c_uchar; 32usize],
4360     pub subdevices_count: ::std::os::raw::c_uint,
4361     pub subdevices_avail: ::std::os::raw::c_uint,
4362     pub reserved: [::std::os::raw::c_uchar; 64usize],
4363 }
4364 #[test]
bindgen_test_layout_snd_rawmidi_info()4365 fn bindgen_test_layout_snd_rawmidi_info() {
4366     assert_eq!(
4367         ::std::mem::size_of::<snd_rawmidi_info>(),
4368         268usize,
4369         concat!("Size of: ", stringify!(snd_rawmidi_info))
4370     );
4371     assert_eq!(
4372         ::std::mem::align_of::<snd_rawmidi_info>(),
4373         4usize,
4374         concat!("Alignment of ", stringify!(snd_rawmidi_info))
4375     );
4376     assert_eq!(
4377         unsafe { &(*(::std::ptr::null::<snd_rawmidi_info>())).device as *const _ as usize },
4378         0usize,
4379         concat!(
4380             "Offset of field: ",
4381             stringify!(snd_rawmidi_info),
4382             "::",
4383             stringify!(device)
4384         )
4385     );
4386     assert_eq!(
4387         unsafe { &(*(::std::ptr::null::<snd_rawmidi_info>())).subdevice as *const _ as usize },
4388         4usize,
4389         concat!(
4390             "Offset of field: ",
4391             stringify!(snd_rawmidi_info),
4392             "::",
4393             stringify!(subdevice)
4394         )
4395     );
4396     assert_eq!(
4397         unsafe { &(*(::std::ptr::null::<snd_rawmidi_info>())).stream as *const _ as usize },
4398         8usize,
4399         concat!(
4400             "Offset of field: ",
4401             stringify!(snd_rawmidi_info),
4402             "::",
4403             stringify!(stream)
4404         )
4405     );
4406     assert_eq!(
4407         unsafe { &(*(::std::ptr::null::<snd_rawmidi_info>())).card as *const _ as usize },
4408         12usize,
4409         concat!(
4410             "Offset of field: ",
4411             stringify!(snd_rawmidi_info),
4412             "::",
4413             stringify!(card)
4414         )
4415     );
4416     assert_eq!(
4417         unsafe { &(*(::std::ptr::null::<snd_rawmidi_info>())).flags as *const _ as usize },
4418         16usize,
4419         concat!(
4420             "Offset of field: ",
4421             stringify!(snd_rawmidi_info),
4422             "::",
4423             stringify!(flags)
4424         )
4425     );
4426     assert_eq!(
4427         unsafe { &(*(::std::ptr::null::<snd_rawmidi_info>())).id as *const _ as usize },
4428         20usize,
4429         concat!(
4430             "Offset of field: ",
4431             stringify!(snd_rawmidi_info),
4432             "::",
4433             stringify!(id)
4434         )
4435     );
4436     assert_eq!(
4437         unsafe { &(*(::std::ptr::null::<snd_rawmidi_info>())).name as *const _ as usize },
4438         84usize,
4439         concat!(
4440             "Offset of field: ",
4441             stringify!(snd_rawmidi_info),
4442             "::",
4443             stringify!(name)
4444         )
4445     );
4446     assert_eq!(
4447         unsafe { &(*(::std::ptr::null::<snd_rawmidi_info>())).subname as *const _ as usize },
4448         164usize,
4449         concat!(
4450             "Offset of field: ",
4451             stringify!(snd_rawmidi_info),
4452             "::",
4453             stringify!(subname)
4454         )
4455     );
4456     assert_eq!(
4457         unsafe {
4458             &(*(::std::ptr::null::<snd_rawmidi_info>())).subdevices_count as *const _ as usize
4459         },
4460         196usize,
4461         concat!(
4462             "Offset of field: ",
4463             stringify!(snd_rawmidi_info),
4464             "::",
4465             stringify!(subdevices_count)
4466         )
4467     );
4468     assert_eq!(
4469         unsafe {
4470             &(*(::std::ptr::null::<snd_rawmidi_info>())).subdevices_avail as *const _ as usize
4471         },
4472         200usize,
4473         concat!(
4474             "Offset of field: ",
4475             stringify!(snd_rawmidi_info),
4476             "::",
4477             stringify!(subdevices_avail)
4478         )
4479     );
4480     assert_eq!(
4481         unsafe { &(*(::std::ptr::null::<snd_rawmidi_info>())).reserved as *const _ as usize },
4482         204usize,
4483         concat!(
4484             "Offset of field: ",
4485             stringify!(snd_rawmidi_info),
4486             "::",
4487             stringify!(reserved)
4488         )
4489     );
4490 }
4491 #[repr(C)]
4492 #[derive(Debug, Copy, Clone)]
4493 pub struct snd_rawmidi_params {
4494     pub stream: ::std::os::raw::c_int,
4495     pub buffer_size: usize,
4496     pub avail_min: usize,
4497     pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize], u8>,
4498     pub reserved: [::std::os::raw::c_uchar; 16usize],
4499 }
4500 #[test]
bindgen_test_layout_snd_rawmidi_params()4501 fn bindgen_test_layout_snd_rawmidi_params() {
4502     assert_eq!(
4503         ::std::mem::size_of::<snd_rawmidi_params>(),
4504         48usize,
4505         concat!("Size of: ", stringify!(snd_rawmidi_params))
4506     );
4507     assert_eq!(
4508         ::std::mem::align_of::<snd_rawmidi_params>(),
4509         8usize,
4510         concat!("Alignment of ", stringify!(snd_rawmidi_params))
4511     );
4512     assert_eq!(
4513         unsafe { &(*(::std::ptr::null::<snd_rawmidi_params>())).stream as *const _ as usize },
4514         0usize,
4515         concat!(
4516             "Offset of field: ",
4517             stringify!(snd_rawmidi_params),
4518             "::",
4519             stringify!(stream)
4520         )
4521     );
4522     assert_eq!(
4523         unsafe { &(*(::std::ptr::null::<snd_rawmidi_params>())).buffer_size as *const _ as usize },
4524         8usize,
4525         concat!(
4526             "Offset of field: ",
4527             stringify!(snd_rawmidi_params),
4528             "::",
4529             stringify!(buffer_size)
4530         )
4531     );
4532     assert_eq!(
4533         unsafe { &(*(::std::ptr::null::<snd_rawmidi_params>())).avail_min as *const _ as usize },
4534         16usize,
4535         concat!(
4536             "Offset of field: ",
4537             stringify!(snd_rawmidi_params),
4538             "::",
4539             stringify!(avail_min)
4540         )
4541     );
4542     assert_eq!(
4543         unsafe { &(*(::std::ptr::null::<snd_rawmidi_params>())).reserved as *const _ as usize },
4544         25usize,
4545         concat!(
4546             "Offset of field: ",
4547             stringify!(snd_rawmidi_params),
4548             "::",
4549             stringify!(reserved)
4550         )
4551     );
4552 }
4553 impl snd_rawmidi_params {
4554     #[inline]
no_active_sensing(&self) -> ::std::os::raw::c_uint4555     pub fn no_active_sensing(&self) -> ::std::os::raw::c_uint {
4556         unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
4557     }
4558     #[inline]
set_no_active_sensing(&mut self, val: ::std::os::raw::c_uint)4559     pub fn set_no_active_sensing(&mut self, val: ::std::os::raw::c_uint) {
4560         unsafe {
4561             let val: u32 = ::std::mem::transmute(val);
4562             self._bitfield_1.set(0usize, 1u8, val as u64)
4563         }
4564     }
4565     #[inline]
new_bitfield_1( no_active_sensing: ::std::os::raw::c_uint, ) -> __BindgenBitfieldUnit<[u8; 1usize], u8>4566     pub fn new_bitfield_1(
4567         no_active_sensing: ::std::os::raw::c_uint,
4568     ) -> __BindgenBitfieldUnit<[u8; 1usize], u8> {
4569         let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize], u8> =
4570             Default::default();
4571         __bindgen_bitfield_unit.set(0usize, 1u8, {
4572             let no_active_sensing: u32 = unsafe { ::std::mem::transmute(no_active_sensing) };
4573             no_active_sensing as u64
4574         });
4575         __bindgen_bitfield_unit
4576     }
4577 }
4578 #[repr(C)]
4579 #[derive(Debug, Copy, Clone)]
4580 pub struct snd_rawmidi_status {
4581     pub stream: ::std::os::raw::c_int,
4582     pub tstamp: timespec,
4583     pub avail: usize,
4584     pub xruns: usize,
4585     pub reserved: [::std::os::raw::c_uchar; 16usize],
4586 }
4587 #[test]
bindgen_test_layout_snd_rawmidi_status()4588 fn bindgen_test_layout_snd_rawmidi_status() {
4589     assert_eq!(
4590         ::std::mem::size_of::<snd_rawmidi_status>(),
4591         56usize,
4592         concat!("Size of: ", stringify!(snd_rawmidi_status))
4593     );
4594     assert_eq!(
4595         ::std::mem::align_of::<snd_rawmidi_status>(),
4596         8usize,
4597         concat!("Alignment of ", stringify!(snd_rawmidi_status))
4598     );
4599     assert_eq!(
4600         unsafe { &(*(::std::ptr::null::<snd_rawmidi_status>())).stream as *const _ as usize },
4601         0usize,
4602         concat!(
4603             "Offset of field: ",
4604             stringify!(snd_rawmidi_status),
4605             "::",
4606             stringify!(stream)
4607         )
4608     );
4609     assert_eq!(
4610         unsafe { &(*(::std::ptr::null::<snd_rawmidi_status>())).tstamp as *const _ as usize },
4611         8usize,
4612         concat!(
4613             "Offset of field: ",
4614             stringify!(snd_rawmidi_status),
4615             "::",
4616             stringify!(tstamp)
4617         )
4618     );
4619     assert_eq!(
4620         unsafe { &(*(::std::ptr::null::<snd_rawmidi_status>())).avail as *const _ as usize },
4621         24usize,
4622         concat!(
4623             "Offset of field: ",
4624             stringify!(snd_rawmidi_status),
4625             "::",
4626             stringify!(avail)
4627         )
4628     );
4629     assert_eq!(
4630         unsafe { &(*(::std::ptr::null::<snd_rawmidi_status>())).xruns as *const _ as usize },
4631         32usize,
4632         concat!(
4633             "Offset of field: ",
4634             stringify!(snd_rawmidi_status),
4635             "::",
4636             stringify!(xruns)
4637         )
4638     );
4639     assert_eq!(
4640         unsafe { &(*(::std::ptr::null::<snd_rawmidi_status>())).reserved as *const _ as usize },
4641         40usize,
4642         concat!(
4643             "Offset of field: ",
4644             stringify!(snd_rawmidi_status),
4645             "::",
4646             stringify!(reserved)
4647         )
4648     );
4649 }
4650 pub const SNDRV_TIMER_CLASS_NONE: _bindgen_ty_11 = -1;
4651 pub const SNDRV_TIMER_CLASS_SLAVE: _bindgen_ty_11 = 0;
4652 pub const SNDRV_TIMER_CLASS_GLOBAL: _bindgen_ty_11 = 1;
4653 pub const SNDRV_TIMER_CLASS_CARD: _bindgen_ty_11 = 2;
4654 pub const SNDRV_TIMER_CLASS_PCM: _bindgen_ty_11 = 3;
4655 pub const SNDRV_TIMER_CLASS_LAST: _bindgen_ty_11 = 3;
4656 pub type _bindgen_ty_11 = i32;
4657 pub const SNDRV_TIMER_SCLASS_NONE: _bindgen_ty_12 = 0;
4658 pub const SNDRV_TIMER_SCLASS_APPLICATION: _bindgen_ty_12 = 1;
4659 pub const SNDRV_TIMER_SCLASS_SEQUENCER: _bindgen_ty_12 = 2;
4660 pub const SNDRV_TIMER_SCLASS_OSS_SEQUENCER: _bindgen_ty_12 = 3;
4661 pub const SNDRV_TIMER_SCLASS_LAST: _bindgen_ty_12 = 3;
4662 pub type _bindgen_ty_12 = u32;
4663 #[repr(C)]
4664 #[derive(Debug, Copy, Clone)]
4665 pub struct snd_timer_id {
4666     pub dev_class: ::std::os::raw::c_int,
4667     pub dev_sclass: ::std::os::raw::c_int,
4668     pub card: ::std::os::raw::c_int,
4669     pub device: ::std::os::raw::c_int,
4670     pub subdevice: ::std::os::raw::c_int,
4671 }
4672 #[test]
bindgen_test_layout_snd_timer_id()4673 fn bindgen_test_layout_snd_timer_id() {
4674     assert_eq!(
4675         ::std::mem::size_of::<snd_timer_id>(),
4676         20usize,
4677         concat!("Size of: ", stringify!(snd_timer_id))
4678     );
4679     assert_eq!(
4680         ::std::mem::align_of::<snd_timer_id>(),
4681         4usize,
4682         concat!("Alignment of ", stringify!(snd_timer_id))
4683     );
4684     assert_eq!(
4685         unsafe { &(*(::std::ptr::null::<snd_timer_id>())).dev_class as *const _ as usize },
4686         0usize,
4687         concat!(
4688             "Offset of field: ",
4689             stringify!(snd_timer_id),
4690             "::",
4691             stringify!(dev_class)
4692         )
4693     );
4694     assert_eq!(
4695         unsafe { &(*(::std::ptr::null::<snd_timer_id>())).dev_sclass as *const _ as usize },
4696         4usize,
4697         concat!(
4698             "Offset of field: ",
4699             stringify!(snd_timer_id),
4700             "::",
4701             stringify!(dev_sclass)
4702         )
4703     );
4704     assert_eq!(
4705         unsafe { &(*(::std::ptr::null::<snd_timer_id>())).card as *const _ as usize },
4706         8usize,
4707         concat!(
4708             "Offset of field: ",
4709             stringify!(snd_timer_id),
4710             "::",
4711             stringify!(card)
4712         )
4713     );
4714     assert_eq!(
4715         unsafe { &(*(::std::ptr::null::<snd_timer_id>())).device as *const _ as usize },
4716         12usize,
4717         concat!(
4718             "Offset of field: ",
4719             stringify!(snd_timer_id),
4720             "::",
4721             stringify!(device)
4722         )
4723     );
4724     assert_eq!(
4725         unsafe { &(*(::std::ptr::null::<snd_timer_id>())).subdevice as *const _ as usize },
4726         16usize,
4727         concat!(
4728             "Offset of field: ",
4729             stringify!(snd_timer_id),
4730             "::",
4731             stringify!(subdevice)
4732         )
4733     );
4734 }
4735 #[repr(C)]
4736 #[derive(Copy, Clone)]
4737 pub struct snd_timer_ginfo {
4738     pub tid: snd_timer_id,
4739     pub flags: ::std::os::raw::c_uint,
4740     pub card: ::std::os::raw::c_int,
4741     pub id: [::std::os::raw::c_uchar; 64usize],
4742     pub name: [::std::os::raw::c_uchar; 80usize],
4743     pub reserved0: ::std::os::raw::c_ulong,
4744     pub resolution: ::std::os::raw::c_ulong,
4745     pub resolution_min: ::std::os::raw::c_ulong,
4746     pub resolution_max: ::std::os::raw::c_ulong,
4747     pub clients: ::std::os::raw::c_uint,
4748     pub reserved: [::std::os::raw::c_uchar; 32usize],
4749 }
4750 #[test]
bindgen_test_layout_snd_timer_ginfo()4751 fn bindgen_test_layout_snd_timer_ginfo() {
4752     assert_eq!(
4753         ::std::mem::size_of::<snd_timer_ginfo>(),
4754         248usize,
4755         concat!("Size of: ", stringify!(snd_timer_ginfo))
4756     );
4757     assert_eq!(
4758         ::std::mem::align_of::<snd_timer_ginfo>(),
4759         8usize,
4760         concat!("Alignment of ", stringify!(snd_timer_ginfo))
4761     );
4762     assert_eq!(
4763         unsafe { &(*(::std::ptr::null::<snd_timer_ginfo>())).tid as *const _ as usize },
4764         0usize,
4765         concat!(
4766             "Offset of field: ",
4767             stringify!(snd_timer_ginfo),
4768             "::",
4769             stringify!(tid)
4770         )
4771     );
4772     assert_eq!(
4773         unsafe { &(*(::std::ptr::null::<snd_timer_ginfo>())).flags as *const _ as usize },
4774         20usize,
4775         concat!(
4776             "Offset of field: ",
4777             stringify!(snd_timer_ginfo),
4778             "::",
4779             stringify!(flags)
4780         )
4781     );
4782     assert_eq!(
4783         unsafe { &(*(::std::ptr::null::<snd_timer_ginfo>())).card as *const _ as usize },
4784         24usize,
4785         concat!(
4786             "Offset of field: ",
4787             stringify!(snd_timer_ginfo),
4788             "::",
4789             stringify!(card)
4790         )
4791     );
4792     assert_eq!(
4793         unsafe { &(*(::std::ptr::null::<snd_timer_ginfo>())).id as *const _ as usize },
4794         28usize,
4795         concat!(
4796             "Offset of field: ",
4797             stringify!(snd_timer_ginfo),
4798             "::",
4799             stringify!(id)
4800         )
4801     );
4802     assert_eq!(
4803         unsafe { &(*(::std::ptr::null::<snd_timer_ginfo>())).name as *const _ as usize },
4804         92usize,
4805         concat!(
4806             "Offset of field: ",
4807             stringify!(snd_timer_ginfo),
4808             "::",
4809             stringify!(name)
4810         )
4811     );
4812     assert_eq!(
4813         unsafe { &(*(::std::ptr::null::<snd_timer_ginfo>())).reserved0 as *const _ as usize },
4814         176usize,
4815         concat!(
4816             "Offset of field: ",
4817             stringify!(snd_timer_ginfo),
4818             "::",
4819             stringify!(reserved0)
4820         )
4821     );
4822     assert_eq!(
4823         unsafe { &(*(::std::ptr::null::<snd_timer_ginfo>())).resolution as *const _ as usize },
4824         184usize,
4825         concat!(
4826             "Offset of field: ",
4827             stringify!(snd_timer_ginfo),
4828             "::",
4829             stringify!(resolution)
4830         )
4831     );
4832     assert_eq!(
4833         unsafe { &(*(::std::ptr::null::<snd_timer_ginfo>())).resolution_min as *const _ as usize },
4834         192usize,
4835         concat!(
4836             "Offset of field: ",
4837             stringify!(snd_timer_ginfo),
4838             "::",
4839             stringify!(resolution_min)
4840         )
4841     );
4842     assert_eq!(
4843         unsafe { &(*(::std::ptr::null::<snd_timer_ginfo>())).resolution_max as *const _ as usize },
4844         200usize,
4845         concat!(
4846             "Offset of field: ",
4847             stringify!(snd_timer_ginfo),
4848             "::",
4849             stringify!(resolution_max)
4850         )
4851     );
4852     assert_eq!(
4853         unsafe { &(*(::std::ptr::null::<snd_timer_ginfo>())).clients as *const _ as usize },
4854         208usize,
4855         concat!(
4856             "Offset of field: ",
4857             stringify!(snd_timer_ginfo),
4858             "::",
4859             stringify!(clients)
4860         )
4861     );
4862     assert_eq!(
4863         unsafe { &(*(::std::ptr::null::<snd_timer_ginfo>())).reserved as *const _ as usize },
4864         212usize,
4865         concat!(
4866             "Offset of field: ",
4867             stringify!(snd_timer_ginfo),
4868             "::",
4869             stringify!(reserved)
4870         )
4871     );
4872 }
4873 #[repr(C)]
4874 #[derive(Debug, Copy, Clone)]
4875 pub struct snd_timer_gparams {
4876     pub tid: snd_timer_id,
4877     pub period_num: ::std::os::raw::c_ulong,
4878     pub period_den: ::std::os::raw::c_ulong,
4879     pub reserved: [::std::os::raw::c_uchar; 32usize],
4880 }
4881 #[test]
bindgen_test_layout_snd_timer_gparams()4882 fn bindgen_test_layout_snd_timer_gparams() {
4883     assert_eq!(
4884         ::std::mem::size_of::<snd_timer_gparams>(),
4885         72usize,
4886         concat!("Size of: ", stringify!(snd_timer_gparams))
4887     );
4888     assert_eq!(
4889         ::std::mem::align_of::<snd_timer_gparams>(),
4890         8usize,
4891         concat!("Alignment of ", stringify!(snd_timer_gparams))
4892     );
4893     assert_eq!(
4894         unsafe { &(*(::std::ptr::null::<snd_timer_gparams>())).tid as *const _ as usize },
4895         0usize,
4896         concat!(
4897             "Offset of field: ",
4898             stringify!(snd_timer_gparams),
4899             "::",
4900             stringify!(tid)
4901         )
4902     );
4903     assert_eq!(
4904         unsafe { &(*(::std::ptr::null::<snd_timer_gparams>())).period_num as *const _ as usize },
4905         24usize,
4906         concat!(
4907             "Offset of field: ",
4908             stringify!(snd_timer_gparams),
4909             "::",
4910             stringify!(period_num)
4911         )
4912     );
4913     assert_eq!(
4914         unsafe { &(*(::std::ptr::null::<snd_timer_gparams>())).period_den as *const _ as usize },
4915         32usize,
4916         concat!(
4917             "Offset of field: ",
4918             stringify!(snd_timer_gparams),
4919             "::",
4920             stringify!(period_den)
4921         )
4922     );
4923     assert_eq!(
4924         unsafe { &(*(::std::ptr::null::<snd_timer_gparams>())).reserved as *const _ as usize },
4925         40usize,
4926         concat!(
4927             "Offset of field: ",
4928             stringify!(snd_timer_gparams),
4929             "::",
4930             stringify!(reserved)
4931         )
4932     );
4933 }
4934 #[repr(C)]
4935 #[derive(Debug, Copy, Clone)]
4936 pub struct snd_timer_gstatus {
4937     pub tid: snd_timer_id,
4938     pub resolution: ::std::os::raw::c_ulong,
4939     pub resolution_num: ::std::os::raw::c_ulong,
4940     pub resolution_den: ::std::os::raw::c_ulong,
4941     pub reserved: [::std::os::raw::c_uchar; 32usize],
4942 }
4943 #[test]
bindgen_test_layout_snd_timer_gstatus()4944 fn bindgen_test_layout_snd_timer_gstatus() {
4945     assert_eq!(
4946         ::std::mem::size_of::<snd_timer_gstatus>(),
4947         80usize,
4948         concat!("Size of: ", stringify!(snd_timer_gstatus))
4949     );
4950     assert_eq!(
4951         ::std::mem::align_of::<snd_timer_gstatus>(),
4952         8usize,
4953         concat!("Alignment of ", stringify!(snd_timer_gstatus))
4954     );
4955     assert_eq!(
4956         unsafe { &(*(::std::ptr::null::<snd_timer_gstatus>())).tid as *const _ as usize },
4957         0usize,
4958         concat!(
4959             "Offset of field: ",
4960             stringify!(snd_timer_gstatus),
4961             "::",
4962             stringify!(tid)
4963         )
4964     );
4965     assert_eq!(
4966         unsafe { &(*(::std::ptr::null::<snd_timer_gstatus>())).resolution as *const _ as usize },
4967         24usize,
4968         concat!(
4969             "Offset of field: ",
4970             stringify!(snd_timer_gstatus),
4971             "::",
4972             stringify!(resolution)
4973         )
4974     );
4975     assert_eq!(
4976         unsafe {
4977             &(*(::std::ptr::null::<snd_timer_gstatus>())).resolution_num as *const _ as usize
4978         },
4979         32usize,
4980         concat!(
4981             "Offset of field: ",
4982             stringify!(snd_timer_gstatus),
4983             "::",
4984             stringify!(resolution_num)
4985         )
4986     );
4987     assert_eq!(
4988         unsafe {
4989             &(*(::std::ptr::null::<snd_timer_gstatus>())).resolution_den as *const _ as usize
4990         },
4991         40usize,
4992         concat!(
4993             "Offset of field: ",
4994             stringify!(snd_timer_gstatus),
4995             "::",
4996             stringify!(resolution_den)
4997         )
4998     );
4999     assert_eq!(
5000         unsafe { &(*(::std::ptr::null::<snd_timer_gstatus>())).reserved as *const _ as usize },
5001         48usize,
5002         concat!(
5003             "Offset of field: ",
5004             stringify!(snd_timer_gstatus),
5005             "::",
5006             stringify!(reserved)
5007         )
5008     );
5009 }
5010 #[repr(C)]
5011 #[derive(Debug, Copy, Clone)]
5012 pub struct snd_timer_select {
5013     pub id: snd_timer_id,
5014     pub reserved: [::std::os::raw::c_uchar; 32usize],
5015 }
5016 #[test]
bindgen_test_layout_snd_timer_select()5017 fn bindgen_test_layout_snd_timer_select() {
5018     assert_eq!(
5019         ::std::mem::size_of::<snd_timer_select>(),
5020         52usize,
5021         concat!("Size of: ", stringify!(snd_timer_select))
5022     );
5023     assert_eq!(
5024         ::std::mem::align_of::<snd_timer_select>(),
5025         4usize,
5026         concat!("Alignment of ", stringify!(snd_timer_select))
5027     );
5028     assert_eq!(
5029         unsafe { &(*(::std::ptr::null::<snd_timer_select>())).id as *const _ as usize },
5030         0usize,
5031         concat!(
5032             "Offset of field: ",
5033             stringify!(snd_timer_select),
5034             "::",
5035             stringify!(id)
5036         )
5037     );
5038     assert_eq!(
5039         unsafe { &(*(::std::ptr::null::<snd_timer_select>())).reserved as *const _ as usize },
5040         20usize,
5041         concat!(
5042             "Offset of field: ",
5043             stringify!(snd_timer_select),
5044             "::",
5045             stringify!(reserved)
5046         )
5047     );
5048 }
5049 #[repr(C)]
5050 #[derive(Copy, Clone)]
5051 pub struct snd_timer_info {
5052     pub flags: ::std::os::raw::c_uint,
5053     pub card: ::std::os::raw::c_int,
5054     pub id: [::std::os::raw::c_uchar; 64usize],
5055     pub name: [::std::os::raw::c_uchar; 80usize],
5056     pub reserved0: ::std::os::raw::c_ulong,
5057     pub resolution: ::std::os::raw::c_ulong,
5058     pub reserved: [::std::os::raw::c_uchar; 64usize],
5059 }
5060 #[test]
bindgen_test_layout_snd_timer_info()5061 fn bindgen_test_layout_snd_timer_info() {
5062     assert_eq!(
5063         ::std::mem::size_of::<snd_timer_info>(),
5064         232usize,
5065         concat!("Size of: ", stringify!(snd_timer_info))
5066     );
5067     assert_eq!(
5068         ::std::mem::align_of::<snd_timer_info>(),
5069         8usize,
5070         concat!("Alignment of ", stringify!(snd_timer_info))
5071     );
5072     assert_eq!(
5073         unsafe { &(*(::std::ptr::null::<snd_timer_info>())).flags as *const _ as usize },
5074         0usize,
5075         concat!(
5076             "Offset of field: ",
5077             stringify!(snd_timer_info),
5078             "::",
5079             stringify!(flags)
5080         )
5081     );
5082     assert_eq!(
5083         unsafe { &(*(::std::ptr::null::<snd_timer_info>())).card as *const _ as usize },
5084         4usize,
5085         concat!(
5086             "Offset of field: ",
5087             stringify!(snd_timer_info),
5088             "::",
5089             stringify!(card)
5090         )
5091     );
5092     assert_eq!(
5093         unsafe { &(*(::std::ptr::null::<snd_timer_info>())).id as *const _ as usize },
5094         8usize,
5095         concat!(
5096             "Offset of field: ",
5097             stringify!(snd_timer_info),
5098             "::",
5099             stringify!(id)
5100         )
5101     );
5102     assert_eq!(
5103         unsafe { &(*(::std::ptr::null::<snd_timer_info>())).name as *const _ as usize },
5104         72usize,
5105         concat!(
5106             "Offset of field: ",
5107             stringify!(snd_timer_info),
5108             "::",
5109             stringify!(name)
5110         )
5111     );
5112     assert_eq!(
5113         unsafe { &(*(::std::ptr::null::<snd_timer_info>())).reserved0 as *const _ as usize },
5114         152usize,
5115         concat!(
5116             "Offset of field: ",
5117             stringify!(snd_timer_info),
5118             "::",
5119             stringify!(reserved0)
5120         )
5121     );
5122     assert_eq!(
5123         unsafe { &(*(::std::ptr::null::<snd_timer_info>())).resolution as *const _ as usize },
5124         160usize,
5125         concat!(
5126             "Offset of field: ",
5127             stringify!(snd_timer_info),
5128             "::",
5129             stringify!(resolution)
5130         )
5131     );
5132     assert_eq!(
5133         unsafe { &(*(::std::ptr::null::<snd_timer_info>())).reserved as *const _ as usize },
5134         168usize,
5135         concat!(
5136             "Offset of field: ",
5137             stringify!(snd_timer_info),
5138             "::",
5139             stringify!(reserved)
5140         )
5141     );
5142 }
5143 #[repr(C)]
5144 #[derive(Copy, Clone)]
5145 pub struct snd_timer_params {
5146     pub flags: ::std::os::raw::c_uint,
5147     pub ticks: ::std::os::raw::c_uint,
5148     pub queue_size: ::std::os::raw::c_uint,
5149     pub reserved0: ::std::os::raw::c_uint,
5150     pub filter: ::std::os::raw::c_uint,
5151     pub reserved: [::std::os::raw::c_uchar; 60usize],
5152 }
5153 #[test]
bindgen_test_layout_snd_timer_params()5154 fn bindgen_test_layout_snd_timer_params() {
5155     assert_eq!(
5156         ::std::mem::size_of::<snd_timer_params>(),
5157         80usize,
5158         concat!("Size of: ", stringify!(snd_timer_params))
5159     );
5160     assert_eq!(
5161         ::std::mem::align_of::<snd_timer_params>(),
5162         4usize,
5163         concat!("Alignment of ", stringify!(snd_timer_params))
5164     );
5165     assert_eq!(
5166         unsafe { &(*(::std::ptr::null::<snd_timer_params>())).flags as *const _ as usize },
5167         0usize,
5168         concat!(
5169             "Offset of field: ",
5170             stringify!(snd_timer_params),
5171             "::",
5172             stringify!(flags)
5173         )
5174     );
5175     assert_eq!(
5176         unsafe { &(*(::std::ptr::null::<snd_timer_params>())).ticks as *const _ as usize },
5177         4usize,
5178         concat!(
5179             "Offset of field: ",
5180             stringify!(snd_timer_params),
5181             "::",
5182             stringify!(ticks)
5183         )
5184     );
5185     assert_eq!(
5186         unsafe { &(*(::std::ptr::null::<snd_timer_params>())).queue_size as *const _ as usize },
5187         8usize,
5188         concat!(
5189             "Offset of field: ",
5190             stringify!(snd_timer_params),
5191             "::",
5192             stringify!(queue_size)
5193         )
5194     );
5195     assert_eq!(
5196         unsafe { &(*(::std::ptr::null::<snd_timer_params>())).reserved0 as *const _ as usize },
5197         12usize,
5198         concat!(
5199             "Offset of field: ",
5200             stringify!(snd_timer_params),
5201             "::",
5202             stringify!(reserved0)
5203         )
5204     );
5205     assert_eq!(
5206         unsafe { &(*(::std::ptr::null::<snd_timer_params>())).filter as *const _ as usize },
5207         16usize,
5208         concat!(
5209             "Offset of field: ",
5210             stringify!(snd_timer_params),
5211             "::",
5212             stringify!(filter)
5213         )
5214     );
5215     assert_eq!(
5216         unsafe { &(*(::std::ptr::null::<snd_timer_params>())).reserved as *const _ as usize },
5217         20usize,
5218         concat!(
5219             "Offset of field: ",
5220             stringify!(snd_timer_params),
5221             "::",
5222             stringify!(reserved)
5223         )
5224     );
5225 }
5226 #[repr(C)]
5227 #[derive(Copy, Clone)]
5228 pub struct snd_timer_status {
5229     pub tstamp: timespec,
5230     pub resolution: ::std::os::raw::c_uint,
5231     pub lost: ::std::os::raw::c_uint,
5232     pub overrun: ::std::os::raw::c_uint,
5233     pub queue: ::std::os::raw::c_uint,
5234     pub reserved: [::std::os::raw::c_uchar; 64usize],
5235 }
5236 #[test]
bindgen_test_layout_snd_timer_status()5237 fn bindgen_test_layout_snd_timer_status() {
5238     assert_eq!(
5239         ::std::mem::size_of::<snd_timer_status>(),
5240         96usize,
5241         concat!("Size of: ", stringify!(snd_timer_status))
5242     );
5243     assert_eq!(
5244         ::std::mem::align_of::<snd_timer_status>(),
5245         8usize,
5246         concat!("Alignment of ", stringify!(snd_timer_status))
5247     );
5248     assert_eq!(
5249         unsafe { &(*(::std::ptr::null::<snd_timer_status>())).tstamp as *const _ as usize },
5250         0usize,
5251         concat!(
5252             "Offset of field: ",
5253             stringify!(snd_timer_status),
5254             "::",
5255             stringify!(tstamp)
5256         )
5257     );
5258     assert_eq!(
5259         unsafe { &(*(::std::ptr::null::<snd_timer_status>())).resolution as *const _ as usize },
5260         16usize,
5261         concat!(
5262             "Offset of field: ",
5263             stringify!(snd_timer_status),
5264             "::",
5265             stringify!(resolution)
5266         )
5267     );
5268     assert_eq!(
5269         unsafe { &(*(::std::ptr::null::<snd_timer_status>())).lost as *const _ as usize },
5270         20usize,
5271         concat!(
5272             "Offset of field: ",
5273             stringify!(snd_timer_status),
5274             "::",
5275             stringify!(lost)
5276         )
5277     );
5278     assert_eq!(
5279         unsafe { &(*(::std::ptr::null::<snd_timer_status>())).overrun as *const _ as usize },
5280         24usize,
5281         concat!(
5282             "Offset of field: ",
5283             stringify!(snd_timer_status),
5284             "::",
5285             stringify!(overrun)
5286         )
5287     );
5288     assert_eq!(
5289         unsafe { &(*(::std::ptr::null::<snd_timer_status>())).queue as *const _ as usize },
5290         28usize,
5291         concat!(
5292             "Offset of field: ",
5293             stringify!(snd_timer_status),
5294             "::",
5295             stringify!(queue)
5296         )
5297     );
5298     assert_eq!(
5299         unsafe { &(*(::std::ptr::null::<snd_timer_status>())).reserved as *const _ as usize },
5300         32usize,
5301         concat!(
5302             "Offset of field: ",
5303             stringify!(snd_timer_status),
5304             "::",
5305             stringify!(reserved)
5306         )
5307     );
5308 }
5309 #[repr(C)]
5310 #[derive(Debug, Copy, Clone)]
5311 pub struct snd_timer_read {
5312     pub resolution: ::std::os::raw::c_uint,
5313     pub ticks: ::std::os::raw::c_uint,
5314 }
5315 #[test]
bindgen_test_layout_snd_timer_read()5316 fn bindgen_test_layout_snd_timer_read() {
5317     assert_eq!(
5318         ::std::mem::size_of::<snd_timer_read>(),
5319         8usize,
5320         concat!("Size of: ", stringify!(snd_timer_read))
5321     );
5322     assert_eq!(
5323         ::std::mem::align_of::<snd_timer_read>(),
5324         4usize,
5325         concat!("Alignment of ", stringify!(snd_timer_read))
5326     );
5327     assert_eq!(
5328         unsafe { &(*(::std::ptr::null::<snd_timer_read>())).resolution as *const _ as usize },
5329         0usize,
5330         concat!(
5331             "Offset of field: ",
5332             stringify!(snd_timer_read),
5333             "::",
5334             stringify!(resolution)
5335         )
5336     );
5337     assert_eq!(
5338         unsafe { &(*(::std::ptr::null::<snd_timer_read>())).ticks as *const _ as usize },
5339         4usize,
5340         concat!(
5341             "Offset of field: ",
5342             stringify!(snd_timer_read),
5343             "::",
5344             stringify!(ticks)
5345         )
5346     );
5347 }
5348 pub const SNDRV_TIMER_EVENT_RESOLUTION: _bindgen_ty_13 = 0;
5349 pub const SNDRV_TIMER_EVENT_TICK: _bindgen_ty_13 = 1;
5350 pub const SNDRV_TIMER_EVENT_START: _bindgen_ty_13 = 2;
5351 pub const SNDRV_TIMER_EVENT_STOP: _bindgen_ty_13 = 3;
5352 pub const SNDRV_TIMER_EVENT_CONTINUE: _bindgen_ty_13 = 4;
5353 pub const SNDRV_TIMER_EVENT_PAUSE: _bindgen_ty_13 = 5;
5354 pub const SNDRV_TIMER_EVENT_EARLY: _bindgen_ty_13 = 6;
5355 pub const SNDRV_TIMER_EVENT_SUSPEND: _bindgen_ty_13 = 7;
5356 pub const SNDRV_TIMER_EVENT_RESUME: _bindgen_ty_13 = 8;
5357 pub const SNDRV_TIMER_EVENT_MSTART: _bindgen_ty_13 = 12;
5358 pub const SNDRV_TIMER_EVENT_MSTOP: _bindgen_ty_13 = 13;
5359 pub const SNDRV_TIMER_EVENT_MCONTINUE: _bindgen_ty_13 = 14;
5360 pub const SNDRV_TIMER_EVENT_MPAUSE: _bindgen_ty_13 = 15;
5361 pub const SNDRV_TIMER_EVENT_MSUSPEND: _bindgen_ty_13 = 17;
5362 pub const SNDRV_TIMER_EVENT_MRESUME: _bindgen_ty_13 = 18;
5363 pub type _bindgen_ty_13 = u32;
5364 #[repr(C)]
5365 #[derive(Debug, Copy, Clone)]
5366 pub struct snd_timer_tread {
5367     pub event: ::std::os::raw::c_int,
5368     pub tstamp: timespec,
5369     pub val: ::std::os::raw::c_uint,
5370 }
5371 #[test]
bindgen_test_layout_snd_timer_tread()5372 fn bindgen_test_layout_snd_timer_tread() {
5373     assert_eq!(
5374         ::std::mem::size_of::<snd_timer_tread>(),
5375         32usize,
5376         concat!("Size of: ", stringify!(snd_timer_tread))
5377     );
5378     assert_eq!(
5379         ::std::mem::align_of::<snd_timer_tread>(),
5380         8usize,
5381         concat!("Alignment of ", stringify!(snd_timer_tread))
5382     );
5383     assert_eq!(
5384         unsafe { &(*(::std::ptr::null::<snd_timer_tread>())).event as *const _ as usize },
5385         0usize,
5386         concat!(
5387             "Offset of field: ",
5388             stringify!(snd_timer_tread),
5389             "::",
5390             stringify!(event)
5391         )
5392     );
5393     assert_eq!(
5394         unsafe { &(*(::std::ptr::null::<snd_timer_tread>())).tstamp as *const _ as usize },
5395         8usize,
5396         concat!(
5397             "Offset of field: ",
5398             stringify!(snd_timer_tread),
5399             "::",
5400             stringify!(tstamp)
5401         )
5402     );
5403     assert_eq!(
5404         unsafe { &(*(::std::ptr::null::<snd_timer_tread>())).val as *const _ as usize },
5405         24usize,
5406         concat!(
5407             "Offset of field: ",
5408             stringify!(snd_timer_tread),
5409             "::",
5410             stringify!(val)
5411         )
5412     );
5413 }
5414 #[repr(C)]
5415 #[derive(Copy, Clone)]
5416 pub struct snd_ctl_card_info {
5417     pub card: ::std::os::raw::c_int,
5418     pub pad: ::std::os::raw::c_int,
5419     pub id: [::std::os::raw::c_uchar; 16usize],
5420     pub driver: [::std::os::raw::c_uchar; 16usize],
5421     pub name: [::std::os::raw::c_uchar; 32usize],
5422     pub longname: [::std::os::raw::c_uchar; 80usize],
5423     pub reserved_: [::std::os::raw::c_uchar; 16usize],
5424     pub mixername: [::std::os::raw::c_uchar; 80usize],
5425     pub components: [::std::os::raw::c_uchar; 128usize],
5426 }
5427 #[test]
bindgen_test_layout_snd_ctl_card_info()5428 fn bindgen_test_layout_snd_ctl_card_info() {
5429     assert_eq!(
5430         ::std::mem::size_of::<snd_ctl_card_info>(),
5431         376usize,
5432         concat!("Size of: ", stringify!(snd_ctl_card_info))
5433     );
5434     assert_eq!(
5435         ::std::mem::align_of::<snd_ctl_card_info>(),
5436         4usize,
5437         concat!("Alignment of ", stringify!(snd_ctl_card_info))
5438     );
5439     assert_eq!(
5440         unsafe { &(*(::std::ptr::null::<snd_ctl_card_info>())).card as *const _ as usize },
5441         0usize,
5442         concat!(
5443             "Offset of field: ",
5444             stringify!(snd_ctl_card_info),
5445             "::",
5446             stringify!(card)
5447         )
5448     );
5449     assert_eq!(
5450         unsafe { &(*(::std::ptr::null::<snd_ctl_card_info>())).pad as *const _ as usize },
5451         4usize,
5452         concat!(
5453             "Offset of field: ",
5454             stringify!(snd_ctl_card_info),
5455             "::",
5456             stringify!(pad)
5457         )
5458     );
5459     assert_eq!(
5460         unsafe { &(*(::std::ptr::null::<snd_ctl_card_info>())).id as *const _ as usize },
5461         8usize,
5462         concat!(
5463             "Offset of field: ",
5464             stringify!(snd_ctl_card_info),
5465             "::",
5466             stringify!(id)
5467         )
5468     );
5469     assert_eq!(
5470         unsafe { &(*(::std::ptr::null::<snd_ctl_card_info>())).driver as *const _ as usize },
5471         24usize,
5472         concat!(
5473             "Offset of field: ",
5474             stringify!(snd_ctl_card_info),
5475             "::",
5476             stringify!(driver)
5477         )
5478     );
5479     assert_eq!(
5480         unsafe { &(*(::std::ptr::null::<snd_ctl_card_info>())).name as *const _ as usize },
5481         40usize,
5482         concat!(
5483             "Offset of field: ",
5484             stringify!(snd_ctl_card_info),
5485             "::",
5486             stringify!(name)
5487         )
5488     );
5489     assert_eq!(
5490         unsafe { &(*(::std::ptr::null::<snd_ctl_card_info>())).longname as *const _ as usize },
5491         72usize,
5492         concat!(
5493             "Offset of field: ",
5494             stringify!(snd_ctl_card_info),
5495             "::",
5496             stringify!(longname)
5497         )
5498     );
5499     assert_eq!(
5500         unsafe { &(*(::std::ptr::null::<snd_ctl_card_info>())).reserved_ as *const _ as usize },
5501         152usize,
5502         concat!(
5503             "Offset of field: ",
5504             stringify!(snd_ctl_card_info),
5505             "::",
5506             stringify!(reserved_)
5507         )
5508     );
5509     assert_eq!(
5510         unsafe { &(*(::std::ptr::null::<snd_ctl_card_info>())).mixername as *const _ as usize },
5511         168usize,
5512         concat!(
5513             "Offset of field: ",
5514             stringify!(snd_ctl_card_info),
5515             "::",
5516             stringify!(mixername)
5517         )
5518     );
5519     assert_eq!(
5520         unsafe { &(*(::std::ptr::null::<snd_ctl_card_info>())).components as *const _ as usize },
5521         248usize,
5522         concat!(
5523             "Offset of field: ",
5524             stringify!(snd_ctl_card_info),
5525             "::",
5526             stringify!(components)
5527         )
5528     );
5529 }
5530 pub type snd_ctl_elem_type_t = ::std::os::raw::c_int;
5531 pub type snd_ctl_elem_iface_t = ::std::os::raw::c_int;
5532 #[repr(C)]
5533 #[derive(Copy, Clone)]
5534 pub struct snd_ctl_elem_id {
5535     pub numid: ::std::os::raw::c_uint,
5536     pub iface: snd_ctl_elem_iface_t,
5537     pub device: ::std::os::raw::c_uint,
5538     pub subdevice: ::std::os::raw::c_uint,
5539     pub name: [::std::os::raw::c_uchar; 44usize],
5540     pub index: ::std::os::raw::c_uint,
5541 }
5542 #[test]
bindgen_test_layout_snd_ctl_elem_id()5543 fn bindgen_test_layout_snd_ctl_elem_id() {
5544     assert_eq!(
5545         ::std::mem::size_of::<snd_ctl_elem_id>(),
5546         64usize,
5547         concat!("Size of: ", stringify!(snd_ctl_elem_id))
5548     );
5549     assert_eq!(
5550         ::std::mem::align_of::<snd_ctl_elem_id>(),
5551         4usize,
5552         concat!("Alignment of ", stringify!(snd_ctl_elem_id))
5553     );
5554     assert_eq!(
5555         unsafe { &(*(::std::ptr::null::<snd_ctl_elem_id>())).numid as *const _ as usize },
5556         0usize,
5557         concat!(
5558             "Offset of field: ",
5559             stringify!(snd_ctl_elem_id),
5560             "::",
5561             stringify!(numid)
5562         )
5563     );
5564     assert_eq!(
5565         unsafe { &(*(::std::ptr::null::<snd_ctl_elem_id>())).iface as *const _ as usize },
5566         4usize,
5567         concat!(
5568             "Offset of field: ",
5569             stringify!(snd_ctl_elem_id),
5570             "::",
5571             stringify!(iface)
5572         )
5573     );
5574     assert_eq!(
5575         unsafe { &(*(::std::ptr::null::<snd_ctl_elem_id>())).device as *const _ as usize },
5576         8usize,
5577         concat!(
5578             "Offset of field: ",
5579             stringify!(snd_ctl_elem_id),
5580             "::",
5581             stringify!(device)
5582         )
5583     );
5584     assert_eq!(
5585         unsafe { &(*(::std::ptr::null::<snd_ctl_elem_id>())).subdevice as *const _ as usize },
5586         12usize,
5587         concat!(
5588             "Offset of field: ",
5589             stringify!(snd_ctl_elem_id),
5590             "::",
5591             stringify!(subdevice)
5592         )
5593     );
5594     assert_eq!(
5595         unsafe { &(*(::std::ptr::null::<snd_ctl_elem_id>())).name as *const _ as usize },
5596         16usize,
5597         concat!(
5598             "Offset of field: ",
5599             stringify!(snd_ctl_elem_id),
5600             "::",
5601             stringify!(name)
5602         )
5603     );
5604     assert_eq!(
5605         unsafe { &(*(::std::ptr::null::<snd_ctl_elem_id>())).index as *const _ as usize },
5606         60usize,
5607         concat!(
5608             "Offset of field: ",
5609             stringify!(snd_ctl_elem_id),
5610             "::",
5611             stringify!(index)
5612         )
5613     );
5614 }
5615 #[repr(C)]
5616 #[derive(Copy, Clone)]
5617 pub struct snd_ctl_elem_list {
5618     pub offset: ::std::os::raw::c_uint,
5619     pub space: ::std::os::raw::c_uint,
5620     pub used: ::std::os::raw::c_uint,
5621     pub count: ::std::os::raw::c_uint,
5622     pub pids: *mut snd_ctl_elem_id,
5623     pub reserved: [::std::os::raw::c_uchar; 50usize],
5624 }
5625 #[test]
bindgen_test_layout_snd_ctl_elem_list()5626 fn bindgen_test_layout_snd_ctl_elem_list() {
5627     assert_eq!(
5628         ::std::mem::size_of::<snd_ctl_elem_list>(),
5629         80usize,
5630         concat!("Size of: ", stringify!(snd_ctl_elem_list))
5631     );
5632     assert_eq!(
5633         ::std::mem::align_of::<snd_ctl_elem_list>(),
5634         8usize,
5635         concat!("Alignment of ", stringify!(snd_ctl_elem_list))
5636     );
5637     assert_eq!(
5638         unsafe { &(*(::std::ptr::null::<snd_ctl_elem_list>())).offset as *const _ as usize },
5639         0usize,
5640         concat!(
5641             "Offset of field: ",
5642             stringify!(snd_ctl_elem_list),
5643             "::",
5644             stringify!(offset)
5645         )
5646     );
5647     assert_eq!(
5648         unsafe { &(*(::std::ptr::null::<snd_ctl_elem_list>())).space as *const _ as usize },
5649         4usize,
5650         concat!(
5651             "Offset of field: ",
5652             stringify!(snd_ctl_elem_list),
5653             "::",
5654             stringify!(space)
5655         )
5656     );
5657     assert_eq!(
5658         unsafe { &(*(::std::ptr::null::<snd_ctl_elem_list>())).used as *const _ as usize },
5659         8usize,
5660         concat!(
5661             "Offset of field: ",
5662             stringify!(snd_ctl_elem_list),
5663             "::",
5664             stringify!(used)
5665         )
5666     );
5667     assert_eq!(
5668         unsafe { &(*(::std::ptr::null::<snd_ctl_elem_list>())).count as *const _ as usize },
5669         12usize,
5670         concat!(
5671             "Offset of field: ",
5672             stringify!(snd_ctl_elem_list),
5673             "::",
5674             stringify!(count)
5675         )
5676     );
5677     assert_eq!(
5678         unsafe { &(*(::std::ptr::null::<snd_ctl_elem_list>())).pids as *const _ as usize },
5679         16usize,
5680         concat!(
5681             "Offset of field: ",
5682             stringify!(snd_ctl_elem_list),
5683             "::",
5684             stringify!(pids)
5685         )
5686     );
5687     assert_eq!(
5688         unsafe { &(*(::std::ptr::null::<snd_ctl_elem_list>())).reserved as *const _ as usize },
5689         24usize,
5690         concat!(
5691             "Offset of field: ",
5692             stringify!(snd_ctl_elem_list),
5693             "::",
5694             stringify!(reserved)
5695         )
5696     );
5697 }
5698 #[repr(C)]
5699 #[derive(Copy, Clone)]
5700 pub struct snd_ctl_elem_info {
5701     pub id: snd_ctl_elem_id,
5702     pub type_: snd_ctl_elem_type_t,
5703     pub access: ::std::os::raw::c_uint,
5704     pub count: ::std::os::raw::c_uint,
5705     pub owner: __kernel_pid_t,
5706     pub value: snd_ctl_elem_info__bindgen_ty_1,
5707     pub dimen: snd_ctl_elem_info__bindgen_ty_2,
5708     pub reserved: [::std::os::raw::c_uchar; 56usize],
5709 }
5710 #[repr(C)]
5711 #[derive(Copy, Clone)]
5712 pub union snd_ctl_elem_info__bindgen_ty_1 {
5713     pub integer: snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_1,
5714     pub integer64: snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_2,
5715     pub enumerated: snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_3,
5716     pub reserved: [::std::os::raw::c_uchar; 128usize],
5717     _bindgen_union_align: [u64; 16usize],
5718 }
5719 #[repr(C)]
5720 #[derive(Debug, Copy, Clone)]
5721 pub struct snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_1 {
5722     pub min: ::std::os::raw::c_long,
5723     pub max: ::std::os::raw::c_long,
5724     pub step: ::std::os::raw::c_long,
5725 }
5726 #[test]
bindgen_test_layout_snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_1()5727 fn bindgen_test_layout_snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_1() {
5728     assert_eq!(
5729         ::std::mem::size_of::<snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_1>(),
5730         24usize,
5731         concat!(
5732             "Size of: ",
5733             stringify!(snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_1)
5734         )
5735     );
5736     assert_eq!(
5737         ::std::mem::align_of::<snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_1>(),
5738         8usize,
5739         concat!(
5740             "Alignment of ",
5741             stringify!(snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_1)
5742         )
5743     );
5744     assert_eq!(
5745         unsafe {
5746             &(*(::std::ptr::null::<snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_1>())).min
5747                 as *const _ as usize
5748         },
5749         0usize,
5750         concat!(
5751             "Offset of field: ",
5752             stringify!(snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_1),
5753             "::",
5754             stringify!(min)
5755         )
5756     );
5757     assert_eq!(
5758         unsafe {
5759             &(*(::std::ptr::null::<snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_1>())).max
5760                 as *const _ as usize
5761         },
5762         8usize,
5763         concat!(
5764             "Offset of field: ",
5765             stringify!(snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_1),
5766             "::",
5767             stringify!(max)
5768         )
5769     );
5770     assert_eq!(
5771         unsafe {
5772             &(*(::std::ptr::null::<snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_1>())).step
5773                 as *const _ as usize
5774         },
5775         16usize,
5776         concat!(
5777             "Offset of field: ",
5778             stringify!(snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_1),
5779             "::",
5780             stringify!(step)
5781         )
5782     );
5783 }
5784 #[repr(C)]
5785 #[derive(Debug, Copy, Clone)]
5786 pub struct snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_2 {
5787     pub min: ::std::os::raw::c_longlong,
5788     pub max: ::std::os::raw::c_longlong,
5789     pub step: ::std::os::raw::c_longlong,
5790 }
5791 #[test]
bindgen_test_layout_snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_2()5792 fn bindgen_test_layout_snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_2() {
5793     assert_eq!(
5794         ::std::mem::size_of::<snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_2>(),
5795         24usize,
5796         concat!(
5797             "Size of: ",
5798             stringify!(snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_2)
5799         )
5800     );
5801     assert_eq!(
5802         ::std::mem::align_of::<snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_2>(),
5803         8usize,
5804         concat!(
5805             "Alignment of ",
5806             stringify!(snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_2)
5807         )
5808     );
5809     assert_eq!(
5810         unsafe {
5811             &(*(::std::ptr::null::<snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_2>())).min
5812                 as *const _ as usize
5813         },
5814         0usize,
5815         concat!(
5816             "Offset of field: ",
5817             stringify!(snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_2),
5818             "::",
5819             stringify!(min)
5820         )
5821     );
5822     assert_eq!(
5823         unsafe {
5824             &(*(::std::ptr::null::<snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_2>())).max
5825                 as *const _ as usize
5826         },
5827         8usize,
5828         concat!(
5829             "Offset of field: ",
5830             stringify!(snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_2),
5831             "::",
5832             stringify!(max)
5833         )
5834     );
5835     assert_eq!(
5836         unsafe {
5837             &(*(::std::ptr::null::<snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_2>())).step
5838                 as *const _ as usize
5839         },
5840         16usize,
5841         concat!(
5842             "Offset of field: ",
5843             stringify!(snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_2),
5844             "::",
5845             stringify!(step)
5846         )
5847     );
5848 }
5849 #[repr(C)]
5850 #[derive(Copy, Clone)]
5851 pub struct snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_3 {
5852     pub items: ::std::os::raw::c_uint,
5853     pub item: ::std::os::raw::c_uint,
5854     pub name: [::std::os::raw::c_char; 64usize],
5855     pub names_ptr: __u64,
5856     pub names_length: ::std::os::raw::c_uint,
5857 }
5858 #[test]
bindgen_test_layout_snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_3()5859 fn bindgen_test_layout_snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_3() {
5860     assert_eq!(
5861         ::std::mem::size_of::<snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_3>(),
5862         88usize,
5863         concat!(
5864             "Size of: ",
5865             stringify!(snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_3)
5866         )
5867     );
5868     assert_eq!(
5869         ::std::mem::align_of::<snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_3>(),
5870         8usize,
5871         concat!(
5872             "Alignment of ",
5873             stringify!(snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_3)
5874         )
5875     );
5876     assert_eq!(
5877         unsafe {
5878             &(*(::std::ptr::null::<snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_3>())).items
5879                 as *const _ as usize
5880         },
5881         0usize,
5882         concat!(
5883             "Offset of field: ",
5884             stringify!(snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_3),
5885             "::",
5886             stringify!(items)
5887         )
5888     );
5889     assert_eq!(
5890         unsafe {
5891             &(*(::std::ptr::null::<snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_3>())).item
5892                 as *const _ as usize
5893         },
5894         4usize,
5895         concat!(
5896             "Offset of field: ",
5897             stringify!(snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_3),
5898             "::",
5899             stringify!(item)
5900         )
5901     );
5902     assert_eq!(
5903         unsafe {
5904             &(*(::std::ptr::null::<snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_3>())).name
5905                 as *const _ as usize
5906         },
5907         8usize,
5908         concat!(
5909             "Offset of field: ",
5910             stringify!(snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_3),
5911             "::",
5912             stringify!(name)
5913         )
5914     );
5915     assert_eq!(
5916         unsafe {
5917             &(*(::std::ptr::null::<snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_3>())).names_ptr
5918                 as *const _ as usize
5919         },
5920         72usize,
5921         concat!(
5922             "Offset of field: ",
5923             stringify!(snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_3),
5924             "::",
5925             stringify!(names_ptr)
5926         )
5927     );
5928     assert_eq!(
5929         unsafe {
5930             &(*(::std::ptr::null::<snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_3>())).names_length
5931                 as *const _ as usize
5932         },
5933         80usize,
5934         concat!(
5935             "Offset of field: ",
5936             stringify!(snd_ctl_elem_info__bindgen_ty_1__bindgen_ty_3),
5937             "::",
5938             stringify!(names_length)
5939         )
5940     );
5941 }
5942 #[test]
bindgen_test_layout_snd_ctl_elem_info__bindgen_ty_1()5943 fn bindgen_test_layout_snd_ctl_elem_info__bindgen_ty_1() {
5944     assert_eq!(
5945         ::std::mem::size_of::<snd_ctl_elem_info__bindgen_ty_1>(),
5946         128usize,
5947         concat!("Size of: ", stringify!(snd_ctl_elem_info__bindgen_ty_1))
5948     );
5949     assert_eq!(
5950         ::std::mem::align_of::<snd_ctl_elem_info__bindgen_ty_1>(),
5951         8usize,
5952         concat!("Alignment of ", stringify!(snd_ctl_elem_info__bindgen_ty_1))
5953     );
5954     assert_eq!(
5955         unsafe {
5956             &(*(::std::ptr::null::<snd_ctl_elem_info__bindgen_ty_1>())).integer as *const _ as usize
5957         },
5958         0usize,
5959         concat!(
5960             "Offset of field: ",
5961             stringify!(snd_ctl_elem_info__bindgen_ty_1),
5962             "::",
5963             stringify!(integer)
5964         )
5965     );
5966     assert_eq!(
5967         unsafe {
5968             &(*(::std::ptr::null::<snd_ctl_elem_info__bindgen_ty_1>())).integer64 as *const _
5969                 as usize
5970         },
5971         0usize,
5972         concat!(
5973             "Offset of field: ",
5974             stringify!(snd_ctl_elem_info__bindgen_ty_1),
5975             "::",
5976             stringify!(integer64)
5977         )
5978     );
5979     assert_eq!(
5980         unsafe {
5981             &(*(::std::ptr::null::<snd_ctl_elem_info__bindgen_ty_1>())).enumerated as *const _
5982                 as usize
5983         },
5984         0usize,
5985         concat!(
5986             "Offset of field: ",
5987             stringify!(snd_ctl_elem_info__bindgen_ty_1),
5988             "::",
5989             stringify!(enumerated)
5990         )
5991     );
5992     assert_eq!(
5993         unsafe {
5994             &(*(::std::ptr::null::<snd_ctl_elem_info__bindgen_ty_1>())).reserved as *const _
5995                 as usize
5996         },
5997         0usize,
5998         concat!(
5999             "Offset of field: ",
6000             stringify!(snd_ctl_elem_info__bindgen_ty_1),
6001             "::",
6002             stringify!(reserved)
6003         )
6004     );
6005 }
6006 #[repr(C)]
6007 #[derive(Copy, Clone)]
6008 pub union snd_ctl_elem_info__bindgen_ty_2 {
6009     pub d: [::std::os::raw::c_ushort; 4usize],
6010     pub d_ptr: *mut ::std::os::raw::c_ushort,
6011     _bindgen_union_align: u64,
6012 }
6013 #[test]
bindgen_test_layout_snd_ctl_elem_info__bindgen_ty_2()6014 fn bindgen_test_layout_snd_ctl_elem_info__bindgen_ty_2() {
6015     assert_eq!(
6016         ::std::mem::size_of::<snd_ctl_elem_info__bindgen_ty_2>(),
6017         8usize,
6018         concat!("Size of: ", stringify!(snd_ctl_elem_info__bindgen_ty_2))
6019     );
6020     assert_eq!(
6021         ::std::mem::align_of::<snd_ctl_elem_info__bindgen_ty_2>(),
6022         8usize,
6023         concat!("Alignment of ", stringify!(snd_ctl_elem_info__bindgen_ty_2))
6024     );
6025     assert_eq!(
6026         unsafe {
6027             &(*(::std::ptr::null::<snd_ctl_elem_info__bindgen_ty_2>())).d as *const _ as usize
6028         },
6029         0usize,
6030         concat!(
6031             "Offset of field: ",
6032             stringify!(snd_ctl_elem_info__bindgen_ty_2),
6033             "::",
6034             stringify!(d)
6035         )
6036     );
6037     assert_eq!(
6038         unsafe {
6039             &(*(::std::ptr::null::<snd_ctl_elem_info__bindgen_ty_2>())).d_ptr as *const _ as usize
6040         },
6041         0usize,
6042         concat!(
6043             "Offset of field: ",
6044             stringify!(snd_ctl_elem_info__bindgen_ty_2),
6045             "::",
6046             stringify!(d_ptr)
6047         )
6048     );
6049 }
6050 #[test]
bindgen_test_layout_snd_ctl_elem_info()6051 fn bindgen_test_layout_snd_ctl_elem_info() {
6052     assert_eq!(
6053         ::std::mem::size_of::<snd_ctl_elem_info>(),
6054         272usize,
6055         concat!("Size of: ", stringify!(snd_ctl_elem_info))
6056     );
6057     assert_eq!(
6058         ::std::mem::align_of::<snd_ctl_elem_info>(),
6059         8usize,
6060         concat!("Alignment of ", stringify!(snd_ctl_elem_info))
6061     );
6062     assert_eq!(
6063         unsafe { &(*(::std::ptr::null::<snd_ctl_elem_info>())).id as *const _ as usize },
6064         0usize,
6065         concat!(
6066             "Offset of field: ",
6067             stringify!(snd_ctl_elem_info),
6068             "::",
6069             stringify!(id)
6070         )
6071     );
6072     assert_eq!(
6073         unsafe { &(*(::std::ptr::null::<snd_ctl_elem_info>())).type_ as *const _ as usize },
6074         64usize,
6075         concat!(
6076             "Offset of field: ",
6077             stringify!(snd_ctl_elem_info),
6078             "::",
6079             stringify!(type_)
6080         )
6081     );
6082     assert_eq!(
6083         unsafe { &(*(::std::ptr::null::<snd_ctl_elem_info>())).access as *const _ as usize },
6084         68usize,
6085         concat!(
6086             "Offset of field: ",
6087             stringify!(snd_ctl_elem_info),
6088             "::",
6089             stringify!(access)
6090         )
6091     );
6092     assert_eq!(
6093         unsafe { &(*(::std::ptr::null::<snd_ctl_elem_info>())).count as *const _ as usize },
6094         72usize,
6095         concat!(
6096             "Offset of field: ",
6097             stringify!(snd_ctl_elem_info),
6098             "::",
6099             stringify!(count)
6100         )
6101     );
6102     assert_eq!(
6103         unsafe { &(*(::std::ptr::null::<snd_ctl_elem_info>())).owner as *const _ as usize },
6104         76usize,
6105         concat!(
6106             "Offset of field: ",
6107             stringify!(snd_ctl_elem_info),
6108             "::",
6109             stringify!(owner)
6110         )
6111     );
6112     assert_eq!(
6113         unsafe { &(*(::std::ptr::null::<snd_ctl_elem_info>())).value as *const _ as usize },
6114         80usize,
6115         concat!(
6116             "Offset of field: ",
6117             stringify!(snd_ctl_elem_info),
6118             "::",
6119             stringify!(value)
6120         )
6121     );
6122     assert_eq!(
6123         unsafe { &(*(::std::ptr::null::<snd_ctl_elem_info>())).dimen as *const _ as usize },
6124         208usize,
6125         concat!(
6126             "Offset of field: ",
6127             stringify!(snd_ctl_elem_info),
6128             "::",
6129             stringify!(dimen)
6130         )
6131     );
6132     assert_eq!(
6133         unsafe { &(*(::std::ptr::null::<snd_ctl_elem_info>())).reserved as *const _ as usize },
6134         216usize,
6135         concat!(
6136             "Offset of field: ",
6137             stringify!(snd_ctl_elem_info),
6138             "::",
6139             stringify!(reserved)
6140         )
6141     );
6142 }
6143 #[repr(C)]
6144 #[derive(Copy, Clone)]
6145 pub struct snd_ctl_elem_value {
6146     pub id: snd_ctl_elem_id,
6147     pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize], u8>,
6148     pub value: snd_ctl_elem_value__bindgen_ty_1,
6149     pub tstamp: timespec,
6150     pub reserved: [::std::os::raw::c_uchar; 112usize],
6151 }
6152 #[repr(C)]
6153 #[derive(Copy, Clone)]
6154 pub union snd_ctl_elem_value__bindgen_ty_1 {
6155     pub integer: snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_1,
6156     pub integer64: snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_2,
6157     pub enumerated: snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_3,
6158     pub bytes: snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_4,
6159     pub iec958: snd_aes_iec958,
6160     _bindgen_union_align: [u64; 128usize],
6161 }
6162 #[repr(C)]
6163 #[derive(Copy, Clone)]
6164 pub union snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_1 {
6165     pub value: [::std::os::raw::c_long; 128usize],
6166     pub value_ptr: *mut ::std::os::raw::c_long,
6167     _bindgen_union_align: [u64; 128usize],
6168 }
6169 #[test]
bindgen_test_layout_snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_1()6170 fn bindgen_test_layout_snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_1() {
6171     assert_eq!(
6172         ::std::mem::size_of::<snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_1>(),
6173         1024usize,
6174         concat!(
6175             "Size of: ",
6176             stringify!(snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_1)
6177         )
6178     );
6179     assert_eq!(
6180         ::std::mem::align_of::<snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_1>(),
6181         8usize,
6182         concat!(
6183             "Alignment of ",
6184             stringify!(snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_1)
6185         )
6186     );
6187     assert_eq!(
6188         unsafe {
6189             &(*(::std::ptr::null::<snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_1>())).value
6190                 as *const _ as usize
6191         },
6192         0usize,
6193         concat!(
6194             "Offset of field: ",
6195             stringify!(snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_1),
6196             "::",
6197             stringify!(value)
6198         )
6199     );
6200     assert_eq!(
6201         unsafe {
6202             &(*(::std::ptr::null::<snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_1>())).value_ptr
6203                 as *const _ as usize
6204         },
6205         0usize,
6206         concat!(
6207             "Offset of field: ",
6208             stringify!(snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_1),
6209             "::",
6210             stringify!(value_ptr)
6211         )
6212     );
6213 }
6214 #[repr(C)]
6215 #[derive(Copy, Clone)]
6216 pub union snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_2 {
6217     pub value: [::std::os::raw::c_longlong; 64usize],
6218     pub value_ptr: *mut ::std::os::raw::c_longlong,
6219     _bindgen_union_align: [u64; 64usize],
6220 }
6221 #[test]
bindgen_test_layout_snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_2()6222 fn bindgen_test_layout_snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_2() {
6223     assert_eq!(
6224         ::std::mem::size_of::<snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_2>(),
6225         512usize,
6226         concat!(
6227             "Size of: ",
6228             stringify!(snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_2)
6229         )
6230     );
6231     assert_eq!(
6232         ::std::mem::align_of::<snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_2>(),
6233         8usize,
6234         concat!(
6235             "Alignment of ",
6236             stringify!(snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_2)
6237         )
6238     );
6239     assert_eq!(
6240         unsafe {
6241             &(*(::std::ptr::null::<snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_2>())).value
6242                 as *const _ as usize
6243         },
6244         0usize,
6245         concat!(
6246             "Offset of field: ",
6247             stringify!(snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_2),
6248             "::",
6249             stringify!(value)
6250         )
6251     );
6252     assert_eq!(
6253         unsafe {
6254             &(*(::std::ptr::null::<snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_2>())).value_ptr
6255                 as *const _ as usize
6256         },
6257         0usize,
6258         concat!(
6259             "Offset of field: ",
6260             stringify!(snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_2),
6261             "::",
6262             stringify!(value_ptr)
6263         )
6264     );
6265 }
6266 #[repr(C)]
6267 #[derive(Copy, Clone)]
6268 pub union snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_3 {
6269     pub item: [::std::os::raw::c_uint; 128usize],
6270     pub item_ptr: *mut ::std::os::raw::c_uint,
6271     _bindgen_union_align: [u64; 64usize],
6272 }
6273 #[test]
bindgen_test_layout_snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_3()6274 fn bindgen_test_layout_snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_3() {
6275     assert_eq!(
6276         ::std::mem::size_of::<snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_3>(),
6277         512usize,
6278         concat!(
6279             "Size of: ",
6280             stringify!(snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_3)
6281         )
6282     );
6283     assert_eq!(
6284         ::std::mem::align_of::<snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_3>(),
6285         8usize,
6286         concat!(
6287             "Alignment of ",
6288             stringify!(snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_3)
6289         )
6290     );
6291     assert_eq!(
6292         unsafe {
6293             &(*(::std::ptr::null::<snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_3>())).item
6294                 as *const _ as usize
6295         },
6296         0usize,
6297         concat!(
6298             "Offset of field: ",
6299             stringify!(snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_3),
6300             "::",
6301             stringify!(item)
6302         )
6303     );
6304     assert_eq!(
6305         unsafe {
6306             &(*(::std::ptr::null::<snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_3>())).item_ptr
6307                 as *const _ as usize
6308         },
6309         0usize,
6310         concat!(
6311             "Offset of field: ",
6312             stringify!(snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_3),
6313             "::",
6314             stringify!(item_ptr)
6315         )
6316     );
6317 }
6318 #[repr(C)]
6319 #[derive(Copy, Clone)]
6320 pub union snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_4 {
6321     pub data: [::std::os::raw::c_uchar; 512usize],
6322     pub data_ptr: *mut ::std::os::raw::c_uchar,
6323     _bindgen_union_align: [u64; 64usize],
6324 }
6325 #[test]
bindgen_test_layout_snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_4()6326 fn bindgen_test_layout_snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_4() {
6327     assert_eq!(
6328         ::std::mem::size_of::<snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_4>(),
6329         512usize,
6330         concat!(
6331             "Size of: ",
6332             stringify!(snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_4)
6333         )
6334     );
6335     assert_eq!(
6336         ::std::mem::align_of::<snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_4>(),
6337         8usize,
6338         concat!(
6339             "Alignment of ",
6340             stringify!(snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_4)
6341         )
6342     );
6343     assert_eq!(
6344         unsafe {
6345             &(*(::std::ptr::null::<snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_4>())).data
6346                 as *const _ as usize
6347         },
6348         0usize,
6349         concat!(
6350             "Offset of field: ",
6351             stringify!(snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_4),
6352             "::",
6353             stringify!(data)
6354         )
6355     );
6356     assert_eq!(
6357         unsafe {
6358             &(*(::std::ptr::null::<snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_4>())).data_ptr
6359                 as *const _ as usize
6360         },
6361         0usize,
6362         concat!(
6363             "Offset of field: ",
6364             stringify!(snd_ctl_elem_value__bindgen_ty_1__bindgen_ty_4),
6365             "::",
6366             stringify!(data_ptr)
6367         )
6368     );
6369 }
6370 #[test]
bindgen_test_layout_snd_ctl_elem_value__bindgen_ty_1()6371 fn bindgen_test_layout_snd_ctl_elem_value__bindgen_ty_1() {
6372     assert_eq!(
6373         ::std::mem::size_of::<snd_ctl_elem_value__bindgen_ty_1>(),
6374         1024usize,
6375         concat!("Size of: ", stringify!(snd_ctl_elem_value__bindgen_ty_1))
6376     );
6377     assert_eq!(
6378         ::std::mem::align_of::<snd_ctl_elem_value__bindgen_ty_1>(),
6379         8usize,
6380         concat!(
6381             "Alignment of ",
6382             stringify!(snd_ctl_elem_value__bindgen_ty_1)
6383         )
6384     );
6385     assert_eq!(
6386         unsafe {
6387             &(*(::std::ptr::null::<snd_ctl_elem_value__bindgen_ty_1>())).integer as *const _
6388                 as usize
6389         },
6390         0usize,
6391         concat!(
6392             "Offset of field: ",
6393             stringify!(snd_ctl_elem_value__bindgen_ty_1),
6394             "::",
6395             stringify!(integer)
6396         )
6397     );
6398     assert_eq!(
6399         unsafe {
6400             &(*(::std::ptr::null::<snd_ctl_elem_value__bindgen_ty_1>())).integer64 as *const _
6401                 as usize
6402         },
6403         0usize,
6404         concat!(
6405             "Offset of field: ",
6406             stringify!(snd_ctl_elem_value__bindgen_ty_1),
6407             "::",
6408             stringify!(integer64)
6409         )
6410     );
6411     assert_eq!(
6412         unsafe {
6413             &(*(::std::ptr::null::<snd_ctl_elem_value__bindgen_ty_1>())).enumerated as *const _
6414                 as usize
6415         },
6416         0usize,
6417         concat!(
6418             "Offset of field: ",
6419             stringify!(snd_ctl_elem_value__bindgen_ty_1),
6420             "::",
6421             stringify!(enumerated)
6422         )
6423     );
6424     assert_eq!(
6425         unsafe {
6426             &(*(::std::ptr::null::<snd_ctl_elem_value__bindgen_ty_1>())).bytes as *const _ as usize
6427         },
6428         0usize,
6429         concat!(
6430             "Offset of field: ",
6431             stringify!(snd_ctl_elem_value__bindgen_ty_1),
6432             "::",
6433             stringify!(bytes)
6434         )
6435     );
6436     assert_eq!(
6437         unsafe {
6438             &(*(::std::ptr::null::<snd_ctl_elem_value__bindgen_ty_1>())).iec958 as *const _ as usize
6439         },
6440         0usize,
6441         concat!(
6442             "Offset of field: ",
6443             stringify!(snd_ctl_elem_value__bindgen_ty_1),
6444             "::",
6445             stringify!(iec958)
6446         )
6447     );
6448 }
6449 #[test]
bindgen_test_layout_snd_ctl_elem_value()6450 fn bindgen_test_layout_snd_ctl_elem_value() {
6451     assert_eq!(
6452         ::std::mem::size_of::<snd_ctl_elem_value>(),
6453         1224usize,
6454         concat!("Size of: ", stringify!(snd_ctl_elem_value))
6455     );
6456     assert_eq!(
6457         ::std::mem::align_of::<snd_ctl_elem_value>(),
6458         8usize,
6459         concat!("Alignment of ", stringify!(snd_ctl_elem_value))
6460     );
6461     assert_eq!(
6462         unsafe { &(*(::std::ptr::null::<snd_ctl_elem_value>())).id as *const _ as usize },
6463         0usize,
6464         concat!(
6465             "Offset of field: ",
6466             stringify!(snd_ctl_elem_value),
6467             "::",
6468             stringify!(id)
6469         )
6470     );
6471     assert_eq!(
6472         unsafe { &(*(::std::ptr::null::<snd_ctl_elem_value>())).value as *const _ as usize },
6473         72usize,
6474         concat!(
6475             "Offset of field: ",
6476             stringify!(snd_ctl_elem_value),
6477             "::",
6478             stringify!(value)
6479         )
6480     );
6481     assert_eq!(
6482         unsafe { &(*(::std::ptr::null::<snd_ctl_elem_value>())).tstamp as *const _ as usize },
6483         1096usize,
6484         concat!(
6485             "Offset of field: ",
6486             stringify!(snd_ctl_elem_value),
6487             "::",
6488             stringify!(tstamp)
6489         )
6490     );
6491     assert_eq!(
6492         unsafe { &(*(::std::ptr::null::<snd_ctl_elem_value>())).reserved as *const _ as usize },
6493         1112usize,
6494         concat!(
6495             "Offset of field: ",
6496             stringify!(snd_ctl_elem_value),
6497             "::",
6498             stringify!(reserved)
6499         )
6500     );
6501 }
6502 impl snd_ctl_elem_value {
6503     #[inline]
indirect(&self) -> ::std::os::raw::c_uint6504     pub fn indirect(&self) -> ::std::os::raw::c_uint {
6505         unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
6506     }
6507     #[inline]
set_indirect(&mut self, val: ::std::os::raw::c_uint)6508     pub fn set_indirect(&mut self, val: ::std::os::raw::c_uint) {
6509         unsafe {
6510             let val: u32 = ::std::mem::transmute(val);
6511             self._bitfield_1.set(0usize, 1u8, val as u64)
6512         }
6513     }
6514     #[inline]
new_bitfield_1( indirect: ::std::os::raw::c_uint, ) -> __BindgenBitfieldUnit<[u8; 1usize], u8>6515     pub fn new_bitfield_1(
6516         indirect: ::std::os::raw::c_uint,
6517     ) -> __BindgenBitfieldUnit<[u8; 1usize], u8> {
6518         let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize], u8> =
6519             Default::default();
6520         __bindgen_bitfield_unit.set(0usize, 1u8, {
6521             let indirect: u32 = unsafe { ::std::mem::transmute(indirect) };
6522             indirect as u64
6523         });
6524         __bindgen_bitfield_unit
6525     }
6526 }
6527 #[repr(C)]
6528 #[derive(Debug)]
6529 pub struct snd_ctl_tlv {
6530     pub numid: ::std::os::raw::c_uint,
6531     pub length: ::std::os::raw::c_uint,
6532     pub tlv: __IncompleteArrayField<::std::os::raw::c_uint>,
6533 }
6534 #[test]
bindgen_test_layout_snd_ctl_tlv()6535 fn bindgen_test_layout_snd_ctl_tlv() {
6536     assert_eq!(
6537         ::std::mem::size_of::<snd_ctl_tlv>(),
6538         8usize,
6539         concat!("Size of: ", stringify!(snd_ctl_tlv))
6540     );
6541     assert_eq!(
6542         ::std::mem::align_of::<snd_ctl_tlv>(),
6543         4usize,
6544         concat!("Alignment of ", stringify!(snd_ctl_tlv))
6545     );
6546     assert_eq!(
6547         unsafe { &(*(::std::ptr::null::<snd_ctl_tlv>())).numid as *const _ as usize },
6548         0usize,
6549         concat!(
6550             "Offset of field: ",
6551             stringify!(snd_ctl_tlv),
6552             "::",
6553             stringify!(numid)
6554         )
6555     );
6556     assert_eq!(
6557         unsafe { &(*(::std::ptr::null::<snd_ctl_tlv>())).length as *const _ as usize },
6558         4usize,
6559         concat!(
6560             "Offset of field: ",
6561             stringify!(snd_ctl_tlv),
6562             "::",
6563             stringify!(length)
6564         )
6565     );
6566     assert_eq!(
6567         unsafe { &(*(::std::ptr::null::<snd_ctl_tlv>())).tlv as *const _ as usize },
6568         8usize,
6569         concat!(
6570             "Offset of field: ",
6571             stringify!(snd_ctl_tlv),
6572             "::",
6573             stringify!(tlv)
6574         )
6575     );
6576 }
6577 pub const sndrv_ctl_event_type_SNDRV_CTL_EVENT_ELEM: sndrv_ctl_event_type = 0;
6578 pub const sndrv_ctl_event_type_SNDRV_CTL_EVENT_LAST: sndrv_ctl_event_type = 0;
6579 pub type sndrv_ctl_event_type = u32;
6580 #[repr(C)]
6581 #[derive(Copy, Clone)]
6582 pub struct snd_ctl_event {
6583     pub type_: ::std::os::raw::c_int,
6584     pub data: snd_ctl_event__bindgen_ty_1,
6585 }
6586 #[repr(C)]
6587 #[derive(Copy, Clone)]
6588 pub union snd_ctl_event__bindgen_ty_1 {
6589     pub elem: snd_ctl_event__bindgen_ty_1__bindgen_ty_1,
6590     pub data8: [::std::os::raw::c_uchar; 60usize],
6591     _bindgen_union_align: [u32; 17usize],
6592 }
6593 #[repr(C)]
6594 #[derive(Copy, Clone)]
6595 pub struct snd_ctl_event__bindgen_ty_1__bindgen_ty_1 {
6596     pub mask: ::std::os::raw::c_uint,
6597     pub id: snd_ctl_elem_id,
6598 }
6599 #[test]
bindgen_test_layout_snd_ctl_event__bindgen_ty_1__bindgen_ty_1()6600 fn bindgen_test_layout_snd_ctl_event__bindgen_ty_1__bindgen_ty_1() {
6601     assert_eq!(
6602         ::std::mem::size_of::<snd_ctl_event__bindgen_ty_1__bindgen_ty_1>(),
6603         68usize,
6604         concat!(
6605             "Size of: ",
6606             stringify!(snd_ctl_event__bindgen_ty_1__bindgen_ty_1)
6607         )
6608     );
6609     assert_eq!(
6610         ::std::mem::align_of::<snd_ctl_event__bindgen_ty_1__bindgen_ty_1>(),
6611         4usize,
6612         concat!(
6613             "Alignment of ",
6614             stringify!(snd_ctl_event__bindgen_ty_1__bindgen_ty_1)
6615         )
6616     );
6617     assert_eq!(
6618         unsafe {
6619             &(*(::std::ptr::null::<snd_ctl_event__bindgen_ty_1__bindgen_ty_1>())).mask as *const _
6620                 as usize
6621         },
6622         0usize,
6623         concat!(
6624             "Offset of field: ",
6625             stringify!(snd_ctl_event__bindgen_ty_1__bindgen_ty_1),
6626             "::",
6627             stringify!(mask)
6628         )
6629     );
6630     assert_eq!(
6631         unsafe {
6632             &(*(::std::ptr::null::<snd_ctl_event__bindgen_ty_1__bindgen_ty_1>())).id as *const _
6633                 as usize
6634         },
6635         4usize,
6636         concat!(
6637             "Offset of field: ",
6638             stringify!(snd_ctl_event__bindgen_ty_1__bindgen_ty_1),
6639             "::",
6640             stringify!(id)
6641         )
6642     );
6643 }
6644 #[test]
bindgen_test_layout_snd_ctl_event__bindgen_ty_1()6645 fn bindgen_test_layout_snd_ctl_event__bindgen_ty_1() {
6646     assert_eq!(
6647         ::std::mem::size_of::<snd_ctl_event__bindgen_ty_1>(),
6648         68usize,
6649         concat!("Size of: ", stringify!(snd_ctl_event__bindgen_ty_1))
6650     );
6651     assert_eq!(
6652         ::std::mem::align_of::<snd_ctl_event__bindgen_ty_1>(),
6653         4usize,
6654         concat!("Alignment of ", stringify!(snd_ctl_event__bindgen_ty_1))
6655     );
6656     assert_eq!(
6657         unsafe {
6658             &(*(::std::ptr::null::<snd_ctl_event__bindgen_ty_1>())).elem as *const _ as usize
6659         },
6660         0usize,
6661         concat!(
6662             "Offset of field: ",
6663             stringify!(snd_ctl_event__bindgen_ty_1),
6664             "::",
6665             stringify!(elem)
6666         )
6667     );
6668     assert_eq!(
6669         unsafe {
6670             &(*(::std::ptr::null::<snd_ctl_event__bindgen_ty_1>())).data8 as *const _ as usize
6671         },
6672         0usize,
6673         concat!(
6674             "Offset of field: ",
6675             stringify!(snd_ctl_event__bindgen_ty_1),
6676             "::",
6677             stringify!(data8)
6678         )
6679     );
6680 }
6681 #[test]
bindgen_test_layout_snd_ctl_event()6682 fn bindgen_test_layout_snd_ctl_event() {
6683     assert_eq!(
6684         ::std::mem::size_of::<snd_ctl_event>(),
6685         72usize,
6686         concat!("Size of: ", stringify!(snd_ctl_event))
6687     );
6688     assert_eq!(
6689         ::std::mem::align_of::<snd_ctl_event>(),
6690         4usize,
6691         concat!("Alignment of ", stringify!(snd_ctl_event))
6692     );
6693     assert_eq!(
6694         unsafe { &(*(::std::ptr::null::<snd_ctl_event>())).type_ as *const _ as usize },
6695         0usize,
6696         concat!(
6697             "Offset of field: ",
6698             stringify!(snd_ctl_event),
6699             "::",
6700             stringify!(type_)
6701         )
6702     );
6703     assert_eq!(
6704         unsafe { &(*(::std::ptr::null::<snd_ctl_event>())).data as *const _ as usize },
6705         4usize,
6706         concat!(
6707             "Offset of field: ",
6708             stringify!(snd_ctl_event),
6709             "::",
6710             stringify!(data)
6711         )
6712     );
6713 }
6714