pub const _SYS_TYPES_H: u32 = 1;
pub const _FEATURES_H: u32 = 1;
pub const _DEFAULT_SOURCE: u32 = 1;
pub const __GLIBC_USE_ISOC2X: u32 = 0;
pub const __USE_ISOC11: u32 = 1;
pub const __USE_ISOC99: u32 = 1;
pub const __USE_ISOC95: u32 = 1;
pub const __USE_POSIX_IMPLICITLY: u32 = 1;
pub const _POSIX_SOURCE: u32 = 1;
pub const _POSIX_C_SOURCE: u32 = 200809;
pub const __USE_POSIX: u32 = 1;
pub const __USE_POSIX2: u32 = 1;
pub const __USE_POSIX199309: u32 = 1;
pub const __USE_POSIX199506: u32 = 1;
pub const __USE_XOPEN2K: u32 = 1;
pub const __USE_XOPEN2K8: u32 = 1;
pub const _ATFILE_SOURCE: u32 = 1;
pub const __USE_MISC: u32 = 1;
pub const __USE_ATFILE: u32 = 1;
pub const __USE_FORTIFY_LEVEL: u32 = 0;
pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0;
pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0;
pub const _STDC_PREDEF_H: u32 = 1;
pub const __STDC_IEC_559__: u32 = 1;
pub const __STDC_IEC_559_COMPLEX__: u32 = 1;
pub const __STDC_ISO_10646__: u32 = 201706;
pub const __GNU_LIBRARY__: u32 = 6;
pub const __GLIBC__: u32 = 2;
pub const __GLIBC_MINOR__: u32 = 31;
pub const _SYS_CDEFS_H: u32 = 1;
pub const __glibc_c99_flexarr_available: u32 = 1;
pub const __WORDSIZE: u32 = 64;
pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1;
pub const __SYSCALL_WORDSIZE: u32 = 64;
pub const __LONG_DOUBLE_USES_FLOAT128: u32 = 0;
pub const __HAVE_GENERIC_SELECTION: u32 = 1;
pub const _BITS_TYPES_H: u32 = 1;
pub const __TIMESIZE: u32 = 64;
pub const _BITS_TYPESIZES_H: u32 = 1;
pub const __OFF_T_MATCHES_OFF64_T: u32 = 1;
pub const __INO_T_MATCHES_INO64_T: u32 = 1;
pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1;
pub const __STATFS_MATCHES_STATFS64: u32 = 1;
pub const __FD_SETSIZE: u32 = 1024;
pub const _BITS_TIME64_H: u32 = 1;
pub const __clock_t_defined: u32 = 1;
pub const __clockid_t_defined: u32 = 1;
pub const __time_t_defined: u32 = 1;
pub const __timer_t_defined: u32 = 1;
pub const _BITS_STDINT_INTN_H: u32 = 1;
pub const __BIT_TYPES_DEFINED__: u32 = 1;
pub const _ENDIAN_H: u32 = 1;
pub const _BITS_ENDIAN_H: u32 = 1;
pub const __LITTLE_ENDIAN: u32 = 1234;
pub const __BIG_ENDIAN: u32 = 4321;
pub const __PDP_ENDIAN: u32 = 3412;
pub const _BITS_ENDIANNESS_H: u32 = 1;
pub const __BYTE_ORDER: u32 = 1234;
pub const __FLOAT_WORD_ORDER: u32 = 1234;
pub const LITTLE_ENDIAN: u32 = 1234;
pub const BIG_ENDIAN: u32 = 4321;
pub const PDP_ENDIAN: u32 = 3412;
pub const BYTE_ORDER: u32 = 1234;
pub const _BITS_BYTESWAP_H: u32 = 1;
pub const _BITS_UINTN_IDENTITY_H: u32 = 1;
pub const _SYS_SELECT_H: u32 = 1;
pub const __FD_ZERO_STOS: &'static [u8; 6usize] = b"stosq\0";
pub const __sigset_t_defined: u32 = 1;
pub const __timeval_defined: u32 = 1;
pub const _STRUCT_TIMESPEC: u32 = 1;
pub const FD_SETSIZE: u32 = 1024;
pub const _BITS_PTHREADTYPES_COMMON_H: u32 = 1;
pub const _THREAD_SHARED_TYPES_H: u32 = 1;
pub const _BITS_PTHREADTYPES_ARCH_H: u32 = 1;
pub const __SIZEOF_PTHREAD_MUTEX_T: u32 = 40;
pub const __SIZEOF_PTHREAD_ATTR_T: u32 = 56;
pub const __SIZEOF_PTHREAD_RWLOCK_T: u32 = 56;
pub const __SIZEOF_PTHREAD_BARRIER_T: u32 = 32;
pub const __SIZEOF_PTHREAD_MUTEXATTR_T: u32 = 4;
pub const __SIZEOF_PTHREAD_COND_T: u32 = 48;
pub const __SIZEOF_PTHREAD_CONDATTR_T: u32 = 4;
pub const __SIZEOF_PTHREAD_RWLOCKATTR_T: u32 = 8;
pub const __SIZEOF_PTHREAD_BARRIERATTR_T: u32 = 4;
pub const _THREAD_MUTEX_INTERNAL_H: u32 = 1;
pub const __PTHREAD_MUTEX_HAVE_PREV: u32 = 1;
pub const __have_pthread_attr_t: u32 = 1;
pub const _INTTYPES_H: u32 = 1;
pub const _STDINT_H: u32 = 1;
pub const __GLIBC_USE_LIB_EXT2: u32 = 0;
pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0;
pub const __GLIBC_USE_IEC_60559_BFP_EXT_C2X: u32 = 0;
pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0;
pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X: u32 = 0;
pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0;
pub const _BITS_WCHAR_H: u32 = 1;
pub const _BITS_STDINT_UINTN_H: u32 = 1;
pub const INT8_MIN: i32 = -128;
pub const INT16_MIN: i32 = -32768;
pub const INT32_MIN: i32 = -2147483648;
pub const INT8_MAX: u32 = 127;
pub const INT16_MAX: u32 = 32767;
pub const INT32_MAX: u32 = 2147483647;
pub const UINT8_MAX: u32 = 255;
pub const UINT16_MAX: u32 = 65535;
pub const UINT32_MAX: u32 = 4294967295;
pub const INT_LEAST8_MIN: i32 = -128;
pub const INT_LEAST16_MIN: i32 = -32768;
pub const INT_LEAST32_MIN: i32 = -2147483648;
pub const INT_LEAST8_MAX: u32 = 127;
pub const INT_LEAST16_MAX: u32 = 32767;
pub const INT_LEAST32_MAX: u32 = 2147483647;
pub const UINT_LEAST8_MAX: u32 = 255;
pub const UINT_LEAST16_MAX: u32 = 65535;
pub const UINT_LEAST32_MAX: u32 = 4294967295;
pub const INT_FAST8_MIN: i32 = -128;
pub const INT_FAST16_MIN: i64 = -9223372036854775808;
pub const INT_FAST32_MIN: i64 = -9223372036854775808;
pub const INT_FAST8_MAX: u32 = 127;
pub const INT_FAST16_MAX: u64 = 9223372036854775807;
pub const INT_FAST32_MAX: u64 = 9223372036854775807;
pub const UINT_FAST8_MAX: u32 = 255;
pub const UINT_FAST16_MAX: i32 = -1;
pub const UINT_FAST32_MAX: i32 = -1;
pub const INTPTR_MIN: i64 = -9223372036854775808;
pub const INTPTR_MAX: u64 = 9223372036854775807;
pub const UINTPTR_MAX: i32 = -1;
pub const PTRDIFF_MIN: i64 = -9223372036854775808;
pub const PTRDIFF_MAX: u64 = 9223372036854775807;
pub const SIG_ATOMIC_MIN: i32 = -2147483648;
pub const SIG_ATOMIC_MAX: u32 = 2147483647;
pub const SIZE_MAX: i32 = -1;
pub const WINT_MIN: u32 = 0;
pub const WINT_MAX: u32 = 4294967295;
pub const ____gwchar_t_defined: u32 = 1;
pub const __PRI64_PREFIX: &'static [u8; 2usize] = b"l\0";
pub const __PRIPTR_PREFIX: &'static [u8; 2usize] = b"l\0";
pub const PRId8: &'static [u8; 2usize] = b"d\0";
pub const PRId16: &'static [u8; 2usize] = b"d\0";
pub const PRId32: &'static [u8; 2usize] = b"d\0";
pub const PRId64: &'static [u8; 3usize] = b"ld\0";
pub const PRIdLEAST8: &'static [u8; 2usize] = b"d\0";
pub const PRIdLEAST16: &'static [u8; 2usize] = b"d\0";
pub const PRIdLEAST32: &'static [u8; 2usize] = b"d\0";
pub const PRIdLEAST64: &'static [u8; 3usize] = b"ld\0";
pub const PRIdFAST8: &'static [u8; 2usize] = b"d\0";
pub const PRIdFAST16: &'static [u8; 3usize] = b"ld\0";
pub const PRIdFAST32: &'static [u8; 3usize] = b"ld\0";
pub const PRIdFAST64: &'static [u8; 3usize] = b"ld\0";
pub const PRIi8: &'static [u8; 2usize] = b"i\0";
pub const PRIi16: &'static [u8; 2usize] = b"i\0";
pub const PRIi32: &'static [u8; 2usize] = b"i\0";
pub const PRIi64: &'static [u8; 3usize] = b"li\0";
pub const PRIiLEAST8: &'static [u8; 2usize] = b"i\0";
pub const PRIiLEAST16: &'static [u8; 2usize] = b"i\0";
pub const PRIiLEAST32: &'static [u8; 2usize] = b"i\0";
pub const PRIiLEAST64: &'static [u8; 3usize] = b"li\0";
pub const PRIiFAST8: &'static [u8; 2usize] = b"i\0";
pub const PRIiFAST16: &'static [u8; 3usize] = b"li\0";
pub const PRIiFAST32: &'static [u8; 3usize] = b"li\0";
pub const PRIiFAST64: &'static [u8; 3usize] = b"li\0";
pub const PRIo8: &'static [u8; 2usize] = b"o\0";
pub const PRIo16: &'static [u8; 2usize] = b"o\0";
pub const PRIo32: &'static [u8; 2usize] = b"o\0";
pub const PRIo64: &'static [u8; 3usize] = b"lo\0";
pub const PRIoLEAST8: &'static [u8; 2usize] = b"o\0";
pub const PRIoLEAST16: &'static [u8; 2usize] = b"o\0";
pub const PRIoLEAST32: &'static [u8; 2usize] = b"o\0";
pub const PRIoLEAST64: &'static [u8; 3usize] = b"lo\0";
pub const PRIoFAST8: &'static [u8; 2usize] = b"o\0";
pub const PRIoFAST16: &'static [u8; 3usize] = b"lo\0";
pub const PRIoFAST32: &'static [u8; 3usize] = b"lo\0";
pub const PRIoFAST64: &'static [u8; 3usize] = b"lo\0";
pub const PRIu8: &'static [u8; 2usize] = b"u\0";
pub const PRIu16: &'static [u8; 2usize] = b"u\0";
pub const PRIu32: &'static [u8; 2usize] = b"u\0";
pub const PRIu64: &'static [u8; 3usize] = b"lu\0";
pub const PRIuLEAST8: &'static [u8; 2usize] = b"u\0";
pub const PRIuLEAST16: &'static [u8; 2usize] = b"u\0";
pub const PRIuLEAST32: &'static [u8; 2usize] = b"u\0";
pub const PRIuLEAST64: &'static [u8; 3usize] = b"lu\0";
pub const PRIuFAST8: &'static [u8; 2usize] = b"u\0";
pub const PRIuFAST16: &'static [u8; 3usize] = b"lu\0";
pub const PRIuFAST32: &'static [u8; 3usize] = b"lu\0";
pub const PRIuFAST64: &'static [u8; 3usize] = b"lu\0";
pub const PRIx8: &'static [u8; 2usize] = b"x\0";
pub const PRIx16: &'static [u8; 2usize] = b"x\0";
pub const PRIx32: &'static [u8; 2usize] = b"x\0";
pub const PRIx64: &'static [u8; 3usize] = b"lx\0";
pub const PRIxLEAST8: &'static [u8; 2usize] = b"x\0";
pub const PRIxLEAST16: &'static [u8; 2usize] = b"x\0";
pub const PRIxLEAST32: &'static [u8; 2usize] = b"x\0";
pub const PRIxLEAST64: &'static [u8; 3usize] = b"lx\0";
pub const PRIxFAST8: &'static [u8; 2usize] = b"x\0";
pub const PRIxFAST16: &'static [u8; 3usize] = b"lx\0";
pub const PRIxFAST32: &'static [u8; 3usize] = b"lx\0";
pub const PRIxFAST64: &'static [u8; 3usize] = b"lx\0";
pub const PRIX8: &'static [u8; 2usize] = b"X\0";
pub const PRIX16: &'static [u8; 2usize] = b"X\0";
pub const PRIX32: &'static [u8; 2usize] = b"X\0";
pub const PRIX64: &'static [u8; 3usize] = b"lX\0";
pub const PRIXLEAST8: &'static [u8; 2usize] = b"X\0";
pub const PRIXLEAST16: &'static [u8; 2usize] = b"X\0";
pub const PRIXLEAST32: &'static [u8; 2usize] = b"X\0";
pub const PRIXLEAST64: &'static [u8; 3usize] = b"lX\0";
pub const PRIXFAST8: &'static [u8; 2usize] = b"X\0";
pub const PRIXFAST16: &'static [u8; 3usize] = b"lX\0";
pub const PRIXFAST32: &'static [u8; 3usize] = b"lX\0";
pub const PRIXFAST64: &'static [u8; 3usize] = b"lX\0";
pub const PRIdMAX: &'static [u8; 3usize] = b"ld\0";
pub const PRIiMAX: &'static [u8; 3usize] = b"li\0";
pub const PRIoMAX: &'static [u8; 3usize] = b"lo\0";
pub const PRIuMAX: &'static [u8; 3usize] = b"lu\0";
pub const PRIxMAX: &'static [u8; 3usize] = b"lx\0";
pub const PRIXMAX: &'static [u8; 3usize] = b"lX\0";
pub const PRIdPTR: &'static [u8; 3usize] = b"ld\0";
pub const PRIiPTR: &'static [u8; 3usize] = b"li\0";
pub const PRIoPTR: &'static [u8; 3usize] = b"lo\0";
pub const PRIuPTR: &'static [u8; 3usize] = b"lu\0";
pub const PRIxPTR: &'static [u8; 3usize] = b"lx\0";
pub const PRIXPTR: &'static [u8; 3usize] = b"lX\0";
pub const SCNd8: &'static [u8; 4usize] = b"hhd\0";
pub const SCNd16: &'static [u8; 3usize] = b"hd\0";
pub const SCNd32: &'static [u8; 2usize] = b"d\0";
pub const SCNd64: &'static [u8; 3usize] = b"ld\0";
pub const SCNdLEAST8: &'static [u8; 4usize] = b"hhd\0";
pub const SCNdLEAST16: &'static [u8; 3usize] = b"hd\0";
pub const SCNdLEAST32: &'static [u8; 2usize] = b"d\0";
pub const SCNdLEAST64: &'static [u8; 3usize] = b"ld\0";
pub const SCNdFAST8: &'static [u8; 4usize] = b"hhd\0";
pub const SCNdFAST16: &'static [u8; 3usize] = b"ld\0";
pub const SCNdFAST32: &'static [u8; 3usize] = b"ld\0";
pub const SCNdFAST64: &'static [u8; 3usize] = b"ld\0";
pub const SCNi8: &'static [u8; 4usize] = b"hhi\0";
pub const SCNi16: &'static [u8; 3usize] = b"hi\0";
pub const SCNi32: &'static [u8; 2usize] = b"i\0";
pub const SCNi64: &'static [u8; 3usize] = b"li\0";
pub const SCNiLEAST8: &'static [u8; 4usize] = b"hhi\0";
pub const SCNiLEAST16: &'static [u8; 3usize] = b"hi\0";
pub const SCNiLEAST32: &'static [u8; 2usize] = b"i\0";
pub const SCNiLEAST64: &'static [u8; 3usize] = b"li\0";
pub const SCNiFAST8: &'static [u8; 4usize] = b"hhi\0";
pub const SCNiFAST16: &'static [u8; 3usize] = b"li\0";
pub const SCNiFAST32: &'static [u8; 3usize] = b"li\0";
pub const SCNiFAST64: &'static [u8; 3usize] = b"li\0";
pub const SCNu8: &'static [u8; 4usize] = b"hhu\0";
pub const SCNu16: &'static [u8; 3usize] = b"hu\0";
pub const SCNu32: &'static [u8; 2usize] = b"u\0";
pub const SCNu64: &'static [u8; 3usize] = b"lu\0";
pub const SCNuLEAST8: &'static [u8; 4usize] = b"hhu\0";
pub const SCNuLEAST16: &'static [u8; 3usize] = b"hu\0";
pub const SCNuLEAST32: &'static [u8; 2usize] = b"u\0";
pub const SCNuLEAST64: &'static [u8; 3usize] = b"lu\0";
pub const SCNuFAST8: &'static [u8; 4usize] = b"hhu\0";
pub const SCNuFAST16: &'static [u8; 3usize] = b"lu\0";
pub const SCNuFAST32: &'static [u8; 3usize] = b"lu\0";
pub const SCNuFAST64: &'static [u8; 3usize] = b"lu\0";
pub const SCNo8: &'static [u8; 4usize] = b"hho\0";
pub const SCNo16: &'static [u8; 3usize] = b"ho\0";
pub const SCNo32: &'static [u8; 2usize] = b"o\0";
pub const SCNo64: &'static [u8; 3usize] = b"lo\0";
pub const SCNoLEAST8: &'static [u8; 4usize] = b"hho\0";
pub const SCNoLEAST16: &'static [u8; 3usize] = b"ho\0";
pub const SCNoLEAST32: &'static [u8; 2usize] = b"o\0";
pub const SCNoLEAST64: &'static [u8; 3usize] = b"lo\0";
pub const SCNoFAST8: &'static [u8; 4usize] = b"hho\0";
pub const SCNoFAST16: &'static [u8; 3usize] = b"lo\0";
pub const SCNoFAST32: &'static [u8; 3usize] = b"lo\0";
pub const SCNoFAST64: &'static [u8; 3usize] = b"lo\0";
pub const SCNx8: &'static [u8; 4usize] = b"hhx\0";
pub const SCNx16: &'static [u8; 3usize] = b"hx\0";
pub const SCNx32: &'static [u8; 2usize] = b"x\0";
pub const SCNx64: &'static [u8; 3usize] = b"lx\0";
pub const SCNxLEAST8: &'static [u8; 4usize] = b"hhx\0";
pub const SCNxLEAST16: &'static [u8; 3usize] = b"hx\0";
pub const SCNxLEAST32: &'static [u8; 2usize] = b"x\0";
pub const SCNxLEAST64: &'static [u8; 3usize] = b"lx\0";
pub const SCNxFAST8: &'static [u8; 4usize] = b"hhx\0";
pub const SCNxFAST16: &'static [u8; 3usize] = b"lx\0";
pub const SCNxFAST32: &'static [u8; 3usize] = b"lx\0";
pub const SCNxFAST64: &'static [u8; 3usize] = b"lx\0";
pub const SCNdMAX: &'static [u8; 3usize] = b"ld\0";
pub const SCNiMAX: &'static [u8; 3usize] = b"li\0";
pub const SCNoMAX: &'static [u8; 3usize] = b"lo\0";
pub const SCNuMAX: &'static [u8; 3usize] = b"lu\0";
pub const SCNxMAX: &'static [u8; 3usize] = b"lx\0";
pub const SCNdPTR: &'static [u8; 3usize] = b"ld\0";
pub const SCNiPTR: &'static [u8; 3usize] = b"li\0";
pub const SCNoPTR: &'static [u8; 3usize] = b"lo\0";
pub const SCNuPTR: &'static [u8; 3usize] = b"lu\0";
pub const SCNxPTR: &'static [u8; 3usize] = b"lx\0";
pub const _UCONTEXT_H: u32 = 1;
pub const _SYS_UCONTEXT_H: u32 = 1;
pub const __stack_t_defined: u32 = 1;
pub const __NGREG: u32 = 23;
pub const NGREG: u32 = 23;
pub const UNW_TARGET_X86_64: u32 = 1;
pub const _U_TDEP_QP_TRUE: u32 = 0;
pub const UNW_TDEP_CURSOR_LEN: u32 = 127;
pub const UNW_TDEP_NUM_EH_REGS: u32 = 2;
pub const _U_QP_TRUE: u32 = 0;
pub const UNW_VERSION_MAJOR: u32 = 1;
pub const UNW_VERSION_MINOR: u32 = 2;
pub const UNW_VERSION_EXTRA: u32 = 1;
pub const UNW_NUM_EH_REGS: u32 = 2;
pub const UNW_PI_FLAG_FIRST_TDEP_BIT: u32 = 16;
pub const UNW_PI_FLAG_DEBUG_FRAME: u32 = 32;
pub type __u_char = ::std::os::raw::c_uchar;
pub type __u_short = ::std::os::raw::c_ushort;
pub type __u_int = ::std::os::raw::c_uint;
pub type __u_long = ::std::os::raw::c_ulong;
pub type __int8_t = ::std::os::raw::c_schar;
pub type __uint8_t = ::std::os::raw::c_uchar;
pub type __int16_t = ::std::os::raw::c_short;
pub type __uint16_t = ::std::os::raw::c_ushort;
pub type __int32_t = ::std::os::raw::c_int;
pub type __uint32_t = ::std::os::raw::c_uint;
pub type __int64_t = ::std::os::raw::c_long;
pub type __uint64_t = ::std::os::raw::c_ulong;
pub type __int_least8_t = __int8_t;
pub type __uint_least8_t = __uint8_t;
pub type __int_least16_t = __int16_t;
pub type __uint_least16_t = __uint16_t;
pub type __int_least32_t = __int32_t;
pub type __uint_least32_t = __uint32_t;
pub type __int_least64_t = __int64_t;
pub type __uint_least64_t = __uint64_t;
pub type __quad_t = ::std::os::raw::c_long;
pub type __u_quad_t = ::std::os::raw::c_ulong;
pub type __intmax_t = ::std::os::raw::c_long;
pub type __uintmax_t = ::std::os::raw::c_ulong;
pub type __dev_t = ::std::os::raw::c_ulong;
pub type __uid_t = ::std::os::raw::c_uint;
pub type __gid_t = ::std::os::raw::c_uint;
pub type __ino_t = ::std::os::raw::c_ulong;
pub type __ino64_t = ::std::os::raw::c_ulong;
pub type __mode_t = ::std::os::raw::c_uint;
pub type __nlink_t = ::std::os::raw::c_ulong;
pub type __off_t = ::std::os::raw::c_long;
pub type __off64_t = ::std::os::raw::c_long;
pub type __pid_t = ::std::os::raw::c_int;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __fsid_t {
pub __val: [::std::os::raw::c_int; 2usize],
}
#[test]
fn bindgen_test_layout___fsid_t() {
assert_eq!(
::std::mem::size_of::<__fsid_t>(),
8usize,
concat!("Size of: ", stringify!(__fsid_t))
);
assert_eq!(
::std::mem::align_of::<__fsid_t>(),
4usize,
concat!("Alignment of ", stringify!(__fsid_t))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__fsid_t>())).__val as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(__fsid_t),
"::",
stringify!(__val)
)
);
}
pub type __clock_t = ::std::os::raw::c_long;
pub type __rlim_t = ::std::os::raw::c_ulong;
pub type __rlim64_t = ::std::os::raw::c_ulong;
pub type __id_t = ::std::os::raw::c_uint;
pub type __time_t = ::std::os::raw::c_long;
pub type __useconds_t = ::std::os::raw::c_uint;
pub type __suseconds_t = ::std::os::raw::c_long;
pub type __daddr_t = ::std::os::raw::c_int;
pub type __key_t = ::std::os::raw::c_int;
pub type __clockid_t = ::std::os::raw::c_int;
pub type __timer_t = *mut ::std::os::raw::c_void;
pub type __blksize_t = ::std::os::raw::c_long;
pub type __blkcnt_t = ::std::os::raw::c_long;
pub type __blkcnt64_t = ::std::os::raw::c_long;
pub type __fsblkcnt_t = ::std::os::raw::c_ulong;
pub type __fsblkcnt64_t = ::std::os::raw::c_ulong;
pub type __fsfilcnt_t = ::std::os::raw::c_ulong;
pub type __fsfilcnt64_t = ::std::os::raw::c_ulong;
pub type __fsword_t = ::std::os::raw::c_long;
pub type __ssize_t = ::std::os::raw::c_long;
pub type __syscall_slong_t = ::std::os::raw::c_long;
pub type __syscall_ulong_t = ::std::os::raw::c_ulong;
pub type __loff_t = __off64_t;
pub type __caddr_t = *mut ::std::os::raw::c_char;
pub type __intptr_t = ::std::os::raw::c_long;
pub type __socklen_t = ::std::os::raw::c_uint;
pub type __sig_atomic_t = ::std::os::raw::c_int;
pub type u_char = __u_char;
pub type u_short = __u_short;
pub type u_int = __u_int;
pub type u_long = __u_long;
pub type quad_t = __quad_t;
pub type u_quad_t = __u_quad_t;
pub type fsid_t = __fsid_t;
pub type loff_t = __loff_t;
pub type ino_t = __ino_t;
pub type dev_t = __dev_t;
pub type gid_t = __gid_t;
pub type mode_t = __mode_t;
pub type nlink_t = __nlink_t;
pub type uid_t = __uid_t;
pub type off_t = __off_t;
pub type pid_t = __pid_t;
pub type id_t = __id_t;
pub type daddr_t = __daddr_t;
pub type caddr_t = __caddr_t;
pub type key_t = __key_t;
pub type clock_t = __clock_t;
pub type clockid_t = __clockid_t;
pub type time_t = __time_t;
pub type timer_t = __timer_t;
pub type ulong = ::std::os::raw::c_ulong;
pub type ushort = ::std::os::raw::c_ushort;
pub type uint = ::std::os::raw::c_uint;
pub type u_int8_t = __uint8_t;
pub type u_int16_t = __uint16_t;
pub type u_int32_t = __uint32_t;
pub type u_int64_t = __uint64_t;
pub type register_t = ::std::os::raw::c_long;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __sigset_t {
pub __val: [::std::os::raw::c_ulong; 16usize],
}
#[test]
fn bindgen_test_layout___sigset_t() {
assert_eq!(
::std::mem::size_of::<__sigset_t>(),
128usize,
concat!("Size of: ", stringify!(__sigset_t))
);
assert_eq!(
::std::mem::align_of::<__sigset_t>(),
8usize,
concat!("Alignment of ", stringify!(__sigset_t))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__sigset_t>())).__val as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(__sigset_t),
"::",
stringify!(__val)
)
);
}
pub type sigset_t = __sigset_t;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct timeval {
pub tv_sec: __time_t,
pub tv_usec: __suseconds_t,
}
#[test]
fn bindgen_test_layout_timeval() {
assert_eq!(
::std::mem::size_of::<timeval>(),
16usize,
concat!("Size of: ", stringify!(timeval))
);
assert_eq!(
::std::mem::align_of::<timeval>(),
8usize,
concat!("Alignment of ", stringify!(timeval))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<timeval>())).tv_sec as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(timeval),
"::",
stringify!(tv_sec)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<timeval>())).tv_usec as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(timeval),
"::",
stringify!(tv_usec)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct timespec {
pub tv_sec: __time_t,
pub tv_nsec: __syscall_slong_t,
}
#[test]
fn bindgen_test_layout_timespec() {
assert_eq!(
::std::mem::size_of::<timespec>(),
16usize,
concat!("Size of: ", stringify!(timespec))
);
assert_eq!(
::std::mem::align_of::<timespec>(),
8usize,
concat!("Alignment of ", stringify!(timespec))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<timespec>())).tv_sec as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(timespec),
"::",
stringify!(tv_sec)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<timespec>())).tv_nsec as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(timespec),
"::",
stringify!(tv_nsec)
)
);
}
pub type suseconds_t = __suseconds_t;
pub type __fd_mask = ::std::os::raw::c_long;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct fd_set {
pub __fds_bits: [__fd_mask; 16usize],
}
#[test]
fn bindgen_test_layout_fd_set() {
assert_eq!(
::std::mem::size_of::<fd_set>(),
128usize,
concat!("Size of: ", stringify!(fd_set))
);
assert_eq!(
::std::mem::align_of::<fd_set>(),
8usize,
concat!("Alignment of ", stringify!(fd_set))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<fd_set>())).__fds_bits as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(fd_set),
"::",
stringify!(__fds_bits)
)
);
}
pub type fd_mask = __fd_mask;
extern "C" {
pub fn 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_int;
}
extern "C" {
pub fn 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_int;
}
pub type blksize_t = __blksize_t;
pub type blkcnt_t = __blkcnt_t;
pub type fsblkcnt_t = __fsblkcnt_t;
pub type fsfilcnt_t = __fsfilcnt_t;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __pthread_internal_list {
pub __prev: *mut __pthread_internal_list,
pub __next: *mut __pthread_internal_list,
}
#[test]
fn bindgen_test_layout___pthread_internal_list() {
assert_eq!(
::std::mem::size_of::<__pthread_internal_list>(),
16usize,
concat!("Size of: ", stringify!(__pthread_internal_list))
);
assert_eq!(
::std::mem::align_of::<__pthread_internal_list>(),
8usize,
concat!("Alignment of ", stringify!(__pthread_internal_list))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__pthread_internal_list>())).__prev as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(__pthread_internal_list),
"::",
stringify!(__prev)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__pthread_internal_list>())).__next as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(__pthread_internal_list),
"::",
stringify!(__next)
)
);
}
pub type __pthread_list_t = __pthread_internal_list;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __pthread_internal_slist {
pub __next: *mut __pthread_internal_slist,
}
#[test]
fn bindgen_test_layout___pthread_internal_slist() {
assert_eq!(
::std::mem::size_of::<__pthread_internal_slist>(),
8usize,
concat!("Size of: ", stringify!(__pthread_internal_slist))
);
assert_eq!(
::std::mem::align_of::<__pthread_internal_slist>(),
8usize,
concat!("Alignment of ", stringify!(__pthread_internal_slist))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__pthread_internal_slist>())).__next as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(__pthread_internal_slist),
"::",
stringify!(__next)
)
);
}
pub type __pthread_slist_t = __pthread_internal_slist;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __pthread_mutex_s {
pub __lock: ::std::os::raw::c_int,
pub __count: ::std::os::raw::c_uint,
pub __owner: ::std::os::raw::c_int,
pub __nusers: ::std::os::raw::c_uint,
pub __kind: ::std::os::raw::c_int,
pub __spins: ::std::os::raw::c_short,
pub __elision: ::std::os::raw::c_short,
pub __list: __pthread_list_t,
}
#[test]
fn bindgen_test_layout___pthread_mutex_s() {
assert_eq!(
::std::mem::size_of::<__pthread_mutex_s>(),
40usize,
concat!("Size of: ", stringify!(__pthread_mutex_s))
);
assert_eq!(
::std::mem::align_of::<__pthread_mutex_s>(),
8usize,
concat!("Alignment of ", stringify!(__pthread_mutex_s))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__lock as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(__pthread_mutex_s),
"::",
stringify!(__lock)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__count as *const _ as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(__pthread_mutex_s),
"::",
stringify!(__count)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__owner as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(__pthread_mutex_s),
"::",
stringify!(__owner)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__nusers as *const _ as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(__pthread_mutex_s),
"::",
stringify!(__nusers)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__kind as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(__pthread_mutex_s),
"::",
stringify!(__kind)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__spins as *const _ as usize },
20usize,
concat!(
"Offset of field: ",
stringify!(__pthread_mutex_s),
"::",
stringify!(__spins)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__elision as *const _ as usize },
22usize,
concat!(
"Offset of field: ",
stringify!(__pthread_mutex_s),
"::",
stringify!(__elision)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__list as *const _ as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(__pthread_mutex_s),
"::",
stringify!(__list)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __pthread_rwlock_arch_t {
pub __readers: ::std::os::raw::c_uint,
pub __writers: ::std::os::raw::c_uint,
pub __wrphase_futex: ::std::os::raw::c_uint,
pub __writers_futex: ::std::os::raw::c_uint,
pub __pad3: ::std::os::raw::c_uint,
pub __pad4: ::std::os::raw::c_uint,
pub __cur_writer: ::std::os::raw::c_int,
pub __shared: ::std::os::raw::c_int,
pub __rwelision: ::std::os::raw::c_schar,
pub __pad1: [::std::os::raw::c_uchar; 7usize],
pub __pad2: ::std::os::raw::c_ulong,
pub __flags: ::std::os::raw::c_uint,
}
#[test]
fn bindgen_test_layout___pthread_rwlock_arch_t() {
assert_eq!(
::std::mem::size_of::<__pthread_rwlock_arch_t>(),
56usize,
concat!("Size of: ", stringify!(__pthread_rwlock_arch_t))
);
assert_eq!(
::std::mem::align_of::<__pthread_rwlock_arch_t>(),
8usize,
concat!("Alignment of ", stringify!(__pthread_rwlock_arch_t))
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__readers as *const _ as usize
},
0usize,
concat!(
"Offset of field: ",
stringify!(__pthread_rwlock_arch_t),
"::",
stringify!(__readers)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__writers as *const _ as usize
},
4usize,
concat!(
"Offset of field: ",
stringify!(__pthread_rwlock_arch_t),
"::",
stringify!(__writers)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__wrphase_futex as *const _ as usize
},
8usize,
concat!(
"Offset of field: ",
stringify!(__pthread_rwlock_arch_t),
"::",
stringify!(__wrphase_futex)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__writers_futex as *const _ as usize
},
12usize,
concat!(
"Offset of field: ",
stringify!(__pthread_rwlock_arch_t),
"::",
stringify!(__writers_futex)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__pad3 as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(__pthread_rwlock_arch_t),
"::",
stringify!(__pad3)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__pad4 as *const _ as usize },
20usize,
concat!(
"Offset of field: ",
stringify!(__pthread_rwlock_arch_t),
"::",
stringify!(__pad4)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__cur_writer as *const _ as usize
},
24usize,
concat!(
"Offset of field: ",
stringify!(__pthread_rwlock_arch_t),
"::",
stringify!(__cur_writer)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__shared as *const _ as usize
},
28usize,
concat!(
"Offset of field: ",
stringify!(__pthread_rwlock_arch_t),
"::",
stringify!(__shared)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__rwelision as *const _ as usize
},
32usize,
concat!(
"Offset of field: ",
stringify!(__pthread_rwlock_arch_t),
"::",
stringify!(__rwelision)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__pad1 as *const _ as usize },
33usize,
concat!(
"Offset of field: ",
stringify!(__pthread_rwlock_arch_t),
"::",
stringify!(__pad1)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__pad2 as *const _ as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(__pthread_rwlock_arch_t),
"::",
stringify!(__pad2)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__flags as *const _ as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(__pthread_rwlock_arch_t),
"::",
stringify!(__flags)
)
);
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct __pthread_cond_s {
pub __bindgen_anon_1: __pthread_cond_s__bindgen_ty_1,
pub __bindgen_anon_2: __pthread_cond_s__bindgen_ty_2,
pub __g_refs: [::std::os::raw::c_uint; 2usize],
pub __g_size: [::std::os::raw::c_uint; 2usize],
pub __g1_orig_size: ::std::os::raw::c_uint,
pub __wrefs: ::std::os::raw::c_uint,
pub __g_signals: [::std::os::raw::c_uint; 2usize],
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union __pthread_cond_s__bindgen_ty_1 {
pub __wseq: ::std::os::raw::c_ulonglong,
pub __wseq32: __pthread_cond_s__bindgen_ty_1__bindgen_ty_1,
_bindgen_union_align: u64,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 {
pub __low: ::std::os::raw::c_uint,
pub __high: ::std::os::raw::c_uint,
}
#[test]
fn bindgen_test_layout___pthread_cond_s__bindgen_ty_1__bindgen_ty_1() {
assert_eq!(
::std::mem::size_of::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>(),
8usize,
concat!(
"Size of: ",
stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1)
)
);
assert_eq!(
::std::mem::align_of::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>(),
4usize,
concat!(
"Alignment of ",
stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>())).__low
as *const _ as usize
},
0usize,
concat!(
"Offset of field: ",
stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1),
"::",
stringify!(__low)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>())).__high
as *const _ as usize
},
4usize,
concat!(
"Offset of field: ",
stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1),
"::",
stringify!(__high)
)
);
}
#[test]
fn bindgen_test_layout___pthread_cond_s__bindgen_ty_1() {
assert_eq!(
::std::mem::size_of::<__pthread_cond_s__bindgen_ty_1>(),
8usize,
concat!("Size of: ", stringify!(__pthread_cond_s__bindgen_ty_1))
);
assert_eq!(
::std::mem::align_of::<__pthread_cond_s__bindgen_ty_1>(),
8usize,
concat!("Alignment of ", stringify!(__pthread_cond_s__bindgen_ty_1))
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_1>())).__wseq as *const _ as usize
},
0usize,
concat!(
"Offset of field: ",
stringify!(__pthread_cond_s__bindgen_ty_1),
"::",
stringify!(__wseq)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_1>())).__wseq32 as *const _ as usize
},
0usize,
concat!(
"Offset of field: ",
stringify!(__pthread_cond_s__bindgen_ty_1),
"::",
stringify!(__wseq32)
)
);
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union __pthread_cond_s__bindgen_ty_2 {
pub __g1_start: ::std::os::raw::c_ulonglong,
pub __g1_start32: __pthread_cond_s__bindgen_ty_2__bindgen_ty_1,
_bindgen_union_align: u64,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 {
pub __low: ::std::os::raw::c_uint,
pub __high: ::std::os::raw::c_uint,
}
#[test]
fn bindgen_test_layout___pthread_cond_s__bindgen_ty_2__bindgen_ty_1() {
assert_eq!(
::std::mem::size_of::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>(),
8usize,
concat!(
"Size of: ",
stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1)
)
);
assert_eq!(
::std::mem::align_of::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>(),
4usize,
concat!(
"Alignment of ",
stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>())).__low
as *const _ as usize
},
0usize,
concat!(
"Offset of field: ",
stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1),
"::",
stringify!(__low)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>())).__high
as *const _ as usize
},
4usize,
concat!(
"Offset of field: ",
stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1),
"::",
stringify!(__high)
)
);
}
#[test]
fn bindgen_test_layout___pthread_cond_s__bindgen_ty_2() {
assert_eq!(
::std::mem::size_of::<__pthread_cond_s__bindgen_ty_2>(),
8usize,
concat!("Size of: ", stringify!(__pthread_cond_s__bindgen_ty_2))
);
assert_eq!(
::std::mem::align_of::<__pthread_cond_s__bindgen_ty_2>(),
8usize,
concat!("Alignment of ", stringify!(__pthread_cond_s__bindgen_ty_2))
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_2>())).__g1_start as *const _
as usize
},
0usize,
concat!(
"Offset of field: ",
stringify!(__pthread_cond_s__bindgen_ty_2),
"::",
stringify!(__g1_start)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_2>())).__g1_start32 as *const _
as usize
},
0usize,
concat!(
"Offset of field: ",
stringify!(__pthread_cond_s__bindgen_ty_2),
"::",
stringify!(__g1_start32)
)
);
}
#[test]
fn bindgen_test_layout___pthread_cond_s() {
assert_eq!(
::std::mem::size_of::<__pthread_cond_s>(),
48usize,
concat!("Size of: ", stringify!(__pthread_cond_s))
);
assert_eq!(
::std::mem::align_of::<__pthread_cond_s>(),
8usize,
concat!("Alignment of ", stringify!(__pthread_cond_s))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__g_refs as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(__pthread_cond_s),
"::",
stringify!(__g_refs)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__g_size as *const _ as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(__pthread_cond_s),
"::",
stringify!(__g_size)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__g1_orig_size as *const _ as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(__pthread_cond_s),
"::",
stringify!(__g1_orig_size)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__wrefs as *const _ as usize },
36usize,
concat!(
"Offset of field: ",
stringify!(__pthread_cond_s),
"::",
stringify!(__wrefs)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__g_signals as *const _ as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(__pthread_cond_s),
"::",
stringify!(__g_signals)
)
);
}
pub type pthread_t = ::std::os::raw::c_ulong;
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_mutexattr_t {
pub __size: [::std::os::raw::c_char; 4usize],
pub __align: ::std::os::raw::c_int,
_bindgen_union_align: u32,
}
#[test]
fn bindgen_test_layout_pthread_mutexattr_t() {
assert_eq!(
::std::mem::size_of::<pthread_mutexattr_t>(),
4usize,
concat!("Size of: ", stringify!(pthread_mutexattr_t))
);
assert_eq!(
::std::mem::align_of::<pthread_mutexattr_t>(),
4usize,
concat!("Alignment of ", stringify!(pthread_mutexattr_t))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<pthread_mutexattr_t>())).__size as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(pthread_mutexattr_t),
"::",
stringify!(__size)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<pthread_mutexattr_t>())).__align as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(pthread_mutexattr_t),
"::",
stringify!(__align)
)
);
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_condattr_t {
pub __size: [::std::os::raw::c_char; 4usize],
pub __align: ::std::os::raw::c_int,
_bindgen_union_align: u32,
}
#[test]
fn bindgen_test_layout_pthread_condattr_t() {
assert_eq!(
::std::mem::size_of::<pthread_condattr_t>(),
4usize,
concat!("Size of: ", stringify!(pthread_condattr_t))
);
assert_eq!(
::std::mem::align_of::<pthread_condattr_t>(),
4usize,
concat!("Alignment of ", stringify!(pthread_condattr_t))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<pthread_condattr_t>())).__size as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(pthread_condattr_t),
"::",
stringify!(__size)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<pthread_condattr_t>())).__align as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(pthread_condattr_t),
"::",
stringify!(__align)
)
);
}
pub type pthread_key_t = ::std::os::raw::c_uint;
pub type pthread_once_t = ::std::os::raw::c_int;
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_attr_t {
pub __size: [::std::os::raw::c_char; 56usize],
pub __align: ::std::os::raw::c_long,
_bindgen_union_align: [u64; 7usize],
}
#[test]
fn bindgen_test_layout_pthread_attr_t() {
assert_eq!(
::std::mem::size_of::<pthread_attr_t>(),
56usize,
concat!("Size of: ", stringify!(pthread_attr_t))
);
assert_eq!(
::std::mem::align_of::<pthread_attr_t>(),
8usize,
concat!("Alignment of ", stringify!(pthread_attr_t))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<pthread_attr_t>())).__size as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(pthread_attr_t),
"::",
stringify!(__size)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<pthread_attr_t>())).__align as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(pthread_attr_t),
"::",
stringify!(__align)
)
);
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_mutex_t {
pub __data: __pthread_mutex_s,
pub __size: [::std::os::raw::c_char; 40usize],
pub __align: ::std::os::raw::c_long,
_bindgen_union_align: [u64; 5usize],
}
#[test]
fn bindgen_test_layout_pthread_mutex_t() {
assert_eq!(
::std::mem::size_of::<pthread_mutex_t>(),
40usize,
concat!("Size of: ", stringify!(pthread_mutex_t))
);
assert_eq!(
::std::mem::align_of::<pthread_mutex_t>(),
8usize,
concat!("Alignment of ", stringify!(pthread_mutex_t))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<pthread_mutex_t>())).__data as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(pthread_mutex_t),
"::",
stringify!(__data)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<pthread_mutex_t>())).__size as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(pthread_mutex_t),
"::",
stringify!(__size)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<pthread_mutex_t>())).__align as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(pthread_mutex_t),
"::",
stringify!(__align)
)
);
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_cond_t {
pub __data: __pthread_cond_s,
pub __size: [::std::os::raw::c_char; 48usize],
pub __align: ::std::os::raw::c_longlong,
_bindgen_union_align: [u64; 6usize],
}
#[test]
fn bindgen_test_layout_pthread_cond_t() {
assert_eq!(
::std::mem::size_of::<pthread_cond_t>(),
48usize,
concat!("Size of: ", stringify!(pthread_cond_t))
);
assert_eq!(
::std::mem::align_of::<pthread_cond_t>(),
8usize,
concat!("Alignment of ", stringify!(pthread_cond_t))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<pthread_cond_t>())).__data as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(pthread_cond_t),
"::",
stringify!(__data)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<pthread_cond_t>())).__size as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(pthread_cond_t),
"::",
stringify!(__size)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<pthread_cond_t>())).__align as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(pthread_cond_t),
"::",
stringify!(__align)
)
);
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_rwlock_t {
pub __data: __pthread_rwlock_arch_t,
pub __size: [::std::os::raw::c_char; 56usize],
pub __align: ::std::os::raw::c_long,
_bindgen_union_align: [u64; 7usize],
}
#[test]
fn bindgen_test_layout_pthread_rwlock_t() {
assert_eq!(
::std::mem::size_of::<pthread_rwlock_t>(),
56usize,
concat!("Size of: ", stringify!(pthread_rwlock_t))
);
assert_eq!(
::std::mem::align_of::<pthread_rwlock_t>(),
8usize,
concat!("Alignment of ", stringify!(pthread_rwlock_t))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<pthread_rwlock_t>())).__data as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(pthread_rwlock_t),
"::",
stringify!(__data)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<pthread_rwlock_t>())).__size as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(pthread_rwlock_t),
"::",
stringify!(__size)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<pthread_rwlock_t>())).__align as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(pthread_rwlock_t),
"::",
stringify!(__align)
)
);
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_rwlockattr_t {
pub __size: [::std::os::raw::c_char; 8usize],
pub __align: ::std::os::raw::c_long,
_bindgen_union_align: u64,
}
#[test]
fn bindgen_test_layout_pthread_rwlockattr_t() {
assert_eq!(
::std::mem::size_of::<pthread_rwlockattr_t>(),
8usize,
concat!("Size of: ", stringify!(pthread_rwlockattr_t))
);
assert_eq!(
::std::mem::align_of::<pthread_rwlockattr_t>(),
8usize,
concat!("Alignment of ", stringify!(pthread_rwlockattr_t))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<pthread_rwlockattr_t>())).__size as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(pthread_rwlockattr_t),
"::",
stringify!(__size)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<pthread_rwlockattr_t>())).__align as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(pthread_rwlockattr_t),
"::",
stringify!(__align)
)
);
}
pub type pthread_spinlock_t = ::std::os::raw::c_int;
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_barrier_t {
pub __size: [::std::os::raw::c_char; 32usize],
pub __align: ::std::os::raw::c_long,
_bindgen_union_align: [u64; 4usize],
}
#[test]
fn bindgen_test_layout_pthread_barrier_t() {
assert_eq!(
::std::mem::size_of::<pthread_barrier_t>(),
32usize,
concat!("Size of: ", stringify!(pthread_barrier_t))
);
assert_eq!(
::std::mem::align_of::<pthread_barrier_t>(),
8usize,
concat!("Alignment of ", stringify!(pthread_barrier_t))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<pthread_barrier_t>())).__size as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(pthread_barrier_t),
"::",
stringify!(__size)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<pthread_barrier_t>())).__align as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(pthread_barrier_t),
"::",
stringify!(__align)
)
);
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union pthread_barrierattr_t {
pub __size: [::std::os::raw::c_char; 4usize],
pub __align: ::std::os::raw::c_int,
_bindgen_union_align: u32,
}
#[test]
fn bindgen_test_layout_pthread_barrierattr_t() {
assert_eq!(
::std::mem::size_of::<pthread_barrierattr_t>(),
4usize,
concat!("Size of: ", stringify!(pthread_barrierattr_t))
);
assert_eq!(
::std::mem::align_of::<pthread_barrierattr_t>(),
4usize,
concat!("Alignment of ", stringify!(pthread_barrierattr_t))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<pthread_barrierattr_t>())).__size as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(pthread_barrierattr_t),
"::",
stringify!(__size)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<pthread_barrierattr_t>())).__align as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(pthread_barrierattr_t),
"::",
stringify!(__align)
)
);
}
pub type int_least8_t = __int_least8_t;
pub type int_least16_t = __int_least16_t;
pub type int_least32_t = __int_least32_t;
pub type int_least64_t = __int_least64_t;
pub type uint_least8_t = __uint_least8_t;
pub type uint_least16_t = __uint_least16_t;
pub type uint_least32_t = __uint_least32_t;
pub type uint_least64_t = __uint_least64_t;
pub type int_fast8_t = ::std::os::raw::c_schar;
pub type int_fast16_t = ::std::os::raw::c_long;
pub type int_fast32_t = ::std::os::raw::c_long;
pub type int_fast64_t = ::std::os::raw::c_long;
pub type uint_fast8_t = ::std::os::raw::c_uchar;
pub type uint_fast16_t = ::std::os::raw::c_ulong;
pub type uint_fast32_t = ::std::os::raw::c_ulong;
pub type uint_fast64_t = ::std::os::raw::c_ulong;
pub type intmax_t = __intmax_t;
pub type uintmax_t = __uintmax_t;
pub type __gwchar_t = ::std::os::raw::c_int;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct imaxdiv_t {
pub quot: ::std::os::raw::c_long,
pub rem: ::std::os::raw::c_long,
}
#[test]
fn bindgen_test_layout_imaxdiv_t() {
assert_eq!(
::std::mem::size_of::<imaxdiv_t>(),
16usize,
concat!("Size of: ", stringify!(imaxdiv_t))
);
assert_eq!(
::std::mem::align_of::<imaxdiv_t>(),
8usize,
concat!("Alignment of ", stringify!(imaxdiv_t))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<imaxdiv_t>())).quot as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(imaxdiv_t),
"::",
stringify!(quot)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<imaxdiv_t>())).rem as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(imaxdiv_t),
"::",
stringify!(rem)
)
);
}
extern "C" {
pub fn imaxabs(__n: intmax_t) -> intmax_t;
}
extern "C" {
pub fn imaxdiv(__numer: intmax_t, __denom: intmax_t) -> imaxdiv_t;
}
extern "C" {
pub fn strtoimax(
__nptr: *const ::std::os::raw::c_char,
__endptr: *mut *mut ::std::os::raw::c_char,
__base: ::std::os::raw::c_int,
) -> intmax_t;
}
extern "C" {
pub fn strtoumax(
__nptr: *const ::std::os::raw::c_char,
__endptr: *mut *mut ::std::os::raw::c_char,
__base: ::std::os::raw::c_int,
) -> uintmax_t;
}
extern "C" {
pub fn wcstoimax(
__nptr: *const __gwchar_t,
__endptr: *mut *mut __gwchar_t,
__base: ::std::os::raw::c_int,
) -> intmax_t;
}
extern "C" {
pub fn wcstoumax(
__nptr: *const __gwchar_t,
__endptr: *mut *mut __gwchar_t,
__base: ::std::os::raw::c_int,
) -> uintmax_t;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct stack_t {
pub ss_sp: *mut ::std::os::raw::c_void,
pub ss_flags: ::std::os::raw::c_int,
pub ss_size: usize,
}
#[test]
fn bindgen_test_layout_stack_t() {
assert_eq!(
::std::mem::size_of::<stack_t>(),
24usize,
concat!("Size of: ", stringify!(stack_t))
);
assert_eq!(
::std::mem::align_of::<stack_t>(),
8usize,
concat!("Alignment of ", stringify!(stack_t))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<stack_t>())).ss_sp as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(stack_t),
"::",
stringify!(ss_sp)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<stack_t>())).ss_flags as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(stack_t),
"::",
stringify!(ss_flags)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<stack_t>())).ss_size as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(stack_t),
"::",
stringify!(ss_size)
)
);
}
pub type greg_t = ::std::os::raw::c_longlong;
pub type gregset_t = [greg_t; 23usize];
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _libc_fpxreg {
pub significand: [::std::os::raw::c_ushort; 4usize],
pub exponent: ::std::os::raw::c_ushort,
pub __glibc_reserved1: [::std::os::raw::c_ushort; 3usize],
}
#[test]
fn bindgen_test_layout__libc_fpxreg() {
assert_eq!(
::std::mem::size_of::<_libc_fpxreg>(),
16usize,
concat!("Size of: ", stringify!(_libc_fpxreg))
);
assert_eq!(
::std::mem::align_of::<_libc_fpxreg>(),
2usize,
concat!("Alignment of ", stringify!(_libc_fpxreg))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_libc_fpxreg>())).significand as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_libc_fpxreg),
"::",
stringify!(significand)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_libc_fpxreg>())).exponent as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_libc_fpxreg),
"::",
stringify!(exponent)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_libc_fpxreg>())).__glibc_reserved1 as *const _ as usize },
10usize,
concat!(
"Offset of field: ",
stringify!(_libc_fpxreg),
"::",
stringify!(__glibc_reserved1)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _libc_xmmreg {
pub element: [__uint32_t; 4usize],
}
#[test]
fn bindgen_test_layout__libc_xmmreg() {
assert_eq!(
::std::mem::size_of::<_libc_xmmreg>(),
16usize,
concat!("Size of: ", stringify!(_libc_xmmreg))
);
assert_eq!(
::std::mem::align_of::<_libc_xmmreg>(),
4usize,
concat!("Alignment of ", stringify!(_libc_xmmreg))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_libc_xmmreg>())).element as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_libc_xmmreg),
"::",
stringify!(element)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _libc_fpstate {
pub cwd: __uint16_t,
pub swd: __uint16_t,
pub ftw: __uint16_t,
pub fop: __uint16_t,
pub rip: __uint64_t,
pub rdp: __uint64_t,
pub mxcsr: __uint32_t,
pub mxcr_mask: __uint32_t,
pub _st: [_libc_fpxreg; 8usize],
pub _xmm: [_libc_xmmreg; 16usize],
pub __glibc_reserved1: [__uint32_t; 24usize],
}
#[test]
fn bindgen_test_layout__libc_fpstate() {
assert_eq!(
::std::mem::size_of::<_libc_fpstate>(),
512usize,
concat!("Size of: ", stringify!(_libc_fpstate))
);
assert_eq!(
::std::mem::align_of::<_libc_fpstate>(),
8usize,
concat!("Alignment of ", stringify!(_libc_fpstate))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_libc_fpstate>())).cwd as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_libc_fpstate),
"::",
stringify!(cwd)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_libc_fpstate>())).swd as *const _ as usize },
2usize,
concat!(
"Offset of field: ",
stringify!(_libc_fpstate),
"::",
stringify!(swd)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_libc_fpstate>())).ftw as *const _ as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(_libc_fpstate),
"::",
stringify!(ftw)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_libc_fpstate>())).fop as *const _ as usize },
6usize,
concat!(
"Offset of field: ",
stringify!(_libc_fpstate),
"::",
stringify!(fop)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_libc_fpstate>())).rip as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_libc_fpstate),
"::",
stringify!(rip)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_libc_fpstate>())).rdp as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_libc_fpstate),
"::",
stringify!(rdp)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_libc_fpstate>())).mxcsr as *const _ as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(_libc_fpstate),
"::",
stringify!(mxcsr)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_libc_fpstate>())).mxcr_mask as *const _ as usize },
28usize,
concat!(
"Offset of field: ",
stringify!(_libc_fpstate),
"::",
stringify!(mxcr_mask)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_libc_fpstate>()))._st as *const _ as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(_libc_fpstate),
"::",
stringify!(_st)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_libc_fpstate>()))._xmm as *const _ as usize },
160usize,
concat!(
"Offset of field: ",
stringify!(_libc_fpstate),
"::",
stringify!(_xmm)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<_libc_fpstate>())).__glibc_reserved1 as *const _ as usize },
416usize,
concat!(
"Offset of field: ",
stringify!(_libc_fpstate),
"::",
stringify!(__glibc_reserved1)
)
);
}
pub type fpregset_t = *mut _libc_fpstate;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mcontext_t {
pub gregs: gregset_t,
pub fpregs: fpregset_t,
pub __reserved1: [::std::os::raw::c_ulonglong; 8usize],
}
#[test]
fn bindgen_test_layout_mcontext_t() {
assert_eq!(
::std::mem::size_of::<mcontext_t>(),
256usize,
concat!("Size of: ", stringify!(mcontext_t))
);
assert_eq!(
::std::mem::align_of::<mcontext_t>(),
8usize,
concat!("Alignment of ", stringify!(mcontext_t))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<mcontext_t>())).gregs as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(mcontext_t),
"::",
stringify!(gregs)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<mcontext_t>())).fpregs as *const _ as usize },
184usize,
concat!(
"Offset of field: ",
stringify!(mcontext_t),
"::",
stringify!(fpregs)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<mcontext_t>())).__reserved1 as *const _ as usize },
192usize,
concat!(
"Offset of field: ",
stringify!(mcontext_t),
"::",
stringify!(__reserved1)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ucontext_t {
pub uc_flags: ::std::os::raw::c_ulong,
pub uc_link: *mut ucontext_t,
pub uc_stack: stack_t,
pub uc_mcontext: mcontext_t,
pub uc_sigmask: sigset_t,
pub __fpregs_mem: _libc_fpstate,
pub __ssp: [::std::os::raw::c_ulonglong; 4usize],
}
#[test]
fn bindgen_test_layout_ucontext_t() {
assert_eq!(
::std::mem::size_of::<ucontext_t>(),
968usize,
concat!("Size of: ", stringify!(ucontext_t))
);
assert_eq!(
::std::mem::align_of::<ucontext_t>(),
8usize,
concat!("Alignment of ", stringify!(ucontext_t))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ucontext_t>())).uc_flags as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(ucontext_t),
"::",
stringify!(uc_flags)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ucontext_t>())).uc_link as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(ucontext_t),
"::",
stringify!(uc_link)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ucontext_t>())).uc_stack as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(ucontext_t),
"::",
stringify!(uc_stack)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ucontext_t>())).uc_mcontext as *const _ as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(ucontext_t),
"::",
stringify!(uc_mcontext)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ucontext_t>())).uc_sigmask as *const _ as usize },
296usize,
concat!(
"Offset of field: ",
stringify!(ucontext_t),
"::",
stringify!(uc_sigmask)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ucontext_t>())).__fpregs_mem as *const _ as usize },
424usize,
concat!(
"Offset of field: ",
stringify!(ucontext_t),
"::",
stringify!(__fpregs_mem)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<ucontext_t>())).__ssp as *const _ as usize },
936usize,
concat!(
"Offset of field: ",
stringify!(ucontext_t),
"::",
stringify!(__ssp)
)
);
}
extern "C" {
pub fn getcontext(__ucp: *mut ucontext_t) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn setcontext(__ucp: *const ucontext_t) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn swapcontext(__oucp: *mut ucontext_t, __ucp: *const ucontext_t) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn makecontext(
__ucp: *mut ucontext_t,
__func: ::std::option::Option<unsafe extern "C" fn()>,
__argc: ::std::os::raw::c_int,
...
);
}
pub type unw_word_t = u64;
pub type unw_sword_t = i64;
pub type unw_tdep_fpreg_t = u128;
pub const x86_64_regnum_t_UNW_X86_64_RAX: x86_64_regnum_t = 0;
pub const x86_64_regnum_t_UNW_X86_64_RDX: x86_64_regnum_t = 1;
pub const x86_64_regnum_t_UNW_X86_64_RCX: x86_64_regnum_t = 2;
pub const x86_64_regnum_t_UNW_X86_64_RBX: x86_64_regnum_t = 3;
pub const x86_64_regnum_t_UNW_X86_64_RSI: x86_64_regnum_t = 4;
pub const x86_64_regnum_t_UNW_X86_64_RDI: x86_64_regnum_t = 5;
pub const x86_64_regnum_t_UNW_X86_64_RBP: x86_64_regnum_t = 6;
pub const x86_64_regnum_t_UNW_X86_64_RSP: x86_64_regnum_t = 7;
pub const x86_64_regnum_t_UNW_X86_64_R8: x86_64_regnum_t = 8;
pub const x86_64_regnum_t_UNW_X86_64_R9: x86_64_regnum_t = 9;
pub const x86_64_regnum_t_UNW_X86_64_R10: x86_64_regnum_t = 10;
pub const x86_64_regnum_t_UNW_X86_64_R11: x86_64_regnum_t = 11;
pub const x86_64_regnum_t_UNW_X86_64_R12: x86_64_regnum_t = 12;
pub const x86_64_regnum_t_UNW_X86_64_R13: x86_64_regnum_t = 13;
pub const x86_64_regnum_t_UNW_X86_64_R14: x86_64_regnum_t = 14;
pub const x86_64_regnum_t_UNW_X86_64_R15: x86_64_regnum_t = 15;
pub const x86_64_regnum_t_UNW_X86_64_RIP: x86_64_regnum_t = 16;
pub const x86_64_regnum_t_UNW_TDEP_LAST_REG: x86_64_regnum_t = 16;
pub const x86_64_regnum_t_UNW_X86_64_CFA: x86_64_regnum_t = 17;
pub const x86_64_regnum_t_UNW_TDEP_IP: x86_64_regnum_t = 16;
pub const x86_64_regnum_t_UNW_TDEP_SP: x86_64_regnum_t = 7;
pub const x86_64_regnum_t_UNW_TDEP_BP: x86_64_regnum_t = 6;
pub const x86_64_regnum_t_UNW_TDEP_EH: x86_64_regnum_t = 0;
pub type x86_64_regnum_t = u32;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct unw_tdep_save_loc {
pub unused: ::std::os::raw::c_char,
}
#[test]
fn bindgen_test_layout_unw_tdep_save_loc() {
assert_eq!(
::std::mem::size_of::<unw_tdep_save_loc>(),
1usize,
concat!("Size of: ", stringify!(unw_tdep_save_loc))
);
assert_eq!(
::std::mem::align_of::<unw_tdep_save_loc>(),
1usize,
concat!("Alignment of ", stringify!(unw_tdep_save_loc))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_tdep_save_loc>())).unused as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(unw_tdep_save_loc),
"::",
stringify!(unused)
)
);
}
pub type unw_tdep_save_loc_t = unw_tdep_save_loc;
pub type unw_tdep_context_t = ucontext_t;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct unw_tdep_proc_info_t {
pub unused: ::std::os::raw::c_char,
}
#[test]
fn bindgen_test_layout_unw_tdep_proc_info_t() {
assert_eq!(
::std::mem::size_of::<unw_tdep_proc_info_t>(),
1usize,
concat!("Size of: ", stringify!(unw_tdep_proc_info_t))
);
assert_eq!(
::std::mem::align_of::<unw_tdep_proc_info_t>(),
1usize,
concat!("Alignment of ", stringify!(unw_tdep_proc_info_t))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_tdep_proc_info_t>())).unused as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(unw_tdep_proc_info_t),
"::",
stringify!(unused)
)
);
}
pub const unw_dyn_operation_t_UNW_DYN_STOP: unw_dyn_operation_t = 0;
pub const unw_dyn_operation_t_UNW_DYN_SAVE_REG: unw_dyn_operation_t = 1;
pub const unw_dyn_operation_t_UNW_DYN_SPILL_FP_REL: unw_dyn_operation_t = 2;
pub const unw_dyn_operation_t_UNW_DYN_SPILL_SP_REL: unw_dyn_operation_t = 3;
pub const unw_dyn_operation_t_UNW_DYN_ADD: unw_dyn_operation_t = 4;
pub const unw_dyn_operation_t_UNW_DYN_POP_FRAMES: unw_dyn_operation_t = 5;
pub const unw_dyn_operation_t_UNW_DYN_LABEL_STATE: unw_dyn_operation_t = 6;
pub const unw_dyn_operation_t_UNW_DYN_COPY_STATE: unw_dyn_operation_t = 7;
pub const unw_dyn_operation_t_UNW_DYN_ALIAS: unw_dyn_operation_t = 8;
pub type unw_dyn_operation_t = u32;
pub const unw_dyn_info_format_t_UNW_INFO_FORMAT_DYNAMIC: unw_dyn_info_format_t = 0;
pub const unw_dyn_info_format_t_UNW_INFO_FORMAT_TABLE: unw_dyn_info_format_t = 1;
pub const unw_dyn_info_format_t_UNW_INFO_FORMAT_REMOTE_TABLE: unw_dyn_info_format_t = 2;
pub const unw_dyn_info_format_t_UNW_INFO_FORMAT_ARM_EXIDX: unw_dyn_info_format_t = 3;
pub const unw_dyn_info_format_t_UNW_INFO_FORMAT_IP_OFFSET: unw_dyn_info_format_t = 4;
pub type unw_dyn_info_format_t = u32;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct unw_dyn_op {
pub tag: i8,
pub qp: i8,
pub reg: i16,
pub when: i32,
pub val: unw_word_t,
}
#[test]
fn bindgen_test_layout_unw_dyn_op() {
assert_eq!(
::std::mem::size_of::<unw_dyn_op>(),
16usize,
concat!("Size of: ", stringify!(unw_dyn_op))
);
assert_eq!(
::std::mem::align_of::<unw_dyn_op>(),
8usize,
concat!("Alignment of ", stringify!(unw_dyn_op))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_op>())).tag as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_op),
"::",
stringify!(tag)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_op>())).qp as *const _ as usize },
1usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_op),
"::",
stringify!(qp)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_op>())).reg as *const _ as usize },
2usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_op),
"::",
stringify!(reg)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_op>())).when as *const _ as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_op),
"::",
stringify!(when)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_op>())).val as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_op),
"::",
stringify!(val)
)
);
}
pub type unw_dyn_op_t = unw_dyn_op;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct unw_dyn_region_info {
pub next: *mut unw_dyn_region_info,
pub insn_count: i32,
pub op_count: u32,
pub op: [unw_dyn_op_t; 1usize],
}
#[test]
fn bindgen_test_layout_unw_dyn_region_info() {
assert_eq!(
::std::mem::size_of::<unw_dyn_region_info>(),
32usize,
concat!("Size of: ", stringify!(unw_dyn_region_info))
);
assert_eq!(
::std::mem::align_of::<unw_dyn_region_info>(),
8usize,
concat!("Alignment of ", stringify!(unw_dyn_region_info))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_region_info>())).next as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_region_info),
"::",
stringify!(next)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_region_info>())).insn_count as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_region_info),
"::",
stringify!(insn_count)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_region_info>())).op_count as *const _ as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_region_info),
"::",
stringify!(op_count)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_region_info>())).op as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_region_info),
"::",
stringify!(op)
)
);
}
pub type unw_dyn_region_info_t = unw_dyn_region_info;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct unw_dyn_proc_info {
pub name_ptr: unw_word_t,
pub handler: unw_word_t,
pub flags: u32,
pub pad0: i32,
pub regions: *mut unw_dyn_region_info_t,
}
#[test]
fn bindgen_test_layout_unw_dyn_proc_info() {
assert_eq!(
::std::mem::size_of::<unw_dyn_proc_info>(),
32usize,
concat!("Size of: ", stringify!(unw_dyn_proc_info))
);
assert_eq!(
::std::mem::align_of::<unw_dyn_proc_info>(),
8usize,
concat!("Alignment of ", stringify!(unw_dyn_proc_info))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_proc_info>())).name_ptr as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_proc_info),
"::",
stringify!(name_ptr)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_proc_info>())).handler as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_proc_info),
"::",
stringify!(handler)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_proc_info>())).flags as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_proc_info),
"::",
stringify!(flags)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_proc_info>())).pad0 as *const _ as usize },
20usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_proc_info),
"::",
stringify!(pad0)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_proc_info>())).regions as *const _ as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_proc_info),
"::",
stringify!(regions)
)
);
}
pub type unw_dyn_proc_info_t = unw_dyn_proc_info;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct unw_dyn_table_info {
pub name_ptr: unw_word_t,
pub segbase: unw_word_t,
pub table_len: unw_word_t,
pub table_data: *mut unw_word_t,
}
#[test]
fn bindgen_test_layout_unw_dyn_table_info() {
assert_eq!(
::std::mem::size_of::<unw_dyn_table_info>(),
32usize,
concat!("Size of: ", stringify!(unw_dyn_table_info))
);
assert_eq!(
::std::mem::align_of::<unw_dyn_table_info>(),
8usize,
concat!("Alignment of ", stringify!(unw_dyn_table_info))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_table_info>())).name_ptr as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_table_info),
"::",
stringify!(name_ptr)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_table_info>())).segbase as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_table_info),
"::",
stringify!(segbase)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_table_info>())).table_len as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_table_info),
"::",
stringify!(table_len)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_table_info>())).table_data as *const _ as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_table_info),
"::",
stringify!(table_data)
)
);
}
pub type unw_dyn_table_info_t = unw_dyn_table_info;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct unw_dyn_remote_table_info {
pub name_ptr: unw_word_t,
pub segbase: unw_word_t,
pub table_len: unw_word_t,
pub table_data: unw_word_t,
}
#[test]
fn bindgen_test_layout_unw_dyn_remote_table_info() {
assert_eq!(
::std::mem::size_of::<unw_dyn_remote_table_info>(),
32usize,
concat!("Size of: ", stringify!(unw_dyn_remote_table_info))
);
assert_eq!(
::std::mem::align_of::<unw_dyn_remote_table_info>(),
8usize,
concat!("Alignment of ", stringify!(unw_dyn_remote_table_info))
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<unw_dyn_remote_table_info>())).name_ptr as *const _ as usize
},
0usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_remote_table_info),
"::",
stringify!(name_ptr)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<unw_dyn_remote_table_info>())).segbase as *const _ as usize
},
8usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_remote_table_info),
"::",
stringify!(segbase)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<unw_dyn_remote_table_info>())).table_len as *const _ as usize
},
16usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_remote_table_info),
"::",
stringify!(table_len)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<unw_dyn_remote_table_info>())).table_data as *const _ as usize
},
24usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_remote_table_info),
"::",
stringify!(table_data)
)
);
}
pub type unw_dyn_remote_table_info_t = unw_dyn_remote_table_info;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct unw_dyn_info {
pub next: *mut unw_dyn_info,
pub prev: *mut unw_dyn_info,
pub start_ip: unw_word_t,
pub end_ip: unw_word_t,
pub gp: unw_word_t,
pub format: i32,
pub pad: i32,
pub u: unw_dyn_info__bindgen_ty_1,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union unw_dyn_info__bindgen_ty_1 {
pub pi: unw_dyn_proc_info_t,
pub ti: unw_dyn_table_info_t,
pub rti: unw_dyn_remote_table_info_t,
_bindgen_union_align: [u64; 4usize],
}
#[test]
fn bindgen_test_layout_unw_dyn_info__bindgen_ty_1() {
assert_eq!(
::std::mem::size_of::<unw_dyn_info__bindgen_ty_1>(),
32usize,
concat!("Size of: ", stringify!(unw_dyn_info__bindgen_ty_1))
);
assert_eq!(
::std::mem::align_of::<unw_dyn_info__bindgen_ty_1>(),
8usize,
concat!("Alignment of ", stringify!(unw_dyn_info__bindgen_ty_1))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_info__bindgen_ty_1>())).pi as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_info__bindgen_ty_1),
"::",
stringify!(pi)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_info__bindgen_ty_1>())).ti as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_info__bindgen_ty_1),
"::",
stringify!(ti)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_info__bindgen_ty_1>())).rti as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_info__bindgen_ty_1),
"::",
stringify!(rti)
)
);
}
#[test]
fn bindgen_test_layout_unw_dyn_info() {
assert_eq!(
::std::mem::size_of::<unw_dyn_info>(),
80usize,
concat!("Size of: ", stringify!(unw_dyn_info))
);
assert_eq!(
::std::mem::align_of::<unw_dyn_info>(),
8usize,
concat!("Alignment of ", stringify!(unw_dyn_info))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_info>())).next as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_info),
"::",
stringify!(next)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_info>())).prev as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_info),
"::",
stringify!(prev)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_info>())).start_ip as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_info),
"::",
stringify!(start_ip)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_info>())).end_ip as *const _ as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_info),
"::",
stringify!(end_ip)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_info>())).gp as *const _ as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_info),
"::",
stringify!(gp)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_info>())).format as *const _ as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_info),
"::",
stringify!(format)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_info>())).pad as *const _ as usize },
44usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_info),
"::",
stringify!(pad)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_info>())).u as *const _ as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_info),
"::",
stringify!(u)
)
);
}
pub type unw_dyn_info_t = unw_dyn_info;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct unw_dyn_info_list {
pub version: u32,
pub generation: u32,
pub first: *mut unw_dyn_info_t,
}
#[test]
fn bindgen_test_layout_unw_dyn_info_list() {
assert_eq!(
::std::mem::size_of::<unw_dyn_info_list>(),
16usize,
concat!("Size of: ", stringify!(unw_dyn_info_list))
);
assert_eq!(
::std::mem::align_of::<unw_dyn_info_list>(),
8usize,
concat!("Alignment of ", stringify!(unw_dyn_info_list))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_info_list>())).version as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_info_list),
"::",
stringify!(version)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_info_list>())).generation as *const _ as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_info_list),
"::",
stringify!(generation)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_dyn_info_list>())).first as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(unw_dyn_info_list),
"::",
stringify!(first)
)
);
}
pub type unw_dyn_info_list_t = unw_dyn_info_list;
extern "C" {
pub fn _U_dyn_register(arg1: *mut unw_dyn_info_t);
}
extern "C" {
pub fn _U_dyn_cancel(arg1: *mut unw_dyn_info_t);
}
pub const unw_error_t_UNW_ESUCCESS: unw_error_t = 0;
pub const unw_error_t_UNW_EUNSPEC: unw_error_t = 1;
pub const unw_error_t_UNW_ENOMEM: unw_error_t = 2;
pub const unw_error_t_UNW_EBADREG: unw_error_t = 3;
pub const unw_error_t_UNW_EREADONLYREG: unw_error_t = 4;
pub const unw_error_t_UNW_ESTOPUNWIND: unw_error_t = 5;
pub const unw_error_t_UNW_EINVALIDIP: unw_error_t = 6;
pub const unw_error_t_UNW_EBADFRAME: unw_error_t = 7;
pub const unw_error_t_UNW_EINVAL: unw_error_t = 8;
pub const unw_error_t_UNW_EBADVERSION: unw_error_t = 9;
pub const unw_error_t_UNW_ENOINFO: unw_error_t = 10;
pub type unw_error_t = u32;
pub const unw_frame_regnum_t_UNW_REG_IP: unw_frame_regnum_t = 16;
pub const unw_frame_regnum_t_UNW_REG_SP: unw_frame_regnum_t = 7;
pub const unw_frame_regnum_t_UNW_REG_EH: unw_frame_regnum_t = 0;
pub const unw_frame_regnum_t_UNW_REG_LAST: unw_frame_regnum_t = 16;
pub type unw_frame_regnum_t = u32;
pub const unw_caching_policy_t_UNW_CACHE_NONE: unw_caching_policy_t = 0;
pub const unw_caching_policy_t_UNW_CACHE_GLOBAL: unw_caching_policy_t = 1;
pub const unw_caching_policy_t_UNW_CACHE_PER_THREAD: unw_caching_policy_t = 2;
pub type unw_caching_policy_t = u32;
pub type unw_regnum_t = ::std::os::raw::c_int;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct unw_cursor {
pub opaque: [unw_word_t; 127usize],
}
#[test]
fn bindgen_test_layout_unw_cursor() {
assert_eq!(
::std::mem::size_of::<unw_cursor>(),
1016usize,
concat!("Size of: ", stringify!(unw_cursor))
);
assert_eq!(
::std::mem::align_of::<unw_cursor>(),
8usize,
concat!("Alignment of ", stringify!(unw_cursor))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_cursor>())).opaque as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(unw_cursor),
"::",
stringify!(opaque)
)
);
}
pub type unw_cursor_t = unw_cursor;
pub type unw_context_t = unw_tdep_context_t;
pub type unw_fpreg_t = unw_tdep_fpreg_t;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct unw_addr_space {
_unused: [u8; 0],
}
pub type unw_addr_space_t = *mut unw_addr_space;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct unw_proc_info {
pub start_ip: unw_word_t,
pub end_ip: unw_word_t,
pub lsda: unw_word_t,
pub handler: unw_word_t,
pub gp: unw_word_t,
pub flags: unw_word_t,
pub format: ::std::os::raw::c_int,
pub unwind_info_size: ::std::os::raw::c_int,
pub unwind_info: *mut ::std::os::raw::c_void,
pub extra: unw_tdep_proc_info_t,
}
#[test]
fn bindgen_test_layout_unw_proc_info() {
assert_eq!(
::std::mem::size_of::<unw_proc_info>(),
72usize,
concat!("Size of: ", stringify!(unw_proc_info))
);
assert_eq!(
::std::mem::align_of::<unw_proc_info>(),
8usize,
concat!("Alignment of ", stringify!(unw_proc_info))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_proc_info>())).start_ip as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(unw_proc_info),
"::",
stringify!(start_ip)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_proc_info>())).end_ip as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(unw_proc_info),
"::",
stringify!(end_ip)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_proc_info>())).lsda as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(unw_proc_info),
"::",
stringify!(lsda)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_proc_info>())).handler as *const _ as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(unw_proc_info),
"::",
stringify!(handler)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_proc_info>())).gp as *const _ as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(unw_proc_info),
"::",
stringify!(gp)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_proc_info>())).flags as *const _ as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(unw_proc_info),
"::",
stringify!(flags)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_proc_info>())).format as *const _ as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(unw_proc_info),
"::",
stringify!(format)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_proc_info>())).unwind_info_size as *const _ as usize },
52usize,
concat!(
"Offset of field: ",
stringify!(unw_proc_info),
"::",
stringify!(unwind_info_size)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_proc_info>())).unwind_info as *const _ as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(unw_proc_info),
"::",
stringify!(unwind_info)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_proc_info>())).extra as *const _ as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(unw_proc_info),
"::",
stringify!(extra)
)
);
}
pub type unw_proc_info_t = unw_proc_info;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct unw_accessors {
pub find_proc_info: ::std::option::Option<
unsafe extern "C" fn(
arg1: unw_addr_space_t,
arg2: unw_word_t,
arg3: *mut unw_proc_info_t,
arg4: ::std::os::raw::c_int,
arg5: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>,
pub put_unwind_info: ::std::option::Option<
unsafe extern "C" fn(
arg1: unw_addr_space_t,
arg2: *mut unw_proc_info_t,
arg3: *mut ::std::os::raw::c_void,
),
>,
pub get_dyn_info_list_addr: ::std::option::Option<
unsafe extern "C" fn(
arg1: unw_addr_space_t,
arg2: *mut unw_word_t,
arg3: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>,
pub access_mem: ::std::option::Option<
unsafe extern "C" fn(
arg1: unw_addr_space_t,
arg2: unw_word_t,
arg3: *mut unw_word_t,
arg4: ::std::os::raw::c_int,
arg5: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>,
pub access_reg: ::std::option::Option<
unsafe extern "C" fn(
arg1: unw_addr_space_t,
arg2: unw_regnum_t,
arg3: *mut unw_word_t,
arg4: ::std::os::raw::c_int,
arg5: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>,
pub access_fpreg: ::std::option::Option<
unsafe extern "C" fn(
arg1: unw_addr_space_t,
arg2: unw_regnum_t,
arg3: *mut unw_fpreg_t,
arg4: ::std::os::raw::c_int,
arg5: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>,
pub resume: ::std::option::Option<
unsafe extern "C" fn(
arg1: unw_addr_space_t,
arg2: *mut unw_cursor_t,
arg3: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>,
pub get_proc_name: ::std::option::Option<
unsafe extern "C" fn(
arg1: unw_addr_space_t,
arg2: unw_word_t,
arg3: *mut ::std::os::raw::c_char,
arg4: usize,
arg5: *mut unw_word_t,
arg6: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>,
}
#[test]
fn bindgen_test_layout_unw_accessors() {
assert_eq!(
::std::mem::size_of::<unw_accessors>(),
64usize,
concat!("Size of: ", stringify!(unw_accessors))
);
assert_eq!(
::std::mem::align_of::<unw_accessors>(),
8usize,
concat!("Alignment of ", stringify!(unw_accessors))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_accessors>())).find_proc_info as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(unw_accessors),
"::",
stringify!(find_proc_info)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_accessors>())).put_unwind_info as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(unw_accessors),
"::",
stringify!(put_unwind_info)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<unw_accessors>())).get_dyn_info_list_addr as *const _ as usize
},
16usize,
concat!(
"Offset of field: ",
stringify!(unw_accessors),
"::",
stringify!(get_dyn_info_list_addr)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_accessors>())).access_mem as *const _ as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(unw_accessors),
"::",
stringify!(access_mem)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_accessors>())).access_reg as *const _ as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(unw_accessors),
"::",
stringify!(access_reg)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_accessors>())).access_fpreg as *const _ as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(unw_accessors),
"::",
stringify!(access_fpreg)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_accessors>())).resume as *const _ as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(unw_accessors),
"::",
stringify!(resume)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_accessors>())).get_proc_name as *const _ as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(unw_accessors),
"::",
stringify!(get_proc_name)
)
);
}
pub type unw_accessors_t = unw_accessors;
pub const unw_save_loc_type_UNW_SLT_NONE: unw_save_loc_type = 0;
pub const unw_save_loc_type_UNW_SLT_MEMORY: unw_save_loc_type = 1;
pub const unw_save_loc_type_UNW_SLT_REG: unw_save_loc_type = 2;
pub type unw_save_loc_type = u32;
pub use self::unw_save_loc_type as unw_save_loc_type_t;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct unw_save_loc {
pub type_: unw_save_loc_type_t,
pub u: unw_save_loc__bindgen_ty_1,
pub extra: unw_tdep_save_loc_t,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union unw_save_loc__bindgen_ty_1 {
pub addr: unw_word_t,
pub regnum: unw_regnum_t,
_bindgen_union_align: u64,
}
#[test]
fn bindgen_test_layout_unw_save_loc__bindgen_ty_1() {
assert_eq!(
::std::mem::size_of::<unw_save_loc__bindgen_ty_1>(),
8usize,
concat!("Size of: ", stringify!(unw_save_loc__bindgen_ty_1))
);
assert_eq!(
::std::mem::align_of::<unw_save_loc__bindgen_ty_1>(),
8usize,
concat!("Alignment of ", stringify!(unw_save_loc__bindgen_ty_1))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_save_loc__bindgen_ty_1>())).addr as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(unw_save_loc__bindgen_ty_1),
"::",
stringify!(addr)
)
);
assert_eq!(
unsafe {
&(*(::std::ptr::null::<unw_save_loc__bindgen_ty_1>())).regnum as *const _ as usize
},
0usize,
concat!(
"Offset of field: ",
stringify!(unw_save_loc__bindgen_ty_1),
"::",
stringify!(regnum)
)
);
}
#[test]
fn bindgen_test_layout_unw_save_loc() {
assert_eq!(
::std::mem::size_of::<unw_save_loc>(),
24usize,
concat!("Size of: ", stringify!(unw_save_loc))
);
assert_eq!(
::std::mem::align_of::<unw_save_loc>(),
8usize,
concat!("Alignment of ", stringify!(unw_save_loc))
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_save_loc>())).type_ as *const _ as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(unw_save_loc),
"::",
stringify!(type_)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_save_loc>())).u as *const _ as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(unw_save_loc),
"::",
stringify!(u)
)
);
assert_eq!(
unsafe { &(*(::std::ptr::null::<unw_save_loc>())).extra as *const _ as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(unw_save_loc),
"::",
stringify!(extra)
)
);
}
pub type unw_save_loc_t = unw_save_loc;
extern "C" {
pub fn unw_backtrace(
arg1: *mut *mut ::std::os::raw::c_void,
arg2: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub static mut _Ux86_64_local_addr_space: unw_addr_space_t;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct UCD_info {
_unused: [u8; 0],
}
extern "C" {
pub fn _UCD_create(filename: *const ::std::os::raw::c_char) -> *mut UCD_info;
}
extern "C" {
pub fn _UCD_destroy(arg1: *mut UCD_info);
}
extern "C" {
pub fn _UCD_get_num_threads(arg1: *mut UCD_info) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _UCD_select_thread(arg1: *mut UCD_info, arg2: ::std::os::raw::c_int);
}
extern "C" {
pub fn _UCD_get_pid(arg1: *mut UCD_info) -> pid_t;
}
extern "C" {
pub fn _UCD_get_cursig(arg1: *mut UCD_info) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _UCD_add_backing_file_at_segment(
arg1: *mut UCD_info,
phdr_no: ::std::os::raw::c_int,
filename: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _UCD_add_backing_file_at_vaddr(
arg1: *mut UCD_info,
vaddr: ::std::os::raw::c_ulong,
filename: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _UCD_find_proc_info(
arg1: unw_addr_space_t,
arg2: unw_word_t,
arg3: *mut unw_proc_info_t,
arg4: ::std::os::raw::c_int,
arg5: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _UCD_put_unwind_info(
arg1: unw_addr_space_t,
arg2: *mut unw_proc_info_t,
arg3: *mut ::std::os::raw::c_void,
);
}
extern "C" {
pub fn _UCD_get_dyn_info_list_addr(
arg1: unw_addr_space_t,
arg2: *mut unw_word_t,
arg3: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _UCD_access_mem(
arg1: unw_addr_space_t,
arg2: unw_word_t,
arg3: *mut unw_word_t,
arg4: ::std::os::raw::c_int,
arg5: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _UCD_access_reg(
arg1: unw_addr_space_t,
arg2: unw_regnum_t,
arg3: *mut unw_word_t,
arg4: ::std::os::raw::c_int,
arg5: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _UCD_access_fpreg(
arg1: unw_addr_space_t,
arg2: unw_regnum_t,
arg3: *mut unw_fpreg_t,
arg4: ::std::os::raw::c_int,
arg5: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _UCD_get_proc_name(
arg1: unw_addr_space_t,
arg2: unw_word_t,
arg3: *mut ::std::os::raw::c_char,
arg4: usize,
arg5: *mut unw_word_t,
arg6: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn _UCD_resume(
arg1: unw_addr_space_t,
arg2: *mut unw_cursor_t,
arg3: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub static mut _UCD_accessors: unw_accessors_t;
}