php-all-sys 0.0.1

Autogenerated Rust bindingings for PHP extension development for still used PHP versions
Documentation
/* automatically generated by rust-bindgen 0.57.0 */

#![allow(clippy::all)]
#![allow(
    non_upper_case_globals,
    non_camel_case_types,
    non_snake_case,
    clashing_extern_declarations
)]

#[repr(C)]
#[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)]
pub struct __BindgenBitfieldUnit<Storage> {
    storage: Storage,
}
impl<Storage> __BindgenBitfieldUnit<Storage> {
    #[inline]
    pub const fn new(storage: Storage) -> Self {
        Self { storage }
    }
}
impl<Storage> __BindgenBitfieldUnit<Storage>
where
    Storage: AsRef<[u8]> + AsMut<[u8]>,
{
    #[inline]
    pub fn get_bit(&self, index: usize) -> bool {
        debug_assert!(index / 8 < self.storage.as_ref().len());
        let byte_index = index / 8;
        let byte = self.storage.as_ref()[byte_index];
        let bit_index = if cfg!(target_endian = "big") {
            7 - (index % 8)
        } else {
            index % 8
        };
        let mask = 1 << bit_index;
        byte & mask == mask
    }
    #[inline]
    pub fn set_bit(&mut self, index: usize, val: bool) {
        debug_assert!(index / 8 < self.storage.as_ref().len());
        let byte_index = index / 8;
        let byte = &mut self.storage.as_mut()[byte_index];
        let bit_index = if cfg!(target_endian = "big") {
            7 - (index % 8)
        } else {
            index % 8
        };
        let mask = 1 << bit_index;
        if val {
            *byte |= mask;
        } else {
            *byte &= !mask;
        }
    }
    #[inline]
    pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 {
        debug_assert!(bit_width <= 64);
        debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
        debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
        let mut val = 0;
        for i in 0..(bit_width as usize) {
            if self.get_bit(i + bit_offset) {
                let index = if cfg!(target_endian = "big") {
                    bit_width as usize - 1 - i
                } else {
                    i
                };
                val |= 1 << index;
            }
        }
        val
    }
    #[inline]
    pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) {
        debug_assert!(bit_width <= 64);
        debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
        debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
        for i in 0..(bit_width as usize) {
            let mask = 1 << i;
            let val_bit_is_set = val & mask == mask;
            let index = if cfg!(target_endian = "big") {
                bit_width as usize - 1 - i
            } else {
                i
            };
            self.set_bit(index + bit_offset, val_bit_is_set);
        }
    }
}
pub const PHP_API_VERSION: u32 = 20131106;
pub const PHP_DEFAULT_CHARSET: &'static [u8; 6usize] = b"UTF-8\0";
pub const PHP_BLOWFISH_CRYPT: u32 = 1;
pub const PHP_BUILD_DATE: &'static [u8; 11usize] = b"2015-10-29\0";
pub const PHP_CAN_SUPPORT_PROC_OPEN: u32 = 1;
pub const PHP_EXT_DES_CRYPT: u32 = 1;
pub const PHP_HAVE_STDINT_TYPES: u32 = 1;
pub const PHP_ICONV_IMPL: &'static [u8; 6usize] = b"glibc\0";
pub const PHP_MD5_CRYPT: u32 = 1;
pub const PHP_MHASH_BC: u32 = 1;
pub const PHP_MYSQL_UNIX_SOCK_ADDR: &'static [u8; 28usize] = b"/var/run/mysqld/mysqld.sock\0";
pub const PHP_ONIG_BAD_KOI8_ENTRY: u32 = 1;
pub const PHP_OS: &'static [u8; 6usize] = b"Linux\0";
pub const PHP_SHA256_CRYPT: u32 = 1;
pub const PHP_SHA512_CRYPT: u32 = 1;
pub const PHP_SIGCHILD: u32 = 0;
pub const PHP_STD_DES_CRYPT: u32 = 1;
pub const PHP_UNAME: &'static [u8; 6usize] = b"Linux\0";
pub const PHP_USE_PHP_CRYPT_R: u32 = 1;
pub const PHP_WRITE_STDOUT: u32 = 1;
pub const ZEND_BROKEN_SPRINTF: u32 = 0;
pub const ZEND_DEBUG: u32 = 0;
pub const ZEND_MM_ALIGNMENT: u32 = 8;
pub const ZEND_MM_ALIGNMENT_LOG2: u32 = 3;
pub const PHP_MAJOR_VERSION: u32 = 5;
pub const PHP_MINOR_VERSION: u32 = 6;
pub const PHP_RELEASE_VERSION: u32 = 15;
pub const PHP_EXTRA_VERSION: &'static [u8; 20usize] = b"-1+nhojohl~trusty+1\0";
pub const PHP_VERSION: &'static [u8; 26usize] = b"5.6.15-1+nhojohl~trusty+1\0";
pub const PHP_VERSION_ID: u32 = 50615;
pub const ZEND_VERSION: &'static [u8; 6usize] = b"2.6.0\0";
pub const ZEND_PATHS_SEPARATOR: u8 = 58u8;
pub const ZEND_EXTENSIONS_SUPPORT: u32 = 1;
pub const ZEND_ALLOCA_MAX_SIZE: u32 = 32768;
pub const ZEND_MM_ALIGNMENT_MASK: i32 = -8;
pub const HASH_KEY_IS_STRING: u32 = 1;
pub const HASH_KEY_IS_LONG: u32 = 2;
pub const HASH_KEY_NON_EXISTENT: u32 = 3;
pub const HASH_KEY_NON_EXISTANT: u32 = 3;
pub const HASH_UPDATE: u32 = 1;
pub const HASH_ADD: u32 = 2;
pub const HASH_NEXT_INSERT: u32 = 4;
pub const HASH_DEL_KEY: u32 = 0;
pub const HASH_DEL_INDEX: u32 = 1;
pub const HASH_DEL_KEY_QUICK: u32 = 2;
pub const HASH_UPDATE_KEY_IF_NONE: u32 = 0;
pub const HASH_UPDATE_KEY_IF_BEFORE: u32 = 1;
pub const HASH_UPDATE_KEY_IF_AFTER: u32 = 2;
pub const HASH_UPDATE_KEY_ANYWAY: u32 = 3;
pub const ZEND_HASH_APPLY_KEEP: u32 = 0;
pub const ZEND_HASH_APPLY_REMOVE: u32 = 1;
pub const ZEND_HASH_APPLY_STOP: u32 = 2;
pub const ZEND_MMAP_AHEAD: u32 = 32;
pub const IS_NULL: u32 = 0;
pub const IS_LONG: u32 = 1;
pub const IS_DOUBLE: u32 = 2;
pub const IS_BOOL: u32 = 3;
pub const IS_ARRAY: u32 = 4;
pub const IS_OBJECT: u32 = 5;
pub const IS_STRING: u32 = 6;
pub const IS_RESOURCE: u32 = 7;
pub const IS_CONSTANT: u32 = 8;
pub const IS_CONSTANT_AST: u32 = 9;
pub const IS_CALLABLE: u32 = 10;
pub const IS_CONSTANT_TYPE_MASK: u32 = 15;
pub const IS_CONSTANT_UNQUALIFIED: u32 = 16;
pub const IS_LEXICAL_VAR: u32 = 32;
pub const IS_LEXICAL_REF: u32 = 64;
pub const IS_CONSTANT_IN_NAMESPACE: u32 = 256;
pub const ZEND_MAX_RESERVED_RESOURCES: u32 = 4;
pub const GC_BENCH: u32 = 0;
pub const GC_COLOR: u32 = 3;
pub const GC_BLACK: u32 = 0;
pub const GC_WHITE: u32 = 1;
pub const GC_GREY: u32 = 2;
pub const GC_PURPLE: u32 = 3;
pub const DEBUG_BACKTRACE_PROVIDE_OBJECT: u32 = 1;
pub const DEBUG_BACKTRACE_IGNORE_ARGS: u32 = 2;
pub const DEBUG_ZEND: u32 = 0;
pub const ZEND_ACC_STATIC: u32 = 1;
pub const ZEND_ACC_ABSTRACT: u32 = 2;
pub const ZEND_ACC_FINAL: u32 = 4;
pub const ZEND_ACC_IMPLEMENTED_ABSTRACT: u32 = 8;
pub const ZEND_ACC_IMPLICIT_ABSTRACT_CLASS: u32 = 16;
pub const ZEND_ACC_EXPLICIT_ABSTRACT_CLASS: u32 = 32;
pub const ZEND_ACC_FINAL_CLASS: u32 = 64;
pub const ZEND_ACC_INTERFACE: u32 = 128;
pub const ZEND_ACC_TRAIT: u32 = 288;
pub const ZEND_ACC_INTERACTIVE: u32 = 16;
pub const ZEND_ACC_PUBLIC: u32 = 256;
pub const ZEND_ACC_PROTECTED: u32 = 512;
pub const ZEND_ACC_PRIVATE: u32 = 1024;
pub const ZEND_ACC_PPP_MASK: u32 = 1792;
pub const ZEND_ACC_CHANGED: u32 = 2048;
pub const ZEND_ACC_IMPLICIT_PUBLIC: u32 = 4096;
pub const ZEND_ACC_CTOR: u32 = 8192;
pub const ZEND_ACC_DTOR: u32 = 16384;
pub const ZEND_ACC_CLONE: u32 = 32768;
pub const ZEND_ACC_ALLOW_STATIC: u32 = 65536;
pub const ZEND_ACC_SHADOW: u32 = 131072;
pub const ZEND_ACC_DEPRECATED: u32 = 262144;
pub const ZEND_ACC_IMPLEMENT_INTERFACES: u32 = 524288;
pub const ZEND_ACC_IMPLEMENT_TRAITS: u32 = 4194304;
pub const ZEND_ACC_CONSTANTS_UPDATED: u32 = 1048576;
pub const ZEND_HAS_STATIC_IN_METHODS: u32 = 8388608;
pub const ZEND_ACC_CLOSURE: u32 = 1048576;
pub const ZEND_ACC_GENERATOR: u32 = 8388608;
pub const ZEND_ACC_CALL_VIA_HANDLER: u32 = 2097152;
pub const ZEND_ACC_NEVER_CACHE: u32 = 4194304;
pub const ZEND_ACC_VARIADIC: u32 = 16777216;
pub const ZEND_ACC_RETURN_REFERENCE: u32 = 67108864;
pub const ZEND_ACC_DONE_PASS_TWO: u32 = 134217728;
pub const ZEND_ACC_HAS_TYPE_HINTS: u32 = 268435456;
pub const ZEND_RETURN_VALUE: u32 = 0;
pub const ZEND_RETURN_REFERENCE: u32 = 1;
pub const IS_CONST: u32 = 1;
pub const IS_TMP_VAR: u32 = 2;
pub const IS_VAR: u32 = 4;
pub const IS_UNUSED: u32 = 8;
pub const IS_CV: u32 = 16;
pub const ZEND_STACK_APPLY_TOPDOWN: u32 = 1;
pub const ZEND_STACK_APPLY_BOTTOMUP: u32 = 2;
pub const ZEND_PTR_STACK_NUM_ARGS: u32 = 3;
pub const ZEND_EARLY_BINDING_COMPILE_TIME: u32 = 0;
pub const ZEND_EARLY_BINDING_DELAYED: u32 = 1;
pub const ZEND_EARLY_BINDING_DELAYED_ALL: u32 = 2;
pub const ZEND_NOP: u32 = 0;
pub const ZEND_ADD: u32 = 1;
pub const ZEND_SUB: u32 = 2;
pub const ZEND_MUL: u32 = 3;
pub const ZEND_DIV: u32 = 4;
pub const ZEND_MOD: u32 = 5;
pub const ZEND_SL: u32 = 6;
pub const ZEND_SR: u32 = 7;
pub const ZEND_CONCAT: u32 = 8;
pub const ZEND_BW_OR: u32 = 9;
pub const ZEND_BW_AND: u32 = 10;
pub const ZEND_BW_XOR: u32 = 11;
pub const ZEND_BW_NOT: u32 = 12;
pub const ZEND_BOOL_NOT: u32 = 13;
pub const ZEND_BOOL_XOR: u32 = 14;
pub const ZEND_IS_IDENTICAL: u32 = 15;
pub const ZEND_IS_NOT_IDENTICAL: u32 = 16;
pub const ZEND_IS_EQUAL: u32 = 17;
pub const ZEND_IS_NOT_EQUAL: u32 = 18;
pub const ZEND_IS_SMALLER: u32 = 19;
pub const ZEND_IS_SMALLER_OR_EQUAL: u32 = 20;
pub const ZEND_CAST: u32 = 21;
pub const ZEND_QM_ASSIGN: u32 = 22;
pub const ZEND_ASSIGN_ADD: u32 = 23;
pub const ZEND_ASSIGN_SUB: u32 = 24;
pub const ZEND_ASSIGN_MUL: u32 = 25;
pub const ZEND_ASSIGN_DIV: u32 = 26;
pub const ZEND_ASSIGN_MOD: u32 = 27;
pub const ZEND_ASSIGN_SL: u32 = 28;
pub const ZEND_ASSIGN_SR: u32 = 29;
pub const ZEND_ASSIGN_CONCAT: u32 = 30;
pub const ZEND_ASSIGN_BW_OR: u32 = 31;
pub const ZEND_ASSIGN_BW_AND: u32 = 32;
pub const ZEND_ASSIGN_BW_XOR: u32 = 33;
pub const ZEND_PRE_INC: u32 = 34;
pub const ZEND_PRE_DEC: u32 = 35;
pub const ZEND_POST_INC: u32 = 36;
pub const ZEND_POST_DEC: u32 = 37;
pub const ZEND_ASSIGN: u32 = 38;
pub const ZEND_ASSIGN_REF: u32 = 39;
pub const ZEND_ECHO: u32 = 40;
pub const ZEND_PRINT: u32 = 41;
pub const ZEND_JMP: u32 = 42;
pub const ZEND_JMPZ: u32 = 43;
pub const ZEND_JMPNZ: u32 = 44;
pub const ZEND_JMPZNZ: u32 = 45;
pub const ZEND_JMPZ_EX: u32 = 46;
pub const ZEND_JMPNZ_EX: u32 = 47;
pub const ZEND_CASE: u32 = 48;
pub const ZEND_SWITCH_FREE: u32 = 49;
pub const ZEND_BRK: u32 = 50;
pub const ZEND_CONT: u32 = 51;
pub const ZEND_BOOL: u32 = 52;
pub const ZEND_INIT_STRING: u32 = 53;
pub const ZEND_ADD_CHAR: u32 = 54;
pub const ZEND_ADD_STRING: u32 = 55;
pub const ZEND_ADD_VAR: u32 = 56;
pub const ZEND_BEGIN_SILENCE: u32 = 57;
pub const ZEND_END_SILENCE: u32 = 58;
pub const ZEND_INIT_FCALL_BY_NAME: u32 = 59;
pub const ZEND_DO_FCALL: u32 = 60;
pub const ZEND_DO_FCALL_BY_NAME: u32 = 61;
pub const ZEND_RETURN: u32 = 62;
pub const ZEND_RECV: u32 = 63;
pub const ZEND_RECV_INIT: u32 = 64;
pub const ZEND_SEND_VAL: u32 = 65;
pub const ZEND_SEND_VAR: u32 = 66;
pub const ZEND_SEND_REF: u32 = 67;
pub const ZEND_NEW: u32 = 68;
pub const ZEND_INIT_NS_FCALL_BY_NAME: u32 = 69;
pub const ZEND_FREE: u32 = 70;
pub const ZEND_INIT_ARRAY: u32 = 71;
pub const ZEND_ADD_ARRAY_ELEMENT: u32 = 72;
pub const ZEND_INCLUDE_OR_EVAL: u32 = 73;
pub const ZEND_UNSET_VAR: u32 = 74;
pub const ZEND_UNSET_DIM: u32 = 75;
pub const ZEND_UNSET_OBJ: u32 = 76;
pub const ZEND_FE_RESET: u32 = 77;
pub const ZEND_FE_FETCH: u32 = 78;
pub const ZEND_EXIT: u32 = 79;
pub const ZEND_FETCH_R: u32 = 80;
pub const ZEND_FETCH_DIM_R: u32 = 81;
pub const ZEND_FETCH_OBJ_R: u32 = 82;
pub const ZEND_FETCH_W: u32 = 83;
pub const ZEND_FETCH_DIM_W: u32 = 84;
pub const ZEND_FETCH_OBJ_W: u32 = 85;
pub const ZEND_FETCH_RW: u32 = 86;
pub const ZEND_FETCH_DIM_RW: u32 = 87;
pub const ZEND_FETCH_OBJ_RW: u32 = 88;
pub const ZEND_FETCH_IS: u32 = 89;
pub const ZEND_FETCH_DIM_IS: u32 = 90;
pub const ZEND_FETCH_OBJ_IS: u32 = 91;
pub const ZEND_FETCH_FUNC_ARG: u32 = 92;
pub const ZEND_FETCH_DIM_FUNC_ARG: u32 = 93;
pub const ZEND_FETCH_OBJ_FUNC_ARG: u32 = 94;
pub const ZEND_FETCH_UNSET: u32 = 95;
pub const ZEND_FETCH_DIM_UNSET: u32 = 96;
pub const ZEND_FETCH_OBJ_UNSET: u32 = 97;
pub const ZEND_FETCH_DIM_TMP_VAR: u32 = 98;
pub const ZEND_FETCH_CONSTANT: u32 = 99;
pub const ZEND_GOTO: u32 = 100;
pub const ZEND_EXT_STMT: u32 = 101;
pub const ZEND_EXT_FCALL_BEGIN: u32 = 102;
pub const ZEND_EXT_FCALL_END: u32 = 103;
pub const ZEND_EXT_NOP: u32 = 104;
pub const ZEND_TICKS: u32 = 105;
pub const ZEND_SEND_VAR_NO_REF: u32 = 106;
pub const ZEND_CATCH: u32 = 107;
pub const ZEND_THROW: u32 = 108;
pub const ZEND_FETCH_CLASS: u32 = 109;
pub const ZEND_CLONE: u32 = 110;
pub const ZEND_RETURN_BY_REF: u32 = 111;
pub const ZEND_INIT_METHOD_CALL: u32 = 112;
pub const ZEND_INIT_STATIC_METHOD_CALL: u32 = 113;
pub const ZEND_ISSET_ISEMPTY_VAR: u32 = 114;
pub const ZEND_ISSET_ISEMPTY_DIM_OBJ: u32 = 115;
pub const ZEND_PRE_INC_OBJ: u32 = 132;
pub const ZEND_PRE_DEC_OBJ: u32 = 133;
pub const ZEND_POST_INC_OBJ: u32 = 134;
pub const ZEND_POST_DEC_OBJ: u32 = 135;
pub const ZEND_ASSIGN_OBJ: u32 = 136;
pub const ZEND_INSTANCEOF: u32 = 138;
pub const ZEND_DECLARE_CLASS: u32 = 139;
pub const ZEND_DECLARE_INHERITED_CLASS: u32 = 140;
pub const ZEND_DECLARE_FUNCTION: u32 = 141;
pub const ZEND_RAISE_ABSTRACT_ERROR: u32 = 142;
pub const ZEND_DECLARE_CONST: u32 = 143;
pub const ZEND_ADD_INTERFACE: u32 = 144;
pub const ZEND_DECLARE_INHERITED_CLASS_DELAYED: u32 = 145;
pub const ZEND_VERIFY_ABSTRACT_CLASS: u32 = 146;
pub const ZEND_ASSIGN_DIM: u32 = 147;
pub const ZEND_ISSET_ISEMPTY_PROP_OBJ: u32 = 148;
pub const ZEND_HANDLE_EXCEPTION: u32 = 149;
pub const ZEND_USER_OPCODE: u32 = 150;
pub const ZEND_JMP_SET: u32 = 152;
pub const ZEND_DECLARE_LAMBDA_FUNCTION: u32 = 153;
pub const ZEND_ADD_TRAIT: u32 = 154;
pub const ZEND_BIND_TRAITS: u32 = 155;
pub const ZEND_SEPARATE: u32 = 156;
pub const ZEND_QM_ASSIGN_VAR: u32 = 157;
pub const ZEND_JMP_SET_VAR: u32 = 158;
pub const ZEND_DISCARD_EXCEPTION: u32 = 159;
pub const ZEND_YIELD: u32 = 160;
pub const ZEND_GENERATOR_RETURN: u32 = 161;
pub const ZEND_FAST_CALL: u32 = 162;
pub const ZEND_FAST_RET: u32 = 163;
pub const ZEND_RECV_VARIADIC: u32 = 164;
pub const ZEND_SEND_UNPACK: u32 = 165;
pub const ZEND_POW: u32 = 166;
pub const ZEND_ASSIGN_POW: u32 = 167;
pub const ZEND_OP_DATA: u32 = 137;
pub const ZEND_FETCH_CLASS_DEFAULT: u32 = 0;
pub const ZEND_FETCH_CLASS_SELF: u32 = 1;
pub const ZEND_FETCH_CLASS_PARENT: u32 = 2;
pub const ZEND_FETCH_CLASS_MAIN: u32 = 3;
pub const ZEND_FETCH_CLASS_GLOBAL: u32 = 4;
pub const ZEND_FETCH_CLASS_AUTO: u32 = 5;
pub const ZEND_FETCH_CLASS_INTERFACE: u32 = 6;
pub const ZEND_FETCH_CLASS_STATIC: u32 = 7;
pub const ZEND_FETCH_CLASS_TRAIT: u32 = 14;
pub const ZEND_FETCH_CLASS_MASK: u32 = 15;
pub const ZEND_FETCH_CLASS_NO_AUTOLOAD: u32 = 128;
pub const ZEND_FETCH_CLASS_SILENT: u32 = 256;
pub const ZEND_PARSED_MEMBER: u32 = 1;
pub const ZEND_PARSED_METHOD_CALL: u32 = 2;
pub const ZEND_PARSED_STATIC_MEMBER: u32 = 4;
pub const ZEND_PARSED_FUNCTION_CALL: u32 = 8;
pub const ZEND_PARSED_VARIABLE: u32 = 16;
pub const ZEND_PARSED_REFERENCE_VARIABLE: u32 = 32;
pub const ZEND_PARSED_NEW: u32 = 64;
pub const ZEND_PARSED_LIST_EXPR: u32 = 128;
pub const ZEND_UNSET_REG: u32 = 0;
pub const ZEND_INTERNAL_FUNCTION: u32 = 1;
pub const ZEND_USER_FUNCTION: u32 = 2;
pub const ZEND_OVERLOADED_FUNCTION: u32 = 3;
pub const ZEND_EVAL_CODE: u32 = 4;
pub const ZEND_OVERLOADED_FUNCTION_TEMPORARY: u32 = 5;
pub const ZEND_INTERNAL_CLASS: u32 = 1;
pub const ZEND_USER_CLASS: u32 = 2;
pub const ZEND_EVAL: u32 = 1;
pub const ZEND_INCLUDE: u32 = 2;
pub const ZEND_INCLUDE_ONCE: u32 = 4;
pub const ZEND_REQUIRE: u32 = 8;
pub const ZEND_REQUIRE_ONCE: u32 = 16;
pub const ZEND_CT: u32 = 1;
pub const ZEND_RT: u32 = 2;
pub const ZEND_FETCH_GLOBAL: u32 = 0;
pub const ZEND_FETCH_LOCAL: u32 = 268435456;
pub const ZEND_FETCH_STATIC: u32 = 536870912;
pub const ZEND_FETCH_STATIC_MEMBER: u32 = 805306368;
pub const ZEND_FETCH_GLOBAL_LOCK: u32 = 1073741824;
pub const ZEND_FETCH_LEXICAL: u32 = 1342177280;
pub const ZEND_FETCH_TYPE_MASK: u32 = 1879048192;
pub const ZEND_FETCH_STANDARD: u32 = 0;
pub const ZEND_FETCH_ADD_LOCK: u32 = 134217728;
pub const ZEND_FETCH_MAKE_REF: u32 = 67108864;
pub const ZEND_ISSET: u32 = 33554432;
pub const ZEND_ISEMPTY: u32 = 16777216;
pub const ZEND_ISSET_ISEMPTY_MASK: u32 = 50331648;
pub const ZEND_QUICK_SET: u32 = 8388608;
pub const ZEND_FETCH_ARG_MASK: u32 = 1048575;
pub const ZEND_FE_FETCH_BYREF: u32 = 1;
pub const ZEND_FE_FETCH_WITH_KEY: u32 = 2;
pub const ZEND_FE_RESET_VARIABLE: u32 = 1;
pub const ZEND_FE_RESET_REFERENCE: u32 = 2;
pub const ZEND_MEMBER_FUNC_CALL: u32 = 1;
pub const ZEND_ARG_SEND_BY_REF: u32 = 1;
pub const ZEND_ARG_COMPILE_TIME_BOUND: u32 = 2;
pub const ZEND_ARG_SEND_FUNCTION: u32 = 4;
pub const ZEND_ARG_SEND_SILENT: u32 = 8;
pub const ZEND_SEND_BY_VAL: u32 = 0;
pub const ZEND_SEND_BY_REF: u32 = 1;
pub const ZEND_SEND_PREFER_REF: u32 = 2;
pub const ZEND_RETURN_VAL: u32 = 0;
pub const ZEND_RETURN_REF: u32 = 1;
pub const ZEND_RETURNS_FUNCTION: u32 = 1;
pub const ZEND_RETURNS_NEW: u32 = 2;
pub const ZEND_RETURNS_VALUE: u32 = 4;
pub const ZEND_FAST_RET_TO_CATCH: u32 = 1;
pub const ZEND_FAST_RET_TO_FINALLY: u32 = 2;
pub const ZEND_FAST_CALL_FROM_CATCH: u32 = 1;
pub const ZEND_FAST_CALL_FROM_FINALLY: u32 = 2;
pub const ZEND_CLONE_FUNC_NAME: &'static [u8; 8usize] = b"__clone\0";
pub const ZEND_CONSTRUCTOR_FUNC_NAME: &'static [u8; 12usize] = b"__construct\0";
pub const ZEND_DESTRUCTOR_FUNC_NAME: &'static [u8; 11usize] = b"__destruct\0";
pub const ZEND_GET_FUNC_NAME: &'static [u8; 6usize] = b"__get\0";
pub const ZEND_SET_FUNC_NAME: &'static [u8; 6usize] = b"__set\0";
pub const ZEND_UNSET_FUNC_NAME: &'static [u8; 8usize] = b"__unset\0";
pub const ZEND_ISSET_FUNC_NAME: &'static [u8; 8usize] = b"__isset\0";
pub const ZEND_CALL_FUNC_NAME: &'static [u8; 7usize] = b"__call\0";
pub const ZEND_CALLSTATIC_FUNC_NAME: &'static [u8; 13usize] = b"__callstatic\0";
pub const ZEND_TOSTRING_FUNC_NAME: &'static [u8; 11usize] = b"__tostring\0";
pub const ZEND_AUTOLOAD_FUNC_NAME: &'static [u8; 11usize] = b"__autoload\0";
pub const ZEND_INVOKE_FUNC_NAME: &'static [u8; 9usize] = b"__invoke\0";
pub const ZEND_DEBUGINFO_FUNC_NAME: &'static [u8; 12usize] = b"__debuginfo\0";
pub const ZEND_COMPILE_EXTENDED_INFO: u32 = 1;
pub const ZEND_COMPILE_HANDLE_OP_ARRAY: u32 = 2;
pub const ZEND_COMPILE_IGNORE_INTERNAL_FUNCTIONS: u32 = 4;
pub const ZEND_COMPILE_IGNORE_INTERNAL_CLASSES: u32 = 8;
pub const ZEND_COMPILE_DELAYED_BINDING: u32 = 16;
pub const ZEND_COMPILE_NO_CONSTANT_SUBSTITUTION: u32 = 32;
pub const ZEND_COMPILE_DEFAULT: u32 = 2;
pub const ZEND_COMPILE_DEFAULT_FOR_EVAL: u32 = 0;
pub const ZEND_BUILD_TS: &'static [u8; 4usize] = b",TS\0";
pub const ZEND_MODULE_API_NO: u32 = 20131226;
pub const USING_ZTS: u32 = 1;
pub const MODULE_PERSISTENT: u32 = 1;
pub const MODULE_TEMPORARY: u32 = 2;
pub const MODULE_DEP_REQUIRED: u32 = 1;
pub const MODULE_DEP_CONFLICTS: u32 = 2;
pub const MODULE_DEP_OPTIONAL: u32 = 3;
pub const ZEND_RESOURCE_LIST_TYPE_STD: u32 = 1;
pub const ZEND_RESOURCE_LIST_TYPE_EX: u32 = 2;
pub const ZEND_VM_STACK_PAGE_SIZE: u32 = 16368;
pub const ZEND_USER_OPCODE_CONTINUE: u32 = 0;
pub const ZEND_USER_OPCODE_RETURN: u32 = 1;
pub const ZEND_USER_OPCODE_DISPATCH: u32 = 2;
pub const ZEND_USER_OPCODE_ENTER: u32 = 3;
pub const ZEND_USER_OPCODE_LEAVE: u32 = 4;
pub const ZEND_USER_OPCODE_DISPATCH_TO: u32 = 256;
pub const ZEND_PARSE_PARAMS_QUIET: u32 = 2;
pub const IS_CALLABLE_CHECK_SYNTAX_ONLY: u32 = 1;
pub const IS_CALLABLE_CHECK_NO_ACCESS: u32 = 2;
pub const IS_CALLABLE_CHECK_IS_STATIC: u32 = 4;
pub const IS_CALLABLE_CHECK_SILENT: u32 = 8;
pub const IS_CALLABLE_STRICT: u32 = 4;
pub const PHP_DEBUG: u32 = 0;
pub const PHP_DIR_SEPARATOR: u8 = 47u8;
pub const PHP_EOL: &'static [u8; 2usize] = b"\n\0";
pub const CONFIGURE_COMMAND : & 'static [u8 ; 2585usize] = b" '../configure'  '--prefix=/usr' '--with-apxs2=/usr/bin/apxs2' '--with-config-file-path=/etc/php5/apache2' '--with-config-file-scan-dir=/etc/php5/apache2/conf.d' '--build=x86_64-linux-gnu' '--host=x86_64-linux-gnu' '--sysconfdir=/etc' '--localstatedir=/var' '--mandir=/usr/share/man' '--enable-maintainer-zts' '--disable-debug' '--with-regex=php' '--disable-rpath' '--disable-static' '--with-pic' '--with-layout=GNU' '--with-pear=/usr/share/php' '--enable-calendar' '--enable-sysvsem' '--enable-sysvshm' '--enable-sysvmsg' '--enable-bcmath' '--with-bz2' '--enable-ctype' '--with-db4' '--with-qdbm=/usr' '--without-gdbm' '--with-iconv' '--enable-exif' '--enable-ftp' '--with-gettext' '--enable-mbstring' '--with-onig=/usr' '--with-pcre-regex=/usr' '--enable-shmop' '--enable-sockets' '--enable-wddx' '--with-libxml-dir=/usr' '--with-zlib' '--with-kerberos=/usr' '--with-openssl=/usr' '--enable-soap' '--enable-zip' '--with-mhash=yes' '--with-system-tzdata' '--with-mysql-sock=/var/run/mysqld/mysqld.sock' '--enable-dtrace' '--without-mm' '--with-curl=shared,/usr' '--with-enchant=shared,/usr' '--with-zlib-dir=/usr' '--with-gd=shared,/usr' '--enable-gd-native-ttf' '--with-gmp=shared,/usr' '--with-jpeg-dir=shared,/usr' '--with-xpm-dir=shared,/usr/X11R6' '--with-png-dir=shared,/usr' '--with-freetype-dir=shared,/usr' '--with-vpx-dir=shared,/usr' '--with-imap=shared,/usr' '--with-imap-ssl' '--enable-intl=shared' '--without-t1lib' '--with-ldap=shared,/usr' '--with-ldap-sasl=/usr' '--with-mcrypt=shared,/usr' '--with-mysql=shared,/usr' '--with-mysqli=shared,/usr/bin/mysql_config' '--with-pspell=shared,/usr' '--with-unixODBC=shared,/usr' '--with-recode=shared,/usr' '--with-xsl=shared,/usr' '--with-snmp=shared,/usr' '--with-sqlite3=shared,/usr' '--with-mssql=shared,/usr' '--with-tidy=shared,/usr' '--with-xmlrpc=shared' '--with-pgsql=shared,/usr' 'PGSQL_INCLUDE=/usr/include/postgresql' '--enable-pdo=shared' '--without-pdo-dblib' '--with-pdo-mysql=shared,/usr' '--with-pdo-odbc=shared,unixODBC,/usr' '--with-pdo-pgsql=shared,/usr/bin/pg_config' '--with-pdo-sqlite=shared,/usr' '--with-pdo-dblib=shared,/usr' '--with-interbase=shared,/usr' '--with-pdo-firebird=shared,/usr' 'build_alias=x86_64-linux-gnu' 'host_alias=x86_64-linux-gnu' 'CFLAGS=-g '-O2' '-fstack-protector' '--param=ssp-buffer-size=4' '-Wformat' '-Werror=format-security' '-O2' '-Wall' '-fsigned-char' '-fno-strict-aliasing' '-g'' 'LDFLAGS=-Wl,-Bsymbolic-functions '-Wl,-z,relro'' 'CPPFLAGS=-D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g '-O2' '-fstack-protector' '--param=ssp-buffer-size=4' '-Wformat' '-Werror=format-security''\0" ;
pub const PHP_ADA_INCLUDE: &'static [u8; 1usize] = b"\0";
pub const PHP_ADA_LFLAGS: &'static [u8; 1usize] = b"\0";
pub const PHP_ADA_LIBS: &'static [u8; 1usize] = b"\0";
pub const PHP_APACHE_INCLUDE: &'static [u8; 1usize] = b"\0";
pub const PHP_APACHE_TARGET: &'static [u8; 1usize] = b"\0";
pub const PHP_FHTTPD_INCLUDE: &'static [u8; 1usize] = b"\0";
pub const PHP_FHTTPD_LIB: &'static [u8; 1usize] = b"\0";
pub const PHP_FHTTPD_TARGET: &'static [u8; 1usize] = b"\0";
pub const PHP_CFLAGS: &'static [u8; 28usize] = b"$(CFLAGS_CLEAN) -prefer-pic\0";
pub const PHP_DBASE_LIB: &'static [u8; 1usize] = b"\0";
pub const PHP_BUILD_DEBUG: &'static [u8; 1usize] = b"\0";
pub const PHP_GDBM_INCLUDE: &'static [u8; 1usize] = b"\0";
pub const PHP_IBASE_INCLUDE: &'static [u8; 1usize] = b"\0";
pub const PHP_IBASE_LFLAGS: &'static [u8; 1usize] = b"\0";
pub const PHP_IBASE_LIBS: &'static [u8; 1usize] = b"\0";
pub const PHP_IFX_INCLUDE: &'static [u8; 1usize] = b"\0";
pub const PHP_IFX_LFLAGS: &'static [u8; 1usize] = b"\0";
pub const PHP_IFX_LIBS: &'static [u8; 1usize] = b"\0";
pub const PHP_INSTALL_IT : & 'static [u8 ; 331usize] = b"$(mkinstalldirs) '$(INSTALL_ROOT)/usr/lib/apache2/modules' &&                 $(mkinstalldirs) '$(INSTALL_ROOT)/etc/apache2' &&                  /usr/bin/apxs2 -S LIBEXECDIR='$(INSTALL_ROOT)/usr/lib/apache2/modules'                        -S SYSCONFDIR='$(INSTALL_ROOT)/etc/apache2'                        -i -a -n php5 libphp5.la\0" ;
pub const PHP_IODBC_INCLUDE: &'static [u8; 1usize] = b"\0";
pub const PHP_IODBC_LFLAGS: &'static [u8; 1usize] = b"\0";
pub const PHP_IODBC_LIBS: &'static [u8; 1usize] = b"\0";
pub const PHP_MSQL_INCLUDE: &'static [u8; 1usize] = b"\0";
pub const PHP_MSQL_LFLAGS: &'static [u8; 1usize] = b"\0";
pub const PHP_MSQL_LIBS: &'static [u8; 1usize] = b"\0";
pub const PHP_MYSQL_INCLUDE: &'static [u8; 21usize] = b"-I/usr/include/mysql\0";
pub const PHP_MYSQL_LIBS: &'static [u8; 45usize] =
    b"-L/usr/lib/x86_64-linux-gnu -lmysqlclient_r \0";
pub const PHP_MYSQL_TYPE: &'static [u8; 9usize] = b"external\0";
pub const PHP_ODBC_INCLUDE: &'static [u8; 15usize] = b"-I/usr/include\0";
pub const PHP_ODBC_LFLAGS: &'static [u8; 11usize] = b"-L/usr/lib\0";
pub const PHP_ODBC_LIBS: &'static [u8; 7usize] = b"-lodbc\0";
pub const PHP_ODBC_TYPE: &'static [u8; 9usize] = b"unixODBC\0";
pub const PHP_OCI8_SHARED_LIBADD: &'static [u8; 1usize] = b"\0";
pub const PHP_OCI8_DIR: &'static [u8; 1usize] = b"\0";
pub const PHP_OCI8_ORACLE_VERSION: &'static [u8; 1usize] = b"\0";
pub const PHP_ORACLE_SHARED_LIBADD: &'static [u8; 23usize] = b"@ORACLE_SHARED_LIBADD@\0";
pub const PHP_ORACLE_DIR: &'static [u8; 13usize] = b"@ORACLE_DIR@\0";
pub const PHP_ORACLE_VERSION: &'static [u8; 17usize] = b"@ORACLE_VERSION@\0";
pub const PHP_PGSQL_INCLUDE: &'static [u8; 1usize] = b"\0";
pub const PHP_PGSQL_LFLAGS: &'static [u8; 1usize] = b"\0";
pub const PHP_PGSQL_LIBS: &'static [u8; 1usize] = b"\0";
pub const PHP_PROG_SENDMAIL: &'static [u8; 19usize] = b"/usr/sbin/sendmail\0";
pub const PHP_SOLID_INCLUDE: &'static [u8; 1usize] = b"\0";
pub const PHP_SOLID_LIBS: &'static [u8; 1usize] = b"\0";
pub const PHP_EMPRESS_INCLUDE: &'static [u8; 1usize] = b"\0";
pub const PHP_EMPRESS_LIBS: &'static [u8; 1usize] = b"\0";
pub const PHP_SYBASE_INCLUDE: &'static [u8; 1usize] = b"\0";
pub const PHP_SYBASE_LFLAGS: &'static [u8; 1usize] = b"\0";
pub const PHP_SYBASE_LIBS: &'static [u8; 1usize] = b"\0";
pub const PHP_DBM_TYPE: &'static [u8; 1usize] = b"\0";
pub const PHP_DBM_LIB: &'static [u8; 1usize] = b"\0";
pub const PHP_LDAP_LFLAGS: &'static [u8; 1usize] = b"\0";
pub const PHP_LDAP_INCLUDE: &'static [u8; 1usize] = b"\0";
pub const PHP_LDAP_LIBS: &'static [u8; 1usize] = b"\0";
pub const PHP_BIRDSTEP_INCLUDE: &'static [u8; 1usize] = b"\0";
pub const PHP_BIRDSTEP_LIBS: &'static [u8; 1usize] = b"\0";
pub const PHP_INCLUDE_PATH: &'static [u8; 33usize] = b".:/usr/share/php:/usr/share/pear\0";
pub const PHP_EXTENSION_DIR: &'static [u8; 27usize] = b"/usr/lib/php5/20131226-zts\0";
pub const PHP_PREFIX: &'static [u8; 5usize] = b"/usr\0";
pub const PHP_BINDIR: &'static [u8; 9usize] = b"/usr/bin\0";
pub const PHP_SBINDIR: &'static [u8; 10usize] = b"/usr/sbin\0";
pub const PHP_MANDIR: &'static [u8; 15usize] = b"/usr/share/man\0";
pub const PHP_LIBDIR: &'static [u8; 14usize] = b"/usr/lib/php5\0";
pub const PHP_DATADIR: &'static [u8; 16usize] = b"/usr/share/php5\0";
pub const PHP_SYSCONFDIR: &'static [u8; 5usize] = b"/etc\0";
pub const PHP_LOCALSTATEDIR: &'static [u8; 5usize] = b"/var\0";
pub const PHP_CONFIG_FILE_PATH: &'static [u8; 18usize] = b"/etc/php5/apache2\0";
pub const PHP_CONFIG_FILE_SCAN_DIR: &'static [u8; 25usize] = b"/etc/php5/apache2/conf.d\0";
pub const PHP_SHLIB_SUFFIX: &'static [u8; 3usize] = b"so\0";
pub const PHP_MIME_TYPE: &'static [u8; 24usize] = b"application/x-httpd-php\0";
pub const PHP_ATTR_FMT_OFFSET: u32 = 1;
pub const PHP_OUTPUT_NEWAPI: u32 = 1;
pub const PHP_OUTPUT_HANDLER_WRITE: u32 = 0;
pub const PHP_OUTPUT_HANDLER_START: u32 = 1;
pub const PHP_OUTPUT_HANDLER_CLEAN: u32 = 2;
pub const PHP_OUTPUT_HANDLER_FLUSH: u32 = 4;
pub const PHP_OUTPUT_HANDLER_FINAL: u32 = 8;
pub const PHP_OUTPUT_HANDLER_CONT: u32 = 0;
pub const PHP_OUTPUT_HANDLER_END: u32 = 8;
pub const PHP_OUTPUT_HANDLER_INTERNAL: u32 = 0;
pub const PHP_OUTPUT_HANDLER_USER: u32 = 1;
pub const PHP_OUTPUT_HANDLER_CLEANABLE: u32 = 16;
pub const PHP_OUTPUT_HANDLER_FLUSHABLE: u32 = 32;
pub const PHP_OUTPUT_HANDLER_REMOVABLE: u32 = 64;
pub const PHP_OUTPUT_HANDLER_STDFLAGS: u32 = 112;
pub const PHP_OUTPUT_HANDLER_STARTED: u32 = 4096;
pub const PHP_OUTPUT_HANDLER_DISABLED: u32 = 8192;
pub const PHP_OUTPUT_HANDLER_PROCESSED: u32 = 16384;
pub const PHP_OUTPUT_POP_TRY: u32 = 0;
pub const PHP_OUTPUT_POP_FORCE: u32 = 1;
pub const PHP_OUTPUT_POP_DISCARD: u32 = 16;
pub const PHP_OUTPUT_POP_SILENT: u32 = 256;
pub const PHP_OUTPUT_IMPLICITFLUSH: u32 = 1;
pub const PHP_OUTPUT_DISABLED: u32 = 2;
pub const PHP_OUTPUT_WRITTEN: u32 = 4;
pub const PHP_OUTPUT_SENT: u32 = 8;
pub const PHP_OUTPUT_ACTIVE: u32 = 16;
pub const PHP_OUTPUT_LOCKED: u32 = 32;
pub const PHP_OUTPUT_ACTIVATED: u32 = 1048576;
pub const PHP_OUTPUT_HANDLER_ALIGNTO_SIZE: u32 = 4096;
pub const PHP_OUTPUT_HANDLER_DEFAULT_SIZE: u32 = 16384;
pub const PHP_STREAM_NOTIFIER_PROGRESS: u32 = 1;
pub const PHP_STREAM_NOTIFY_RESOLVE: u32 = 1;
pub const PHP_STREAM_NOTIFY_CONNECT: u32 = 2;
pub const PHP_STREAM_NOTIFY_AUTH_REQUIRED: u32 = 3;
pub const PHP_STREAM_NOTIFY_MIME_TYPE_IS: u32 = 4;
pub const PHP_STREAM_NOTIFY_FILE_SIZE_IS: u32 = 5;
pub const PHP_STREAM_NOTIFY_REDIRECTED: u32 = 6;
pub const PHP_STREAM_NOTIFY_PROGRESS: u32 = 7;
pub const PHP_STREAM_NOTIFY_COMPLETED: u32 = 8;
pub const PHP_STREAM_NOTIFY_FAILURE: u32 = 9;
pub const PHP_STREAM_NOTIFY_AUTH_RESULT: u32 = 10;
pub const PHP_STREAM_NOTIFY_SEVERITY_INFO: u32 = 0;
pub const PHP_STREAM_NOTIFY_SEVERITY_WARN: u32 = 1;
pub const PHP_STREAM_NOTIFY_SEVERITY_ERR: u32 = 2;
pub const PHP_STREAM_FILTER_READ: u32 = 1;
pub const PHP_STREAM_FILTER_WRITE: u32 = 2;
pub const PHP_STREAM_FILTER_ALL: u32 = 3;
pub const PHP_STREAM_FLAG_NO_SEEK: u32 = 1;
pub const PHP_STREAM_FLAG_NO_BUFFER: u32 = 2;
pub const PHP_STREAM_FLAG_EOL_UNIX: u32 = 0;
pub const PHP_STREAM_FLAG_DETECT_EOL: u32 = 4;
pub const PHP_STREAM_FLAG_EOL_MAC: u32 = 8;
pub const PHP_STREAM_FLAG_AVOID_BLOCKING: u32 = 16;
pub const PHP_STREAM_FLAG_NO_CLOSE: u32 = 32;
pub const PHP_STREAM_FLAG_IS_DIR: u32 = 64;
pub const PHP_STREAM_FLAG_NO_FCLOSE: u32 = 128;
pub const PHP_STREAM_FCLOSE_NONE: u32 = 0;
pub const PHP_STREAM_FCLOSE_FDOPEN: u32 = 1;
pub const PHP_STREAM_FCLOSE_FOPENCOOKIE: u32 = 2;
pub const PHP_STREAM_PERSISTENT_SUCCESS: u32 = 0;
pub const PHP_STREAM_PERSISTENT_FAILURE: u32 = 1;
pub const PHP_STREAM_PERSISTENT_NOT_EXIST: u32 = 2;
pub const PHP_STREAM_FREE_CALL_DTOR: u32 = 1;
pub const PHP_STREAM_FREE_RELEASE_STREAM: u32 = 2;
pub const PHP_STREAM_FREE_PRESERVE_HANDLE: u32 = 4;
pub const PHP_STREAM_FREE_RSRC_DTOR: u32 = 8;
pub const PHP_STREAM_FREE_PERSISTENT: u32 = 16;
pub const PHP_STREAM_FREE_IGNORE_ENCLOSING: u32 = 32;
pub const PHP_STREAM_FREE_CLOSE: u32 = 3;
pub const PHP_STREAM_FREE_CLOSE_CASTED: u32 = 7;
pub const PHP_STREAM_FREE_CLOSE_PERSISTENT: u32 = 19;
pub const PHP_STREAM_MKDIR_RECURSIVE: u32 = 1;
pub const PHP_STREAM_URL_STAT_LINK: u32 = 1;
pub const PHP_STREAM_URL_STAT_QUIET: u32 = 2;
pub const PHP_STREAM_URL_STAT_NOCACHE: u32 = 4;
pub const PHP_STREAM_OPTION_BLOCKING: u32 = 1;
pub const PHP_STREAM_OPTION_READ_BUFFER: u32 = 2;
pub const PHP_STREAM_OPTION_WRITE_BUFFER: u32 = 3;
pub const PHP_STREAM_BUFFER_NONE: u32 = 0;
pub const PHP_STREAM_BUFFER_LINE: u32 = 1;
pub const PHP_STREAM_BUFFER_FULL: u32 = 2;
pub const PHP_STREAM_OPTION_READ_TIMEOUT: u32 = 4;
pub const PHP_STREAM_OPTION_SET_CHUNK_SIZE: u32 = 5;
pub const PHP_STREAM_OPTION_LOCKING: u32 = 6;
pub const PHP_STREAM_LOCK_SUPPORTED: u32 = 1;
pub const PHP_STREAM_OPTION_XPORT_API: u32 = 7;
pub const PHP_STREAM_OPTION_CRYPTO_API: u32 = 8;
pub const PHP_STREAM_OPTION_MMAP_API: u32 = 9;
pub const PHP_STREAM_OPTION_TRUNCATE_API: u32 = 10;
pub const PHP_STREAM_TRUNCATE_SUPPORTED: u32 = 0;
pub const PHP_STREAM_TRUNCATE_SET_SIZE: u32 = 1;
pub const PHP_STREAM_OPTION_META_DATA_API: u32 = 11;
pub const PHP_STREAM_OPTION_CHECK_LIVENESS: u32 = 12;
pub const PHP_STREAM_OPTION_RETURN_OK: u32 = 0;
pub const PHP_STREAM_OPTION_RETURN_ERR: i32 = -1;
pub const PHP_STREAM_OPTION_RETURN_NOTIMPL: i32 = -2;
pub const PHP_STREAM_MMAP_ALL: u32 = 0;
pub const PHP_STREAM_AS_STDIO: u32 = 0;
pub const PHP_STREAM_AS_FD: u32 = 1;
pub const PHP_STREAM_AS_SOCKETD: u32 = 2;
pub const PHP_STREAM_AS_FD_FOR_SELECT: u32 = 3;
pub const PHP_STREAM_CAST_TRY_HARD: u32 = 2147483648;
pub const PHP_STREAM_CAST_RELEASE: u32 = 1073741824;
pub const PHP_STREAM_CAST_INTERNAL: u32 = 536870912;
pub const PHP_STREAM_CAST_MASK: u32 = 3758096384;
pub const PHP_STREAM_UNCHANGED: u32 = 0;
pub const PHP_STREAM_RELEASED: u32 = 1;
pub const PHP_STREAM_FAILED: u32 = 2;
pub const PHP_STREAM_CRITICAL: u32 = 3;
pub const PHP_STREAM_NO_PREFERENCE: u32 = 0;
pub const PHP_STREAM_PREFER_STDIO: u32 = 1;
pub const PHP_STREAM_FORCE_CONVERSION: u32 = 2;
pub const PHP_STREAM_IS_URL: u32 = 1;
pub const PHP_STREAM_META_TOUCH: u32 = 1;
pub const PHP_STREAM_META_OWNER_NAME: u32 = 2;
pub const PHP_STREAM_META_OWNER: u32 = 3;
pub const PHP_STREAM_META_GROUP_NAME: u32 = 4;
pub const PHP_STREAM_META_GROUP: u32 = 5;
pub const PHP_STREAM_META_ACCESS: u32 = 6;
pub const PHP_STREAM_MAX_MEM: u32 = 2097152;
pub const PHP_DISPLAY_ERRORS_STDOUT: u32 = 1;
pub const PHP_DISPLAY_ERRORS_STDERR: u32 = 2;
pub const ZEND_INI_USER: u32 = 1;
pub const ZEND_INI_PERDIR: u32 = 2;
pub const ZEND_INI_SYSTEM: u32 = 4;
pub const ZEND_INI_ALL: u32 = 7;
pub const ZEND_INI_DISPLAY_ORIG: u32 = 1;
pub const ZEND_INI_DISPLAY_ACTIVE: u32 = 2;
pub const ZEND_INI_STAGE_STARTUP: u32 = 1;
pub const ZEND_INI_STAGE_SHUTDOWN: u32 = 2;
pub const ZEND_INI_STAGE_ACTIVATE: u32 = 4;
pub const ZEND_INI_STAGE_DEACTIVATE: u32 = 8;
pub const ZEND_INI_STAGE_RUNTIME: u32 = 16;
pub const ZEND_INI_STAGE_HTACCESS: u32 = 32;
pub const ZEND_INI_PARSER_ENTRY: u32 = 1;
pub const ZEND_INI_PARSER_SECTION: u32 = 2;
pub const ZEND_INI_PARSER_POP_ENTRY: u32 = 3;
pub const PHP_INI_USER: u32 = 1;
pub const PHP_INI_PERDIR: u32 = 2;
pub const PHP_INI_SYSTEM: u32 = 4;
pub const PHP_INI_ALL: u32 = 7;
pub const PHP_INI_DISPLAY_ORIG: u32 = 1;
pub const PHP_INI_DISPLAY_ACTIVE: u32 = 2;
pub const PHP_INI_STAGE_STARTUP: u32 = 1;
pub const PHP_INI_STAGE_SHUTDOWN: u32 = 2;
pub const PHP_INI_STAGE_ACTIVATE: u32 = 4;
pub const PHP_INI_STAGE_DEACTIVATE: u32 = 8;
pub const PHP_INI_STAGE_RUNTIME: u32 = 16;
pub const PHP_INI_STAGE_HTACCESS: u32 = 32;
pub const PHP_CONNECTION_NORMAL: u32 = 0;
pub const PHP_CONNECTION_ABORTED: u32 = 1;
pub const PHP_CONNECTION_TIMEOUT: u32 = 2;
pub const PHP_ENTRY_NAME_COLOR: &'static [u8; 5usize] = b"#ccf\0";
pub const PHP_CONTENTS_COLOR: &'static [u8; 5usize] = b"#ccc\0";
pub const PHP_HEADER_COLOR: &'static [u8; 5usize] = b"#99c\0";
pub const PHP_INFO_GENERAL: u32 = 1;
pub const PHP_INFO_CREDITS: u32 = 2;
pub const PHP_INFO_CONFIGURATION: u32 = 4;
pub const PHP_INFO_MODULES: u32 = 8;
pub const PHP_INFO_ENVIRONMENT: u32 = 16;
pub const PHP_INFO_VARIABLES: u32 = 32;
pub const PHP_INFO_LICENSE: u32 = 64;
pub const PHP_INFO_ALL: u32 = 4294967295;
pub const PHP_CREDITS_GROUP: u32 = 1;
pub const PHP_CREDITS_GENERAL: u32 = 2;
pub const PHP_CREDITS_SAPI: u32 = 4;
pub const PHP_CREDITS_MODULES: u32 = 8;
pub const PHP_CREDITS_DOCS: u32 = 16;
pub const PHP_CREDITS_FULLPAGE: u32 = 32;
pub const PHP_CREDITS_QA: u32 = 64;
pub const PHP_CREDITS_WEB: u32 = 128;
pub const PHP_CREDITS_ALL: u32 = 4294967295;
pub const PHP_LOGO_DATA_URI : & 'static [u8 ; 5439usize] = b"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHkAAABACAYAAAA+j9gsAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAD4BJREFUeNrsnXtwXFUdx8/dBGihmE21QCrQDY6oZZykon/gY5qizjgM2KQMfzFAOioOA5KEh+j4R9oZH7zT6MAMKrNphZFSQreKHRgZmspLHSCJ2Co6tBtJk7Zps7tJs5t95F5/33PvWU4293F29ybdlPzaM3df2XPv+Zzf4/zOuWc1tkjl+T0HQ3SQC6SBSlD6WKN4rusGm9F1ps/o5mPriOf8dd0YoNfi0nt4ntB1PT4zYwzQkf3kR9/sW4xtpS0CmE0SyPUFUJXFMIxZcM0jAZ4xrKMudQT7963HBF0n6EaUjkP0vI9K9OEHWqJLkNW1s8mC2WgVTwGAqWTafJzTWTKZmQuZ/k1MpAi2+eys6mpWfVaAPzcILu8EVKoCAaYFtPxrAXo8qyNwzZc7gSgzgN9Hx0Ecn3j8xr4lyHOhNrlpaJIgptM5DjCdzrJ0Jmce6bWFkOpqs0MErA4gXIBuAmY53gFmOPCcdaTXCbq+n16PPLXjewMfGcgEttECeouTpk5MplhyKsPBTiXNYyULtwIW7Cx1vlwuJyDLR9L0mQiVPb27fhA54yBbGttMpc1OWwF1cmKaH2FSF7vAjGezOZZJZ9j0dIZlMhnuRiToMO0c+N4X7oksasgEt9XS2KZCHzoem2Ixq5zpAuDTqTR14FMslZyepeEI4Ogj26n0vLj33uiigExgMWRpt+CGCsEePZqoePM738BPTaJzT7CpU0nu1yXpAXCC3VeRkCW4bfJYFZo6dmJyQTW2tvZc1nb719iyZWc5fmZ6Osu6H3uVzit52oBnMll2YizGxk8muFZLAshb/YKtzQdcaO3Y2CQ7eiy+YNGvLN+4+nJetm3bxhKJxJz316xZw1pbW9kLew+w1944XBEaPj6eYCeOx1gqNe07bK1MwIDbKcOFOR49GuePT5fcfOMX2drPXcQ0zf7y2tvbWVdXF/v1k2+yQ4dPVpQ5P0Um/NjoCX6UBMFZR6k+u7qMYVBYDIEqBW7eXAfPZX19zp2/oaGBHysNMGTFinPZik9fWggbI5Omb13zUDeB3lLsdwaK/YPeyAFU0i8Aw9/2Dwyx4SPjFQEYUlf3MTYw4Jx7CIVCbHR0oqIDNMD+FMG+ZE0dO/tsHlvAWnYS6H4qjfMC+Zld/wg92/tuv2WeeYT87j+H2aFDxysGLuSy+o/z49DQkONnmpqa2MjRyoYsZOXKGnb5Z+vZqlUrxUsAvI9At/oK+elnBpoNw+Dai9TekSMxDrgSh0KrSYshTprc2NhoRf1JtlikqirAVl98AddsSavDBDrsC+QdT7/TSoB344tzOZ39+70RbporVerqasyw1MEnC8iV6I9VTDi0uqbmfPFSq2W+gyUHXuEdb3WR5rab5jnD3i/BNMN8ChNaqsTiKa55KmBWX+Tuj0XQdQVF307nhTH0CPls+O0UPbaT5TQG/8qX68u6LpV67LQ6dNknaYgaYyPDx2TzvYGCsnhRkH8b/rsF2GDj1MCInkvxvRjOuCUlipWD/zrKx7ZOwBF0vfSSM2ShyaqAAOC1Nw+zt9/5YNbrN1zfwIdpfgnqebv/A6pnWAn4qlW1HPgHQ6OeoG3N9RO/+StMdDtmV2LxJPfBpQCGfwTgrVu38jFrKaW2tpZt2LCBdXR0sEgkwhv21u9cxQsyW3ZB1+DgoOM54btU6tu8eTPr6elhy5fr7IZNDey+e76e9/fCLcAllHpdKKinpaUlX8+111xB9VzNrYxqUAY/XVVVJYMOekLu2fFGM8VWYQRYiYkU9bD4vPlHFYnH4/zvkb1CgwACHgMoUpdyw3sFXcXUh4YHaNSHDqaxdL5jwVTXBpeXVY9oF3RcUQ+O09NT7Cayfld+4RJlP42gTIq8w66Qf/X4a6FTSSMMDcaE/NhYecMM+MdyG90OAhodWoAGkTUaSZByO5WdiA4GqwStrrM6k5vFKEXQserr63l7oR5V0NBojKctaSZtbneErOtGmFxwkGewjk0UzpCUlJSIRqMcjN8CkHLDqyRByq0PEGBBhDmdj7rQVujAaLfrrlk7xyW5gUaxpEtOmOQDr0e799NYmDVBi0+OT7FcbsaXxEQk8qprEBQMBm0vVKUBRcNjskFE8W71lSt79uzhda1d6w4ZGTUUp3NWAQ3TvW/fPvbVq+rZH/ceULOcF1/I06CY3QJohCCzNJnYdgEwwvpUKuNbUsLNpO3evZtfSGHp7+/nS2pw3LLFPVWLoA5yHQUtXvXFYjH+vU4F5yOibzsRUL38MTqC3XWh8GCWziMcDjt2BNEZUIfoUOpJkwvziT3S5ua8Jj/4yD5E0yERbPkhKv4RF4mhkN1wCMHN2rWfYZ2dnWz9+vXchNkJzBoaQ8Bxqg91wWo41YdO2dzczD+3bt06Rw0rBG4nOF8oi9M0Jsw9OgLqQ124BifLgeuHyVbN0NXUrODBmDWxgRR0pNrUYqMNgDOZGZbNzvgCuc4j0kX+GPJ2//CcMagQmKkbrm/knwVEp++SIXulM1+nhj9AY207QRDnpsnye24WA59DkuPlV/5j+z5eB2hE0W1tbTyQdNJmDpksRzFp2E9csFJAboRvDvz8gZdJgw2ek55KZphfAv+Inu8UdKnmkEUHQK93EjEZ4Rbkifq8JiactEpYAy9Nli2Gm6CjIZPn1qlKFWizleOG3BIwdKNZ+KRMxr9VHKvr1NKLXo2BhlAVFRPq1qlWW6MBr3NWyY2rTGXO5ySJlN9uDuiGsV7XTVPtl8CHYGizf/9+V5Om0hAwVV4ahuU8qia03HP26kyqFkMOTudDzjs/P/QKBUiBYa5ZNucfZJUkCG/0IhpCxYyqBF3lnLOII8q1GKqdStQ3rTh5MStwXX5O/nE1metGQzPHUH6JatA1OppQ8u1eUbpX44tO4GY5vM5Z9sduFgOfG1GwUOK6VFzaSAmrWCSfzGCuuT/O+bi6QwRdTtqXN2keJ4/ejgkJ5HedRARkbkGe6ARulgMWQ+Wc3cDAWohhoZdcue7ifJ7crfP6Me8dELd0Mv8U2begC2k9SHd3t+NnNm7cqKwRbiYUkykqvlZlmOYVLIq5bHRep46JzotOc9BhuFc0ZHGLph+CJIaXr1FZSIfxsdBiN1+LpALEK2By61Aqs0rwtV7DNBU3BMCYixYTLU6C8bM5hBwum0k1mesBpmPtlj+qXFenFsAgCVLon9DYeIxUnmh05HCdBIkCVRP6ussiepVZJZXIutCHwt2I0YGY2Kiz3AIyeG5aLNooVULQBbHy1/nAK2oEtEanheil+GO3aFg0FnwSilNC4q6OrXzywc0XCy1WMaFu/tgrCBLRuWpHuP+n1zqmRXFN0GAnwKgHeW1E1C/86UDJHFKptATZMPZTafbLXHtN3OPixKRC4ev4GwB2Gy6JxhQNEYul+KoKp79RMaGqKzy9ovzt27c7pidVZtYAGJMYOP7u6bdK1mLI1GQ+/ogSZBahwKuLO2jSZt0odw65xrUhAMNrZskLsGiIXz72F3bTjV+ixvtbWcMQr3NWCbog5VyXAIy63PLrqpJITIqHkcD9P7suSiYbG53wvTLKDbr8WBbjZqIF4F3PD3ItRn1eQd5CBF3lCM5RAIYfVp0/dgZ8SvbJ2/l8MmlvNw+8qJTjm+drWQwaAXO9KMuWncc1GBMXKkGeV/pU5ZxFIsTvzovOCu3HvDnOE7NTu3rLr+PE8fy6+IEX9947YM4n/+LbPT/88R8QqoYAuVSDrZLFKcYso2AcLBIeGDPu6h3M+yqvIE/4Y6w4LdUfi+jcr86L75KvC9+PcbVfd1hCi6U7Innwk1/+Q5rcoetsdyBg3s9aCmivBsNFifGfG9zCJUFiztmpEXAbqhMgr6SLWBPu9R1enRfm1ktrC6cVYWH+/Mqg43x6sYK1edaCex7vkRZHZkF+6P6NkXvvi/TpLNBUaqTtdcsoLtIrVTcem2EHDh7m2uq0ikMINBvafOmazzt+BkGMW9CF70DndPsOaJqb38Y1oXjdCYHOiqwbPofrKid6thMAlnxxPtMy6w4K0ubNhq73U5wd5PtVleCTd+50D2CEafLloqixyv0ufMcOGq64CVaMYN2119gfAdPpuscKOxWgCMDwxfm0pvzBhx9siRLoFt3ca7Ikf+x2yygaYzHdTSi7IT9y8fMJ2Lpdhg+ZCPA2+f05d1A88mBLHzQaoA1dL6ohVLJGi+1uQj8XQMyHIMgaGT6eDxuozMkD294LRaB7CPI27DLHQSskSFRvGa30O/zndF4fF0DMhwa//9//iZ2DcILqN7xBHn1oUweNn7eJ3WO9QHvdMlrMsphKEj8XQPgpuHVVMtGOgF0hC9CGTqbb2kHOzXx73aKiuiymEv2x22ICMYYeWSALBQ7RQ0fkoZIr4DnRtS3ohzf1dNzTG9d0PcwMLahZO8UyKTMm38wteratSVtkplq4oWj0PcfrEinPhYg14H+hvdIwCVs1bvb6O+UBMYFGl90d0LRGLRDgoHEUwYnXDniQStocTVUwfPLaKQGA/RoWOmkvtnsaG8unK+PWMKlH5e+Lznp03N27RdO0TkxmYNZKszYBlyfI3RpjsQkmMOo8ls4Wsx1EKcEVAEvayyNoeRzsO2RI+93PNRLesGYtNpBhL4l/prlgZz5ob0mbtZVFhWC301d0EuQgAHPgS7D9hssTHKyMbRfLptF213NBDRuoaqxNA2yh2VUBDnxJ1M1yRW6gOgt2x64gqXK7ht1yOWyW1+wl7bYXvhUygQXgit4KuVDuBGzSbA2bmmtayNzpRgJOGu7XosHFChZzvrGTiUKt5UMiVsmbmtsCb3+2lZmwm3hFNsA/CiYdKyfhYx3Aws8urp8nsJM72naGCG8zYwZMecjk/WHVVRbsMwU6tBVQsWJS2sNDlrgVTO0RE/vzKQtuN2+/85k5PxlUaL75D3BZwKss+JUqSFRAO/F7Eqlkmj+2gbrgYE8rZFluu+P3pOGsyWCG/Y9/GR8exC+vYfc5flxgzRdDGsDEz/8AJsxwQcBUKPCtmKOMFJO8OKMgF8r3b3sKkAm69TN+2OZCAm5ID/g9XPypwX29ufWgudq0urrKes/8nPkxgy1bdg6z/or/SFc2mzV/xs+6HwySTmdYJp2dpaWKEregYrVfn9/B0xkD2U6+e+sOaHqImTfLrycUOIZM1hJwC3oemPXbi/y5PnsrJ136bUa8pxu69BklmANWwDRkgR1wmwVaglyi3Nz6JLQ+ZG5NxQsgNdAhmIfJN7wxgoWg9fxzPQ+c/g9YAIXgeUKCyipJO4uR/wswAOIwB/5IgxvbAAAAAElFTkSuQmCC\0" ;
pub const PHP_EGG_LOGO_DATA_URI : & 'static [u8 ; 5727usize] = b"data:image/gif;base64,R0lGODlheQBAAOZ/AB0BAHB0r0xPkMmMdtjXu9CYh2sxAquv1pJsTmUCAKyQaaVnA6lwVYOGvJM1ANvbwYlPMJubzVYCAGgRAJhqLm9BCq99aLetkqpMAKJCAJdvYqtzHZZWAnNsmIUjAHdKNW8bALqST3ABAJpjEVYnA08xU5JLBG1FU8fKtIhcS4d0kYJFBLiQgkABAIQwAd3h0eDm2sXCpdXYxIiKwG05M7CtuH4UAVNGdNPWwJ5dAcB+ZOjv6NrdxqRMAN7ZuH1qeXZYYszQunp9toxRBJ2dz5yHaa6ANoVYHrWgebK54M28jdfbxpGTxpWWyY8tAJqFl6hHANzUr5J+UqOm0Z47AI9eG9LKolo1IEASAkNIjJSczVkUAYyPw1NNTqSdrYNgZ3hMGK9XAa5KAJNKGaGdv3k6BVgZE6BTGmVopNrezIJhNGgeFpJCKFogM9DTvpiQrm1afpiYxZxQClZZmKJSBaNGAWsnItLQscC8p7NaEI47BpdhQGwVFy0bH18LAJmZzCH5BAEAAH8ALAAAAAB5AEAAAAf/gH+Cg4SFhoeIiYIRRERTj48HkgeQU40Rf3FNm5yLEZ+YhnFeTYqmp6ipioyOU5OSSbGys0mTkERaTUxcM729XExMpaCYTTU+NaWqy8yoo3Gtk7SxlGRvT08qPz9f3UBAX0A/KuQNXOfnMw0NQu3t5n+YNQ9RXs33+IOfeFE1B7MHyGTjdoLGGjN+JChcyLChHz981tixQ+MEEDhwOgRoFyAAmo1C3rh5gEdZvpOnHB2Y56ZGkilvfpyws6WFzRYMH+rcOaGnz58+/UwQ2lPiiYxokqLpgIKHlSeXUEolpPLfgRgv8KQw6CdBAoU3cUp4OHanWbNA06aleOIGGjw8/x4gQSOkCZFQU+9FcPWv1hsvBF4g6fpwKNiwDRMvPMu4sdk1F+IqgZNFABoujPDmTemK2pOZWyKnKVK4Z8KwYhXnHLvYsWudSNLQ+5KltoA5Qv7c3axIZSwyKuwstBMkLgKipv2gVpjw9Vm1yNWajv3gAYUtbW7UzoLbLm9DRGAleUIjYQKyCNLwwKEG6OmbzBlLTwtiPlAQ+CdQ5xGiPog1JWwngBCMfKdbZweoUF5ZO8XGwx0QIEcWYqVF9xMILtyHX349bejhh/ghERcPSHjgIYDacdfAJ5t1Np5w551lRwxpLGEFGNG9J5aFaq2wAYge+gQkkBfI9oASZXw4VP+AtaHhHUrhxfIGDa2ZJcEHbvBgI44/6cicWkFWYcSQHE5ApodlxLBEdVasoGRXZjA54G74IPiFYlYisISWN+YoAXxjgbnhBBT0ZyaQQx16JghgBFHdA3dU8eZXEmTX5JPMdPbEGsw15NWnEmjAQ1wQJpCcjjgVxhNQRoRggIb1NafokBMggMMDa95BwZtfgsDkHDMQscxektzZqQSfeoWsskUYecceySrbAgA2MRhtshO0WoYEIng1galDyXpmTwrI8AAPBBBAQYemLXRoAm3Y1oCwqBBLBg2pqdYQC6M+QAAD0f5J4bXRghBCCCssS3CgIPbUrVcX4IruvwG7G6v/QiUIkIUQ9JriSBxt5JvQQoAudMGe/iqQ2HJdUaqYAQeboNBXyi503qz1PfzVGjFInC4CoDaUn8tMzmvKXm/wIYIIEzDdU9AuM3dyXAQM1tByyJJc7UJlGLEBByNrXa1QSlJqEwIEnLsEAVEgIHa1Zo58U8Ybd3wIEW+wYYMHfPftgQ2ABy444HigTIASeizddIw6PV1z1BKUscACOYBwNXxEefjVTWZckLaWBDx7GLXUtlDf6DYFKAAXdg8ShxZxsOGEA7TX7sTtuOeOux6F93uHER444ffwfA8uOAhl5LBB5QnYIILzDzO9oYlDK5uCGwTsuQQOpb5NFKo2aTdH/xOa/bGJFinMXvv66jvQvu28S+wvEnrYjrv77Ot++wqFhrCBCSAI3u36pjsXuGCAfkNC2s4lAxzEYAzG6xDfQGCDpz0kAXzQDhpaxwQtaOB96wuhCGmnh5OtyV9WoID6bjfCEbqgAmBQgxQUoIYKkAALIGwh+xhwh8+thwB4GIP+cHdA3fmNBrUxmiCCMYO/8c2AUDQg3+7nAD1Y8YoXkIHhohAC/OVOh7SjggGwcAUjrIAEN7yhC6gARhGeQQnpekCNcIAD+rURjOIjn/m4oIUTLG1pftjCFu4zqydKEQky0GJ1CJDCvf3NkQSkogNWYAADgEEKBiiDCVZgAgNgqP+NbGSjHhT4uTm6QQE5vGPtylAbjkVgFypQWAKmBYDSoQZrCtFAIlHmgygowQM6+9QfB5dJTnLABENYAAdykIMVlMGTASTeFIXnBAX0sDppSIMM3BAECghQdyS84gipQIUTZGGDfwDGCa5Wy1rS0p3tbOdNUoADLcall1ycwJ/2abMELC0BWzCACUzAzMkpcwQcoMMxDbCFlkXrYR6wQA8/94LtuSEGegPch55oABd0NIDRdEEVkbi6JsyAC21gpzzjyVKWXgEFu6wOPkNwy5IF1Jg5MKgyc8CBZXLgjDWpaQs+cIEoxPEBL3hBA4OABH1m7ZZYiKpUWyBVQYKABNr/CQAvhOBQf4pAJ6wRGE5ustIWZNGe94xCFJCAr5pKIKBlOMIQlpnTyXFgBENg5k9dQIKatNMMNEAAEqxg1AWmAQZL2GYQ9gCod7b0se0MEBp6oQLBCXB4FOxJBSvYpYQgwA27vCc+rRCCD5hBrG8lQRlWMIS5Us6gd6XrT58pyCsUAQlKIGwvCeCD6vAABtrEgRsusIZbQva4tezDbRowgy+Q87nQfa77vjhCJ4whBvVcAsoe4IPu9tIKSkACEsZw1UyWYa50hS1e9brJZ5YBCdxVa3cXeC4YKFW4QUBATZF7XOUKYB3OzYCAB0xgAUe3wASmAhLckN1+ydS7vVXC/wIqUIFiznUIIzBCMimHUMod05mrDQF3e/soXB0Wsfi9QBlq9jaBwROyfagMgKmA4BrbuMBUoAAKGIzWuDy4u0agwAoqvNqecqAKajDA5HiazGNucgWsNcKtSoyrF+xgB4nFQRBQsAf9+S2a1PMQ4CZQwYfE678NCPCN12zjBdezxz5GqhKMgAAwEBkMHEjmCI4wgg0sYAQddjKUh3CEDVghLtrdEwyuHFxu0i/BNM5AdKVbO3LSDnckXccPqFCHTnu6DgMGNZsLfIYY8BjOcYEBEqRAATBU0gAryPMCNkBrP+N1BMoc6KCrQIEi7SkNL1g0lhvIzQuMIdI2FnUGQP/d6Rt/gDszEEIH9NCDalv72tX+tLa3DWoG7PjN2h0VD9QjBSkcwYYGqEAVWjvrWucA0Lh28mqHUIUqKGAJSRU2YokdBDzswQFrbnaoPW1jc86BCe2ggR4GynCGy8EEcpADtieO7TooIAinTvQSYBCDctuQBOmWKwfaTWtAVyGnFAYxvdWAABRc+cr7xq+/HaDsAn9awNyucVb/IIQGlEBRJuooFMtQBhdcUQ9QbnjDHy4HJGCcx4lWtRTUcIU+AMCS6+ZArUsO6MlVGOQkgKEMLwDzRgeh3/+GArc9rfZtt13tOK8DFNhQmxlEINpw8OofFee0n1Rwo5W8KsgreXH/jGd3CaMpQpLRmO5193kDXtvACCjA668N4eNhl2ERkppI/AbhAhAAOIHrQPHSX5vtUDD4JxAuhDbofe+wj33sN1c6P7TcDbiXQRpQUO4roLECZahAax9vBK8hNAdVQOgQKPn7GEoBBdrk5pYVYIdDmcgDRh9oxOVAh+7TYfveD3/45aAdjgmiHR1owetlz/7Zw6cFKbjA2d2QBjyUGwxXgOERKECBIVCA1sW3AYVCAUbQZ3jlTBQGBmBAVGlwdp+HAEFFISBQSURXBkd3gWNgAhmYgQxnTgLABJjwSu1QAgDALe13grH3fmZQBDEQBDJwAWpQQxUGQzBUBZLHa17D/2uUdwRHAAaU9GowpIB4cFFFYAaP9X5YECiD8zyD4zc2YAcaY36L0AAdYXUmmCwoyH4lcyVFgAJFgEaMl3IrMAL1FgL8t3WS11o/CIZYgEZqUAQf4Fjy9H7IkoWyJz6agQntgAbU4k8EQzB/tH4SQC0MgRMfAAFt2IbpBgaERnlqQEMh0CqRRwE5sHzPBIYkcAWl8ydHmC92KHt0wzqFEAFN0A5zgBN/mIrC9EeDaEtjFTljBHL6t39HQGeCFV5IEIn8VwVQdolYAAZGYAC21IoshRjr94nxkgVKNIpcsBFwsCzBpIoPNUvFeBMhcASKGENqoIBgcARqQAEIgAD8h/8AVcCDdvZ1NwQGFIAF7mQTR0g66vdPWPh6WNgGGhMArUMIEdCMQgAHLuCExrNZ7ceJLTVUaOR7QdiNPMhy4RiOu1iOllhJNxRVAIAFQdWJ7uRVgBiNCcAkAcAiiXB3G6ECxyZpk8ZG04VAxIMfVlUfE7AFUZV5e7AHDMAAFnCTLJCTOWkBNbkHEPCTdiaR7EhVQ+mO03JLsiSNXkE3aACSq9CMGwEBUDCVVAkFGHCVVZmVU3lzBQYCZJQCNqkDOjAAZEmWBXCWaHmWAyCWOsCTDIAAKQAGE7kYp0IWwqSUXuEHKYKP5ROSCNcRKQAFYmCVV1mYhjmVhpmYislXYGn/AWwplmWZlgVQlo8pljX5llcQVSAgSbkDkIHzPLJnKXPCDKQoBCMplYqZmqqpmCZwBY3pmGUZmWpplmSpAwzAlpe5B5qIBVQgBoO5lYSZlaJ2kuSkB+YEbflYLxFAhR3xBWcgBqsZnalpAGAZjrc5AJKZnWt5mbfJkzO5m78JnNKplWJQBx+QIk6SnKpQmh0RACmAAdApnfK5AofIcimQAjSJnZJpmxqwBw2JADTplhBgdSQQnlQpn4Q5mBCQIv9FJyeBCdHWER2QAnIQn/KZmnnwAR9wnxrQoRoKlpFpARqQAh9AAynQoXAJljWpiR/AABmglYIZnb6JAQtqGwGA/ylTgQnMCZjPaaEXepUZ+gEacJMpEA5AwKFrWQA8eZ9F2qE3qQE2iYgAcJts8KJZuZq+CQU12iRM4KC8QYo7GgA/sAcx+qMYEAZlkAIsYAE0IA5X0AVF0KFoKaL3+QNv2gU0wAAswAA0AAEf0Ad7oANsQAVZ6aNX6ZtiMAZtYRuX4aUG8glNEKYTegY9YKiqGQYGIKQIoKFf0AU/0KEpYAGTeZ/hqAKe+gUfgAAaYKIWgIhUSqhVGZ+IigFjsKWV0ah9aSCekE6m2Z4d8AUQQAfwGZ1jQKIMsAcc2qEasKEDwABCKqKqOqIpgACOaZt+OpmDGp6I6puKmiK10R2Oqv+rh7B67NCeAfCrM3kGYbCu7LquNokANnmT8moBV8AAa+ma88qTN1kAlgkBGjCZepAB21oHtbqo2zEHaLAi4SquIUmuHfERH9EB3CCOW2cEPXmbY0mWzmqvOnCiZKmTFoAAYymWezAGgcoAhFoHbPABBnuwAWB3jcCw+MAiTBChSqEUErsNnzqvbbmWPmmZNJmxssmvx/oB4AAEbeGt30oXDaAb6imzpEmz5XqzVNsBHUAOKoAN3XCZRWoB2PC124ARAqAx2yEglvGydhEVUPsdoPAHuxChHoEGczC3dFu3c3sbY0u2Zbu3t/ERQnBSaeuUayuzoLAbTcALU6sUdnsSt2Nrt0mxETPABE57Cbmqq4EAADs=\0" ;
pub const ZEND_LOGO_DATA_URI : & 'static [u8 ; 6083usize] = b"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPoAAAAvCAYAAADKH9ehAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAEWJJREFUeNrsXQl0VNUZvjNJSAgEAxHCGsNitSBFxB1l0boUW1pp3VAUrKLWKgUPUlEB13K0Yq1alaXWuh5EadWK1F0s1gJaoaCgQDRKBBJDVhKSzPR+zPfg5vLevCUzmZnwvnP+k8ybN3fevfff73/vBAJTHxc+khL5kr6T1ODk5nAgTRTWloghFVtEg/zfh2PkSvq9pJGSKiX9SdKittbJoD/PSYkrJD0vKeB4IsNNotfuUtHk/CM+IvijpF9KGiDpGEkLJZ3lC7qPeKKTpD9IWiDpUOfWPCi61ZeLvD2VIhTwp9QlTjK5NsIXdB/xxHmSpvD/OucWPSAyQw2+LfeG1SbXVra1Tqb785xUaNdMel0g7Iu5V1zPv6dJqpD0kKR/+ILuI55o8oeg1bFT0kWSOkraQxK+oPvw0TZR3ZY758foyQXf//ZxUFh0Q/GEfNf9gHkaJ6m7pHJJSyTt9tnXhxtBR2EGlnHCMbZMaHuHzX19JZ0u6VRJh0k6hM+BpMjnklZIelPSNhff3V5StkNlEWBMFm+3LcC+BW3GuZP2GvfmiEiCCMUzxZIKRGSt9zeML/fdGAW9JB3O8c6SlMZ+b5f0qaQiF7EpnieXY1auvZfG7zhSUk8RSS428F7M5xfsh1eAV/vxOzoq16sklZBqbdpo5H2qDPRQXoP3Ki0+20FSFyrZUgt+Rt/7KH2vZb8/t/iMG2Sy/0dI6sbvgHGoV8a3xErQb5Q0iTfHCplkzlkW7w+VNF3ST7QJUzFK0pVkDFiw+yV95uC7r5Z0k3CW2ApwIkrJ9B9IelfSh2SIlqC/pDFUZAVk0rQoMhk2GYswx+AtWvMKPtcyEckW37pPwsIHNAuBniDpYhEpBMmJwvibJL0gIlVh39r0C8UlczkXQ/mM6OtEzuf3RfPVAxUY47f5PStcGKPxpOMldbbxiBptPMavJX1PuQ/P/olyz12S7rD4PLyqBTQ8gyXVSOot6VK+dxR53wyl7POjkv7pkpcwpleJSCHP4eQjM0BB/ZuG4Hl9EO8mQx4ZQ0FfL+k+k+t4wNlULpkO24IGnSzpQklzKPDRAMvZ1eXz9uXfH/Pvx5Ie44C5zYQXUgDPj6LEnMCQ3AFkjjupjGF9/kJmxPw1oiquz+6dalXcCRSmYxwK0kDSRI71azb3Y+6GiMi6P/5ey3F3YpExjxdQoG61uX8gBetkh2OWFkUIVGUT1pS9yosZNu1nkl8uZH+mikhxkx1wz7mkB0WkXsKJFw1ZuSWKotY9wjNJS6mUy41JK5P0c2qCnBgIeQWZvEK7Dnf6WUljTT5TS7d0KwezkJShdWIeGeuKKJo7FktUQylcl0i6RtL/HH4OjP+wB0UTLTGHfubRDWyi1g7SaoZQ495z9w7RpaHKqHEfLeklEyWzk+7dl3TTu1KQCpV7+pBB4IWstFFAgvOpJnTL6DoW0xPbw3k/nIYkW+kbmHeXhUEABklazrBDBdzTDfyuBo5DPq1eoUk7ZbSk70l6n3MZjUdCDpQvMF/rezn7/hX7Xs8wsj/7rsrWdQxnZtrwwENUosJkDDZxTjOUkEH1ds6lzJyDZzGScRsonGNcMCIG+WgRKTRQ8Su2p7uRi/mlKjZKekREChS2KIOcTvfqp3RZDlM+cxnfv8Thc75Pt8kqo92VzNTbxBqcQlceivAdByHDIxbvFTMOLovyHAGGK3qc/jJDoDc4hpjABzBm4UAglBFqEAOqt8mB29ss4uJnNCHfSK/tVZMYEfMykt7Bcco1eDLDHCT8gmzzRdLHZL6wRSgzg6GIgVl8Xj2uhPA+oQn53yTdK2mVMC8NzuJ8zaSyM/ApxyzWCFJRvUQ3eQ29BTNFcRgt+FTl2g30zDZZtD/ZRMifE5ES6Y9MxqAHQ7XZikI9nd97j5p1f83GZTPr6Crt2sOcOB1zTYT8HrqjVRZx4wbSAt47SXn/YsZV9zp4zuvJgNGQRaszmoN1rBY6IH4dHiVHcA5dZd2zeIbPv8ZBkghYTQFTx/h1WvSz6c3kM5ewGG8Prvxc5DZWS2u+dypnM5Y3sIJMXmbxfXW0misZN56oxITnWsyl2fg+6+C+zWTefMWr68RwaYF271htHBZqCsKqL28wB/ACjYShrE9nUjfWmEU33A7woqbR4k5UlNk4yoYOzOHvtGs30KO1QgnlZC2VohGOIGn7WEvW0ZdoMeCHfBgdo8X++m3V+s2wEHKzJMblJom92+ne2SHDwT1gknUispPpJLrrVZqwLxTmy5F5jOdVS72F/b6UwlbrcEytrD00+a8l/ZUM82jEZd8peu8uNYS8JxNWqis5IYqQCy1rPUULh8Y7fOYal3zzmPb6aJN7zlf+32bBV9ESclNE85WUX4j4oNbl/fM1b2eoxX3jyXNqiDTP4Xe8Rm9ItfSjvAr6DM0d+o5MXW/CuHO0a7eZTLYT3KF9LktYZ/WdCI+IkoV+lFZ6l3J9OF14HdM0F3MrhXxFjJmqhh5FBera24XqxaCqL0UosK97Z2ku+yJaEqf4D62ByoROcjZuN78Xaa9zTBSzKvxvC+vlrmgWVPU2h4j4FCO5lZ+vNBnpYHHfOOX/PfR83eApTaGM8CLop5l88WSLWAOu4AiNme5owcBO1xhlLGO/eGAFkyYqrtFe5zKzqU7KBE5o/BAIiv7VJSK7qV4GhEF1XtSk0YseWl6lWYI+cXj6pigJLkH3Vk0qfebxe4q0JGOGSDxCWn/Nchk9qJgMfGKS87LDes1IHeVW0LszgaC6sPMYE5lBt4CzRcuy4lVMLKlWfWwcJ+YpxtcGjtOYfzRjTgNIlv0rnpyCveeHNFSJ/jUlonH/3nNYqyOU28qYhHOLbzVPqFc81JQDKxnQ5twLdmjfmQzlxU6eoZ/mma3y8D3VonlhUr6bElhMwJ81RseSxW+jfOYULdYGAw5s4WBtpeU0ijKwxnp/HCfn70piCNlMFEUU8/WpmnZe1Bq80r96m5yMkIwx9nnNHTWFs114q0ArM1HsiUY7j5/rKFIThdrrzR7agHyoy9vd3Ag64uEfKa+xjIKlLqtTUBB7FWgJrQ9joFl1d2cQ2wzHaeDXa6/ztO9Wx+OT+FrzSAKuV12ptOZp+ljnaVawk8uxDpnMZXYCGB3PXqe5sl7QQ5ubhhQR9B4mQpvjIR+gJgrbOxV0rK/rVUyXmyRWdI2a2YLEhVP3BwmN9sJ9BtQpKkxiSDOrUeUhaeQaPevKzKQ3oIVTSGatcynoRl29sIkh440a8pURNoz00Ab4Ts1obxCps1FKl8k5IpKbcmsgu6nz6ETQC+iSqoKKOPmVJBmYnDjHX4EozB9s7TgwykkyYS13URAHpmstYIloOP/HEi6Wx5a4+DwSpH2V18tTyHUPm3iQeS1s09ai4/0ntVgNRQmzHTRulGwaQNnei3FgHqPcMBEJlXrNioAaE8AcupKBd7ElBu1uTxCzg+dmKB4TahiQNX/OxssAb00Uzdeci4S3FYhEQdfkWCrc1cI2K+2EDhsP1OUxZGUnOWTmcgphV0UgZ4jUR1hLlBiuJfqJpb61CXimOrq8RqiEeu6TU3iMwdzYgWhUnWHDDKr0ptLar6USqmOfYYiGMMTUN/KgziGVTo+pNJHBBfF0zVAQc6N2DUL+tcO2Yc1Rk2ss+yBmOko43yCSCljJXAWA7PD4eAt6MBy2yiNACRvVVN05t40pPLYPsT+zlRDpOLG/Jt8OSGKhmnBpivV7q/Y6JkucVgkyWKb52rVZwl0tvNDi+AzRvKjfK1Dnjvpd1FhPEc1LBVsbqENXN35cFaPY2BIVGdlWYZKqgPPj/RythNtpcNycpoOxwAae0bGwhAkAQg01cfiDWDRqZtHhCqFQ5FAtOXKXh/Yh6Ci2N5YMUDW2SHg/N3scn02N++cnMIZCBdwS9gtApRxqDc6OlzWtSrdc8cJGlzP5fzZDri1tQNixISWL/5fSQvcVzfe/wzXfSG8Kuw03pHB/t5KMik+EYJ1EC1d0zCw6fofqRI2ZJwpvyxN4uPs0q/6UR2szyESobxatf3aa7jvfrT0DGPNpYV3H3CI0BYLGllQdy7TX14rUP/zzDHpuRp0EPLnJvH68Qij/RXnyIyku5Ea+5S3NO7s01q77eMY1qqY8T7Qs+4qtq+o2UWhjZO6HuWhjJBlZXWbAHvbFSTAxqMW+RbuG3VfviAP36tshujINh6Tr3kE0BNMl5x8Qq6+mVTdwrMlzpRrGaGPzVpw9NDNFngjoFZZzRCS/FRPXHRZT31X2MgfYTQYX1WE1moaaQJfKEFTs/camkXnUwt9YtNWPiuc67VmRlb0yiRgS/cAe7is0QXuTAm9kikM2DNc5OkeGRaMU8tq0TJHbUCOtezMeRfITiSv1PLLbGE5gb/NOB/1AuR1KlLETDltidyR4XIPasyEnc6eIbRa9kfNifFeXJOAnVJBiKfFCvobcLKccLHWojHJpIPH3iXQlpoNLrdcH44sucvmQOHHjZ9rDrGdbixVmbk/XGy4mtiKuoQDjmQpFJLs6wuSZvqKmL0ky6zOZLry+420UKUaue5ooyeqy9+iopgM989cp1Dcp16bSU1tOJbyFyjedTID5wOk6OAUFFXUDKFRLkmBM3xH7fzIJwPLsxexDMWP2b8g38DqN45ywCuH0VNuv+XmjwOYCjtUakbg6AkGlNoQGBMB5A9g8hh2g7zFE2U4F35FxfHfmwwbxcz3Yl32C/oAwPwDAS6UXdpOhXPZ27Trc9R/SLTla0zzGoXl2QAexnLVZJB/CZMpV7HthfL4lJIrb54u+tdv3/rCiSbw+k88yM9ZxXgKwlHmZycq13iSr0KeMHmUZw6r1VICrLT4D5fy4wq/5DAvfjaWC9oAd9KxwTNUJynUjL+EqpwSTME1zOWMBuIxmZ7p9RCsNq+NmdxW09I1MdNkJeYZNHsIt0qKEO2Z4kvmHadS+Xqv2cqzc93rpuhdl54tg2DISuJljBW3uZjMHrAPqHOYK6zPIM23G2+14Rts4cyLbdxo3Y667UskOo/W/m/PwRhQBwZFkT2vXzDbTtLMZCyfP1155bbfDrpjKZoYH41bO+d97jmEgMPVxFMF0iHESIkiNtDhKuwV058cw0dBZNP+lFsSU/6VWf0E4P/x+IF2eJnokr4uW/2jAKPYjjRb7Cxef70c3qsCl0im1Gj/Uu2eF6sWo0rUiTQq7zS+pYjywnXYwcyOZfI4mKgHj9N2ttHqbRfSlQXhjw5XXy4S7ZbzOovkxVRsphHp8ia3HlyleZS1zHcvoVrdjuNFdEe7edGHzSbpSria/WZ3+cxYV5DCx/4w7FUfyfTW0WO+i7x2YrzKUXZFw/sut+OxJDGkHUxEZPwgCquQcIgxZR9oXekDQk8FF60bqwocupaIoEz6EmaC3C+0Ro6Wgp4eb2tpPJqN+4xXFXQ3TfUfCc5PDNnLZDpLIV1NADKyjZa87mHgmWX57bYdIfIY3pdCGf43xQUXI62kBn3fZxi4SPC8crIjDQ4yzFAaz/XcPJn7xf03VRzIB5Z7qCbBzPQi5jga2E9bCD+ELug8ficEZCk/Cmj8Ro3aLtLxDR1/QffhIHNRTUZCf+S5G7SJBp2b7G31B9+EjcVAFEInZQ2LU7jiN1zf4gu7DR+KwTvkfO9bGx6BNnEQ8XXmN5cT3fEH34SNxwN4A9dgknIEwyWNbeRTwV7WYHBVwFQfbwKb7vOUjiYAiKVT1PczXqCLD/n5UbuLcNxTKoCgExSFNmsFCHI6iJBQFnUbqqbWPHyFceDAOrC/oPpIN+FVaVLrNUa6dLPbvoEQdO4pd1OUylBVkCutsOkqosbNvwcE6qL6g+0hG3MY4ejots1pT3kE4P9QDdfuLKeDfHswD6gu6j2TF2yQcLoqEGurre9EdP1QTfmxJRdn0NlrvD+jmY69Egz+UQvxfgAEALJ4EcRDa/toAAAAASUVORK5CYII=\0" ;
pub const ZEND_EXTENSION_API_NO: u32 = 220131226;
pub const ZEND_EXTMSG_NEW_EXTENSION: u32 = 1;
pub type size_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 __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 __time_t = ::std::os::raw::c_long;
pub type __suseconds_t = ::std::os::raw::c_long;
pub type __blksize_t = ::std::os::raw::c_long;
pub type __blkcnt_t = ::std::os::raw::c_long;
pub type __syscall_slong_t = ::std::os::raw::c_long;
pub type __socklen_t = ::std::os::raw::c_uint;
pub type off_t = __off_t;
pub type ulong = ::std::os::raw::c_ulong;
pub type uint = ::std::os::raw::c_uint;
#[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)
        )
    );
}
#[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)
        )
    );
}
#[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_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(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)
        )
    );
}
pub type va_list = __builtin_va_list;
pub type FILE = _IO_FILE;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _IO_marker {
    _unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _IO_codecvt {
    _unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _IO_wide_data {
    _unused: [u8; 0],
}
pub type _IO_lock_t = ::std::os::raw::c_void;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _IO_FILE {
    pub _flags: ::std::os::raw::c_int,
    pub _IO_read_ptr: *mut ::std::os::raw::c_char,
    pub _IO_read_end: *mut ::std::os::raw::c_char,
    pub _IO_read_base: *mut ::std::os::raw::c_char,
    pub _IO_write_base: *mut ::std::os::raw::c_char,
    pub _IO_write_ptr: *mut ::std::os::raw::c_char,
    pub _IO_write_end: *mut ::std::os::raw::c_char,
    pub _IO_buf_base: *mut ::std::os::raw::c_char,
    pub _IO_buf_end: *mut ::std::os::raw::c_char,
    pub _IO_save_base: *mut ::std::os::raw::c_char,
    pub _IO_backup_base: *mut ::std::os::raw::c_char,
    pub _IO_save_end: *mut ::std::os::raw::c_char,
    pub _markers: *mut _IO_marker,
    pub _chain: *mut _IO_FILE,
    pub _fileno: ::std::os::raw::c_int,
    pub _flags2: ::std::os::raw::c_int,
    pub _old_offset: __off_t,
    pub _cur_column: ::std::os::raw::c_ushort,
    pub _vtable_offset: ::std::os::raw::c_schar,
    pub _shortbuf: [::std::os::raw::c_char; 1usize],
    pub _lock: *mut _IO_lock_t,
    pub _offset: __off64_t,
    pub _codecvt: *mut _IO_codecvt,
    pub _wide_data: *mut _IO_wide_data,
    pub _freeres_list: *mut _IO_FILE,
    pub _freeres_buf: *mut ::std::os::raw::c_void,
    pub __pad5: size_t,
    pub _mode: ::std::os::raw::c_int,
    pub _unused2: [::std::os::raw::c_char; 20usize],
}
#[test]
fn bindgen_test_layout__IO_FILE() {
    assert_eq!(
        ::std::mem::size_of::<_IO_FILE>(),
        216usize,
        concat!("Size of: ", stringify!(_IO_FILE))
    );
    assert_eq!(
        ::std::mem::align_of::<_IO_FILE>(),
        8usize,
        concat!("Alignment of ", stringify!(_IO_FILE))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._flags as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_flags)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_ptr as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_IO_read_ptr)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_end as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_IO_read_end)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_base as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_IO_read_base)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_base as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_IO_write_base)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_ptr as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_IO_write_ptr)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_end as *const _ as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_IO_write_end)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_buf_base as *const _ as usize },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_IO_buf_base)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_buf_end as *const _ as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_IO_buf_end)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_save_base as *const _ as usize },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_IO_save_base)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_backup_base as *const _ as usize },
        80usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_IO_backup_base)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_save_end as *const _ as usize },
        88usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_IO_save_end)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._markers as *const _ as usize },
        96usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_markers)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._chain as *const _ as usize },
        104usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_chain)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._fileno as *const _ as usize },
        112usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_fileno)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._flags2 as *const _ as usize },
        116usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_flags2)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._old_offset as *const _ as usize },
        120usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_old_offset)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._cur_column as *const _ as usize },
        128usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_cur_column)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._vtable_offset as *const _ as usize },
        130usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_vtable_offset)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._shortbuf as *const _ as usize },
        131usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_shortbuf)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._lock as *const _ as usize },
        136usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_lock)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._offset as *const _ as usize },
        144usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_offset)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._codecvt as *const _ as usize },
        152usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_codecvt)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._wide_data as *const _ as usize },
        160usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_wide_data)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._freeres_list as *const _ as usize },
        168usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_freeres_list)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._freeres_buf as *const _ as usize },
        176usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_freeres_buf)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>())).__pad5 as *const _ as usize },
        184usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(__pad5)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._mode as *const _ as usize },
        192usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_mode)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._unused2 as *const _ as usize },
        196usize,
        concat!(
            "Offset of field: ",
            stringify!(_IO_FILE),
            "::",
            stringify!(_unused2)
        )
    );
}
pub type __jmp_buf = [::std::os::raw::c_long; 8usize];
pub type ts_rsrc_id = ::std::os::raw::c_int;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_leak_info {
    pub addr: *mut ::std::os::raw::c_void,
    pub size: size_t,
    pub filename: *const ::std::os::raw::c_char,
    pub lineno: uint,
    pub orig_filename: *const ::std::os::raw::c_char,
    pub orig_lineno: uint,
}
#[test]
fn bindgen_test_layout__zend_leak_info() {
    assert_eq!(
        ::std::mem::size_of::<_zend_leak_info>(),
        48usize,
        concat!("Size of: ", stringify!(_zend_leak_info))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_leak_info>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_leak_info))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).addr as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_leak_info),
            "::",
            stringify!(addr)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).size as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_leak_info),
            "::",
            stringify!(size)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).filename as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_leak_info),
            "::",
            stringify!(filename)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).lineno as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_leak_info),
            "::",
            stringify!(lineno)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).orig_filename as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_leak_info),
            "::",
            stringify!(orig_filename)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).orig_lineno as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_leak_info),
            "::",
            stringify!(orig_lineno)
        )
    );
}
pub type zend_leak_info = _zend_leak_info;
extern "C" {
    pub fn zend_strndup(
        s: *const ::std::os::raw::c_char,
        length: ::std::os::raw::c_uint,
    ) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn _zend_mem_block_size(
        ptr: *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> size_t;
}
extern "C" {
    pub fn zend_set_memory_limit(memory_limit: size_t) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_memory_usage(
        real_usage: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> size_t;
}
extern "C" {
    pub fn zend_memory_peak_usage(
        real_usage: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> size_t;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_mm_heap {
    _unused: [u8; 0],
}
pub type zend_mm_heap = _zend_mm_heap;
extern "C" {
    pub fn zend_mm_startup() -> *mut zend_mm_heap;
}
extern "C" {
    pub fn zend_mm_shutdown(
        heap: *mut zend_mm_heap,
        full_shutdown: ::std::os::raw::c_int,
        silent: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn _zend_mm_alloc(heap: *mut zend_mm_heap, size: size_t) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn _zend_mm_free(heap: *mut zend_mm_heap, p: *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn _zend_mm_realloc(
        heap: *mut zend_mm_heap,
        p: *mut ::std::os::raw::c_void,
        size: size_t,
    ) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn _zend_mm_block_size(heap: *mut zend_mm_heap, p: *mut ::std::os::raw::c_void) -> size_t;
}
pub type zend_mm_storage = _zend_mm_storage;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_mm_segment {
    pub size: size_t,
    pub next_segment: *mut _zend_mm_segment,
}
#[test]
fn bindgen_test_layout__zend_mm_segment() {
    assert_eq!(
        ::std::mem::size_of::<_zend_mm_segment>(),
        16usize,
        concat!("Size of: ", stringify!(_zend_mm_segment))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_mm_segment>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_mm_segment))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_mm_segment>())).size as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_mm_segment),
            "::",
            stringify!(size)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_mm_segment>())).next_segment as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_mm_segment),
            "::",
            stringify!(next_segment)
        )
    );
}
pub type zend_mm_segment = _zend_mm_segment;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_mm_mem_handlers {
    pub name: *const ::std::os::raw::c_char,
    pub init: ::std::option::Option<
        unsafe extern "C" fn(params: *mut ::std::os::raw::c_void) -> *mut zend_mm_storage,
    >,
    pub dtor: ::std::option::Option<unsafe extern "C" fn(storage: *mut zend_mm_storage)>,
    pub compact: ::std::option::Option<unsafe extern "C" fn(storage: *mut zend_mm_storage)>,
    pub _alloc: ::std::option::Option<
        unsafe extern "C" fn(storage: *mut zend_mm_storage, size: size_t) -> *mut zend_mm_segment,
    >,
    pub _realloc: ::std::option::Option<
        unsafe extern "C" fn(
            storage: *mut zend_mm_storage,
            ptr: *mut zend_mm_segment,
            size: size_t,
        ) -> *mut zend_mm_segment,
    >,
    pub _free: ::std::option::Option<
        unsafe extern "C" fn(storage: *mut zend_mm_storage, ptr: *mut zend_mm_segment),
    >,
}
#[test]
fn bindgen_test_layout__zend_mm_mem_handlers() {
    assert_eq!(
        ::std::mem::size_of::<_zend_mm_mem_handlers>(),
        56usize,
        concat!("Size of: ", stringify!(_zend_mm_mem_handlers))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_mm_mem_handlers>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_mm_mem_handlers))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_mm_mem_handlers>())).name as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_mm_mem_handlers),
            "::",
            stringify!(name)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_mm_mem_handlers>())).init as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_mm_mem_handlers),
            "::",
            stringify!(init)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_mm_mem_handlers>())).dtor as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_mm_mem_handlers),
            "::",
            stringify!(dtor)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_mm_mem_handlers>())).compact as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_mm_mem_handlers),
            "::",
            stringify!(compact)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_mm_mem_handlers>()))._alloc as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_mm_mem_handlers),
            "::",
            stringify!(_alloc)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_mm_mem_handlers>()))._realloc as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_mm_mem_handlers),
            "::",
            stringify!(_realloc)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_mm_mem_handlers>()))._free as *const _ as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_mm_mem_handlers),
            "::",
            stringify!(_free)
        )
    );
}
pub type zend_mm_mem_handlers = _zend_mm_mem_handlers;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_mm_storage {
    pub handlers: *const zend_mm_mem_handlers,
    pub data: *mut ::std::os::raw::c_void,
}
#[test]
fn bindgen_test_layout__zend_mm_storage() {
    assert_eq!(
        ::std::mem::size_of::<_zend_mm_storage>(),
        16usize,
        concat!("Size of: ", stringify!(_zend_mm_storage))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_mm_storage>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_mm_storage))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_mm_storage>())).handlers as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_mm_storage),
            "::",
            stringify!(handlers)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_mm_storage>())).data as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_mm_storage),
            "::",
            stringify!(data)
        )
    );
}
extern "C" {
    pub fn zend_mm_startup_ex(
        handlers: *const zend_mm_mem_handlers,
        block_size: size_t,
        reserve_size: size_t,
        internal: ::std::os::raw::c_int,
        params: *mut ::std::os::raw::c_void,
    ) -> *mut zend_mm_heap;
}
extern "C" {
    pub fn zend_mm_set_heap(
        new_heap: *mut zend_mm_heap,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut zend_mm_heap;
}
extern "C" {
    pub fn zend_mm_get_storage(heap: *mut zend_mm_heap) -> *mut zend_mm_storage;
}
extern "C" {
    pub fn zend_mm_set_custom_handlers(
        heap: *mut zend_mm_heap,
        _malloc: ::std::option::Option<
            unsafe extern "C" fn(arg1: size_t) -> *mut ::std::os::raw::c_void,
        >,
        _free: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
        _realloc: ::std::option::Option<
            unsafe extern "C" fn(
                arg1: *mut ::std::os::raw::c_void,
                arg2: size_t,
            ) -> *mut ::std::os::raw::c_void,
        >,
    );
}
pub type zend_bool = ::std::os::raw::c_uchar;
pub type zend_uchar = ::std::os::raw::c_uchar;
pub type zend_uint = ::std::os::raw::c_uint;
pub type zend_ulong = ::std::os::raw::c_ulong;
pub type zend_ushort = ::std::os::raw::c_ushort;
pub type zend_long64 = ::std::os::raw::c_longlong;
pub type zend_ulong64 = ::std::os::raw::c_ulonglong;
pub type zend_intptr_t = ::std::os::raw::c_long;
pub type zend_uintptr_t = ::std::os::raw::c_ulong;
pub type zend_object_handle = ::std::os::raw::c_uint;
pub type zend_object_handlers = _zend_object_handlers;
pub type zval = _zval_struct;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_object_value {
    pub handle: zend_object_handle,
    pub handlers: *const zend_object_handlers,
}
#[test]
fn bindgen_test_layout__zend_object_value() {
    assert_eq!(
        ::std::mem::size_of::<_zend_object_value>(),
        16usize,
        concat!("Size of: ", stringify!(_zend_object_value))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_object_value>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_object_value))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_object_value>())).handle as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_value),
            "::",
            stringify!(handle)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_object_value>())).handlers as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_value),
            "::",
            stringify!(handlers)
        )
    );
}
pub type zend_object_value = _zend_object_value;
extern "C" {
    pub static mut zend_new_interned_string: ::std::option::Option<
        unsafe extern "C" fn(
            str_: *const ::std::os::raw::c_char,
            len: ::std::os::raw::c_int,
            free_src: ::std::os::raw::c_int,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> *const ::std::os::raw::c_char,
    >;
}
extern "C" {
    pub static mut zend_interned_strings_snapshot:
        ::std::option::Option<unsafe extern "C" fn(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void)>;
}
extern "C" {
    pub static mut zend_interned_strings_restore:
        ::std::option::Option<unsafe extern "C" fn(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void)>;
}
extern "C" {
    pub fn zend_interned_strings_init(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_interned_strings_dtor(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
pub const ZEND_RESULT_CODE_SUCCESS: ZEND_RESULT_CODE = 0;
pub const ZEND_RESULT_CODE_FAILURE: ZEND_RESULT_CODE = -1;
pub type ZEND_RESULT_CODE = ::std::os::raw::c_int;
pub type compare_func_t = ::std::option::Option<
    unsafe extern "C" fn(
        arg1: *const ::std::os::raw::c_void,
        arg2: *const ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int,
>;
pub type sort_func_t = ::std::option::Option<
    unsafe extern "C" fn(
        arg1: *mut ::std::os::raw::c_void,
        arg2: size_t,
        arg3: size_t,
        arg4: compare_func_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ),
>;
pub type dtor_func_t =
    ::std::option::Option<unsafe extern "C" fn(pDest: *mut ::std::os::raw::c_void)>;
pub type copy_ctor_func_t =
    ::std::option::Option<unsafe extern "C" fn(pElement: *mut ::std::os::raw::c_void)>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct bucket {
    pub h: ulong,
    pub nKeyLength: uint,
    pub pData: *mut ::std::os::raw::c_void,
    pub pDataPtr: *mut ::std::os::raw::c_void,
    pub pListNext: *mut bucket,
    pub pListLast: *mut bucket,
    pub pNext: *mut bucket,
    pub pLast: *mut bucket,
    pub arKey: *const ::std::os::raw::c_char,
}
#[test]
fn bindgen_test_layout_bucket() {
    assert_eq!(
        ::std::mem::size_of::<bucket>(),
        72usize,
        concat!("Size of: ", stringify!(bucket))
    );
    assert_eq!(
        ::std::mem::align_of::<bucket>(),
        8usize,
        concat!("Alignment of ", stringify!(bucket))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<bucket>())).h as *const _ as usize },
        0usize,
        concat!("Offset of field: ", stringify!(bucket), "::", stringify!(h))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<bucket>())).nKeyLength as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(bucket),
            "::",
            stringify!(nKeyLength)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<bucket>())).pData as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(bucket),
            "::",
            stringify!(pData)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<bucket>())).pDataPtr as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(bucket),
            "::",
            stringify!(pDataPtr)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<bucket>())).pListNext as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(bucket),
            "::",
            stringify!(pListNext)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<bucket>())).pListLast as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(bucket),
            "::",
            stringify!(pListLast)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<bucket>())).pNext as *const _ as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(bucket),
            "::",
            stringify!(pNext)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<bucket>())).pLast as *const _ as usize },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(bucket),
            "::",
            stringify!(pLast)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<bucket>())).arKey as *const _ as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(bucket),
            "::",
            stringify!(arKey)
        )
    );
}
pub type Bucket = bucket;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _hashtable {
    pub nTableSize: uint,
    pub nTableMask: uint,
    pub nNumOfElements: uint,
    pub nNextFreeElement: ulong,
    pub pInternalPointer: *mut Bucket,
    pub pListHead: *mut Bucket,
    pub pListTail: *mut Bucket,
    pub arBuckets: *mut *mut Bucket,
    pub pDestructor: dtor_func_t,
    pub persistent: zend_bool,
    pub nApplyCount: ::std::os::raw::c_uchar,
    pub bApplyProtection: zend_bool,
}
#[test]
fn bindgen_test_layout__hashtable() {
    assert_eq!(
        ::std::mem::size_of::<_hashtable>(),
        72usize,
        concat!("Size of: ", stringify!(_hashtable))
    );
    assert_eq!(
        ::std::mem::align_of::<_hashtable>(),
        8usize,
        concat!("Alignment of ", stringify!(_hashtable))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_hashtable>())).nTableSize as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_hashtable),
            "::",
            stringify!(nTableSize)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_hashtable>())).nTableMask as *const _ as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_hashtable),
            "::",
            stringify!(nTableMask)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_hashtable>())).nNumOfElements as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_hashtable),
            "::",
            stringify!(nNumOfElements)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_hashtable>())).nNextFreeElement as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_hashtable),
            "::",
            stringify!(nNextFreeElement)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_hashtable>())).pInternalPointer as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_hashtable),
            "::",
            stringify!(pInternalPointer)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_hashtable>())).pListHead as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_hashtable),
            "::",
            stringify!(pListHead)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_hashtable>())).pListTail as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_hashtable),
            "::",
            stringify!(pListTail)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_hashtable>())).arBuckets as *const _ as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_hashtable),
            "::",
            stringify!(arBuckets)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_hashtable>())).pDestructor as *const _ as usize },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_hashtable),
            "::",
            stringify!(pDestructor)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_hashtable>())).persistent as *const _ as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_hashtable),
            "::",
            stringify!(persistent)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_hashtable>())).nApplyCount as *const _ as usize },
        65usize,
        concat!(
            "Offset of field: ",
            stringify!(_hashtable),
            "::",
            stringify!(nApplyCount)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_hashtable>())).bApplyProtection as *const _ as usize },
        66usize,
        concat!(
            "Offset of field: ",
            stringify!(_hashtable),
            "::",
            stringify!(bApplyProtection)
        )
    );
}
pub type HashTable = _hashtable;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_hash_key {
    pub arKey: *const ::std::os::raw::c_char,
    pub nKeyLength: uint,
    pub h: ulong,
}
#[test]
fn bindgen_test_layout__zend_hash_key() {
    assert_eq!(
        ::std::mem::size_of::<_zend_hash_key>(),
        24usize,
        concat!("Size of: ", stringify!(_zend_hash_key))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_hash_key>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_hash_key))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_hash_key>())).arKey as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_hash_key),
            "::",
            stringify!(arKey)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_hash_key>())).nKeyLength as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_hash_key),
            "::",
            stringify!(nKeyLength)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_hash_key>())).h as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_hash_key),
            "::",
            stringify!(h)
        )
    );
}
pub type zend_hash_key = _zend_hash_key;
pub type merge_checker_func_t = ::std::option::Option<
    unsafe extern "C" fn(
        target_ht: *mut HashTable,
        source_data: *mut ::std::os::raw::c_void,
        hash_key: *mut zend_hash_key,
        pParam: *mut ::std::os::raw::c_void,
    ) -> zend_bool,
>;
pub type HashPosition = *mut Bucket;
extern "C" {
    pub fn _zend_hash_init(
        ht: *mut HashTable,
        nSize: uint,
        pDestructor: dtor_func_t,
        persistent: zend_bool,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn _zend_hash_init_ex(
        ht: *mut HashTable,
        nSize: uint,
        pDestructor: dtor_func_t,
        persistent: zend_bool,
        bApplyProtection: zend_bool,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_hash_destroy(ht: *mut HashTable);
}
extern "C" {
    pub fn zend_hash_clean(ht: *mut HashTable);
}
extern "C" {
    pub fn _zend_hash_add_or_update(
        ht: *mut HashTable,
        arKey: *const ::std::os::raw::c_char,
        nKeyLength: uint,
        pData: *mut ::std::os::raw::c_void,
        nDataSize: uint,
        pDest: *mut *mut ::std::os::raw::c_void,
        flag: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn _zend_hash_quick_add_or_update(
        ht: *mut HashTable,
        arKey: *const ::std::os::raw::c_char,
        nKeyLength: uint,
        h: ulong,
        pData: *mut ::std::os::raw::c_void,
        nDataSize: uint,
        pDest: *mut *mut ::std::os::raw::c_void,
        flag: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn _zend_hash_index_update_or_next_insert(
        ht: *mut HashTable,
        h: ulong,
        pData: *mut ::std::os::raw::c_void,
        nDataSize: uint,
        pDest: *mut *mut ::std::os::raw::c_void,
        flag: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_hash_add_empty_element(
        ht: *mut HashTable,
        arKey: *const ::std::os::raw::c_char,
        nKeyLength: uint,
    ) -> ::std::os::raw::c_int;
}
pub type apply_func_t = ::std::option::Option<
    unsafe extern "C" fn(
        pDest: *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int,
>;
pub type apply_func_arg_t = ::std::option::Option<
    unsafe extern "C" fn(
        pDest: *mut ::std::os::raw::c_void,
        argument: *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int,
>;
pub type apply_func_args_t = ::std::option::Option<
    unsafe extern "C" fn(
        pDest: *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        num_args: ::std::os::raw::c_int,
        args: *mut __va_list_tag,
        hash_key: *mut zend_hash_key,
    ) -> ::std::os::raw::c_int,
>;
extern "C" {
    pub fn zend_hash_graceful_destroy(ht: *mut HashTable);
}
extern "C" {
    pub fn zend_hash_graceful_reverse_destroy(ht: *mut HashTable);
}
extern "C" {
    pub fn zend_hash_apply(
        ht: *mut HashTable,
        apply_func: apply_func_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_hash_apply_with_argument(
        ht: *mut HashTable,
        apply_func: apply_func_arg_t,
        arg1: *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_hash_apply_with_arguments(
        ht: *mut HashTable,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        apply_func: apply_func_args_t,
        arg1: ::std::os::raw::c_int,
        ...
    );
}
extern "C" {
    pub fn zend_hash_reverse_apply(
        ht: *mut HashTable,
        apply_func: apply_func_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_hash_del_key_or_index(
        ht: *mut HashTable,
        arKey: *const ::std::os::raw::c_char,
        nKeyLength: uint,
        h: ulong,
        flag: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_hash_find(
        ht: *const HashTable,
        arKey: *const ::std::os::raw::c_char,
        nKeyLength: uint,
        pData: *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_hash_quick_find(
        ht: *const HashTable,
        arKey: *const ::std::os::raw::c_char,
        nKeyLength: uint,
        h: ulong,
        pData: *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_hash_index_find(
        ht: *const HashTable,
        h: ulong,
        pData: *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_hash_exists(
        ht: *const HashTable,
        arKey: *const ::std::os::raw::c_char,
        nKeyLength: uint,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_hash_quick_exists(
        ht: *const HashTable,
        arKey: *const ::std::os::raw::c_char,
        nKeyLength: uint,
        h: ulong,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_hash_index_exists(ht: *const HashTable, h: ulong) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_hash_next_free_element(ht: *const HashTable) -> ulong;
}
extern "C" {
    pub fn zend_hash_move_forward_ex(
        ht: *mut HashTable,
        pos: *mut HashPosition,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_hash_move_backwards_ex(
        ht: *mut HashTable,
        pos: *mut HashPosition,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_hash_get_current_key_ex(
        ht: *const HashTable,
        str_index: *mut *mut ::std::os::raw::c_char,
        str_length: *mut uint,
        num_index: *mut ulong,
        duplicate: zend_bool,
        pos: *mut HashPosition,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_hash_get_current_key_zval_ex(
        ht: *const HashTable,
        key: *mut zval,
        pos: *mut HashPosition,
    );
}
extern "C" {
    pub fn zend_hash_get_current_key_type_ex(
        ht: *mut HashTable,
        pos: *mut HashPosition,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_hash_get_current_data_ex(
        ht: *mut HashTable,
        pData: *mut *mut ::std::os::raw::c_void,
        pos: *mut HashPosition,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_hash_internal_pointer_reset_ex(ht: *mut HashTable, pos: *mut HashPosition);
}
extern "C" {
    pub fn zend_hash_internal_pointer_end_ex(ht: *mut HashTable, pos: *mut HashPosition);
}
extern "C" {
    pub fn zend_hash_update_current_key_ex(
        ht: *mut HashTable,
        key_type: ::std::os::raw::c_int,
        str_index: *const ::std::os::raw::c_char,
        str_length: uint,
        num_index: ulong,
        mode: ::std::os::raw::c_int,
        pos: *mut HashPosition,
    ) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _HashPointer {
    pub pos: HashPosition,
    pub h: ulong,
}
#[test]
fn bindgen_test_layout__HashPointer() {
    assert_eq!(
        ::std::mem::size_of::<_HashPointer>(),
        16usize,
        concat!("Size of: ", stringify!(_HashPointer))
    );
    assert_eq!(
        ::std::mem::align_of::<_HashPointer>(),
        8usize,
        concat!("Alignment of ", stringify!(_HashPointer))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_HashPointer>())).pos as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_HashPointer),
            "::",
            stringify!(pos)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_HashPointer>())).h as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_HashPointer),
            "::",
            stringify!(h)
        )
    );
}
pub type HashPointer = _HashPointer;
extern "C" {
    pub fn zend_hash_get_pointer(
        ht: *const HashTable,
        ptr: *mut HashPointer,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_hash_set_pointer(
        ht: *mut HashTable,
        ptr: *const HashPointer,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_hash_copy(
        target: *mut HashTable,
        source: *mut HashTable,
        pCopyConstructor: copy_ctor_func_t,
        tmp: *mut ::std::os::raw::c_void,
        size: uint,
    );
}
extern "C" {
    pub fn _zend_hash_merge(
        target: *mut HashTable,
        source: *mut HashTable,
        pCopyConstructor: copy_ctor_func_t,
        tmp: *mut ::std::os::raw::c_void,
        size: uint,
        overwrite: ::std::os::raw::c_int,
    );
}
extern "C" {
    pub fn zend_hash_merge_ex(
        target: *mut HashTable,
        source: *mut HashTable,
        pCopyConstructor: copy_ctor_func_t,
        size: uint,
        pMergeSource: merge_checker_func_t,
        pParam: *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_hash_sort(
        ht: *mut HashTable,
        sort_func: sort_func_t,
        compare_func: compare_func_t,
        renumber: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_hash_compare(
        ht1: *mut HashTable,
        ht2: *mut HashTable,
        compar: compare_func_t,
        ordered: zend_bool,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_hash_minmax(
        ht: *const HashTable,
        compar: compare_func_t,
        flag: ::std::os::raw::c_int,
        pData: *mut *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_hash_num_elements(ht: *const HashTable) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_hash_rehash(ht: *mut HashTable) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_hash_reindex(ht: *mut HashTable, only_integer_keys: zend_bool);
}
extern "C" {
    pub fn _zend_hash_splice(
        ht: *mut HashTable,
        nDataSize: uint,
        pCopyConstructor: copy_ctor_func_t,
        offset: uint,
        length: uint,
        list: *mut *mut ::std::os::raw::c_void,
        list_count: uint,
        removed: *mut HashTable,
    );
}
extern "C" {
    pub fn zend_hash_func(arKey: *const ::std::os::raw::c_char, nKeyLength: uint) -> ulong;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_ts_hashtable {
    pub hash: HashTable,
    pub reader: zend_uint,
    pub mx_reader: *mut pthread_mutex_t,
    pub mx_writer: *mut pthread_mutex_t,
}
#[test]
fn bindgen_test_layout__zend_ts_hashtable() {
    assert_eq!(
        ::std::mem::size_of::<_zend_ts_hashtable>(),
        96usize,
        concat!("Size of: ", stringify!(_zend_ts_hashtable))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_ts_hashtable>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_ts_hashtable))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ts_hashtable>())).hash as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ts_hashtable),
            "::",
            stringify!(hash)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ts_hashtable>())).reader as *const _ as usize },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ts_hashtable),
            "::",
            stringify!(reader)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ts_hashtable>())).mx_reader as *const _ as usize },
        80usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ts_hashtable),
            "::",
            stringify!(mx_reader)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ts_hashtable>())).mx_writer as *const _ as usize },
        88usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ts_hashtable),
            "::",
            stringify!(mx_writer)
        )
    );
}
pub type TsHashTable = _zend_ts_hashtable;
extern "C" {
    pub fn _zend_ts_hash_init(
        ht: *mut TsHashTable,
        nSize: uint,
        pDestructor: dtor_func_t,
        persistent: zend_bool,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn _zend_ts_hash_init_ex(
        ht: *mut TsHashTable,
        nSize: uint,
        pDestructor: dtor_func_t,
        persistent: zend_bool,
        bApplyProtection: zend_bool,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_ts_hash_destroy(ht: *mut TsHashTable);
}
extern "C" {
    pub fn zend_ts_hash_clean(ht: *mut TsHashTable);
}
extern "C" {
    pub fn _zend_ts_hash_add_or_update(
        ht: *mut TsHashTable,
        arKey: *mut ::std::os::raw::c_char,
        nKeyLength: uint,
        pData: *mut ::std::os::raw::c_void,
        nDataSize: uint,
        pDest: *mut *mut ::std::os::raw::c_void,
        flag: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn _zend_ts_hash_quick_add_or_update(
        ht: *mut TsHashTable,
        arKey: *mut ::std::os::raw::c_char,
        nKeyLength: uint,
        h: ulong,
        pData: *mut ::std::os::raw::c_void,
        nDataSize: uint,
        pDest: *mut *mut ::std::os::raw::c_void,
        flag: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn _zend_ts_hash_index_update_or_next_insert(
        ht: *mut TsHashTable,
        h: ulong,
        pData: *mut ::std::os::raw::c_void,
        nDataSize: uint,
        pDest: *mut *mut ::std::os::raw::c_void,
        flag: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_ts_hash_add_empty_element(
        ht: *mut TsHashTable,
        arKey: *mut ::std::os::raw::c_char,
        nKeyLength: uint,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_ts_hash_graceful_destroy(ht: *mut TsHashTable);
}
extern "C" {
    pub fn zend_ts_hash_apply(
        ht: *mut TsHashTable,
        apply_func: apply_func_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_ts_hash_apply_with_argument(
        ht: *mut TsHashTable,
        apply_func: apply_func_arg_t,
        arg1: *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_ts_hash_apply_with_arguments(
        ht: *mut TsHashTable,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        apply_func: apply_func_args_t,
        arg1: ::std::os::raw::c_int,
        ...
    );
}
extern "C" {
    pub fn zend_ts_hash_reverse_apply(
        ht: *mut TsHashTable,
        apply_func: apply_func_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_ts_hash_del_key_or_index(
        ht: *mut TsHashTable,
        arKey: *mut ::std::os::raw::c_char,
        nKeyLength: uint,
        h: ulong,
        flag: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_ts_get_hash_value(
        ht: *mut TsHashTable,
        arKey: *mut ::std::os::raw::c_char,
        nKeyLength: uint,
    ) -> ulong;
}
extern "C" {
    pub fn zend_ts_hash_find(
        ht: *mut TsHashTable,
        arKey: *mut ::std::os::raw::c_char,
        nKeyLength: uint,
        pData: *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_ts_hash_quick_find(
        ht: *mut TsHashTable,
        arKey: *mut ::std::os::raw::c_char,
        nKeyLength: uint,
        h: ulong,
        pData: *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_ts_hash_index_find(
        ht: *mut TsHashTable,
        h: ulong,
        pData: *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_ts_hash_exists(
        ht: *mut TsHashTable,
        arKey: *mut ::std::os::raw::c_char,
        nKeyLength: uint,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_ts_hash_index_exists(ht: *mut TsHashTable, h: ulong) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_ts_hash_copy(
        target: *mut TsHashTable,
        source: *mut TsHashTable,
        pCopyConstructor: copy_ctor_func_t,
        tmp: *mut ::std::os::raw::c_void,
        size: uint,
    );
}
extern "C" {
    pub fn zend_ts_hash_copy_to_hash(
        target: *mut HashTable,
        source: *mut TsHashTable,
        pCopyConstructor: copy_ctor_func_t,
        tmp: *mut ::std::os::raw::c_void,
        size: uint,
    );
}
extern "C" {
    pub fn zend_ts_hash_merge(
        target: *mut TsHashTable,
        source: *mut TsHashTable,
        pCopyConstructor: copy_ctor_func_t,
        tmp: *mut ::std::os::raw::c_void,
        size: uint,
        overwrite: ::std::os::raw::c_int,
    );
}
extern "C" {
    pub fn zend_ts_hash_merge_ex(
        target: *mut TsHashTable,
        source: *mut TsHashTable,
        pCopyConstructor: copy_ctor_func_t,
        size: uint,
        pMergeSource: merge_checker_func_t,
        pParam: *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_ts_hash_sort(
        ht: *mut TsHashTable,
        sort_func: sort_func_t,
        compare_func: compare_func_t,
        renumber: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_ts_hash_compare(
        ht1: *mut TsHashTable,
        ht2: *mut TsHashTable,
        compar: compare_func_t,
        ordered: zend_bool,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_ts_hash_minmax(
        ht: *mut TsHashTable,
        compar: compare_func_t,
        flag: ::std::os::raw::c_int,
        pData: *mut *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_ts_hash_num_elements(ht: *mut TsHashTable) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_ts_hash_rehash(ht: *mut TsHashTable) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_ts_hash_func(arKey: *mut ::std::os::raw::c_char, nKeyLength: uint) -> ulong;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_llist_element {
    pub next: *mut _zend_llist_element,
    pub prev: *mut _zend_llist_element,
    pub data: [::std::os::raw::c_char; 1usize],
}
#[test]
fn bindgen_test_layout__zend_llist_element() {
    assert_eq!(
        ::std::mem::size_of::<_zend_llist_element>(),
        24usize,
        concat!("Size of: ", stringify!(_zend_llist_element))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_llist_element>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_llist_element))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_llist_element>())).next as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_llist_element),
            "::",
            stringify!(next)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_llist_element>())).prev as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_llist_element),
            "::",
            stringify!(prev)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_llist_element>())).data as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_llist_element),
            "::",
            stringify!(data)
        )
    );
}
pub type zend_llist_element = _zend_llist_element;
pub type llist_dtor_func_t =
    ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>;
pub type llist_compare_func_t = ::std::option::Option<
    unsafe extern "C" fn(
        arg1: *mut *const zend_llist_element,
        arg2: *mut *const zend_llist_element,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int,
>;
pub type llist_apply_with_args_func_t = ::std::option::Option<
    unsafe extern "C" fn(
        data: *mut ::std::os::raw::c_void,
        num_args: ::std::os::raw::c_int,
        args: *mut __va_list_tag,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ),
>;
pub type llist_apply_with_arg_func_t = ::std::option::Option<
    unsafe extern "C" fn(
        data: *mut ::std::os::raw::c_void,
        arg: *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ),
>;
pub type llist_apply_func_t = ::std::option::Option<
    unsafe extern "C" fn(
        arg1: *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ),
>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_llist {
    pub head: *mut zend_llist_element,
    pub tail: *mut zend_llist_element,
    pub count: size_t,
    pub size: size_t,
    pub dtor: llist_dtor_func_t,
    pub persistent: ::std::os::raw::c_uchar,
    pub traverse_ptr: *mut zend_llist_element,
}
#[test]
fn bindgen_test_layout__zend_llist() {
    assert_eq!(
        ::std::mem::size_of::<_zend_llist>(),
        56usize,
        concat!("Size of: ", stringify!(_zend_llist))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_llist>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_llist))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_llist>())).head as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_llist),
            "::",
            stringify!(head)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_llist>())).tail as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_llist),
            "::",
            stringify!(tail)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_llist>())).count as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_llist),
            "::",
            stringify!(count)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_llist>())).size as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_llist),
            "::",
            stringify!(size)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_llist>())).dtor as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_llist),
            "::",
            stringify!(dtor)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_llist>())).persistent as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_llist),
            "::",
            stringify!(persistent)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_llist>())).traverse_ptr as *const _ as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_llist),
            "::",
            stringify!(traverse_ptr)
        )
    );
}
pub type zend_llist = _zend_llist;
pub type zend_llist_position = *mut zend_llist_element;
extern "C" {
    pub fn zend_llist_init(
        l: *mut zend_llist,
        size: size_t,
        dtor: llist_dtor_func_t,
        persistent: ::std::os::raw::c_uchar,
    );
}
extern "C" {
    pub fn zend_llist_add_element(l: *mut zend_llist, element: *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_llist_prepend_element(l: *mut zend_llist, element: *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_llist_del_element(
        l: *mut zend_llist,
        element: *mut ::std::os::raw::c_void,
        compare: ::std::option::Option<
            unsafe extern "C" fn(
                element1: *mut ::std::os::raw::c_void,
                element2: *mut ::std::os::raw::c_void,
            ) -> ::std::os::raw::c_int,
        >,
    );
}
extern "C" {
    pub fn zend_llist_destroy(l: *mut zend_llist);
}
extern "C" {
    pub fn zend_llist_clean(l: *mut zend_llist);
}
extern "C" {
    pub fn zend_llist_remove_tail(l: *mut zend_llist) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn zend_llist_copy(dst: *mut zend_llist, src: *mut zend_llist);
}
extern "C" {
    pub fn zend_llist_apply(
        l: *mut zend_llist,
        func: llist_apply_func_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_llist_apply_with_del(
        l: *mut zend_llist,
        func: ::std::option::Option<
            unsafe extern "C" fn(data: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
        >,
    );
}
extern "C" {
    pub fn zend_llist_apply_with_argument(
        l: *mut zend_llist,
        func: llist_apply_with_arg_func_t,
        arg: *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_llist_apply_with_arguments(
        l: *mut zend_llist,
        func: llist_apply_with_args_func_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        num_args: ::std::os::raw::c_int,
        ...
    );
}
extern "C" {
    pub fn zend_llist_count(l: *mut zend_llist) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_llist_sort(
        l: *mut zend_llist,
        comp_func: llist_compare_func_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_llist_get_first_ex(
        l: *mut zend_llist,
        pos: *mut zend_llist_position,
    ) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn zend_llist_get_last_ex(
        l: *mut zend_llist,
        pos: *mut zend_llist_position,
    ) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn zend_llist_get_next_ex(
        l: *mut zend_llist,
        pos: *mut zend_llist_position,
    ) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn zend_llist_get_prev_ex(
        l: *mut zend_llist,
        pos: *mut zend_llist_position,
    ) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn zend_error_noreturn(
        type_: ::std::os::raw::c_int,
        format: *const ::std::os::raw::c_char,
        ...
    );
}
pub type zend_class_entry = _zend_class_entry;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_guard {
    pub in_get: zend_bool,
    pub in_set: zend_bool,
    pub in_unset: zend_bool,
    pub in_isset: zend_bool,
    pub dummy: zend_bool,
}
#[test]
fn bindgen_test_layout__zend_guard() {
    assert_eq!(
        ::std::mem::size_of::<_zend_guard>(),
        5usize,
        concat!("Size of: ", stringify!(_zend_guard))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_guard>(),
        1usize,
        concat!("Alignment of ", stringify!(_zend_guard))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_guard>())).in_get as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_guard),
            "::",
            stringify!(in_get)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_guard>())).in_set as *const _ as usize },
        1usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_guard),
            "::",
            stringify!(in_set)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_guard>())).in_unset as *const _ as usize },
        2usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_guard),
            "::",
            stringify!(in_unset)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_guard>())).in_isset as *const _ as usize },
        3usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_guard),
            "::",
            stringify!(in_isset)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_guard>())).dummy as *const _ as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_guard),
            "::",
            stringify!(dummy)
        )
    );
}
pub type zend_guard = _zend_guard;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_object {
    pub ce: *mut zend_class_entry,
    pub properties: *mut HashTable,
    pub properties_table: *mut *mut zval,
    pub guards: *mut HashTable,
}
#[test]
fn bindgen_test_layout__zend_object() {
    assert_eq!(
        ::std::mem::size_of::<_zend_object>(),
        32usize,
        concat!("Size of: ", stringify!(_zend_object))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_object>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_object))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_object>())).ce as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object),
            "::",
            stringify!(ce)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_object>())).properties as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object),
            "::",
            stringify!(properties)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_object>())).properties_table as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object),
            "::",
            stringify!(properties_table)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_object>())).guards as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object),
            "::",
            stringify!(guards)
        )
    );
}
pub type zend_object = _zend_object;
pub type zend_object_read_property_t = ::std::option::Option<
    unsafe extern "C" fn(
        object: *mut zval,
        member: *mut zval,
        type_: ::std::os::raw::c_int,
        key: *const _zend_literal,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut zval,
>;
pub type zend_object_read_dimension_t = ::std::option::Option<
    unsafe extern "C" fn(
        object: *mut zval,
        offset: *mut zval,
        type_: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut zval,
>;
pub type zend_object_write_property_t = ::std::option::Option<
    unsafe extern "C" fn(
        object: *mut zval,
        member: *mut zval,
        value: *mut zval,
        key: *const _zend_literal,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ),
>;
pub type zend_object_write_dimension_t = ::std::option::Option<
    unsafe extern "C" fn(
        object: *mut zval,
        offset: *mut zval,
        value: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ),
>;
pub type zend_object_get_property_ptr_ptr_t = ::std::option::Option<
    unsafe extern "C" fn(
        object: *mut zval,
        member: *mut zval,
        type_: ::std::os::raw::c_int,
        key: *const _zend_literal,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut *mut zval,
>;
pub type zend_object_set_t = ::std::option::Option<
    unsafe extern "C" fn(
        object: *mut *mut zval,
        value: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ),
>;
pub type zend_object_get_t = ::std::option::Option<
    unsafe extern "C" fn(
        object: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut zval,
>;
pub type zend_object_has_property_t = ::std::option::Option<
    unsafe extern "C" fn(
        object: *mut zval,
        member: *mut zval,
        has_set_exists: ::std::os::raw::c_int,
        key: *const _zend_literal,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int,
>;
pub type zend_object_has_dimension_t = ::std::option::Option<
    unsafe extern "C" fn(
        object: *mut zval,
        member: *mut zval,
        check_empty: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int,
>;
pub type zend_object_unset_property_t = ::std::option::Option<
    unsafe extern "C" fn(
        object: *mut zval,
        member: *mut zval,
        key: *const _zend_literal,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ),
>;
pub type zend_object_unset_dimension_t = ::std::option::Option<
    unsafe extern "C" fn(
        object: *mut zval,
        offset: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ),
>;
pub type zend_object_get_properties_t = ::std::option::Option<
    unsafe extern "C" fn(
        object: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut HashTable,
>;
pub type zend_object_get_debug_info_t = ::std::option::Option<
    unsafe extern "C" fn(
        object: *mut zval,
        is_temp: *mut ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut HashTable,
>;
pub type zend_object_call_method_t = ::std::option::Option<
    unsafe extern "C" fn(
        method: *const ::std::os::raw::c_char,
        ht: ::std::os::raw::c_int,
        return_value: *mut zval,
        return_value_ptr: *mut *mut zval,
        this_ptr: *mut zval,
        return_value_used: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int,
>;
pub type zend_object_get_method_t = ::std::option::Option<
    unsafe extern "C" fn(
        object_ptr: *mut *mut zval,
        method: *mut ::std::os::raw::c_char,
        method_len: ::std::os::raw::c_int,
        key: *const _zend_literal,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut _zend_function,
>;
pub type zend_object_get_constructor_t = ::std::option::Option<
    unsafe extern "C" fn(
        object: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut _zend_function,
>;
pub type zend_object_add_ref_t = ::std::option::Option<
    unsafe extern "C" fn(object: *mut zval, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void),
>;
pub type zend_object_del_ref_t = ::std::option::Option<
    unsafe extern "C" fn(object: *mut zval, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void),
>;
pub type zend_object_delete_obj_t = ::std::option::Option<
    unsafe extern "C" fn(object: *mut zval, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void),
>;
pub type zend_object_clone_obj_t = ::std::option::Option<
    unsafe extern "C" fn(
        object: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> zend_object_value,
>;
pub type zend_object_get_class_entry_t = ::std::option::Option<
    unsafe extern "C" fn(
        object: *const zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut zend_class_entry,
>;
pub type zend_object_get_class_name_t = ::std::option::Option<
    unsafe extern "C" fn(
        object: *const zval,
        class_name: *mut *const ::std::os::raw::c_char,
        class_name_len: *mut zend_uint,
        parent: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int,
>;
pub type zend_object_compare_t = ::std::option::Option<
    unsafe extern "C" fn(
        object1: *mut zval,
        object2: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int,
>;
pub type zend_object_compare_zvals_t = ::std::option::Option<
    unsafe extern "C" fn(
        resul: *mut zval,
        op1: *mut zval,
        op2: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int,
>;
pub type zend_object_cast_t = ::std::option::Option<
    unsafe extern "C" fn(
        readobj: *mut zval,
        retval: *mut zval,
        type_: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int,
>;
pub type zend_object_count_elements_t = ::std::option::Option<
    unsafe extern "C" fn(
        object: *mut zval,
        count: *mut ::std::os::raw::c_long,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int,
>;
pub type zend_object_get_closure_t = ::std::option::Option<
    unsafe extern "C" fn(
        obj: *mut zval,
        ce_ptr: *mut *mut zend_class_entry,
        fptr_ptr: *mut *mut _zend_function,
        zobj_ptr: *mut *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int,
>;
pub type zend_object_get_gc_t = ::std::option::Option<
    unsafe extern "C" fn(
        object: *mut zval,
        table: *mut *mut *mut zval,
        n: *mut ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut HashTable,
>;
pub type zend_object_do_operation_t = ::std::option::Option<
    unsafe extern "C" fn(
        opcode: zend_uchar,
        result: *mut zval,
        op1: *mut zval,
        op2: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int,
>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_object_handlers {
    pub add_ref: zend_object_add_ref_t,
    pub del_ref: zend_object_del_ref_t,
    pub clone_obj: zend_object_clone_obj_t,
    pub read_property: zend_object_read_property_t,
    pub write_property: zend_object_write_property_t,
    pub read_dimension: zend_object_read_dimension_t,
    pub write_dimension: zend_object_write_dimension_t,
    pub get_property_ptr_ptr: zend_object_get_property_ptr_ptr_t,
    pub get: zend_object_get_t,
    pub set: zend_object_set_t,
    pub has_property: zend_object_has_property_t,
    pub unset_property: zend_object_unset_property_t,
    pub has_dimension: zend_object_has_dimension_t,
    pub unset_dimension: zend_object_unset_dimension_t,
    pub get_properties: zend_object_get_properties_t,
    pub get_method: zend_object_get_method_t,
    pub call_method: zend_object_call_method_t,
    pub get_constructor: zend_object_get_constructor_t,
    pub get_class_entry: zend_object_get_class_entry_t,
    pub get_class_name: zend_object_get_class_name_t,
    pub compare_objects: zend_object_compare_t,
    pub cast_object: zend_object_cast_t,
    pub count_elements: zend_object_count_elements_t,
    pub get_debug_info: zend_object_get_debug_info_t,
    pub get_closure: zend_object_get_closure_t,
    pub get_gc: zend_object_get_gc_t,
    pub do_operation: zend_object_do_operation_t,
    pub compare: zend_object_compare_zvals_t,
}
#[test]
fn bindgen_test_layout__zend_object_handlers() {
    assert_eq!(
        ::std::mem::size_of::<_zend_object_handlers>(),
        224usize,
        concat!("Size of: ", stringify!(_zend_object_handlers))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_object_handlers>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_object_handlers))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).add_ref as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(add_ref)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).del_ref as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(del_ref)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).clone_obj as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(clone_obj)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_handlers>())).read_property as *const _ as usize
        },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(read_property)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_handlers>())).write_property as *const _ as usize
        },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(write_property)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_handlers>())).read_dimension as *const _ as usize
        },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(read_dimension)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_handlers>())).write_dimension as *const _ as usize
        },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(write_dimension)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_handlers>())).get_property_ptr_ptr as *const _
                as usize
        },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(get_property_ptr_ptr)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).get as *const _ as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(get)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).set as *const _ as usize },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(set)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_handlers>())).has_property as *const _ as usize
        },
        80usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(has_property)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_handlers>())).unset_property as *const _ as usize
        },
        88usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(unset_property)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_handlers>())).has_dimension as *const _ as usize
        },
        96usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(has_dimension)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_handlers>())).unset_dimension as *const _ as usize
        },
        104usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(unset_dimension)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_handlers>())).get_properties as *const _ as usize
        },
        112usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(get_properties)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_handlers>())).get_method as *const _ as usize
        },
        120usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(get_method)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_handlers>())).call_method as *const _ as usize
        },
        128usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(call_method)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_handlers>())).get_constructor as *const _ as usize
        },
        136usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(get_constructor)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_handlers>())).get_class_entry as *const _ as usize
        },
        144usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(get_class_entry)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_handlers>())).get_class_name as *const _ as usize
        },
        152usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(get_class_name)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_handlers>())).compare_objects as *const _ as usize
        },
        160usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(compare_objects)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_handlers>())).cast_object as *const _ as usize
        },
        168usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(cast_object)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_handlers>())).count_elements as *const _ as usize
        },
        176usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(count_elements)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_handlers>())).get_debug_info as *const _ as usize
        },
        184usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(get_debug_info)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_handlers>())).get_closure as *const _ as usize
        },
        192usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(get_closure)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).get_gc as *const _ as usize },
        200usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(get_gc)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_handlers>())).do_operation as *const _ as usize
        },
        208usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(do_operation)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).compare as *const _ as usize },
        216usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_handlers),
            "::",
            stringify!(compare)
        )
    );
}
extern "C" {
    pub static mut std_object_handlers: zend_object_handlers;
}
extern "C" {
    pub fn zend_std_get_static_method(
        ce: *mut zend_class_entry,
        function_name_strval: *const ::std::os::raw::c_char,
        function_name_strlen: ::std::os::raw::c_int,
        key: *const _zend_literal,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut _zend_function;
}
extern "C" {
    pub fn zend_std_get_static_property(
        ce: *mut zend_class_entry,
        property_name: *const ::std::os::raw::c_char,
        property_name_len: ::std::os::raw::c_int,
        silent: zend_bool,
        key: *const _zend_literal,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut *mut zval;
}
extern "C" {
    pub fn zend_std_unset_static_property(
        ce: *mut zend_class_entry,
        property_name: *const ::std::os::raw::c_char,
        property_name_len: ::std::os::raw::c_int,
        key: *const _zend_literal,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> zend_bool;
}
extern "C" {
    pub fn zend_std_get_constructor(
        object: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut _zend_function;
}
extern "C" {
    pub fn zend_get_property_info(
        ce: *mut zend_class_entry,
        member: *mut zval,
        silent: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut _zend_property_info;
}
extern "C" {
    pub fn zend_std_get_properties(
        object: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut HashTable;
}
extern "C" {
    pub fn zend_std_get_debug_info(
        object: *mut zval,
        is_temp: *mut ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut HashTable;
}
extern "C" {
    pub fn zend_std_cast_object_tostring(
        readobj: *mut zval,
        writeobj: *mut zval,
        type_: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_std_write_property(
        object: *mut zval,
        member: *mut zval,
        value: *mut zval,
        key: *const _zend_literal,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_check_private(
        fbc: *mut _zend_function,
        ce: *mut zend_class_entry,
        function_name_strval: *mut ::std::os::raw::c_char,
        function_name_strlen: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_check_protected(
        ce: *mut zend_class_entry,
        scope: *mut zend_class_entry,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_check_property_access(
        zobj: *mut zend_object,
        prop_info_name: *const ::std::os::raw::c_char,
        prop_info_name_len: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_std_call_user_call(
        ht: ::std::os::raw::c_int,
        return_value: *mut zval,
        return_value_ptr: *mut *mut zval,
        this_ptr: *mut zval,
        return_value_used: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
pub type zend_ast = _zend_ast;
pub const _zend_ast_kind_ZEND_CONST: _zend_ast_kind = 256;
pub const _zend_ast_kind_ZEND_BOOL_AND: _zend_ast_kind = 257;
pub const _zend_ast_kind_ZEND_BOOL_OR: _zend_ast_kind = 258;
pub const _zend_ast_kind_ZEND_SELECT: _zend_ast_kind = 259;
pub const _zend_ast_kind_ZEND_UNARY_PLUS: _zend_ast_kind = 260;
pub const _zend_ast_kind_ZEND_UNARY_MINUS: _zend_ast_kind = 261;
pub type _zend_ast_kind = ::std::os::raw::c_uint;
pub use self::_zend_ast_kind as zend_ast_kind;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_ast {
    pub kind: ::std::os::raw::c_ushort,
    pub children: ::std::os::raw::c_ushort,
    pub u: _zend_ast__bindgen_ty_1,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _zend_ast__bindgen_ty_1 {
    pub val: *mut zval,
    pub child: *mut zend_ast,
    _bindgen_union_align: u64,
}
#[test]
fn bindgen_test_layout__zend_ast__bindgen_ty_1() {
    assert_eq!(
        ::std::mem::size_of::<_zend_ast__bindgen_ty_1>(),
        8usize,
        concat!("Size of: ", stringify!(_zend_ast__bindgen_ty_1))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_ast__bindgen_ty_1>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_ast__bindgen_ty_1))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ast__bindgen_ty_1>())).val as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ast__bindgen_ty_1),
            "::",
            stringify!(val)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ast__bindgen_ty_1>())).child as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ast__bindgen_ty_1),
            "::",
            stringify!(child)
        )
    );
}
#[test]
fn bindgen_test_layout__zend_ast() {
    assert_eq!(
        ::std::mem::size_of::<_zend_ast>(),
        16usize,
        concat!("Size of: ", stringify!(_zend_ast))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_ast>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_ast))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ast>())).kind as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ast),
            "::",
            stringify!(kind)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ast>())).children as *const _ as usize },
        2usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ast),
            "::",
            stringify!(children)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ast>())).u as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ast),
            "::",
            stringify!(u)
        )
    );
}
extern "C" {
    pub fn zend_ast_create_constant(zv: *mut zval) -> *mut zend_ast;
}
extern "C" {
    pub fn zend_ast_create_unary(kind: uint, op0: *mut zend_ast) -> *mut zend_ast;
}
extern "C" {
    pub fn zend_ast_create_binary(
        kind: uint,
        op0: *mut zend_ast,
        op1: *mut zend_ast,
    ) -> *mut zend_ast;
}
extern "C" {
    pub fn zend_ast_create_ternary(
        kind: uint,
        op0: *mut zend_ast,
        op1: *mut zend_ast,
        op2: *mut zend_ast,
    ) -> *mut zend_ast;
}
extern "C" {
    pub fn zend_ast_create_dynamic(kind: uint) -> *mut zend_ast;
}
extern "C" {
    pub fn zend_ast_dynamic_add(ast: *mut *mut zend_ast, op: *mut zend_ast);
}
extern "C" {
    pub fn zend_ast_dynamic_shrink(ast: *mut *mut zend_ast);
}
extern "C" {
    pub fn zend_ast_is_ct_constant(ast: *mut zend_ast) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_ast_evaluate(
        result: *mut zval,
        ast: *mut zend_ast,
        scope: *mut zend_class_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_ast_copy(ast: *mut zend_ast) -> *mut zend_ast;
}
extern "C" {
    pub fn zend_ast_destroy(ast: *mut zend_ast);
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _zvalue_value {
    pub lval: ::std::os::raw::c_long,
    pub dval: f64,
    pub str_: _zvalue_value__bindgen_ty_1,
    pub ht: *mut HashTable,
    pub obj: zend_object_value,
    pub ast: *mut zend_ast,
    _bindgen_union_align: [u64; 2usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zvalue_value__bindgen_ty_1 {
    pub val: *mut ::std::os::raw::c_char,
    pub len: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout__zvalue_value__bindgen_ty_1() {
    assert_eq!(
        ::std::mem::size_of::<_zvalue_value__bindgen_ty_1>(),
        16usize,
        concat!("Size of: ", stringify!(_zvalue_value__bindgen_ty_1))
    );
    assert_eq!(
        ::std::mem::align_of::<_zvalue_value__bindgen_ty_1>(),
        8usize,
        concat!("Alignment of ", stringify!(_zvalue_value__bindgen_ty_1))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zvalue_value__bindgen_ty_1>())).val as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zvalue_value__bindgen_ty_1),
            "::",
            stringify!(val)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zvalue_value__bindgen_ty_1>())).len as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zvalue_value__bindgen_ty_1),
            "::",
            stringify!(len)
        )
    );
}
#[test]
fn bindgen_test_layout__zvalue_value() {
    assert_eq!(
        ::std::mem::size_of::<_zvalue_value>(),
        16usize,
        concat!("Size of: ", stringify!(_zvalue_value))
    );
    assert_eq!(
        ::std::mem::align_of::<_zvalue_value>(),
        8usize,
        concat!("Alignment of ", stringify!(_zvalue_value))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zvalue_value>())).lval as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zvalue_value),
            "::",
            stringify!(lval)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zvalue_value>())).dval as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zvalue_value),
            "::",
            stringify!(dval)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zvalue_value>())).str_ as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zvalue_value),
            "::",
            stringify!(str_)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zvalue_value>())).ht as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zvalue_value),
            "::",
            stringify!(ht)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zvalue_value>())).obj as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zvalue_value),
            "::",
            stringify!(obj)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zvalue_value>())).ast as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zvalue_value),
            "::",
            stringify!(ast)
        )
    );
}
pub type zvalue_value = _zvalue_value;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zval_struct {
    pub value: zvalue_value,
    pub refcount__gc: zend_uint,
    pub type_: zend_uchar,
    pub is_ref__gc: zend_uchar,
}
#[test]
fn bindgen_test_layout__zval_struct() {
    assert_eq!(
        ::std::mem::size_of::<_zval_struct>(),
        24usize,
        concat!("Size of: ", stringify!(_zval_struct))
    );
    assert_eq!(
        ::std::mem::align_of::<_zval_struct>(),
        8usize,
        concat!("Alignment of ", stringify!(_zval_struct))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zval_struct>())).value as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zval_struct),
            "::",
            stringify!(value)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zval_struct>())).refcount__gc as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zval_struct),
            "::",
            stringify!(refcount__gc)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zval_struct>())).type_ as *const _ as usize },
        20usize,
        concat!(
            "Offset of field: ",
            stringify!(_zval_struct),
            "::",
            stringify!(type_)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zval_struct>())).is_ref__gc as *const _ as usize },
        21usize,
        concat!(
            "Offset of field: ",
            stringify!(_zval_struct),
            "::",
            stringify!(is_ref__gc)
        )
    );
}
pub type zend_object_iterator = _zend_object_iterator;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_object_iterator_funcs {
    pub dtor: ::std::option::Option<
        unsafe extern "C" fn(
            iter: *mut zend_object_iterator,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ),
    >,
    pub valid: ::std::option::Option<
        unsafe extern "C" fn(
            iter: *mut zend_object_iterator,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >,
    pub get_current_data: ::std::option::Option<
        unsafe extern "C" fn(
            iter: *mut zend_object_iterator,
            data: *mut *mut *mut zval,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ),
    >,
    pub get_current_key: ::std::option::Option<
        unsafe extern "C" fn(
            iter: *mut zend_object_iterator,
            key: *mut zval,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ),
    >,
    pub move_forward: ::std::option::Option<
        unsafe extern "C" fn(
            iter: *mut zend_object_iterator,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ),
    >,
    pub rewind: ::std::option::Option<
        unsafe extern "C" fn(
            iter: *mut zend_object_iterator,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ),
    >,
    pub invalidate_current: ::std::option::Option<
        unsafe extern "C" fn(
            iter: *mut zend_object_iterator,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ),
    >,
}
#[test]
fn bindgen_test_layout__zend_object_iterator_funcs() {
    assert_eq!(
        ::std::mem::size_of::<_zend_object_iterator_funcs>(),
        56usize,
        concat!("Size of: ", stringify!(_zend_object_iterator_funcs))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_object_iterator_funcs>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_object_iterator_funcs))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).dtor as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_iterator_funcs),
            "::",
            stringify!(dtor)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).valid as *const _ as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_iterator_funcs),
            "::",
            stringify!(valid)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).get_current_data as *const _
                as usize
        },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_iterator_funcs),
            "::",
            stringify!(get_current_data)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).get_current_key as *const _
                as usize
        },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_iterator_funcs),
            "::",
            stringify!(get_current_key)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).move_forward as *const _
                as usize
        },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_iterator_funcs),
            "::",
            stringify!(move_forward)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).rewind as *const _ as usize
        },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_iterator_funcs),
            "::",
            stringify!(rewind)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).invalidate_current as *const _
                as usize
        },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_iterator_funcs),
            "::",
            stringify!(invalidate_current)
        )
    );
}
pub type zend_object_iterator_funcs = _zend_object_iterator_funcs;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_object_iterator {
    pub data: *mut ::std::os::raw::c_void,
    pub funcs: *mut zend_object_iterator_funcs,
    pub index: ulong,
}
#[test]
fn bindgen_test_layout__zend_object_iterator() {
    assert_eq!(
        ::std::mem::size_of::<_zend_object_iterator>(),
        24usize,
        concat!("Size of: ", stringify!(_zend_object_iterator))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_object_iterator>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_object_iterator))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_object_iterator>())).data as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_iterator),
            "::",
            stringify!(data)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_object_iterator>())).funcs as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_iterator),
            "::",
            stringify!(funcs)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_object_iterator>())).index as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_iterator),
            "::",
            stringify!(index)
        )
    );
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_class_iterator_funcs {
    pub funcs: *mut zend_object_iterator_funcs,
    pub zf_new_iterator: *mut _zend_function,
    pub zf_valid: *mut _zend_function,
    pub zf_current: *mut _zend_function,
    pub zf_key: *mut _zend_function,
    pub zf_next: *mut _zend_function,
    pub zf_rewind: *mut _zend_function,
}
#[test]
fn bindgen_test_layout__zend_class_iterator_funcs() {
    assert_eq!(
        ::std::mem::size_of::<_zend_class_iterator_funcs>(),
        56usize,
        concat!("Size of: ", stringify!(_zend_class_iterator_funcs))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_class_iterator_funcs>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_class_iterator_funcs))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).funcs as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_iterator_funcs),
            "::",
            stringify!(funcs)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_new_iterator as *const _
                as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_iterator_funcs),
            "::",
            stringify!(zf_new_iterator)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_valid as *const _ as usize
        },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_iterator_funcs),
            "::",
            stringify!(zf_valid)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_current as *const _ as usize
        },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_iterator_funcs),
            "::",
            stringify!(zf_current)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_key as *const _ as usize
        },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_iterator_funcs),
            "::",
            stringify!(zf_key)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_next as *const _ as usize
        },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_iterator_funcs),
            "::",
            stringify!(zf_next)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_rewind as *const _ as usize
        },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_iterator_funcs),
            "::",
            stringify!(zf_rewind)
        )
    );
}
pub type zend_class_iterator_funcs = _zend_class_iterator_funcs;
pub const zend_object_iterator_kind_ZEND_ITER_INVALID: zend_object_iterator_kind = 0;
pub const zend_object_iterator_kind_ZEND_ITER_PLAIN_ARRAY: zend_object_iterator_kind = 1;
pub const zend_object_iterator_kind_ZEND_ITER_PLAIN_OBJECT: zend_object_iterator_kind = 2;
pub const zend_object_iterator_kind_ZEND_ITER_OBJECT: zend_object_iterator_kind = 3;
pub type zend_object_iterator_kind = ::std::os::raw::c_uint;
extern "C" {
    pub fn zend_iterator_unwrap(
        array_ptr: *mut zval,
        iter: *mut *mut zend_object_iterator,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> zend_object_iterator_kind;
}
extern "C" {
    pub fn zend_iterator_wrap(
        iter: *mut zend_object_iterator,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut zval;
}
extern "C" {
    pub fn zend_register_iterator_wrapper(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_serialize_data {
    _unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_unserialize_data {
    _unused: [u8; 0],
}
pub type zend_serialize_data = _zend_serialize_data;
pub type zend_unserialize_data = _zend_unserialize_data;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_trait_method_reference {
    pub method_name: *const ::std::os::raw::c_char,
    pub mname_len: ::std::os::raw::c_uint,
    pub ce: *mut zend_class_entry,
    pub class_name: *const ::std::os::raw::c_char,
    pub cname_len: ::std::os::raw::c_uint,
}
#[test]
fn bindgen_test_layout__zend_trait_method_reference() {
    assert_eq!(
        ::std::mem::size_of::<_zend_trait_method_reference>(),
        40usize,
        concat!("Size of: ", stringify!(_zend_trait_method_reference))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_trait_method_reference>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_trait_method_reference))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_trait_method_reference>())).method_name as *const _
                as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_trait_method_reference),
            "::",
            stringify!(method_name)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_trait_method_reference>())).mname_len as *const _ as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_trait_method_reference),
            "::",
            stringify!(mname_len)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_trait_method_reference>())).ce as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_trait_method_reference),
            "::",
            stringify!(ce)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_trait_method_reference>())).class_name as *const _ as usize
        },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_trait_method_reference),
            "::",
            stringify!(class_name)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_trait_method_reference>())).cname_len as *const _ as usize
        },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_trait_method_reference),
            "::",
            stringify!(cname_len)
        )
    );
}
pub type zend_trait_method_reference = _zend_trait_method_reference;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_trait_precedence {
    pub trait_method: *mut zend_trait_method_reference,
    pub exclude_from_classes: *mut *mut zend_class_entry,
}
#[test]
fn bindgen_test_layout__zend_trait_precedence() {
    assert_eq!(
        ::std::mem::size_of::<_zend_trait_precedence>(),
        16usize,
        concat!("Size of: ", stringify!(_zend_trait_precedence))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_trait_precedence>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_trait_precedence))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_trait_precedence>())).trait_method as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_trait_precedence),
            "::",
            stringify!(trait_method)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_trait_precedence>())).exclude_from_classes as *const _
                as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_trait_precedence),
            "::",
            stringify!(exclude_from_classes)
        )
    );
}
pub type zend_trait_precedence = _zend_trait_precedence;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_trait_alias {
    pub trait_method: *mut zend_trait_method_reference,
    #[doc = " name for method to be added"]
    pub alias: *const ::std::os::raw::c_char,
    pub alias_len: ::std::os::raw::c_uint,
    #[doc = " modifiers to be set on trait method"]
    pub modifiers: zend_uint,
}
#[test]
fn bindgen_test_layout__zend_trait_alias() {
    assert_eq!(
        ::std::mem::size_of::<_zend_trait_alias>(),
        24usize,
        concat!("Size of: ", stringify!(_zend_trait_alias))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_trait_alias>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_trait_alias))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_trait_alias>())).trait_method as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_trait_alias),
            "::",
            stringify!(trait_method)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_trait_alias>())).alias as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_trait_alias),
            "::",
            stringify!(alias)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_trait_alias>())).alias_len as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_trait_alias),
            "::",
            stringify!(alias_len)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_trait_alias>())).modifiers as *const _ as usize },
        20usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_trait_alias),
            "::",
            stringify!(modifiers)
        )
    );
}
pub type zend_trait_alias = _zend_trait_alias;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_class_entry {
    pub type_: ::std::os::raw::c_char,
    pub name: *const ::std::os::raw::c_char,
    pub name_length: zend_uint,
    pub parent: *mut _zend_class_entry,
    pub refcount: ::std::os::raw::c_int,
    pub ce_flags: zend_uint,
    pub function_table: HashTable,
    pub properties_info: HashTable,
    pub default_properties_table: *mut *mut zval,
    pub default_static_members_table: *mut *mut zval,
    pub static_members_table: *mut *mut zval,
    pub constants_table: HashTable,
    pub default_properties_count: ::std::os::raw::c_int,
    pub default_static_members_count: ::std::os::raw::c_int,
    pub constructor: *mut _zend_function,
    pub destructor: *mut _zend_function,
    pub clone: *mut _zend_function,
    pub __get: *mut _zend_function,
    pub __set: *mut _zend_function,
    pub __unset: *mut _zend_function,
    pub __isset: *mut _zend_function,
    pub __call: *mut _zend_function,
    pub __callstatic: *mut _zend_function,
    pub __tostring: *mut _zend_function,
    pub __debugInfo: *mut _zend_function,
    pub serialize_func: *mut _zend_function,
    pub unserialize_func: *mut _zend_function,
    pub iterator_funcs: zend_class_iterator_funcs,
    pub create_object: ::std::option::Option<
        unsafe extern "C" fn(
            class_type: *mut zend_class_entry,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> zend_object_value,
    >,
    pub get_iterator: ::std::option::Option<
        unsafe extern "C" fn(
            ce: *mut zend_class_entry,
            object: *mut zval,
            by_ref: ::std::os::raw::c_int,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> *mut zend_object_iterator,
    >,
    pub interface_gets_implemented: ::std::option::Option<
        unsafe extern "C" fn(
            iface: *mut zend_class_entry,
            class_type: *mut zend_class_entry,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >,
    pub get_static_method: ::std::option::Option<
        unsafe extern "C" fn(
            ce: *mut zend_class_entry,
            method: *mut ::std::os::raw::c_char,
            method_len: ::std::os::raw::c_int,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> *mut _zend_function,
    >,
    pub serialize: ::std::option::Option<
        unsafe extern "C" fn(
            object: *mut zval,
            buffer: *mut *mut ::std::os::raw::c_uchar,
            buf_len: *mut zend_uint,
            data: *mut zend_serialize_data,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >,
    pub unserialize: ::std::option::Option<
        unsafe extern "C" fn(
            object: *mut *mut zval,
            ce: *mut zend_class_entry,
            buf: *const ::std::os::raw::c_uchar,
            buf_len: zend_uint,
            data: *mut zend_unserialize_data,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >,
    pub interfaces: *mut *mut zend_class_entry,
    pub num_interfaces: zend_uint,
    pub traits: *mut *mut zend_class_entry,
    pub num_traits: zend_uint,
    pub trait_aliases: *mut *mut zend_trait_alias,
    pub trait_precedences: *mut *mut zend_trait_precedence,
    pub info: _zend_class_entry__bindgen_ty_1,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _zend_class_entry__bindgen_ty_1 {
    pub user: _zend_class_entry__bindgen_ty_1__bindgen_ty_1,
    pub internal: _zend_class_entry__bindgen_ty_1__bindgen_ty_2,
    _bindgen_union_align: [u64; 4usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_class_entry__bindgen_ty_1__bindgen_ty_1 {
    pub filename: *const ::std::os::raw::c_char,
    pub line_start: zend_uint,
    pub line_end: zend_uint,
    pub doc_comment: *const ::std::os::raw::c_char,
    pub doc_comment_len: zend_uint,
}
#[test]
fn bindgen_test_layout__zend_class_entry__bindgen_ty_1__bindgen_ty_1() {
    assert_eq!(
        ::std::mem::size_of::<_zend_class_entry__bindgen_ty_1__bindgen_ty_1>(),
        32usize,
        concat!(
            "Size of: ",
            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_1)
        )
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_class_entry__bindgen_ty_1__bindgen_ty_1>(),
        8usize,
        concat!(
            "Alignment of ",
            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_1)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1__bindgen_ty_1>())).filename
                as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_1),
            "::",
            stringify!(filename)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1__bindgen_ty_1>())).line_start
                as *const _ as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_1),
            "::",
            stringify!(line_start)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1__bindgen_ty_1>())).line_end
                as *const _ as usize
        },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_1),
            "::",
            stringify!(line_end)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1__bindgen_ty_1>())).doc_comment
                as *const _ as usize
        },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_1),
            "::",
            stringify!(doc_comment)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1__bindgen_ty_1>()))
                .doc_comment_len as *const _ as usize
        },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_1),
            "::",
            stringify!(doc_comment_len)
        )
    );
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_class_entry__bindgen_ty_1__bindgen_ty_2 {
    pub builtin_functions: *const _zend_function_entry,
    pub module: *mut _zend_module_entry,
}
#[test]
fn bindgen_test_layout__zend_class_entry__bindgen_ty_1__bindgen_ty_2() {
    assert_eq!(
        ::std::mem::size_of::<_zend_class_entry__bindgen_ty_1__bindgen_ty_2>(),
        16usize,
        concat!(
            "Size of: ",
            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_2)
        )
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_class_entry__bindgen_ty_1__bindgen_ty_2>(),
        8usize,
        concat!(
            "Alignment of ",
            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_2)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1__bindgen_ty_2>()))
                .builtin_functions as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_2),
            "::",
            stringify!(builtin_functions)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1__bindgen_ty_2>())).module
                as *const _ as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_2),
            "::",
            stringify!(module)
        )
    );
}
#[test]
fn bindgen_test_layout__zend_class_entry__bindgen_ty_1() {
    assert_eq!(
        ::std::mem::size_of::<_zend_class_entry__bindgen_ty_1>(),
        32usize,
        concat!("Size of: ", stringify!(_zend_class_entry__bindgen_ty_1))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_class_entry__bindgen_ty_1>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_class_entry__bindgen_ty_1))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1>())).user as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry__bindgen_ty_1),
            "::",
            stringify!(user)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1>())).internal as *const _
                as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry__bindgen_ty_1),
            "::",
            stringify!(internal)
        )
    );
}
#[test]
fn bindgen_test_layout__zend_class_entry() {
    assert_eq!(
        ::std::mem::size_of::<_zend_class_entry>(),
        576usize,
        concat!("Size of: ", stringify!(_zend_class_entry))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_class_entry>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_class_entry))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).type_ as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(type_)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).name as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(name)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).name_length as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(name_length)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).parent as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(parent)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).refcount as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(refcount)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).ce_flags as *const _ as usize },
        36usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(ce_flags)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_entry>())).function_table as *const _ as usize
        },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(function_table)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_entry>())).properties_info as *const _ as usize
        },
        112usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(properties_info)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_entry>())).default_properties_table as *const _
                as usize
        },
        184usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(default_properties_table)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_entry>())).default_static_members_table as *const _
                as usize
        },
        192usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(default_static_members_table)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_entry>())).static_members_table as *const _ as usize
        },
        200usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(static_members_table)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_entry>())).constants_table as *const _ as usize
        },
        208usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(constants_table)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_entry>())).default_properties_count as *const _
                as usize
        },
        280usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(default_properties_count)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_entry>())).default_static_members_count as *const _
                as usize
        },
        284usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(default_static_members_count)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).constructor as *const _ as usize },
        288usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(constructor)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).destructor as *const _ as usize },
        296usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(destructor)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).clone as *const _ as usize },
        304usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(clone)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__get as *const _ as usize },
        312usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(__get)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__set as *const _ as usize },
        320usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(__set)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__unset as *const _ as usize },
        328usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(__unset)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__isset as *const _ as usize },
        336usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(__isset)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__call as *const _ as usize },
        344usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(__call)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__callstatic as *const _ as usize },
        352usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(__callstatic)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__tostring as *const _ as usize },
        360usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(__tostring)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__debugInfo as *const _ as usize },
        368usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(__debugInfo)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_entry>())).serialize_func as *const _ as usize
        },
        376usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(serialize_func)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_entry>())).unserialize_func as *const _ as usize
        },
        384usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(unserialize_func)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_entry>())).iterator_funcs as *const _ as usize
        },
        392usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(iterator_funcs)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).create_object as *const _ as usize },
        448usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(create_object)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).get_iterator as *const _ as usize },
        456usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(get_iterator)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_entry>())).interface_gets_implemented as *const _
                as usize
        },
        464usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(interface_gets_implemented)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_entry>())).get_static_method as *const _ as usize
        },
        472usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(get_static_method)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).serialize as *const _ as usize },
        480usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(serialize)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).unserialize as *const _ as usize },
        488usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(unserialize)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).interfaces as *const _ as usize },
        496usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(interfaces)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_entry>())).num_interfaces as *const _ as usize
        },
        504usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(num_interfaces)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).traits as *const _ as usize },
        512usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(traits)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).num_traits as *const _ as usize },
        520usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(num_traits)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).trait_aliases as *const _ as usize },
        528usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(trait_aliases)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_class_entry>())).trait_precedences as *const _ as usize
        },
        536usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(trait_precedences)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).info as *const _ as usize },
        544usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_class_entry),
            "::",
            stringify!(info)
        )
    );
}
pub type zend_stream_fsizer_t = ::std::option::Option<
    unsafe extern "C" fn(
        handle: *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> size_t,
>;
pub type zend_stream_reader_t = ::std::option::Option<
    unsafe extern "C" fn(
        handle: *mut ::std::os::raw::c_void,
        buf: *mut ::std::os::raw::c_char,
        len: size_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> size_t,
>;
pub type zend_stream_closer_t = ::std::option::Option<
    unsafe extern "C" fn(
        handle: *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ),
>;
pub const zend_stream_type_ZEND_HANDLE_FILENAME: zend_stream_type = 0;
pub const zend_stream_type_ZEND_HANDLE_FD: zend_stream_type = 1;
pub const zend_stream_type_ZEND_HANDLE_FP: zend_stream_type = 2;
pub const zend_stream_type_ZEND_HANDLE_STREAM: zend_stream_type = 3;
pub const zend_stream_type_ZEND_HANDLE_MAPPED: zend_stream_type = 4;
pub type zend_stream_type = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_mmap {
    pub len: size_t,
    pub pos: size_t,
    pub map: *mut ::std::os::raw::c_void,
    pub buf: *mut ::std::os::raw::c_char,
    pub old_handle: *mut ::std::os::raw::c_void,
    pub old_closer: zend_stream_closer_t,
}
#[test]
fn bindgen_test_layout__zend_mmap() {
    assert_eq!(
        ::std::mem::size_of::<_zend_mmap>(),
        48usize,
        concat!("Size of: ", stringify!(_zend_mmap))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_mmap>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_mmap))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_mmap>())).len as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_mmap),
            "::",
            stringify!(len)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_mmap>())).pos as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_mmap),
            "::",
            stringify!(pos)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_mmap>())).map as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_mmap),
            "::",
            stringify!(map)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_mmap>())).buf as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_mmap),
            "::",
            stringify!(buf)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_mmap>())).old_handle as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_mmap),
            "::",
            stringify!(old_handle)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_mmap>())).old_closer as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_mmap),
            "::",
            stringify!(old_closer)
        )
    );
}
pub type zend_mmap = _zend_mmap;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_stream {
    pub handle: *mut ::std::os::raw::c_void,
    pub isatty: ::std::os::raw::c_int,
    pub mmap: zend_mmap,
    pub reader: zend_stream_reader_t,
    pub fsizer: zend_stream_fsizer_t,
    pub closer: zend_stream_closer_t,
}
#[test]
fn bindgen_test_layout__zend_stream() {
    assert_eq!(
        ::std::mem::size_of::<_zend_stream>(),
        88usize,
        concat!("Size of: ", stringify!(_zend_stream))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_stream>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_stream))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_stream>())).handle as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_stream),
            "::",
            stringify!(handle)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_stream>())).isatty as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_stream),
            "::",
            stringify!(isatty)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_stream>())).mmap as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_stream),
            "::",
            stringify!(mmap)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_stream>())).reader as *const _ as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_stream),
            "::",
            stringify!(reader)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_stream>())).fsizer as *const _ as usize },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_stream),
            "::",
            stringify!(fsizer)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_stream>())).closer as *const _ as usize },
        80usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_stream),
            "::",
            stringify!(closer)
        )
    );
}
pub type zend_stream = _zend_stream;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_file_handle {
    pub type_: zend_stream_type,
    pub filename: *const ::std::os::raw::c_char,
    pub opened_path: *mut ::std::os::raw::c_char,
    pub handle: _zend_file_handle__bindgen_ty_1,
    pub free_filename: zend_bool,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _zend_file_handle__bindgen_ty_1 {
    pub fd: ::std::os::raw::c_int,
    pub fp: *mut FILE,
    pub stream: zend_stream,
    _bindgen_union_align: [u64; 11usize],
}
#[test]
fn bindgen_test_layout__zend_file_handle__bindgen_ty_1() {
    assert_eq!(
        ::std::mem::size_of::<_zend_file_handle__bindgen_ty_1>(),
        88usize,
        concat!("Size of: ", stringify!(_zend_file_handle__bindgen_ty_1))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_file_handle__bindgen_ty_1>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_file_handle__bindgen_ty_1))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_file_handle__bindgen_ty_1>())).fd as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_file_handle__bindgen_ty_1),
            "::",
            stringify!(fd)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_file_handle__bindgen_ty_1>())).fp as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_file_handle__bindgen_ty_1),
            "::",
            stringify!(fp)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_file_handle__bindgen_ty_1>())).stream as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_file_handle__bindgen_ty_1),
            "::",
            stringify!(stream)
        )
    );
}
#[test]
fn bindgen_test_layout__zend_file_handle() {
    assert_eq!(
        ::std::mem::size_of::<_zend_file_handle>(),
        120usize,
        concat!("Size of: ", stringify!(_zend_file_handle))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_file_handle>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_file_handle))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).type_ as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_file_handle),
            "::",
            stringify!(type_)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).filename as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_file_handle),
            "::",
            stringify!(filename)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).opened_path as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_file_handle),
            "::",
            stringify!(opened_path)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).handle as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_file_handle),
            "::",
            stringify!(handle)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).free_filename as *const _ as usize },
        112usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_file_handle),
            "::",
            stringify!(free_filename)
        )
    );
}
pub type zend_file_handle = _zend_file_handle;
extern "C" {
    pub fn zend_stream_open(
        filename: *const ::std::os::raw::c_char,
        handle: *mut zend_file_handle,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_stream_fixup(
        file_handle: *mut zend_file_handle,
        buf: *mut *mut ::std::os::raw::c_char,
        len: *mut size_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_file_handle_dtor(
        fh: *mut zend_file_handle,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_compare_file_handles(
        fh1: *mut zend_file_handle,
        fh2: *mut zend_file_handle,
    ) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_utility_functions {
    pub error_function: ::std::option::Option<
        unsafe extern "C" fn(
            type_: ::std::os::raw::c_int,
            error_filename: *const ::std::os::raw::c_char,
            error_lineno: uint,
            format: *const ::std::os::raw::c_char,
            args: *mut __va_list_tag,
        ),
    >,
    pub printf_function: ::std::option::Option<
        unsafe extern "C" fn(format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int,
    >,
    pub write_function: ::std::option::Option<
        unsafe extern "C" fn(
            str_: *const ::std::os::raw::c_char,
            str_length: uint,
        ) -> ::std::os::raw::c_int,
    >,
    pub fopen_function: ::std::option::Option<
        unsafe extern "C" fn(
            filename: *const ::std::os::raw::c_char,
            opened_path: *mut *mut ::std::os::raw::c_char,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> *mut FILE,
    >,
    pub message_handler: ::std::option::Option<
        unsafe extern "C" fn(
            message: ::std::os::raw::c_long,
            data: *const ::std::os::raw::c_void,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ),
    >,
    pub block_interruptions: ::std::option::Option<unsafe extern "C" fn()>,
    pub unblock_interruptions: ::std::option::Option<unsafe extern "C" fn()>,
    pub get_configuration_directive: ::std::option::Option<
        unsafe extern "C" fn(
            name: *const ::std::os::raw::c_char,
            name_length: uint,
            contents: *mut zval,
        ) -> ::std::os::raw::c_int,
    >,
    pub ticks_function: ::std::option::Option<unsafe extern "C" fn(ticks: ::std::os::raw::c_int)>,
    pub on_timeout: ::std::option::Option<
        unsafe extern "C" fn(
            seconds: ::std::os::raw::c_int,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ),
    >,
    pub stream_open_function: ::std::option::Option<
        unsafe extern "C" fn(
            filename: *const ::std::os::raw::c_char,
            handle: *mut zend_file_handle,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >,
    pub vspprintf_function: ::std::option::Option<
        unsafe extern "C" fn(
            pbuf: *mut *mut ::std::os::raw::c_char,
            max_len: size_t,
            format: *const ::std::os::raw::c_char,
            ap: *mut __va_list_tag,
        ) -> ::std::os::raw::c_int,
    >,
    pub getenv_function: ::std::option::Option<
        unsafe extern "C" fn(
            name: *mut ::std::os::raw::c_char,
            name_len: size_t,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> *mut ::std::os::raw::c_char,
    >,
    pub resolve_path_function: ::std::option::Option<
        unsafe extern "C" fn(
            filename: *const ::std::os::raw::c_char,
            filename_len: ::std::os::raw::c_int,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> *mut ::std::os::raw::c_char,
    >,
}
#[test]
fn bindgen_test_layout__zend_utility_functions() {
    assert_eq!(
        ::std::mem::size_of::<_zend_utility_functions>(),
        112usize,
        concat!("Size of: ", stringify!(_zend_utility_functions))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_utility_functions>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_utility_functions))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_utility_functions>())).error_function as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_utility_functions),
            "::",
            stringify!(error_function)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_utility_functions>())).printf_function as *const _ as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_utility_functions),
            "::",
            stringify!(printf_function)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_utility_functions>())).write_function as *const _ as usize
        },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_utility_functions),
            "::",
            stringify!(write_function)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_utility_functions>())).fopen_function as *const _ as usize
        },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_utility_functions),
            "::",
            stringify!(fopen_function)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_utility_functions>())).message_handler as *const _ as usize
        },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_utility_functions),
            "::",
            stringify!(message_handler)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_utility_functions>())).block_interruptions as *const _
                as usize
        },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_utility_functions),
            "::",
            stringify!(block_interruptions)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_utility_functions>())).unblock_interruptions as *const _
                as usize
        },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_utility_functions),
            "::",
            stringify!(unblock_interruptions)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_utility_functions>())).get_configuration_directive
                as *const _ as usize
        },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_utility_functions),
            "::",
            stringify!(get_configuration_directive)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_utility_functions>())).ticks_function as *const _ as usize
        },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_utility_functions),
            "::",
            stringify!(ticks_function)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_utility_functions>())).on_timeout as *const _ as usize
        },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_utility_functions),
            "::",
            stringify!(on_timeout)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_utility_functions>())).stream_open_function as *const _
                as usize
        },
        80usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_utility_functions),
            "::",
            stringify!(stream_open_function)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_utility_functions>())).vspprintf_function as *const _
                as usize
        },
        88usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_utility_functions),
            "::",
            stringify!(vspprintf_function)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_utility_functions>())).getenv_function as *const _ as usize
        },
        96usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_utility_functions),
            "::",
            stringify!(getenv_function)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_utility_functions>())).resolve_path_function as *const _
                as usize
        },
        104usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_utility_functions),
            "::",
            stringify!(resolve_path_function)
        )
    );
}
pub type zend_utility_functions = _zend_utility_functions;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_utility_values {
    pub import_use_extension: *mut ::std::os::raw::c_char,
    pub import_use_extension_length: uint,
    pub html_errors: zend_bool,
}
#[test]
fn bindgen_test_layout__zend_utility_values() {
    assert_eq!(
        ::std::mem::size_of::<_zend_utility_values>(),
        16usize,
        concat!("Size of: ", stringify!(_zend_utility_values))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_utility_values>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_utility_values))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_utility_values>())).import_use_extension as *const _
                as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_utility_values),
            "::",
            stringify!(import_use_extension)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_utility_values>())).import_use_extension_length as *const _
                as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_utility_values),
            "::",
            stringify!(import_use_extension_length)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_utility_values>())).html_errors as *const _ as usize
        },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_utility_values),
            "::",
            stringify!(html_errors)
        )
    );
}
pub type zend_utility_values = _zend_utility_values;
pub type zend_write_func_t = ::std::option::Option<
    unsafe extern "C" fn(
        str_: *const ::std::os::raw::c_char,
        str_length: uint,
    ) -> ::std::os::raw::c_int,
>;
extern "C" {
    pub fn zend_startup(
        utility_functions: *mut zend_utility_functions,
        extensions: *mut *mut ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_shutdown(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_register_standard_ini_entries(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_post_startup(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_set_utility_values(utility_values: *mut zend_utility_values);
}
extern "C" {
    pub fn _zend_bailout(filename: *mut ::std::os::raw::c_char, lineno: uint);
}
extern "C" {
    pub fn zend_make_printable_zval(
        expr: *mut zval,
        expr_copy: *mut zval,
        use_copy: *mut ::std::os::raw::c_int,
    );
}
extern "C" {
    pub fn zend_print_zval(expr: *mut zval, indent: ::std::os::raw::c_int)
        -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_print_zval_ex(
        write_func: zend_write_func_t,
        expr: *mut zval,
        indent: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_print_zval_r(
        expr: *mut zval,
        indent: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_print_flat_zval_r(expr: *mut zval, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_print_zval_r_ex(
        write_func: zend_write_func_t,
        expr: *mut zval,
        indent: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_output_debug_string(
        trigger_break: zend_bool,
        format: *const ::std::os::raw::c_char,
        ...
    );
}
extern "C" {
    pub fn zend_activate(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_deactivate(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_call_destructors(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_activate_modules(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_deactivate_modules(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_post_deactivate_modules(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub static mut zend_printf: ::std::option::Option<
        unsafe extern "C" fn(format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int,
    >;
}
extern "C" {
    pub static mut zend_write: zend_write_func_t;
}
extern "C" {
    pub static mut zend_fopen: ::std::option::Option<
        unsafe extern "C" fn(
            filename: *const ::std::os::raw::c_char,
            opened_path: *mut *mut ::std::os::raw::c_char,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> *mut FILE,
    >;
}
extern "C" {
    pub static mut zend_block_interruptions: ::std::option::Option<unsafe extern "C" fn()>;
}
extern "C" {
    pub static mut zend_unblock_interruptions: ::std::option::Option<unsafe extern "C" fn()>;
}
extern "C" {
    pub static mut zend_ticks_function:
        ::std::option::Option<unsafe extern "C" fn(ticks: ::std::os::raw::c_int)>;
}
extern "C" {
    pub static mut zend_error_cb: ::std::option::Option<
        unsafe extern "C" fn(
            type_: ::std::os::raw::c_int,
            error_filename: *const ::std::os::raw::c_char,
            error_lineno: uint,
            format: *const ::std::os::raw::c_char,
            args: *mut __va_list_tag,
        ),
    >;
}
extern "C" {
    pub static mut zend_on_timeout: ::std::option::Option<
        unsafe extern "C" fn(
            seconds: ::std::os::raw::c_int,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ),
    >;
}
extern "C" {
    pub static mut zend_stream_open_function: ::std::option::Option<
        unsafe extern "C" fn(
            filename: *const ::std::os::raw::c_char,
            handle: *mut zend_file_handle,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >;
}
extern "C" {
    pub static mut zend_vspprintf: ::std::option::Option<
        unsafe extern "C" fn(
            pbuf: *mut *mut ::std::os::raw::c_char,
            max_len: size_t,
            format: *const ::std::os::raw::c_char,
            ap: *mut __va_list_tag,
        ) -> ::std::os::raw::c_int,
    >;
}
extern "C" {
    pub static mut zend_getenv: ::std::option::Option<
        unsafe extern "C" fn(
            name: *mut ::std::os::raw::c_char,
            name_len: size_t,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> *mut ::std::os::raw::c_char,
    >;
}
extern "C" {
    pub static mut zend_resolve_path: ::std::option::Option<
        unsafe extern "C" fn(
            filename: *const ::std::os::raw::c_char,
            filename_len: ::std::os::raw::c_int,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> *mut ::std::os::raw::c_char,
    >;
}
extern "C" {
    pub fn zend_error(type_: ::std::os::raw::c_int, format: *const ::std::os::raw::c_char, ...);
}
extern "C" {
    pub fn zenderror(error: *const ::std::os::raw::c_char);
}
extern "C" {
    pub static mut zend_standard_class_def: *mut zend_class_entry;
}
extern "C" {
    pub static mut zend_uv: zend_utility_values;
}
extern "C" {
    pub static mut zval_used_for_init: zval;
}
extern "C" {
    pub fn zend_message_dispatcher(
        message: ::std::os::raw::c_long,
        data: *const ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_get_configuration_directive(
        name: *const ::std::os::raw::c_char,
        name_length: uint,
        contents: *mut zval,
    ) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _gc_root_buffer {
    pub prev: *mut _gc_root_buffer,
    pub next: *mut _gc_root_buffer,
    pub handle: zend_object_handle,
    pub u: _gc_root_buffer__bindgen_ty_1,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _gc_root_buffer__bindgen_ty_1 {
    pub pz: *mut zval,
    pub handlers: *const zend_object_handlers,
    _bindgen_union_align: u64,
}
#[test]
fn bindgen_test_layout__gc_root_buffer__bindgen_ty_1() {
    assert_eq!(
        ::std::mem::size_of::<_gc_root_buffer__bindgen_ty_1>(),
        8usize,
        concat!("Size of: ", stringify!(_gc_root_buffer__bindgen_ty_1))
    );
    assert_eq!(
        ::std::mem::align_of::<_gc_root_buffer__bindgen_ty_1>(),
        8usize,
        concat!("Alignment of ", stringify!(_gc_root_buffer__bindgen_ty_1))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_gc_root_buffer__bindgen_ty_1>())).pz as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_gc_root_buffer__bindgen_ty_1),
            "::",
            stringify!(pz)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_gc_root_buffer__bindgen_ty_1>())).handlers as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_gc_root_buffer__bindgen_ty_1),
            "::",
            stringify!(handlers)
        )
    );
}
#[test]
fn bindgen_test_layout__gc_root_buffer() {
    assert_eq!(
        ::std::mem::size_of::<_gc_root_buffer>(),
        32usize,
        concat!("Size of: ", stringify!(_gc_root_buffer))
    );
    assert_eq!(
        ::std::mem::align_of::<_gc_root_buffer>(),
        8usize,
        concat!("Alignment of ", stringify!(_gc_root_buffer))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_gc_root_buffer>())).prev as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_gc_root_buffer),
            "::",
            stringify!(prev)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_gc_root_buffer>())).next as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_gc_root_buffer),
            "::",
            stringify!(next)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_gc_root_buffer>())).handle as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_gc_root_buffer),
            "::",
            stringify!(handle)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_gc_root_buffer>())).u as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_gc_root_buffer),
            "::",
            stringify!(u)
        )
    );
}
pub type gc_root_buffer = _gc_root_buffer;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zval_gc_info {
    pub z: zval,
    pub u: _zval_gc_info__bindgen_ty_1,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _zval_gc_info__bindgen_ty_1 {
    pub buffered: *mut gc_root_buffer,
    pub next: *mut _zval_gc_info,
    _bindgen_union_align: u64,
}
#[test]
fn bindgen_test_layout__zval_gc_info__bindgen_ty_1() {
    assert_eq!(
        ::std::mem::size_of::<_zval_gc_info__bindgen_ty_1>(),
        8usize,
        concat!("Size of: ", stringify!(_zval_gc_info__bindgen_ty_1))
    );
    assert_eq!(
        ::std::mem::align_of::<_zval_gc_info__bindgen_ty_1>(),
        8usize,
        concat!("Alignment of ", stringify!(_zval_gc_info__bindgen_ty_1))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zval_gc_info__bindgen_ty_1>())).buffered as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zval_gc_info__bindgen_ty_1),
            "::",
            stringify!(buffered)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zval_gc_info__bindgen_ty_1>())).next as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zval_gc_info__bindgen_ty_1),
            "::",
            stringify!(next)
        )
    );
}
#[test]
fn bindgen_test_layout__zval_gc_info() {
    assert_eq!(
        ::std::mem::size_of::<_zval_gc_info>(),
        32usize,
        concat!("Size of: ", stringify!(_zval_gc_info))
    );
    assert_eq!(
        ::std::mem::align_of::<_zval_gc_info>(),
        8usize,
        concat!("Alignment of ", stringify!(_zval_gc_info))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zval_gc_info>())).z as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zval_gc_info),
            "::",
            stringify!(z)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zval_gc_info>())).u as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zval_gc_info),
            "::",
            stringify!(u)
        )
    );
}
pub type zval_gc_info = _zval_gc_info;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_gc_globals {
    pub gc_enabled: zend_bool,
    pub gc_active: zend_bool,
    pub buf: *mut gc_root_buffer,
    pub roots: gc_root_buffer,
    pub unused: *mut gc_root_buffer,
    pub first_unused: *mut gc_root_buffer,
    pub last_unused: *mut gc_root_buffer,
    pub zval_to_free: *mut zval_gc_info,
    pub free_list: *mut zval_gc_info,
    pub next_to_free: *mut zval_gc_info,
    pub gc_runs: zend_uint,
    pub collected: zend_uint,
}
#[test]
fn bindgen_test_layout__zend_gc_globals() {
    assert_eq!(
        ::std::mem::size_of::<_zend_gc_globals>(),
        104usize,
        concat!("Size of: ", stringify!(_zend_gc_globals))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_gc_globals>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_gc_globals))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).gc_enabled as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_gc_globals),
            "::",
            stringify!(gc_enabled)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).gc_active as *const _ as usize },
        1usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_gc_globals),
            "::",
            stringify!(gc_active)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).buf as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_gc_globals),
            "::",
            stringify!(buf)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).roots as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_gc_globals),
            "::",
            stringify!(roots)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).unused as *const _ as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_gc_globals),
            "::",
            stringify!(unused)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).first_unused as *const _ as usize },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_gc_globals),
            "::",
            stringify!(first_unused)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).last_unused as *const _ as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_gc_globals),
            "::",
            stringify!(last_unused)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).zval_to_free as *const _ as usize },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_gc_globals),
            "::",
            stringify!(zval_to_free)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).free_list as *const _ as usize },
        80usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_gc_globals),
            "::",
            stringify!(free_list)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).next_to_free as *const _ as usize },
        88usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_gc_globals),
            "::",
            stringify!(next_to_free)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).gc_runs as *const _ as usize },
        96usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_gc_globals),
            "::",
            stringify!(gc_runs)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).collected as *const _ as usize },
        100usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_gc_globals),
            "::",
            stringify!(collected)
        )
    );
}
pub type zend_gc_globals = _zend_gc_globals;
extern "C" {
    pub static mut gc_globals_id: ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_freedtoa(s: *mut ::std::os::raw::c_char);
}
extern "C" {
    pub fn zend_dtoa(
        _d: f64,
        mode: ::std::os::raw::c_int,
        ndigits: ::std::os::raw::c_int,
        decpt: *mut ::std::os::raw::c_int,
        sign: *mut ::std::os::raw::c_int,
        rve: *mut *mut ::std::os::raw::c_char,
    ) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn zend_strtod(
        s00: *const ::std::os::raw::c_char,
        se: *mut *const ::std::os::raw::c_char,
    ) -> f64;
}
extern "C" {
    pub fn zend_hex_strtod(
        str_: *const ::std::os::raw::c_char,
        endptr: *mut *const ::std::os::raw::c_char,
    ) -> f64;
}
extern "C" {
    pub fn zend_oct_strtod(
        str_: *const ::std::os::raw::c_char,
        endptr: *mut *const ::std::os::raw::c_char,
    ) -> f64;
}
extern "C" {
    pub fn zend_bin_strtod(
        str_: *const ::std::os::raw::c_char,
        endptr: *mut *const ::std::os::raw::c_char,
    ) -> f64;
}
extern "C" {
    pub fn zend_startup_strtod() -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_shutdown_strtod() -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_string_to_double(number: *const ::std::os::raw::c_char, length: zend_uint) -> f64;
}
extern "C" {
    pub fn zend_str_tolower(str_: *mut ::std::os::raw::c_char, length: ::std::os::raw::c_uint);
}
extern "C" {
    pub fn zend_str_tolower_copy(
        dest: *mut ::std::os::raw::c_char,
        source: *const ::std::os::raw::c_char,
        length: ::std::os::raw::c_uint,
    ) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn zend_str_tolower_dup(
        source: *const ::std::os::raw::c_char,
        length: ::std::os::raw::c_uint,
    ) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn zend_binary_zval_strcmp(s1: *mut zval, s2: *mut zval) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_binary_zval_strncmp(
        s1: *mut zval,
        s2: *mut zval,
        s3: *mut zval,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_binary_zval_strcasecmp(s1: *mut zval, s2: *mut zval) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_binary_zval_strncasecmp(
        s1: *mut zval,
        s2: *mut zval,
        s3: *mut zval,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_binary_strcmp(
        s1: *const ::std::os::raw::c_char,
        len1: uint,
        s2: *const ::std::os::raw::c_char,
        len2: uint,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_binary_strncmp(
        s1: *const ::std::os::raw::c_char,
        len1: uint,
        s2: *const ::std::os::raw::c_char,
        len2: uint,
        length: uint,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_binary_strcasecmp(
        s1: *const ::std::os::raw::c_char,
        len1: uint,
        s2: *const ::std::os::raw::c_char,
        len2: uint,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_binary_strncasecmp(
        s1: *const ::std::os::raw::c_char,
        len1: uint,
        s2: *const ::std::os::raw::c_char,
        len2: uint,
        length: uint,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_binary_strncasecmp_l(
        s1: *const ::std::os::raw::c_char,
        len1: uint,
        s2: *const ::std::os::raw::c_char,
        len2: uint,
        length: uint,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zendi_smart_strcmp(result: *mut zval, s1: *mut zval, s2: *mut zval);
}
extern "C" {
    pub fn zend_compare_symbol_tables(
        result: *mut zval,
        ht1: *mut HashTable,
        ht2: *mut HashTable,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_compare_arrays(
        result: *mut zval,
        a1: *mut zval,
        a2: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_compare_objects(
        result: *mut zval,
        o1: *mut zval,
        o2: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_atoi(
        str_: *const ::std::os::raw::c_char,
        str_len: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_atol(
        str_: *const ::std::os::raw::c_char,
        str_len: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_long;
}
extern "C" {
    pub fn zend_locale_sprintf_double(op: *mut zval);
}
extern "C" {
    pub fn zend_print_variable(var: *mut zval) -> ::std::os::raw::c_int;
}
pub const zend_error_handling_t_EH_NORMAL: zend_error_handling_t = 0;
pub const zend_error_handling_t_EH_SUPPRESS: zend_error_handling_t = 1;
pub const zend_error_handling_t_EH_THROW: zend_error_handling_t = 2;
pub type zend_error_handling_t = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct zend_error_handling {
    pub handling: zend_error_handling_t,
    pub exception: *mut zend_class_entry,
    pub user_handler: *mut zval,
}
#[test]
fn bindgen_test_layout_zend_error_handling() {
    assert_eq!(
        ::std::mem::size_of::<zend_error_handling>(),
        24usize,
        concat!("Size of: ", stringify!(zend_error_handling))
    );
    assert_eq!(
        ::std::mem::align_of::<zend_error_handling>(),
        8usize,
        concat!("Alignment of ", stringify!(zend_error_handling))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<zend_error_handling>())).handling as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(zend_error_handling),
            "::",
            stringify!(handling)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<zend_error_handling>())).exception as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(zend_error_handling),
            "::",
            stringify!(exception)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<zend_error_handling>())).user_handler as *const _ as usize
        },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(zend_error_handling),
            "::",
            stringify!(user_handler)
        )
    );
}
extern "C" {
    pub fn zend_save_error_handling(
        current: *mut zend_error_handling,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_replace_error_handling(
        error_handling: zend_error_handling_t,
        exception_class: *mut zend_class_entry,
        current: *mut zend_error_handling,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_restore_error_handling(
        saved: *mut zend_error_handling,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
pub type compare_r_func_t = ::std::option::Option<
    unsafe extern "C" fn(
        arg1: *const ::std::os::raw::c_void,
        arg2: *const ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        arg3: *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int,
>;
extern "C" {
    pub fn zend_qsort(
        base: *mut ::std::os::raw::c_void,
        nmemb: size_t,
        siz: size_t,
        compare: compare_func_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_qsort_r(
        base: *mut ::std::os::raw::c_void,
        nmemb: size_t,
        siz: size_t,
        compare: compare_r_func_t,
        arg: *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
pub type zend_op_array = _zend_op_array;
pub type zend_op = _zend_op;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_compiler_context {
    pub opcodes_size: zend_uint,
    pub vars_size: ::std::os::raw::c_int,
    pub literals_size: ::std::os::raw::c_int,
    pub current_brk_cont: ::std::os::raw::c_int,
    pub backpatch_count: ::std::os::raw::c_int,
    pub nested_calls: ::std::os::raw::c_int,
    pub used_stack: ::std::os::raw::c_int,
    pub in_finally: ::std::os::raw::c_int,
    pub labels: *mut HashTable,
}
#[test]
fn bindgen_test_layout__zend_compiler_context() {
    assert_eq!(
        ::std::mem::size_of::<_zend_compiler_context>(),
        40usize,
        concat!("Size of: ", stringify!(_zend_compiler_context))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_compiler_context>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_compiler_context))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_context>())).opcodes_size as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_context),
            "::",
            stringify!(opcodes_size)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_context>())).vars_size as *const _ as usize
        },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_context),
            "::",
            stringify!(vars_size)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_context>())).literals_size as *const _ as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_context),
            "::",
            stringify!(literals_size)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_context>())).current_brk_cont as *const _ as usize
        },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_context),
            "::",
            stringify!(current_brk_cont)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_context>())).backpatch_count as *const _ as usize
        },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_context),
            "::",
            stringify!(backpatch_count)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_context>())).nested_calls as *const _ as usize
        },
        20usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_context),
            "::",
            stringify!(nested_calls)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_context>())).used_stack as *const _ as usize
        },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_context),
            "::",
            stringify!(used_stack)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_context>())).in_finally as *const _ as usize
        },
        28usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_context),
            "::",
            stringify!(in_finally)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_compiler_context>())).labels as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_context),
            "::",
            stringify!(labels)
        )
    );
}
pub type zend_compiler_context = _zend_compiler_context;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_literal {
    pub constant: zval,
    pub hash_value: zend_ulong,
    pub cache_slot: zend_uint,
}
#[test]
fn bindgen_test_layout__zend_literal() {
    assert_eq!(
        ::std::mem::size_of::<_zend_literal>(),
        40usize,
        concat!("Size of: ", stringify!(_zend_literal))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_literal>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_literal))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_literal>())).constant as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_literal),
            "::",
            stringify!(constant)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_literal>())).hash_value as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_literal),
            "::",
            stringify!(hash_value)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_literal>())).cache_slot as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_literal),
            "::",
            stringify!(cache_slot)
        )
    );
}
pub type zend_literal = _zend_literal;
#[repr(C)]
#[derive(Copy, Clone)]
pub union _znode_op {
    pub constant: zend_uint,
    pub var: zend_uint,
    pub num: zend_uint,
    pub hash: zend_ulong,
    pub opline_num: zend_uint,
    pub jmp_addr: *mut zend_op,
    pub zv: *mut zval,
    pub literal: *mut zend_literal,
    pub ptr: *mut ::std::os::raw::c_void,
    _bindgen_union_align: u64,
}
#[test]
fn bindgen_test_layout__znode_op() {
    assert_eq!(
        ::std::mem::size_of::<_znode_op>(),
        8usize,
        concat!("Size of: ", stringify!(_znode_op))
    );
    assert_eq!(
        ::std::mem::align_of::<_znode_op>(),
        8usize,
        concat!("Alignment of ", stringify!(_znode_op))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_znode_op>())).constant as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_znode_op),
            "::",
            stringify!(constant)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_znode_op>())).var as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_znode_op),
            "::",
            stringify!(var)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_znode_op>())).num as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_znode_op),
            "::",
            stringify!(num)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_znode_op>())).hash as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_znode_op),
            "::",
            stringify!(hash)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_znode_op>())).opline_num as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_znode_op),
            "::",
            stringify!(opline_num)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_znode_op>())).jmp_addr as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_znode_op),
            "::",
            stringify!(jmp_addr)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_znode_op>())).zv as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_znode_op),
            "::",
            stringify!(zv)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_znode_op>())).literal as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_znode_op),
            "::",
            stringify!(literal)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_znode_op>())).ptr as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_znode_op),
            "::",
            stringify!(ptr)
        )
    );
}
pub type znode_op = _znode_op;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _znode {
    pub op_type: ::std::os::raw::c_int,
    pub u: _znode__bindgen_ty_1,
    pub EA: zend_uint,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _znode__bindgen_ty_1 {
    pub op: znode_op,
    pub constant: zval,
    pub op_array: *mut zend_op_array,
    pub ast: *mut zend_ast,
    _bindgen_union_align: [u64; 3usize],
}
#[test]
fn bindgen_test_layout__znode__bindgen_ty_1() {
    assert_eq!(
        ::std::mem::size_of::<_znode__bindgen_ty_1>(),
        24usize,
        concat!("Size of: ", stringify!(_znode__bindgen_ty_1))
    );
    assert_eq!(
        ::std::mem::align_of::<_znode__bindgen_ty_1>(),
        8usize,
        concat!("Alignment of ", stringify!(_znode__bindgen_ty_1))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_znode__bindgen_ty_1>())).op as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_znode__bindgen_ty_1),
            "::",
            stringify!(op)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_znode__bindgen_ty_1>())).constant as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_znode__bindgen_ty_1),
            "::",
            stringify!(constant)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_znode__bindgen_ty_1>())).op_array as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_znode__bindgen_ty_1),
            "::",
            stringify!(op_array)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_znode__bindgen_ty_1>())).ast as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_znode__bindgen_ty_1),
            "::",
            stringify!(ast)
        )
    );
}
#[test]
fn bindgen_test_layout__znode() {
    assert_eq!(
        ::std::mem::size_of::<_znode>(),
        40usize,
        concat!("Size of: ", stringify!(_znode))
    );
    assert_eq!(
        ::std::mem::align_of::<_znode>(),
        8usize,
        concat!("Alignment of ", stringify!(_znode))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_znode>())).op_type as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_znode),
            "::",
            stringify!(op_type)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_znode>())).u as *const _ as usize },
        8usize,
        concat!("Offset of field: ", stringify!(_znode), "::", stringify!(u))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_znode>())).EA as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_znode),
            "::",
            stringify!(EA)
        )
    );
}
pub type znode = _znode;
pub type zend_execute_data = _zend_execute_data;
pub type user_opcode_handler_t = ::std::option::Option<
    unsafe extern "C" fn(
        execute_data: *mut zend_execute_data,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int,
>;
pub type opcode_handler_t = ::std::option::Option<
    unsafe extern "C" fn(
        execute_data: *mut zend_execute_data,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int,
>;
extern "C" {
    pub static mut zend_opcode_handlers: *mut opcode_handler_t;
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_op {
    pub handler: opcode_handler_t,
    pub op1: znode_op,
    pub op2: znode_op,
    pub result: znode_op,
    pub extended_value: ulong,
    pub lineno: uint,
    pub opcode: zend_uchar,
    pub op1_type: zend_uchar,
    pub op2_type: zend_uchar,
    pub result_type: zend_uchar,
}
#[test]
fn bindgen_test_layout__zend_op() {
    assert_eq!(
        ::std::mem::size_of::<_zend_op>(),
        48usize,
        concat!("Size of: ", stringify!(_zend_op))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_op>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_op))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op>())).handler as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op),
            "::",
            stringify!(handler)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op>())).op1 as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op),
            "::",
            stringify!(op1)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op>())).op2 as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op),
            "::",
            stringify!(op2)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op>())).result as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op),
            "::",
            stringify!(result)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op>())).extended_value as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op),
            "::",
            stringify!(extended_value)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op>())).lineno as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op),
            "::",
            stringify!(lineno)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op>())).opcode as *const _ as usize },
        44usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op),
            "::",
            stringify!(opcode)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op>())).op1_type as *const _ as usize },
        45usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op),
            "::",
            stringify!(op1_type)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op>())).op2_type as *const _ as usize },
        46usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op),
            "::",
            stringify!(op2_type)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op>())).result_type as *const _ as usize },
        47usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op),
            "::",
            stringify!(result_type)
        )
    );
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_brk_cont_element {
    pub start: ::std::os::raw::c_int,
    pub cont: ::std::os::raw::c_int,
    pub brk: ::std::os::raw::c_int,
    pub parent: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout__zend_brk_cont_element() {
    assert_eq!(
        ::std::mem::size_of::<_zend_brk_cont_element>(),
        16usize,
        concat!("Size of: ", stringify!(_zend_brk_cont_element))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_brk_cont_element>(),
        4usize,
        concat!("Alignment of ", stringify!(_zend_brk_cont_element))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_brk_cont_element>())).start as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_brk_cont_element),
            "::",
            stringify!(start)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_brk_cont_element>())).cont as *const _ as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_brk_cont_element),
            "::",
            stringify!(cont)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_brk_cont_element>())).brk as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_brk_cont_element),
            "::",
            stringify!(brk)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_brk_cont_element>())).parent as *const _ as usize },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_brk_cont_element),
            "::",
            stringify!(parent)
        )
    );
}
pub type zend_brk_cont_element = _zend_brk_cont_element;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_label {
    pub brk_cont: ::std::os::raw::c_int,
    pub opline_num: zend_uint,
}
#[test]
fn bindgen_test_layout__zend_label() {
    assert_eq!(
        ::std::mem::size_of::<_zend_label>(),
        8usize,
        concat!("Size of: ", stringify!(_zend_label))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_label>(),
        4usize,
        concat!("Alignment of ", stringify!(_zend_label))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_label>())).brk_cont as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_label),
            "::",
            stringify!(brk_cont)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_label>())).opline_num as *const _ as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_label),
            "::",
            stringify!(opline_num)
        )
    );
}
pub type zend_label = _zend_label;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_try_catch_element {
    pub try_op: zend_uint,
    pub catch_op: zend_uint,
    pub finally_op: zend_uint,
    pub finally_end: zend_uint,
}
#[test]
fn bindgen_test_layout__zend_try_catch_element() {
    assert_eq!(
        ::std::mem::size_of::<_zend_try_catch_element>(),
        16usize,
        concat!("Size of: ", stringify!(_zend_try_catch_element))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_try_catch_element>(),
        4usize,
        concat!("Alignment of ", stringify!(_zend_try_catch_element))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_try_catch_element>())).try_op as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_try_catch_element),
            "::",
            stringify!(try_op)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_try_catch_element>())).catch_op as *const _ as usize
        },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_try_catch_element),
            "::",
            stringify!(catch_op)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_try_catch_element>())).finally_op as *const _ as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_try_catch_element),
            "::",
            stringify!(finally_op)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_try_catch_element>())).finally_end as *const _ as usize
        },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_try_catch_element),
            "::",
            stringify!(finally_end)
        )
    );
}
pub type zend_try_catch_element = _zend_try_catch_element;
extern "C" {
    pub fn zend_visibility_string(fn_flags: zend_uint) -> *mut ::std::os::raw::c_char;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_property_info {
    pub flags: zend_uint,
    pub name: *const ::std::os::raw::c_char,
    pub name_length: ::std::os::raw::c_int,
    pub h: ulong,
    pub offset: ::std::os::raw::c_int,
    pub doc_comment: *const ::std::os::raw::c_char,
    pub doc_comment_len: ::std::os::raw::c_int,
    pub ce: *mut zend_class_entry,
}
#[test]
fn bindgen_test_layout__zend_property_info() {
    assert_eq!(
        ::std::mem::size_of::<_zend_property_info>(),
        64usize,
        concat!("Size of: ", stringify!(_zend_property_info))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_property_info>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_property_info))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).flags as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_property_info),
            "::",
            stringify!(flags)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).name as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_property_info),
            "::",
            stringify!(name)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).name_length as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_property_info),
            "::",
            stringify!(name_length)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).h as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_property_info),
            "::",
            stringify!(h)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).offset as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_property_info),
            "::",
            stringify!(offset)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).doc_comment as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_property_info),
            "::",
            stringify!(doc_comment)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_property_info>())).doc_comment_len as *const _ as usize
        },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_property_info),
            "::",
            stringify!(doc_comment_len)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).ce as *const _ as usize },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_property_info),
            "::",
            stringify!(ce)
        )
    );
}
pub type zend_property_info = _zend_property_info;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_arg_info {
    pub name: *const ::std::os::raw::c_char,
    pub name_len: zend_uint,
    pub class_name: *const ::std::os::raw::c_char,
    pub class_name_len: zend_uint,
    pub type_hint: zend_uchar,
    pub pass_by_reference: zend_uchar,
    pub allow_null: zend_bool,
    pub is_variadic: zend_bool,
}
#[test]
fn bindgen_test_layout__zend_arg_info() {
    assert_eq!(
        ::std::mem::size_of::<_zend_arg_info>(),
        32usize,
        concat!("Size of: ", stringify!(_zend_arg_info))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_arg_info>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_arg_info))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_arg_info>())).name as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_arg_info),
            "::",
            stringify!(name)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_arg_info>())).name_len as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_arg_info),
            "::",
            stringify!(name_len)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_arg_info>())).class_name as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_arg_info),
            "::",
            stringify!(class_name)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_arg_info>())).class_name_len as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_arg_info),
            "::",
            stringify!(class_name_len)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_arg_info>())).type_hint as *const _ as usize },
        28usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_arg_info),
            "::",
            stringify!(type_hint)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_arg_info>())).pass_by_reference as *const _ as usize
        },
        29usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_arg_info),
            "::",
            stringify!(pass_by_reference)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_arg_info>())).allow_null as *const _ as usize },
        30usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_arg_info),
            "::",
            stringify!(allow_null)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_arg_info>())).is_variadic as *const _ as usize },
        31usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_arg_info),
            "::",
            stringify!(is_variadic)
        )
    );
}
pub type zend_arg_info = _zend_arg_info;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_internal_function_info {
    pub _name: *const ::std::os::raw::c_char,
    pub _name_len: zend_uint,
    pub _class_name: *const ::std::os::raw::c_char,
    pub required_num_args: zend_uint,
    pub _type_hint: zend_uchar,
    pub return_reference: zend_bool,
    pub _allow_null: zend_bool,
    pub _is_variadic: zend_bool,
}
#[test]
fn bindgen_test_layout__zend_internal_function_info() {
    assert_eq!(
        ::std::mem::size_of::<_zend_internal_function_info>(),
        32usize,
        concat!("Size of: ", stringify!(_zend_internal_function_info))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_internal_function_info>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_internal_function_info))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_internal_function_info>()))._name as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_internal_function_info),
            "::",
            stringify!(_name)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_internal_function_info>()))._name_len as *const _ as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_internal_function_info),
            "::",
            stringify!(_name_len)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_internal_function_info>()))._class_name as *const _
                as usize
        },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_internal_function_info),
            "::",
            stringify!(_class_name)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_internal_function_info>())).required_num_args as *const _
                as usize
        },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_internal_function_info),
            "::",
            stringify!(required_num_args)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_internal_function_info>()))._type_hint as *const _ as usize
        },
        28usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_internal_function_info),
            "::",
            stringify!(_type_hint)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_internal_function_info>())).return_reference as *const _
                as usize
        },
        29usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_internal_function_info),
            "::",
            stringify!(return_reference)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_internal_function_info>()))._allow_null as *const _
                as usize
        },
        30usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_internal_function_info),
            "::",
            stringify!(_allow_null)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_internal_function_info>()))._is_variadic as *const _
                as usize
        },
        31usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_internal_function_info),
            "::",
            stringify!(_is_variadic)
        )
    );
}
pub type zend_internal_function_info = _zend_internal_function_info;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_compiled_variable {
    pub name: *const ::std::os::raw::c_char,
    pub name_len: ::std::os::raw::c_int,
    pub hash_value: ulong,
}
#[test]
fn bindgen_test_layout__zend_compiled_variable() {
    assert_eq!(
        ::std::mem::size_of::<_zend_compiled_variable>(),
        24usize,
        concat!("Size of: ", stringify!(_zend_compiled_variable))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_compiled_variable>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_compiled_variable))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_compiled_variable>())).name as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiled_variable),
            "::",
            stringify!(name)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiled_variable>())).name_len as *const _ as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiled_variable),
            "::",
            stringify!(name_len)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiled_variable>())).hash_value as *const _ as usize
        },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiled_variable),
            "::",
            stringify!(hash_value)
        )
    );
}
pub type zend_compiled_variable = _zend_compiled_variable;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_op_array {
    pub type_: zend_uchar,
    pub function_name: *const ::std::os::raw::c_char,
    pub scope: *mut zend_class_entry,
    pub fn_flags: zend_uint,
    pub prototype: *mut _zend_function,
    pub num_args: zend_uint,
    pub required_num_args: zend_uint,
    pub arg_info: *mut zend_arg_info,
    pub refcount: *mut zend_uint,
    pub opcodes: *mut zend_op,
    pub last: zend_uint,
    pub vars: *mut zend_compiled_variable,
    pub last_var: ::std::os::raw::c_int,
    pub T: zend_uint,
    pub nested_calls: zend_uint,
    pub used_stack: zend_uint,
    pub brk_cont_array: *mut zend_brk_cont_element,
    pub last_brk_cont: ::std::os::raw::c_int,
    pub try_catch_array: *mut zend_try_catch_element,
    pub last_try_catch: ::std::os::raw::c_int,
    pub has_finally_block: zend_bool,
    pub static_variables: *mut HashTable,
    pub this_var: zend_uint,
    pub filename: *const ::std::os::raw::c_char,
    pub line_start: zend_uint,
    pub line_end: zend_uint,
    pub doc_comment: *const ::std::os::raw::c_char,
    pub doc_comment_len: zend_uint,
    pub early_binding: zend_uint,
    pub literals: *mut zend_literal,
    pub last_literal: ::std::os::raw::c_int,
    pub run_time_cache: *mut *mut ::std::os::raw::c_void,
    pub last_cache_slot: ::std::os::raw::c_int,
    pub reserved: [*mut ::std::os::raw::c_void; 4usize],
}
#[test]
fn bindgen_test_layout__zend_op_array() {
    assert_eq!(
        ::std::mem::size_of::<_zend_op_array>(),
        248usize,
        concat!("Size of: ", stringify!(_zend_op_array))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_op_array>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_op_array))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).type_ as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(type_)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).function_name as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(function_name)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).scope as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(scope)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).fn_flags as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(fn_flags)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).prototype as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(prototype)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).num_args as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(num_args)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_op_array>())).required_num_args as *const _ as usize
        },
        44usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(required_num_args)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).arg_info as *const _ as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(arg_info)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).refcount as *const _ as usize },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(refcount)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).opcodes as *const _ as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(opcodes)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last as *const _ as usize },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(last)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).vars as *const _ as usize },
        80usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(vars)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last_var as *const _ as usize },
        88usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(last_var)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).T as *const _ as usize },
        92usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(T)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).nested_calls as *const _ as usize },
        96usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(nested_calls)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).used_stack as *const _ as usize },
        100usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(used_stack)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).brk_cont_array as *const _ as usize },
        104usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(brk_cont_array)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last_brk_cont as *const _ as usize },
        112usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(last_brk_cont)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).try_catch_array as *const _ as usize },
        120usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(try_catch_array)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last_try_catch as *const _ as usize },
        128usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(last_try_catch)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_op_array>())).has_finally_block as *const _ as usize
        },
        132usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(has_finally_block)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).static_variables as *const _ as usize },
        136usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(static_variables)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).this_var as *const _ as usize },
        144usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(this_var)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).filename as *const _ as usize },
        152usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(filename)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).line_start as *const _ as usize },
        160usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(line_start)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).line_end as *const _ as usize },
        164usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(line_end)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).doc_comment as *const _ as usize },
        168usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(doc_comment)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).doc_comment_len as *const _ as usize },
        176usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(doc_comment_len)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).early_binding as *const _ as usize },
        180usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(early_binding)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).literals as *const _ as usize },
        184usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(literals)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last_literal as *const _ as usize },
        192usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(last_literal)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).run_time_cache as *const _ as usize },
        200usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(run_time_cache)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last_cache_slot as *const _ as usize },
        208usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(last_cache_slot)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).reserved as *const _ as usize },
        216usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_op_array),
            "::",
            stringify!(reserved)
        )
    );
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_internal_function {
    pub type_: zend_uchar,
    pub function_name: *const ::std::os::raw::c_char,
    pub scope: *mut zend_class_entry,
    pub fn_flags: zend_uint,
    pub prototype: *mut _zend_function,
    pub num_args: zend_uint,
    pub required_num_args: zend_uint,
    pub arg_info: *mut zend_arg_info,
    pub handler: ::std::option::Option<
        unsafe extern "C" fn(
            ht: ::std::os::raw::c_int,
            return_value: *mut zval,
            return_value_ptr: *mut *mut zval,
            this_ptr: *mut zval,
            return_value_used: ::std::os::raw::c_int,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ),
    >,
    pub module: *mut _zend_module_entry,
}
#[test]
fn bindgen_test_layout__zend_internal_function() {
    assert_eq!(
        ::std::mem::size_of::<_zend_internal_function>(),
        72usize,
        concat!("Size of: ", stringify!(_zend_internal_function))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_internal_function>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_internal_function))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_internal_function>())).type_ as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_internal_function),
            "::",
            stringify!(type_)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_internal_function>())).function_name as *const _ as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_internal_function),
            "::",
            stringify!(function_name)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_internal_function>())).scope as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_internal_function),
            "::",
            stringify!(scope)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_internal_function>())).fn_flags as *const _ as usize
        },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_internal_function),
            "::",
            stringify!(fn_flags)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_internal_function>())).prototype as *const _ as usize
        },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_internal_function),
            "::",
            stringify!(prototype)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_internal_function>())).num_args as *const _ as usize
        },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_internal_function),
            "::",
            stringify!(num_args)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_internal_function>())).required_num_args as *const _
                as usize
        },
        44usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_internal_function),
            "::",
            stringify!(required_num_args)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_internal_function>())).arg_info as *const _ as usize
        },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_internal_function),
            "::",
            stringify!(arg_info)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_internal_function>())).handler as *const _ as usize },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_internal_function),
            "::",
            stringify!(handler)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_internal_function>())).module as *const _ as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_internal_function),
            "::",
            stringify!(module)
        )
    );
}
pub type zend_internal_function = _zend_internal_function;
#[repr(C)]
#[derive(Copy, Clone)]
pub union _zend_function {
    pub type_: zend_uchar,
    pub common: _zend_function__bindgen_ty_1,
    pub op_array: zend_op_array,
    pub internal_function: zend_internal_function,
    _bindgen_union_align: [u64; 31usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_function__bindgen_ty_1 {
    pub type_: zend_uchar,
    pub function_name: *const ::std::os::raw::c_char,
    pub scope: *mut zend_class_entry,
    pub fn_flags: zend_uint,
    pub prototype: *mut _zend_function,
    pub num_args: zend_uint,
    pub required_num_args: zend_uint,
    pub arg_info: *mut zend_arg_info,
}
#[test]
fn bindgen_test_layout__zend_function__bindgen_ty_1() {
    assert_eq!(
        ::std::mem::size_of::<_zend_function__bindgen_ty_1>(),
        56usize,
        concat!("Size of: ", stringify!(_zend_function__bindgen_ty_1))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_function__bindgen_ty_1>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_function__bindgen_ty_1))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).type_ as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_function__bindgen_ty_1),
            "::",
            stringify!(type_)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).function_name as *const _
                as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_function__bindgen_ty_1),
            "::",
            stringify!(function_name)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).scope as *const _ as usize
        },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_function__bindgen_ty_1),
            "::",
            stringify!(scope)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).fn_flags as *const _ as usize
        },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_function__bindgen_ty_1),
            "::",
            stringify!(fn_flags)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).prototype as *const _ as usize
        },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_function__bindgen_ty_1),
            "::",
            stringify!(prototype)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).num_args as *const _ as usize
        },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_function__bindgen_ty_1),
            "::",
            stringify!(num_args)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).required_num_args as *const _
                as usize
        },
        44usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_function__bindgen_ty_1),
            "::",
            stringify!(required_num_args)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).arg_info as *const _ as usize
        },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_function__bindgen_ty_1),
            "::",
            stringify!(arg_info)
        )
    );
}
#[test]
fn bindgen_test_layout__zend_function() {
    assert_eq!(
        ::std::mem::size_of::<_zend_function>(),
        248usize,
        concat!("Size of: ", stringify!(_zend_function))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_function>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_function))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_function>())).type_ as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_function),
            "::",
            stringify!(type_)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_function>())).common as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_function),
            "::",
            stringify!(common)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_function>())).op_array as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_function),
            "::",
            stringify!(op_array)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_function>())).internal_function as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_function),
            "::",
            stringify!(internal_function)
        )
    );
}
pub type zend_function = _zend_function;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_function_state {
    pub function: *mut zend_function,
    pub arguments: *mut *mut ::std::os::raw::c_void,
}
#[test]
fn bindgen_test_layout__zend_function_state() {
    assert_eq!(
        ::std::mem::size_of::<_zend_function_state>(),
        16usize,
        concat!("Size of: ", stringify!(_zend_function_state))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_function_state>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_function_state))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_function_state>())).function as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_function_state),
            "::",
            stringify!(function)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_function_state>())).arguments as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_function_state),
            "::",
            stringify!(arguments)
        )
    );
}
pub type zend_function_state = _zend_function_state;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_function_call_entry {
    pub fbc: *mut zend_function,
    pub arg_num: zend_uint,
    pub uses_argument_unpacking: zend_bool,
}
#[test]
fn bindgen_test_layout__zend_function_call_entry() {
    assert_eq!(
        ::std::mem::size_of::<_zend_function_call_entry>(),
        16usize,
        concat!("Size of: ", stringify!(_zend_function_call_entry))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_function_call_entry>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_function_call_entry))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_function_call_entry>())).fbc as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_function_call_entry),
            "::",
            stringify!(fbc)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_function_call_entry>())).arg_num as *const _ as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_function_call_entry),
            "::",
            stringify!(arg_num)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_function_call_entry>())).uses_argument_unpacking
                as *const _ as usize
        },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_function_call_entry),
            "::",
            stringify!(uses_argument_unpacking)
        )
    );
}
pub type zend_function_call_entry = _zend_function_call_entry;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_switch_entry {
    pub cond: znode,
    pub default_case: ::std::os::raw::c_int,
    pub control_var: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout__zend_switch_entry() {
    assert_eq!(
        ::std::mem::size_of::<_zend_switch_entry>(),
        48usize,
        concat!("Size of: ", stringify!(_zend_switch_entry))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_switch_entry>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_switch_entry))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_switch_entry>())).cond as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_switch_entry),
            "::",
            stringify!(cond)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_switch_entry>())).default_case as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_switch_entry),
            "::",
            stringify!(default_case)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_switch_entry>())).control_var as *const _ as usize },
        44usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_switch_entry),
            "::",
            stringify!(control_var)
        )
    );
}
pub type zend_switch_entry = _zend_switch_entry;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _call_slot {
    pub fbc: *mut zend_function,
    pub object: *mut zval,
    pub called_scope: *mut zend_class_entry,
    pub num_additional_args: zend_uint,
    pub is_ctor_call: zend_bool,
    pub is_ctor_result_used: zend_bool,
}
#[test]
fn bindgen_test_layout__call_slot() {
    assert_eq!(
        ::std::mem::size_of::<_call_slot>(),
        32usize,
        concat!("Size of: ", stringify!(_call_slot))
    );
    assert_eq!(
        ::std::mem::align_of::<_call_slot>(),
        8usize,
        concat!("Alignment of ", stringify!(_call_slot))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_call_slot>())).fbc as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_call_slot),
            "::",
            stringify!(fbc)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_call_slot>())).object as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_call_slot),
            "::",
            stringify!(object)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_call_slot>())).called_scope as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_call_slot),
            "::",
            stringify!(called_scope)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_call_slot>())).num_additional_args as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_call_slot),
            "::",
            stringify!(num_additional_args)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_call_slot>())).is_ctor_call as *const _ as usize },
        28usize,
        concat!(
            "Offset of field: ",
            stringify!(_call_slot),
            "::",
            stringify!(is_ctor_call)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_call_slot>())).is_ctor_result_used as *const _ as usize },
        29usize,
        concat!(
            "Offset of field: ",
            stringify!(_call_slot),
            "::",
            stringify!(is_ctor_result_used)
        )
    );
}
pub type call_slot = _call_slot;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_execute_data {
    pub opline: *mut _zend_op,
    pub function_state: zend_function_state,
    pub op_array: *mut zend_op_array,
    pub object: *mut zval,
    pub symbol_table: *mut HashTable,
    pub prev_execute_data: *mut _zend_execute_data,
    pub old_error_reporting: *mut zval,
    pub nested: zend_bool,
    pub original_return_value: *mut *mut zval,
    pub current_scope: *mut zend_class_entry,
    pub current_called_scope: *mut zend_class_entry,
    pub current_this: *mut zval,
    pub fast_ret: *mut _zend_op,
    pub delayed_exception: *mut zval,
    pub call_slots: *mut call_slot,
    pub call: *mut call_slot,
}
#[test]
fn bindgen_test_layout__zend_execute_data() {
    assert_eq!(
        ::std::mem::size_of::<_zend_execute_data>(),
        136usize,
        concat!("Size of: ", stringify!(_zend_execute_data))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_execute_data>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_execute_data))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).opline as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_execute_data),
            "::",
            stringify!(opline)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_execute_data>())).function_state as *const _ as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_execute_data),
            "::",
            stringify!(function_state)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).op_array as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_execute_data),
            "::",
            stringify!(op_array)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).object as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_execute_data),
            "::",
            stringify!(object)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).symbol_table as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_execute_data),
            "::",
            stringify!(symbol_table)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_execute_data>())).prev_execute_data as *const _ as usize
        },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_execute_data),
            "::",
            stringify!(prev_execute_data)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_execute_data>())).old_error_reporting as *const _ as usize
        },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_execute_data),
            "::",
            stringify!(old_error_reporting)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).nested as *const _ as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_execute_data),
            "::",
            stringify!(nested)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_execute_data>())).original_return_value as *const _
                as usize
        },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_execute_data),
            "::",
            stringify!(original_return_value)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_execute_data>())).current_scope as *const _ as usize
        },
        80usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_execute_data),
            "::",
            stringify!(current_scope)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_execute_data>())).current_called_scope as *const _ as usize
        },
        88usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_execute_data),
            "::",
            stringify!(current_called_scope)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).current_this as *const _ as usize },
        96usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_execute_data),
            "::",
            stringify!(current_this)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).fast_ret as *const _ as usize },
        104usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_execute_data),
            "::",
            stringify!(fast_ret)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_execute_data>())).delayed_exception as *const _ as usize
        },
        112usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_execute_data),
            "::",
            stringify!(delayed_exception)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).call_slots as *const _ as usize },
        120usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_execute_data),
            "::",
            stringify!(call_slots)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).call as *const _ as usize },
        128usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_execute_data),
            "::",
            stringify!(call)
        )
    );
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __jmp_buf_tag {
    pub __jmpbuf: __jmp_buf,
    pub __mask_was_saved: ::std::os::raw::c_int,
    pub __saved_mask: __sigset_t,
}
#[test]
fn bindgen_test_layout___jmp_buf_tag() {
    assert_eq!(
        ::std::mem::size_of::<__jmp_buf_tag>(),
        200usize,
        concat!("Size of: ", stringify!(__jmp_buf_tag))
    );
    assert_eq!(
        ::std::mem::align_of::<__jmp_buf_tag>(),
        8usize,
        concat!("Alignment of ", stringify!(__jmp_buf_tag))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__jmp_buf_tag>())).__jmpbuf as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(__jmp_buf_tag),
            "::",
            stringify!(__jmpbuf)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__jmp_buf_tag>())).__mask_was_saved as *const _ as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(__jmp_buf_tag),
            "::",
            stringify!(__mask_was_saved)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__jmp_buf_tag>())).__saved_mask as *const _ as usize },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(__jmp_buf_tag),
            "::",
            stringify!(__saved_mask)
        )
    );
}
pub type jmp_buf = [__jmp_buf_tag; 1usize];
pub type zend_compiler_globals = _zend_compiler_globals;
pub type zend_executor_globals = _zend_executor_globals;
pub type zend_php_scanner_globals = _zend_php_scanner_globals;
pub type zend_ini_scanner_globals = _zend_ini_scanner_globals;
extern "C" {
    pub fn zendparse(compiler_globals: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_stack {
    pub top: ::std::os::raw::c_int,
    pub max: ::std::os::raw::c_int,
    pub elements: *mut *mut ::std::os::raw::c_void,
}
#[test]
fn bindgen_test_layout__zend_stack() {
    assert_eq!(
        ::std::mem::size_of::<_zend_stack>(),
        16usize,
        concat!("Size of: ", stringify!(_zend_stack))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_stack>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_stack))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_stack>())).top as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_stack),
            "::",
            stringify!(top)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_stack>())).max as *const _ as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_stack),
            "::",
            stringify!(max)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_stack>())).elements as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_stack),
            "::",
            stringify!(elements)
        )
    );
}
pub type zend_stack = _zend_stack;
extern "C" {
    pub fn zend_stack_init(stack: *mut zend_stack) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_stack_push(
        stack: *mut zend_stack,
        element: *const ::std::os::raw::c_void,
        size: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_stack_top(
        stack: *const zend_stack,
        element: *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_stack_del_top(stack: *mut zend_stack) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_stack_int_top(stack: *const zend_stack) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_stack_is_empty(stack: *const zend_stack) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_stack_destroy(stack: *mut zend_stack) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_stack_base(stack: *const zend_stack) -> *mut *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn zend_stack_count(stack: *const zend_stack) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_stack_apply(
        stack: *mut zend_stack,
        type_: ::std::os::raw::c_int,
        apply_function: ::std::option::Option<
            unsafe extern "C" fn(element: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
        >,
    );
}
extern "C" {
    pub fn zend_stack_apply_with_argument(
        stack: *mut zend_stack,
        type_: ::std::os::raw::c_int,
        apply_function: ::std::option::Option<
            unsafe extern "C" fn(
                element: *mut ::std::os::raw::c_void,
                arg: *mut ::std::os::raw::c_void,
            ) -> ::std::os::raw::c_int,
        >,
        arg: *mut ::std::os::raw::c_void,
    );
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_ptr_stack {
    pub top: ::std::os::raw::c_int,
    pub max: ::std::os::raw::c_int,
    pub elements: *mut *mut ::std::os::raw::c_void,
    pub top_element: *mut *mut ::std::os::raw::c_void,
    pub persistent: zend_bool,
}
#[test]
fn bindgen_test_layout__zend_ptr_stack() {
    assert_eq!(
        ::std::mem::size_of::<_zend_ptr_stack>(),
        32usize,
        concat!("Size of: ", stringify!(_zend_ptr_stack))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_ptr_stack>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_ptr_stack))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).top as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ptr_stack),
            "::",
            stringify!(top)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).max as *const _ as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ptr_stack),
            "::",
            stringify!(max)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).elements as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ptr_stack),
            "::",
            stringify!(elements)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).top_element as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ptr_stack),
            "::",
            stringify!(top_element)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).persistent as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ptr_stack),
            "::",
            stringify!(persistent)
        )
    );
}
pub type zend_ptr_stack = _zend_ptr_stack;
extern "C" {
    pub fn zend_ptr_stack_init(stack: *mut zend_ptr_stack);
}
extern "C" {
    pub fn zend_ptr_stack_init_ex(stack: *mut zend_ptr_stack, persistent: zend_bool);
}
extern "C" {
    pub fn zend_ptr_stack_n_push(stack: *mut zend_ptr_stack, count: ::std::os::raw::c_int, ...);
}
extern "C" {
    pub fn zend_ptr_stack_n_pop(stack: *mut zend_ptr_stack, count: ::std::os::raw::c_int, ...);
}
extern "C" {
    pub fn zend_ptr_stack_destroy(stack: *mut zend_ptr_stack);
}
extern "C" {
    pub fn zend_ptr_stack_apply(
        stack: *mut zend_ptr_stack,
        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
    );
}
extern "C" {
    pub fn zend_ptr_stack_clean(
        stack: *mut zend_ptr_stack,
        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
        free_elements: zend_bool,
    );
}
extern "C" {
    pub fn zend_ptr_stack_num_elements(stack: *mut zend_ptr_stack) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_object_std_init(
        object: *mut zend_object,
        ce: *mut zend_class_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_object_std_dtor(
        object: *mut zend_object,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_objects_new(
        object: *mut *mut zend_object,
        class_type: *mut zend_class_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> zend_object_value;
}
extern "C" {
    pub fn zend_objects_destroy_object(
        object: *mut zend_object,
        handle: zend_object_handle,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_objects_get_address(
        object: *const zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut zend_object;
}
extern "C" {
    pub fn zend_objects_clone_members(
        new_object: *mut zend_object,
        new_obj_val: zend_object_value,
        old_object: *mut zend_object,
        handle: zend_object_handle,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_objects_clone_obj(
        object: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> zend_object_value;
}
extern "C" {
    pub fn zend_objects_free_object_storage(
        object: *mut zend_object,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
pub type zend_objects_store_dtor_t = ::std::option::Option<
    unsafe extern "C" fn(
        object: *mut ::std::os::raw::c_void,
        handle: zend_object_handle,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ),
>;
pub type zend_objects_free_object_storage_t = ::std::option::Option<
    unsafe extern "C" fn(
        object: *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ),
>;
pub type zend_objects_store_clone_t = ::std::option::Option<
    unsafe extern "C" fn(
        object: *mut ::std::os::raw::c_void,
        object_clone: *mut *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ),
>;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_object_store_bucket {
    pub destructor_called: zend_bool,
    pub valid: zend_bool,
    pub apply_count: zend_uchar,
    pub bucket: _zend_object_store_bucket__store_bucket,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _zend_object_store_bucket__store_bucket {
    pub obj: _zend_object_store_bucket__store_bucket__store_object,
    pub free_list: _zend_object_store_bucket__store_bucket__bindgen_ty_1,
    _bindgen_union_align: [u64; 7usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_object_store_bucket__store_bucket__store_object {
    pub object: *mut ::std::os::raw::c_void,
    pub dtor: zend_objects_store_dtor_t,
    pub free_storage: zend_objects_free_object_storage_t,
    pub clone: zend_objects_store_clone_t,
    pub handlers: *const zend_object_handlers,
    pub refcount: zend_uint,
    pub buffered: *mut gc_root_buffer,
}
#[test]
fn bindgen_test_layout__zend_object_store_bucket__store_bucket__store_object() {
    assert_eq!(
        ::std::mem::size_of::<_zend_object_store_bucket__store_bucket__store_object>(),
        56usize,
        concat!(
            "Size of: ",
            stringify!(_zend_object_store_bucket__store_bucket__store_object)
        )
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_object_store_bucket__store_bucket__store_object>(),
        8usize,
        concat!(
            "Alignment of ",
            stringify!(_zend_object_store_bucket__store_bucket__store_object)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_store_bucket__store_bucket__store_object>())).object
                as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_store_bucket__store_bucket__store_object),
            "::",
            stringify!(object)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_store_bucket__store_bucket__store_object>())).dtor
                as *const _ as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_store_bucket__store_bucket__store_object),
            "::",
            stringify!(dtor)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_store_bucket__store_bucket__store_object>()))
                .free_storage as *const _ as usize
        },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_store_bucket__store_bucket__store_object),
            "::",
            stringify!(free_storage)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_store_bucket__store_bucket__store_object>())).clone
                as *const _ as usize
        },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_store_bucket__store_bucket__store_object),
            "::",
            stringify!(clone)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_store_bucket__store_bucket__store_object>()))
                .handlers as *const _ as usize
        },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_store_bucket__store_bucket__store_object),
            "::",
            stringify!(handlers)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_store_bucket__store_bucket__store_object>()))
                .refcount as *const _ as usize
        },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_store_bucket__store_bucket__store_object),
            "::",
            stringify!(refcount)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_store_bucket__store_bucket__store_object>()))
                .buffered as *const _ as usize
        },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_store_bucket__store_bucket__store_object),
            "::",
            stringify!(buffered)
        )
    );
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_object_store_bucket__store_bucket__bindgen_ty_1 {
    pub next: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout__zend_object_store_bucket__store_bucket__bindgen_ty_1() {
    assert_eq!(
        ::std::mem::size_of::<_zend_object_store_bucket__store_bucket__bindgen_ty_1>(),
        4usize,
        concat!(
            "Size of: ",
            stringify!(_zend_object_store_bucket__store_bucket__bindgen_ty_1)
        )
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_object_store_bucket__store_bucket__bindgen_ty_1>(),
        4usize,
        concat!(
            "Alignment of ",
            stringify!(_zend_object_store_bucket__store_bucket__bindgen_ty_1)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_store_bucket__store_bucket__bindgen_ty_1>())).next
                as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_store_bucket__store_bucket__bindgen_ty_1),
            "::",
            stringify!(next)
        )
    );
}
#[test]
fn bindgen_test_layout__zend_object_store_bucket__store_bucket() {
    assert_eq!(
        ::std::mem::size_of::<_zend_object_store_bucket__store_bucket>(),
        56usize,
        concat!(
            "Size of: ",
            stringify!(_zend_object_store_bucket__store_bucket)
        )
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_object_store_bucket__store_bucket>(),
        8usize,
        concat!(
            "Alignment of ",
            stringify!(_zend_object_store_bucket__store_bucket)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_store_bucket__store_bucket>())).obj as *const _
                as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_store_bucket__store_bucket),
            "::",
            stringify!(obj)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_store_bucket__store_bucket>())).free_list
                as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_store_bucket__store_bucket),
            "::",
            stringify!(free_list)
        )
    );
}
#[test]
fn bindgen_test_layout__zend_object_store_bucket() {
    assert_eq!(
        ::std::mem::size_of::<_zend_object_store_bucket>(),
        64usize,
        concat!("Size of: ", stringify!(_zend_object_store_bucket))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_object_store_bucket>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_object_store_bucket))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_store_bucket>())).destructor_called as *const _
                as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_store_bucket),
            "::",
            stringify!(destructor_called)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_object_store_bucket>())).valid as *const _ as usize },
        1usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_store_bucket),
            "::",
            stringify!(valid)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_store_bucket>())).apply_count as *const _ as usize
        },
        2usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_store_bucket),
            "::",
            stringify!(apply_count)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_object_store_bucket>())).bucket as *const _ as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_object_store_bucket),
            "::",
            stringify!(bucket)
        )
    );
}
pub type zend_object_store_bucket = _zend_object_store_bucket;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_objects_store {
    pub object_buckets: *mut zend_object_store_bucket,
    pub top: zend_uint,
    pub size: zend_uint,
    pub free_list_head: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout__zend_objects_store() {
    assert_eq!(
        ::std::mem::size_of::<_zend_objects_store>(),
        24usize,
        concat!("Size of: ", stringify!(_zend_objects_store))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_objects_store>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_objects_store))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_objects_store>())).object_buckets as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_objects_store),
            "::",
            stringify!(object_buckets)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_objects_store>())).top as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_objects_store),
            "::",
            stringify!(top)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_objects_store>())).size as *const _ as usize },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_objects_store),
            "::",
            stringify!(size)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_objects_store>())).free_list_head as *const _ as usize
        },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_objects_store),
            "::",
            stringify!(free_list_head)
        )
    );
}
pub type zend_objects_store = _zend_objects_store;
extern "C" {
    pub fn zend_objects_store_init(objects: *mut zend_objects_store, init_size: zend_uint);
}
extern "C" {
    pub fn zend_objects_store_call_destructors(
        objects: *mut zend_objects_store,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_objects_store_mark_destructed(
        objects: *mut zend_objects_store,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_objects_store_destroy(objects: *mut zend_objects_store);
}
extern "C" {
    pub fn zend_objects_store_put(
        object: *mut ::std::os::raw::c_void,
        dtor: zend_objects_store_dtor_t,
        storage: zend_objects_free_object_storage_t,
        clone: zend_objects_store_clone_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> zend_object_handle;
}
extern "C" {
    pub fn zend_objects_store_add_ref(
        object: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_objects_store_del_ref(
        object: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_objects_store_add_ref_by_handle(
        handle: zend_object_handle,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_objects_store_del_ref_by_handle_ex(
        handle: zend_object_handle,
        handlers: *const zend_object_handlers,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_objects_store_get_refcount(
        object: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> zend_uint;
}
extern "C" {
    pub fn zend_objects_store_clone_obj(
        object: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> zend_object_value;
}
extern "C" {
    pub fn zend_object_store_get_object(
        object: *const zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn zend_object_store_get_object_by_handle(
        handle: zend_object_handle,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn zend_object_store_set_object(
        zobject: *mut zval,
        object: *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_object_store_ctor_failed(
        zobject: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_objects_store_free_object_storage(
        objects: *mut zend_objects_store,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_object_create_proxy(
        object: *mut zval,
        member: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut zval;
}
extern "C" {
    pub fn zend_get_std_object_handlers() -> *mut zend_object_handlers;
}
extern "C" {
    pub fn zend_init_fpu(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_shutdown_fpu(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_ensure_fpu_mode(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
pub type fpu_control_t = ::std::os::raw::c_ushort;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_encoding {
    _unused: [u8; 0],
}
pub type zend_encoding = _zend_encoding;
pub type zend_encoding_filter = ::std::option::Option<
    unsafe extern "C" fn(
        str_: *mut *mut ::std::os::raw::c_uchar,
        str_length: *mut size_t,
        buf: *const ::std::os::raw::c_uchar,
        length: size_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> size_t,
>;
pub type zend_encoding_fetcher = ::std::option::Option<
    unsafe extern "C" fn(
        encoding_name: *const ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *const zend_encoding,
>;
pub type zend_encoding_name_getter = ::std::option::Option<
    unsafe extern "C" fn(encoding: *const zend_encoding) -> *const ::std::os::raw::c_char,
>;
pub type zend_encoding_lexer_compatibility_checker = ::std::option::Option<
    unsafe extern "C" fn(encoding: *const zend_encoding) -> ::std::os::raw::c_int,
>;
pub type zend_encoding_detector = ::std::option::Option<
    unsafe extern "C" fn(
        string: *const ::std::os::raw::c_uchar,
        length: size_t,
        list: *mut *const zend_encoding,
        list_size: size_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *const zend_encoding,
>;
pub type zend_encoding_converter = ::std::option::Option<
    unsafe extern "C" fn(
        to: *mut *mut ::std::os::raw::c_uchar,
        to_length: *mut size_t,
        from: *const ::std::os::raw::c_uchar,
        from_length: size_t,
        encoding_to: *const zend_encoding,
        encoding_from: *const zend_encoding,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> size_t,
>;
pub type zend_encoding_list_parser = ::std::option::Option<
    unsafe extern "C" fn(
        encoding_list: *const ::std::os::raw::c_char,
        encoding_list_len: size_t,
        return_list: *mut *mut *const zend_encoding,
        return_size: *mut size_t,
        persistent: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int,
>;
pub type zend_encoding_internal_encoding_getter = ::std::option::Option<
    unsafe extern "C" fn(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void) -> *const zend_encoding,
>;
pub type zend_encoding_internal_encoding_setter = ::std::option::Option<
    unsafe extern "C" fn(
        encoding: *const zend_encoding,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int,
>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_multibyte_functions {
    pub provider_name: *const ::std::os::raw::c_char,
    pub encoding_fetcher: zend_encoding_fetcher,
    pub encoding_name_getter: zend_encoding_name_getter,
    pub lexer_compatibility_checker: zend_encoding_lexer_compatibility_checker,
    pub encoding_detector: zend_encoding_detector,
    pub encoding_converter: zend_encoding_converter,
    pub encoding_list_parser: zend_encoding_list_parser,
    pub internal_encoding_getter: zend_encoding_internal_encoding_getter,
    pub internal_encoding_setter: zend_encoding_internal_encoding_setter,
}
#[test]
fn bindgen_test_layout__zend_multibyte_functions() {
    assert_eq!(
        ::std::mem::size_of::<_zend_multibyte_functions>(),
        72usize,
        concat!("Size of: ", stringify!(_zend_multibyte_functions))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_multibyte_functions>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_multibyte_functions))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_multibyte_functions>())).provider_name as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_multibyte_functions),
            "::",
            stringify!(provider_name)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_fetcher as *const _
                as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_multibyte_functions),
            "::",
            stringify!(encoding_fetcher)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_name_getter as *const _
                as usize
        },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_multibyte_functions),
            "::",
            stringify!(encoding_name_getter)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_multibyte_functions>())).lexer_compatibility_checker
                as *const _ as usize
        },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_multibyte_functions),
            "::",
            stringify!(lexer_compatibility_checker)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_detector as *const _
                as usize
        },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_multibyte_functions),
            "::",
            stringify!(encoding_detector)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_converter as *const _
                as usize
        },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_multibyte_functions),
            "::",
            stringify!(encoding_converter)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_list_parser as *const _
                as usize
        },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_multibyte_functions),
            "::",
            stringify!(encoding_list_parser)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_multibyte_functions>())).internal_encoding_getter
                as *const _ as usize
        },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_multibyte_functions),
            "::",
            stringify!(internal_encoding_getter)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_multibyte_functions>())).internal_encoding_setter
                as *const _ as usize
        },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_multibyte_functions),
            "::",
            stringify!(internal_encoding_setter)
        )
    );
}
pub type zend_multibyte_functions = _zend_multibyte_functions;
extern "C" {
    pub static mut zend_multibyte_encoding_utf32be: *const zend_encoding;
}
extern "C" {
    pub static mut zend_multibyte_encoding_utf32le: *const zend_encoding;
}
extern "C" {
    pub static mut zend_multibyte_encoding_utf16be: *const zend_encoding;
}
extern "C" {
    pub static mut zend_multibyte_encoding_utf16le: *const zend_encoding;
}
extern "C" {
    pub static mut zend_multibyte_encoding_utf8: *const zend_encoding;
}
extern "C" {
    pub fn zend_multibyte_set_functions(
        functions: *const zend_multibyte_functions,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_multibyte_get_functions(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *const zend_multibyte_functions;
}
extern "C" {
    pub fn zend_multibyte_fetch_encoding(
        name: *const ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *const zend_encoding;
}
extern "C" {
    pub fn zend_multibyte_get_encoding_name(
        encoding: *const zend_encoding,
    ) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn zend_multibyte_check_lexer_compatibility(
        encoding: *const zend_encoding,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_multibyte_encoding_detector(
        string: *const ::std::os::raw::c_uchar,
        length: size_t,
        list: *mut *const zend_encoding,
        list_size: size_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *const zend_encoding;
}
extern "C" {
    pub fn zend_multibyte_encoding_converter(
        to: *mut *mut ::std::os::raw::c_uchar,
        to_length: *mut size_t,
        from: *const ::std::os::raw::c_uchar,
        from_length: size_t,
        encoding_to: *const zend_encoding,
        encoding_from: *const zend_encoding,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> size_t;
}
extern "C" {
    pub fn zend_multibyte_parse_encoding_list(
        encoding_list: *const ::std::os::raw::c_char,
        encoding_list_len: size_t,
        return_list: *mut *mut *const zend_encoding,
        return_size: *mut size_t,
        persistent: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_multibyte_get_internal_encoding(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *const zend_encoding;
}
extern "C" {
    pub fn zend_multibyte_get_script_encoding(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *const zend_encoding;
}
extern "C" {
    pub fn zend_multibyte_set_script_encoding(
        encoding_list: *mut *const zend_encoding,
        encoding_list_size: size_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_multibyte_set_internal_encoding(
        encoding: *const zend_encoding,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_multibyte_set_script_encoding_by_string(
        new_value: *const ::std::os::raw::c_char,
        new_value_length: size_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_declarables {
    pub ticks: zval,
}
#[test]
fn bindgen_test_layout__zend_declarables() {
    assert_eq!(
        ::std::mem::size_of::<_zend_declarables>(),
        24usize,
        concat!("Size of: ", stringify!(_zend_declarables))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_declarables>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_declarables))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_declarables>())).ticks as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_declarables),
            "::",
            stringify!(ticks)
        )
    );
}
pub type zend_declarables = _zend_declarables;
pub type zend_vm_stack = *mut _zend_vm_stack;
pub type zend_ini_entry = _zend_ini_entry;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_compiler_globals {
    pub bp_stack: zend_stack,
    pub switch_cond_stack: zend_stack,
    pub foreach_copy_stack: zend_stack,
    pub object_stack: zend_stack,
    pub declare_stack: zend_stack,
    pub active_class_entry: *mut zend_class_entry,
    pub list_llist: zend_llist,
    pub dimension_llist: zend_llist,
    pub list_stack: zend_stack,
    pub function_call_stack: zend_stack,
    pub compiled_filename: *mut ::std::os::raw::c_char,
    pub zend_lineno: ::std::os::raw::c_int,
    pub active_op_array: *mut zend_op_array,
    pub function_table: *mut HashTable,
    pub class_table: *mut HashTable,
    pub filenames_table: HashTable,
    pub auto_globals: *mut HashTable,
    pub parse_error: zend_bool,
    pub in_compilation: zend_bool,
    pub short_tags: zend_bool,
    pub asp_tags: zend_bool,
    pub declarables: zend_declarables,
    pub unclean_shutdown: zend_bool,
    pub ini_parser_unbuffered_errors: zend_bool,
    pub open_files: zend_llist,
    pub catch_begin: ::std::os::raw::c_long,
    pub ini_parser_param: *mut _zend_ini_parser_param,
    pub interactive: ::std::os::raw::c_int,
    pub start_lineno: zend_uint,
    pub increment_lineno: zend_bool,
    pub implementing_class: znode,
    pub access_type: zend_uint,
    pub doc_comment: *mut ::std::os::raw::c_char,
    pub doc_comment_len: zend_uint,
    pub compiler_options: zend_uint,
    pub current_namespace: *mut zval,
    pub current_import: *mut HashTable,
    pub current_import_function: *mut HashTable,
    pub current_import_const: *mut HashTable,
    pub in_namespace: zend_bool,
    pub has_bracketed_namespaces: zend_bool,
    pub const_filenames: HashTable,
    pub context: zend_compiler_context,
    pub context_stack: zend_stack,
    pub interned_strings_start: *mut ::std::os::raw::c_char,
    pub interned_strings_end: *mut ::std::os::raw::c_char,
    pub interned_strings_top: *mut ::std::os::raw::c_char,
    pub interned_strings_snapshot_top: *mut ::std::os::raw::c_char,
    pub interned_strings: HashTable,
    pub script_encoding_list: *mut *const zend_encoding,
    pub script_encoding_list_size: size_t,
    pub multibyte: zend_bool,
    pub detect_unicode: zend_bool,
    pub encoding_declared: zend_bool,
    pub static_members_table: *mut *mut *mut zval,
    pub last_static_member: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout__zend_compiler_globals() {
    assert_eq!(
        ::std::mem::size_of::<_zend_compiler_globals>(),
        856usize,
        concat!("Size of: ", stringify!(_zend_compiler_globals))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_compiler_globals>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_compiler_globals))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_compiler_globals>())).bp_stack as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(bp_stack)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).switch_cond_stack as *const _
                as usize
        },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(switch_cond_stack)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).foreach_copy_stack as *const _
                as usize
        },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(foreach_copy_stack)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).object_stack as *const _ as usize
        },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(object_stack)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).declare_stack as *const _ as usize
        },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(declare_stack)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).active_class_entry as *const _
                as usize
        },
        80usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(active_class_entry)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).list_llist as *const _ as usize
        },
        88usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(list_llist)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).dimension_llist as *const _ as usize
        },
        144usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(dimension_llist)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).list_stack as *const _ as usize
        },
        200usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(list_stack)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).function_call_stack as *const _
                as usize
        },
        216usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(function_call_stack)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).compiled_filename as *const _
                as usize
        },
        232usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(compiled_filename)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).zend_lineno as *const _ as usize
        },
        240usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(zend_lineno)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).active_op_array as *const _ as usize
        },
        248usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(active_op_array)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).function_table as *const _ as usize
        },
        256usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(function_table)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).class_table as *const _ as usize
        },
        264usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(class_table)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).filenames_table as *const _ as usize
        },
        272usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(filenames_table)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).auto_globals as *const _ as usize
        },
        344usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(auto_globals)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).parse_error as *const _ as usize
        },
        352usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(parse_error)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).in_compilation as *const _ as usize
        },
        353usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(in_compilation)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).short_tags as *const _ as usize
        },
        354usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(short_tags)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_compiler_globals>())).asp_tags as *const _ as usize },
        355usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(asp_tags)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).declarables as *const _ as usize
        },
        360usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(declarables)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).unclean_shutdown as *const _ as usize
        },
        384usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(unclean_shutdown)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).ini_parser_unbuffered_errors
                as *const _ as usize
        },
        385usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(ini_parser_unbuffered_errors)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).open_files as *const _ as usize
        },
        392usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(open_files)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).catch_begin as *const _ as usize
        },
        448usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(catch_begin)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).ini_parser_param as *const _ as usize
        },
        456usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(ini_parser_param)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).interactive as *const _ as usize
        },
        464usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(interactive)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).start_lineno as *const _ as usize
        },
        468usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(start_lineno)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).increment_lineno as *const _ as usize
        },
        472usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(increment_lineno)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).implementing_class as *const _
                as usize
        },
        480usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(implementing_class)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).access_type as *const _ as usize
        },
        520usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(access_type)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).doc_comment as *const _ as usize
        },
        528usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(doc_comment)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).doc_comment_len as *const _ as usize
        },
        536usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(doc_comment_len)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).compiler_options as *const _ as usize
        },
        540usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(compiler_options)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).current_namespace as *const _
                as usize
        },
        544usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(current_namespace)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).current_import as *const _ as usize
        },
        552usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(current_import)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).current_import_function as *const _
                as usize
        },
        560usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(current_import_function)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).current_import_const as *const _
                as usize
        },
        568usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(current_import_const)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).in_namespace as *const _ as usize
        },
        576usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(in_namespace)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).has_bracketed_namespaces as *const _
                as usize
        },
        577usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(has_bracketed_namespaces)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).const_filenames as *const _ as usize
        },
        584usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(const_filenames)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_compiler_globals>())).context as *const _ as usize },
        656usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(context)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).context_stack as *const _ as usize
        },
        696usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(context_stack)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).interned_strings_start as *const _
                as usize
        },
        712usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(interned_strings_start)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).interned_strings_end as *const _
                as usize
        },
        720usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(interned_strings_end)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).interned_strings_top as *const _
                as usize
        },
        728usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(interned_strings_top)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).interned_strings_snapshot_top
                as *const _ as usize
        },
        736usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(interned_strings_snapshot_top)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).interned_strings as *const _ as usize
        },
        744usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(interned_strings)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).script_encoding_list as *const _
                as usize
        },
        816usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(script_encoding_list)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).script_encoding_list_size as *const _
                as usize
        },
        824usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(script_encoding_list_size)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).multibyte as *const _ as usize
        },
        832usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(multibyte)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).detect_unicode as *const _ as usize
        },
        833usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(detect_unicode)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).encoding_declared as *const _
                as usize
        },
        834usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(encoding_declared)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).static_members_table as *const _
                as usize
        },
        840usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(static_members_table)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_compiler_globals>())).last_static_member as *const _
                as usize
        },
        848usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_compiler_globals),
            "::",
            stringify!(last_static_member)
        )
    );
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_executor_globals {
    pub return_value_ptr_ptr: *mut *mut zval,
    pub uninitialized_zval: zval,
    pub uninitialized_zval_ptr: *mut zval,
    pub error_zval: zval,
    pub error_zval_ptr: *mut zval,
    pub symtable_cache: [*mut HashTable; 32usize],
    pub symtable_cache_limit: *mut *mut HashTable,
    pub symtable_cache_ptr: *mut *mut HashTable,
    pub opline_ptr: *mut *mut zend_op,
    pub active_symbol_table: *mut HashTable,
    pub symbol_table: HashTable,
    pub included_files: HashTable,
    pub bailout: *mut jmp_buf,
    pub error_reporting: ::std::os::raw::c_int,
    pub orig_error_reporting: ::std::os::raw::c_int,
    pub exit_status: ::std::os::raw::c_int,
    pub active_op_array: *mut zend_op_array,
    pub function_table: *mut HashTable,
    pub class_table: *mut HashTable,
    pub zend_constants: *mut HashTable,
    pub scope: *mut zend_class_entry,
    pub called_scope: *mut zend_class_entry,
    pub This: *mut zval,
    pub precision: ::std::os::raw::c_long,
    pub ticks_count: ::std::os::raw::c_int,
    pub in_execution: zend_bool,
    pub in_autoload: *mut HashTable,
    pub autoload_func: *mut zend_function,
    pub full_tables_cleanup: zend_bool,
    pub no_extensions: zend_bool,
    pub regular_list: HashTable,
    pub persistent_list: HashTable,
    pub argument_stack: zend_vm_stack,
    pub user_error_handler_error_reporting: ::std::os::raw::c_int,
    pub user_error_handler: *mut zval,
    pub user_exception_handler: *mut zval,
    pub user_error_handlers_error_reporting: zend_stack,
    pub user_error_handlers: zend_ptr_stack,
    pub user_exception_handlers: zend_ptr_stack,
    pub error_handling: zend_error_handling_t,
    pub exception_class: *mut zend_class_entry,
    pub timeout_seconds: ::std::os::raw::c_int,
    pub lambda_count: ::std::os::raw::c_int,
    pub ini_directives: *mut HashTable,
    pub modified_ini_directives: *mut HashTable,
    pub error_reporting_ini_entry: *mut zend_ini_entry,
    pub objects_store: zend_objects_store,
    pub exception: *mut zval,
    pub prev_exception: *mut zval,
    pub opline_before_exception: *mut zend_op,
    pub exception_op: [zend_op; 3usize],
    pub current_execute_data: *mut _zend_execute_data,
    pub current_module: *mut _zend_module_entry,
    pub std_property_info: zend_property_info,
    pub active: zend_bool,
    pub start_op: *mut zend_op,
    pub saved_fpu_cw_ptr: *mut ::std::os::raw::c_void,
    pub saved_fpu_cw: fpu_control_t,
    pub reserved: [*mut ::std::os::raw::c_void; 4usize],
}
#[test]
fn bindgen_test_layout__zend_executor_globals() {
    assert_eq!(
        ::std::mem::size_of::<_zend_executor_globals>(),
        1264usize,
        concat!("Size of: ", stringify!(_zend_executor_globals))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_executor_globals>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_executor_globals))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).return_value_ptr_ptr as *const _
                as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(return_value_ptr_ptr)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).uninitialized_zval as *const _
                as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(uninitialized_zval)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).uninitialized_zval_ptr as *const _
                as usize
        },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(uninitialized_zval_ptr)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).error_zval as *const _ as usize
        },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(error_zval)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).error_zval_ptr as *const _ as usize
        },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(error_zval_ptr)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).symtable_cache as *const _ as usize
        },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(symtable_cache)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).symtable_cache_limit as *const _
                as usize
        },
        328usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(symtable_cache_limit)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).symtable_cache_ptr as *const _
                as usize
        },
        336usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(symtable_cache_ptr)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).opline_ptr as *const _ as usize
        },
        344usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(opline_ptr)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).active_symbol_table as *const _
                as usize
        },
        352usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(active_symbol_table)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).symbol_table as *const _ as usize
        },
        360usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(symbol_table)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).included_files as *const _ as usize
        },
        432usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(included_files)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).bailout as *const _ as usize },
        504usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(bailout)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).error_reporting as *const _ as usize
        },
        512usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(error_reporting)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).orig_error_reporting as *const _
                as usize
        },
        516usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(orig_error_reporting)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).exit_status as *const _ as usize
        },
        520usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(exit_status)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).active_op_array as *const _ as usize
        },
        528usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(active_op_array)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).function_table as *const _ as usize
        },
        536usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(function_table)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).class_table as *const _ as usize
        },
        544usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(class_table)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).zend_constants as *const _ as usize
        },
        552usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(zend_constants)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).scope as *const _ as usize },
        560usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(scope)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).called_scope as *const _ as usize
        },
        568usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(called_scope)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).This as *const _ as usize },
        576usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(This)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).precision as *const _ as usize
        },
        584usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(precision)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).ticks_count as *const _ as usize
        },
        592usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(ticks_count)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).in_execution as *const _ as usize
        },
        596usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(in_execution)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).in_autoload as *const _ as usize
        },
        600usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(in_autoload)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).autoload_func as *const _ as usize
        },
        608usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(autoload_func)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).full_tables_cleanup as *const _
                as usize
        },
        616usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(full_tables_cleanup)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).no_extensions as *const _ as usize
        },
        617usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(no_extensions)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).regular_list as *const _ as usize
        },
        624usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(regular_list)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).persistent_list as *const _ as usize
        },
        696usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(persistent_list)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).argument_stack as *const _ as usize
        },
        768usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(argument_stack)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).user_error_handler_error_reporting
                as *const _ as usize
        },
        776usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(user_error_handler_error_reporting)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).user_error_handler as *const _
                as usize
        },
        784usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(user_error_handler)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).user_exception_handler as *const _
                as usize
        },
        792usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(user_exception_handler)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).user_error_handlers_error_reporting
                as *const _ as usize
        },
        800usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(user_error_handlers_error_reporting)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).user_error_handlers as *const _
                as usize
        },
        816usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(user_error_handlers)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).user_exception_handlers as *const _
                as usize
        },
        848usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(user_exception_handlers)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).error_handling as *const _ as usize
        },
        880usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(error_handling)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).exception_class as *const _ as usize
        },
        888usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(exception_class)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).timeout_seconds as *const _ as usize
        },
        896usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(timeout_seconds)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).lambda_count as *const _ as usize
        },
        900usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(lambda_count)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).ini_directives as *const _ as usize
        },
        904usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(ini_directives)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).modified_ini_directives as *const _
                as usize
        },
        912usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(modified_ini_directives)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).error_reporting_ini_entry as *const _
                as usize
        },
        920usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(error_reporting_ini_entry)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).objects_store as *const _ as usize
        },
        928usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(objects_store)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).exception as *const _ as usize
        },
        952usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(exception)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).prev_exception as *const _ as usize
        },
        960usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(prev_exception)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).opline_before_exception as *const _
                as usize
        },
        968usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(opline_before_exception)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).exception_op as *const _ as usize
        },
        976usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(exception_op)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).current_execute_data as *const _
                as usize
        },
        1120usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(current_execute_data)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).current_module as *const _ as usize
        },
        1128usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(current_module)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).std_property_info as *const _
                as usize
        },
        1136usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(std_property_info)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).active as *const _ as usize },
        1200usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(active)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).start_op as *const _ as usize },
        1208usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(start_op)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).saved_fpu_cw_ptr as *const _ as usize
        },
        1216usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(saved_fpu_cw_ptr)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_executor_globals>())).saved_fpu_cw as *const _ as usize
        },
        1224usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(saved_fpu_cw)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).reserved as *const _ as usize },
        1232usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_executor_globals),
            "::",
            stringify!(reserved)
        )
    );
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_ini_scanner_globals {
    pub yy_in: *mut zend_file_handle,
    pub yy_out: *mut zend_file_handle,
    pub yy_leng: ::std::os::raw::c_uint,
    pub yy_start: *mut ::std::os::raw::c_uchar,
    pub yy_text: *mut ::std::os::raw::c_uchar,
    pub yy_cursor: *mut ::std::os::raw::c_uchar,
    pub yy_marker: *mut ::std::os::raw::c_uchar,
    pub yy_limit: *mut ::std::os::raw::c_uchar,
    pub yy_state: ::std::os::raw::c_int,
    pub state_stack: zend_stack,
    pub filename: *mut ::std::os::raw::c_char,
    pub lineno: ::std::os::raw::c_int,
    pub scanner_mode: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout__zend_ini_scanner_globals() {
    assert_eq!(
        ::std::mem::size_of::<_zend_ini_scanner_globals>(),
        104usize,
        concat!("Size of: ", stringify!(_zend_ini_scanner_globals))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_ini_scanner_globals>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_ini_scanner_globals))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_in as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_scanner_globals),
            "::",
            stringify!(yy_in)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_out as *const _ as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_scanner_globals),
            "::",
            stringify!(yy_out)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_leng as *const _ as usize
        },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_scanner_globals),
            "::",
            stringify!(yy_leng)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_start as *const _ as usize
        },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_scanner_globals),
            "::",
            stringify!(yy_start)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_text as *const _ as usize
        },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_scanner_globals),
            "::",
            stringify!(yy_text)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_cursor as *const _ as usize
        },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_scanner_globals),
            "::",
            stringify!(yy_cursor)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_marker as *const _ as usize
        },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_scanner_globals),
            "::",
            stringify!(yy_marker)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_limit as *const _ as usize
        },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_scanner_globals),
            "::",
            stringify!(yy_limit)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_state as *const _ as usize
        },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_scanner_globals),
            "::",
            stringify!(yy_state)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).state_stack as *const _ as usize
        },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_scanner_globals),
            "::",
            stringify!(state_stack)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).filename as *const _ as usize
        },
        88usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_scanner_globals),
            "::",
            stringify!(filename)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).lineno as *const _ as usize
        },
        96usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_scanner_globals),
            "::",
            stringify!(lineno)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).scanner_mode as *const _ as usize
        },
        100usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_scanner_globals),
            "::",
            stringify!(scanner_mode)
        )
    );
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_php_scanner_globals {
    pub yy_in: *mut zend_file_handle,
    pub yy_out: *mut zend_file_handle,
    pub yy_leng: ::std::os::raw::c_uint,
    pub yy_start: *mut ::std::os::raw::c_uchar,
    pub yy_text: *mut ::std::os::raw::c_uchar,
    pub yy_cursor: *mut ::std::os::raw::c_uchar,
    pub yy_marker: *mut ::std::os::raw::c_uchar,
    pub yy_limit: *mut ::std::os::raw::c_uchar,
    pub yy_state: ::std::os::raw::c_int,
    pub state_stack: zend_stack,
    pub heredoc_label_stack: zend_ptr_stack,
    pub script_org: *mut ::std::os::raw::c_uchar,
    pub script_org_size: size_t,
    pub script_filtered: *mut ::std::os::raw::c_uchar,
    pub script_filtered_size: size_t,
    pub input_filter: zend_encoding_filter,
    pub output_filter: zend_encoding_filter,
    pub script_encoding: *const zend_encoding,
}
#[test]
fn bindgen_test_layout__zend_php_scanner_globals() {
    assert_eq!(
        ::std::mem::size_of::<_zend_php_scanner_globals>(),
        176usize,
        concat!("Size of: ", stringify!(_zend_php_scanner_globals))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_php_scanner_globals>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_php_scanner_globals))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_in as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_php_scanner_globals),
            "::",
            stringify!(yy_in)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_out as *const _ as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_php_scanner_globals),
            "::",
            stringify!(yy_out)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_leng as *const _ as usize
        },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_php_scanner_globals),
            "::",
            stringify!(yy_leng)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_start as *const _ as usize
        },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_php_scanner_globals),
            "::",
            stringify!(yy_start)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_text as *const _ as usize
        },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_php_scanner_globals),
            "::",
            stringify!(yy_text)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_cursor as *const _ as usize
        },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_php_scanner_globals),
            "::",
            stringify!(yy_cursor)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_marker as *const _ as usize
        },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_php_scanner_globals),
            "::",
            stringify!(yy_marker)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_limit as *const _ as usize
        },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_php_scanner_globals),
            "::",
            stringify!(yy_limit)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_state as *const _ as usize
        },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_php_scanner_globals),
            "::",
            stringify!(yy_state)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).state_stack as *const _ as usize
        },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_php_scanner_globals),
            "::",
            stringify!(state_stack)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).heredoc_label_stack as *const _
                as usize
        },
        88usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_php_scanner_globals),
            "::",
            stringify!(heredoc_label_stack)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_org as *const _ as usize
        },
        120usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_php_scanner_globals),
            "::",
            stringify!(script_org)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_org_size as *const _
                as usize
        },
        128usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_php_scanner_globals),
            "::",
            stringify!(script_org_size)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_filtered as *const _
                as usize
        },
        136usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_php_scanner_globals),
            "::",
            stringify!(script_filtered)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_filtered_size as *const _
                as usize
        },
        144usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_php_scanner_globals),
            "::",
            stringify!(script_filtered_size)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).input_filter as *const _ as usize
        },
        152usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_php_scanner_globals),
            "::",
            stringify!(input_filter)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).output_filter as *const _ as usize
        },
        160usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_php_scanner_globals),
            "::",
            stringify!(output_filter)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_encoding as *const _
                as usize
        },
        168usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_php_scanner_globals),
            "::",
            stringify!(script_encoding)
        )
    );
}
extern "C" {
    pub fn zend_init_compiler_data_structures(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_init_compiler_context(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub static mut zend_compile_file: ::std::option::Option<
        unsafe extern "C" fn(
            file_handle: *mut zend_file_handle,
            type_: ::std::os::raw::c_int,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> *mut zend_op_array,
    >;
}
extern "C" {
    pub static mut zend_compile_string: ::std::option::Option<
        unsafe extern "C" fn(
            source_string: *mut zval,
            filename: *mut ::std::os::raw::c_char,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> *mut zend_op_array,
    >;
}
extern "C" {
    pub fn zend_set_compiled_filename(
        new_compiled_filename: *const ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn zend_restore_compiled_filename(
        original_compiled_filename: *mut ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_get_compiled_filename(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn zend_get_compiled_lineno(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_get_scanned_file_offset(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void) -> size_t;
}
extern "C" {
    pub fn zend_resolve_non_class_name(
        element_name: *mut znode,
        check_namespace: *mut zend_bool,
        case_sensitive: zend_bool,
        current_import_sub: *mut HashTable,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_resolve_function_name(
        element_name: *mut znode,
        check_namespace: *mut zend_bool,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_resolve_const_name(
        element_name: *mut znode,
        check_namespace: *mut zend_bool,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_resolve_class_name(
        class_name: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_get_compiled_variable_name(
        op_array: *const zend_op_array,
        var: zend_uint,
        name_len: *mut ::std::os::raw::c_int,
    ) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn zend_get_zendtext(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn zend_get_zendleng(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_do_binary_op(
        op: zend_uchar,
        result: *mut znode,
        op1: *const znode,
        op2: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_unary_op(
        op: zend_uchar,
        result: *mut znode,
        op1: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_binary_assign_op(
        op: zend_uchar,
        result: *mut znode,
        op1: *const znode,
        op2: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_assign(
        result: *mut znode,
        variable: *mut znode,
        value: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_assign_ref(
        result: *mut znode,
        lvar: *const znode,
        rvar: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_indirect_references(
        result: *mut znode,
        num_references: *const znode,
        variable: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_fetch_static_variable(
        varname: *mut znode,
        static_assignment: *const znode,
        fetch_type: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_fetch_global_variable(
        varname: *mut znode,
        static_assignment: *const znode,
        fetch_type: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_fetch_static_member(
        result: *mut znode,
        class_znode: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_print(
        result: *mut znode,
        arg: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_echo(arg: *const znode, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_do_while_cond(
        expr: *const znode,
        close_bracket_token: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_while_end(
        while_token: *const znode,
        close_bracket_token: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_do_while_begin(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_do_do_while_end(
        do_token: *const znode,
        expr_open_bracket: *const znode,
        expr: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_if_cond(
        cond: *const znode,
        closing_bracket_token: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_if_after_statement(
        closing_bracket_token: *const znode,
        initialize: ::std::os::raw::c_uchar,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_if_end(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_do_for_cond(
        expr: *const znode,
        second_semicolon_token: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_for_before_statement(
        cond_start: *const znode,
        second_semicolon_token: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_for_end(
        second_semicolon_token: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_pre_incdec(
        result: *mut znode,
        op1: *const znode,
        op: zend_uchar,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_post_incdec(
        result: *mut znode,
        op1: *const znode,
        op: zend_uchar,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_begin_variable_parse(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_do_end_variable_parse(
        variable: *mut znode,
        type_: ::std::os::raw::c_int,
        arg_offset: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_check_writable_variable(variable: *const znode);
}
extern "C" {
    pub fn zend_do_free(op1: *mut znode, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_do_add_string(
        result: *mut znode,
        op1: *const znode,
        op2: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_add_variable(
        result: *mut znode,
        op1: *const znode,
        op2: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_verify_access_types(
        current_access_type: *const znode,
        new_modifier: *const znode,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_do_begin_function_declaration(
        function_token: *mut znode,
        function_name: *mut znode,
        is_method: ::std::os::raw::c_int,
        return_reference: ::std::os::raw::c_int,
        fn_flags_znode: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_end_function_declaration(
        function_token: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_receive_param(
        op: zend_uchar,
        varname: *mut znode,
        initialization: *const znode,
        class_type: *mut znode,
        pass_by_reference: zend_bool,
        is_variadic: zend_bool,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_begin_function_call(
        function_name: *mut znode,
        check_namespace: zend_bool,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_do_begin_method_call(
        left_bracket: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_clone(
        result: *mut znode,
        expr: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_begin_dynamic_function_call(
        function_name: *mut znode,
        prefix_len: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_fetch_class(
        result: *mut znode,
        class_name: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_build_full_name(
        result: *mut znode,
        prefix: *mut znode,
        name: *mut znode,
        is_class_member: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_begin_class_member_function_call(
        class_name: *mut znode,
        method_name: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_do_end_function_call(
        function_name: *mut znode,
        result: *mut znode,
        is_method: ::std::os::raw::c_int,
        is_dynamic_fcall: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_return(
        expr: *mut znode,
        do_end_vparse: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_yield(
        result: *mut znode,
        value: *mut znode,
        key: *const znode,
        is_variable: zend_bool,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_handle_exception(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_do_begin_lambda_function_declaration(
        result: *mut znode,
        function_token: *mut znode,
        return_reference: ::std::os::raw::c_int,
        is_static: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_fetch_lexical_variable(
        varname: *mut znode,
        is_ref: zend_bool,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_try(try_token: *mut znode, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_do_begin_catch(
        try_token: *mut znode,
        catch_class: *mut znode,
        catch_var: *mut znode,
        first_catch: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_bind_catch(
        try_token: *mut znode,
        catch_token: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_end_catch(
        catch_token: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_finally(
        finally_token: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_end_finally(
        try_token: *mut znode,
        catch_token: *mut znode,
        finally_token: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_throw(expr: *const znode, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_do_inherit_interfaces(
        ce: *mut zend_class_entry,
        iface: *const zend_class_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_implement_interface(
        ce: *mut zend_class_entry,
        iface: *mut zend_class_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_implements_interface(
        interface_znode: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_use_trait(
        trait_znode: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_prepare_reference(
        result: *mut znode,
        class_name: *mut znode,
        method_name: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_add_trait_precedence(
        method_reference: *mut znode,
        trait_list: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_add_trait_alias(
        method_reference: *mut znode,
        modifiers: *mut znode,
        alias: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_implement_trait(
        ce: *mut zend_class_entry,
        trait_: *mut zend_class_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_bind_traits(
        ce: *mut zend_class_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_inheritance(
        ce: *mut zend_class_entry,
        parent_ce: *mut zend_class_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_early_binding(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_do_delayed_early_binding(
        op_array: *const zend_op_array,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_pass_param(
        param: *mut znode,
        op: zend_uchar,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_unpack_params(
        params: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_boolean_or_begin(
        expr1: *mut znode,
        op_token: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_boolean_or_end(
        result: *mut znode,
        expr1: *const znode,
        expr2: *const znode,
        op_token: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_boolean_and_begin(
        expr1: *mut znode,
        op_token: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_boolean_and_end(
        result: *mut znode,
        expr1: *const znode,
        expr2: *const znode,
        op_token: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_brk_cont(
        op: zend_uchar,
        expr: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_switch_cond(cond: *const znode, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_do_switch_end(
        case_list: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_case_before_statement(
        case_list: *const znode,
        case_token: *mut znode,
        case_expr: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_case_after_statement(
        result: *mut znode,
        case_token: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_default_before_statement(
        case_list: *const znode,
        default_token: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_begin_class_declaration(
        class_token: *const znode,
        class_name: *mut znode,
        parent_class_name: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_end_class_declaration(
        class_token: *const znode,
        parent_token: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_declare_property(
        var_name: *const znode,
        value: *const znode,
        access_type: zend_uint,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_declare_class_constant(
        var_name: *mut znode,
        value: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_fetch_property(
        result: *mut znode,
        object: *mut znode,
        property: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_halt_compiler_register(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_do_push_object(
        object: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_pop_object(object: *mut znode, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_do_begin_new_object(
        new_token: *mut znode,
        class_type: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_end_new_object(
        result: *mut znode,
        new_token: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_fetch_constant(
        result: *mut znode,
        constant_container: *mut znode,
        constant_name: *mut znode,
        mode: ::std::os::raw::c_int,
        check_namespace: zend_bool,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_shell_exec(
        result: *mut znode,
        cmd: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_init_array(
        result: *mut znode,
        expr: *const znode,
        offset: *const znode,
        is_ref: zend_bool,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_add_array_element(
        result: *mut znode,
        expr: *const znode,
        offset: *const znode,
        is_ref: zend_bool,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_add_static_array_element(
        result: *mut zval,
        offset: *mut zval,
        expr: *const zval,
    );
}
extern "C" {
    pub fn zend_do_list_init(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_do_list_end(
        result: *mut znode,
        expr: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_add_list_element(
        element: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_new_list_begin(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_do_new_list_end(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_init_list(
        result: *mut ::std::os::raw::c_void,
        item: *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_add_to_list(
        result: *mut ::std::os::raw::c_void,
        item: *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_cast(
        result: *mut znode,
        expr: *const znode,
        type_: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_include_or_eval(
        type_: ::std::os::raw::c_int,
        result: *mut znode,
        op1: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_unset(variable: *const znode, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_do_isset_or_isempty(
        type_: ::std::os::raw::c_int,
        result: *mut znode,
        variable: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_instanceof(
        result: *mut znode,
        expr: *const znode,
        class_znode: *const znode,
        type_: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_foreach_begin(
        foreach_token: *mut znode,
        open_brackets_token: *mut znode,
        array: *mut znode,
        as_token: *mut znode,
        variable: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_foreach_cont(
        foreach_token: *mut znode,
        open_brackets_token: *const znode,
        as_token: *const znode,
        value: *mut znode,
        key: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_foreach_end(
        foreach_token: *const znode,
        as_token: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_declare_begin(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_do_declare_stmt(
        var: *mut znode,
        val: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_declare_end(
        declare_token: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_exit(
        result: *mut znode,
        message: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_begin_silence(
        strudel_token: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_end_silence(
        strudel_token: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_jmp_set(
        value: *const znode,
        jmp_token: *mut znode,
        colon_token: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_jmp_set_else(
        result: *mut znode,
        false_value: *const znode,
        jmp_token: *const znode,
        colon_token: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_begin_qm_op(
        cond: *const znode,
        qm_token: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_qm_true(
        true_value: *const znode,
        qm_token: *mut znode,
        colon_token: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_qm_false(
        result: *mut znode,
        false_value: *const znode,
        qm_token: *const znode,
        colon_token: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_extended_info(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_do_extended_fcall_begin(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_do_extended_fcall_end(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_do_ticks(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_do_abstract_method(
        function_name: *const znode,
        modifiers: *mut znode,
        body: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_declare_constant(
        name: *mut znode,
        value: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_build_namespace_name(
        result: *mut znode,
        prefix: *mut znode,
        name: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_begin_namespace(
        name: *const znode,
        with_brackets: zend_bool,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_end_namespace(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_verify_namespace(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_do_use(
        name: *mut znode,
        new_name: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_use_non_class(
        ns_name: *mut znode,
        new_name: *mut znode,
        is_function: ::std::os::raw::c_int,
        case_sensitive: zend_bool,
        current_import_sub: *mut HashTable,
        lookup_table: *mut HashTable,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_use_function(
        name: *mut znode,
        new_name: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_use_const(
        name: *mut znode,
        new_name: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_end_compilation(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_do_constant_expression(
        result: *mut znode,
        ast: *mut zend_ast,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_resolve_class_name(
        result: *mut znode,
        class_name: *mut znode,
        is_static: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_label(label: *mut znode, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_do_goto(label: *const znode, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_resolve_goto_label(
        op_array: *mut zend_op_array,
        opline: *mut zend_op,
        pass2: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_release_labels(
        temporary: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_execute_scripts(
        type_: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        retval: *mut *mut zval,
        file_count: ::std::os::raw::c_int,
        ...
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_destroy_file_handle(
        file_handle: *mut zend_file_handle,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_cleanup_class_data(
        pce: *mut *mut zend_class_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_cleanup_user_class_data(
        pce: *mut *mut zend_class_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_cleanup_internal_class_data(
        ce: *mut zend_class_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_cleanup_internal_classes(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_cleanup_function_data(
        function: *mut zend_function,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_cleanup_function_data_full(
        function: *mut zend_function,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_function_dtor(function: *mut zend_function);
}
extern "C" {
    pub fn zend_class_add_ref(ce: *mut *mut zend_class_entry);
}
extern "C" {
    pub fn zend_mangle_property_name(
        dest: *mut *mut ::std::os::raw::c_char,
        dest_length: *mut ::std::os::raw::c_int,
        src1: *const ::std::os::raw::c_char,
        src1_length: ::std::os::raw::c_int,
        src2: *const ::std::os::raw::c_char,
        src2_length: ::std::os::raw::c_int,
        internal: ::std::os::raw::c_int,
    );
}
extern "C" {
    pub fn zend_unmangle_property_name_ex(
        mangled_property: *const ::std::os::raw::c_char,
        mangled_property_len: ::std::os::raw::c_int,
        class_name: *mut *const ::std::os::raw::c_char,
        prop_name: *mut *const ::std::os::raw::c_char,
        prop_len: *mut ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_do_first_catch(
        open_parentheses: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_initialize_try_catch_element(
        catch_token: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_do_mark_last_catch(
        first_catch: *const znode,
        last_additional_catch: *const znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_is_compiling(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void) -> zend_bool;
}
extern "C" {
    pub fn zend_make_compiled_string_description(
        name: *const ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn zend_initialize_class_data(
        ce: *mut zend_class_entry,
        nullify_handlers: zend_bool,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_get_class_fetch_type(
        class_name: *const ::std::os::raw::c_char,
        class_name_len: uint,
    ) -> ::std::os::raw::c_int;
}
pub type zend_auto_global_callback = ::std::option::Option<
    unsafe extern "C" fn(
        name: *const ::std::os::raw::c_char,
        name_len: uint,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> zend_bool,
>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_auto_global {
    pub name: *const ::std::os::raw::c_char,
    pub name_len: uint,
    pub auto_global_callback: zend_auto_global_callback,
    pub jit: zend_bool,
    pub armed: zend_bool,
}
#[test]
fn bindgen_test_layout__zend_auto_global() {
    assert_eq!(
        ::std::mem::size_of::<_zend_auto_global>(),
        32usize,
        concat!("Size of: ", stringify!(_zend_auto_global))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_auto_global>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_auto_global))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_auto_global>())).name as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_auto_global),
            "::",
            stringify!(name)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_auto_global>())).name_len as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_auto_global),
            "::",
            stringify!(name_len)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_auto_global>())).auto_global_callback as *const _ as usize
        },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_auto_global),
            "::",
            stringify!(auto_global_callback)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_auto_global>())).jit as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_auto_global),
            "::",
            stringify!(jit)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_auto_global>())).armed as *const _ as usize },
        25usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_auto_global),
            "::",
            stringify!(armed)
        )
    );
}
pub type zend_auto_global = _zend_auto_global;
extern "C" {
    pub fn zend_register_auto_global(
        name: *const ::std::os::raw::c_char,
        name_len: uint,
        jit: zend_bool,
        auto_global_callback: zend_auto_global_callback,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_activate_auto_globals(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_is_auto_global(
        name: *const ::std::os::raw::c_char,
        name_len: uint,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> zend_bool;
}
extern "C" {
    pub fn zend_is_auto_global_quick(
        name: *const ::std::os::raw::c_char,
        name_len: uint,
        hashval: ulong,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> zend_bool;
}
extern "C" {
    pub fn zend_dirname(path: *mut ::std::os::raw::c_char, len: size_t) -> size_t;
}
extern "C" {
    pub fn zendlex(
        zendlval: *mut znode,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_add_literal(
        op_array: *mut zend_op_array,
        zv: *const zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_get_opcode_name(opcode: zend_uchar) -> *const ::std::os::raw::c_char;
}
pub type zend_module_entry = _zend_module_entry;
pub type zend_module_dep = _zend_module_dep;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_module_entry {
    pub size: ::std::os::raw::c_ushort,
    pub zend_api: ::std::os::raw::c_uint,
    pub zend_debug: ::std::os::raw::c_uchar,
    pub zts: ::std::os::raw::c_uchar,
    pub ini_entry: *const _zend_ini_entry,
    pub deps: *const _zend_module_dep,
    pub name: *const ::std::os::raw::c_char,
    pub functions: *const _zend_function_entry,
    pub module_startup_func: ::std::option::Option<
        unsafe extern "C" fn(
            type_: ::std::os::raw::c_int,
            module_number: ::std::os::raw::c_int,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >,
    pub module_shutdown_func: ::std::option::Option<
        unsafe extern "C" fn(
            type_: ::std::os::raw::c_int,
            module_number: ::std::os::raw::c_int,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >,
    pub request_startup_func: ::std::option::Option<
        unsafe extern "C" fn(
            type_: ::std::os::raw::c_int,
            module_number: ::std::os::raw::c_int,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >,
    pub request_shutdown_func: ::std::option::Option<
        unsafe extern "C" fn(
            type_: ::std::os::raw::c_int,
            module_number: ::std::os::raw::c_int,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >,
    pub info_func: ::std::option::Option<
        unsafe extern "C" fn(
            zend_module: *mut zend_module_entry,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ),
    >,
    pub version: *const ::std::os::raw::c_char,
    pub globals_size: size_t,
    pub globals_id_ptr: *mut ts_rsrc_id,
    pub globals_ctor: ::std::option::Option<
        unsafe extern "C" fn(
            global: *mut ::std::os::raw::c_void,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ),
    >,
    pub globals_dtor: ::std::option::Option<
        unsafe extern "C" fn(
            global: *mut ::std::os::raw::c_void,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ),
    >,
    pub post_deactivate_func:
        ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_int>,
    pub module_started: ::std::os::raw::c_int,
    pub type_: ::std::os::raw::c_uchar,
    pub handle: *mut ::std::os::raw::c_void,
    pub module_number: ::std::os::raw::c_int,
    pub build_id: *const ::std::os::raw::c_char,
}
#[test]
fn bindgen_test_layout__zend_module_entry() {
    assert_eq!(
        ::std::mem::size_of::<_zend_module_entry>(),
        168usize,
        concat!("Size of: ", stringify!(_zend_module_entry))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_module_entry>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_module_entry))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).size as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_entry),
            "::",
            stringify!(size)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).zend_api as *const _ as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_entry),
            "::",
            stringify!(zend_api)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).zend_debug as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_entry),
            "::",
            stringify!(zend_debug)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).zts as *const _ as usize },
        9usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_entry),
            "::",
            stringify!(zts)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).ini_entry as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_entry),
            "::",
            stringify!(ini_entry)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).deps as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_entry),
            "::",
            stringify!(deps)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).name as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_entry),
            "::",
            stringify!(name)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).functions as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_entry),
            "::",
            stringify!(functions)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_module_entry>())).module_startup_func as *const _ as usize
        },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_entry),
            "::",
            stringify!(module_startup_func)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_module_entry>())).module_shutdown_func as *const _ as usize
        },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_entry),
            "::",
            stringify!(module_shutdown_func)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_module_entry>())).request_startup_func as *const _ as usize
        },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_entry),
            "::",
            stringify!(request_startup_func)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_module_entry>())).request_shutdown_func as *const _
                as usize
        },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_entry),
            "::",
            stringify!(request_shutdown_func)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).info_func as *const _ as usize },
        80usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_entry),
            "::",
            stringify!(info_func)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).version as *const _ as usize },
        88usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_entry),
            "::",
            stringify!(version)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).globals_size as *const _ as usize },
        96usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_entry),
            "::",
            stringify!(globals_size)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_module_entry>())).globals_id_ptr as *const _ as usize
        },
        104usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_entry),
            "::",
            stringify!(globals_id_ptr)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).globals_ctor as *const _ as usize },
        112usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_entry),
            "::",
            stringify!(globals_ctor)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).globals_dtor as *const _ as usize },
        120usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_entry),
            "::",
            stringify!(globals_dtor)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_module_entry>())).post_deactivate_func as *const _ as usize
        },
        128usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_entry),
            "::",
            stringify!(post_deactivate_func)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_module_entry>())).module_started as *const _ as usize
        },
        136usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_entry),
            "::",
            stringify!(module_started)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).type_ as *const _ as usize },
        140usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_entry),
            "::",
            stringify!(type_)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).handle as *const _ as usize },
        144usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_entry),
            "::",
            stringify!(handle)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_module_entry>())).module_number as *const _ as usize
        },
        152usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_entry),
            "::",
            stringify!(module_number)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).build_id as *const _ as usize },
        160usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_entry),
            "::",
            stringify!(build_id)
        )
    );
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_module_dep {
    pub name: *const ::std::os::raw::c_char,
    pub rel: *const ::std::os::raw::c_char,
    pub version: *const ::std::os::raw::c_char,
    pub type_: ::std::os::raw::c_uchar,
}
#[test]
fn bindgen_test_layout__zend_module_dep() {
    assert_eq!(
        ::std::mem::size_of::<_zend_module_dep>(),
        32usize,
        concat!("Size of: ", stringify!(_zend_module_dep))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_module_dep>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_module_dep))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_module_dep>())).name as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_dep),
            "::",
            stringify!(name)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_module_dep>())).rel as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_dep),
            "::",
            stringify!(rel)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_module_dep>())).version as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_dep),
            "::",
            stringify!(version)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_module_dep>())).type_ as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_module_dep),
            "::",
            stringify!(type_)
        )
    );
}
extern "C" {
    pub static mut module_registry: HashTable;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_rsrc_list_entry {
    pub ptr: *mut ::std::os::raw::c_void,
    pub type_: ::std::os::raw::c_int,
    pub refcount: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout__zend_rsrc_list_entry() {
    assert_eq!(
        ::std::mem::size_of::<_zend_rsrc_list_entry>(),
        16usize,
        concat!("Size of: ", stringify!(_zend_rsrc_list_entry))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_rsrc_list_entry>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_rsrc_list_entry))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_rsrc_list_entry>())).ptr as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_rsrc_list_entry),
            "::",
            stringify!(ptr)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_rsrc_list_entry>())).type_ as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_rsrc_list_entry),
            "::",
            stringify!(type_)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_rsrc_list_entry>())).refcount as *const _ as usize },
        12usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_rsrc_list_entry),
            "::",
            stringify!(refcount)
        )
    );
}
pub type zend_rsrc_list_entry = _zend_rsrc_list_entry;
pub type rsrc_dtor_func_t = ::std::option::Option<
    unsafe extern "C" fn(
        rsrc: *mut zend_rsrc_list_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ),
>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_rsrc_list_dtors_entry {
    pub list_dtor: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
    pub plist_dtor: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
    pub list_dtor_ex: rsrc_dtor_func_t,
    pub plist_dtor_ex: rsrc_dtor_func_t,
    pub type_name: *const ::std::os::raw::c_char,
    pub module_number: ::std::os::raw::c_int,
    pub resource_id: ::std::os::raw::c_int,
    pub type_: ::std::os::raw::c_uchar,
}
#[test]
fn bindgen_test_layout__zend_rsrc_list_dtors_entry() {
    assert_eq!(
        ::std::mem::size_of::<_zend_rsrc_list_dtors_entry>(),
        56usize,
        concat!("Size of: ", stringify!(_zend_rsrc_list_dtors_entry))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_rsrc_list_dtors_entry>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_rsrc_list_dtors_entry))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).list_dtor as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_rsrc_list_dtors_entry),
            "::",
            stringify!(list_dtor)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).plist_dtor as *const _ as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_rsrc_list_dtors_entry),
            "::",
            stringify!(plist_dtor)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).list_dtor_ex as *const _
                as usize
        },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_rsrc_list_dtors_entry),
            "::",
            stringify!(list_dtor_ex)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).plist_dtor_ex as *const _
                as usize
        },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_rsrc_list_dtors_entry),
            "::",
            stringify!(plist_dtor_ex)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).type_name as *const _ as usize
        },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_rsrc_list_dtors_entry),
            "::",
            stringify!(type_name)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).module_number as *const _
                as usize
        },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_rsrc_list_dtors_entry),
            "::",
            stringify!(module_number)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).resource_id as *const _ as usize
        },
        44usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_rsrc_list_dtors_entry),
            "::",
            stringify!(resource_id)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).type_ as *const _ as usize
        },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_rsrc_list_dtors_entry),
            "::",
            stringify!(type_)
        )
    );
}
pub type zend_rsrc_list_dtors_entry = _zend_rsrc_list_dtors_entry;
extern "C" {
    pub fn zend_register_list_destructors(
        ld: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
        pld: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
        module_number: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_register_list_destructors_ex(
        ld: rsrc_dtor_func_t,
        pld: rsrc_dtor_func_t,
        type_name: *const ::std::os::raw::c_char,
        module_number: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_clean_module_rsrc_dtors(
        module_number: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_init_rsrc_list(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_init_rsrc_plist(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_destroy_rsrc_list(
        ht: *mut HashTable,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_init_rsrc_list_dtors() -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_destroy_rsrc_list_dtors();
}
extern "C" {
    pub fn zend_list_insert(
        ptr: *mut ::std::os::raw::c_void,
        type_: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn _zend_list_addref(
        id: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn _zend_list_delete(
        id: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn _zend_list_find(
        id: ::std::os::raw::c_int,
        type_: *mut ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn zend_register_resource(
        rsrc_result: *mut zval,
        rsrc_pointer: *mut ::std::os::raw::c_void,
        rsrc_type: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_fetch_resource(
        passed_id: *mut *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        default_id: ::std::os::raw::c_int,
        resource_type_name: *const ::std::os::raw::c_char,
        found_resource_type: *mut ::std::os::raw::c_int,
        num_resource_types: ::std::os::raw::c_int,
        ...
    ) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn zend_rsrc_list_get_rsrc_type(
        resource: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn zend_fetch_list_dtor_id(type_name: *mut ::std::os::raw::c_char)
        -> ::std::os::raw::c_int;
}
extern "C" {
    pub static mut zend_execute_ex: ::std::option::Option<
        unsafe extern "C" fn(
            execute_data: *mut zend_execute_data,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ),
    >;
}
extern "C" {
    pub static mut zend_execute_internal: ::std::option::Option<
        unsafe extern "C" fn(
            execute_data_ptr: *mut zend_execute_data,
            fci: *mut _zend_fcall_info,
            return_value_used: ::std::os::raw::c_int,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ),
    >;
}
extern "C" {
    pub fn zend_create_execute_data_from_op_array(
        op_array: *mut zend_op_array,
        nested: zend_bool,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut zend_execute_data;
}
extern "C" {
    pub fn zend_execute(
        op_array: *mut zend_op_array,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_is_true(op: *mut zval) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_lookup_class(
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        ce: *mut *mut *mut zend_class_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_lookup_class_ex(
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        key: *const zend_literal,
        use_autoload: ::std::os::raw::c_int,
        ce: *mut *mut *mut zend_class_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_eval_string(
        str_: *mut ::std::os::raw::c_char,
        retval_ptr: *mut zval,
        string_name: *mut ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_eval_stringl(
        str_: *mut ::std::os::raw::c_char,
        str_len: ::std::os::raw::c_int,
        retval_ptr: *mut zval,
        string_name: *mut ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_eval_string_ex(
        str_: *mut ::std::os::raw::c_char,
        retval_ptr: *mut zval,
        string_name: *mut ::std::os::raw::c_char,
        handle_exceptions: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_eval_stringl_ex(
        str_: *mut ::std::os::raw::c_char,
        str_len: ::std::os::raw::c_int,
        retval_ptr: *mut zval,
        string_name: *mut ::std::os::raw::c_char,
        handle_exceptions: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_verify_arg_class_kind(
        cur_arg_info: *const zend_arg_info,
        fetch_type: ulong,
        class_name: *mut *const ::std::os::raw::c_char,
        pce: *mut *mut zend_class_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn zend_verify_arg_error(
        error_type: ::std::os::raw::c_int,
        zf: *const zend_function,
        arg_num: zend_uint,
        need_msg: *const ::std::os::raw::c_char,
        need_kind: *const ::std::os::raw::c_char,
        given_msg: *const ::std::os::raw::c_char,
        given_kind: *const ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_vm_stack {
    pub top: *mut *mut ::std::os::raw::c_void,
    pub end: *mut *mut ::std::os::raw::c_void,
    pub prev: zend_vm_stack,
}
#[test]
fn bindgen_test_layout__zend_vm_stack() {
    assert_eq!(
        ::std::mem::size_of::<_zend_vm_stack>(),
        24usize,
        concat!("Size of: ", stringify!(_zend_vm_stack))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_vm_stack>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_vm_stack))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_vm_stack>())).top as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_vm_stack),
            "::",
            stringify!(top)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_vm_stack>())).end as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_vm_stack),
            "::",
            stringify!(end)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_vm_stack>())).prev as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_vm_stack),
            "::",
            stringify!(prev)
        )
    );
}
extern "C" {
    pub fn zend_get_executed_filename(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn zend_get_executed_lineno(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void) -> uint;
}
extern "C" {
    pub fn zend_is_executing(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void) -> zend_bool;
}
extern "C" {
    pub fn zend_set_timeout(seconds: ::std::os::raw::c_long, reset_signals: ::std::os::raw::c_int);
}
extern "C" {
    pub fn zend_unset_timeout(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_timeout(dummy: ::std::os::raw::c_int);
}
extern "C" {
    pub fn zend_fetch_class(
        class_name: *const ::std::os::raw::c_char,
        class_name_len: uint,
        fetch_type: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut zend_class_entry;
}
extern "C" {
    pub fn zend_fetch_class_by_name(
        class_name: *const ::std::os::raw::c_char,
        class_name_len: uint,
        key: *const zend_literal,
        fetch_type: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut zend_class_entry;
}
extern "C" {
    pub fn zend_verify_abstract_class(
        ce: *mut zend_class_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_fetch_dimension_by_zval(
        result: *mut *mut zval,
        container: *mut zval,
        dim: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_get_compiled_variable_value(
        execute_data_ptr: *const zend_execute_data,
        var: zend_uint,
    ) -> *mut *mut zval;
}
extern "C" {
    pub fn zend_set_user_opcode_handler(
        opcode: zend_uchar,
        handler: user_opcode_handler_t,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_get_user_opcode_handler(opcode: zend_uchar) -> user_opcode_handler_t;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_free_op {
    pub var: *mut zval,
}
#[test]
fn bindgen_test_layout__zend_free_op() {
    assert_eq!(
        ::std::mem::size_of::<_zend_free_op>(),
        8usize,
        concat!("Size of: ", stringify!(_zend_free_op))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_free_op>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_free_op))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_free_op>())).var as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_free_op),
            "::",
            stringify!(var)
        )
    );
}
pub type zend_free_op = _zend_free_op;
extern "C" {
    pub fn zend_get_zval_ptr(
        op_type: ::std::os::raw::c_int,
        node: *const znode_op,
        execute_data: *const zend_execute_data,
        should_free: *mut zend_free_op,
        type_: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut zval;
}
extern "C" {
    pub fn zend_get_zval_ptr_ptr(
        op_type: ::std::os::raw::c_int,
        node: *const znode_op,
        execute_data: *const zend_execute_data,
        should_free: *mut zend_free_op,
        type_: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut *mut zval;
}
extern "C" {
    pub fn zend_do_fcall(
        execute_data: *mut zend_execute_data,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_clean_and_cache_symbol_table(
        symbol_table: *mut HashTable,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_free_compiled_variables(
        execute_data: *mut zend_execute_data,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_function_entry {
    pub fname: *const ::std::os::raw::c_char,
    pub handler: ::std::option::Option<
        unsafe extern "C" fn(
            ht: ::std::os::raw::c_int,
            return_value: *mut zval,
            return_value_ptr: *mut *mut zval,
            this_ptr: *mut zval,
            return_value_used: ::std::os::raw::c_int,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ),
    >,
    pub arg_info: *const _zend_arg_info,
    pub num_args: zend_uint,
    pub flags: zend_uint,
}
#[test]
fn bindgen_test_layout__zend_function_entry() {
    assert_eq!(
        ::std::mem::size_of::<_zend_function_entry>(),
        32usize,
        concat!("Size of: ", stringify!(_zend_function_entry))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_function_entry>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_function_entry))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).fname as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_function_entry),
            "::",
            stringify!(fname)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).handler as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_function_entry),
            "::",
            stringify!(handler)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).arg_info as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_function_entry),
            "::",
            stringify!(arg_info)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).num_args as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_function_entry),
            "::",
            stringify!(num_args)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).flags as *const _ as usize },
        28usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_function_entry),
            "::",
            stringify!(flags)
        )
    );
}
pub type zend_function_entry = _zend_function_entry;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_fcall_info {
    pub size: size_t,
    pub function_table: *mut HashTable,
    pub function_name: *mut zval,
    pub symbol_table: *mut HashTable,
    pub retval_ptr_ptr: *mut *mut zval,
    pub param_count: zend_uint,
    pub params: *mut *mut *mut zval,
    pub object_ptr: *mut zval,
    pub no_separation: zend_bool,
}
#[test]
fn bindgen_test_layout__zend_fcall_info() {
    assert_eq!(
        ::std::mem::size_of::<_zend_fcall_info>(),
        72usize,
        concat!("Size of: ", stringify!(_zend_fcall_info))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_fcall_info>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_fcall_info))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).size as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_fcall_info),
            "::",
            stringify!(size)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).function_table as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_fcall_info),
            "::",
            stringify!(function_table)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).function_name as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_fcall_info),
            "::",
            stringify!(function_name)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).symbol_table as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_fcall_info),
            "::",
            stringify!(symbol_table)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).retval_ptr_ptr as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_fcall_info),
            "::",
            stringify!(retval_ptr_ptr)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).param_count as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_fcall_info),
            "::",
            stringify!(param_count)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).params as *const _ as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_fcall_info),
            "::",
            stringify!(params)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).object_ptr as *const _ as usize },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_fcall_info),
            "::",
            stringify!(object_ptr)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).no_separation as *const _ as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_fcall_info),
            "::",
            stringify!(no_separation)
        )
    );
}
pub type zend_fcall_info = _zend_fcall_info;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_fcall_info_cache {
    pub initialized: zend_bool,
    pub function_handler: *mut zend_function,
    pub calling_scope: *mut zend_class_entry,
    pub called_scope: *mut zend_class_entry,
    pub object_ptr: *mut zval,
}
#[test]
fn bindgen_test_layout__zend_fcall_info_cache() {
    assert_eq!(
        ::std::mem::size_of::<_zend_fcall_info_cache>(),
        40usize,
        concat!("Size of: ", stringify!(_zend_fcall_info_cache))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_fcall_info_cache>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_fcall_info_cache))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_fcall_info_cache>())).initialized as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_fcall_info_cache),
            "::",
            stringify!(initialized)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_fcall_info_cache>())).function_handler as *const _ as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_fcall_info_cache),
            "::",
            stringify!(function_handler)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_fcall_info_cache>())).calling_scope as *const _ as usize
        },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_fcall_info_cache),
            "::",
            stringify!(calling_scope)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_fcall_info_cache>())).called_scope as *const _ as usize
        },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_fcall_info_cache),
            "::",
            stringify!(called_scope)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_fcall_info_cache>())).object_ptr as *const _ as usize
        },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_fcall_info_cache),
            "::",
            stringify!(object_ptr)
        )
    );
}
pub type zend_fcall_info_cache = _zend_fcall_info_cache;
extern "C" {
    pub fn zend_next_free_module() -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_get_parameters(
        ht: ::std::os::raw::c_int,
        param_count: ::std::os::raw::c_int,
        ...
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn _zend_get_parameters_array(
        ht: ::std::os::raw::c_int,
        param_count: ::std::os::raw::c_int,
        argument_array: *mut *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_get_parameters_ex(param_count: ::std::os::raw::c_int, ...)
        -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn _zend_get_parameters_array_ex(
        param_count: ::std::os::raw::c_int,
        argument_array: *mut *mut *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_copy_parameters_array(
        param_count: ::std::os::raw::c_int,
        argument_array: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_parse_parameters(
        num_args: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        type_spec: *const ::std::os::raw::c_char,
        ...
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_parse_parameters_ex(
        flags: ::std::os::raw::c_int,
        num_args: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        type_spec: *const ::std::os::raw::c_char,
        ...
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_zval_type_name(arg: *const zval) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn zend_parse_method_parameters(
        num_args: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        this_ptr: *mut zval,
        type_spec: *const ::std::os::raw::c_char,
        ...
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_parse_method_parameters_ex(
        flags: ::std::os::raw::c_int,
        num_args: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        this_ptr: *mut zval,
        type_spec: *const ::std::os::raw::c_char,
        ...
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_parse_parameter(
        flags: ::std::os::raw::c_int,
        arg_num: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        arg: *mut *mut zval,
        spec: *const ::std::os::raw::c_char,
        ...
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_register_functions(
        scope: *mut zend_class_entry,
        functions: *const zend_function_entry,
        function_table: *mut HashTable,
        type_: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_unregister_functions(
        functions: *const zend_function_entry,
        count: ::std::os::raw::c_int,
        function_table: *mut HashTable,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_startup_module(module_entry: *mut zend_module_entry) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_register_internal_module(
        module_entry: *mut zend_module_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut zend_module_entry;
}
extern "C" {
    pub fn zend_register_module_ex(
        module: *mut zend_module_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut zend_module_entry;
}
extern "C" {
    pub fn zend_startup_module_ex(
        module: *mut zend_module_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_startup_modules(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_collect_module_handlers(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_destroy_modules();
}
extern "C" {
    pub fn zend_check_magic_method_implementation(
        ce: *const zend_class_entry,
        fptr: *const zend_function,
        error_type: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_register_internal_class(
        class_entry: *mut zend_class_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut zend_class_entry;
}
extern "C" {
    pub fn zend_register_internal_class_ex(
        class_entry: *mut zend_class_entry,
        parent_ce: *mut zend_class_entry,
        parent_name: *mut ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut zend_class_entry;
}
extern "C" {
    pub fn zend_register_internal_interface(
        orig_class_entry: *mut zend_class_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut zend_class_entry;
}
extern "C" {
    pub fn zend_class_implements(
        class_entry: *mut zend_class_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        num_interfaces: ::std::os::raw::c_int,
        ...
    );
}
extern "C" {
    pub fn zend_register_class_alias_ex(
        name: *const ::std::os::raw::c_char,
        name_len: ::std::os::raw::c_int,
        ce: *mut zend_class_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_disable_function(
        function_name: *mut ::std::os::raw::c_char,
        function_name_length: uint,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_disable_class(
        class_name: *mut ::std::os::raw::c_char,
        class_name_length: uint,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_wrong_param_count(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_is_callable_ex(
        callable: *mut zval,
        object_ptr: *mut zval,
        check_flags: uint,
        callable_name: *mut *mut ::std::os::raw::c_char,
        callable_name_len: *mut ::std::os::raw::c_int,
        fcc: *mut zend_fcall_info_cache,
        error: *mut *mut ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> zend_bool;
}
extern "C" {
    pub fn zend_is_callable(
        callable: *mut zval,
        check_flags: uint,
        callable_name: *mut *mut ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> zend_bool;
}
extern "C" {
    pub fn zend_make_callable(
        callable: *mut zval,
        callable_name: *mut *mut ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> zend_bool;
}
extern "C" {
    pub fn zend_get_module_version(
        module_name: *const ::std::os::raw::c_char,
    ) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn zend_get_module_started(
        module_name: *const ::std::os::raw::c_char,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_declare_property(
        ce: *mut zend_class_entry,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        property: *mut zval,
        access_type: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_declare_property_ex(
        ce: *mut zend_class_entry,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        property: *mut zval,
        access_type: ::std::os::raw::c_int,
        doc_comment: *const ::std::os::raw::c_char,
        doc_comment_len: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_declare_property_null(
        ce: *mut zend_class_entry,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        access_type: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_declare_property_bool(
        ce: *mut zend_class_entry,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        value: ::std::os::raw::c_long,
        access_type: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_declare_property_long(
        ce: *mut zend_class_entry,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        value: ::std::os::raw::c_long,
        access_type: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_declare_property_double(
        ce: *mut zend_class_entry,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        value: f64,
        access_type: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_declare_property_string(
        ce: *mut zend_class_entry,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        value: *const ::std::os::raw::c_char,
        access_type: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_declare_property_stringl(
        ce: *mut zend_class_entry,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        value: *const ::std::os::raw::c_char,
        value_len: ::std::os::raw::c_int,
        access_type: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_declare_class_constant(
        ce: *mut zend_class_entry,
        name: *const ::std::os::raw::c_char,
        name_length: size_t,
        value: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_declare_class_constant_null(
        ce: *mut zend_class_entry,
        name: *const ::std::os::raw::c_char,
        name_length: size_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_declare_class_constant_long(
        ce: *mut zend_class_entry,
        name: *const ::std::os::raw::c_char,
        name_length: size_t,
        value: ::std::os::raw::c_long,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_declare_class_constant_bool(
        ce: *mut zend_class_entry,
        name: *const ::std::os::raw::c_char,
        name_length: size_t,
        value: zend_bool,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_declare_class_constant_double(
        ce: *mut zend_class_entry,
        name: *const ::std::os::raw::c_char,
        name_length: size_t,
        value: f64,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_declare_class_constant_stringl(
        ce: *mut zend_class_entry,
        name: *const ::std::os::raw::c_char,
        name_length: size_t,
        value: *const ::std::os::raw::c_char,
        value_length: size_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_declare_class_constant_string(
        ce: *mut zend_class_entry,
        name: *const ::std::os::raw::c_char,
        name_length: size_t,
        value: *const ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_update_class_constants(
        class_type: *mut zend_class_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_update_property(
        scope: *mut zend_class_entry,
        object: *mut zval,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        value: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_update_property_null(
        scope: *mut zend_class_entry,
        object: *mut zval,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_update_property_bool(
        scope: *mut zend_class_entry,
        object: *mut zval,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        value: ::std::os::raw::c_long,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_update_property_long(
        scope: *mut zend_class_entry,
        object: *mut zval,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        value: ::std::os::raw::c_long,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_update_property_double(
        scope: *mut zend_class_entry,
        object: *mut zval,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        value: f64,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_update_property_string(
        scope: *mut zend_class_entry,
        object: *mut zval,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        value: *const ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_update_property_stringl(
        scope: *mut zend_class_entry,
        object: *mut zval,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        value: *const ::std::os::raw::c_char,
        value_length: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_update_static_property(
        scope: *mut zend_class_entry,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        value: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_update_static_property_null(
        scope: *mut zend_class_entry,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_update_static_property_bool(
        scope: *mut zend_class_entry,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        value: ::std::os::raw::c_long,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_update_static_property_long(
        scope: *mut zend_class_entry,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        value: ::std::os::raw::c_long,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_update_static_property_double(
        scope: *mut zend_class_entry,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        value: f64,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_update_static_property_string(
        scope: *mut zend_class_entry,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        value: *const ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_update_static_property_stringl(
        scope: *mut zend_class_entry,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        value: *const ::std::os::raw::c_char,
        value_length: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_read_property(
        scope: *mut zend_class_entry,
        object: *mut zval,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        silent: zend_bool,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut zval;
}
extern "C" {
    pub fn zend_read_static_property(
        scope: *mut zend_class_entry,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        silent: zend_bool,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut zval;
}
extern "C" {
    pub fn zend_get_class_entry(
        zobject: *const zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut zend_class_entry;
}
extern "C" {
    pub fn zend_get_object_classname(
        object: *const zval,
        class_name: *mut *const ::std::os::raw::c_char,
        class_name_len: *mut zend_uint,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_get_type_by_const(type_: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn zend_merge_properties(
        obj: *mut zval,
        properties: *mut HashTable,
        destroy_ht: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub static empty_fcall_info: zend_fcall_info;
}
extern "C" {
    pub static empty_fcall_info_cache: zend_fcall_info_cache;
}
extern "C" {
    #[doc = " Build zend_call_info/cache from a zval*"]
    #[doc = ""]
    #[doc = " Caller is responsible to provide a return value, otherwise the we will crash."]
    #[doc = " fci->retval_ptr_ptr = NULL;"]
    #[doc = " In order to pass parameters the following members need to be set:"]
    #[doc = " fci->param_count = 0;"]
    #[doc = " fci->params = NULL;"]
    #[doc = " The callable_name argument may be NULL."]
    #[doc = " Set check_flags to IS_CALLABLE_STRICT for every new usage!"]
    pub fn zend_fcall_info_init(
        callable: *mut zval,
        check_flags: uint,
        fci: *mut zend_fcall_info,
        fcc: *mut zend_fcall_info_cache,
        callable_name: *mut *mut ::std::os::raw::c_char,
        error: *mut *mut ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    #[doc = " Clear arguments connected with zend_fcall_info *fci"]
    #[doc = " If free_mem is not zero then the params array gets free'd as well"]
    pub fn zend_fcall_info_args_clear(fci: *mut zend_fcall_info, free_mem: ::std::os::raw::c_int);
}
extern "C" {
    #[doc = " Save current arguments from zend_fcall_info *fci"]
    #[doc = " params array will be set to NULL"]
    pub fn zend_fcall_info_args_save(
        fci: *mut zend_fcall_info,
        param_count: *mut ::std::os::raw::c_int,
        params: *mut *mut *mut *mut zval,
    );
}
extern "C" {
    #[doc = " Free arguments connected with zend_fcall_info *fci andset back saved ones."]
    pub fn zend_fcall_info_args_restore(
        fci: *mut zend_fcall_info,
        param_count: ::std::os::raw::c_int,
        params: *mut *mut *mut zval,
    );
}
extern "C" {
    #[doc = " Set or clear the arguments in the zend_call_info struct taking care of"]
    #[doc = " refcount. If args is NULL and arguments are set then those are cleared."]
    pub fn zend_fcall_info_args(
        fci: *mut zend_fcall_info,
        args: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    #[doc = " Set arguments in the zend_fcall_info struct taking care of refcount."]
    #[doc = " If argc is 0 the arguments which are set will be cleared, else pass"]
    #[doc = " a variable amount of zval** arguments."]
    pub fn zend_fcall_info_argp(
        fci: *mut zend_fcall_info,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        argc: ::std::os::raw::c_int,
        argv: *mut *mut *mut zval,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    #[doc = " Set arguments in the zend_fcall_info struct taking care of refcount."]
    #[doc = " If argc is 0 the arguments which are set will be cleared, else pass"]
    #[doc = " a variable amount of zval** arguments."]
    pub fn zend_fcall_info_argv(
        fci: *mut zend_fcall_info,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        argc: ::std::os::raw::c_int,
        argv: *mut va_list,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    #[doc = " Set arguments in the zend_fcall_info struct taking care of refcount."]
    #[doc = " If argc is 0 the arguments which are set will be cleared, else pass"]
    #[doc = " a variable amount of zval** arguments."]
    pub fn zend_fcall_info_argn(
        fci: *mut zend_fcall_info,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        argc: ::std::os::raw::c_int,
        ...
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    #[doc = " Call a function using information created by zend_fcall_info_init()/args()."]
    #[doc = " If args is given then those replace the argument info in fci is temporarily."]
    pub fn zend_fcall_info_call(
        fci: *mut zend_fcall_info,
        fcc: *mut zend_fcall_info_cache,
        retval: *mut *mut zval,
        args: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_call_function(
        fci: *mut zend_fcall_info,
        fci_cache: *mut zend_fcall_info_cache,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_set_hash_symbol(
        symbol: *mut zval,
        name: *const ::std::os::raw::c_char,
        name_length: ::std::os::raw::c_int,
        is_ref: zend_bool,
        num_symbol_tables: ::std::os::raw::c_int,
        ...
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_delete_variable(
        ex: *mut zend_execute_data,
        ht: *mut HashTable,
        name: *const ::std::os::raw::c_char,
        name_len: ::std::os::raw::c_int,
        hash_value: ulong,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_delete_global_variable(
        name: *const ::std::os::raw::c_char,
        name_len: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_delete_global_variable_ex(
        name: *const ::std::os::raw::c_char,
        name_len: ::std::os::raw::c_int,
        hash_value: ulong,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_reset_all_cv(
        symbol_table: *mut HashTable,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_rebuild_symbol_table(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_find_alias_name(
        ce: *mut zend_class_entry,
        name: *const ::std::os::raw::c_char,
        len: zend_uint,
    ) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn zend_resolve_method_name(
        ce: *mut zend_class_entry,
        f: *mut zend_function,
    ) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn php_strlcpy(
        dst: *mut ::std::os::raw::c_char,
        src: *const ::std::os::raw::c_char,
        siz: size_t,
    ) -> size_t;
}
extern "C" {
    pub fn php_strlcat(
        dst: *mut ::std::os::raw::c_char,
        src: *const ::std::os::raw::c_char,
        siz: size_t,
    ) -> size_t;
}
pub type socklen_t = __socklen_t;
pub type bool_int = ::std::os::raw::c_int;
pub const boolean_e_NO: boolean_e = 0;
pub const boolean_e_YES: boolean_e = 1;
pub type boolean_e = ::std::os::raw::c_uint;
extern "C" {
    pub fn php_sprintf(
        s: *mut ::std::os::raw::c_char,
        format: *const ::std::os::raw::c_char,
        ...
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_gcvt(
        value: f64,
        ndigit: ::std::os::raw::c_int,
        dec_point: ::std::os::raw::c_char,
        exponent: ::std::os::raw::c_char,
        buf: *mut ::std::os::raw::c_char,
    ) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn php_conv_fp(
        format: ::std::os::raw::c_char,
        num: f64,
        add_dp: boolean_e,
        precision: ::std::os::raw::c_int,
        dec_point: ::std::os::raw::c_char,
        is_negative: *mut bool_int,
        buf: *mut ::std::os::raw::c_char,
        len: *mut ::std::os::raw::c_int,
    ) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn php_write(
        buf: *mut ::std::os::raw::c_void,
        size: uint,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_printf(format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_get_module_initialized() -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_log_err(
        log_message: *mut ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn php_verror(
        docref: *const ::std::os::raw::c_char,
        params: *const ::std::os::raw::c_char,
        type_: ::std::os::raw::c_int,
        format: *const ::std::os::raw::c_char,
        args: *mut __va_list_tag,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn php_error_docref0(
        docref: *const ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        type_: ::std::os::raw::c_int,
        format: *const ::std::os::raw::c_char,
        ...
    );
}
extern "C" {
    pub fn php_error_docref1(
        docref: *const ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        param1: *const ::std::os::raw::c_char,
        type_: ::std::os::raw::c_int,
        format: *const ::std::os::raw::c_char,
        ...
    );
}
extern "C" {
    pub fn php_error_docref2(
        docref: *const ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        param1: *const ::std::os::raw::c_char,
        param2: *const ::std::os::raw::c_char,
        type_: ::std::os::raw::c_int,
        format: *const ::std::os::raw::c_char,
        ...
    );
}
extern "C" {
    pub static mut php_register_internal_extensions_func: ::std::option::Option<
        unsafe extern "C" fn(
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >;
}
extern "C" {
    pub fn php_register_internal_extensions(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_mergesort(
        base: *mut ::std::os::raw::c_void,
        nmemb: size_t,
        size: size_t,
        cmp: ::std::option::Option<
            unsafe extern "C" fn(
                arg1: *const ::std::os::raw::c_void,
                arg2: *const ::std::os::raw::c_void,
                tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
            ) -> ::std::os::raw::c_int,
        >,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_register_pre_request_shutdown(
        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
        userdata: *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn php_com_initialize(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn php_get_current_user(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut ::std::os::raw::c_char;
}
pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_GET_OPAQ: _php_output_handler_hook_t =
    0;
pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_GET_FLAGS: _php_output_handler_hook_t =
    1;
pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_GET_LEVEL: _php_output_handler_hook_t =
    2;
pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_IMMUTABLE: _php_output_handler_hook_t =
    3;
pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_DISABLE: _php_output_handler_hook_t =
    4;
pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_LAST: _php_output_handler_hook_t = 5;
pub type _php_output_handler_hook_t = ::std::os::raw::c_uint;
pub use self::_php_output_handler_hook_t as php_output_handler_hook_t;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_output_buffer {
    pub data: *mut ::std::os::raw::c_char,
    pub size: size_t,
    pub used: size_t,
    pub _bitfield_align_1: [u32; 0],
    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
    pub __bindgen_padding_0: u32,
}
#[test]
fn bindgen_test_layout__php_output_buffer() {
    assert_eq!(
        ::std::mem::size_of::<_php_output_buffer>(),
        32usize,
        concat!("Size of: ", stringify!(_php_output_buffer))
    );
    assert_eq!(
        ::std::mem::align_of::<_php_output_buffer>(),
        8usize,
        concat!("Alignment of ", stringify!(_php_output_buffer))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_output_buffer>())).data as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_output_buffer),
            "::",
            stringify!(data)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_output_buffer>())).size as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_output_buffer),
            "::",
            stringify!(size)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_output_buffer>())).used as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_output_buffer),
            "::",
            stringify!(used)
        )
    );
}
impl _php_output_buffer {
    #[inline]
    pub fn free(&self) -> uint {
        unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
    }
    #[inline]
    pub fn set_free(&mut self, val: uint) {
        unsafe {
            let val: u32 = ::std::mem::transmute(val);
            self._bitfield_1.set(0usize, 1u8, val as u64)
        }
    }
    #[inline]
    pub fn _res(&self) -> uint {
        unsafe { ::std::mem::transmute(self._bitfield_1.get(1usize, 31u8) as u32) }
    }
    #[inline]
    pub fn set__res(&mut self, val: uint) {
        unsafe {
            let val: u32 = ::std::mem::transmute(val);
            self._bitfield_1.set(1usize, 31u8, val as u64)
        }
    }
    #[inline]
    pub fn new_bitfield_1(free: uint, _res: uint) -> __BindgenBitfieldUnit<[u8; 4usize]> {
        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
        __bindgen_bitfield_unit.set(0usize, 1u8, {
            let free: u32 = unsafe { ::std::mem::transmute(free) };
            free as u64
        });
        __bindgen_bitfield_unit.set(1usize, 31u8, {
            let _res: u32 = unsafe { ::std::mem::transmute(_res) };
            _res as u64
        });
        __bindgen_bitfield_unit
    }
}
pub type php_output_buffer = _php_output_buffer;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_output_context {
    pub op: ::std::os::raw::c_int,
    pub in_: php_output_buffer,
    pub out: php_output_buffer,
    pub tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
}
#[test]
fn bindgen_test_layout__php_output_context() {
    assert_eq!(
        ::std::mem::size_of::<_php_output_context>(),
        80usize,
        concat!("Size of: ", stringify!(_php_output_context))
    );
    assert_eq!(
        ::std::mem::align_of::<_php_output_context>(),
        8usize,
        concat!("Alignment of ", stringify!(_php_output_context))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_output_context>())).op as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_output_context),
            "::",
            stringify!(op)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_output_context>())).in_ as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_output_context),
            "::",
            stringify!(in_)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_output_context>())).out as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_output_context),
            "::",
            stringify!(out)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_output_context>())).tsrm_ls as *const _ as usize },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_output_context),
            "::",
            stringify!(tsrm_ls)
        )
    );
}
pub type php_output_context = _php_output_context;
pub type php_output_handler_func_t = ::std::option::Option<
    unsafe extern "C" fn(
        output: *mut ::std::os::raw::c_char,
        output_len: uint,
        handled_output: *mut *mut ::std::os::raw::c_char,
        handled_output_len: *mut uint,
        mode: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ),
>;
pub type php_output_handler_context_func_t = ::std::option::Option<
    unsafe extern "C" fn(
        handler_context: *mut *mut ::std::os::raw::c_void,
        output_context: *mut php_output_context,
    ) -> ::std::os::raw::c_int,
>;
pub type php_output_handler_conflict_check_t = ::std::option::Option<
    unsafe extern "C" fn(
        handler_name: *const ::std::os::raw::c_char,
        handler_name_len: size_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int,
>;
pub type php_output_handler_alias_ctor_t = ::std::option::Option<
    unsafe extern "C" fn(
        handler_name: *const ::std::os::raw::c_char,
        handler_name_len: size_t,
        chunk_size: size_t,
        flags: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut _php_output_handler,
>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_output_handler_user_func_t {
    pub fci: zend_fcall_info,
    pub fcc: zend_fcall_info_cache,
    pub zoh: *mut zval,
}
#[test]
fn bindgen_test_layout__php_output_handler_user_func_t() {
    assert_eq!(
        ::std::mem::size_of::<_php_output_handler_user_func_t>(),
        120usize,
        concat!("Size of: ", stringify!(_php_output_handler_user_func_t))
    );
    assert_eq!(
        ::std::mem::align_of::<_php_output_handler_user_func_t>(),
        8usize,
        concat!("Alignment of ", stringify!(_php_output_handler_user_func_t))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_php_output_handler_user_func_t>())).fci as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_output_handler_user_func_t),
            "::",
            stringify!(fci)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_php_output_handler_user_func_t>())).fcc as *const _ as usize
        },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_output_handler_user_func_t),
            "::",
            stringify!(fcc)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_php_output_handler_user_func_t>())).zoh as *const _ as usize
        },
        112usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_output_handler_user_func_t),
            "::",
            stringify!(zoh)
        )
    );
}
pub type php_output_handler_user_func_t = _php_output_handler_user_func_t;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _php_output_handler {
    pub name: *mut ::std::os::raw::c_char,
    pub name_len: size_t,
    pub flags: ::std::os::raw::c_int,
    pub level: ::std::os::raw::c_int,
    pub size: size_t,
    pub buffer: php_output_buffer,
    pub opaq: *mut ::std::os::raw::c_void,
    pub dtor: ::std::option::Option<
        unsafe extern "C" fn(
            opaq: *mut ::std::os::raw::c_void,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ),
    >,
    pub func: _php_output_handler__bindgen_ty_1,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union _php_output_handler__bindgen_ty_1 {
    pub user: *mut php_output_handler_user_func_t,
    pub internal: php_output_handler_context_func_t,
    _bindgen_union_align: u64,
}
#[test]
fn bindgen_test_layout__php_output_handler__bindgen_ty_1() {
    assert_eq!(
        ::std::mem::size_of::<_php_output_handler__bindgen_ty_1>(),
        8usize,
        concat!("Size of: ", stringify!(_php_output_handler__bindgen_ty_1))
    );
    assert_eq!(
        ::std::mem::align_of::<_php_output_handler__bindgen_ty_1>(),
        8usize,
        concat!(
            "Alignment of ",
            stringify!(_php_output_handler__bindgen_ty_1)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_php_output_handler__bindgen_ty_1>())).user as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_output_handler__bindgen_ty_1),
            "::",
            stringify!(user)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_php_output_handler__bindgen_ty_1>())).internal as *const _
                as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_output_handler__bindgen_ty_1),
            "::",
            stringify!(internal)
        )
    );
}
#[test]
fn bindgen_test_layout__php_output_handler() {
    assert_eq!(
        ::std::mem::size_of::<_php_output_handler>(),
        88usize,
        concat!("Size of: ", stringify!(_php_output_handler))
    );
    assert_eq!(
        ::std::mem::align_of::<_php_output_handler>(),
        8usize,
        concat!("Alignment of ", stringify!(_php_output_handler))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).name as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_output_handler),
            "::",
            stringify!(name)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).name_len as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_output_handler),
            "::",
            stringify!(name_len)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).flags as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_output_handler),
            "::",
            stringify!(flags)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).level as *const _ as usize },
        20usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_output_handler),
            "::",
            stringify!(level)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).size as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_output_handler),
            "::",
            stringify!(size)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).buffer as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_output_handler),
            "::",
            stringify!(buffer)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).opaq as *const _ as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_output_handler),
            "::",
            stringify!(opaq)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).dtor as *const _ as usize },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_output_handler),
            "::",
            stringify!(dtor)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).func as *const _ as usize },
        80usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_output_handler),
            "::",
            stringify!(func)
        )
    );
}
pub type php_output_handler = _php_output_handler;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_output_globals {
    pub flags: ::std::os::raw::c_int,
    pub handlers: zend_stack,
    pub active: *mut php_output_handler,
    pub running: *mut php_output_handler,
    pub output_start_filename: *const ::std::os::raw::c_char,
    pub output_start_lineno: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout__zend_output_globals() {
    assert_eq!(
        ::std::mem::size_of::<_zend_output_globals>(),
        56usize,
        concat!("Size of: ", stringify!(_zend_output_globals))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_output_globals>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_output_globals))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_output_globals>())).flags as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_output_globals),
            "::",
            stringify!(flags)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_output_globals>())).handlers as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_output_globals),
            "::",
            stringify!(handlers)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_output_globals>())).active as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_output_globals),
            "::",
            stringify!(active)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_output_globals>())).running as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_output_globals),
            "::",
            stringify!(running)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_output_globals>())).output_start_filename as *const _
                as usize
        },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_output_globals),
            "::",
            stringify!(output_start_filename)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_output_globals>())).output_start_lineno as *const _
                as usize
        },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_output_globals),
            "::",
            stringify!(output_start_lineno)
        )
    );
}
pub type zend_output_globals = _zend_output_globals;
extern "C" {
    pub static php_output_default_handler_name: [::std::os::raw::c_char; 23usize];
}
extern "C" {
    pub static php_output_devnull_handler_name: [::std::os::raw::c_char; 20usize];
}
extern "C" {
    pub fn php_output_startup();
}
extern "C" {
    pub fn php_output_shutdown();
}
extern "C" {
    pub fn php_output_register_constants(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn php_output_activate(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_output_deactivate(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn php_output_set_status(
        status: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn php_output_get_status(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_output_set_implicit_flush(
        flush: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn php_output_get_start_filename(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn php_output_get_start_lineno(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_output_write_unbuffered(
        str_: *const ::std::os::raw::c_char,
        len: size_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_output_write(
        str_: *const ::std::os::raw::c_char,
        len: size_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_output_flush(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_output_flush_all(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn php_output_clean(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_output_clean_all(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn php_output_end(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_output_end_all(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn php_output_discard(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_output_discard_all(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn php_output_get_contents(
        p: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_output_get_length(
        p: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_output_get_level(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_output_get_active_handler(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut php_output_handler;
}
extern "C" {
    pub fn php_output_start_default(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_output_start_devnull(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_output_start_user(
        output_handler: *mut zval,
        chunk_size: size_t,
        flags: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_output_start_internal(
        name: *const ::std::os::raw::c_char,
        name_len: size_t,
        output_handler: php_output_handler_func_t,
        chunk_size: size_t,
        flags: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_output_handler_create_user(
        handler: *mut zval,
        chunk_size: size_t,
        flags: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut php_output_handler;
}
extern "C" {
    pub fn php_output_handler_create_internal(
        name: *const ::std::os::raw::c_char,
        name_len: size_t,
        handler: php_output_handler_context_func_t,
        chunk_size: size_t,
        flags: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut php_output_handler;
}
extern "C" {
    pub fn php_output_handler_set_context(
        handler: *mut php_output_handler,
        opaq: *mut ::std::os::raw::c_void,
        dtor: ::std::option::Option<
            unsafe extern "C" fn(
                arg1: *mut ::std::os::raw::c_void,
                tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
            ),
        >,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn php_output_handler_start(
        handler: *mut php_output_handler,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_output_handler_started(
        name: *const ::std::os::raw::c_char,
        name_len: size_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_output_handler_hook(
        type_: php_output_handler_hook_t,
        arg: *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_output_handler_dtor(
        handler: *mut php_output_handler,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn php_output_handler_free(
        handler: *mut *mut php_output_handler,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn php_output_handler_conflict(
        handler_new: *const ::std::os::raw::c_char,
        handler_new_len: size_t,
        handler_set: *const ::std::os::raw::c_char,
        handler_set_len: size_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_output_handler_conflict_register(
        handler_name: *const ::std::os::raw::c_char,
        handler_name_len: size_t,
        check_func: php_output_handler_conflict_check_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_output_handler_reverse_conflict_register(
        handler_name: *const ::std::os::raw::c_char,
        handler_name_len: size_t,
        check_func: php_output_handler_conflict_check_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_output_handler_alias(
        handler_name: *const ::std::os::raw::c_char,
        handler_name_len: size_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut php_output_handler_alias_ctor_t;
}
extern "C" {
    pub fn php_output_handler_alias_register(
        handler_name: *const ::std::os::raw::c_char,
        handler_name_len: size_t,
        func: php_output_handler_alias_ctor_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct stat {
    pub st_dev: __dev_t,
    pub st_ino: __ino_t,
    pub st_nlink: __nlink_t,
    pub st_mode: __mode_t,
    pub st_uid: __uid_t,
    pub st_gid: __gid_t,
    pub __pad0: ::std::os::raw::c_int,
    pub st_rdev: __dev_t,
    pub st_size: __off_t,
    pub st_blksize: __blksize_t,
    pub st_blocks: __blkcnt_t,
    pub st_atim: timespec,
    pub st_mtim: timespec,
    pub st_ctim: timespec,
    pub __glibc_reserved: [__syscall_slong_t; 3usize],
}
#[test]
fn bindgen_test_layout_stat() {
    assert_eq!(
        ::std::mem::size_of::<stat>(),
        144usize,
        concat!("Size of: ", stringify!(stat))
    );
    assert_eq!(
        ::std::mem::align_of::<stat>(),
        8usize,
        concat!("Alignment of ", stringify!(stat))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<stat>())).st_dev as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(stat),
            "::",
            stringify!(st_dev)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<stat>())).st_ino as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(stat),
            "::",
            stringify!(st_ino)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<stat>())).st_nlink as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(stat),
            "::",
            stringify!(st_nlink)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<stat>())).st_mode as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(stat),
            "::",
            stringify!(st_mode)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<stat>())).st_uid as *const _ as usize },
        28usize,
        concat!(
            "Offset of field: ",
            stringify!(stat),
            "::",
            stringify!(st_uid)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<stat>())).st_gid as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(stat),
            "::",
            stringify!(st_gid)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<stat>())).__pad0 as *const _ as usize },
        36usize,
        concat!(
            "Offset of field: ",
            stringify!(stat),
            "::",
            stringify!(__pad0)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<stat>())).st_rdev as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(stat),
            "::",
            stringify!(st_rdev)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<stat>())).st_size as *const _ as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(stat),
            "::",
            stringify!(st_size)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<stat>())).st_blksize as *const _ as usize },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(stat),
            "::",
            stringify!(st_blksize)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<stat>())).st_blocks as *const _ as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(stat),
            "::",
            stringify!(st_blocks)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<stat>())).st_atim as *const _ as usize },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(stat),
            "::",
            stringify!(st_atim)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<stat>())).st_mtim as *const _ as usize },
        88usize,
        concat!(
            "Offset of field: ",
            stringify!(stat),
            "::",
            stringify!(st_mtim)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<stat>())).st_ctim as *const _ as usize },
        104usize,
        concat!(
            "Offset of field: ",
            stringify!(stat),
            "::",
            stringify!(st_ctim)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<stat>())).__glibc_reserved as *const _ as usize },
        120usize,
        concat!(
            "Offset of field: ",
            stringify!(stat),
            "::",
            stringify!(__glibc_reserved)
        )
    );
}
extern "C" {
    pub fn php_file_le_stream() -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_file_le_pstream() -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_file_le_stream_filter() -> ::std::os::raw::c_int;
}
pub type php_stream = _php_stream;
pub type php_stream_wrapper = _php_stream_wrapper;
pub type php_stream_context = _php_stream_context;
pub type php_stream_filter = _php_stream_filter;
pub type php_stream_notification_func = ::std::option::Option<
    unsafe extern "C" fn(
        context: *mut php_stream_context,
        notifycode: ::std::os::raw::c_int,
        severity: ::std::os::raw::c_int,
        xmsg: *mut ::std::os::raw::c_char,
        xcode: ::std::os::raw::c_int,
        bytes_sofar: size_t,
        bytes_max: size_t,
        ptr: *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ),
>;
pub type php_stream_notifier = _php_stream_notifier;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_notifier {
    pub func: php_stream_notification_func,
    pub dtor: ::std::option::Option<unsafe extern "C" fn(notifier: *mut php_stream_notifier)>,
    pub ptr: *mut ::std::os::raw::c_void,
    pub mask: ::std::os::raw::c_int,
    pub progress: size_t,
    pub progress_max: size_t,
}
#[test]
fn bindgen_test_layout__php_stream_notifier() {
    assert_eq!(
        ::std::mem::size_of::<_php_stream_notifier>(),
        48usize,
        concat!("Size of: ", stringify!(_php_stream_notifier))
    );
    assert_eq!(
        ::std::mem::align_of::<_php_stream_notifier>(),
        8usize,
        concat!("Alignment of ", stringify!(_php_stream_notifier))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).func as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_notifier),
            "::",
            stringify!(func)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).dtor as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_notifier),
            "::",
            stringify!(dtor)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).ptr as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_notifier),
            "::",
            stringify!(ptr)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).mask as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_notifier),
            "::",
            stringify!(mask)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).progress as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_notifier),
            "::",
            stringify!(progress)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_php_stream_notifier>())).progress_max as *const _ as usize
        },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_notifier),
            "::",
            stringify!(progress_max)
        )
    );
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_context {
    pub notifier: *mut php_stream_notifier,
    pub options: *mut zval,
    pub rsrc_id: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout__php_stream_context() {
    assert_eq!(
        ::std::mem::size_of::<_php_stream_context>(),
        24usize,
        concat!("Size of: ", stringify!(_php_stream_context))
    );
    assert_eq!(
        ::std::mem::align_of::<_php_stream_context>(),
        8usize,
        concat!("Alignment of ", stringify!(_php_stream_context))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_context>())).notifier as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_context),
            "::",
            stringify!(notifier)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_context>())).options as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_context),
            "::",
            stringify!(options)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_context>())).rsrc_id as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_context),
            "::",
            stringify!(rsrc_id)
        )
    );
}
extern "C" {
    pub fn php_stream_context_free(context: *mut php_stream_context);
}
extern "C" {
    pub fn php_stream_context_alloc(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut php_stream_context;
}
extern "C" {
    pub fn php_stream_context_get_option(
        context: *mut php_stream_context,
        wrappername: *const ::std::os::raw::c_char,
        optionname: *const ::std::os::raw::c_char,
        optionvalue: *mut *mut *mut zval,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_stream_context_set_option(
        context: *mut php_stream_context,
        wrappername: *const ::std::os::raw::c_char,
        optionname: *const ::std::os::raw::c_char,
        optionvalue: *mut zval,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_stream_notification_alloc() -> *mut php_stream_notifier;
}
extern "C" {
    pub fn php_stream_notification_free(notifier: *mut php_stream_notifier);
}
extern "C" {
    pub fn php_stream_notification_notify(
        context: *mut php_stream_context,
        notifycode: ::std::os::raw::c_int,
        severity: ::std::os::raw::c_int,
        xmsg: *mut ::std::os::raw::c_char,
        xcode: ::std::os::raw::c_int,
        bytes_sofar: size_t,
        bytes_max: size_t,
        ptr: *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn php_stream_context_set(
        stream: *mut php_stream,
        context: *mut php_stream_context,
    ) -> *mut php_stream_context;
}
pub type php_stream_bucket = _php_stream_bucket;
pub type php_stream_bucket_brigade = _php_stream_bucket_brigade;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_bucket {
    pub next: *mut php_stream_bucket,
    pub prev: *mut php_stream_bucket,
    pub brigade: *mut php_stream_bucket_brigade,
    pub buf: *mut ::std::os::raw::c_char,
    pub buflen: size_t,
    pub own_buf: ::std::os::raw::c_int,
    pub is_persistent: ::std::os::raw::c_int,
    pub refcount: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout__php_stream_bucket() {
    assert_eq!(
        ::std::mem::size_of::<_php_stream_bucket>(),
        56usize,
        concat!("Size of: ", stringify!(_php_stream_bucket))
    );
    assert_eq!(
        ::std::mem::align_of::<_php_stream_bucket>(),
        8usize,
        concat!("Alignment of ", stringify!(_php_stream_bucket))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).next as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_bucket),
            "::",
            stringify!(next)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).prev as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_bucket),
            "::",
            stringify!(prev)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).brigade as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_bucket),
            "::",
            stringify!(brigade)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).buf as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_bucket),
            "::",
            stringify!(buf)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).buflen as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_bucket),
            "::",
            stringify!(buflen)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).own_buf as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_bucket),
            "::",
            stringify!(own_buf)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_php_stream_bucket>())).is_persistent as *const _ as usize
        },
        44usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_bucket),
            "::",
            stringify!(is_persistent)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).refcount as *const _ as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_bucket),
            "::",
            stringify!(refcount)
        )
    );
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_bucket_brigade {
    pub head: *mut php_stream_bucket,
    pub tail: *mut php_stream_bucket,
}
#[test]
fn bindgen_test_layout__php_stream_bucket_brigade() {
    assert_eq!(
        ::std::mem::size_of::<_php_stream_bucket_brigade>(),
        16usize,
        concat!("Size of: ", stringify!(_php_stream_bucket_brigade))
    );
    assert_eq!(
        ::std::mem::align_of::<_php_stream_bucket_brigade>(),
        8usize,
        concat!("Alignment of ", stringify!(_php_stream_bucket_brigade))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_bucket_brigade>())).head as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_bucket_brigade),
            "::",
            stringify!(head)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_bucket_brigade>())).tail as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_bucket_brigade),
            "::",
            stringify!(tail)
        )
    );
}
pub const php_stream_filter_status_t_PSFS_ERR_FATAL: php_stream_filter_status_t = 0;
pub const php_stream_filter_status_t_PSFS_FEED_ME: php_stream_filter_status_t = 1;
pub const php_stream_filter_status_t_PSFS_PASS_ON: php_stream_filter_status_t = 2;
pub type php_stream_filter_status_t = ::std::os::raw::c_uint;
extern "C" {
    pub fn php_stream_bucket_new(
        stream: *mut php_stream,
        buf: *mut ::std::os::raw::c_char,
        buflen: size_t,
        own_buf: ::std::os::raw::c_int,
        buf_persistent: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut php_stream_bucket;
}
extern "C" {
    pub fn php_stream_bucket_split(
        in_: *mut php_stream_bucket,
        left: *mut *mut php_stream_bucket,
        right: *mut *mut php_stream_bucket,
        length: size_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_stream_bucket_delref(
        bucket: *mut php_stream_bucket,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn php_stream_bucket_prepend(
        brigade: *mut php_stream_bucket_brigade,
        bucket: *mut php_stream_bucket,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn php_stream_bucket_append(
        brigade: *mut php_stream_bucket_brigade,
        bucket: *mut php_stream_bucket,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn php_stream_bucket_unlink(
        bucket: *mut php_stream_bucket,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn php_stream_bucket_make_writeable(
        bucket: *mut php_stream_bucket,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut php_stream_bucket;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_filter_ops {
    pub filter: ::std::option::Option<
        unsafe extern "C" fn(
            stream: *mut php_stream,
            thisfilter: *mut php_stream_filter,
            buckets_in: *mut php_stream_bucket_brigade,
            buckets_out: *mut php_stream_bucket_brigade,
            bytes_consumed: *mut size_t,
            flags: ::std::os::raw::c_int,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> php_stream_filter_status_t,
    >,
    pub dtor: ::std::option::Option<
        unsafe extern "C" fn(
            thisfilter: *mut php_stream_filter,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ),
    >,
    pub label: *const ::std::os::raw::c_char,
}
#[test]
fn bindgen_test_layout__php_stream_filter_ops() {
    assert_eq!(
        ::std::mem::size_of::<_php_stream_filter_ops>(),
        24usize,
        concat!("Size of: ", stringify!(_php_stream_filter_ops))
    );
    assert_eq!(
        ::std::mem::align_of::<_php_stream_filter_ops>(),
        8usize,
        concat!("Alignment of ", stringify!(_php_stream_filter_ops))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_filter_ops>())).filter as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_filter_ops),
            "::",
            stringify!(filter)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_filter_ops>())).dtor as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_filter_ops),
            "::",
            stringify!(dtor)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_filter_ops>())).label as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_filter_ops),
            "::",
            stringify!(label)
        )
    );
}
pub type php_stream_filter_ops = _php_stream_filter_ops;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_filter_chain {
    pub head: *mut php_stream_filter,
    pub tail: *mut php_stream_filter,
    pub stream: *mut php_stream,
}
#[test]
fn bindgen_test_layout__php_stream_filter_chain() {
    assert_eq!(
        ::std::mem::size_of::<_php_stream_filter_chain>(),
        24usize,
        concat!("Size of: ", stringify!(_php_stream_filter_chain))
    );
    assert_eq!(
        ::std::mem::align_of::<_php_stream_filter_chain>(),
        8usize,
        concat!("Alignment of ", stringify!(_php_stream_filter_chain))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_filter_chain>())).head as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_filter_chain),
            "::",
            stringify!(head)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_filter_chain>())).tail as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_filter_chain),
            "::",
            stringify!(tail)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_filter_chain>())).stream as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_filter_chain),
            "::",
            stringify!(stream)
        )
    );
}
pub type php_stream_filter_chain = _php_stream_filter_chain;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_filter {
    pub fops: *mut php_stream_filter_ops,
    pub abstract_: *mut ::std::os::raw::c_void,
    pub next: *mut php_stream_filter,
    pub prev: *mut php_stream_filter,
    pub is_persistent: ::std::os::raw::c_int,
    pub chain: *mut php_stream_filter_chain,
    pub buffer: php_stream_bucket_brigade,
    pub rsrc_id: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout__php_stream_filter() {
    assert_eq!(
        ::std::mem::size_of::<_php_stream_filter>(),
        72usize,
        concat!("Size of: ", stringify!(_php_stream_filter))
    );
    assert_eq!(
        ::std::mem::align_of::<_php_stream_filter>(),
        8usize,
        concat!("Alignment of ", stringify!(_php_stream_filter))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).fops as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_filter),
            "::",
            stringify!(fops)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).abstract_ as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_filter),
            "::",
            stringify!(abstract_)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).next as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_filter),
            "::",
            stringify!(next)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).prev as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_filter),
            "::",
            stringify!(prev)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_php_stream_filter>())).is_persistent as *const _ as usize
        },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_filter),
            "::",
            stringify!(is_persistent)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).chain as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_filter),
            "::",
            stringify!(chain)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).buffer as *const _ as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_filter),
            "::",
            stringify!(buffer)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).rsrc_id as *const _ as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_filter),
            "::",
            stringify!(rsrc_id)
        )
    );
}
extern "C" {
    pub fn php_stream_filter_prepend_ex(
        chain: *mut php_stream_filter_chain,
        filter: *mut php_stream_filter,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_stream_filter_append_ex(
        chain: *mut php_stream_filter_chain,
        filter: *mut php_stream_filter,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_stream_filter_remove(
        filter: *mut php_stream_filter,
        call_dtor: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut php_stream_filter;
}
extern "C" {
    pub fn php_stream_filter_free(
        filter: *mut php_stream_filter,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_filter_factory {
    pub create_filter: ::std::option::Option<
        unsafe extern "C" fn(
            filtername: *const ::std::os::raw::c_char,
            filterparams: *mut zval,
            persistent: ::std::os::raw::c_int,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> *mut php_stream_filter,
    >,
}
#[test]
fn bindgen_test_layout__php_stream_filter_factory() {
    assert_eq!(
        ::std::mem::size_of::<_php_stream_filter_factory>(),
        8usize,
        concat!("Size of: ", stringify!(_php_stream_filter_factory))
    );
    assert_eq!(
        ::std::mem::align_of::<_php_stream_filter_factory>(),
        8usize,
        concat!("Alignment of ", stringify!(_php_stream_filter_factory))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_php_stream_filter_factory>())).create_filter as *const _
                as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_filter_factory),
            "::",
            stringify!(create_filter)
        )
    );
}
pub type php_stream_filter_factory = _php_stream_filter_factory;
extern "C" {
    pub fn php_stream_filter_register_factory(
        filterpattern: *const ::std::os::raw::c_char,
        factory: *mut php_stream_filter_factory,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_stream_filter_unregister_factory(
        filterpattern: *const ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_stream_filter_register_factory_volatile(
        filterpattern: *const ::std::os::raw::c_char,
        factory: *mut php_stream_filter_factory,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_stream_filter_create(
        filtername: *const ::std::os::raw::c_char,
        filterparams: *mut zval,
        persistent: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut php_stream_filter;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_statbuf {
    pub sb: stat,
}
#[test]
fn bindgen_test_layout__php_stream_statbuf() {
    assert_eq!(
        ::std::mem::size_of::<_php_stream_statbuf>(),
        144usize,
        concat!("Size of: ", stringify!(_php_stream_statbuf))
    );
    assert_eq!(
        ::std::mem::align_of::<_php_stream_statbuf>(),
        8usize,
        concat!("Alignment of ", stringify!(_php_stream_statbuf))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_statbuf>())).sb as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_statbuf),
            "::",
            stringify!(sb)
        )
    );
}
pub type php_stream_statbuf = _php_stream_statbuf;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_ops {
    pub write: ::std::option::Option<
        unsafe extern "C" fn(
            stream: *mut php_stream,
            buf: *const ::std::os::raw::c_char,
            count: size_t,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> size_t,
    >,
    pub read: ::std::option::Option<
        unsafe extern "C" fn(
            stream: *mut php_stream,
            buf: *mut ::std::os::raw::c_char,
            count: size_t,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> size_t,
    >,
    pub close: ::std::option::Option<
        unsafe extern "C" fn(
            stream: *mut php_stream,
            close_handle: ::std::os::raw::c_int,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >,
    pub flush: ::std::option::Option<
        unsafe extern "C" fn(
            stream: *mut php_stream,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >,
    pub label: *const ::std::os::raw::c_char,
    pub seek: ::std::option::Option<
        unsafe extern "C" fn(
            stream: *mut php_stream,
            offset: off_t,
            whence: ::std::os::raw::c_int,
            newoffset: *mut off_t,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >,
    pub cast: ::std::option::Option<
        unsafe extern "C" fn(
            stream: *mut php_stream,
            castas: ::std::os::raw::c_int,
            ret: *mut *mut ::std::os::raw::c_void,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >,
    pub stat: ::std::option::Option<
        unsafe extern "C" fn(
            stream: *mut php_stream,
            ssb: *mut php_stream_statbuf,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >,
    pub set_option: ::std::option::Option<
        unsafe extern "C" fn(
            stream: *mut php_stream,
            option: ::std::os::raw::c_int,
            value: ::std::os::raw::c_int,
            ptrparam: *mut ::std::os::raw::c_void,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >,
}
#[test]
fn bindgen_test_layout__php_stream_ops() {
    assert_eq!(
        ::std::mem::size_of::<_php_stream_ops>(),
        72usize,
        concat!("Size of: ", stringify!(_php_stream_ops))
    );
    assert_eq!(
        ::std::mem::align_of::<_php_stream_ops>(),
        8usize,
        concat!("Alignment of ", stringify!(_php_stream_ops))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).write as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_ops),
            "::",
            stringify!(write)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).read as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_ops),
            "::",
            stringify!(read)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).close as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_ops),
            "::",
            stringify!(close)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).flush as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_ops),
            "::",
            stringify!(flush)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).label as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_ops),
            "::",
            stringify!(label)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).seek as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_ops),
            "::",
            stringify!(seek)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).cast as *const _ as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_ops),
            "::",
            stringify!(cast)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).stat as *const _ as usize },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_ops),
            "::",
            stringify!(stat)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).set_option as *const _ as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_ops),
            "::",
            stringify!(set_option)
        )
    );
}
pub type php_stream_ops = _php_stream_ops;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_wrapper_ops {
    pub stream_opener: ::std::option::Option<
        unsafe extern "C" fn(
            wrapper: *mut php_stream_wrapper,
            filename: *const ::std::os::raw::c_char,
            mode: *const ::std::os::raw::c_char,
            options: ::std::os::raw::c_int,
            opened_path: *mut *mut ::std::os::raw::c_char,
            context: *mut php_stream_context,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> *mut php_stream,
    >,
    pub stream_closer: ::std::option::Option<
        unsafe extern "C" fn(
            wrapper: *mut php_stream_wrapper,
            stream: *mut php_stream,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >,
    pub stream_stat: ::std::option::Option<
        unsafe extern "C" fn(
            wrapper: *mut php_stream_wrapper,
            stream: *mut php_stream,
            ssb: *mut php_stream_statbuf,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >,
    pub url_stat: ::std::option::Option<
        unsafe extern "C" fn(
            wrapper: *mut php_stream_wrapper,
            url: *const ::std::os::raw::c_char,
            flags: ::std::os::raw::c_int,
            ssb: *mut php_stream_statbuf,
            context: *mut php_stream_context,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >,
    pub dir_opener: ::std::option::Option<
        unsafe extern "C" fn(
            wrapper: *mut php_stream_wrapper,
            filename: *const ::std::os::raw::c_char,
            mode: *const ::std::os::raw::c_char,
            options: ::std::os::raw::c_int,
            opened_path: *mut *mut ::std::os::raw::c_char,
            context: *mut php_stream_context,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> *mut php_stream,
    >,
    pub label: *const ::std::os::raw::c_char,
    pub unlink: ::std::option::Option<
        unsafe extern "C" fn(
            wrapper: *mut php_stream_wrapper,
            url: *const ::std::os::raw::c_char,
            options: ::std::os::raw::c_int,
            context: *mut php_stream_context,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >,
    pub rename: ::std::option::Option<
        unsafe extern "C" fn(
            wrapper: *mut php_stream_wrapper,
            url_from: *const ::std::os::raw::c_char,
            url_to: *const ::std::os::raw::c_char,
            options: ::std::os::raw::c_int,
            context: *mut php_stream_context,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >,
    pub stream_mkdir: ::std::option::Option<
        unsafe extern "C" fn(
            wrapper: *mut php_stream_wrapper,
            url: *const ::std::os::raw::c_char,
            mode: ::std::os::raw::c_int,
            options: ::std::os::raw::c_int,
            context: *mut php_stream_context,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >,
    pub stream_rmdir: ::std::option::Option<
        unsafe extern "C" fn(
            wrapper: *mut php_stream_wrapper,
            url: *const ::std::os::raw::c_char,
            options: ::std::os::raw::c_int,
            context: *mut php_stream_context,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >,
    pub stream_metadata: ::std::option::Option<
        unsafe extern "C" fn(
            wrapper: *mut php_stream_wrapper,
            url: *const ::std::os::raw::c_char,
            options: ::std::os::raw::c_int,
            value: *mut ::std::os::raw::c_void,
            context: *mut php_stream_context,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >,
}
#[test]
fn bindgen_test_layout__php_stream_wrapper_ops() {
    assert_eq!(
        ::std::mem::size_of::<_php_stream_wrapper_ops>(),
        88usize,
        concat!("Size of: ", stringify!(_php_stream_wrapper_ops))
    );
    assert_eq!(
        ::std::mem::align_of::<_php_stream_wrapper_ops>(),
        8usize,
        concat!("Alignment of ", stringify!(_php_stream_wrapper_ops))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_opener as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_wrapper_ops),
            "::",
            stringify!(stream_opener)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_closer as *const _ as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_wrapper_ops),
            "::",
            stringify!(stream_closer)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_stat as *const _ as usize
        },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_wrapper_ops),
            "::",
            stringify!(stream_stat)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).url_stat as *const _ as usize
        },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_wrapper_ops),
            "::",
            stringify!(url_stat)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).dir_opener as *const _ as usize
        },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_wrapper_ops),
            "::",
            stringify!(dir_opener)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).label as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_wrapper_ops),
            "::",
            stringify!(label)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).unlink as *const _ as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_wrapper_ops),
            "::",
            stringify!(unlink)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).rename as *const _ as usize },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_wrapper_ops),
            "::",
            stringify!(rename)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_mkdir as *const _ as usize
        },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_wrapper_ops),
            "::",
            stringify!(stream_mkdir)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_rmdir as *const _ as usize
        },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_wrapper_ops),
            "::",
            stringify!(stream_rmdir)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_metadata as *const _ as usize
        },
        80usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_wrapper_ops),
            "::",
            stringify!(stream_metadata)
        )
    );
}
pub type php_stream_wrapper_ops = _php_stream_wrapper_ops;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream_wrapper {
    pub wops: *mut php_stream_wrapper_ops,
    pub abstract_: *mut ::std::os::raw::c_void,
    pub is_url: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout__php_stream_wrapper() {
    assert_eq!(
        ::std::mem::size_of::<_php_stream_wrapper>(),
        24usize,
        concat!("Size of: ", stringify!(_php_stream_wrapper))
    );
    assert_eq!(
        ::std::mem::align_of::<_php_stream_wrapper>(),
        8usize,
        concat!("Alignment of ", stringify!(_php_stream_wrapper))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper>())).wops as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_wrapper),
            "::",
            stringify!(wops)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper>())).abstract_ as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_wrapper),
            "::",
            stringify!(abstract_)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper>())).is_url as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream_wrapper),
            "::",
            stringify!(is_url)
        )
    );
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _php_stream {
    pub ops: *mut php_stream_ops,
    pub abstract_: *mut ::std::os::raw::c_void,
    pub readfilters: php_stream_filter_chain,
    pub writefilters: php_stream_filter_chain,
    pub wrapper: *mut php_stream_wrapper,
    pub wrapperthis: *mut ::std::os::raw::c_void,
    pub wrapperdata: *mut zval,
    pub fgetss_state: ::std::os::raw::c_int,
    pub is_persistent: ::std::os::raw::c_int,
    pub mode: [::std::os::raw::c_char; 16usize],
    pub rsrc_id: ::std::os::raw::c_int,
    pub in_free: ::std::os::raw::c_int,
    pub fclose_stdiocast: ::std::os::raw::c_int,
    pub stdiocast: *mut FILE,
    pub orig_path: *mut ::std::os::raw::c_char,
    pub context: *mut php_stream_context,
    pub flags: ::std::os::raw::c_int,
    pub position: off_t,
    pub readbuf: *mut ::std::os::raw::c_uchar,
    pub readbuflen: size_t,
    pub readpos: off_t,
    pub writepos: off_t,
    pub chunk_size: size_t,
    pub eof: ::std::os::raw::c_int,
    pub enclosing_stream: *mut _php_stream,
}
#[test]
fn bindgen_test_layout__php_stream() {
    assert_eq!(
        ::std::mem::size_of::<_php_stream>(),
        224usize,
        concat!("Size of: ", stringify!(_php_stream))
    );
    assert_eq!(
        ::std::mem::align_of::<_php_stream>(),
        8usize,
        concat!("Alignment of ", stringify!(_php_stream))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).ops as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(ops)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).abstract_ as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(abstract_)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).readfilters as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(readfilters)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).writefilters as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(writefilters)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).wrapper as *const _ as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(wrapper)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).wrapperthis as *const _ as usize },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(wrapperthis)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).wrapperdata as *const _ as usize },
        80usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(wrapperdata)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).fgetss_state as *const _ as usize },
        88usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(fgetss_state)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).is_persistent as *const _ as usize },
        92usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(is_persistent)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).mode as *const _ as usize },
        96usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(mode)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).rsrc_id as *const _ as usize },
        112usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(rsrc_id)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).in_free as *const _ as usize },
        116usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(in_free)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).fclose_stdiocast as *const _ as usize },
        120usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(fclose_stdiocast)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).stdiocast as *const _ as usize },
        128usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(stdiocast)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).orig_path as *const _ as usize },
        136usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(orig_path)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).context as *const _ as usize },
        144usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(context)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).flags as *const _ as usize },
        152usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(flags)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).position as *const _ as usize },
        160usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(position)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).readbuf as *const _ as usize },
        168usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(readbuf)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).readbuflen as *const _ as usize },
        176usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(readbuflen)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).readpos as *const _ as usize },
        184usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(readpos)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).writepos as *const _ as usize },
        192usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(writepos)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).chunk_size as *const _ as usize },
        200usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(chunk_size)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).eof as *const _ as usize },
        208usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(eof)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_php_stream>())).enclosing_stream as *const _ as usize },
        216usize,
        concat!(
            "Offset of field: ",
            stringify!(_php_stream),
            "::",
            stringify!(enclosing_stream)
        )
    );
}
extern "C" {
    pub fn php_stream_encloses(
        enclosing: *mut php_stream,
        enclosed: *mut php_stream,
    ) -> *mut php_stream;
}
extern "C" {
    pub fn php_stream_from_persistent_id(
        persistent_id: *const ::std::os::raw::c_char,
        stream: *mut *mut php_stream,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_stream_get_record(
        stream: *mut php_stream,
        maxlen: size_t,
        returned_len: *mut size_t,
        delim: *const ::std::os::raw::c_char,
        delim_len: size_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn php_stream_dirent_alphasort(
        a: *mut *const ::std::os::raw::c_char,
        b: *mut *const ::std::os::raw::c_char,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_stream_dirent_alphasortr(
        a: *mut *const ::std::os::raw::c_char,
        b: *mut *const ::std::os::raw::c_char,
    ) -> ::std::os::raw::c_int;
}
pub type php_stream_transport_factory_func = ::std::option::Option<
    unsafe extern "C" fn(
        proto: *const ::std::os::raw::c_char,
        protolen: size_t,
        resourcename: *const ::std::os::raw::c_char,
        resourcenamelen: size_t,
        persistent_id: *const ::std::os::raw::c_char,
        options: ::std::os::raw::c_int,
        flags: ::std::os::raw::c_int,
        timeout: *mut timeval,
        context: *mut php_stream_context,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut php_stream,
>;
pub type php_stream_transport_factory = php_stream_transport_factory_func;
extern "C" {
    pub fn php_stream_xport_register(
        protocol: *const ::std::os::raw::c_char,
        factory: php_stream_transport_factory,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_stream_xport_unregister(
        protocol: *const ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_stream_xport_bind(
        stream: *mut php_stream,
        name: *const ::std::os::raw::c_char,
        namelen: size_t,
        error_text: *mut *mut ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_stream_xport_connect(
        stream: *mut php_stream,
        name: *const ::std::os::raw::c_char,
        namelen: size_t,
        asynchronous: ::std::os::raw::c_int,
        timeout: *mut timeval,
        error_text: *mut *mut ::std::os::raw::c_char,
        error_code: *mut ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_stream_xport_listen(
        stream: *mut php_stream,
        backlog: ::std::os::raw::c_int,
        error_text: *mut *mut ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_stream_xport_accept(
        stream: *mut php_stream,
        client: *mut *mut php_stream,
        textaddr: *mut *mut ::std::os::raw::c_char,
        textaddrlen: *mut ::std::os::raw::c_int,
        addr: *mut *mut ::std::os::raw::c_void,
        addrlen: *mut socklen_t,
        timeout: *mut timeval,
        error_text: *mut *mut ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_stream_xport_get_name(
        stream: *mut php_stream,
        want_peer: ::std::os::raw::c_int,
        textaddr: *mut *mut ::std::os::raw::c_char,
        textaddrlen: *mut ::std::os::raw::c_int,
        addr: *mut *mut ::std::os::raw::c_void,
        addrlen: *mut socklen_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_stream_xport_recvfrom(
        stream: *mut php_stream,
        buf: *mut ::std::os::raw::c_char,
        buflen: size_t,
        flags: ::std::os::raw::c_long,
        addr: *mut *mut ::std::os::raw::c_void,
        addrlen: *mut socklen_t,
        textaddr: *mut *mut ::std::os::raw::c_char,
        textaddrlen: *mut ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_stream_xport_sendto(
        stream: *mut php_stream,
        buf: *const ::std::os::raw::c_char,
        buflen: size_t,
        flags: ::std::os::raw::c_long,
        addr: *mut ::std::os::raw::c_void,
        addrlen: socklen_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
pub const stream_shutdown_t_STREAM_SHUT_RD: stream_shutdown_t = 0;
pub const stream_shutdown_t_STREAM_SHUT_WR: stream_shutdown_t = 1;
pub const stream_shutdown_t_STREAM_SHUT_RDWR: stream_shutdown_t = 2;
pub type stream_shutdown_t = ::std::os::raw::c_uint;
extern "C" {
    pub fn php_stream_xport_shutdown(
        stream: *mut php_stream,
        how: stream_shutdown_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv2_CLIENT:
    php_stream_xport_crypt_method_t = 3;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv3_CLIENT:
    php_stream_xport_crypt_method_t = 5;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv23_CLIENT:
    php_stream_xport_crypt_method_t = 57;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_0_CLIENT:
    php_stream_xport_crypt_method_t = 9;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_1_CLIENT:
    php_stream_xport_crypt_method_t = 17;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT:
    php_stream_xport_crypt_method_t = 33;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLS_CLIENT:
    php_stream_xport_crypt_method_t = 9;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLS_ANY_CLIENT:
    php_stream_xport_crypt_method_t = 57;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_ANY_CLIENT:
    php_stream_xport_crypt_method_t = 63;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv2_SERVER:
    php_stream_xport_crypt_method_t = 2;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv3_SERVER:
    php_stream_xport_crypt_method_t = 4;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv23_SERVER:
    php_stream_xport_crypt_method_t = 56;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_0_SERVER:
    php_stream_xport_crypt_method_t = 8;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_1_SERVER:
    php_stream_xport_crypt_method_t = 16;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_2_SERVER:
    php_stream_xport_crypt_method_t = 32;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLS_SERVER:
    php_stream_xport_crypt_method_t = 8;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLS_ANY_SERVER:
    php_stream_xport_crypt_method_t = 56;
pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_ANY_SERVER:
    php_stream_xport_crypt_method_t = 62;
pub type php_stream_xport_crypt_method_t = ::std::os::raw::c_uint;
extern "C" {
    pub fn php_stream_xport_crypto_setup(
        stream: *mut php_stream,
        crypto_method: php_stream_xport_crypt_method_t,
        session_stream: *mut php_stream,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_stream_xport_crypto_enable(
        stream: *mut php_stream,
        activate: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_stream_xport_get_hash() -> *mut HashTable;
}
extern "C" {
    pub fn php_stream_generic_socket_factory(
        proto: *const ::std::os::raw::c_char,
        protolen: size_t,
        resourcename: *const ::std::os::raw::c_char,
        resourcenamelen: size_t,
        persistent_id: *const ::std::os::raw::c_char,
        options: ::std::os::raw::c_int,
        flags: ::std::os::raw::c_int,
        timeout: *mut timeval,
        context: *mut php_stream_context,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut php_stream;
}
extern "C" {
    pub static mut php_stream_stdio_ops: php_stream_ops;
}
extern "C" {
    pub static mut php_plain_files_wrapper: php_stream_wrapper;
}
extern "C" {
    pub static mut php_glob_stream_wrapper: php_stream_wrapper;
}
extern "C" {
    pub static mut php_glob_stream_ops: php_stream_ops;
}
extern "C" {
    pub static mut php_stream_userspace_ops: php_stream_ops;
}
extern "C" {
    pub static mut php_stream_userspace_dir_ops: php_stream_ops;
}
extern "C" {
    pub fn php_init_stream_wrappers(
        module_number: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_shutdown_stream_wrappers(
        module_number: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_shutdown_stream_hashes(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn php_register_url_stream_wrapper(
        protocol: *const ::std::os::raw::c_char,
        wrapper: *mut php_stream_wrapper,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_unregister_url_stream_wrapper(
        protocol: *const ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_register_url_stream_wrapper_volatile(
        protocol: *const ::std::os::raw::c_char,
        wrapper: *mut php_stream_wrapper,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_unregister_url_stream_wrapper_volatile(
        protocol: *const ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_stream_locate_url_wrapper(
        path: *const ::std::os::raw::c_char,
        path_for_open: *mut *const ::std::os::raw::c_char,
        options: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut php_stream_wrapper;
}
extern "C" {
    pub fn php_stream_locate_eol(
        stream: *mut php_stream,
        buf: *const ::std::os::raw::c_char,
        buf_len: size_t,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn php_stream_wrapper_log_error(
        wrapper: *mut php_stream_wrapper,
        options: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        fmt: *const ::std::os::raw::c_char,
        ...
    );
}
extern "C" {
    pub fn php_stream_get_url_stream_wrappers_hash_global() -> *mut HashTable;
}
extern "C" {
    pub fn php_get_stream_filters_hash_global() -> *mut HashTable;
}
extern "C" {
    pub static mut php_stream_user_wrapper_ops: *mut php_stream_wrapper_ops;
}
extern "C" {
    pub static mut php_stream_memory_ops: php_stream_ops;
}
extern "C" {
    pub static mut php_stream_temp_ops: php_stream_ops;
}
extern "C" {
    pub static mut php_stream_rfc2397_ops: php_stream_ops;
}
extern "C" {
    pub static mut php_stream_rfc2397_wrapper: php_stream_wrapper;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_ini_entry {
    pub module_number: ::std::os::raw::c_int,
    pub modifiable: ::std::os::raw::c_int,
    pub name: *mut ::std::os::raw::c_char,
    pub name_length: uint,
    pub on_modify: ::std::option::Option<
        unsafe extern "C" fn(
            entry: *mut zend_ini_entry,
            new_value: *mut ::std::os::raw::c_char,
            new_value_length: uint,
            mh_arg1: *mut ::std::os::raw::c_void,
            mh_arg2: *mut ::std::os::raw::c_void,
            mh_arg3: *mut ::std::os::raw::c_void,
            stage: ::std::os::raw::c_int,
            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
        ) -> ::std::os::raw::c_int,
    >,
    pub mh_arg1: *mut ::std::os::raw::c_void,
    pub mh_arg2: *mut ::std::os::raw::c_void,
    pub mh_arg3: *mut ::std::os::raw::c_void,
    pub value: *mut ::std::os::raw::c_char,
    pub value_length: uint,
    pub orig_value: *mut ::std::os::raw::c_char,
    pub orig_value_length: uint,
    pub orig_modifiable: ::std::os::raw::c_int,
    pub modified: ::std::os::raw::c_int,
    pub displayer: ::std::option::Option<
        unsafe extern "C" fn(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int),
    >,
}
#[test]
fn bindgen_test_layout__zend_ini_entry() {
    assert_eq!(
        ::std::mem::size_of::<_zend_ini_entry>(),
        104usize,
        concat!("Size of: ", stringify!(_zend_ini_entry))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_ini_entry>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_ini_entry))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).module_number as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_entry),
            "::",
            stringify!(module_number)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).modifiable as *const _ as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_entry),
            "::",
            stringify!(modifiable)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).name as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_entry),
            "::",
            stringify!(name)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).name_length as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_entry),
            "::",
            stringify!(name_length)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).on_modify as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_entry),
            "::",
            stringify!(on_modify)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).mh_arg1 as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_entry),
            "::",
            stringify!(mh_arg1)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).mh_arg2 as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_entry),
            "::",
            stringify!(mh_arg2)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).mh_arg3 as *const _ as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_entry),
            "::",
            stringify!(mh_arg3)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).value as *const _ as usize },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_entry),
            "::",
            stringify!(value)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).value_length as *const _ as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_entry),
            "::",
            stringify!(value_length)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).orig_value as *const _ as usize },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_entry),
            "::",
            stringify!(orig_value)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_ini_entry>())).orig_value_length as *const _ as usize
        },
        80usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_entry),
            "::",
            stringify!(orig_value_length)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).orig_modifiable as *const _ as usize },
        84usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_entry),
            "::",
            stringify!(orig_modifiable)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).modified as *const _ as usize },
        88usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_entry),
            "::",
            stringify!(modified)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).displayer as *const _ as usize },
        96usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_entry),
            "::",
            stringify!(displayer)
        )
    );
}
extern "C" {
    pub fn zend_ini_startup(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_ini_shutdown(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_ini_global_shutdown(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_ini_deactivate(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_copy_ini_directives(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_ini_sort_entries(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_register_ini_entries(
        ini_entry: *const zend_ini_entry,
        module_number: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_unregister_ini_entries(
        module_number: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_ini_refresh_caches(
        stage: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_alter_ini_entry(
        name: *mut ::std::os::raw::c_char,
        name_length: uint,
        new_value: *mut ::std::os::raw::c_char,
        new_value_length: uint,
        modify_type: ::std::os::raw::c_int,
        stage: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_alter_ini_entry_ex(
        name: *mut ::std::os::raw::c_char,
        name_length: uint,
        new_value: *mut ::std::os::raw::c_char,
        new_value_length: uint,
        modify_type: ::std::os::raw::c_int,
        stage: ::std::os::raw::c_int,
        force_change: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_restore_ini_entry(
        name: *mut ::std::os::raw::c_char,
        name_length: uint,
        stage: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_ini_long(
        name: *mut ::std::os::raw::c_char,
        name_length: uint,
        orig: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_long;
}
extern "C" {
    pub fn zend_ini_double(
        name: *mut ::std::os::raw::c_char,
        name_length: uint,
        orig: ::std::os::raw::c_int,
    ) -> f64;
}
extern "C" {
    pub fn zend_ini_string(
        name: *mut ::std::os::raw::c_char,
        name_length: uint,
        orig: ::std::os::raw::c_int,
    ) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn zend_ini_string_ex(
        name: *mut ::std::os::raw::c_char,
        name_length: uint,
        orig: ::std::os::raw::c_int,
        exists: *mut zend_bool,
    ) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn zend_ini_register_displayer(
        name: *mut ::std::os::raw::c_char,
        name_length: uint,
        displayer: ::std::option::Option<
            unsafe extern "C" fn(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int),
        >,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_ini_boolean_displayer_cb(
        ini_entry: *mut zend_ini_entry,
        type_: ::std::os::raw::c_int,
    );
}
extern "C" {
    pub fn zend_ini_color_displayer_cb(
        ini_entry: *mut zend_ini_entry,
        type_: ::std::os::raw::c_int,
    );
}
pub type zend_ini_parser_cb_t = ::std::option::Option<
    unsafe extern "C" fn(
        arg1: *mut zval,
        arg2: *mut zval,
        arg3: *mut zval,
        callback_type: ::std::os::raw::c_int,
        arg: *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ),
>;
extern "C" {
    pub fn zend_parse_ini_file(
        fh: *mut zend_file_handle,
        unbuffered_errors: zend_bool,
        scanner_mode: ::std::os::raw::c_int,
        ini_parser_cb: zend_ini_parser_cb_t,
        arg: *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_parse_ini_string(
        str_: *mut ::std::os::raw::c_char,
        unbuffered_errors: zend_bool,
        scanner_mode: ::std::os::raw::c_int,
        ini_parser_cb: zend_ini_parser_cb_t,
        arg: *mut ::std::os::raw::c_void,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_ini_parser_param {
    pub ini_parser_cb: zend_ini_parser_cb_t,
    pub arg: *mut ::std::os::raw::c_void,
}
#[test]
fn bindgen_test_layout__zend_ini_parser_param() {
    assert_eq!(
        ::std::mem::size_of::<_zend_ini_parser_param>(),
        16usize,
        concat!("Size of: ", stringify!(_zend_ini_parser_param))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_ini_parser_param>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_ini_parser_param))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_ini_parser_param>())).ini_parser_cb as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_parser_param),
            "::",
            stringify!(ini_parser_cb)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_ini_parser_param>())).arg as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_ini_parser_param),
            "::",
            stringify!(arg)
        )
    );
}
pub type zend_ini_parser_param = _zend_ini_parser_param;
extern "C" {
    pub fn php_init_config(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void)
        -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_shutdown_config() -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_ini_register_extensions(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn php_parse_user_ini_file(
        dirname: *const ::std::os::raw::c_char,
        ini_filename: *mut ::std::os::raw::c_char,
        target_hash: *mut HashTable,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_ini_activate_config(
        source_hash: *mut HashTable,
        modify_type: ::std::os::raw::c_int,
        stage: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn php_ini_has_per_dir_config() -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_ini_has_per_host_config() -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_ini_activate_per_dir_config(
        path: *mut ::std::os::raw::c_char,
        path_len: uint,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn php_ini_activate_per_host_config(
        host: *const ::std::os::raw::c_char,
        host_len: uint,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn php_ini_get_configuration_hash() -> *mut HashTable;
}
extern "C" {
    pub fn php_fopen_primary_script(
        file_handle: *mut zend_file_handle,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_check_open_basedir(
        path: *const ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_check_open_basedir_ex(
        path: *const ::std::os::raw::c_char,
        warn: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_check_specific_open_basedir(
        basedir: *const ::std::os::raw::c_char,
        path: *const ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_check_safe_mode_include_dir(
        path: *const ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn php_resolve_path(
        filename: *const ::std::os::raw::c_char,
        filename_len: ::std::os::raw::c_int,
        path: *const ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn php_fopen_with_path(
        filename: *const ::std::os::raw::c_char,
        mode: *const ::std::os::raw::c_char,
        path: *const ::std::os::raw::c_char,
        opened_path: *mut *mut ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut FILE;
}
extern "C" {
    pub fn php_strip_url_passwd(path: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _zend_constant {
    pub value: zval,
    pub flags: ::std::os::raw::c_int,
    pub name: *mut ::std::os::raw::c_char,
    pub name_len: uint,
    pub module_number: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout__zend_constant() {
    assert_eq!(
        ::std::mem::size_of::<_zend_constant>(),
        48usize,
        concat!("Size of: ", stringify!(_zend_constant))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_constant>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_constant))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_constant>())).value as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_constant),
            "::",
            stringify!(value)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_constant>())).flags as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_constant),
            "::",
            stringify!(flags)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_constant>())).name as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_constant),
            "::",
            stringify!(name)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_constant>())).name_len as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_constant),
            "::",
            stringify!(name_len)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_constant>())).module_number as *const _ as usize },
        44usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_constant),
            "::",
            stringify!(module_number)
        )
    );
}
pub type zend_constant = _zend_constant;
extern "C" {
    pub fn zend_startup_constants(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_shutdown_constants(
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_register_standard_constants(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_get_constant(
        name: *const ::std::os::raw::c_char,
        name_len: uint,
        result: *mut zval,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_get_constant_ex(
        name: *const ::std::os::raw::c_char,
        name_len: uint,
        result: *mut zval,
        scope: *mut zend_class_entry,
        flags: ulong,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_register_bool_constant(
        name: *const ::std::os::raw::c_char,
        name_len: uint,
        bval: zend_bool,
        flags: ::std::os::raw::c_int,
        module_number: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_register_null_constant(
        name: *const ::std::os::raw::c_char,
        name_len: uint,
        flags: ::std::os::raw::c_int,
        module_number: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_register_long_constant(
        name: *const ::std::os::raw::c_char,
        name_len: uint,
        lval: ::std::os::raw::c_long,
        flags: ::std::os::raw::c_int,
        module_number: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_register_double_constant(
        name: *const ::std::os::raw::c_char,
        name_len: uint,
        dval: f64,
        flags: ::std::os::raw::c_int,
        module_number: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_register_string_constant(
        name: *const ::std::os::raw::c_char,
        name_len: uint,
        strval: *mut ::std::os::raw::c_char,
        flags: ::std::os::raw::c_int,
        module_number: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_register_stringl_constant(
        name: *const ::std::os::raw::c_char,
        name_len: uint,
        strval: *mut ::std::os::raw::c_char,
        strlen: uint,
        flags: ::std::os::raw::c_int,
        module_number: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn zend_register_constant(
        c: *mut zend_constant,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_copy_constants(target: *mut HashTable, sourc: *mut HashTable);
}
extern "C" {
    pub fn zend_quick_get_constant(
        key: *const zend_literal,
        flags: ulong,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut zend_constant;
}
extern "C" {
    pub fn php_info_html_esc(
        string: *mut ::std::os::raw::c_char,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    ) -> *mut ::std::os::raw::c_char;
}
extern "C" {
    pub fn php_info_html_esc_write(
        string: *mut ::std::os::raw::c_char,
        str_len: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn php_print_info_htmlhead(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn php_print_info(
        flag: ::std::os::raw::c_int,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn php_print_style();
}
extern "C" {
    pub fn php_info_print_style(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn php_info_print_table_colspan_header(
        num_cols: ::std::os::raw::c_int,
        header: *mut ::std::os::raw::c_char,
    );
}
extern "C" {
    pub fn php_info_print_table_header(num_cols: ::std::os::raw::c_int, ...);
}
extern "C" {
    pub fn php_info_print_table_row(num_cols: ::std::os::raw::c_int, ...);
}
extern "C" {
    pub fn php_info_print_table_row_ex(
        num_cols: ::std::os::raw::c_int,
        arg1: *const ::std::os::raw::c_char,
        ...
    );
}
extern "C" {
    pub fn php_info_print_table_start();
}
extern "C" {
    pub fn php_info_print_table_end();
}
extern "C" {
    pub fn php_info_print_box_start(bg: ::std::os::raw::c_int);
}
extern "C" {
    pub fn php_info_print_box_end();
}
extern "C" {
    pub fn php_info_print_hr();
}
extern "C" {
    pub fn php_info_print_module(
        module: *mut zend_module_entry,
        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn php_get_uname(mode: ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_extension_version_info {
    pub zend_extension_api_no: ::std::os::raw::c_int,
    pub build_id: *mut ::std::os::raw::c_char,
}
#[test]
fn bindgen_test_layout__zend_extension_version_info() {
    assert_eq!(
        ::std::mem::size_of::<_zend_extension_version_info>(),
        16usize,
        concat!("Size of: ", stringify!(_zend_extension_version_info))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_extension_version_info>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_extension_version_info))
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_extension_version_info>())).zend_extension_api_no
                as *const _ as usize
        },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension_version_info),
            "::",
            stringify!(zend_extension_api_no)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_extension_version_info>())).build_id as *const _ as usize
        },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension_version_info),
            "::",
            stringify!(build_id)
        )
    );
}
pub type zend_extension_version_info = _zend_extension_version_info;
pub type zend_extension = _zend_extension;
pub type startup_func_t = ::std::option::Option<
    unsafe extern "C" fn(extension: *mut zend_extension) -> ::std::os::raw::c_int,
>;
pub type shutdown_func_t =
    ::std::option::Option<unsafe extern "C" fn(extension: *mut zend_extension)>;
pub type activate_func_t = ::std::option::Option<unsafe extern "C" fn()>;
pub type deactivate_func_t = ::std::option::Option<unsafe extern "C" fn()>;
pub type message_handler_func_t = ::std::option::Option<
    unsafe extern "C" fn(message: ::std::os::raw::c_int, arg: *mut ::std::os::raw::c_void),
>;
pub type op_array_handler_func_t =
    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
pub type statement_handler_func_t =
    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
pub type fcall_begin_handler_func_t =
    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
pub type fcall_end_handler_func_t =
    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
pub type op_array_ctor_func_t =
    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
pub type op_array_dtor_func_t =
    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _zend_extension {
    pub name: *mut ::std::os::raw::c_char,
    pub version: *mut ::std::os::raw::c_char,
    pub author: *mut ::std::os::raw::c_char,
    pub URL: *mut ::std::os::raw::c_char,
    pub copyright: *mut ::std::os::raw::c_char,
    pub startup: startup_func_t,
    pub shutdown: shutdown_func_t,
    pub activate: activate_func_t,
    pub deactivate: deactivate_func_t,
    pub message_handler: message_handler_func_t,
    pub op_array_handler: op_array_handler_func_t,
    pub statement_handler: statement_handler_func_t,
    pub fcall_begin_handler: fcall_begin_handler_func_t,
    pub fcall_end_handler: fcall_end_handler_func_t,
    pub op_array_ctor: op_array_ctor_func_t,
    pub op_array_dtor: op_array_dtor_func_t,
    pub api_no_check: ::std::option::Option<
        unsafe extern "C" fn(api_no: ::std::os::raw::c_int) -> ::std::os::raw::c_int,
    >,
    pub build_id_check: ::std::option::Option<
        unsafe extern "C" fn(build_id: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int,
    >,
    pub reserved3: *mut ::std::os::raw::c_void,
    pub reserved4: *mut ::std::os::raw::c_void,
    pub reserved5: *mut ::std::os::raw::c_void,
    pub reserved6: *mut ::std::os::raw::c_void,
    pub reserved7: *mut ::std::os::raw::c_void,
    pub reserved8: *mut ::std::os::raw::c_void,
    pub handle: *mut ::std::os::raw::c_void,
    pub resource_number: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout__zend_extension() {
    assert_eq!(
        ::std::mem::size_of::<_zend_extension>(),
        208usize,
        concat!("Size of: ", stringify!(_zend_extension))
    );
    assert_eq!(
        ::std::mem::align_of::<_zend_extension>(),
        8usize,
        concat!("Alignment of ", stringify!(_zend_extension))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_extension>())).name as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(name)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_extension>())).version as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(version)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_extension>())).author as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(author)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_extension>())).URL as *const _ as usize },
        24usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(URL)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_extension>())).copyright as *const _ as usize },
        32usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(copyright)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_extension>())).startup as *const _ as usize },
        40usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(startup)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_extension>())).shutdown as *const _ as usize },
        48usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(shutdown)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_extension>())).activate as *const _ as usize },
        56usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(activate)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_extension>())).deactivate as *const _ as usize },
        64usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(deactivate)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_extension>())).message_handler as *const _ as usize },
        72usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(message_handler)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_extension>())).op_array_handler as *const _ as usize
        },
        80usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(op_array_handler)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_extension>())).statement_handler as *const _ as usize
        },
        88usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(statement_handler)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_extension>())).fcall_begin_handler as *const _ as usize
        },
        96usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(fcall_begin_handler)
        )
    );
    assert_eq!(
        unsafe {
            &(*(::std::ptr::null::<_zend_extension>())).fcall_end_handler as *const _ as usize
        },
        104usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(fcall_end_handler)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_extension>())).op_array_ctor as *const _ as usize },
        112usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(op_array_ctor)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_extension>())).op_array_dtor as *const _ as usize },
        120usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(op_array_dtor)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_extension>())).api_no_check as *const _ as usize },
        128usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(api_no_check)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_extension>())).build_id_check as *const _ as usize },
        136usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(build_id_check)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_extension>())).reserved3 as *const _ as usize },
        144usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(reserved3)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_extension>())).reserved4 as *const _ as usize },
        152usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(reserved4)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_extension>())).reserved5 as *const _ as usize },
        160usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(reserved5)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_extension>())).reserved6 as *const _ as usize },
        168usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(reserved6)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_extension>())).reserved7 as *const _ as usize },
        176usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(reserved7)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_extension>())).reserved8 as *const _ as usize },
        184usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(reserved8)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_extension>())).handle as *const _ as usize },
        192usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(handle)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<_zend_extension>())).resource_number as *const _ as usize },
        200usize,
        concat!(
            "Offset of field: ",
            stringify!(_zend_extension),
            "::",
            stringify!(resource_number)
        )
    );
}
extern "C" {
    pub fn zend_get_resource_handle(extension: *mut zend_extension) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_extension_dispatch_message(
        message: ::std::os::raw::c_int,
        arg: *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub static mut zend_extensions: zend_llist;
}
extern "C" {
    pub fn zend_extension_dtor(extension: *mut zend_extension);
}
extern "C" {
    pub fn zend_append_version_info(extension: *const zend_extension);
}
extern "C" {
    pub fn zend_startup_extensions_mechanism() -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_startup_extensions() -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_shutdown_extensions(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn zend_load_extension(path: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_register_extension(
        new_extension: *mut zend_extension,
        handle: *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn zend_get_extension(extension_name: *const ::std::os::raw::c_char)
        -> *mut zend_extension;
}
pub const ZEND_MODULE_BUILD_ID_: &'static [u8; 15usize] = b"API20131226,TS\0";
pub type __builtin_va_list = [__va_list_tag; 1usize];
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __va_list_tag {
    pub gp_offset: ::std::os::raw::c_uint,
    pub fp_offset: ::std::os::raw::c_uint,
    pub overflow_arg_area: *mut ::std::os::raw::c_void,
    pub reg_save_area: *mut ::std::os::raw::c_void,
}
#[test]
fn bindgen_test_layout___va_list_tag() {
    assert_eq!(
        ::std::mem::size_of::<__va_list_tag>(),
        24usize,
        concat!("Size of: ", stringify!(__va_list_tag))
    );
    assert_eq!(
        ::std::mem::align_of::<__va_list_tag>(),
        8usize,
        concat!("Alignment of ", stringify!(__va_list_tag))
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__va_list_tag>())).gp_offset as *const _ as usize },
        0usize,
        concat!(
            "Offset of field: ",
            stringify!(__va_list_tag),
            "::",
            stringify!(gp_offset)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__va_list_tag>())).fp_offset as *const _ as usize },
        4usize,
        concat!(
            "Offset of field: ",
            stringify!(__va_list_tag),
            "::",
            stringify!(fp_offset)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__va_list_tag>())).overflow_arg_area as *const _ as usize },
        8usize,
        concat!(
            "Offset of field: ",
            stringify!(__va_list_tag),
            "::",
            stringify!(overflow_arg_area)
        )
    );
    assert_eq!(
        unsafe { &(*(::std::ptr::null::<__va_list_tag>())).reg_save_area as *const _ as usize },
        16usize,
        concat!(
            "Offset of field: ",
            stringify!(__va_list_tag),
            "::",
            stringify!(reg_save_area)
        )
    );
}