php_all_sys/generated/
php56_zts.rs

1/* automatically generated by rust-bindgen 0.57.0 */
2
3#![allow(clippy::all)]
4#![allow(
5    non_upper_case_globals,
6    non_camel_case_types,
7    non_snake_case,
8    clashing_extern_declarations
9)]
10
11#[repr(C)]
12#[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)]
13pub struct __BindgenBitfieldUnit<Storage> {
14    storage: Storage,
15}
16impl<Storage> __BindgenBitfieldUnit<Storage> {
17    #[inline]
18    pub const fn new(storage: Storage) -> Self {
19        Self { storage }
20    }
21}
22impl<Storage> __BindgenBitfieldUnit<Storage>
23where
24    Storage: AsRef<[u8]> + AsMut<[u8]>,
25{
26    #[inline]
27    pub fn get_bit(&self, index: usize) -> bool {
28        debug_assert!(index / 8 < self.storage.as_ref().len());
29        let byte_index = index / 8;
30        let byte = self.storage.as_ref()[byte_index];
31        let bit_index = if cfg!(target_endian = "big") {
32            7 - (index % 8)
33        } else {
34            index % 8
35        };
36        let mask = 1 << bit_index;
37        byte & mask == mask
38    }
39    #[inline]
40    pub fn set_bit(&mut self, index: usize, val: bool) {
41        debug_assert!(index / 8 < self.storage.as_ref().len());
42        let byte_index = index / 8;
43        let byte = &mut self.storage.as_mut()[byte_index];
44        let bit_index = if cfg!(target_endian = "big") {
45            7 - (index % 8)
46        } else {
47            index % 8
48        };
49        let mask = 1 << bit_index;
50        if val {
51            *byte |= mask;
52        } else {
53            *byte &= !mask;
54        }
55    }
56    #[inline]
57    pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 {
58        debug_assert!(bit_width <= 64);
59        debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
60        debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
61        let mut val = 0;
62        for i in 0..(bit_width as usize) {
63            if self.get_bit(i + bit_offset) {
64                let index = if cfg!(target_endian = "big") {
65                    bit_width as usize - 1 - i
66                } else {
67                    i
68                };
69                val |= 1 << index;
70            }
71        }
72        val
73    }
74    #[inline]
75    pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) {
76        debug_assert!(bit_width <= 64);
77        debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
78        debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
79        for i in 0..(bit_width as usize) {
80            let mask = 1 << i;
81            let val_bit_is_set = val & mask == mask;
82            let index = if cfg!(target_endian = "big") {
83                bit_width as usize - 1 - i
84            } else {
85                i
86            };
87            self.set_bit(index + bit_offset, val_bit_is_set);
88        }
89    }
90}
91pub const PHP_API_VERSION: u32 = 20131106;
92pub const PHP_DEFAULT_CHARSET: &'static [u8; 6usize] = b"UTF-8\0";
93pub const PHP_BLOWFISH_CRYPT: u32 = 1;
94pub const PHP_BUILD_DATE: &'static [u8; 11usize] = b"2015-10-29\0";
95pub const PHP_CAN_SUPPORT_PROC_OPEN: u32 = 1;
96pub const PHP_EXT_DES_CRYPT: u32 = 1;
97pub const PHP_HAVE_STDINT_TYPES: u32 = 1;
98pub const PHP_ICONV_IMPL: &'static [u8; 6usize] = b"glibc\0";
99pub const PHP_MD5_CRYPT: u32 = 1;
100pub const PHP_MHASH_BC: u32 = 1;
101pub const PHP_MYSQL_UNIX_SOCK_ADDR: &'static [u8; 28usize] = b"/var/run/mysqld/mysqld.sock\0";
102pub const PHP_ONIG_BAD_KOI8_ENTRY: u32 = 1;
103pub const PHP_OS: &'static [u8; 6usize] = b"Linux\0";
104pub const PHP_SHA256_CRYPT: u32 = 1;
105pub const PHP_SHA512_CRYPT: u32 = 1;
106pub const PHP_SIGCHILD: u32 = 0;
107pub const PHP_STD_DES_CRYPT: u32 = 1;
108pub const PHP_UNAME: &'static [u8; 6usize] = b"Linux\0";
109pub const PHP_USE_PHP_CRYPT_R: u32 = 1;
110pub const PHP_WRITE_STDOUT: u32 = 1;
111pub const ZEND_BROKEN_SPRINTF: u32 = 0;
112pub const ZEND_DEBUG: u32 = 0;
113pub const ZEND_MM_ALIGNMENT: u32 = 8;
114pub const ZEND_MM_ALIGNMENT_LOG2: u32 = 3;
115pub const PHP_MAJOR_VERSION: u32 = 5;
116pub const PHP_MINOR_VERSION: u32 = 6;
117pub const PHP_RELEASE_VERSION: u32 = 15;
118pub const PHP_EXTRA_VERSION: &'static [u8; 20usize] = b"-1+nhojohl~trusty+1\0";
119pub const PHP_VERSION: &'static [u8; 26usize] = b"5.6.15-1+nhojohl~trusty+1\0";
120pub const PHP_VERSION_ID: u32 = 50615;
121pub const ZEND_VERSION: &'static [u8; 6usize] = b"2.6.0\0";
122pub const ZEND_PATHS_SEPARATOR: u8 = 58u8;
123pub const ZEND_EXTENSIONS_SUPPORT: u32 = 1;
124pub const ZEND_ALLOCA_MAX_SIZE: u32 = 32768;
125pub const ZEND_MM_ALIGNMENT_MASK: i32 = -8;
126pub const HASH_KEY_IS_STRING: u32 = 1;
127pub const HASH_KEY_IS_LONG: u32 = 2;
128pub const HASH_KEY_NON_EXISTENT: u32 = 3;
129pub const HASH_KEY_NON_EXISTANT: u32 = 3;
130pub const HASH_UPDATE: u32 = 1;
131pub const HASH_ADD: u32 = 2;
132pub const HASH_NEXT_INSERT: u32 = 4;
133pub const HASH_DEL_KEY: u32 = 0;
134pub const HASH_DEL_INDEX: u32 = 1;
135pub const HASH_DEL_KEY_QUICK: u32 = 2;
136pub const HASH_UPDATE_KEY_IF_NONE: u32 = 0;
137pub const HASH_UPDATE_KEY_IF_BEFORE: u32 = 1;
138pub const HASH_UPDATE_KEY_IF_AFTER: u32 = 2;
139pub const HASH_UPDATE_KEY_ANYWAY: u32 = 3;
140pub const ZEND_HASH_APPLY_KEEP: u32 = 0;
141pub const ZEND_HASH_APPLY_REMOVE: u32 = 1;
142pub const ZEND_HASH_APPLY_STOP: u32 = 2;
143pub const ZEND_MMAP_AHEAD: u32 = 32;
144pub const IS_NULL: u32 = 0;
145pub const IS_LONG: u32 = 1;
146pub const IS_DOUBLE: u32 = 2;
147pub const IS_BOOL: u32 = 3;
148pub const IS_ARRAY: u32 = 4;
149pub const IS_OBJECT: u32 = 5;
150pub const IS_STRING: u32 = 6;
151pub const IS_RESOURCE: u32 = 7;
152pub const IS_CONSTANT: u32 = 8;
153pub const IS_CONSTANT_AST: u32 = 9;
154pub const IS_CALLABLE: u32 = 10;
155pub const IS_CONSTANT_TYPE_MASK: u32 = 15;
156pub const IS_CONSTANT_UNQUALIFIED: u32 = 16;
157pub const IS_LEXICAL_VAR: u32 = 32;
158pub const IS_LEXICAL_REF: u32 = 64;
159pub const IS_CONSTANT_IN_NAMESPACE: u32 = 256;
160pub const ZEND_MAX_RESERVED_RESOURCES: u32 = 4;
161pub const GC_BENCH: u32 = 0;
162pub const GC_COLOR: u32 = 3;
163pub const GC_BLACK: u32 = 0;
164pub const GC_WHITE: u32 = 1;
165pub const GC_GREY: u32 = 2;
166pub const GC_PURPLE: u32 = 3;
167pub const DEBUG_BACKTRACE_PROVIDE_OBJECT: u32 = 1;
168pub const DEBUG_BACKTRACE_IGNORE_ARGS: u32 = 2;
169pub const DEBUG_ZEND: u32 = 0;
170pub const ZEND_ACC_STATIC: u32 = 1;
171pub const ZEND_ACC_ABSTRACT: u32 = 2;
172pub const ZEND_ACC_FINAL: u32 = 4;
173pub const ZEND_ACC_IMPLEMENTED_ABSTRACT: u32 = 8;
174pub const ZEND_ACC_IMPLICIT_ABSTRACT_CLASS: u32 = 16;
175pub const ZEND_ACC_EXPLICIT_ABSTRACT_CLASS: u32 = 32;
176pub const ZEND_ACC_FINAL_CLASS: u32 = 64;
177pub const ZEND_ACC_INTERFACE: u32 = 128;
178pub const ZEND_ACC_TRAIT: u32 = 288;
179pub const ZEND_ACC_INTERACTIVE: u32 = 16;
180pub const ZEND_ACC_PUBLIC: u32 = 256;
181pub const ZEND_ACC_PROTECTED: u32 = 512;
182pub const ZEND_ACC_PRIVATE: u32 = 1024;
183pub const ZEND_ACC_PPP_MASK: u32 = 1792;
184pub const ZEND_ACC_CHANGED: u32 = 2048;
185pub const ZEND_ACC_IMPLICIT_PUBLIC: u32 = 4096;
186pub const ZEND_ACC_CTOR: u32 = 8192;
187pub const ZEND_ACC_DTOR: u32 = 16384;
188pub const ZEND_ACC_CLONE: u32 = 32768;
189pub const ZEND_ACC_ALLOW_STATIC: u32 = 65536;
190pub const ZEND_ACC_SHADOW: u32 = 131072;
191pub const ZEND_ACC_DEPRECATED: u32 = 262144;
192pub const ZEND_ACC_IMPLEMENT_INTERFACES: u32 = 524288;
193pub const ZEND_ACC_IMPLEMENT_TRAITS: u32 = 4194304;
194pub const ZEND_ACC_CONSTANTS_UPDATED: u32 = 1048576;
195pub const ZEND_HAS_STATIC_IN_METHODS: u32 = 8388608;
196pub const ZEND_ACC_CLOSURE: u32 = 1048576;
197pub const ZEND_ACC_GENERATOR: u32 = 8388608;
198pub const ZEND_ACC_CALL_VIA_HANDLER: u32 = 2097152;
199pub const ZEND_ACC_NEVER_CACHE: u32 = 4194304;
200pub const ZEND_ACC_VARIADIC: u32 = 16777216;
201pub const ZEND_ACC_RETURN_REFERENCE: u32 = 67108864;
202pub const ZEND_ACC_DONE_PASS_TWO: u32 = 134217728;
203pub const ZEND_ACC_HAS_TYPE_HINTS: u32 = 268435456;
204pub const ZEND_RETURN_VALUE: u32 = 0;
205pub const ZEND_RETURN_REFERENCE: u32 = 1;
206pub const IS_CONST: u32 = 1;
207pub const IS_TMP_VAR: u32 = 2;
208pub const IS_VAR: u32 = 4;
209pub const IS_UNUSED: u32 = 8;
210pub const IS_CV: u32 = 16;
211pub const ZEND_STACK_APPLY_TOPDOWN: u32 = 1;
212pub const ZEND_STACK_APPLY_BOTTOMUP: u32 = 2;
213pub const ZEND_PTR_STACK_NUM_ARGS: u32 = 3;
214pub const ZEND_EARLY_BINDING_COMPILE_TIME: u32 = 0;
215pub const ZEND_EARLY_BINDING_DELAYED: u32 = 1;
216pub const ZEND_EARLY_BINDING_DELAYED_ALL: u32 = 2;
217pub const ZEND_NOP: u32 = 0;
218pub const ZEND_ADD: u32 = 1;
219pub const ZEND_SUB: u32 = 2;
220pub const ZEND_MUL: u32 = 3;
221pub const ZEND_DIV: u32 = 4;
222pub const ZEND_MOD: u32 = 5;
223pub const ZEND_SL: u32 = 6;
224pub const ZEND_SR: u32 = 7;
225pub const ZEND_CONCAT: u32 = 8;
226pub const ZEND_BW_OR: u32 = 9;
227pub const ZEND_BW_AND: u32 = 10;
228pub const ZEND_BW_XOR: u32 = 11;
229pub const ZEND_BW_NOT: u32 = 12;
230pub const ZEND_BOOL_NOT: u32 = 13;
231pub const ZEND_BOOL_XOR: u32 = 14;
232pub const ZEND_IS_IDENTICAL: u32 = 15;
233pub const ZEND_IS_NOT_IDENTICAL: u32 = 16;
234pub const ZEND_IS_EQUAL: u32 = 17;
235pub const ZEND_IS_NOT_EQUAL: u32 = 18;
236pub const ZEND_IS_SMALLER: u32 = 19;
237pub const ZEND_IS_SMALLER_OR_EQUAL: u32 = 20;
238pub const ZEND_CAST: u32 = 21;
239pub const ZEND_QM_ASSIGN: u32 = 22;
240pub const ZEND_ASSIGN_ADD: u32 = 23;
241pub const ZEND_ASSIGN_SUB: u32 = 24;
242pub const ZEND_ASSIGN_MUL: u32 = 25;
243pub const ZEND_ASSIGN_DIV: u32 = 26;
244pub const ZEND_ASSIGN_MOD: u32 = 27;
245pub const ZEND_ASSIGN_SL: u32 = 28;
246pub const ZEND_ASSIGN_SR: u32 = 29;
247pub const ZEND_ASSIGN_CONCAT: u32 = 30;
248pub const ZEND_ASSIGN_BW_OR: u32 = 31;
249pub const ZEND_ASSIGN_BW_AND: u32 = 32;
250pub const ZEND_ASSIGN_BW_XOR: u32 = 33;
251pub const ZEND_PRE_INC: u32 = 34;
252pub const ZEND_PRE_DEC: u32 = 35;
253pub const ZEND_POST_INC: u32 = 36;
254pub const ZEND_POST_DEC: u32 = 37;
255pub const ZEND_ASSIGN: u32 = 38;
256pub const ZEND_ASSIGN_REF: u32 = 39;
257pub const ZEND_ECHO: u32 = 40;
258pub const ZEND_PRINT: u32 = 41;
259pub const ZEND_JMP: u32 = 42;
260pub const ZEND_JMPZ: u32 = 43;
261pub const ZEND_JMPNZ: u32 = 44;
262pub const ZEND_JMPZNZ: u32 = 45;
263pub const ZEND_JMPZ_EX: u32 = 46;
264pub const ZEND_JMPNZ_EX: u32 = 47;
265pub const ZEND_CASE: u32 = 48;
266pub const ZEND_SWITCH_FREE: u32 = 49;
267pub const ZEND_BRK: u32 = 50;
268pub const ZEND_CONT: u32 = 51;
269pub const ZEND_BOOL: u32 = 52;
270pub const ZEND_INIT_STRING: u32 = 53;
271pub const ZEND_ADD_CHAR: u32 = 54;
272pub const ZEND_ADD_STRING: u32 = 55;
273pub const ZEND_ADD_VAR: u32 = 56;
274pub const ZEND_BEGIN_SILENCE: u32 = 57;
275pub const ZEND_END_SILENCE: u32 = 58;
276pub const ZEND_INIT_FCALL_BY_NAME: u32 = 59;
277pub const ZEND_DO_FCALL: u32 = 60;
278pub const ZEND_DO_FCALL_BY_NAME: u32 = 61;
279pub const ZEND_RETURN: u32 = 62;
280pub const ZEND_RECV: u32 = 63;
281pub const ZEND_RECV_INIT: u32 = 64;
282pub const ZEND_SEND_VAL: u32 = 65;
283pub const ZEND_SEND_VAR: u32 = 66;
284pub const ZEND_SEND_REF: u32 = 67;
285pub const ZEND_NEW: u32 = 68;
286pub const ZEND_INIT_NS_FCALL_BY_NAME: u32 = 69;
287pub const ZEND_FREE: u32 = 70;
288pub const ZEND_INIT_ARRAY: u32 = 71;
289pub const ZEND_ADD_ARRAY_ELEMENT: u32 = 72;
290pub const ZEND_INCLUDE_OR_EVAL: u32 = 73;
291pub const ZEND_UNSET_VAR: u32 = 74;
292pub const ZEND_UNSET_DIM: u32 = 75;
293pub const ZEND_UNSET_OBJ: u32 = 76;
294pub const ZEND_FE_RESET: u32 = 77;
295pub const ZEND_FE_FETCH: u32 = 78;
296pub const ZEND_EXIT: u32 = 79;
297pub const ZEND_FETCH_R: u32 = 80;
298pub const ZEND_FETCH_DIM_R: u32 = 81;
299pub const ZEND_FETCH_OBJ_R: u32 = 82;
300pub const ZEND_FETCH_W: u32 = 83;
301pub const ZEND_FETCH_DIM_W: u32 = 84;
302pub const ZEND_FETCH_OBJ_W: u32 = 85;
303pub const ZEND_FETCH_RW: u32 = 86;
304pub const ZEND_FETCH_DIM_RW: u32 = 87;
305pub const ZEND_FETCH_OBJ_RW: u32 = 88;
306pub const ZEND_FETCH_IS: u32 = 89;
307pub const ZEND_FETCH_DIM_IS: u32 = 90;
308pub const ZEND_FETCH_OBJ_IS: u32 = 91;
309pub const ZEND_FETCH_FUNC_ARG: u32 = 92;
310pub const ZEND_FETCH_DIM_FUNC_ARG: u32 = 93;
311pub const ZEND_FETCH_OBJ_FUNC_ARG: u32 = 94;
312pub const ZEND_FETCH_UNSET: u32 = 95;
313pub const ZEND_FETCH_DIM_UNSET: u32 = 96;
314pub const ZEND_FETCH_OBJ_UNSET: u32 = 97;
315pub const ZEND_FETCH_DIM_TMP_VAR: u32 = 98;
316pub const ZEND_FETCH_CONSTANT: u32 = 99;
317pub const ZEND_GOTO: u32 = 100;
318pub const ZEND_EXT_STMT: u32 = 101;
319pub const ZEND_EXT_FCALL_BEGIN: u32 = 102;
320pub const ZEND_EXT_FCALL_END: u32 = 103;
321pub const ZEND_EXT_NOP: u32 = 104;
322pub const ZEND_TICKS: u32 = 105;
323pub const ZEND_SEND_VAR_NO_REF: u32 = 106;
324pub const ZEND_CATCH: u32 = 107;
325pub const ZEND_THROW: u32 = 108;
326pub const ZEND_FETCH_CLASS: u32 = 109;
327pub const ZEND_CLONE: u32 = 110;
328pub const ZEND_RETURN_BY_REF: u32 = 111;
329pub const ZEND_INIT_METHOD_CALL: u32 = 112;
330pub const ZEND_INIT_STATIC_METHOD_CALL: u32 = 113;
331pub const ZEND_ISSET_ISEMPTY_VAR: u32 = 114;
332pub const ZEND_ISSET_ISEMPTY_DIM_OBJ: u32 = 115;
333pub const ZEND_PRE_INC_OBJ: u32 = 132;
334pub const ZEND_PRE_DEC_OBJ: u32 = 133;
335pub const ZEND_POST_INC_OBJ: u32 = 134;
336pub const ZEND_POST_DEC_OBJ: u32 = 135;
337pub const ZEND_ASSIGN_OBJ: u32 = 136;
338pub const ZEND_INSTANCEOF: u32 = 138;
339pub const ZEND_DECLARE_CLASS: u32 = 139;
340pub const ZEND_DECLARE_INHERITED_CLASS: u32 = 140;
341pub const ZEND_DECLARE_FUNCTION: u32 = 141;
342pub const ZEND_RAISE_ABSTRACT_ERROR: u32 = 142;
343pub const ZEND_DECLARE_CONST: u32 = 143;
344pub const ZEND_ADD_INTERFACE: u32 = 144;
345pub const ZEND_DECLARE_INHERITED_CLASS_DELAYED: u32 = 145;
346pub const ZEND_VERIFY_ABSTRACT_CLASS: u32 = 146;
347pub const ZEND_ASSIGN_DIM: u32 = 147;
348pub const ZEND_ISSET_ISEMPTY_PROP_OBJ: u32 = 148;
349pub const ZEND_HANDLE_EXCEPTION: u32 = 149;
350pub const ZEND_USER_OPCODE: u32 = 150;
351pub const ZEND_JMP_SET: u32 = 152;
352pub const ZEND_DECLARE_LAMBDA_FUNCTION: u32 = 153;
353pub const ZEND_ADD_TRAIT: u32 = 154;
354pub const ZEND_BIND_TRAITS: u32 = 155;
355pub const ZEND_SEPARATE: u32 = 156;
356pub const ZEND_QM_ASSIGN_VAR: u32 = 157;
357pub const ZEND_JMP_SET_VAR: u32 = 158;
358pub const ZEND_DISCARD_EXCEPTION: u32 = 159;
359pub const ZEND_YIELD: u32 = 160;
360pub const ZEND_GENERATOR_RETURN: u32 = 161;
361pub const ZEND_FAST_CALL: u32 = 162;
362pub const ZEND_FAST_RET: u32 = 163;
363pub const ZEND_RECV_VARIADIC: u32 = 164;
364pub const ZEND_SEND_UNPACK: u32 = 165;
365pub const ZEND_POW: u32 = 166;
366pub const ZEND_ASSIGN_POW: u32 = 167;
367pub const ZEND_OP_DATA: u32 = 137;
368pub const ZEND_FETCH_CLASS_DEFAULT: u32 = 0;
369pub const ZEND_FETCH_CLASS_SELF: u32 = 1;
370pub const ZEND_FETCH_CLASS_PARENT: u32 = 2;
371pub const ZEND_FETCH_CLASS_MAIN: u32 = 3;
372pub const ZEND_FETCH_CLASS_GLOBAL: u32 = 4;
373pub const ZEND_FETCH_CLASS_AUTO: u32 = 5;
374pub const ZEND_FETCH_CLASS_INTERFACE: u32 = 6;
375pub const ZEND_FETCH_CLASS_STATIC: u32 = 7;
376pub const ZEND_FETCH_CLASS_TRAIT: u32 = 14;
377pub const ZEND_FETCH_CLASS_MASK: u32 = 15;
378pub const ZEND_FETCH_CLASS_NO_AUTOLOAD: u32 = 128;
379pub const ZEND_FETCH_CLASS_SILENT: u32 = 256;
380pub const ZEND_PARSED_MEMBER: u32 = 1;
381pub const ZEND_PARSED_METHOD_CALL: u32 = 2;
382pub const ZEND_PARSED_STATIC_MEMBER: u32 = 4;
383pub const ZEND_PARSED_FUNCTION_CALL: u32 = 8;
384pub const ZEND_PARSED_VARIABLE: u32 = 16;
385pub const ZEND_PARSED_REFERENCE_VARIABLE: u32 = 32;
386pub const ZEND_PARSED_NEW: u32 = 64;
387pub const ZEND_PARSED_LIST_EXPR: u32 = 128;
388pub const ZEND_UNSET_REG: u32 = 0;
389pub const ZEND_INTERNAL_FUNCTION: u32 = 1;
390pub const ZEND_USER_FUNCTION: u32 = 2;
391pub const ZEND_OVERLOADED_FUNCTION: u32 = 3;
392pub const ZEND_EVAL_CODE: u32 = 4;
393pub const ZEND_OVERLOADED_FUNCTION_TEMPORARY: u32 = 5;
394pub const ZEND_INTERNAL_CLASS: u32 = 1;
395pub const ZEND_USER_CLASS: u32 = 2;
396pub const ZEND_EVAL: u32 = 1;
397pub const ZEND_INCLUDE: u32 = 2;
398pub const ZEND_INCLUDE_ONCE: u32 = 4;
399pub const ZEND_REQUIRE: u32 = 8;
400pub const ZEND_REQUIRE_ONCE: u32 = 16;
401pub const ZEND_CT: u32 = 1;
402pub const ZEND_RT: u32 = 2;
403pub const ZEND_FETCH_GLOBAL: u32 = 0;
404pub const ZEND_FETCH_LOCAL: u32 = 268435456;
405pub const ZEND_FETCH_STATIC: u32 = 536870912;
406pub const ZEND_FETCH_STATIC_MEMBER: u32 = 805306368;
407pub const ZEND_FETCH_GLOBAL_LOCK: u32 = 1073741824;
408pub const ZEND_FETCH_LEXICAL: u32 = 1342177280;
409pub const ZEND_FETCH_TYPE_MASK: u32 = 1879048192;
410pub const ZEND_FETCH_STANDARD: u32 = 0;
411pub const ZEND_FETCH_ADD_LOCK: u32 = 134217728;
412pub const ZEND_FETCH_MAKE_REF: u32 = 67108864;
413pub const ZEND_ISSET: u32 = 33554432;
414pub const ZEND_ISEMPTY: u32 = 16777216;
415pub const ZEND_ISSET_ISEMPTY_MASK: u32 = 50331648;
416pub const ZEND_QUICK_SET: u32 = 8388608;
417pub const ZEND_FETCH_ARG_MASK: u32 = 1048575;
418pub const ZEND_FE_FETCH_BYREF: u32 = 1;
419pub const ZEND_FE_FETCH_WITH_KEY: u32 = 2;
420pub const ZEND_FE_RESET_VARIABLE: u32 = 1;
421pub const ZEND_FE_RESET_REFERENCE: u32 = 2;
422pub const ZEND_MEMBER_FUNC_CALL: u32 = 1;
423pub const ZEND_ARG_SEND_BY_REF: u32 = 1;
424pub const ZEND_ARG_COMPILE_TIME_BOUND: u32 = 2;
425pub const ZEND_ARG_SEND_FUNCTION: u32 = 4;
426pub const ZEND_ARG_SEND_SILENT: u32 = 8;
427pub const ZEND_SEND_BY_VAL: u32 = 0;
428pub const ZEND_SEND_BY_REF: u32 = 1;
429pub const ZEND_SEND_PREFER_REF: u32 = 2;
430pub const ZEND_RETURN_VAL: u32 = 0;
431pub const ZEND_RETURN_REF: u32 = 1;
432pub const ZEND_RETURNS_FUNCTION: u32 = 1;
433pub const ZEND_RETURNS_NEW: u32 = 2;
434pub const ZEND_RETURNS_VALUE: u32 = 4;
435pub const ZEND_FAST_RET_TO_CATCH: u32 = 1;
436pub const ZEND_FAST_RET_TO_FINALLY: u32 = 2;
437pub const ZEND_FAST_CALL_FROM_CATCH: u32 = 1;
438pub const ZEND_FAST_CALL_FROM_FINALLY: u32 = 2;
439pub const ZEND_CLONE_FUNC_NAME: &'static [u8; 8usize] = b"__clone\0";
440pub const ZEND_CONSTRUCTOR_FUNC_NAME: &'static [u8; 12usize] = b"__construct\0";
441pub const ZEND_DESTRUCTOR_FUNC_NAME: &'static [u8; 11usize] = b"__destruct\0";
442pub const ZEND_GET_FUNC_NAME: &'static [u8; 6usize] = b"__get\0";
443pub const ZEND_SET_FUNC_NAME: &'static [u8; 6usize] = b"__set\0";
444pub const ZEND_UNSET_FUNC_NAME: &'static [u8; 8usize] = b"__unset\0";
445pub const ZEND_ISSET_FUNC_NAME: &'static [u8; 8usize] = b"__isset\0";
446pub const ZEND_CALL_FUNC_NAME: &'static [u8; 7usize] = b"__call\0";
447pub const ZEND_CALLSTATIC_FUNC_NAME: &'static [u8; 13usize] = b"__callstatic\0";
448pub const ZEND_TOSTRING_FUNC_NAME: &'static [u8; 11usize] = b"__tostring\0";
449pub const ZEND_AUTOLOAD_FUNC_NAME: &'static [u8; 11usize] = b"__autoload\0";
450pub const ZEND_INVOKE_FUNC_NAME: &'static [u8; 9usize] = b"__invoke\0";
451pub const ZEND_DEBUGINFO_FUNC_NAME: &'static [u8; 12usize] = b"__debuginfo\0";
452pub const ZEND_COMPILE_EXTENDED_INFO: u32 = 1;
453pub const ZEND_COMPILE_HANDLE_OP_ARRAY: u32 = 2;
454pub const ZEND_COMPILE_IGNORE_INTERNAL_FUNCTIONS: u32 = 4;
455pub const ZEND_COMPILE_IGNORE_INTERNAL_CLASSES: u32 = 8;
456pub const ZEND_COMPILE_DELAYED_BINDING: u32 = 16;
457pub const ZEND_COMPILE_NO_CONSTANT_SUBSTITUTION: u32 = 32;
458pub const ZEND_COMPILE_DEFAULT: u32 = 2;
459pub const ZEND_COMPILE_DEFAULT_FOR_EVAL: u32 = 0;
460pub const ZEND_BUILD_TS: &'static [u8; 4usize] = b",TS\0";
461pub const ZEND_MODULE_API_NO: u32 = 20131226;
462pub const USING_ZTS: u32 = 1;
463pub const MODULE_PERSISTENT: u32 = 1;
464pub const MODULE_TEMPORARY: u32 = 2;
465pub const MODULE_DEP_REQUIRED: u32 = 1;
466pub const MODULE_DEP_CONFLICTS: u32 = 2;
467pub const MODULE_DEP_OPTIONAL: u32 = 3;
468pub const ZEND_RESOURCE_LIST_TYPE_STD: u32 = 1;
469pub const ZEND_RESOURCE_LIST_TYPE_EX: u32 = 2;
470pub const ZEND_VM_STACK_PAGE_SIZE: u32 = 16368;
471pub const ZEND_USER_OPCODE_CONTINUE: u32 = 0;
472pub const ZEND_USER_OPCODE_RETURN: u32 = 1;
473pub const ZEND_USER_OPCODE_DISPATCH: u32 = 2;
474pub const ZEND_USER_OPCODE_ENTER: u32 = 3;
475pub const ZEND_USER_OPCODE_LEAVE: u32 = 4;
476pub const ZEND_USER_OPCODE_DISPATCH_TO: u32 = 256;
477pub const ZEND_PARSE_PARAMS_QUIET: u32 = 2;
478pub const IS_CALLABLE_CHECK_SYNTAX_ONLY: u32 = 1;
479pub const IS_CALLABLE_CHECK_NO_ACCESS: u32 = 2;
480pub const IS_CALLABLE_CHECK_IS_STATIC: u32 = 4;
481pub const IS_CALLABLE_CHECK_SILENT: u32 = 8;
482pub const IS_CALLABLE_STRICT: u32 = 4;
483pub const PHP_DEBUG: u32 = 0;
484pub const PHP_DIR_SEPARATOR: u8 = 47u8;
485pub const PHP_EOL: &'static [u8; 2usize] = b"\n\0";
486pub 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" ;
487pub const PHP_ADA_INCLUDE: &'static [u8; 1usize] = b"\0";
488pub const PHP_ADA_LFLAGS: &'static [u8; 1usize] = b"\0";
489pub const PHP_ADA_LIBS: &'static [u8; 1usize] = b"\0";
490pub const PHP_APACHE_INCLUDE: &'static [u8; 1usize] = b"\0";
491pub const PHP_APACHE_TARGET: &'static [u8; 1usize] = b"\0";
492pub const PHP_FHTTPD_INCLUDE: &'static [u8; 1usize] = b"\0";
493pub const PHP_FHTTPD_LIB: &'static [u8; 1usize] = b"\0";
494pub const PHP_FHTTPD_TARGET: &'static [u8; 1usize] = b"\0";
495pub const PHP_CFLAGS: &'static [u8; 28usize] = b"$(CFLAGS_CLEAN) -prefer-pic\0";
496pub const PHP_DBASE_LIB: &'static [u8; 1usize] = b"\0";
497pub const PHP_BUILD_DEBUG: &'static [u8; 1usize] = b"\0";
498pub const PHP_GDBM_INCLUDE: &'static [u8; 1usize] = b"\0";
499pub const PHP_IBASE_INCLUDE: &'static [u8; 1usize] = b"\0";
500pub const PHP_IBASE_LFLAGS: &'static [u8; 1usize] = b"\0";
501pub const PHP_IBASE_LIBS: &'static [u8; 1usize] = b"\0";
502pub const PHP_IFX_INCLUDE: &'static [u8; 1usize] = b"\0";
503pub const PHP_IFX_LFLAGS: &'static [u8; 1usize] = b"\0";
504pub const PHP_IFX_LIBS: &'static [u8; 1usize] = b"\0";
505pub 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" ;
506pub const PHP_IODBC_INCLUDE: &'static [u8; 1usize] = b"\0";
507pub const PHP_IODBC_LFLAGS: &'static [u8; 1usize] = b"\0";
508pub const PHP_IODBC_LIBS: &'static [u8; 1usize] = b"\0";
509pub const PHP_MSQL_INCLUDE: &'static [u8; 1usize] = b"\0";
510pub const PHP_MSQL_LFLAGS: &'static [u8; 1usize] = b"\0";
511pub const PHP_MSQL_LIBS: &'static [u8; 1usize] = b"\0";
512pub const PHP_MYSQL_INCLUDE: &'static [u8; 21usize] = b"-I/usr/include/mysql\0";
513pub const PHP_MYSQL_LIBS: &'static [u8; 45usize] =
514    b"-L/usr/lib/x86_64-linux-gnu -lmysqlclient_r \0";
515pub const PHP_MYSQL_TYPE: &'static [u8; 9usize] = b"external\0";
516pub const PHP_ODBC_INCLUDE: &'static [u8; 15usize] = b"-I/usr/include\0";
517pub const PHP_ODBC_LFLAGS: &'static [u8; 11usize] = b"-L/usr/lib\0";
518pub const PHP_ODBC_LIBS: &'static [u8; 7usize] = b"-lodbc\0";
519pub const PHP_ODBC_TYPE: &'static [u8; 9usize] = b"unixODBC\0";
520pub const PHP_OCI8_SHARED_LIBADD: &'static [u8; 1usize] = b"\0";
521pub const PHP_OCI8_DIR: &'static [u8; 1usize] = b"\0";
522pub const PHP_OCI8_ORACLE_VERSION: &'static [u8; 1usize] = b"\0";
523pub const PHP_ORACLE_SHARED_LIBADD: &'static [u8; 23usize] = b"@ORACLE_SHARED_LIBADD@\0";
524pub const PHP_ORACLE_DIR: &'static [u8; 13usize] = b"@ORACLE_DIR@\0";
525pub const PHP_ORACLE_VERSION: &'static [u8; 17usize] = b"@ORACLE_VERSION@\0";
526pub const PHP_PGSQL_INCLUDE: &'static [u8; 1usize] = b"\0";
527pub const PHP_PGSQL_LFLAGS: &'static [u8; 1usize] = b"\0";
528pub const PHP_PGSQL_LIBS: &'static [u8; 1usize] = b"\0";
529pub const PHP_PROG_SENDMAIL: &'static [u8; 19usize] = b"/usr/sbin/sendmail\0";
530pub const PHP_SOLID_INCLUDE: &'static [u8; 1usize] = b"\0";
531pub const PHP_SOLID_LIBS: &'static [u8; 1usize] = b"\0";
532pub const PHP_EMPRESS_INCLUDE: &'static [u8; 1usize] = b"\0";
533pub const PHP_EMPRESS_LIBS: &'static [u8; 1usize] = b"\0";
534pub const PHP_SYBASE_INCLUDE: &'static [u8; 1usize] = b"\0";
535pub const PHP_SYBASE_LFLAGS: &'static [u8; 1usize] = b"\0";
536pub const PHP_SYBASE_LIBS: &'static [u8; 1usize] = b"\0";
537pub const PHP_DBM_TYPE: &'static [u8; 1usize] = b"\0";
538pub const PHP_DBM_LIB: &'static [u8; 1usize] = b"\0";
539pub const PHP_LDAP_LFLAGS: &'static [u8; 1usize] = b"\0";
540pub const PHP_LDAP_INCLUDE: &'static [u8; 1usize] = b"\0";
541pub const PHP_LDAP_LIBS: &'static [u8; 1usize] = b"\0";
542pub const PHP_BIRDSTEP_INCLUDE: &'static [u8; 1usize] = b"\0";
543pub const PHP_BIRDSTEP_LIBS: &'static [u8; 1usize] = b"\0";
544pub const PHP_INCLUDE_PATH: &'static [u8; 33usize] = b".:/usr/share/php:/usr/share/pear\0";
545pub const PHP_EXTENSION_DIR: &'static [u8; 27usize] = b"/usr/lib/php5/20131226-zts\0";
546pub const PHP_PREFIX: &'static [u8; 5usize] = b"/usr\0";
547pub const PHP_BINDIR: &'static [u8; 9usize] = b"/usr/bin\0";
548pub const PHP_SBINDIR: &'static [u8; 10usize] = b"/usr/sbin\0";
549pub const PHP_MANDIR: &'static [u8; 15usize] = b"/usr/share/man\0";
550pub const PHP_LIBDIR: &'static [u8; 14usize] = b"/usr/lib/php5\0";
551pub const PHP_DATADIR: &'static [u8; 16usize] = b"/usr/share/php5\0";
552pub const PHP_SYSCONFDIR: &'static [u8; 5usize] = b"/etc\0";
553pub const PHP_LOCALSTATEDIR: &'static [u8; 5usize] = b"/var\0";
554pub const PHP_CONFIG_FILE_PATH: &'static [u8; 18usize] = b"/etc/php5/apache2\0";
555pub const PHP_CONFIG_FILE_SCAN_DIR: &'static [u8; 25usize] = b"/etc/php5/apache2/conf.d\0";
556pub const PHP_SHLIB_SUFFIX: &'static [u8; 3usize] = b"so\0";
557pub const PHP_MIME_TYPE: &'static [u8; 24usize] = b"application/x-httpd-php\0";
558pub const PHP_ATTR_FMT_OFFSET: u32 = 1;
559pub const PHP_OUTPUT_NEWAPI: u32 = 1;
560pub const PHP_OUTPUT_HANDLER_WRITE: u32 = 0;
561pub const PHP_OUTPUT_HANDLER_START: u32 = 1;
562pub const PHP_OUTPUT_HANDLER_CLEAN: u32 = 2;
563pub const PHP_OUTPUT_HANDLER_FLUSH: u32 = 4;
564pub const PHP_OUTPUT_HANDLER_FINAL: u32 = 8;
565pub const PHP_OUTPUT_HANDLER_CONT: u32 = 0;
566pub const PHP_OUTPUT_HANDLER_END: u32 = 8;
567pub const PHP_OUTPUT_HANDLER_INTERNAL: u32 = 0;
568pub const PHP_OUTPUT_HANDLER_USER: u32 = 1;
569pub const PHP_OUTPUT_HANDLER_CLEANABLE: u32 = 16;
570pub const PHP_OUTPUT_HANDLER_FLUSHABLE: u32 = 32;
571pub const PHP_OUTPUT_HANDLER_REMOVABLE: u32 = 64;
572pub const PHP_OUTPUT_HANDLER_STDFLAGS: u32 = 112;
573pub const PHP_OUTPUT_HANDLER_STARTED: u32 = 4096;
574pub const PHP_OUTPUT_HANDLER_DISABLED: u32 = 8192;
575pub const PHP_OUTPUT_HANDLER_PROCESSED: u32 = 16384;
576pub const PHP_OUTPUT_POP_TRY: u32 = 0;
577pub const PHP_OUTPUT_POP_FORCE: u32 = 1;
578pub const PHP_OUTPUT_POP_DISCARD: u32 = 16;
579pub const PHP_OUTPUT_POP_SILENT: u32 = 256;
580pub const PHP_OUTPUT_IMPLICITFLUSH: u32 = 1;
581pub const PHP_OUTPUT_DISABLED: u32 = 2;
582pub const PHP_OUTPUT_WRITTEN: u32 = 4;
583pub const PHP_OUTPUT_SENT: u32 = 8;
584pub const PHP_OUTPUT_ACTIVE: u32 = 16;
585pub const PHP_OUTPUT_LOCKED: u32 = 32;
586pub const PHP_OUTPUT_ACTIVATED: u32 = 1048576;
587pub const PHP_OUTPUT_HANDLER_ALIGNTO_SIZE: u32 = 4096;
588pub const PHP_OUTPUT_HANDLER_DEFAULT_SIZE: u32 = 16384;
589pub const PHP_STREAM_NOTIFIER_PROGRESS: u32 = 1;
590pub const PHP_STREAM_NOTIFY_RESOLVE: u32 = 1;
591pub const PHP_STREAM_NOTIFY_CONNECT: u32 = 2;
592pub const PHP_STREAM_NOTIFY_AUTH_REQUIRED: u32 = 3;
593pub const PHP_STREAM_NOTIFY_MIME_TYPE_IS: u32 = 4;
594pub const PHP_STREAM_NOTIFY_FILE_SIZE_IS: u32 = 5;
595pub const PHP_STREAM_NOTIFY_REDIRECTED: u32 = 6;
596pub const PHP_STREAM_NOTIFY_PROGRESS: u32 = 7;
597pub const PHP_STREAM_NOTIFY_COMPLETED: u32 = 8;
598pub const PHP_STREAM_NOTIFY_FAILURE: u32 = 9;
599pub const PHP_STREAM_NOTIFY_AUTH_RESULT: u32 = 10;
600pub const PHP_STREAM_NOTIFY_SEVERITY_INFO: u32 = 0;
601pub const PHP_STREAM_NOTIFY_SEVERITY_WARN: u32 = 1;
602pub const PHP_STREAM_NOTIFY_SEVERITY_ERR: u32 = 2;
603pub const PHP_STREAM_FILTER_READ: u32 = 1;
604pub const PHP_STREAM_FILTER_WRITE: u32 = 2;
605pub const PHP_STREAM_FILTER_ALL: u32 = 3;
606pub const PHP_STREAM_FLAG_NO_SEEK: u32 = 1;
607pub const PHP_STREAM_FLAG_NO_BUFFER: u32 = 2;
608pub const PHP_STREAM_FLAG_EOL_UNIX: u32 = 0;
609pub const PHP_STREAM_FLAG_DETECT_EOL: u32 = 4;
610pub const PHP_STREAM_FLAG_EOL_MAC: u32 = 8;
611pub const PHP_STREAM_FLAG_AVOID_BLOCKING: u32 = 16;
612pub const PHP_STREAM_FLAG_NO_CLOSE: u32 = 32;
613pub const PHP_STREAM_FLAG_IS_DIR: u32 = 64;
614pub const PHP_STREAM_FLAG_NO_FCLOSE: u32 = 128;
615pub const PHP_STREAM_FCLOSE_NONE: u32 = 0;
616pub const PHP_STREAM_FCLOSE_FDOPEN: u32 = 1;
617pub const PHP_STREAM_FCLOSE_FOPENCOOKIE: u32 = 2;
618pub const PHP_STREAM_PERSISTENT_SUCCESS: u32 = 0;
619pub const PHP_STREAM_PERSISTENT_FAILURE: u32 = 1;
620pub const PHP_STREAM_PERSISTENT_NOT_EXIST: u32 = 2;
621pub const PHP_STREAM_FREE_CALL_DTOR: u32 = 1;
622pub const PHP_STREAM_FREE_RELEASE_STREAM: u32 = 2;
623pub const PHP_STREAM_FREE_PRESERVE_HANDLE: u32 = 4;
624pub const PHP_STREAM_FREE_RSRC_DTOR: u32 = 8;
625pub const PHP_STREAM_FREE_PERSISTENT: u32 = 16;
626pub const PHP_STREAM_FREE_IGNORE_ENCLOSING: u32 = 32;
627pub const PHP_STREAM_FREE_CLOSE: u32 = 3;
628pub const PHP_STREAM_FREE_CLOSE_CASTED: u32 = 7;
629pub const PHP_STREAM_FREE_CLOSE_PERSISTENT: u32 = 19;
630pub const PHP_STREAM_MKDIR_RECURSIVE: u32 = 1;
631pub const PHP_STREAM_URL_STAT_LINK: u32 = 1;
632pub const PHP_STREAM_URL_STAT_QUIET: u32 = 2;
633pub const PHP_STREAM_URL_STAT_NOCACHE: u32 = 4;
634pub const PHP_STREAM_OPTION_BLOCKING: u32 = 1;
635pub const PHP_STREAM_OPTION_READ_BUFFER: u32 = 2;
636pub const PHP_STREAM_OPTION_WRITE_BUFFER: u32 = 3;
637pub const PHP_STREAM_BUFFER_NONE: u32 = 0;
638pub const PHP_STREAM_BUFFER_LINE: u32 = 1;
639pub const PHP_STREAM_BUFFER_FULL: u32 = 2;
640pub const PHP_STREAM_OPTION_READ_TIMEOUT: u32 = 4;
641pub const PHP_STREAM_OPTION_SET_CHUNK_SIZE: u32 = 5;
642pub const PHP_STREAM_OPTION_LOCKING: u32 = 6;
643pub const PHP_STREAM_LOCK_SUPPORTED: u32 = 1;
644pub const PHP_STREAM_OPTION_XPORT_API: u32 = 7;
645pub const PHP_STREAM_OPTION_CRYPTO_API: u32 = 8;
646pub const PHP_STREAM_OPTION_MMAP_API: u32 = 9;
647pub const PHP_STREAM_OPTION_TRUNCATE_API: u32 = 10;
648pub const PHP_STREAM_TRUNCATE_SUPPORTED: u32 = 0;
649pub const PHP_STREAM_TRUNCATE_SET_SIZE: u32 = 1;
650pub const PHP_STREAM_OPTION_META_DATA_API: u32 = 11;
651pub const PHP_STREAM_OPTION_CHECK_LIVENESS: u32 = 12;
652pub const PHP_STREAM_OPTION_RETURN_OK: u32 = 0;
653pub const PHP_STREAM_OPTION_RETURN_ERR: i32 = -1;
654pub const PHP_STREAM_OPTION_RETURN_NOTIMPL: i32 = -2;
655pub const PHP_STREAM_MMAP_ALL: u32 = 0;
656pub const PHP_STREAM_AS_STDIO: u32 = 0;
657pub const PHP_STREAM_AS_FD: u32 = 1;
658pub const PHP_STREAM_AS_SOCKETD: u32 = 2;
659pub const PHP_STREAM_AS_FD_FOR_SELECT: u32 = 3;
660pub const PHP_STREAM_CAST_TRY_HARD: u32 = 2147483648;
661pub const PHP_STREAM_CAST_RELEASE: u32 = 1073741824;
662pub const PHP_STREAM_CAST_INTERNAL: u32 = 536870912;
663pub const PHP_STREAM_CAST_MASK: u32 = 3758096384;
664pub const PHP_STREAM_UNCHANGED: u32 = 0;
665pub const PHP_STREAM_RELEASED: u32 = 1;
666pub const PHP_STREAM_FAILED: u32 = 2;
667pub const PHP_STREAM_CRITICAL: u32 = 3;
668pub const PHP_STREAM_NO_PREFERENCE: u32 = 0;
669pub const PHP_STREAM_PREFER_STDIO: u32 = 1;
670pub const PHP_STREAM_FORCE_CONVERSION: u32 = 2;
671pub const PHP_STREAM_IS_URL: u32 = 1;
672pub const PHP_STREAM_META_TOUCH: u32 = 1;
673pub const PHP_STREAM_META_OWNER_NAME: u32 = 2;
674pub const PHP_STREAM_META_OWNER: u32 = 3;
675pub const PHP_STREAM_META_GROUP_NAME: u32 = 4;
676pub const PHP_STREAM_META_GROUP: u32 = 5;
677pub const PHP_STREAM_META_ACCESS: u32 = 6;
678pub const PHP_STREAM_MAX_MEM: u32 = 2097152;
679pub const PHP_DISPLAY_ERRORS_STDOUT: u32 = 1;
680pub const PHP_DISPLAY_ERRORS_STDERR: u32 = 2;
681pub const ZEND_INI_USER: u32 = 1;
682pub const ZEND_INI_PERDIR: u32 = 2;
683pub const ZEND_INI_SYSTEM: u32 = 4;
684pub const ZEND_INI_ALL: u32 = 7;
685pub const ZEND_INI_DISPLAY_ORIG: u32 = 1;
686pub const ZEND_INI_DISPLAY_ACTIVE: u32 = 2;
687pub const ZEND_INI_STAGE_STARTUP: u32 = 1;
688pub const ZEND_INI_STAGE_SHUTDOWN: u32 = 2;
689pub const ZEND_INI_STAGE_ACTIVATE: u32 = 4;
690pub const ZEND_INI_STAGE_DEACTIVATE: u32 = 8;
691pub const ZEND_INI_STAGE_RUNTIME: u32 = 16;
692pub const ZEND_INI_STAGE_HTACCESS: u32 = 32;
693pub const ZEND_INI_PARSER_ENTRY: u32 = 1;
694pub const ZEND_INI_PARSER_SECTION: u32 = 2;
695pub const ZEND_INI_PARSER_POP_ENTRY: u32 = 3;
696pub const PHP_INI_USER: u32 = 1;
697pub const PHP_INI_PERDIR: u32 = 2;
698pub const PHP_INI_SYSTEM: u32 = 4;
699pub const PHP_INI_ALL: u32 = 7;
700pub const PHP_INI_DISPLAY_ORIG: u32 = 1;
701pub const PHP_INI_DISPLAY_ACTIVE: u32 = 2;
702pub const PHP_INI_STAGE_STARTUP: u32 = 1;
703pub const PHP_INI_STAGE_SHUTDOWN: u32 = 2;
704pub const PHP_INI_STAGE_ACTIVATE: u32 = 4;
705pub const PHP_INI_STAGE_DEACTIVATE: u32 = 8;
706pub const PHP_INI_STAGE_RUNTIME: u32 = 16;
707pub const PHP_INI_STAGE_HTACCESS: u32 = 32;
708pub const PHP_CONNECTION_NORMAL: u32 = 0;
709pub const PHP_CONNECTION_ABORTED: u32 = 1;
710pub const PHP_CONNECTION_TIMEOUT: u32 = 2;
711pub const PHP_ENTRY_NAME_COLOR: &'static [u8; 5usize] = b"#ccf\0";
712pub const PHP_CONTENTS_COLOR: &'static [u8; 5usize] = b"#ccc\0";
713pub const PHP_HEADER_COLOR: &'static [u8; 5usize] = b"#99c\0";
714pub const PHP_INFO_GENERAL: u32 = 1;
715pub const PHP_INFO_CREDITS: u32 = 2;
716pub const PHP_INFO_CONFIGURATION: u32 = 4;
717pub const PHP_INFO_MODULES: u32 = 8;
718pub const PHP_INFO_ENVIRONMENT: u32 = 16;
719pub const PHP_INFO_VARIABLES: u32 = 32;
720pub const PHP_INFO_LICENSE: u32 = 64;
721pub const PHP_INFO_ALL: u32 = 4294967295;
722pub const PHP_CREDITS_GROUP: u32 = 1;
723pub const PHP_CREDITS_GENERAL: u32 = 2;
724pub const PHP_CREDITS_SAPI: u32 = 4;
725pub const PHP_CREDITS_MODULES: u32 = 8;
726pub const PHP_CREDITS_DOCS: u32 = 16;
727pub const PHP_CREDITS_FULLPAGE: u32 = 32;
728pub const PHP_CREDITS_QA: u32 = 64;
729pub const PHP_CREDITS_WEB: u32 = 128;
730pub const PHP_CREDITS_ALL: u32 = 4294967295;
731pub 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" ;
732pub 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" ;
733pub 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" ;
734pub const ZEND_EXTENSION_API_NO: u32 = 220131226;
735pub const ZEND_EXTMSG_NEW_EXTENSION: u32 = 1;
736pub type size_t = ::std::os::raw::c_ulong;
737pub type __dev_t = ::std::os::raw::c_ulong;
738pub type __uid_t = ::std::os::raw::c_uint;
739pub type __gid_t = ::std::os::raw::c_uint;
740pub type __ino_t = ::std::os::raw::c_ulong;
741pub type __mode_t = ::std::os::raw::c_uint;
742pub type __nlink_t = ::std::os::raw::c_ulong;
743pub type __off_t = ::std::os::raw::c_long;
744pub type __off64_t = ::std::os::raw::c_long;
745pub type __time_t = ::std::os::raw::c_long;
746pub type __suseconds_t = ::std::os::raw::c_long;
747pub type __blksize_t = ::std::os::raw::c_long;
748pub type __blkcnt_t = ::std::os::raw::c_long;
749pub type __syscall_slong_t = ::std::os::raw::c_long;
750pub type __socklen_t = ::std::os::raw::c_uint;
751pub type off_t = __off_t;
752pub type ulong = ::std::os::raw::c_ulong;
753pub type uint = ::std::os::raw::c_uint;
754#[repr(C)]
755#[derive(Debug, Copy, Clone)]
756pub struct __sigset_t {
757    pub __val: [::std::os::raw::c_ulong; 16usize],
758}
759#[test]
760fn bindgen_test_layout___sigset_t() {
761    assert_eq!(
762        ::std::mem::size_of::<__sigset_t>(),
763        128usize,
764        concat!("Size of: ", stringify!(__sigset_t))
765    );
766    assert_eq!(
767        ::std::mem::align_of::<__sigset_t>(),
768        8usize,
769        concat!("Alignment of ", stringify!(__sigset_t))
770    );
771    assert_eq!(
772        unsafe { &(*(::std::ptr::null::<__sigset_t>())).__val as *const _ as usize },
773        0usize,
774        concat!(
775            "Offset of field: ",
776            stringify!(__sigset_t),
777            "::",
778            stringify!(__val)
779        )
780    );
781}
782#[repr(C)]
783#[derive(Debug, Copy, Clone)]
784pub struct timeval {
785    pub tv_sec: __time_t,
786    pub tv_usec: __suseconds_t,
787}
788#[test]
789fn bindgen_test_layout_timeval() {
790    assert_eq!(
791        ::std::mem::size_of::<timeval>(),
792        16usize,
793        concat!("Size of: ", stringify!(timeval))
794    );
795    assert_eq!(
796        ::std::mem::align_of::<timeval>(),
797        8usize,
798        concat!("Alignment of ", stringify!(timeval))
799    );
800    assert_eq!(
801        unsafe { &(*(::std::ptr::null::<timeval>())).tv_sec as *const _ as usize },
802        0usize,
803        concat!(
804            "Offset of field: ",
805            stringify!(timeval),
806            "::",
807            stringify!(tv_sec)
808        )
809    );
810    assert_eq!(
811        unsafe { &(*(::std::ptr::null::<timeval>())).tv_usec as *const _ as usize },
812        8usize,
813        concat!(
814            "Offset of field: ",
815            stringify!(timeval),
816            "::",
817            stringify!(tv_usec)
818        )
819    );
820}
821#[repr(C)]
822#[derive(Debug, Copy, Clone)]
823pub struct timespec {
824    pub tv_sec: __time_t,
825    pub tv_nsec: __syscall_slong_t,
826}
827#[test]
828fn bindgen_test_layout_timespec() {
829    assert_eq!(
830        ::std::mem::size_of::<timespec>(),
831        16usize,
832        concat!("Size of: ", stringify!(timespec))
833    );
834    assert_eq!(
835        ::std::mem::align_of::<timespec>(),
836        8usize,
837        concat!("Alignment of ", stringify!(timespec))
838    );
839    assert_eq!(
840        unsafe { &(*(::std::ptr::null::<timespec>())).tv_sec as *const _ as usize },
841        0usize,
842        concat!(
843            "Offset of field: ",
844            stringify!(timespec),
845            "::",
846            stringify!(tv_sec)
847        )
848    );
849    assert_eq!(
850        unsafe { &(*(::std::ptr::null::<timespec>())).tv_nsec as *const _ as usize },
851        8usize,
852        concat!(
853            "Offset of field: ",
854            stringify!(timespec),
855            "::",
856            stringify!(tv_nsec)
857        )
858    );
859}
860#[repr(C)]
861#[derive(Debug, Copy, Clone)]
862pub struct __pthread_internal_list {
863    pub __prev: *mut __pthread_internal_list,
864    pub __next: *mut __pthread_internal_list,
865}
866#[test]
867fn bindgen_test_layout___pthread_internal_list() {
868    assert_eq!(
869        ::std::mem::size_of::<__pthread_internal_list>(),
870        16usize,
871        concat!("Size of: ", stringify!(__pthread_internal_list))
872    );
873    assert_eq!(
874        ::std::mem::align_of::<__pthread_internal_list>(),
875        8usize,
876        concat!("Alignment of ", stringify!(__pthread_internal_list))
877    );
878    assert_eq!(
879        unsafe { &(*(::std::ptr::null::<__pthread_internal_list>())).__prev as *const _ as usize },
880        0usize,
881        concat!(
882            "Offset of field: ",
883            stringify!(__pthread_internal_list),
884            "::",
885            stringify!(__prev)
886        )
887    );
888    assert_eq!(
889        unsafe { &(*(::std::ptr::null::<__pthread_internal_list>())).__next as *const _ as usize },
890        8usize,
891        concat!(
892            "Offset of field: ",
893            stringify!(__pthread_internal_list),
894            "::",
895            stringify!(__next)
896        )
897    );
898}
899pub type __pthread_list_t = __pthread_internal_list;
900#[repr(C)]
901#[derive(Debug, Copy, Clone)]
902pub struct __pthread_mutex_s {
903    pub __lock: ::std::os::raw::c_int,
904    pub __count: ::std::os::raw::c_uint,
905    pub __owner: ::std::os::raw::c_int,
906    pub __nusers: ::std::os::raw::c_uint,
907    pub __kind: ::std::os::raw::c_int,
908    pub __spins: ::std::os::raw::c_short,
909    pub __elision: ::std::os::raw::c_short,
910    pub __list: __pthread_list_t,
911}
912#[test]
913fn bindgen_test_layout___pthread_mutex_s() {
914    assert_eq!(
915        ::std::mem::size_of::<__pthread_mutex_s>(),
916        40usize,
917        concat!("Size of: ", stringify!(__pthread_mutex_s))
918    );
919    assert_eq!(
920        ::std::mem::align_of::<__pthread_mutex_s>(),
921        8usize,
922        concat!("Alignment of ", stringify!(__pthread_mutex_s))
923    );
924    assert_eq!(
925        unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__lock as *const _ as usize },
926        0usize,
927        concat!(
928            "Offset of field: ",
929            stringify!(__pthread_mutex_s),
930            "::",
931            stringify!(__lock)
932        )
933    );
934    assert_eq!(
935        unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__count as *const _ as usize },
936        4usize,
937        concat!(
938            "Offset of field: ",
939            stringify!(__pthread_mutex_s),
940            "::",
941            stringify!(__count)
942        )
943    );
944    assert_eq!(
945        unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__owner as *const _ as usize },
946        8usize,
947        concat!(
948            "Offset of field: ",
949            stringify!(__pthread_mutex_s),
950            "::",
951            stringify!(__owner)
952        )
953    );
954    assert_eq!(
955        unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__nusers as *const _ as usize },
956        12usize,
957        concat!(
958            "Offset of field: ",
959            stringify!(__pthread_mutex_s),
960            "::",
961            stringify!(__nusers)
962        )
963    );
964    assert_eq!(
965        unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__kind as *const _ as usize },
966        16usize,
967        concat!(
968            "Offset of field: ",
969            stringify!(__pthread_mutex_s),
970            "::",
971            stringify!(__kind)
972        )
973    );
974    assert_eq!(
975        unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__spins as *const _ as usize },
976        20usize,
977        concat!(
978            "Offset of field: ",
979            stringify!(__pthread_mutex_s),
980            "::",
981            stringify!(__spins)
982        )
983    );
984    assert_eq!(
985        unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__elision as *const _ as usize },
986        22usize,
987        concat!(
988            "Offset of field: ",
989            stringify!(__pthread_mutex_s),
990            "::",
991            stringify!(__elision)
992        )
993    );
994    assert_eq!(
995        unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__list as *const _ as usize },
996        24usize,
997        concat!(
998            "Offset of field: ",
999            stringify!(__pthread_mutex_s),
1000            "::",
1001            stringify!(__list)
1002        )
1003    );
1004}
1005#[repr(C)]
1006#[derive(Copy, Clone)]
1007pub union pthread_mutex_t {
1008    pub __data: __pthread_mutex_s,
1009    pub __size: [::std::os::raw::c_char; 40usize],
1010    pub __align: ::std::os::raw::c_long,
1011    _bindgen_union_align: [u64; 5usize],
1012}
1013#[test]
1014fn bindgen_test_layout_pthread_mutex_t() {
1015    assert_eq!(
1016        ::std::mem::size_of::<pthread_mutex_t>(),
1017        40usize,
1018        concat!("Size of: ", stringify!(pthread_mutex_t))
1019    );
1020    assert_eq!(
1021        ::std::mem::align_of::<pthread_mutex_t>(),
1022        8usize,
1023        concat!("Alignment of ", stringify!(pthread_mutex_t))
1024    );
1025    assert_eq!(
1026        unsafe { &(*(::std::ptr::null::<pthread_mutex_t>())).__data as *const _ as usize },
1027        0usize,
1028        concat!(
1029            "Offset of field: ",
1030            stringify!(pthread_mutex_t),
1031            "::",
1032            stringify!(__data)
1033        )
1034    );
1035    assert_eq!(
1036        unsafe { &(*(::std::ptr::null::<pthread_mutex_t>())).__size as *const _ as usize },
1037        0usize,
1038        concat!(
1039            "Offset of field: ",
1040            stringify!(pthread_mutex_t),
1041            "::",
1042            stringify!(__size)
1043        )
1044    );
1045    assert_eq!(
1046        unsafe { &(*(::std::ptr::null::<pthread_mutex_t>())).__align as *const _ as usize },
1047        0usize,
1048        concat!(
1049            "Offset of field: ",
1050            stringify!(pthread_mutex_t),
1051            "::",
1052            stringify!(__align)
1053        )
1054    );
1055}
1056pub type va_list = __builtin_va_list;
1057pub type FILE = _IO_FILE;
1058#[repr(C)]
1059#[derive(Debug, Copy, Clone)]
1060pub struct _IO_marker {
1061    _unused: [u8; 0],
1062}
1063#[repr(C)]
1064#[derive(Debug, Copy, Clone)]
1065pub struct _IO_codecvt {
1066    _unused: [u8; 0],
1067}
1068#[repr(C)]
1069#[derive(Debug, Copy, Clone)]
1070pub struct _IO_wide_data {
1071    _unused: [u8; 0],
1072}
1073pub type _IO_lock_t = ::std::os::raw::c_void;
1074#[repr(C)]
1075#[derive(Debug, Copy, Clone)]
1076pub struct _IO_FILE {
1077    pub _flags: ::std::os::raw::c_int,
1078    pub _IO_read_ptr: *mut ::std::os::raw::c_char,
1079    pub _IO_read_end: *mut ::std::os::raw::c_char,
1080    pub _IO_read_base: *mut ::std::os::raw::c_char,
1081    pub _IO_write_base: *mut ::std::os::raw::c_char,
1082    pub _IO_write_ptr: *mut ::std::os::raw::c_char,
1083    pub _IO_write_end: *mut ::std::os::raw::c_char,
1084    pub _IO_buf_base: *mut ::std::os::raw::c_char,
1085    pub _IO_buf_end: *mut ::std::os::raw::c_char,
1086    pub _IO_save_base: *mut ::std::os::raw::c_char,
1087    pub _IO_backup_base: *mut ::std::os::raw::c_char,
1088    pub _IO_save_end: *mut ::std::os::raw::c_char,
1089    pub _markers: *mut _IO_marker,
1090    pub _chain: *mut _IO_FILE,
1091    pub _fileno: ::std::os::raw::c_int,
1092    pub _flags2: ::std::os::raw::c_int,
1093    pub _old_offset: __off_t,
1094    pub _cur_column: ::std::os::raw::c_ushort,
1095    pub _vtable_offset: ::std::os::raw::c_schar,
1096    pub _shortbuf: [::std::os::raw::c_char; 1usize],
1097    pub _lock: *mut _IO_lock_t,
1098    pub _offset: __off64_t,
1099    pub _codecvt: *mut _IO_codecvt,
1100    pub _wide_data: *mut _IO_wide_data,
1101    pub _freeres_list: *mut _IO_FILE,
1102    pub _freeres_buf: *mut ::std::os::raw::c_void,
1103    pub __pad5: size_t,
1104    pub _mode: ::std::os::raw::c_int,
1105    pub _unused2: [::std::os::raw::c_char; 20usize],
1106}
1107#[test]
1108fn bindgen_test_layout__IO_FILE() {
1109    assert_eq!(
1110        ::std::mem::size_of::<_IO_FILE>(),
1111        216usize,
1112        concat!("Size of: ", stringify!(_IO_FILE))
1113    );
1114    assert_eq!(
1115        ::std::mem::align_of::<_IO_FILE>(),
1116        8usize,
1117        concat!("Alignment of ", stringify!(_IO_FILE))
1118    );
1119    assert_eq!(
1120        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._flags as *const _ as usize },
1121        0usize,
1122        concat!(
1123            "Offset of field: ",
1124            stringify!(_IO_FILE),
1125            "::",
1126            stringify!(_flags)
1127        )
1128    );
1129    assert_eq!(
1130        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_ptr as *const _ as usize },
1131        8usize,
1132        concat!(
1133            "Offset of field: ",
1134            stringify!(_IO_FILE),
1135            "::",
1136            stringify!(_IO_read_ptr)
1137        )
1138    );
1139    assert_eq!(
1140        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_end as *const _ as usize },
1141        16usize,
1142        concat!(
1143            "Offset of field: ",
1144            stringify!(_IO_FILE),
1145            "::",
1146            stringify!(_IO_read_end)
1147        )
1148    );
1149    assert_eq!(
1150        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_base as *const _ as usize },
1151        24usize,
1152        concat!(
1153            "Offset of field: ",
1154            stringify!(_IO_FILE),
1155            "::",
1156            stringify!(_IO_read_base)
1157        )
1158    );
1159    assert_eq!(
1160        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_base as *const _ as usize },
1161        32usize,
1162        concat!(
1163            "Offset of field: ",
1164            stringify!(_IO_FILE),
1165            "::",
1166            stringify!(_IO_write_base)
1167        )
1168    );
1169    assert_eq!(
1170        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_ptr as *const _ as usize },
1171        40usize,
1172        concat!(
1173            "Offset of field: ",
1174            stringify!(_IO_FILE),
1175            "::",
1176            stringify!(_IO_write_ptr)
1177        )
1178    );
1179    assert_eq!(
1180        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_end as *const _ as usize },
1181        48usize,
1182        concat!(
1183            "Offset of field: ",
1184            stringify!(_IO_FILE),
1185            "::",
1186            stringify!(_IO_write_end)
1187        )
1188    );
1189    assert_eq!(
1190        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_buf_base as *const _ as usize },
1191        56usize,
1192        concat!(
1193            "Offset of field: ",
1194            stringify!(_IO_FILE),
1195            "::",
1196            stringify!(_IO_buf_base)
1197        )
1198    );
1199    assert_eq!(
1200        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_buf_end as *const _ as usize },
1201        64usize,
1202        concat!(
1203            "Offset of field: ",
1204            stringify!(_IO_FILE),
1205            "::",
1206            stringify!(_IO_buf_end)
1207        )
1208    );
1209    assert_eq!(
1210        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_save_base as *const _ as usize },
1211        72usize,
1212        concat!(
1213            "Offset of field: ",
1214            stringify!(_IO_FILE),
1215            "::",
1216            stringify!(_IO_save_base)
1217        )
1218    );
1219    assert_eq!(
1220        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_backup_base as *const _ as usize },
1221        80usize,
1222        concat!(
1223            "Offset of field: ",
1224            stringify!(_IO_FILE),
1225            "::",
1226            stringify!(_IO_backup_base)
1227        )
1228    );
1229    assert_eq!(
1230        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_save_end as *const _ as usize },
1231        88usize,
1232        concat!(
1233            "Offset of field: ",
1234            stringify!(_IO_FILE),
1235            "::",
1236            stringify!(_IO_save_end)
1237        )
1238    );
1239    assert_eq!(
1240        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._markers as *const _ as usize },
1241        96usize,
1242        concat!(
1243            "Offset of field: ",
1244            stringify!(_IO_FILE),
1245            "::",
1246            stringify!(_markers)
1247        )
1248    );
1249    assert_eq!(
1250        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._chain as *const _ as usize },
1251        104usize,
1252        concat!(
1253            "Offset of field: ",
1254            stringify!(_IO_FILE),
1255            "::",
1256            stringify!(_chain)
1257        )
1258    );
1259    assert_eq!(
1260        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._fileno as *const _ as usize },
1261        112usize,
1262        concat!(
1263            "Offset of field: ",
1264            stringify!(_IO_FILE),
1265            "::",
1266            stringify!(_fileno)
1267        )
1268    );
1269    assert_eq!(
1270        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._flags2 as *const _ as usize },
1271        116usize,
1272        concat!(
1273            "Offset of field: ",
1274            stringify!(_IO_FILE),
1275            "::",
1276            stringify!(_flags2)
1277        )
1278    );
1279    assert_eq!(
1280        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._old_offset as *const _ as usize },
1281        120usize,
1282        concat!(
1283            "Offset of field: ",
1284            stringify!(_IO_FILE),
1285            "::",
1286            stringify!(_old_offset)
1287        )
1288    );
1289    assert_eq!(
1290        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._cur_column as *const _ as usize },
1291        128usize,
1292        concat!(
1293            "Offset of field: ",
1294            stringify!(_IO_FILE),
1295            "::",
1296            stringify!(_cur_column)
1297        )
1298    );
1299    assert_eq!(
1300        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._vtable_offset as *const _ as usize },
1301        130usize,
1302        concat!(
1303            "Offset of field: ",
1304            stringify!(_IO_FILE),
1305            "::",
1306            stringify!(_vtable_offset)
1307        )
1308    );
1309    assert_eq!(
1310        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._shortbuf as *const _ as usize },
1311        131usize,
1312        concat!(
1313            "Offset of field: ",
1314            stringify!(_IO_FILE),
1315            "::",
1316            stringify!(_shortbuf)
1317        )
1318    );
1319    assert_eq!(
1320        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._lock as *const _ as usize },
1321        136usize,
1322        concat!(
1323            "Offset of field: ",
1324            stringify!(_IO_FILE),
1325            "::",
1326            stringify!(_lock)
1327        )
1328    );
1329    assert_eq!(
1330        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._offset as *const _ as usize },
1331        144usize,
1332        concat!(
1333            "Offset of field: ",
1334            stringify!(_IO_FILE),
1335            "::",
1336            stringify!(_offset)
1337        )
1338    );
1339    assert_eq!(
1340        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._codecvt as *const _ as usize },
1341        152usize,
1342        concat!(
1343            "Offset of field: ",
1344            stringify!(_IO_FILE),
1345            "::",
1346            stringify!(_codecvt)
1347        )
1348    );
1349    assert_eq!(
1350        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._wide_data as *const _ as usize },
1351        160usize,
1352        concat!(
1353            "Offset of field: ",
1354            stringify!(_IO_FILE),
1355            "::",
1356            stringify!(_wide_data)
1357        )
1358    );
1359    assert_eq!(
1360        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._freeres_list as *const _ as usize },
1361        168usize,
1362        concat!(
1363            "Offset of field: ",
1364            stringify!(_IO_FILE),
1365            "::",
1366            stringify!(_freeres_list)
1367        )
1368    );
1369    assert_eq!(
1370        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._freeres_buf as *const _ as usize },
1371        176usize,
1372        concat!(
1373            "Offset of field: ",
1374            stringify!(_IO_FILE),
1375            "::",
1376            stringify!(_freeres_buf)
1377        )
1378    );
1379    assert_eq!(
1380        unsafe { &(*(::std::ptr::null::<_IO_FILE>())).__pad5 as *const _ as usize },
1381        184usize,
1382        concat!(
1383            "Offset of field: ",
1384            stringify!(_IO_FILE),
1385            "::",
1386            stringify!(__pad5)
1387        )
1388    );
1389    assert_eq!(
1390        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._mode as *const _ as usize },
1391        192usize,
1392        concat!(
1393            "Offset of field: ",
1394            stringify!(_IO_FILE),
1395            "::",
1396            stringify!(_mode)
1397        )
1398    );
1399    assert_eq!(
1400        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._unused2 as *const _ as usize },
1401        196usize,
1402        concat!(
1403            "Offset of field: ",
1404            stringify!(_IO_FILE),
1405            "::",
1406            stringify!(_unused2)
1407        )
1408    );
1409}
1410pub type __jmp_buf = [::std::os::raw::c_long; 8usize];
1411pub type ts_rsrc_id = ::std::os::raw::c_int;
1412#[repr(C)]
1413#[derive(Debug, Copy, Clone)]
1414pub struct _zend_leak_info {
1415    pub addr: *mut ::std::os::raw::c_void,
1416    pub size: size_t,
1417    pub filename: *const ::std::os::raw::c_char,
1418    pub lineno: uint,
1419    pub orig_filename: *const ::std::os::raw::c_char,
1420    pub orig_lineno: uint,
1421}
1422#[test]
1423fn bindgen_test_layout__zend_leak_info() {
1424    assert_eq!(
1425        ::std::mem::size_of::<_zend_leak_info>(),
1426        48usize,
1427        concat!("Size of: ", stringify!(_zend_leak_info))
1428    );
1429    assert_eq!(
1430        ::std::mem::align_of::<_zend_leak_info>(),
1431        8usize,
1432        concat!("Alignment of ", stringify!(_zend_leak_info))
1433    );
1434    assert_eq!(
1435        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).addr as *const _ as usize },
1436        0usize,
1437        concat!(
1438            "Offset of field: ",
1439            stringify!(_zend_leak_info),
1440            "::",
1441            stringify!(addr)
1442        )
1443    );
1444    assert_eq!(
1445        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).size as *const _ as usize },
1446        8usize,
1447        concat!(
1448            "Offset of field: ",
1449            stringify!(_zend_leak_info),
1450            "::",
1451            stringify!(size)
1452        )
1453    );
1454    assert_eq!(
1455        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).filename as *const _ as usize },
1456        16usize,
1457        concat!(
1458            "Offset of field: ",
1459            stringify!(_zend_leak_info),
1460            "::",
1461            stringify!(filename)
1462        )
1463    );
1464    assert_eq!(
1465        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).lineno as *const _ as usize },
1466        24usize,
1467        concat!(
1468            "Offset of field: ",
1469            stringify!(_zend_leak_info),
1470            "::",
1471            stringify!(lineno)
1472        )
1473    );
1474    assert_eq!(
1475        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).orig_filename as *const _ as usize },
1476        32usize,
1477        concat!(
1478            "Offset of field: ",
1479            stringify!(_zend_leak_info),
1480            "::",
1481            stringify!(orig_filename)
1482        )
1483    );
1484    assert_eq!(
1485        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).orig_lineno as *const _ as usize },
1486        40usize,
1487        concat!(
1488            "Offset of field: ",
1489            stringify!(_zend_leak_info),
1490            "::",
1491            stringify!(orig_lineno)
1492        )
1493    );
1494}
1495pub type zend_leak_info = _zend_leak_info;
1496extern "C" {
1497    pub fn zend_strndup(
1498        s: *const ::std::os::raw::c_char,
1499        length: ::std::os::raw::c_uint,
1500    ) -> *mut ::std::os::raw::c_char;
1501}
1502extern "C" {
1503    pub fn _zend_mem_block_size(
1504        ptr: *mut ::std::os::raw::c_void,
1505        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
1506    ) -> size_t;
1507}
1508extern "C" {
1509    pub fn zend_set_memory_limit(memory_limit: size_t) -> ::std::os::raw::c_int;
1510}
1511extern "C" {
1512    pub fn zend_memory_usage(
1513        real_usage: ::std::os::raw::c_int,
1514        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
1515    ) -> size_t;
1516}
1517extern "C" {
1518    pub fn zend_memory_peak_usage(
1519        real_usage: ::std::os::raw::c_int,
1520        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
1521    ) -> size_t;
1522}
1523#[repr(C)]
1524#[derive(Debug, Copy, Clone)]
1525pub struct _zend_mm_heap {
1526    _unused: [u8; 0],
1527}
1528pub type zend_mm_heap = _zend_mm_heap;
1529extern "C" {
1530    pub fn zend_mm_startup() -> *mut zend_mm_heap;
1531}
1532extern "C" {
1533    pub fn zend_mm_shutdown(
1534        heap: *mut zend_mm_heap,
1535        full_shutdown: ::std::os::raw::c_int,
1536        silent: ::std::os::raw::c_int,
1537        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
1538    );
1539}
1540extern "C" {
1541    pub fn _zend_mm_alloc(heap: *mut zend_mm_heap, size: size_t) -> *mut ::std::os::raw::c_void;
1542}
1543extern "C" {
1544    pub fn _zend_mm_free(heap: *mut zend_mm_heap, p: *mut ::std::os::raw::c_void);
1545}
1546extern "C" {
1547    pub fn _zend_mm_realloc(
1548        heap: *mut zend_mm_heap,
1549        p: *mut ::std::os::raw::c_void,
1550        size: size_t,
1551    ) -> *mut ::std::os::raw::c_void;
1552}
1553extern "C" {
1554    pub fn _zend_mm_block_size(heap: *mut zend_mm_heap, p: *mut ::std::os::raw::c_void) -> size_t;
1555}
1556pub type zend_mm_storage = _zend_mm_storage;
1557#[repr(C)]
1558#[derive(Debug, Copy, Clone)]
1559pub struct _zend_mm_segment {
1560    pub size: size_t,
1561    pub next_segment: *mut _zend_mm_segment,
1562}
1563#[test]
1564fn bindgen_test_layout__zend_mm_segment() {
1565    assert_eq!(
1566        ::std::mem::size_of::<_zend_mm_segment>(),
1567        16usize,
1568        concat!("Size of: ", stringify!(_zend_mm_segment))
1569    );
1570    assert_eq!(
1571        ::std::mem::align_of::<_zend_mm_segment>(),
1572        8usize,
1573        concat!("Alignment of ", stringify!(_zend_mm_segment))
1574    );
1575    assert_eq!(
1576        unsafe { &(*(::std::ptr::null::<_zend_mm_segment>())).size as *const _ as usize },
1577        0usize,
1578        concat!(
1579            "Offset of field: ",
1580            stringify!(_zend_mm_segment),
1581            "::",
1582            stringify!(size)
1583        )
1584    );
1585    assert_eq!(
1586        unsafe { &(*(::std::ptr::null::<_zend_mm_segment>())).next_segment as *const _ as usize },
1587        8usize,
1588        concat!(
1589            "Offset of field: ",
1590            stringify!(_zend_mm_segment),
1591            "::",
1592            stringify!(next_segment)
1593        )
1594    );
1595}
1596pub type zend_mm_segment = _zend_mm_segment;
1597#[repr(C)]
1598#[derive(Debug, Copy, Clone)]
1599pub struct _zend_mm_mem_handlers {
1600    pub name: *const ::std::os::raw::c_char,
1601    pub init: ::std::option::Option<
1602        unsafe extern "C" fn(params: *mut ::std::os::raw::c_void) -> *mut zend_mm_storage,
1603    >,
1604    pub dtor: ::std::option::Option<unsafe extern "C" fn(storage: *mut zend_mm_storage)>,
1605    pub compact: ::std::option::Option<unsafe extern "C" fn(storage: *mut zend_mm_storage)>,
1606    pub _alloc: ::std::option::Option<
1607        unsafe extern "C" fn(storage: *mut zend_mm_storage, size: size_t) -> *mut zend_mm_segment,
1608    >,
1609    pub _realloc: ::std::option::Option<
1610        unsafe extern "C" fn(
1611            storage: *mut zend_mm_storage,
1612            ptr: *mut zend_mm_segment,
1613            size: size_t,
1614        ) -> *mut zend_mm_segment,
1615    >,
1616    pub _free: ::std::option::Option<
1617        unsafe extern "C" fn(storage: *mut zend_mm_storage, ptr: *mut zend_mm_segment),
1618    >,
1619}
1620#[test]
1621fn bindgen_test_layout__zend_mm_mem_handlers() {
1622    assert_eq!(
1623        ::std::mem::size_of::<_zend_mm_mem_handlers>(),
1624        56usize,
1625        concat!("Size of: ", stringify!(_zend_mm_mem_handlers))
1626    );
1627    assert_eq!(
1628        ::std::mem::align_of::<_zend_mm_mem_handlers>(),
1629        8usize,
1630        concat!("Alignment of ", stringify!(_zend_mm_mem_handlers))
1631    );
1632    assert_eq!(
1633        unsafe { &(*(::std::ptr::null::<_zend_mm_mem_handlers>())).name as *const _ as usize },
1634        0usize,
1635        concat!(
1636            "Offset of field: ",
1637            stringify!(_zend_mm_mem_handlers),
1638            "::",
1639            stringify!(name)
1640        )
1641    );
1642    assert_eq!(
1643        unsafe { &(*(::std::ptr::null::<_zend_mm_mem_handlers>())).init as *const _ as usize },
1644        8usize,
1645        concat!(
1646            "Offset of field: ",
1647            stringify!(_zend_mm_mem_handlers),
1648            "::",
1649            stringify!(init)
1650        )
1651    );
1652    assert_eq!(
1653        unsafe { &(*(::std::ptr::null::<_zend_mm_mem_handlers>())).dtor as *const _ as usize },
1654        16usize,
1655        concat!(
1656            "Offset of field: ",
1657            stringify!(_zend_mm_mem_handlers),
1658            "::",
1659            stringify!(dtor)
1660        )
1661    );
1662    assert_eq!(
1663        unsafe { &(*(::std::ptr::null::<_zend_mm_mem_handlers>())).compact as *const _ as usize },
1664        24usize,
1665        concat!(
1666            "Offset of field: ",
1667            stringify!(_zend_mm_mem_handlers),
1668            "::",
1669            stringify!(compact)
1670        )
1671    );
1672    assert_eq!(
1673        unsafe { &(*(::std::ptr::null::<_zend_mm_mem_handlers>()))._alloc as *const _ as usize },
1674        32usize,
1675        concat!(
1676            "Offset of field: ",
1677            stringify!(_zend_mm_mem_handlers),
1678            "::",
1679            stringify!(_alloc)
1680        )
1681    );
1682    assert_eq!(
1683        unsafe { &(*(::std::ptr::null::<_zend_mm_mem_handlers>()))._realloc as *const _ as usize },
1684        40usize,
1685        concat!(
1686            "Offset of field: ",
1687            stringify!(_zend_mm_mem_handlers),
1688            "::",
1689            stringify!(_realloc)
1690        )
1691    );
1692    assert_eq!(
1693        unsafe { &(*(::std::ptr::null::<_zend_mm_mem_handlers>()))._free as *const _ as usize },
1694        48usize,
1695        concat!(
1696            "Offset of field: ",
1697            stringify!(_zend_mm_mem_handlers),
1698            "::",
1699            stringify!(_free)
1700        )
1701    );
1702}
1703pub type zend_mm_mem_handlers = _zend_mm_mem_handlers;
1704#[repr(C)]
1705#[derive(Debug, Copy, Clone)]
1706pub struct _zend_mm_storage {
1707    pub handlers: *const zend_mm_mem_handlers,
1708    pub data: *mut ::std::os::raw::c_void,
1709}
1710#[test]
1711fn bindgen_test_layout__zend_mm_storage() {
1712    assert_eq!(
1713        ::std::mem::size_of::<_zend_mm_storage>(),
1714        16usize,
1715        concat!("Size of: ", stringify!(_zend_mm_storage))
1716    );
1717    assert_eq!(
1718        ::std::mem::align_of::<_zend_mm_storage>(),
1719        8usize,
1720        concat!("Alignment of ", stringify!(_zend_mm_storage))
1721    );
1722    assert_eq!(
1723        unsafe { &(*(::std::ptr::null::<_zend_mm_storage>())).handlers as *const _ as usize },
1724        0usize,
1725        concat!(
1726            "Offset of field: ",
1727            stringify!(_zend_mm_storage),
1728            "::",
1729            stringify!(handlers)
1730        )
1731    );
1732    assert_eq!(
1733        unsafe { &(*(::std::ptr::null::<_zend_mm_storage>())).data as *const _ as usize },
1734        8usize,
1735        concat!(
1736            "Offset of field: ",
1737            stringify!(_zend_mm_storage),
1738            "::",
1739            stringify!(data)
1740        )
1741    );
1742}
1743extern "C" {
1744    pub fn zend_mm_startup_ex(
1745        handlers: *const zend_mm_mem_handlers,
1746        block_size: size_t,
1747        reserve_size: size_t,
1748        internal: ::std::os::raw::c_int,
1749        params: *mut ::std::os::raw::c_void,
1750    ) -> *mut zend_mm_heap;
1751}
1752extern "C" {
1753    pub fn zend_mm_set_heap(
1754        new_heap: *mut zend_mm_heap,
1755        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
1756    ) -> *mut zend_mm_heap;
1757}
1758extern "C" {
1759    pub fn zend_mm_get_storage(heap: *mut zend_mm_heap) -> *mut zend_mm_storage;
1760}
1761extern "C" {
1762    pub fn zend_mm_set_custom_handlers(
1763        heap: *mut zend_mm_heap,
1764        _malloc: ::std::option::Option<
1765            unsafe extern "C" fn(arg1: size_t) -> *mut ::std::os::raw::c_void,
1766        >,
1767        _free: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
1768        _realloc: ::std::option::Option<
1769            unsafe extern "C" fn(
1770                arg1: *mut ::std::os::raw::c_void,
1771                arg2: size_t,
1772            ) -> *mut ::std::os::raw::c_void,
1773        >,
1774    );
1775}
1776pub type zend_bool = ::std::os::raw::c_uchar;
1777pub type zend_uchar = ::std::os::raw::c_uchar;
1778pub type zend_uint = ::std::os::raw::c_uint;
1779pub type zend_ulong = ::std::os::raw::c_ulong;
1780pub type zend_ushort = ::std::os::raw::c_ushort;
1781pub type zend_long64 = ::std::os::raw::c_longlong;
1782pub type zend_ulong64 = ::std::os::raw::c_ulonglong;
1783pub type zend_intptr_t = ::std::os::raw::c_long;
1784pub type zend_uintptr_t = ::std::os::raw::c_ulong;
1785pub type zend_object_handle = ::std::os::raw::c_uint;
1786pub type zend_object_handlers = _zend_object_handlers;
1787pub type zval = _zval_struct;
1788#[repr(C)]
1789#[derive(Debug, Copy, Clone)]
1790pub struct _zend_object_value {
1791    pub handle: zend_object_handle,
1792    pub handlers: *const zend_object_handlers,
1793}
1794#[test]
1795fn bindgen_test_layout__zend_object_value() {
1796    assert_eq!(
1797        ::std::mem::size_of::<_zend_object_value>(),
1798        16usize,
1799        concat!("Size of: ", stringify!(_zend_object_value))
1800    );
1801    assert_eq!(
1802        ::std::mem::align_of::<_zend_object_value>(),
1803        8usize,
1804        concat!("Alignment of ", stringify!(_zend_object_value))
1805    );
1806    assert_eq!(
1807        unsafe { &(*(::std::ptr::null::<_zend_object_value>())).handle as *const _ as usize },
1808        0usize,
1809        concat!(
1810            "Offset of field: ",
1811            stringify!(_zend_object_value),
1812            "::",
1813            stringify!(handle)
1814        )
1815    );
1816    assert_eq!(
1817        unsafe { &(*(::std::ptr::null::<_zend_object_value>())).handlers as *const _ as usize },
1818        8usize,
1819        concat!(
1820            "Offset of field: ",
1821            stringify!(_zend_object_value),
1822            "::",
1823            stringify!(handlers)
1824        )
1825    );
1826}
1827pub type zend_object_value = _zend_object_value;
1828extern "C" {
1829    pub static mut zend_new_interned_string: ::std::option::Option<
1830        unsafe extern "C" fn(
1831            str_: *const ::std::os::raw::c_char,
1832            len: ::std::os::raw::c_int,
1833            free_src: ::std::os::raw::c_int,
1834            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
1835        ) -> *const ::std::os::raw::c_char,
1836    >;
1837}
1838extern "C" {
1839    pub static mut zend_interned_strings_snapshot:
1840        ::std::option::Option<unsafe extern "C" fn(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void)>;
1841}
1842extern "C" {
1843    pub static mut zend_interned_strings_restore:
1844        ::std::option::Option<unsafe extern "C" fn(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void)>;
1845}
1846extern "C" {
1847    pub fn zend_interned_strings_init(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
1848}
1849extern "C" {
1850    pub fn zend_interned_strings_dtor(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
1851}
1852pub const ZEND_RESULT_CODE_SUCCESS: ZEND_RESULT_CODE = 0;
1853pub const ZEND_RESULT_CODE_FAILURE: ZEND_RESULT_CODE = -1;
1854pub type ZEND_RESULT_CODE = ::std::os::raw::c_int;
1855pub type compare_func_t = ::std::option::Option<
1856    unsafe extern "C" fn(
1857        arg1: *const ::std::os::raw::c_void,
1858        arg2: *const ::std::os::raw::c_void,
1859        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
1860    ) -> ::std::os::raw::c_int,
1861>;
1862pub type sort_func_t = ::std::option::Option<
1863    unsafe extern "C" fn(
1864        arg1: *mut ::std::os::raw::c_void,
1865        arg2: size_t,
1866        arg3: size_t,
1867        arg4: compare_func_t,
1868        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
1869    ),
1870>;
1871pub type dtor_func_t =
1872    ::std::option::Option<unsafe extern "C" fn(pDest: *mut ::std::os::raw::c_void)>;
1873pub type copy_ctor_func_t =
1874    ::std::option::Option<unsafe extern "C" fn(pElement: *mut ::std::os::raw::c_void)>;
1875#[repr(C)]
1876#[derive(Debug, Copy, Clone)]
1877pub struct bucket {
1878    pub h: ulong,
1879    pub nKeyLength: uint,
1880    pub pData: *mut ::std::os::raw::c_void,
1881    pub pDataPtr: *mut ::std::os::raw::c_void,
1882    pub pListNext: *mut bucket,
1883    pub pListLast: *mut bucket,
1884    pub pNext: *mut bucket,
1885    pub pLast: *mut bucket,
1886    pub arKey: *const ::std::os::raw::c_char,
1887}
1888#[test]
1889fn bindgen_test_layout_bucket() {
1890    assert_eq!(
1891        ::std::mem::size_of::<bucket>(),
1892        72usize,
1893        concat!("Size of: ", stringify!(bucket))
1894    );
1895    assert_eq!(
1896        ::std::mem::align_of::<bucket>(),
1897        8usize,
1898        concat!("Alignment of ", stringify!(bucket))
1899    );
1900    assert_eq!(
1901        unsafe { &(*(::std::ptr::null::<bucket>())).h as *const _ as usize },
1902        0usize,
1903        concat!("Offset of field: ", stringify!(bucket), "::", stringify!(h))
1904    );
1905    assert_eq!(
1906        unsafe { &(*(::std::ptr::null::<bucket>())).nKeyLength as *const _ as usize },
1907        8usize,
1908        concat!(
1909            "Offset of field: ",
1910            stringify!(bucket),
1911            "::",
1912            stringify!(nKeyLength)
1913        )
1914    );
1915    assert_eq!(
1916        unsafe { &(*(::std::ptr::null::<bucket>())).pData as *const _ as usize },
1917        16usize,
1918        concat!(
1919            "Offset of field: ",
1920            stringify!(bucket),
1921            "::",
1922            stringify!(pData)
1923        )
1924    );
1925    assert_eq!(
1926        unsafe { &(*(::std::ptr::null::<bucket>())).pDataPtr as *const _ as usize },
1927        24usize,
1928        concat!(
1929            "Offset of field: ",
1930            stringify!(bucket),
1931            "::",
1932            stringify!(pDataPtr)
1933        )
1934    );
1935    assert_eq!(
1936        unsafe { &(*(::std::ptr::null::<bucket>())).pListNext as *const _ as usize },
1937        32usize,
1938        concat!(
1939            "Offset of field: ",
1940            stringify!(bucket),
1941            "::",
1942            stringify!(pListNext)
1943        )
1944    );
1945    assert_eq!(
1946        unsafe { &(*(::std::ptr::null::<bucket>())).pListLast as *const _ as usize },
1947        40usize,
1948        concat!(
1949            "Offset of field: ",
1950            stringify!(bucket),
1951            "::",
1952            stringify!(pListLast)
1953        )
1954    );
1955    assert_eq!(
1956        unsafe { &(*(::std::ptr::null::<bucket>())).pNext as *const _ as usize },
1957        48usize,
1958        concat!(
1959            "Offset of field: ",
1960            stringify!(bucket),
1961            "::",
1962            stringify!(pNext)
1963        )
1964    );
1965    assert_eq!(
1966        unsafe { &(*(::std::ptr::null::<bucket>())).pLast as *const _ as usize },
1967        56usize,
1968        concat!(
1969            "Offset of field: ",
1970            stringify!(bucket),
1971            "::",
1972            stringify!(pLast)
1973        )
1974    );
1975    assert_eq!(
1976        unsafe { &(*(::std::ptr::null::<bucket>())).arKey as *const _ as usize },
1977        64usize,
1978        concat!(
1979            "Offset of field: ",
1980            stringify!(bucket),
1981            "::",
1982            stringify!(arKey)
1983        )
1984    );
1985}
1986pub type Bucket = bucket;
1987#[repr(C)]
1988#[derive(Debug, Copy, Clone)]
1989pub struct _hashtable {
1990    pub nTableSize: uint,
1991    pub nTableMask: uint,
1992    pub nNumOfElements: uint,
1993    pub nNextFreeElement: ulong,
1994    pub pInternalPointer: *mut Bucket,
1995    pub pListHead: *mut Bucket,
1996    pub pListTail: *mut Bucket,
1997    pub arBuckets: *mut *mut Bucket,
1998    pub pDestructor: dtor_func_t,
1999    pub persistent: zend_bool,
2000    pub nApplyCount: ::std::os::raw::c_uchar,
2001    pub bApplyProtection: zend_bool,
2002}
2003#[test]
2004fn bindgen_test_layout__hashtable() {
2005    assert_eq!(
2006        ::std::mem::size_of::<_hashtable>(),
2007        72usize,
2008        concat!("Size of: ", stringify!(_hashtable))
2009    );
2010    assert_eq!(
2011        ::std::mem::align_of::<_hashtable>(),
2012        8usize,
2013        concat!("Alignment of ", stringify!(_hashtable))
2014    );
2015    assert_eq!(
2016        unsafe { &(*(::std::ptr::null::<_hashtable>())).nTableSize as *const _ as usize },
2017        0usize,
2018        concat!(
2019            "Offset of field: ",
2020            stringify!(_hashtable),
2021            "::",
2022            stringify!(nTableSize)
2023        )
2024    );
2025    assert_eq!(
2026        unsafe { &(*(::std::ptr::null::<_hashtable>())).nTableMask as *const _ as usize },
2027        4usize,
2028        concat!(
2029            "Offset of field: ",
2030            stringify!(_hashtable),
2031            "::",
2032            stringify!(nTableMask)
2033        )
2034    );
2035    assert_eq!(
2036        unsafe { &(*(::std::ptr::null::<_hashtable>())).nNumOfElements as *const _ as usize },
2037        8usize,
2038        concat!(
2039            "Offset of field: ",
2040            stringify!(_hashtable),
2041            "::",
2042            stringify!(nNumOfElements)
2043        )
2044    );
2045    assert_eq!(
2046        unsafe { &(*(::std::ptr::null::<_hashtable>())).nNextFreeElement as *const _ as usize },
2047        16usize,
2048        concat!(
2049            "Offset of field: ",
2050            stringify!(_hashtable),
2051            "::",
2052            stringify!(nNextFreeElement)
2053        )
2054    );
2055    assert_eq!(
2056        unsafe { &(*(::std::ptr::null::<_hashtable>())).pInternalPointer as *const _ as usize },
2057        24usize,
2058        concat!(
2059            "Offset of field: ",
2060            stringify!(_hashtable),
2061            "::",
2062            stringify!(pInternalPointer)
2063        )
2064    );
2065    assert_eq!(
2066        unsafe { &(*(::std::ptr::null::<_hashtable>())).pListHead as *const _ as usize },
2067        32usize,
2068        concat!(
2069            "Offset of field: ",
2070            stringify!(_hashtable),
2071            "::",
2072            stringify!(pListHead)
2073        )
2074    );
2075    assert_eq!(
2076        unsafe { &(*(::std::ptr::null::<_hashtable>())).pListTail as *const _ as usize },
2077        40usize,
2078        concat!(
2079            "Offset of field: ",
2080            stringify!(_hashtable),
2081            "::",
2082            stringify!(pListTail)
2083        )
2084    );
2085    assert_eq!(
2086        unsafe { &(*(::std::ptr::null::<_hashtable>())).arBuckets as *const _ as usize },
2087        48usize,
2088        concat!(
2089            "Offset of field: ",
2090            stringify!(_hashtable),
2091            "::",
2092            stringify!(arBuckets)
2093        )
2094    );
2095    assert_eq!(
2096        unsafe { &(*(::std::ptr::null::<_hashtable>())).pDestructor as *const _ as usize },
2097        56usize,
2098        concat!(
2099            "Offset of field: ",
2100            stringify!(_hashtable),
2101            "::",
2102            stringify!(pDestructor)
2103        )
2104    );
2105    assert_eq!(
2106        unsafe { &(*(::std::ptr::null::<_hashtable>())).persistent as *const _ as usize },
2107        64usize,
2108        concat!(
2109            "Offset of field: ",
2110            stringify!(_hashtable),
2111            "::",
2112            stringify!(persistent)
2113        )
2114    );
2115    assert_eq!(
2116        unsafe { &(*(::std::ptr::null::<_hashtable>())).nApplyCount as *const _ as usize },
2117        65usize,
2118        concat!(
2119            "Offset of field: ",
2120            stringify!(_hashtable),
2121            "::",
2122            stringify!(nApplyCount)
2123        )
2124    );
2125    assert_eq!(
2126        unsafe { &(*(::std::ptr::null::<_hashtable>())).bApplyProtection as *const _ as usize },
2127        66usize,
2128        concat!(
2129            "Offset of field: ",
2130            stringify!(_hashtable),
2131            "::",
2132            stringify!(bApplyProtection)
2133        )
2134    );
2135}
2136pub type HashTable = _hashtable;
2137#[repr(C)]
2138#[derive(Debug, Copy, Clone)]
2139pub struct _zend_hash_key {
2140    pub arKey: *const ::std::os::raw::c_char,
2141    pub nKeyLength: uint,
2142    pub h: ulong,
2143}
2144#[test]
2145fn bindgen_test_layout__zend_hash_key() {
2146    assert_eq!(
2147        ::std::mem::size_of::<_zend_hash_key>(),
2148        24usize,
2149        concat!("Size of: ", stringify!(_zend_hash_key))
2150    );
2151    assert_eq!(
2152        ::std::mem::align_of::<_zend_hash_key>(),
2153        8usize,
2154        concat!("Alignment of ", stringify!(_zend_hash_key))
2155    );
2156    assert_eq!(
2157        unsafe { &(*(::std::ptr::null::<_zend_hash_key>())).arKey as *const _ as usize },
2158        0usize,
2159        concat!(
2160            "Offset of field: ",
2161            stringify!(_zend_hash_key),
2162            "::",
2163            stringify!(arKey)
2164        )
2165    );
2166    assert_eq!(
2167        unsafe { &(*(::std::ptr::null::<_zend_hash_key>())).nKeyLength as *const _ as usize },
2168        8usize,
2169        concat!(
2170            "Offset of field: ",
2171            stringify!(_zend_hash_key),
2172            "::",
2173            stringify!(nKeyLength)
2174        )
2175    );
2176    assert_eq!(
2177        unsafe { &(*(::std::ptr::null::<_zend_hash_key>())).h as *const _ as usize },
2178        16usize,
2179        concat!(
2180            "Offset of field: ",
2181            stringify!(_zend_hash_key),
2182            "::",
2183            stringify!(h)
2184        )
2185    );
2186}
2187pub type zend_hash_key = _zend_hash_key;
2188pub type merge_checker_func_t = ::std::option::Option<
2189    unsafe extern "C" fn(
2190        target_ht: *mut HashTable,
2191        source_data: *mut ::std::os::raw::c_void,
2192        hash_key: *mut zend_hash_key,
2193        pParam: *mut ::std::os::raw::c_void,
2194    ) -> zend_bool,
2195>;
2196pub type HashPosition = *mut Bucket;
2197extern "C" {
2198    pub fn _zend_hash_init(
2199        ht: *mut HashTable,
2200        nSize: uint,
2201        pDestructor: dtor_func_t,
2202        persistent: zend_bool,
2203    ) -> ::std::os::raw::c_int;
2204}
2205extern "C" {
2206    pub fn _zend_hash_init_ex(
2207        ht: *mut HashTable,
2208        nSize: uint,
2209        pDestructor: dtor_func_t,
2210        persistent: zend_bool,
2211        bApplyProtection: zend_bool,
2212    ) -> ::std::os::raw::c_int;
2213}
2214extern "C" {
2215    pub fn zend_hash_destroy(ht: *mut HashTable);
2216}
2217extern "C" {
2218    pub fn zend_hash_clean(ht: *mut HashTable);
2219}
2220extern "C" {
2221    pub fn _zend_hash_add_or_update(
2222        ht: *mut HashTable,
2223        arKey: *const ::std::os::raw::c_char,
2224        nKeyLength: uint,
2225        pData: *mut ::std::os::raw::c_void,
2226        nDataSize: uint,
2227        pDest: *mut *mut ::std::os::raw::c_void,
2228        flag: ::std::os::raw::c_int,
2229    ) -> ::std::os::raw::c_int;
2230}
2231extern "C" {
2232    pub fn _zend_hash_quick_add_or_update(
2233        ht: *mut HashTable,
2234        arKey: *const ::std::os::raw::c_char,
2235        nKeyLength: uint,
2236        h: ulong,
2237        pData: *mut ::std::os::raw::c_void,
2238        nDataSize: uint,
2239        pDest: *mut *mut ::std::os::raw::c_void,
2240        flag: ::std::os::raw::c_int,
2241    ) -> ::std::os::raw::c_int;
2242}
2243extern "C" {
2244    pub fn _zend_hash_index_update_or_next_insert(
2245        ht: *mut HashTable,
2246        h: ulong,
2247        pData: *mut ::std::os::raw::c_void,
2248        nDataSize: uint,
2249        pDest: *mut *mut ::std::os::raw::c_void,
2250        flag: ::std::os::raw::c_int,
2251    ) -> ::std::os::raw::c_int;
2252}
2253extern "C" {
2254    pub fn zend_hash_add_empty_element(
2255        ht: *mut HashTable,
2256        arKey: *const ::std::os::raw::c_char,
2257        nKeyLength: uint,
2258    ) -> ::std::os::raw::c_int;
2259}
2260pub type apply_func_t = ::std::option::Option<
2261    unsafe extern "C" fn(
2262        pDest: *mut ::std::os::raw::c_void,
2263        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
2264    ) -> ::std::os::raw::c_int,
2265>;
2266pub type apply_func_arg_t = ::std::option::Option<
2267    unsafe extern "C" fn(
2268        pDest: *mut ::std::os::raw::c_void,
2269        argument: *mut ::std::os::raw::c_void,
2270        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
2271    ) -> ::std::os::raw::c_int,
2272>;
2273pub type apply_func_args_t = ::std::option::Option<
2274    unsafe extern "C" fn(
2275        pDest: *mut ::std::os::raw::c_void,
2276        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
2277        num_args: ::std::os::raw::c_int,
2278        args: *mut __va_list_tag,
2279        hash_key: *mut zend_hash_key,
2280    ) -> ::std::os::raw::c_int,
2281>;
2282extern "C" {
2283    pub fn zend_hash_graceful_destroy(ht: *mut HashTable);
2284}
2285extern "C" {
2286    pub fn zend_hash_graceful_reverse_destroy(ht: *mut HashTable);
2287}
2288extern "C" {
2289    pub fn zend_hash_apply(
2290        ht: *mut HashTable,
2291        apply_func: apply_func_t,
2292        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
2293    );
2294}
2295extern "C" {
2296    pub fn zend_hash_apply_with_argument(
2297        ht: *mut HashTable,
2298        apply_func: apply_func_arg_t,
2299        arg1: *mut ::std::os::raw::c_void,
2300        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
2301    );
2302}
2303extern "C" {
2304    pub fn zend_hash_apply_with_arguments(
2305        ht: *mut HashTable,
2306        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
2307        apply_func: apply_func_args_t,
2308        arg1: ::std::os::raw::c_int,
2309        ...
2310    );
2311}
2312extern "C" {
2313    pub fn zend_hash_reverse_apply(
2314        ht: *mut HashTable,
2315        apply_func: apply_func_t,
2316        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
2317    );
2318}
2319extern "C" {
2320    pub fn zend_hash_del_key_or_index(
2321        ht: *mut HashTable,
2322        arKey: *const ::std::os::raw::c_char,
2323        nKeyLength: uint,
2324        h: ulong,
2325        flag: ::std::os::raw::c_int,
2326    ) -> ::std::os::raw::c_int;
2327}
2328extern "C" {
2329    pub fn zend_hash_find(
2330        ht: *const HashTable,
2331        arKey: *const ::std::os::raw::c_char,
2332        nKeyLength: uint,
2333        pData: *mut *mut ::std::os::raw::c_void,
2334    ) -> ::std::os::raw::c_int;
2335}
2336extern "C" {
2337    pub fn zend_hash_quick_find(
2338        ht: *const HashTable,
2339        arKey: *const ::std::os::raw::c_char,
2340        nKeyLength: uint,
2341        h: ulong,
2342        pData: *mut *mut ::std::os::raw::c_void,
2343    ) -> ::std::os::raw::c_int;
2344}
2345extern "C" {
2346    pub fn zend_hash_index_find(
2347        ht: *const HashTable,
2348        h: ulong,
2349        pData: *mut *mut ::std::os::raw::c_void,
2350    ) -> ::std::os::raw::c_int;
2351}
2352extern "C" {
2353    pub fn zend_hash_exists(
2354        ht: *const HashTable,
2355        arKey: *const ::std::os::raw::c_char,
2356        nKeyLength: uint,
2357    ) -> ::std::os::raw::c_int;
2358}
2359extern "C" {
2360    pub fn zend_hash_quick_exists(
2361        ht: *const HashTable,
2362        arKey: *const ::std::os::raw::c_char,
2363        nKeyLength: uint,
2364        h: ulong,
2365    ) -> ::std::os::raw::c_int;
2366}
2367extern "C" {
2368    pub fn zend_hash_index_exists(ht: *const HashTable, h: ulong) -> ::std::os::raw::c_int;
2369}
2370extern "C" {
2371    pub fn zend_hash_next_free_element(ht: *const HashTable) -> ulong;
2372}
2373extern "C" {
2374    pub fn zend_hash_move_forward_ex(
2375        ht: *mut HashTable,
2376        pos: *mut HashPosition,
2377    ) -> ::std::os::raw::c_int;
2378}
2379extern "C" {
2380    pub fn zend_hash_move_backwards_ex(
2381        ht: *mut HashTable,
2382        pos: *mut HashPosition,
2383    ) -> ::std::os::raw::c_int;
2384}
2385extern "C" {
2386    pub fn zend_hash_get_current_key_ex(
2387        ht: *const HashTable,
2388        str_index: *mut *mut ::std::os::raw::c_char,
2389        str_length: *mut uint,
2390        num_index: *mut ulong,
2391        duplicate: zend_bool,
2392        pos: *mut HashPosition,
2393    ) -> ::std::os::raw::c_int;
2394}
2395extern "C" {
2396    pub fn zend_hash_get_current_key_zval_ex(
2397        ht: *const HashTable,
2398        key: *mut zval,
2399        pos: *mut HashPosition,
2400    );
2401}
2402extern "C" {
2403    pub fn zend_hash_get_current_key_type_ex(
2404        ht: *mut HashTable,
2405        pos: *mut HashPosition,
2406    ) -> ::std::os::raw::c_int;
2407}
2408extern "C" {
2409    pub fn zend_hash_get_current_data_ex(
2410        ht: *mut HashTable,
2411        pData: *mut *mut ::std::os::raw::c_void,
2412        pos: *mut HashPosition,
2413    ) -> ::std::os::raw::c_int;
2414}
2415extern "C" {
2416    pub fn zend_hash_internal_pointer_reset_ex(ht: *mut HashTable, pos: *mut HashPosition);
2417}
2418extern "C" {
2419    pub fn zend_hash_internal_pointer_end_ex(ht: *mut HashTable, pos: *mut HashPosition);
2420}
2421extern "C" {
2422    pub fn zend_hash_update_current_key_ex(
2423        ht: *mut HashTable,
2424        key_type: ::std::os::raw::c_int,
2425        str_index: *const ::std::os::raw::c_char,
2426        str_length: uint,
2427        num_index: ulong,
2428        mode: ::std::os::raw::c_int,
2429        pos: *mut HashPosition,
2430    ) -> ::std::os::raw::c_int;
2431}
2432#[repr(C)]
2433#[derive(Debug, Copy, Clone)]
2434pub struct _HashPointer {
2435    pub pos: HashPosition,
2436    pub h: ulong,
2437}
2438#[test]
2439fn bindgen_test_layout__HashPointer() {
2440    assert_eq!(
2441        ::std::mem::size_of::<_HashPointer>(),
2442        16usize,
2443        concat!("Size of: ", stringify!(_HashPointer))
2444    );
2445    assert_eq!(
2446        ::std::mem::align_of::<_HashPointer>(),
2447        8usize,
2448        concat!("Alignment of ", stringify!(_HashPointer))
2449    );
2450    assert_eq!(
2451        unsafe { &(*(::std::ptr::null::<_HashPointer>())).pos as *const _ as usize },
2452        0usize,
2453        concat!(
2454            "Offset of field: ",
2455            stringify!(_HashPointer),
2456            "::",
2457            stringify!(pos)
2458        )
2459    );
2460    assert_eq!(
2461        unsafe { &(*(::std::ptr::null::<_HashPointer>())).h as *const _ as usize },
2462        8usize,
2463        concat!(
2464            "Offset of field: ",
2465            stringify!(_HashPointer),
2466            "::",
2467            stringify!(h)
2468        )
2469    );
2470}
2471pub type HashPointer = _HashPointer;
2472extern "C" {
2473    pub fn zend_hash_get_pointer(
2474        ht: *const HashTable,
2475        ptr: *mut HashPointer,
2476    ) -> ::std::os::raw::c_int;
2477}
2478extern "C" {
2479    pub fn zend_hash_set_pointer(
2480        ht: *mut HashTable,
2481        ptr: *const HashPointer,
2482    ) -> ::std::os::raw::c_int;
2483}
2484extern "C" {
2485    pub fn zend_hash_copy(
2486        target: *mut HashTable,
2487        source: *mut HashTable,
2488        pCopyConstructor: copy_ctor_func_t,
2489        tmp: *mut ::std::os::raw::c_void,
2490        size: uint,
2491    );
2492}
2493extern "C" {
2494    pub fn _zend_hash_merge(
2495        target: *mut HashTable,
2496        source: *mut HashTable,
2497        pCopyConstructor: copy_ctor_func_t,
2498        tmp: *mut ::std::os::raw::c_void,
2499        size: uint,
2500        overwrite: ::std::os::raw::c_int,
2501    );
2502}
2503extern "C" {
2504    pub fn zend_hash_merge_ex(
2505        target: *mut HashTable,
2506        source: *mut HashTable,
2507        pCopyConstructor: copy_ctor_func_t,
2508        size: uint,
2509        pMergeSource: merge_checker_func_t,
2510        pParam: *mut ::std::os::raw::c_void,
2511    );
2512}
2513extern "C" {
2514    pub fn zend_hash_sort(
2515        ht: *mut HashTable,
2516        sort_func: sort_func_t,
2517        compare_func: compare_func_t,
2518        renumber: ::std::os::raw::c_int,
2519        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
2520    ) -> ::std::os::raw::c_int;
2521}
2522extern "C" {
2523    pub fn zend_hash_compare(
2524        ht1: *mut HashTable,
2525        ht2: *mut HashTable,
2526        compar: compare_func_t,
2527        ordered: zend_bool,
2528        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
2529    ) -> ::std::os::raw::c_int;
2530}
2531extern "C" {
2532    pub fn zend_hash_minmax(
2533        ht: *const HashTable,
2534        compar: compare_func_t,
2535        flag: ::std::os::raw::c_int,
2536        pData: *mut *mut ::std::os::raw::c_void,
2537        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
2538    ) -> ::std::os::raw::c_int;
2539}
2540extern "C" {
2541    pub fn zend_hash_num_elements(ht: *const HashTable) -> ::std::os::raw::c_int;
2542}
2543extern "C" {
2544    pub fn zend_hash_rehash(ht: *mut HashTable) -> ::std::os::raw::c_int;
2545}
2546extern "C" {
2547    pub fn zend_hash_reindex(ht: *mut HashTable, only_integer_keys: zend_bool);
2548}
2549extern "C" {
2550    pub fn _zend_hash_splice(
2551        ht: *mut HashTable,
2552        nDataSize: uint,
2553        pCopyConstructor: copy_ctor_func_t,
2554        offset: uint,
2555        length: uint,
2556        list: *mut *mut ::std::os::raw::c_void,
2557        list_count: uint,
2558        removed: *mut HashTable,
2559    );
2560}
2561extern "C" {
2562    pub fn zend_hash_func(arKey: *const ::std::os::raw::c_char, nKeyLength: uint) -> ulong;
2563}
2564#[repr(C)]
2565#[derive(Debug, Copy, Clone)]
2566pub struct _zend_ts_hashtable {
2567    pub hash: HashTable,
2568    pub reader: zend_uint,
2569    pub mx_reader: *mut pthread_mutex_t,
2570    pub mx_writer: *mut pthread_mutex_t,
2571}
2572#[test]
2573fn bindgen_test_layout__zend_ts_hashtable() {
2574    assert_eq!(
2575        ::std::mem::size_of::<_zend_ts_hashtable>(),
2576        96usize,
2577        concat!("Size of: ", stringify!(_zend_ts_hashtable))
2578    );
2579    assert_eq!(
2580        ::std::mem::align_of::<_zend_ts_hashtable>(),
2581        8usize,
2582        concat!("Alignment of ", stringify!(_zend_ts_hashtable))
2583    );
2584    assert_eq!(
2585        unsafe { &(*(::std::ptr::null::<_zend_ts_hashtable>())).hash as *const _ as usize },
2586        0usize,
2587        concat!(
2588            "Offset of field: ",
2589            stringify!(_zend_ts_hashtable),
2590            "::",
2591            stringify!(hash)
2592        )
2593    );
2594    assert_eq!(
2595        unsafe { &(*(::std::ptr::null::<_zend_ts_hashtable>())).reader as *const _ as usize },
2596        72usize,
2597        concat!(
2598            "Offset of field: ",
2599            stringify!(_zend_ts_hashtable),
2600            "::",
2601            stringify!(reader)
2602        )
2603    );
2604    assert_eq!(
2605        unsafe { &(*(::std::ptr::null::<_zend_ts_hashtable>())).mx_reader as *const _ as usize },
2606        80usize,
2607        concat!(
2608            "Offset of field: ",
2609            stringify!(_zend_ts_hashtable),
2610            "::",
2611            stringify!(mx_reader)
2612        )
2613    );
2614    assert_eq!(
2615        unsafe { &(*(::std::ptr::null::<_zend_ts_hashtable>())).mx_writer as *const _ as usize },
2616        88usize,
2617        concat!(
2618            "Offset of field: ",
2619            stringify!(_zend_ts_hashtable),
2620            "::",
2621            stringify!(mx_writer)
2622        )
2623    );
2624}
2625pub type TsHashTable = _zend_ts_hashtable;
2626extern "C" {
2627    pub fn _zend_ts_hash_init(
2628        ht: *mut TsHashTable,
2629        nSize: uint,
2630        pDestructor: dtor_func_t,
2631        persistent: zend_bool,
2632    ) -> ::std::os::raw::c_int;
2633}
2634extern "C" {
2635    pub fn _zend_ts_hash_init_ex(
2636        ht: *mut TsHashTable,
2637        nSize: uint,
2638        pDestructor: dtor_func_t,
2639        persistent: zend_bool,
2640        bApplyProtection: zend_bool,
2641    ) -> ::std::os::raw::c_int;
2642}
2643extern "C" {
2644    pub fn zend_ts_hash_destroy(ht: *mut TsHashTable);
2645}
2646extern "C" {
2647    pub fn zend_ts_hash_clean(ht: *mut TsHashTable);
2648}
2649extern "C" {
2650    pub fn _zend_ts_hash_add_or_update(
2651        ht: *mut TsHashTable,
2652        arKey: *mut ::std::os::raw::c_char,
2653        nKeyLength: uint,
2654        pData: *mut ::std::os::raw::c_void,
2655        nDataSize: uint,
2656        pDest: *mut *mut ::std::os::raw::c_void,
2657        flag: ::std::os::raw::c_int,
2658    ) -> ::std::os::raw::c_int;
2659}
2660extern "C" {
2661    pub fn _zend_ts_hash_quick_add_or_update(
2662        ht: *mut TsHashTable,
2663        arKey: *mut ::std::os::raw::c_char,
2664        nKeyLength: uint,
2665        h: ulong,
2666        pData: *mut ::std::os::raw::c_void,
2667        nDataSize: uint,
2668        pDest: *mut *mut ::std::os::raw::c_void,
2669        flag: ::std::os::raw::c_int,
2670    ) -> ::std::os::raw::c_int;
2671}
2672extern "C" {
2673    pub fn _zend_ts_hash_index_update_or_next_insert(
2674        ht: *mut TsHashTable,
2675        h: ulong,
2676        pData: *mut ::std::os::raw::c_void,
2677        nDataSize: uint,
2678        pDest: *mut *mut ::std::os::raw::c_void,
2679        flag: ::std::os::raw::c_int,
2680    ) -> ::std::os::raw::c_int;
2681}
2682extern "C" {
2683    pub fn zend_ts_hash_add_empty_element(
2684        ht: *mut TsHashTable,
2685        arKey: *mut ::std::os::raw::c_char,
2686        nKeyLength: uint,
2687    ) -> ::std::os::raw::c_int;
2688}
2689extern "C" {
2690    pub fn zend_ts_hash_graceful_destroy(ht: *mut TsHashTable);
2691}
2692extern "C" {
2693    pub fn zend_ts_hash_apply(
2694        ht: *mut TsHashTable,
2695        apply_func: apply_func_t,
2696        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
2697    );
2698}
2699extern "C" {
2700    pub fn zend_ts_hash_apply_with_argument(
2701        ht: *mut TsHashTable,
2702        apply_func: apply_func_arg_t,
2703        arg1: *mut ::std::os::raw::c_void,
2704        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
2705    );
2706}
2707extern "C" {
2708    pub fn zend_ts_hash_apply_with_arguments(
2709        ht: *mut TsHashTable,
2710        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
2711        apply_func: apply_func_args_t,
2712        arg1: ::std::os::raw::c_int,
2713        ...
2714    );
2715}
2716extern "C" {
2717    pub fn zend_ts_hash_reverse_apply(
2718        ht: *mut TsHashTable,
2719        apply_func: apply_func_t,
2720        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
2721    );
2722}
2723extern "C" {
2724    pub fn zend_ts_hash_del_key_or_index(
2725        ht: *mut TsHashTable,
2726        arKey: *mut ::std::os::raw::c_char,
2727        nKeyLength: uint,
2728        h: ulong,
2729        flag: ::std::os::raw::c_int,
2730    ) -> ::std::os::raw::c_int;
2731}
2732extern "C" {
2733    pub fn zend_ts_get_hash_value(
2734        ht: *mut TsHashTable,
2735        arKey: *mut ::std::os::raw::c_char,
2736        nKeyLength: uint,
2737    ) -> ulong;
2738}
2739extern "C" {
2740    pub fn zend_ts_hash_find(
2741        ht: *mut TsHashTable,
2742        arKey: *mut ::std::os::raw::c_char,
2743        nKeyLength: uint,
2744        pData: *mut *mut ::std::os::raw::c_void,
2745    ) -> ::std::os::raw::c_int;
2746}
2747extern "C" {
2748    pub fn zend_ts_hash_quick_find(
2749        ht: *mut TsHashTable,
2750        arKey: *mut ::std::os::raw::c_char,
2751        nKeyLength: uint,
2752        h: ulong,
2753        pData: *mut *mut ::std::os::raw::c_void,
2754    ) -> ::std::os::raw::c_int;
2755}
2756extern "C" {
2757    pub fn zend_ts_hash_index_find(
2758        ht: *mut TsHashTable,
2759        h: ulong,
2760        pData: *mut *mut ::std::os::raw::c_void,
2761    ) -> ::std::os::raw::c_int;
2762}
2763extern "C" {
2764    pub fn zend_ts_hash_exists(
2765        ht: *mut TsHashTable,
2766        arKey: *mut ::std::os::raw::c_char,
2767        nKeyLength: uint,
2768    ) -> ::std::os::raw::c_int;
2769}
2770extern "C" {
2771    pub fn zend_ts_hash_index_exists(ht: *mut TsHashTable, h: ulong) -> ::std::os::raw::c_int;
2772}
2773extern "C" {
2774    pub fn zend_ts_hash_copy(
2775        target: *mut TsHashTable,
2776        source: *mut TsHashTable,
2777        pCopyConstructor: copy_ctor_func_t,
2778        tmp: *mut ::std::os::raw::c_void,
2779        size: uint,
2780    );
2781}
2782extern "C" {
2783    pub fn zend_ts_hash_copy_to_hash(
2784        target: *mut HashTable,
2785        source: *mut TsHashTable,
2786        pCopyConstructor: copy_ctor_func_t,
2787        tmp: *mut ::std::os::raw::c_void,
2788        size: uint,
2789    );
2790}
2791extern "C" {
2792    pub fn zend_ts_hash_merge(
2793        target: *mut TsHashTable,
2794        source: *mut TsHashTable,
2795        pCopyConstructor: copy_ctor_func_t,
2796        tmp: *mut ::std::os::raw::c_void,
2797        size: uint,
2798        overwrite: ::std::os::raw::c_int,
2799    );
2800}
2801extern "C" {
2802    pub fn zend_ts_hash_merge_ex(
2803        target: *mut TsHashTable,
2804        source: *mut TsHashTable,
2805        pCopyConstructor: copy_ctor_func_t,
2806        size: uint,
2807        pMergeSource: merge_checker_func_t,
2808        pParam: *mut ::std::os::raw::c_void,
2809    );
2810}
2811extern "C" {
2812    pub fn zend_ts_hash_sort(
2813        ht: *mut TsHashTable,
2814        sort_func: sort_func_t,
2815        compare_func: compare_func_t,
2816        renumber: ::std::os::raw::c_int,
2817        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
2818    ) -> ::std::os::raw::c_int;
2819}
2820extern "C" {
2821    pub fn zend_ts_hash_compare(
2822        ht1: *mut TsHashTable,
2823        ht2: *mut TsHashTable,
2824        compar: compare_func_t,
2825        ordered: zend_bool,
2826        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
2827    ) -> ::std::os::raw::c_int;
2828}
2829extern "C" {
2830    pub fn zend_ts_hash_minmax(
2831        ht: *mut TsHashTable,
2832        compar: compare_func_t,
2833        flag: ::std::os::raw::c_int,
2834        pData: *mut *mut ::std::os::raw::c_void,
2835        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
2836    ) -> ::std::os::raw::c_int;
2837}
2838extern "C" {
2839    pub fn zend_ts_hash_num_elements(ht: *mut TsHashTable) -> ::std::os::raw::c_int;
2840}
2841extern "C" {
2842    pub fn zend_ts_hash_rehash(ht: *mut TsHashTable) -> ::std::os::raw::c_int;
2843}
2844extern "C" {
2845    pub fn zend_ts_hash_func(arKey: *mut ::std::os::raw::c_char, nKeyLength: uint) -> ulong;
2846}
2847#[repr(C)]
2848#[derive(Debug, Copy, Clone)]
2849pub struct _zend_llist_element {
2850    pub next: *mut _zend_llist_element,
2851    pub prev: *mut _zend_llist_element,
2852    pub data: [::std::os::raw::c_char; 1usize],
2853}
2854#[test]
2855fn bindgen_test_layout__zend_llist_element() {
2856    assert_eq!(
2857        ::std::mem::size_of::<_zend_llist_element>(),
2858        24usize,
2859        concat!("Size of: ", stringify!(_zend_llist_element))
2860    );
2861    assert_eq!(
2862        ::std::mem::align_of::<_zend_llist_element>(),
2863        8usize,
2864        concat!("Alignment of ", stringify!(_zend_llist_element))
2865    );
2866    assert_eq!(
2867        unsafe { &(*(::std::ptr::null::<_zend_llist_element>())).next as *const _ as usize },
2868        0usize,
2869        concat!(
2870            "Offset of field: ",
2871            stringify!(_zend_llist_element),
2872            "::",
2873            stringify!(next)
2874        )
2875    );
2876    assert_eq!(
2877        unsafe { &(*(::std::ptr::null::<_zend_llist_element>())).prev as *const _ as usize },
2878        8usize,
2879        concat!(
2880            "Offset of field: ",
2881            stringify!(_zend_llist_element),
2882            "::",
2883            stringify!(prev)
2884        )
2885    );
2886    assert_eq!(
2887        unsafe { &(*(::std::ptr::null::<_zend_llist_element>())).data as *const _ as usize },
2888        16usize,
2889        concat!(
2890            "Offset of field: ",
2891            stringify!(_zend_llist_element),
2892            "::",
2893            stringify!(data)
2894        )
2895    );
2896}
2897pub type zend_llist_element = _zend_llist_element;
2898pub type llist_dtor_func_t =
2899    ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>;
2900pub type llist_compare_func_t = ::std::option::Option<
2901    unsafe extern "C" fn(
2902        arg1: *mut *const zend_llist_element,
2903        arg2: *mut *const zend_llist_element,
2904        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
2905    ) -> ::std::os::raw::c_int,
2906>;
2907pub type llist_apply_with_args_func_t = ::std::option::Option<
2908    unsafe extern "C" fn(
2909        data: *mut ::std::os::raw::c_void,
2910        num_args: ::std::os::raw::c_int,
2911        args: *mut __va_list_tag,
2912        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
2913    ),
2914>;
2915pub type llist_apply_with_arg_func_t = ::std::option::Option<
2916    unsafe extern "C" fn(
2917        data: *mut ::std::os::raw::c_void,
2918        arg: *mut ::std::os::raw::c_void,
2919        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
2920    ),
2921>;
2922pub type llist_apply_func_t = ::std::option::Option<
2923    unsafe extern "C" fn(
2924        arg1: *mut ::std::os::raw::c_void,
2925        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
2926    ),
2927>;
2928#[repr(C)]
2929#[derive(Debug, Copy, Clone)]
2930pub struct _zend_llist {
2931    pub head: *mut zend_llist_element,
2932    pub tail: *mut zend_llist_element,
2933    pub count: size_t,
2934    pub size: size_t,
2935    pub dtor: llist_dtor_func_t,
2936    pub persistent: ::std::os::raw::c_uchar,
2937    pub traverse_ptr: *mut zend_llist_element,
2938}
2939#[test]
2940fn bindgen_test_layout__zend_llist() {
2941    assert_eq!(
2942        ::std::mem::size_of::<_zend_llist>(),
2943        56usize,
2944        concat!("Size of: ", stringify!(_zend_llist))
2945    );
2946    assert_eq!(
2947        ::std::mem::align_of::<_zend_llist>(),
2948        8usize,
2949        concat!("Alignment of ", stringify!(_zend_llist))
2950    );
2951    assert_eq!(
2952        unsafe { &(*(::std::ptr::null::<_zend_llist>())).head as *const _ as usize },
2953        0usize,
2954        concat!(
2955            "Offset of field: ",
2956            stringify!(_zend_llist),
2957            "::",
2958            stringify!(head)
2959        )
2960    );
2961    assert_eq!(
2962        unsafe { &(*(::std::ptr::null::<_zend_llist>())).tail as *const _ as usize },
2963        8usize,
2964        concat!(
2965            "Offset of field: ",
2966            stringify!(_zend_llist),
2967            "::",
2968            stringify!(tail)
2969        )
2970    );
2971    assert_eq!(
2972        unsafe { &(*(::std::ptr::null::<_zend_llist>())).count as *const _ as usize },
2973        16usize,
2974        concat!(
2975            "Offset of field: ",
2976            stringify!(_zend_llist),
2977            "::",
2978            stringify!(count)
2979        )
2980    );
2981    assert_eq!(
2982        unsafe { &(*(::std::ptr::null::<_zend_llist>())).size as *const _ as usize },
2983        24usize,
2984        concat!(
2985            "Offset of field: ",
2986            stringify!(_zend_llist),
2987            "::",
2988            stringify!(size)
2989        )
2990    );
2991    assert_eq!(
2992        unsafe { &(*(::std::ptr::null::<_zend_llist>())).dtor as *const _ as usize },
2993        32usize,
2994        concat!(
2995            "Offset of field: ",
2996            stringify!(_zend_llist),
2997            "::",
2998            stringify!(dtor)
2999        )
3000    );
3001    assert_eq!(
3002        unsafe { &(*(::std::ptr::null::<_zend_llist>())).persistent as *const _ as usize },
3003        40usize,
3004        concat!(
3005            "Offset of field: ",
3006            stringify!(_zend_llist),
3007            "::",
3008            stringify!(persistent)
3009        )
3010    );
3011    assert_eq!(
3012        unsafe { &(*(::std::ptr::null::<_zend_llist>())).traverse_ptr as *const _ as usize },
3013        48usize,
3014        concat!(
3015            "Offset of field: ",
3016            stringify!(_zend_llist),
3017            "::",
3018            stringify!(traverse_ptr)
3019        )
3020    );
3021}
3022pub type zend_llist = _zend_llist;
3023pub type zend_llist_position = *mut zend_llist_element;
3024extern "C" {
3025    pub fn zend_llist_init(
3026        l: *mut zend_llist,
3027        size: size_t,
3028        dtor: llist_dtor_func_t,
3029        persistent: ::std::os::raw::c_uchar,
3030    );
3031}
3032extern "C" {
3033    pub fn zend_llist_add_element(l: *mut zend_llist, element: *mut ::std::os::raw::c_void);
3034}
3035extern "C" {
3036    pub fn zend_llist_prepend_element(l: *mut zend_llist, element: *mut ::std::os::raw::c_void);
3037}
3038extern "C" {
3039    pub fn zend_llist_del_element(
3040        l: *mut zend_llist,
3041        element: *mut ::std::os::raw::c_void,
3042        compare: ::std::option::Option<
3043            unsafe extern "C" fn(
3044                element1: *mut ::std::os::raw::c_void,
3045                element2: *mut ::std::os::raw::c_void,
3046            ) -> ::std::os::raw::c_int,
3047        >,
3048    );
3049}
3050extern "C" {
3051    pub fn zend_llist_destroy(l: *mut zend_llist);
3052}
3053extern "C" {
3054    pub fn zend_llist_clean(l: *mut zend_llist);
3055}
3056extern "C" {
3057    pub fn zend_llist_remove_tail(l: *mut zend_llist) -> *mut ::std::os::raw::c_void;
3058}
3059extern "C" {
3060    pub fn zend_llist_copy(dst: *mut zend_llist, src: *mut zend_llist);
3061}
3062extern "C" {
3063    pub fn zend_llist_apply(
3064        l: *mut zend_llist,
3065        func: llist_apply_func_t,
3066        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3067    );
3068}
3069extern "C" {
3070    pub fn zend_llist_apply_with_del(
3071        l: *mut zend_llist,
3072        func: ::std::option::Option<
3073            unsafe extern "C" fn(data: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
3074        >,
3075    );
3076}
3077extern "C" {
3078    pub fn zend_llist_apply_with_argument(
3079        l: *mut zend_llist,
3080        func: llist_apply_with_arg_func_t,
3081        arg: *mut ::std::os::raw::c_void,
3082        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3083    );
3084}
3085extern "C" {
3086    pub fn zend_llist_apply_with_arguments(
3087        l: *mut zend_llist,
3088        func: llist_apply_with_args_func_t,
3089        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3090        num_args: ::std::os::raw::c_int,
3091        ...
3092    );
3093}
3094extern "C" {
3095    pub fn zend_llist_count(l: *mut zend_llist) -> ::std::os::raw::c_int;
3096}
3097extern "C" {
3098    pub fn zend_llist_sort(
3099        l: *mut zend_llist,
3100        comp_func: llist_compare_func_t,
3101        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3102    );
3103}
3104extern "C" {
3105    pub fn zend_llist_get_first_ex(
3106        l: *mut zend_llist,
3107        pos: *mut zend_llist_position,
3108    ) -> *mut ::std::os::raw::c_void;
3109}
3110extern "C" {
3111    pub fn zend_llist_get_last_ex(
3112        l: *mut zend_llist,
3113        pos: *mut zend_llist_position,
3114    ) -> *mut ::std::os::raw::c_void;
3115}
3116extern "C" {
3117    pub fn zend_llist_get_next_ex(
3118        l: *mut zend_llist,
3119        pos: *mut zend_llist_position,
3120    ) -> *mut ::std::os::raw::c_void;
3121}
3122extern "C" {
3123    pub fn zend_llist_get_prev_ex(
3124        l: *mut zend_llist,
3125        pos: *mut zend_llist_position,
3126    ) -> *mut ::std::os::raw::c_void;
3127}
3128extern "C" {
3129    pub fn zend_error_noreturn(
3130        type_: ::std::os::raw::c_int,
3131        format: *const ::std::os::raw::c_char,
3132        ...
3133    );
3134}
3135pub type zend_class_entry = _zend_class_entry;
3136#[repr(C)]
3137#[derive(Debug, Copy, Clone)]
3138pub struct _zend_guard {
3139    pub in_get: zend_bool,
3140    pub in_set: zend_bool,
3141    pub in_unset: zend_bool,
3142    pub in_isset: zend_bool,
3143    pub dummy: zend_bool,
3144}
3145#[test]
3146fn bindgen_test_layout__zend_guard() {
3147    assert_eq!(
3148        ::std::mem::size_of::<_zend_guard>(),
3149        5usize,
3150        concat!("Size of: ", stringify!(_zend_guard))
3151    );
3152    assert_eq!(
3153        ::std::mem::align_of::<_zend_guard>(),
3154        1usize,
3155        concat!("Alignment of ", stringify!(_zend_guard))
3156    );
3157    assert_eq!(
3158        unsafe { &(*(::std::ptr::null::<_zend_guard>())).in_get as *const _ as usize },
3159        0usize,
3160        concat!(
3161            "Offset of field: ",
3162            stringify!(_zend_guard),
3163            "::",
3164            stringify!(in_get)
3165        )
3166    );
3167    assert_eq!(
3168        unsafe { &(*(::std::ptr::null::<_zend_guard>())).in_set as *const _ as usize },
3169        1usize,
3170        concat!(
3171            "Offset of field: ",
3172            stringify!(_zend_guard),
3173            "::",
3174            stringify!(in_set)
3175        )
3176    );
3177    assert_eq!(
3178        unsafe { &(*(::std::ptr::null::<_zend_guard>())).in_unset as *const _ as usize },
3179        2usize,
3180        concat!(
3181            "Offset of field: ",
3182            stringify!(_zend_guard),
3183            "::",
3184            stringify!(in_unset)
3185        )
3186    );
3187    assert_eq!(
3188        unsafe { &(*(::std::ptr::null::<_zend_guard>())).in_isset as *const _ as usize },
3189        3usize,
3190        concat!(
3191            "Offset of field: ",
3192            stringify!(_zend_guard),
3193            "::",
3194            stringify!(in_isset)
3195        )
3196    );
3197    assert_eq!(
3198        unsafe { &(*(::std::ptr::null::<_zend_guard>())).dummy as *const _ as usize },
3199        4usize,
3200        concat!(
3201            "Offset of field: ",
3202            stringify!(_zend_guard),
3203            "::",
3204            stringify!(dummy)
3205        )
3206    );
3207}
3208pub type zend_guard = _zend_guard;
3209#[repr(C)]
3210#[derive(Debug, Copy, Clone)]
3211pub struct _zend_object {
3212    pub ce: *mut zend_class_entry,
3213    pub properties: *mut HashTable,
3214    pub properties_table: *mut *mut zval,
3215    pub guards: *mut HashTable,
3216}
3217#[test]
3218fn bindgen_test_layout__zend_object() {
3219    assert_eq!(
3220        ::std::mem::size_of::<_zend_object>(),
3221        32usize,
3222        concat!("Size of: ", stringify!(_zend_object))
3223    );
3224    assert_eq!(
3225        ::std::mem::align_of::<_zend_object>(),
3226        8usize,
3227        concat!("Alignment of ", stringify!(_zend_object))
3228    );
3229    assert_eq!(
3230        unsafe { &(*(::std::ptr::null::<_zend_object>())).ce as *const _ as usize },
3231        0usize,
3232        concat!(
3233            "Offset of field: ",
3234            stringify!(_zend_object),
3235            "::",
3236            stringify!(ce)
3237        )
3238    );
3239    assert_eq!(
3240        unsafe { &(*(::std::ptr::null::<_zend_object>())).properties as *const _ as usize },
3241        8usize,
3242        concat!(
3243            "Offset of field: ",
3244            stringify!(_zend_object),
3245            "::",
3246            stringify!(properties)
3247        )
3248    );
3249    assert_eq!(
3250        unsafe { &(*(::std::ptr::null::<_zend_object>())).properties_table as *const _ as usize },
3251        16usize,
3252        concat!(
3253            "Offset of field: ",
3254            stringify!(_zend_object),
3255            "::",
3256            stringify!(properties_table)
3257        )
3258    );
3259    assert_eq!(
3260        unsafe { &(*(::std::ptr::null::<_zend_object>())).guards as *const _ as usize },
3261        24usize,
3262        concat!(
3263            "Offset of field: ",
3264            stringify!(_zend_object),
3265            "::",
3266            stringify!(guards)
3267        )
3268    );
3269}
3270pub type zend_object = _zend_object;
3271pub type zend_object_read_property_t = ::std::option::Option<
3272    unsafe extern "C" fn(
3273        object: *mut zval,
3274        member: *mut zval,
3275        type_: ::std::os::raw::c_int,
3276        key: *const _zend_literal,
3277        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3278    ) -> *mut zval,
3279>;
3280pub type zend_object_read_dimension_t = ::std::option::Option<
3281    unsafe extern "C" fn(
3282        object: *mut zval,
3283        offset: *mut zval,
3284        type_: ::std::os::raw::c_int,
3285        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3286    ) -> *mut zval,
3287>;
3288pub type zend_object_write_property_t = ::std::option::Option<
3289    unsafe extern "C" fn(
3290        object: *mut zval,
3291        member: *mut zval,
3292        value: *mut zval,
3293        key: *const _zend_literal,
3294        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3295    ),
3296>;
3297pub type zend_object_write_dimension_t = ::std::option::Option<
3298    unsafe extern "C" fn(
3299        object: *mut zval,
3300        offset: *mut zval,
3301        value: *mut zval,
3302        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3303    ),
3304>;
3305pub type zend_object_get_property_ptr_ptr_t = ::std::option::Option<
3306    unsafe extern "C" fn(
3307        object: *mut zval,
3308        member: *mut zval,
3309        type_: ::std::os::raw::c_int,
3310        key: *const _zend_literal,
3311        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3312    ) -> *mut *mut zval,
3313>;
3314pub type zend_object_set_t = ::std::option::Option<
3315    unsafe extern "C" fn(
3316        object: *mut *mut zval,
3317        value: *mut zval,
3318        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3319    ),
3320>;
3321pub type zend_object_get_t = ::std::option::Option<
3322    unsafe extern "C" fn(
3323        object: *mut zval,
3324        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3325    ) -> *mut zval,
3326>;
3327pub type zend_object_has_property_t = ::std::option::Option<
3328    unsafe extern "C" fn(
3329        object: *mut zval,
3330        member: *mut zval,
3331        has_set_exists: ::std::os::raw::c_int,
3332        key: *const _zend_literal,
3333        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3334    ) -> ::std::os::raw::c_int,
3335>;
3336pub type zend_object_has_dimension_t = ::std::option::Option<
3337    unsafe extern "C" fn(
3338        object: *mut zval,
3339        member: *mut zval,
3340        check_empty: ::std::os::raw::c_int,
3341        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3342    ) -> ::std::os::raw::c_int,
3343>;
3344pub type zend_object_unset_property_t = ::std::option::Option<
3345    unsafe extern "C" fn(
3346        object: *mut zval,
3347        member: *mut zval,
3348        key: *const _zend_literal,
3349        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3350    ),
3351>;
3352pub type zend_object_unset_dimension_t = ::std::option::Option<
3353    unsafe extern "C" fn(
3354        object: *mut zval,
3355        offset: *mut zval,
3356        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3357    ),
3358>;
3359pub type zend_object_get_properties_t = ::std::option::Option<
3360    unsafe extern "C" fn(
3361        object: *mut zval,
3362        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3363    ) -> *mut HashTable,
3364>;
3365pub type zend_object_get_debug_info_t = ::std::option::Option<
3366    unsafe extern "C" fn(
3367        object: *mut zval,
3368        is_temp: *mut ::std::os::raw::c_int,
3369        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3370    ) -> *mut HashTable,
3371>;
3372pub type zend_object_call_method_t = ::std::option::Option<
3373    unsafe extern "C" fn(
3374        method: *const ::std::os::raw::c_char,
3375        ht: ::std::os::raw::c_int,
3376        return_value: *mut zval,
3377        return_value_ptr: *mut *mut zval,
3378        this_ptr: *mut zval,
3379        return_value_used: ::std::os::raw::c_int,
3380        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3381    ) -> ::std::os::raw::c_int,
3382>;
3383pub type zend_object_get_method_t = ::std::option::Option<
3384    unsafe extern "C" fn(
3385        object_ptr: *mut *mut zval,
3386        method: *mut ::std::os::raw::c_char,
3387        method_len: ::std::os::raw::c_int,
3388        key: *const _zend_literal,
3389        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3390    ) -> *mut _zend_function,
3391>;
3392pub type zend_object_get_constructor_t = ::std::option::Option<
3393    unsafe extern "C" fn(
3394        object: *mut zval,
3395        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3396    ) -> *mut _zend_function,
3397>;
3398pub type zend_object_add_ref_t = ::std::option::Option<
3399    unsafe extern "C" fn(object: *mut zval, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void),
3400>;
3401pub type zend_object_del_ref_t = ::std::option::Option<
3402    unsafe extern "C" fn(object: *mut zval, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void),
3403>;
3404pub type zend_object_delete_obj_t = ::std::option::Option<
3405    unsafe extern "C" fn(object: *mut zval, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void),
3406>;
3407pub type zend_object_clone_obj_t = ::std::option::Option<
3408    unsafe extern "C" fn(
3409        object: *mut zval,
3410        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3411    ) -> zend_object_value,
3412>;
3413pub type zend_object_get_class_entry_t = ::std::option::Option<
3414    unsafe extern "C" fn(
3415        object: *const zval,
3416        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3417    ) -> *mut zend_class_entry,
3418>;
3419pub type zend_object_get_class_name_t = ::std::option::Option<
3420    unsafe extern "C" fn(
3421        object: *const zval,
3422        class_name: *mut *const ::std::os::raw::c_char,
3423        class_name_len: *mut zend_uint,
3424        parent: ::std::os::raw::c_int,
3425        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3426    ) -> ::std::os::raw::c_int,
3427>;
3428pub type zend_object_compare_t = ::std::option::Option<
3429    unsafe extern "C" fn(
3430        object1: *mut zval,
3431        object2: *mut zval,
3432        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3433    ) -> ::std::os::raw::c_int,
3434>;
3435pub type zend_object_compare_zvals_t = ::std::option::Option<
3436    unsafe extern "C" fn(
3437        resul: *mut zval,
3438        op1: *mut zval,
3439        op2: *mut zval,
3440        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3441    ) -> ::std::os::raw::c_int,
3442>;
3443pub type zend_object_cast_t = ::std::option::Option<
3444    unsafe extern "C" fn(
3445        readobj: *mut zval,
3446        retval: *mut zval,
3447        type_: ::std::os::raw::c_int,
3448        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3449    ) -> ::std::os::raw::c_int,
3450>;
3451pub type zend_object_count_elements_t = ::std::option::Option<
3452    unsafe extern "C" fn(
3453        object: *mut zval,
3454        count: *mut ::std::os::raw::c_long,
3455        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3456    ) -> ::std::os::raw::c_int,
3457>;
3458pub type zend_object_get_closure_t = ::std::option::Option<
3459    unsafe extern "C" fn(
3460        obj: *mut zval,
3461        ce_ptr: *mut *mut zend_class_entry,
3462        fptr_ptr: *mut *mut _zend_function,
3463        zobj_ptr: *mut *mut zval,
3464        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3465    ) -> ::std::os::raw::c_int,
3466>;
3467pub type zend_object_get_gc_t = ::std::option::Option<
3468    unsafe extern "C" fn(
3469        object: *mut zval,
3470        table: *mut *mut *mut zval,
3471        n: *mut ::std::os::raw::c_int,
3472        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3473    ) -> *mut HashTable,
3474>;
3475pub type zend_object_do_operation_t = ::std::option::Option<
3476    unsafe extern "C" fn(
3477        opcode: zend_uchar,
3478        result: *mut zval,
3479        op1: *mut zval,
3480        op2: *mut zval,
3481        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3482    ) -> ::std::os::raw::c_int,
3483>;
3484#[repr(C)]
3485#[derive(Debug, Copy, Clone)]
3486pub struct _zend_object_handlers {
3487    pub add_ref: zend_object_add_ref_t,
3488    pub del_ref: zend_object_del_ref_t,
3489    pub clone_obj: zend_object_clone_obj_t,
3490    pub read_property: zend_object_read_property_t,
3491    pub write_property: zend_object_write_property_t,
3492    pub read_dimension: zend_object_read_dimension_t,
3493    pub write_dimension: zend_object_write_dimension_t,
3494    pub get_property_ptr_ptr: zend_object_get_property_ptr_ptr_t,
3495    pub get: zend_object_get_t,
3496    pub set: zend_object_set_t,
3497    pub has_property: zend_object_has_property_t,
3498    pub unset_property: zend_object_unset_property_t,
3499    pub has_dimension: zend_object_has_dimension_t,
3500    pub unset_dimension: zend_object_unset_dimension_t,
3501    pub get_properties: zend_object_get_properties_t,
3502    pub get_method: zend_object_get_method_t,
3503    pub call_method: zend_object_call_method_t,
3504    pub get_constructor: zend_object_get_constructor_t,
3505    pub get_class_entry: zend_object_get_class_entry_t,
3506    pub get_class_name: zend_object_get_class_name_t,
3507    pub compare_objects: zend_object_compare_t,
3508    pub cast_object: zend_object_cast_t,
3509    pub count_elements: zend_object_count_elements_t,
3510    pub get_debug_info: zend_object_get_debug_info_t,
3511    pub get_closure: zend_object_get_closure_t,
3512    pub get_gc: zend_object_get_gc_t,
3513    pub do_operation: zend_object_do_operation_t,
3514    pub compare: zend_object_compare_zvals_t,
3515}
3516#[test]
3517fn bindgen_test_layout__zend_object_handlers() {
3518    assert_eq!(
3519        ::std::mem::size_of::<_zend_object_handlers>(),
3520        224usize,
3521        concat!("Size of: ", stringify!(_zend_object_handlers))
3522    );
3523    assert_eq!(
3524        ::std::mem::align_of::<_zend_object_handlers>(),
3525        8usize,
3526        concat!("Alignment of ", stringify!(_zend_object_handlers))
3527    );
3528    assert_eq!(
3529        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).add_ref as *const _ as usize },
3530        0usize,
3531        concat!(
3532            "Offset of field: ",
3533            stringify!(_zend_object_handlers),
3534            "::",
3535            stringify!(add_ref)
3536        )
3537    );
3538    assert_eq!(
3539        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).del_ref as *const _ as usize },
3540        8usize,
3541        concat!(
3542            "Offset of field: ",
3543            stringify!(_zend_object_handlers),
3544            "::",
3545            stringify!(del_ref)
3546        )
3547    );
3548    assert_eq!(
3549        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).clone_obj as *const _ as usize },
3550        16usize,
3551        concat!(
3552            "Offset of field: ",
3553            stringify!(_zend_object_handlers),
3554            "::",
3555            stringify!(clone_obj)
3556        )
3557    );
3558    assert_eq!(
3559        unsafe {
3560            &(*(::std::ptr::null::<_zend_object_handlers>())).read_property as *const _ as usize
3561        },
3562        24usize,
3563        concat!(
3564            "Offset of field: ",
3565            stringify!(_zend_object_handlers),
3566            "::",
3567            stringify!(read_property)
3568        )
3569    );
3570    assert_eq!(
3571        unsafe {
3572            &(*(::std::ptr::null::<_zend_object_handlers>())).write_property as *const _ as usize
3573        },
3574        32usize,
3575        concat!(
3576            "Offset of field: ",
3577            stringify!(_zend_object_handlers),
3578            "::",
3579            stringify!(write_property)
3580        )
3581    );
3582    assert_eq!(
3583        unsafe {
3584            &(*(::std::ptr::null::<_zend_object_handlers>())).read_dimension as *const _ as usize
3585        },
3586        40usize,
3587        concat!(
3588            "Offset of field: ",
3589            stringify!(_zend_object_handlers),
3590            "::",
3591            stringify!(read_dimension)
3592        )
3593    );
3594    assert_eq!(
3595        unsafe {
3596            &(*(::std::ptr::null::<_zend_object_handlers>())).write_dimension as *const _ as usize
3597        },
3598        48usize,
3599        concat!(
3600            "Offset of field: ",
3601            stringify!(_zend_object_handlers),
3602            "::",
3603            stringify!(write_dimension)
3604        )
3605    );
3606    assert_eq!(
3607        unsafe {
3608            &(*(::std::ptr::null::<_zend_object_handlers>())).get_property_ptr_ptr as *const _
3609                as usize
3610        },
3611        56usize,
3612        concat!(
3613            "Offset of field: ",
3614            stringify!(_zend_object_handlers),
3615            "::",
3616            stringify!(get_property_ptr_ptr)
3617        )
3618    );
3619    assert_eq!(
3620        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).get as *const _ as usize },
3621        64usize,
3622        concat!(
3623            "Offset of field: ",
3624            stringify!(_zend_object_handlers),
3625            "::",
3626            stringify!(get)
3627        )
3628    );
3629    assert_eq!(
3630        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).set as *const _ as usize },
3631        72usize,
3632        concat!(
3633            "Offset of field: ",
3634            stringify!(_zend_object_handlers),
3635            "::",
3636            stringify!(set)
3637        )
3638    );
3639    assert_eq!(
3640        unsafe {
3641            &(*(::std::ptr::null::<_zend_object_handlers>())).has_property as *const _ as usize
3642        },
3643        80usize,
3644        concat!(
3645            "Offset of field: ",
3646            stringify!(_zend_object_handlers),
3647            "::",
3648            stringify!(has_property)
3649        )
3650    );
3651    assert_eq!(
3652        unsafe {
3653            &(*(::std::ptr::null::<_zend_object_handlers>())).unset_property as *const _ as usize
3654        },
3655        88usize,
3656        concat!(
3657            "Offset of field: ",
3658            stringify!(_zend_object_handlers),
3659            "::",
3660            stringify!(unset_property)
3661        )
3662    );
3663    assert_eq!(
3664        unsafe {
3665            &(*(::std::ptr::null::<_zend_object_handlers>())).has_dimension as *const _ as usize
3666        },
3667        96usize,
3668        concat!(
3669            "Offset of field: ",
3670            stringify!(_zend_object_handlers),
3671            "::",
3672            stringify!(has_dimension)
3673        )
3674    );
3675    assert_eq!(
3676        unsafe {
3677            &(*(::std::ptr::null::<_zend_object_handlers>())).unset_dimension as *const _ as usize
3678        },
3679        104usize,
3680        concat!(
3681            "Offset of field: ",
3682            stringify!(_zend_object_handlers),
3683            "::",
3684            stringify!(unset_dimension)
3685        )
3686    );
3687    assert_eq!(
3688        unsafe {
3689            &(*(::std::ptr::null::<_zend_object_handlers>())).get_properties as *const _ as usize
3690        },
3691        112usize,
3692        concat!(
3693            "Offset of field: ",
3694            stringify!(_zend_object_handlers),
3695            "::",
3696            stringify!(get_properties)
3697        )
3698    );
3699    assert_eq!(
3700        unsafe {
3701            &(*(::std::ptr::null::<_zend_object_handlers>())).get_method as *const _ as usize
3702        },
3703        120usize,
3704        concat!(
3705            "Offset of field: ",
3706            stringify!(_zend_object_handlers),
3707            "::",
3708            stringify!(get_method)
3709        )
3710    );
3711    assert_eq!(
3712        unsafe {
3713            &(*(::std::ptr::null::<_zend_object_handlers>())).call_method as *const _ as usize
3714        },
3715        128usize,
3716        concat!(
3717            "Offset of field: ",
3718            stringify!(_zend_object_handlers),
3719            "::",
3720            stringify!(call_method)
3721        )
3722    );
3723    assert_eq!(
3724        unsafe {
3725            &(*(::std::ptr::null::<_zend_object_handlers>())).get_constructor as *const _ as usize
3726        },
3727        136usize,
3728        concat!(
3729            "Offset of field: ",
3730            stringify!(_zend_object_handlers),
3731            "::",
3732            stringify!(get_constructor)
3733        )
3734    );
3735    assert_eq!(
3736        unsafe {
3737            &(*(::std::ptr::null::<_zend_object_handlers>())).get_class_entry as *const _ as usize
3738        },
3739        144usize,
3740        concat!(
3741            "Offset of field: ",
3742            stringify!(_zend_object_handlers),
3743            "::",
3744            stringify!(get_class_entry)
3745        )
3746    );
3747    assert_eq!(
3748        unsafe {
3749            &(*(::std::ptr::null::<_zend_object_handlers>())).get_class_name as *const _ as usize
3750        },
3751        152usize,
3752        concat!(
3753            "Offset of field: ",
3754            stringify!(_zend_object_handlers),
3755            "::",
3756            stringify!(get_class_name)
3757        )
3758    );
3759    assert_eq!(
3760        unsafe {
3761            &(*(::std::ptr::null::<_zend_object_handlers>())).compare_objects as *const _ as usize
3762        },
3763        160usize,
3764        concat!(
3765            "Offset of field: ",
3766            stringify!(_zend_object_handlers),
3767            "::",
3768            stringify!(compare_objects)
3769        )
3770    );
3771    assert_eq!(
3772        unsafe {
3773            &(*(::std::ptr::null::<_zend_object_handlers>())).cast_object as *const _ as usize
3774        },
3775        168usize,
3776        concat!(
3777            "Offset of field: ",
3778            stringify!(_zend_object_handlers),
3779            "::",
3780            stringify!(cast_object)
3781        )
3782    );
3783    assert_eq!(
3784        unsafe {
3785            &(*(::std::ptr::null::<_zend_object_handlers>())).count_elements as *const _ as usize
3786        },
3787        176usize,
3788        concat!(
3789            "Offset of field: ",
3790            stringify!(_zend_object_handlers),
3791            "::",
3792            stringify!(count_elements)
3793        )
3794    );
3795    assert_eq!(
3796        unsafe {
3797            &(*(::std::ptr::null::<_zend_object_handlers>())).get_debug_info as *const _ as usize
3798        },
3799        184usize,
3800        concat!(
3801            "Offset of field: ",
3802            stringify!(_zend_object_handlers),
3803            "::",
3804            stringify!(get_debug_info)
3805        )
3806    );
3807    assert_eq!(
3808        unsafe {
3809            &(*(::std::ptr::null::<_zend_object_handlers>())).get_closure as *const _ as usize
3810        },
3811        192usize,
3812        concat!(
3813            "Offset of field: ",
3814            stringify!(_zend_object_handlers),
3815            "::",
3816            stringify!(get_closure)
3817        )
3818    );
3819    assert_eq!(
3820        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).get_gc as *const _ as usize },
3821        200usize,
3822        concat!(
3823            "Offset of field: ",
3824            stringify!(_zend_object_handlers),
3825            "::",
3826            stringify!(get_gc)
3827        )
3828    );
3829    assert_eq!(
3830        unsafe {
3831            &(*(::std::ptr::null::<_zend_object_handlers>())).do_operation as *const _ as usize
3832        },
3833        208usize,
3834        concat!(
3835            "Offset of field: ",
3836            stringify!(_zend_object_handlers),
3837            "::",
3838            stringify!(do_operation)
3839        )
3840    );
3841    assert_eq!(
3842        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).compare as *const _ as usize },
3843        216usize,
3844        concat!(
3845            "Offset of field: ",
3846            stringify!(_zend_object_handlers),
3847            "::",
3848            stringify!(compare)
3849        )
3850    );
3851}
3852extern "C" {
3853    pub static mut std_object_handlers: zend_object_handlers;
3854}
3855extern "C" {
3856    pub fn zend_std_get_static_method(
3857        ce: *mut zend_class_entry,
3858        function_name_strval: *const ::std::os::raw::c_char,
3859        function_name_strlen: ::std::os::raw::c_int,
3860        key: *const _zend_literal,
3861        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3862    ) -> *mut _zend_function;
3863}
3864extern "C" {
3865    pub fn zend_std_get_static_property(
3866        ce: *mut zend_class_entry,
3867        property_name: *const ::std::os::raw::c_char,
3868        property_name_len: ::std::os::raw::c_int,
3869        silent: zend_bool,
3870        key: *const _zend_literal,
3871        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3872    ) -> *mut *mut zval;
3873}
3874extern "C" {
3875    pub fn zend_std_unset_static_property(
3876        ce: *mut zend_class_entry,
3877        property_name: *const ::std::os::raw::c_char,
3878        property_name_len: ::std::os::raw::c_int,
3879        key: *const _zend_literal,
3880        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3881    ) -> zend_bool;
3882}
3883extern "C" {
3884    pub fn zend_std_get_constructor(
3885        object: *mut zval,
3886        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3887    ) -> *mut _zend_function;
3888}
3889extern "C" {
3890    pub fn zend_get_property_info(
3891        ce: *mut zend_class_entry,
3892        member: *mut zval,
3893        silent: ::std::os::raw::c_int,
3894        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3895    ) -> *mut _zend_property_info;
3896}
3897extern "C" {
3898    pub fn zend_std_get_properties(
3899        object: *mut zval,
3900        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3901    ) -> *mut HashTable;
3902}
3903extern "C" {
3904    pub fn zend_std_get_debug_info(
3905        object: *mut zval,
3906        is_temp: *mut ::std::os::raw::c_int,
3907        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3908    ) -> *mut HashTable;
3909}
3910extern "C" {
3911    pub fn zend_std_cast_object_tostring(
3912        readobj: *mut zval,
3913        writeobj: *mut zval,
3914        type_: ::std::os::raw::c_int,
3915        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3916    ) -> ::std::os::raw::c_int;
3917}
3918extern "C" {
3919    pub fn zend_std_write_property(
3920        object: *mut zval,
3921        member: *mut zval,
3922        value: *mut zval,
3923        key: *const _zend_literal,
3924        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3925    );
3926}
3927extern "C" {
3928    pub fn zend_check_private(
3929        fbc: *mut _zend_function,
3930        ce: *mut zend_class_entry,
3931        function_name_strval: *mut ::std::os::raw::c_char,
3932        function_name_strlen: ::std::os::raw::c_int,
3933        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3934    ) -> ::std::os::raw::c_int;
3935}
3936extern "C" {
3937    pub fn zend_check_protected(
3938        ce: *mut zend_class_entry,
3939        scope: *mut zend_class_entry,
3940    ) -> ::std::os::raw::c_int;
3941}
3942extern "C" {
3943    pub fn zend_check_property_access(
3944        zobj: *mut zend_object,
3945        prop_info_name: *const ::std::os::raw::c_char,
3946        prop_info_name_len: ::std::os::raw::c_int,
3947        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3948    ) -> ::std::os::raw::c_int;
3949}
3950extern "C" {
3951    pub fn zend_std_call_user_call(
3952        ht: ::std::os::raw::c_int,
3953        return_value: *mut zval,
3954        return_value_ptr: *mut *mut zval,
3955        this_ptr: *mut zval,
3956        return_value_used: ::std::os::raw::c_int,
3957        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
3958    );
3959}
3960pub type zend_ast = _zend_ast;
3961pub const _zend_ast_kind_ZEND_CONST: _zend_ast_kind = 256;
3962pub const _zend_ast_kind_ZEND_BOOL_AND: _zend_ast_kind = 257;
3963pub const _zend_ast_kind_ZEND_BOOL_OR: _zend_ast_kind = 258;
3964pub const _zend_ast_kind_ZEND_SELECT: _zend_ast_kind = 259;
3965pub const _zend_ast_kind_ZEND_UNARY_PLUS: _zend_ast_kind = 260;
3966pub const _zend_ast_kind_ZEND_UNARY_MINUS: _zend_ast_kind = 261;
3967pub type _zend_ast_kind = ::std::os::raw::c_uint;
3968pub use self::_zend_ast_kind as zend_ast_kind;
3969#[repr(C)]
3970#[derive(Copy, Clone)]
3971pub struct _zend_ast {
3972    pub kind: ::std::os::raw::c_ushort,
3973    pub children: ::std::os::raw::c_ushort,
3974    pub u: _zend_ast__bindgen_ty_1,
3975}
3976#[repr(C)]
3977#[derive(Copy, Clone)]
3978pub union _zend_ast__bindgen_ty_1 {
3979    pub val: *mut zval,
3980    pub child: *mut zend_ast,
3981    _bindgen_union_align: u64,
3982}
3983#[test]
3984fn bindgen_test_layout__zend_ast__bindgen_ty_1() {
3985    assert_eq!(
3986        ::std::mem::size_of::<_zend_ast__bindgen_ty_1>(),
3987        8usize,
3988        concat!("Size of: ", stringify!(_zend_ast__bindgen_ty_1))
3989    );
3990    assert_eq!(
3991        ::std::mem::align_of::<_zend_ast__bindgen_ty_1>(),
3992        8usize,
3993        concat!("Alignment of ", stringify!(_zend_ast__bindgen_ty_1))
3994    );
3995    assert_eq!(
3996        unsafe { &(*(::std::ptr::null::<_zend_ast__bindgen_ty_1>())).val as *const _ as usize },
3997        0usize,
3998        concat!(
3999            "Offset of field: ",
4000            stringify!(_zend_ast__bindgen_ty_1),
4001            "::",
4002            stringify!(val)
4003        )
4004    );
4005    assert_eq!(
4006        unsafe { &(*(::std::ptr::null::<_zend_ast__bindgen_ty_1>())).child as *const _ as usize },
4007        0usize,
4008        concat!(
4009            "Offset of field: ",
4010            stringify!(_zend_ast__bindgen_ty_1),
4011            "::",
4012            stringify!(child)
4013        )
4014    );
4015}
4016#[test]
4017fn bindgen_test_layout__zend_ast() {
4018    assert_eq!(
4019        ::std::mem::size_of::<_zend_ast>(),
4020        16usize,
4021        concat!("Size of: ", stringify!(_zend_ast))
4022    );
4023    assert_eq!(
4024        ::std::mem::align_of::<_zend_ast>(),
4025        8usize,
4026        concat!("Alignment of ", stringify!(_zend_ast))
4027    );
4028    assert_eq!(
4029        unsafe { &(*(::std::ptr::null::<_zend_ast>())).kind as *const _ as usize },
4030        0usize,
4031        concat!(
4032            "Offset of field: ",
4033            stringify!(_zend_ast),
4034            "::",
4035            stringify!(kind)
4036        )
4037    );
4038    assert_eq!(
4039        unsafe { &(*(::std::ptr::null::<_zend_ast>())).children as *const _ as usize },
4040        2usize,
4041        concat!(
4042            "Offset of field: ",
4043            stringify!(_zend_ast),
4044            "::",
4045            stringify!(children)
4046        )
4047    );
4048    assert_eq!(
4049        unsafe { &(*(::std::ptr::null::<_zend_ast>())).u as *const _ as usize },
4050        8usize,
4051        concat!(
4052            "Offset of field: ",
4053            stringify!(_zend_ast),
4054            "::",
4055            stringify!(u)
4056        )
4057    );
4058}
4059extern "C" {
4060    pub fn zend_ast_create_constant(zv: *mut zval) -> *mut zend_ast;
4061}
4062extern "C" {
4063    pub fn zend_ast_create_unary(kind: uint, op0: *mut zend_ast) -> *mut zend_ast;
4064}
4065extern "C" {
4066    pub fn zend_ast_create_binary(
4067        kind: uint,
4068        op0: *mut zend_ast,
4069        op1: *mut zend_ast,
4070    ) -> *mut zend_ast;
4071}
4072extern "C" {
4073    pub fn zend_ast_create_ternary(
4074        kind: uint,
4075        op0: *mut zend_ast,
4076        op1: *mut zend_ast,
4077        op2: *mut zend_ast,
4078    ) -> *mut zend_ast;
4079}
4080extern "C" {
4081    pub fn zend_ast_create_dynamic(kind: uint) -> *mut zend_ast;
4082}
4083extern "C" {
4084    pub fn zend_ast_dynamic_add(ast: *mut *mut zend_ast, op: *mut zend_ast);
4085}
4086extern "C" {
4087    pub fn zend_ast_dynamic_shrink(ast: *mut *mut zend_ast);
4088}
4089extern "C" {
4090    pub fn zend_ast_is_ct_constant(ast: *mut zend_ast) -> ::std::os::raw::c_int;
4091}
4092extern "C" {
4093    pub fn zend_ast_evaluate(
4094        result: *mut zval,
4095        ast: *mut zend_ast,
4096        scope: *mut zend_class_entry,
4097        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
4098    );
4099}
4100extern "C" {
4101    pub fn zend_ast_copy(ast: *mut zend_ast) -> *mut zend_ast;
4102}
4103extern "C" {
4104    pub fn zend_ast_destroy(ast: *mut zend_ast);
4105}
4106#[repr(C)]
4107#[derive(Copy, Clone)]
4108pub union _zvalue_value {
4109    pub lval: ::std::os::raw::c_long,
4110    pub dval: f64,
4111    pub str_: _zvalue_value__bindgen_ty_1,
4112    pub ht: *mut HashTable,
4113    pub obj: zend_object_value,
4114    pub ast: *mut zend_ast,
4115    _bindgen_union_align: [u64; 2usize],
4116}
4117#[repr(C)]
4118#[derive(Debug, Copy, Clone)]
4119pub struct _zvalue_value__bindgen_ty_1 {
4120    pub val: *mut ::std::os::raw::c_char,
4121    pub len: ::std::os::raw::c_int,
4122}
4123#[test]
4124fn bindgen_test_layout__zvalue_value__bindgen_ty_1() {
4125    assert_eq!(
4126        ::std::mem::size_of::<_zvalue_value__bindgen_ty_1>(),
4127        16usize,
4128        concat!("Size of: ", stringify!(_zvalue_value__bindgen_ty_1))
4129    );
4130    assert_eq!(
4131        ::std::mem::align_of::<_zvalue_value__bindgen_ty_1>(),
4132        8usize,
4133        concat!("Alignment of ", stringify!(_zvalue_value__bindgen_ty_1))
4134    );
4135    assert_eq!(
4136        unsafe { &(*(::std::ptr::null::<_zvalue_value__bindgen_ty_1>())).val as *const _ as usize },
4137        0usize,
4138        concat!(
4139            "Offset of field: ",
4140            stringify!(_zvalue_value__bindgen_ty_1),
4141            "::",
4142            stringify!(val)
4143        )
4144    );
4145    assert_eq!(
4146        unsafe { &(*(::std::ptr::null::<_zvalue_value__bindgen_ty_1>())).len as *const _ as usize },
4147        8usize,
4148        concat!(
4149            "Offset of field: ",
4150            stringify!(_zvalue_value__bindgen_ty_1),
4151            "::",
4152            stringify!(len)
4153        )
4154    );
4155}
4156#[test]
4157fn bindgen_test_layout__zvalue_value() {
4158    assert_eq!(
4159        ::std::mem::size_of::<_zvalue_value>(),
4160        16usize,
4161        concat!("Size of: ", stringify!(_zvalue_value))
4162    );
4163    assert_eq!(
4164        ::std::mem::align_of::<_zvalue_value>(),
4165        8usize,
4166        concat!("Alignment of ", stringify!(_zvalue_value))
4167    );
4168    assert_eq!(
4169        unsafe { &(*(::std::ptr::null::<_zvalue_value>())).lval as *const _ as usize },
4170        0usize,
4171        concat!(
4172            "Offset of field: ",
4173            stringify!(_zvalue_value),
4174            "::",
4175            stringify!(lval)
4176        )
4177    );
4178    assert_eq!(
4179        unsafe { &(*(::std::ptr::null::<_zvalue_value>())).dval as *const _ as usize },
4180        0usize,
4181        concat!(
4182            "Offset of field: ",
4183            stringify!(_zvalue_value),
4184            "::",
4185            stringify!(dval)
4186        )
4187    );
4188    assert_eq!(
4189        unsafe { &(*(::std::ptr::null::<_zvalue_value>())).str_ as *const _ as usize },
4190        0usize,
4191        concat!(
4192            "Offset of field: ",
4193            stringify!(_zvalue_value),
4194            "::",
4195            stringify!(str_)
4196        )
4197    );
4198    assert_eq!(
4199        unsafe { &(*(::std::ptr::null::<_zvalue_value>())).ht as *const _ as usize },
4200        0usize,
4201        concat!(
4202            "Offset of field: ",
4203            stringify!(_zvalue_value),
4204            "::",
4205            stringify!(ht)
4206        )
4207    );
4208    assert_eq!(
4209        unsafe { &(*(::std::ptr::null::<_zvalue_value>())).obj as *const _ as usize },
4210        0usize,
4211        concat!(
4212            "Offset of field: ",
4213            stringify!(_zvalue_value),
4214            "::",
4215            stringify!(obj)
4216        )
4217    );
4218    assert_eq!(
4219        unsafe { &(*(::std::ptr::null::<_zvalue_value>())).ast as *const _ as usize },
4220        0usize,
4221        concat!(
4222            "Offset of field: ",
4223            stringify!(_zvalue_value),
4224            "::",
4225            stringify!(ast)
4226        )
4227    );
4228}
4229pub type zvalue_value = _zvalue_value;
4230#[repr(C)]
4231#[derive(Copy, Clone)]
4232pub struct _zval_struct {
4233    pub value: zvalue_value,
4234    pub refcount__gc: zend_uint,
4235    pub type_: zend_uchar,
4236    pub is_ref__gc: zend_uchar,
4237}
4238#[test]
4239fn bindgen_test_layout__zval_struct() {
4240    assert_eq!(
4241        ::std::mem::size_of::<_zval_struct>(),
4242        24usize,
4243        concat!("Size of: ", stringify!(_zval_struct))
4244    );
4245    assert_eq!(
4246        ::std::mem::align_of::<_zval_struct>(),
4247        8usize,
4248        concat!("Alignment of ", stringify!(_zval_struct))
4249    );
4250    assert_eq!(
4251        unsafe { &(*(::std::ptr::null::<_zval_struct>())).value as *const _ as usize },
4252        0usize,
4253        concat!(
4254            "Offset of field: ",
4255            stringify!(_zval_struct),
4256            "::",
4257            stringify!(value)
4258        )
4259    );
4260    assert_eq!(
4261        unsafe { &(*(::std::ptr::null::<_zval_struct>())).refcount__gc as *const _ as usize },
4262        16usize,
4263        concat!(
4264            "Offset of field: ",
4265            stringify!(_zval_struct),
4266            "::",
4267            stringify!(refcount__gc)
4268        )
4269    );
4270    assert_eq!(
4271        unsafe { &(*(::std::ptr::null::<_zval_struct>())).type_ as *const _ as usize },
4272        20usize,
4273        concat!(
4274            "Offset of field: ",
4275            stringify!(_zval_struct),
4276            "::",
4277            stringify!(type_)
4278        )
4279    );
4280    assert_eq!(
4281        unsafe { &(*(::std::ptr::null::<_zval_struct>())).is_ref__gc as *const _ as usize },
4282        21usize,
4283        concat!(
4284            "Offset of field: ",
4285            stringify!(_zval_struct),
4286            "::",
4287            stringify!(is_ref__gc)
4288        )
4289    );
4290}
4291pub type zend_object_iterator = _zend_object_iterator;
4292#[repr(C)]
4293#[derive(Debug, Copy, Clone)]
4294pub struct _zend_object_iterator_funcs {
4295    pub dtor: ::std::option::Option<
4296        unsafe extern "C" fn(
4297            iter: *mut zend_object_iterator,
4298            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
4299        ),
4300    >,
4301    pub valid: ::std::option::Option<
4302        unsafe extern "C" fn(
4303            iter: *mut zend_object_iterator,
4304            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
4305        ) -> ::std::os::raw::c_int,
4306    >,
4307    pub get_current_data: ::std::option::Option<
4308        unsafe extern "C" fn(
4309            iter: *mut zend_object_iterator,
4310            data: *mut *mut *mut zval,
4311            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
4312        ),
4313    >,
4314    pub get_current_key: ::std::option::Option<
4315        unsafe extern "C" fn(
4316            iter: *mut zend_object_iterator,
4317            key: *mut zval,
4318            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
4319        ),
4320    >,
4321    pub move_forward: ::std::option::Option<
4322        unsafe extern "C" fn(
4323            iter: *mut zend_object_iterator,
4324            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
4325        ),
4326    >,
4327    pub rewind: ::std::option::Option<
4328        unsafe extern "C" fn(
4329            iter: *mut zend_object_iterator,
4330            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
4331        ),
4332    >,
4333    pub invalidate_current: ::std::option::Option<
4334        unsafe extern "C" fn(
4335            iter: *mut zend_object_iterator,
4336            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
4337        ),
4338    >,
4339}
4340#[test]
4341fn bindgen_test_layout__zend_object_iterator_funcs() {
4342    assert_eq!(
4343        ::std::mem::size_of::<_zend_object_iterator_funcs>(),
4344        56usize,
4345        concat!("Size of: ", stringify!(_zend_object_iterator_funcs))
4346    );
4347    assert_eq!(
4348        ::std::mem::align_of::<_zend_object_iterator_funcs>(),
4349        8usize,
4350        concat!("Alignment of ", stringify!(_zend_object_iterator_funcs))
4351    );
4352    assert_eq!(
4353        unsafe {
4354            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).dtor as *const _ as usize
4355        },
4356        0usize,
4357        concat!(
4358            "Offset of field: ",
4359            stringify!(_zend_object_iterator_funcs),
4360            "::",
4361            stringify!(dtor)
4362        )
4363    );
4364    assert_eq!(
4365        unsafe {
4366            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).valid as *const _ as usize
4367        },
4368        8usize,
4369        concat!(
4370            "Offset of field: ",
4371            stringify!(_zend_object_iterator_funcs),
4372            "::",
4373            stringify!(valid)
4374        )
4375    );
4376    assert_eq!(
4377        unsafe {
4378            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).get_current_data as *const _
4379                as usize
4380        },
4381        16usize,
4382        concat!(
4383            "Offset of field: ",
4384            stringify!(_zend_object_iterator_funcs),
4385            "::",
4386            stringify!(get_current_data)
4387        )
4388    );
4389    assert_eq!(
4390        unsafe {
4391            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).get_current_key as *const _
4392                as usize
4393        },
4394        24usize,
4395        concat!(
4396            "Offset of field: ",
4397            stringify!(_zend_object_iterator_funcs),
4398            "::",
4399            stringify!(get_current_key)
4400        )
4401    );
4402    assert_eq!(
4403        unsafe {
4404            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).move_forward as *const _
4405                as usize
4406        },
4407        32usize,
4408        concat!(
4409            "Offset of field: ",
4410            stringify!(_zend_object_iterator_funcs),
4411            "::",
4412            stringify!(move_forward)
4413        )
4414    );
4415    assert_eq!(
4416        unsafe {
4417            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).rewind as *const _ as usize
4418        },
4419        40usize,
4420        concat!(
4421            "Offset of field: ",
4422            stringify!(_zend_object_iterator_funcs),
4423            "::",
4424            stringify!(rewind)
4425        )
4426    );
4427    assert_eq!(
4428        unsafe {
4429            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).invalidate_current as *const _
4430                as usize
4431        },
4432        48usize,
4433        concat!(
4434            "Offset of field: ",
4435            stringify!(_zend_object_iterator_funcs),
4436            "::",
4437            stringify!(invalidate_current)
4438        )
4439    );
4440}
4441pub type zend_object_iterator_funcs = _zend_object_iterator_funcs;
4442#[repr(C)]
4443#[derive(Debug, Copy, Clone)]
4444pub struct _zend_object_iterator {
4445    pub data: *mut ::std::os::raw::c_void,
4446    pub funcs: *mut zend_object_iterator_funcs,
4447    pub index: ulong,
4448}
4449#[test]
4450fn bindgen_test_layout__zend_object_iterator() {
4451    assert_eq!(
4452        ::std::mem::size_of::<_zend_object_iterator>(),
4453        24usize,
4454        concat!("Size of: ", stringify!(_zend_object_iterator))
4455    );
4456    assert_eq!(
4457        ::std::mem::align_of::<_zend_object_iterator>(),
4458        8usize,
4459        concat!("Alignment of ", stringify!(_zend_object_iterator))
4460    );
4461    assert_eq!(
4462        unsafe { &(*(::std::ptr::null::<_zend_object_iterator>())).data as *const _ as usize },
4463        0usize,
4464        concat!(
4465            "Offset of field: ",
4466            stringify!(_zend_object_iterator),
4467            "::",
4468            stringify!(data)
4469        )
4470    );
4471    assert_eq!(
4472        unsafe { &(*(::std::ptr::null::<_zend_object_iterator>())).funcs as *const _ as usize },
4473        8usize,
4474        concat!(
4475            "Offset of field: ",
4476            stringify!(_zend_object_iterator),
4477            "::",
4478            stringify!(funcs)
4479        )
4480    );
4481    assert_eq!(
4482        unsafe { &(*(::std::ptr::null::<_zend_object_iterator>())).index as *const _ as usize },
4483        16usize,
4484        concat!(
4485            "Offset of field: ",
4486            stringify!(_zend_object_iterator),
4487            "::",
4488            stringify!(index)
4489        )
4490    );
4491}
4492#[repr(C)]
4493#[derive(Debug, Copy, Clone)]
4494pub struct _zend_class_iterator_funcs {
4495    pub funcs: *mut zend_object_iterator_funcs,
4496    pub zf_new_iterator: *mut _zend_function,
4497    pub zf_valid: *mut _zend_function,
4498    pub zf_current: *mut _zend_function,
4499    pub zf_key: *mut _zend_function,
4500    pub zf_next: *mut _zend_function,
4501    pub zf_rewind: *mut _zend_function,
4502}
4503#[test]
4504fn bindgen_test_layout__zend_class_iterator_funcs() {
4505    assert_eq!(
4506        ::std::mem::size_of::<_zend_class_iterator_funcs>(),
4507        56usize,
4508        concat!("Size of: ", stringify!(_zend_class_iterator_funcs))
4509    );
4510    assert_eq!(
4511        ::std::mem::align_of::<_zend_class_iterator_funcs>(),
4512        8usize,
4513        concat!("Alignment of ", stringify!(_zend_class_iterator_funcs))
4514    );
4515    assert_eq!(
4516        unsafe {
4517            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).funcs as *const _ as usize
4518        },
4519        0usize,
4520        concat!(
4521            "Offset of field: ",
4522            stringify!(_zend_class_iterator_funcs),
4523            "::",
4524            stringify!(funcs)
4525        )
4526    );
4527    assert_eq!(
4528        unsafe {
4529            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_new_iterator as *const _
4530                as usize
4531        },
4532        8usize,
4533        concat!(
4534            "Offset of field: ",
4535            stringify!(_zend_class_iterator_funcs),
4536            "::",
4537            stringify!(zf_new_iterator)
4538        )
4539    );
4540    assert_eq!(
4541        unsafe {
4542            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_valid as *const _ as usize
4543        },
4544        16usize,
4545        concat!(
4546            "Offset of field: ",
4547            stringify!(_zend_class_iterator_funcs),
4548            "::",
4549            stringify!(zf_valid)
4550        )
4551    );
4552    assert_eq!(
4553        unsafe {
4554            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_current as *const _ as usize
4555        },
4556        24usize,
4557        concat!(
4558            "Offset of field: ",
4559            stringify!(_zend_class_iterator_funcs),
4560            "::",
4561            stringify!(zf_current)
4562        )
4563    );
4564    assert_eq!(
4565        unsafe {
4566            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_key as *const _ as usize
4567        },
4568        32usize,
4569        concat!(
4570            "Offset of field: ",
4571            stringify!(_zend_class_iterator_funcs),
4572            "::",
4573            stringify!(zf_key)
4574        )
4575    );
4576    assert_eq!(
4577        unsafe {
4578            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_next as *const _ as usize
4579        },
4580        40usize,
4581        concat!(
4582            "Offset of field: ",
4583            stringify!(_zend_class_iterator_funcs),
4584            "::",
4585            stringify!(zf_next)
4586        )
4587    );
4588    assert_eq!(
4589        unsafe {
4590            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_rewind as *const _ as usize
4591        },
4592        48usize,
4593        concat!(
4594            "Offset of field: ",
4595            stringify!(_zend_class_iterator_funcs),
4596            "::",
4597            stringify!(zf_rewind)
4598        )
4599    );
4600}
4601pub type zend_class_iterator_funcs = _zend_class_iterator_funcs;
4602pub const zend_object_iterator_kind_ZEND_ITER_INVALID: zend_object_iterator_kind = 0;
4603pub const zend_object_iterator_kind_ZEND_ITER_PLAIN_ARRAY: zend_object_iterator_kind = 1;
4604pub const zend_object_iterator_kind_ZEND_ITER_PLAIN_OBJECT: zend_object_iterator_kind = 2;
4605pub const zend_object_iterator_kind_ZEND_ITER_OBJECT: zend_object_iterator_kind = 3;
4606pub type zend_object_iterator_kind = ::std::os::raw::c_uint;
4607extern "C" {
4608    pub fn zend_iterator_unwrap(
4609        array_ptr: *mut zval,
4610        iter: *mut *mut zend_object_iterator,
4611        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
4612    ) -> zend_object_iterator_kind;
4613}
4614extern "C" {
4615    pub fn zend_iterator_wrap(
4616        iter: *mut zend_object_iterator,
4617        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
4618    ) -> *mut zval;
4619}
4620extern "C" {
4621    pub fn zend_register_iterator_wrapper(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
4622}
4623#[repr(C)]
4624#[derive(Debug, Copy, Clone)]
4625pub struct _zend_serialize_data {
4626    _unused: [u8; 0],
4627}
4628#[repr(C)]
4629#[derive(Debug, Copy, Clone)]
4630pub struct _zend_unserialize_data {
4631    _unused: [u8; 0],
4632}
4633pub type zend_serialize_data = _zend_serialize_data;
4634pub type zend_unserialize_data = _zend_unserialize_data;
4635#[repr(C)]
4636#[derive(Debug, Copy, Clone)]
4637pub struct _zend_trait_method_reference {
4638    pub method_name: *const ::std::os::raw::c_char,
4639    pub mname_len: ::std::os::raw::c_uint,
4640    pub ce: *mut zend_class_entry,
4641    pub class_name: *const ::std::os::raw::c_char,
4642    pub cname_len: ::std::os::raw::c_uint,
4643}
4644#[test]
4645fn bindgen_test_layout__zend_trait_method_reference() {
4646    assert_eq!(
4647        ::std::mem::size_of::<_zend_trait_method_reference>(),
4648        40usize,
4649        concat!("Size of: ", stringify!(_zend_trait_method_reference))
4650    );
4651    assert_eq!(
4652        ::std::mem::align_of::<_zend_trait_method_reference>(),
4653        8usize,
4654        concat!("Alignment of ", stringify!(_zend_trait_method_reference))
4655    );
4656    assert_eq!(
4657        unsafe {
4658            &(*(::std::ptr::null::<_zend_trait_method_reference>())).method_name as *const _
4659                as usize
4660        },
4661        0usize,
4662        concat!(
4663            "Offset of field: ",
4664            stringify!(_zend_trait_method_reference),
4665            "::",
4666            stringify!(method_name)
4667        )
4668    );
4669    assert_eq!(
4670        unsafe {
4671            &(*(::std::ptr::null::<_zend_trait_method_reference>())).mname_len as *const _ as usize
4672        },
4673        8usize,
4674        concat!(
4675            "Offset of field: ",
4676            stringify!(_zend_trait_method_reference),
4677            "::",
4678            stringify!(mname_len)
4679        )
4680    );
4681    assert_eq!(
4682        unsafe { &(*(::std::ptr::null::<_zend_trait_method_reference>())).ce as *const _ as usize },
4683        16usize,
4684        concat!(
4685            "Offset of field: ",
4686            stringify!(_zend_trait_method_reference),
4687            "::",
4688            stringify!(ce)
4689        )
4690    );
4691    assert_eq!(
4692        unsafe {
4693            &(*(::std::ptr::null::<_zend_trait_method_reference>())).class_name as *const _ as usize
4694        },
4695        24usize,
4696        concat!(
4697            "Offset of field: ",
4698            stringify!(_zend_trait_method_reference),
4699            "::",
4700            stringify!(class_name)
4701        )
4702    );
4703    assert_eq!(
4704        unsafe {
4705            &(*(::std::ptr::null::<_zend_trait_method_reference>())).cname_len as *const _ as usize
4706        },
4707        32usize,
4708        concat!(
4709            "Offset of field: ",
4710            stringify!(_zend_trait_method_reference),
4711            "::",
4712            stringify!(cname_len)
4713        )
4714    );
4715}
4716pub type zend_trait_method_reference = _zend_trait_method_reference;
4717#[repr(C)]
4718#[derive(Debug, Copy, Clone)]
4719pub struct _zend_trait_precedence {
4720    pub trait_method: *mut zend_trait_method_reference,
4721    pub exclude_from_classes: *mut *mut zend_class_entry,
4722}
4723#[test]
4724fn bindgen_test_layout__zend_trait_precedence() {
4725    assert_eq!(
4726        ::std::mem::size_of::<_zend_trait_precedence>(),
4727        16usize,
4728        concat!("Size of: ", stringify!(_zend_trait_precedence))
4729    );
4730    assert_eq!(
4731        ::std::mem::align_of::<_zend_trait_precedence>(),
4732        8usize,
4733        concat!("Alignment of ", stringify!(_zend_trait_precedence))
4734    );
4735    assert_eq!(
4736        unsafe {
4737            &(*(::std::ptr::null::<_zend_trait_precedence>())).trait_method as *const _ as usize
4738        },
4739        0usize,
4740        concat!(
4741            "Offset of field: ",
4742            stringify!(_zend_trait_precedence),
4743            "::",
4744            stringify!(trait_method)
4745        )
4746    );
4747    assert_eq!(
4748        unsafe {
4749            &(*(::std::ptr::null::<_zend_trait_precedence>())).exclude_from_classes as *const _
4750                as usize
4751        },
4752        8usize,
4753        concat!(
4754            "Offset of field: ",
4755            stringify!(_zend_trait_precedence),
4756            "::",
4757            stringify!(exclude_from_classes)
4758        )
4759    );
4760}
4761pub type zend_trait_precedence = _zend_trait_precedence;
4762#[repr(C)]
4763#[derive(Debug, Copy, Clone)]
4764pub struct _zend_trait_alias {
4765    pub trait_method: *mut zend_trait_method_reference,
4766    #[doc = " name for method to be added"]
4767    pub alias: *const ::std::os::raw::c_char,
4768    pub alias_len: ::std::os::raw::c_uint,
4769    #[doc = " modifiers to be set on trait method"]
4770    pub modifiers: zend_uint,
4771}
4772#[test]
4773fn bindgen_test_layout__zend_trait_alias() {
4774    assert_eq!(
4775        ::std::mem::size_of::<_zend_trait_alias>(),
4776        24usize,
4777        concat!("Size of: ", stringify!(_zend_trait_alias))
4778    );
4779    assert_eq!(
4780        ::std::mem::align_of::<_zend_trait_alias>(),
4781        8usize,
4782        concat!("Alignment of ", stringify!(_zend_trait_alias))
4783    );
4784    assert_eq!(
4785        unsafe { &(*(::std::ptr::null::<_zend_trait_alias>())).trait_method as *const _ as usize },
4786        0usize,
4787        concat!(
4788            "Offset of field: ",
4789            stringify!(_zend_trait_alias),
4790            "::",
4791            stringify!(trait_method)
4792        )
4793    );
4794    assert_eq!(
4795        unsafe { &(*(::std::ptr::null::<_zend_trait_alias>())).alias as *const _ as usize },
4796        8usize,
4797        concat!(
4798            "Offset of field: ",
4799            stringify!(_zend_trait_alias),
4800            "::",
4801            stringify!(alias)
4802        )
4803    );
4804    assert_eq!(
4805        unsafe { &(*(::std::ptr::null::<_zend_trait_alias>())).alias_len as *const _ as usize },
4806        16usize,
4807        concat!(
4808            "Offset of field: ",
4809            stringify!(_zend_trait_alias),
4810            "::",
4811            stringify!(alias_len)
4812        )
4813    );
4814    assert_eq!(
4815        unsafe { &(*(::std::ptr::null::<_zend_trait_alias>())).modifiers as *const _ as usize },
4816        20usize,
4817        concat!(
4818            "Offset of field: ",
4819            stringify!(_zend_trait_alias),
4820            "::",
4821            stringify!(modifiers)
4822        )
4823    );
4824}
4825pub type zend_trait_alias = _zend_trait_alias;
4826#[repr(C)]
4827#[derive(Copy, Clone)]
4828pub struct _zend_class_entry {
4829    pub type_: ::std::os::raw::c_char,
4830    pub name: *const ::std::os::raw::c_char,
4831    pub name_length: zend_uint,
4832    pub parent: *mut _zend_class_entry,
4833    pub refcount: ::std::os::raw::c_int,
4834    pub ce_flags: zend_uint,
4835    pub function_table: HashTable,
4836    pub properties_info: HashTable,
4837    pub default_properties_table: *mut *mut zval,
4838    pub default_static_members_table: *mut *mut zval,
4839    pub static_members_table: *mut *mut zval,
4840    pub constants_table: HashTable,
4841    pub default_properties_count: ::std::os::raw::c_int,
4842    pub default_static_members_count: ::std::os::raw::c_int,
4843    pub constructor: *mut _zend_function,
4844    pub destructor: *mut _zend_function,
4845    pub clone: *mut _zend_function,
4846    pub __get: *mut _zend_function,
4847    pub __set: *mut _zend_function,
4848    pub __unset: *mut _zend_function,
4849    pub __isset: *mut _zend_function,
4850    pub __call: *mut _zend_function,
4851    pub __callstatic: *mut _zend_function,
4852    pub __tostring: *mut _zend_function,
4853    pub __debugInfo: *mut _zend_function,
4854    pub serialize_func: *mut _zend_function,
4855    pub unserialize_func: *mut _zend_function,
4856    pub iterator_funcs: zend_class_iterator_funcs,
4857    pub create_object: ::std::option::Option<
4858        unsafe extern "C" fn(
4859            class_type: *mut zend_class_entry,
4860            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
4861        ) -> zend_object_value,
4862    >,
4863    pub get_iterator: ::std::option::Option<
4864        unsafe extern "C" fn(
4865            ce: *mut zend_class_entry,
4866            object: *mut zval,
4867            by_ref: ::std::os::raw::c_int,
4868            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
4869        ) -> *mut zend_object_iterator,
4870    >,
4871    pub interface_gets_implemented: ::std::option::Option<
4872        unsafe extern "C" fn(
4873            iface: *mut zend_class_entry,
4874            class_type: *mut zend_class_entry,
4875            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
4876        ) -> ::std::os::raw::c_int,
4877    >,
4878    pub get_static_method: ::std::option::Option<
4879        unsafe extern "C" fn(
4880            ce: *mut zend_class_entry,
4881            method: *mut ::std::os::raw::c_char,
4882            method_len: ::std::os::raw::c_int,
4883            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
4884        ) -> *mut _zend_function,
4885    >,
4886    pub serialize: ::std::option::Option<
4887        unsafe extern "C" fn(
4888            object: *mut zval,
4889            buffer: *mut *mut ::std::os::raw::c_uchar,
4890            buf_len: *mut zend_uint,
4891            data: *mut zend_serialize_data,
4892            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
4893        ) -> ::std::os::raw::c_int,
4894    >,
4895    pub unserialize: ::std::option::Option<
4896        unsafe extern "C" fn(
4897            object: *mut *mut zval,
4898            ce: *mut zend_class_entry,
4899            buf: *const ::std::os::raw::c_uchar,
4900            buf_len: zend_uint,
4901            data: *mut zend_unserialize_data,
4902            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
4903        ) -> ::std::os::raw::c_int,
4904    >,
4905    pub interfaces: *mut *mut zend_class_entry,
4906    pub num_interfaces: zend_uint,
4907    pub traits: *mut *mut zend_class_entry,
4908    pub num_traits: zend_uint,
4909    pub trait_aliases: *mut *mut zend_trait_alias,
4910    pub trait_precedences: *mut *mut zend_trait_precedence,
4911    pub info: _zend_class_entry__bindgen_ty_1,
4912}
4913#[repr(C)]
4914#[derive(Copy, Clone)]
4915pub union _zend_class_entry__bindgen_ty_1 {
4916    pub user: _zend_class_entry__bindgen_ty_1__bindgen_ty_1,
4917    pub internal: _zend_class_entry__bindgen_ty_1__bindgen_ty_2,
4918    _bindgen_union_align: [u64; 4usize],
4919}
4920#[repr(C)]
4921#[derive(Debug, Copy, Clone)]
4922pub struct _zend_class_entry__bindgen_ty_1__bindgen_ty_1 {
4923    pub filename: *const ::std::os::raw::c_char,
4924    pub line_start: zend_uint,
4925    pub line_end: zend_uint,
4926    pub doc_comment: *const ::std::os::raw::c_char,
4927    pub doc_comment_len: zend_uint,
4928}
4929#[test]
4930fn bindgen_test_layout__zend_class_entry__bindgen_ty_1__bindgen_ty_1() {
4931    assert_eq!(
4932        ::std::mem::size_of::<_zend_class_entry__bindgen_ty_1__bindgen_ty_1>(),
4933        32usize,
4934        concat!(
4935            "Size of: ",
4936            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_1)
4937        )
4938    );
4939    assert_eq!(
4940        ::std::mem::align_of::<_zend_class_entry__bindgen_ty_1__bindgen_ty_1>(),
4941        8usize,
4942        concat!(
4943            "Alignment of ",
4944            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_1)
4945        )
4946    );
4947    assert_eq!(
4948        unsafe {
4949            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1__bindgen_ty_1>())).filename
4950                as *const _ as usize
4951        },
4952        0usize,
4953        concat!(
4954            "Offset of field: ",
4955            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_1),
4956            "::",
4957            stringify!(filename)
4958        )
4959    );
4960    assert_eq!(
4961        unsafe {
4962            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1__bindgen_ty_1>())).line_start
4963                as *const _ as usize
4964        },
4965        8usize,
4966        concat!(
4967            "Offset of field: ",
4968            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_1),
4969            "::",
4970            stringify!(line_start)
4971        )
4972    );
4973    assert_eq!(
4974        unsafe {
4975            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1__bindgen_ty_1>())).line_end
4976                as *const _ as usize
4977        },
4978        12usize,
4979        concat!(
4980            "Offset of field: ",
4981            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_1),
4982            "::",
4983            stringify!(line_end)
4984        )
4985    );
4986    assert_eq!(
4987        unsafe {
4988            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1__bindgen_ty_1>())).doc_comment
4989                as *const _ as usize
4990        },
4991        16usize,
4992        concat!(
4993            "Offset of field: ",
4994            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_1),
4995            "::",
4996            stringify!(doc_comment)
4997        )
4998    );
4999    assert_eq!(
5000        unsafe {
5001            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1__bindgen_ty_1>()))
5002                .doc_comment_len as *const _ as usize
5003        },
5004        24usize,
5005        concat!(
5006            "Offset of field: ",
5007            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_1),
5008            "::",
5009            stringify!(doc_comment_len)
5010        )
5011    );
5012}
5013#[repr(C)]
5014#[derive(Debug, Copy, Clone)]
5015pub struct _zend_class_entry__bindgen_ty_1__bindgen_ty_2 {
5016    pub builtin_functions: *const _zend_function_entry,
5017    pub module: *mut _zend_module_entry,
5018}
5019#[test]
5020fn bindgen_test_layout__zend_class_entry__bindgen_ty_1__bindgen_ty_2() {
5021    assert_eq!(
5022        ::std::mem::size_of::<_zend_class_entry__bindgen_ty_1__bindgen_ty_2>(),
5023        16usize,
5024        concat!(
5025            "Size of: ",
5026            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_2)
5027        )
5028    );
5029    assert_eq!(
5030        ::std::mem::align_of::<_zend_class_entry__bindgen_ty_1__bindgen_ty_2>(),
5031        8usize,
5032        concat!(
5033            "Alignment of ",
5034            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_2)
5035        )
5036    );
5037    assert_eq!(
5038        unsafe {
5039            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1__bindgen_ty_2>()))
5040                .builtin_functions as *const _ as usize
5041        },
5042        0usize,
5043        concat!(
5044            "Offset of field: ",
5045            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_2),
5046            "::",
5047            stringify!(builtin_functions)
5048        )
5049    );
5050    assert_eq!(
5051        unsafe {
5052            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1__bindgen_ty_2>())).module
5053                as *const _ as usize
5054        },
5055        8usize,
5056        concat!(
5057            "Offset of field: ",
5058            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_2),
5059            "::",
5060            stringify!(module)
5061        )
5062    );
5063}
5064#[test]
5065fn bindgen_test_layout__zend_class_entry__bindgen_ty_1() {
5066    assert_eq!(
5067        ::std::mem::size_of::<_zend_class_entry__bindgen_ty_1>(),
5068        32usize,
5069        concat!("Size of: ", stringify!(_zend_class_entry__bindgen_ty_1))
5070    );
5071    assert_eq!(
5072        ::std::mem::align_of::<_zend_class_entry__bindgen_ty_1>(),
5073        8usize,
5074        concat!("Alignment of ", stringify!(_zend_class_entry__bindgen_ty_1))
5075    );
5076    assert_eq!(
5077        unsafe {
5078            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1>())).user as *const _ as usize
5079        },
5080        0usize,
5081        concat!(
5082            "Offset of field: ",
5083            stringify!(_zend_class_entry__bindgen_ty_1),
5084            "::",
5085            stringify!(user)
5086        )
5087    );
5088    assert_eq!(
5089        unsafe {
5090            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1>())).internal as *const _
5091                as usize
5092        },
5093        0usize,
5094        concat!(
5095            "Offset of field: ",
5096            stringify!(_zend_class_entry__bindgen_ty_1),
5097            "::",
5098            stringify!(internal)
5099        )
5100    );
5101}
5102#[test]
5103fn bindgen_test_layout__zend_class_entry() {
5104    assert_eq!(
5105        ::std::mem::size_of::<_zend_class_entry>(),
5106        576usize,
5107        concat!("Size of: ", stringify!(_zend_class_entry))
5108    );
5109    assert_eq!(
5110        ::std::mem::align_of::<_zend_class_entry>(),
5111        8usize,
5112        concat!("Alignment of ", stringify!(_zend_class_entry))
5113    );
5114    assert_eq!(
5115        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).type_ as *const _ as usize },
5116        0usize,
5117        concat!(
5118            "Offset of field: ",
5119            stringify!(_zend_class_entry),
5120            "::",
5121            stringify!(type_)
5122        )
5123    );
5124    assert_eq!(
5125        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).name as *const _ as usize },
5126        8usize,
5127        concat!(
5128            "Offset of field: ",
5129            stringify!(_zend_class_entry),
5130            "::",
5131            stringify!(name)
5132        )
5133    );
5134    assert_eq!(
5135        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).name_length as *const _ as usize },
5136        16usize,
5137        concat!(
5138            "Offset of field: ",
5139            stringify!(_zend_class_entry),
5140            "::",
5141            stringify!(name_length)
5142        )
5143    );
5144    assert_eq!(
5145        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).parent as *const _ as usize },
5146        24usize,
5147        concat!(
5148            "Offset of field: ",
5149            stringify!(_zend_class_entry),
5150            "::",
5151            stringify!(parent)
5152        )
5153    );
5154    assert_eq!(
5155        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).refcount as *const _ as usize },
5156        32usize,
5157        concat!(
5158            "Offset of field: ",
5159            stringify!(_zend_class_entry),
5160            "::",
5161            stringify!(refcount)
5162        )
5163    );
5164    assert_eq!(
5165        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).ce_flags as *const _ as usize },
5166        36usize,
5167        concat!(
5168            "Offset of field: ",
5169            stringify!(_zend_class_entry),
5170            "::",
5171            stringify!(ce_flags)
5172        )
5173    );
5174    assert_eq!(
5175        unsafe {
5176            &(*(::std::ptr::null::<_zend_class_entry>())).function_table as *const _ as usize
5177        },
5178        40usize,
5179        concat!(
5180            "Offset of field: ",
5181            stringify!(_zend_class_entry),
5182            "::",
5183            stringify!(function_table)
5184        )
5185    );
5186    assert_eq!(
5187        unsafe {
5188            &(*(::std::ptr::null::<_zend_class_entry>())).properties_info as *const _ as usize
5189        },
5190        112usize,
5191        concat!(
5192            "Offset of field: ",
5193            stringify!(_zend_class_entry),
5194            "::",
5195            stringify!(properties_info)
5196        )
5197    );
5198    assert_eq!(
5199        unsafe {
5200            &(*(::std::ptr::null::<_zend_class_entry>())).default_properties_table as *const _
5201                as usize
5202        },
5203        184usize,
5204        concat!(
5205            "Offset of field: ",
5206            stringify!(_zend_class_entry),
5207            "::",
5208            stringify!(default_properties_table)
5209        )
5210    );
5211    assert_eq!(
5212        unsafe {
5213            &(*(::std::ptr::null::<_zend_class_entry>())).default_static_members_table as *const _
5214                as usize
5215        },
5216        192usize,
5217        concat!(
5218            "Offset of field: ",
5219            stringify!(_zend_class_entry),
5220            "::",
5221            stringify!(default_static_members_table)
5222        )
5223    );
5224    assert_eq!(
5225        unsafe {
5226            &(*(::std::ptr::null::<_zend_class_entry>())).static_members_table as *const _ as usize
5227        },
5228        200usize,
5229        concat!(
5230            "Offset of field: ",
5231            stringify!(_zend_class_entry),
5232            "::",
5233            stringify!(static_members_table)
5234        )
5235    );
5236    assert_eq!(
5237        unsafe {
5238            &(*(::std::ptr::null::<_zend_class_entry>())).constants_table as *const _ as usize
5239        },
5240        208usize,
5241        concat!(
5242            "Offset of field: ",
5243            stringify!(_zend_class_entry),
5244            "::",
5245            stringify!(constants_table)
5246        )
5247    );
5248    assert_eq!(
5249        unsafe {
5250            &(*(::std::ptr::null::<_zend_class_entry>())).default_properties_count as *const _
5251                as usize
5252        },
5253        280usize,
5254        concat!(
5255            "Offset of field: ",
5256            stringify!(_zend_class_entry),
5257            "::",
5258            stringify!(default_properties_count)
5259        )
5260    );
5261    assert_eq!(
5262        unsafe {
5263            &(*(::std::ptr::null::<_zend_class_entry>())).default_static_members_count as *const _
5264                as usize
5265        },
5266        284usize,
5267        concat!(
5268            "Offset of field: ",
5269            stringify!(_zend_class_entry),
5270            "::",
5271            stringify!(default_static_members_count)
5272        )
5273    );
5274    assert_eq!(
5275        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).constructor as *const _ as usize },
5276        288usize,
5277        concat!(
5278            "Offset of field: ",
5279            stringify!(_zend_class_entry),
5280            "::",
5281            stringify!(constructor)
5282        )
5283    );
5284    assert_eq!(
5285        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).destructor as *const _ as usize },
5286        296usize,
5287        concat!(
5288            "Offset of field: ",
5289            stringify!(_zend_class_entry),
5290            "::",
5291            stringify!(destructor)
5292        )
5293    );
5294    assert_eq!(
5295        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).clone as *const _ as usize },
5296        304usize,
5297        concat!(
5298            "Offset of field: ",
5299            stringify!(_zend_class_entry),
5300            "::",
5301            stringify!(clone)
5302        )
5303    );
5304    assert_eq!(
5305        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__get as *const _ as usize },
5306        312usize,
5307        concat!(
5308            "Offset of field: ",
5309            stringify!(_zend_class_entry),
5310            "::",
5311            stringify!(__get)
5312        )
5313    );
5314    assert_eq!(
5315        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__set as *const _ as usize },
5316        320usize,
5317        concat!(
5318            "Offset of field: ",
5319            stringify!(_zend_class_entry),
5320            "::",
5321            stringify!(__set)
5322        )
5323    );
5324    assert_eq!(
5325        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__unset as *const _ as usize },
5326        328usize,
5327        concat!(
5328            "Offset of field: ",
5329            stringify!(_zend_class_entry),
5330            "::",
5331            stringify!(__unset)
5332        )
5333    );
5334    assert_eq!(
5335        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__isset as *const _ as usize },
5336        336usize,
5337        concat!(
5338            "Offset of field: ",
5339            stringify!(_zend_class_entry),
5340            "::",
5341            stringify!(__isset)
5342        )
5343    );
5344    assert_eq!(
5345        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__call as *const _ as usize },
5346        344usize,
5347        concat!(
5348            "Offset of field: ",
5349            stringify!(_zend_class_entry),
5350            "::",
5351            stringify!(__call)
5352        )
5353    );
5354    assert_eq!(
5355        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__callstatic as *const _ as usize },
5356        352usize,
5357        concat!(
5358            "Offset of field: ",
5359            stringify!(_zend_class_entry),
5360            "::",
5361            stringify!(__callstatic)
5362        )
5363    );
5364    assert_eq!(
5365        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__tostring as *const _ as usize },
5366        360usize,
5367        concat!(
5368            "Offset of field: ",
5369            stringify!(_zend_class_entry),
5370            "::",
5371            stringify!(__tostring)
5372        )
5373    );
5374    assert_eq!(
5375        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__debugInfo as *const _ as usize },
5376        368usize,
5377        concat!(
5378            "Offset of field: ",
5379            stringify!(_zend_class_entry),
5380            "::",
5381            stringify!(__debugInfo)
5382        )
5383    );
5384    assert_eq!(
5385        unsafe {
5386            &(*(::std::ptr::null::<_zend_class_entry>())).serialize_func as *const _ as usize
5387        },
5388        376usize,
5389        concat!(
5390            "Offset of field: ",
5391            stringify!(_zend_class_entry),
5392            "::",
5393            stringify!(serialize_func)
5394        )
5395    );
5396    assert_eq!(
5397        unsafe {
5398            &(*(::std::ptr::null::<_zend_class_entry>())).unserialize_func as *const _ as usize
5399        },
5400        384usize,
5401        concat!(
5402            "Offset of field: ",
5403            stringify!(_zend_class_entry),
5404            "::",
5405            stringify!(unserialize_func)
5406        )
5407    );
5408    assert_eq!(
5409        unsafe {
5410            &(*(::std::ptr::null::<_zend_class_entry>())).iterator_funcs as *const _ as usize
5411        },
5412        392usize,
5413        concat!(
5414            "Offset of field: ",
5415            stringify!(_zend_class_entry),
5416            "::",
5417            stringify!(iterator_funcs)
5418        )
5419    );
5420    assert_eq!(
5421        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).create_object as *const _ as usize },
5422        448usize,
5423        concat!(
5424            "Offset of field: ",
5425            stringify!(_zend_class_entry),
5426            "::",
5427            stringify!(create_object)
5428        )
5429    );
5430    assert_eq!(
5431        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).get_iterator as *const _ as usize },
5432        456usize,
5433        concat!(
5434            "Offset of field: ",
5435            stringify!(_zend_class_entry),
5436            "::",
5437            stringify!(get_iterator)
5438        )
5439    );
5440    assert_eq!(
5441        unsafe {
5442            &(*(::std::ptr::null::<_zend_class_entry>())).interface_gets_implemented as *const _
5443                as usize
5444        },
5445        464usize,
5446        concat!(
5447            "Offset of field: ",
5448            stringify!(_zend_class_entry),
5449            "::",
5450            stringify!(interface_gets_implemented)
5451        )
5452    );
5453    assert_eq!(
5454        unsafe {
5455            &(*(::std::ptr::null::<_zend_class_entry>())).get_static_method as *const _ as usize
5456        },
5457        472usize,
5458        concat!(
5459            "Offset of field: ",
5460            stringify!(_zend_class_entry),
5461            "::",
5462            stringify!(get_static_method)
5463        )
5464    );
5465    assert_eq!(
5466        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).serialize as *const _ as usize },
5467        480usize,
5468        concat!(
5469            "Offset of field: ",
5470            stringify!(_zend_class_entry),
5471            "::",
5472            stringify!(serialize)
5473        )
5474    );
5475    assert_eq!(
5476        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).unserialize as *const _ as usize },
5477        488usize,
5478        concat!(
5479            "Offset of field: ",
5480            stringify!(_zend_class_entry),
5481            "::",
5482            stringify!(unserialize)
5483        )
5484    );
5485    assert_eq!(
5486        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).interfaces as *const _ as usize },
5487        496usize,
5488        concat!(
5489            "Offset of field: ",
5490            stringify!(_zend_class_entry),
5491            "::",
5492            stringify!(interfaces)
5493        )
5494    );
5495    assert_eq!(
5496        unsafe {
5497            &(*(::std::ptr::null::<_zend_class_entry>())).num_interfaces as *const _ as usize
5498        },
5499        504usize,
5500        concat!(
5501            "Offset of field: ",
5502            stringify!(_zend_class_entry),
5503            "::",
5504            stringify!(num_interfaces)
5505        )
5506    );
5507    assert_eq!(
5508        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).traits as *const _ as usize },
5509        512usize,
5510        concat!(
5511            "Offset of field: ",
5512            stringify!(_zend_class_entry),
5513            "::",
5514            stringify!(traits)
5515        )
5516    );
5517    assert_eq!(
5518        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).num_traits as *const _ as usize },
5519        520usize,
5520        concat!(
5521            "Offset of field: ",
5522            stringify!(_zend_class_entry),
5523            "::",
5524            stringify!(num_traits)
5525        )
5526    );
5527    assert_eq!(
5528        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).trait_aliases as *const _ as usize },
5529        528usize,
5530        concat!(
5531            "Offset of field: ",
5532            stringify!(_zend_class_entry),
5533            "::",
5534            stringify!(trait_aliases)
5535        )
5536    );
5537    assert_eq!(
5538        unsafe {
5539            &(*(::std::ptr::null::<_zend_class_entry>())).trait_precedences as *const _ as usize
5540        },
5541        536usize,
5542        concat!(
5543            "Offset of field: ",
5544            stringify!(_zend_class_entry),
5545            "::",
5546            stringify!(trait_precedences)
5547        )
5548    );
5549    assert_eq!(
5550        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).info as *const _ as usize },
5551        544usize,
5552        concat!(
5553            "Offset of field: ",
5554            stringify!(_zend_class_entry),
5555            "::",
5556            stringify!(info)
5557        )
5558    );
5559}
5560pub type zend_stream_fsizer_t = ::std::option::Option<
5561    unsafe extern "C" fn(
5562        handle: *mut ::std::os::raw::c_void,
5563        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
5564    ) -> size_t,
5565>;
5566pub type zend_stream_reader_t = ::std::option::Option<
5567    unsafe extern "C" fn(
5568        handle: *mut ::std::os::raw::c_void,
5569        buf: *mut ::std::os::raw::c_char,
5570        len: size_t,
5571        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
5572    ) -> size_t,
5573>;
5574pub type zend_stream_closer_t = ::std::option::Option<
5575    unsafe extern "C" fn(
5576        handle: *mut ::std::os::raw::c_void,
5577        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
5578    ),
5579>;
5580pub const zend_stream_type_ZEND_HANDLE_FILENAME: zend_stream_type = 0;
5581pub const zend_stream_type_ZEND_HANDLE_FD: zend_stream_type = 1;
5582pub const zend_stream_type_ZEND_HANDLE_FP: zend_stream_type = 2;
5583pub const zend_stream_type_ZEND_HANDLE_STREAM: zend_stream_type = 3;
5584pub const zend_stream_type_ZEND_HANDLE_MAPPED: zend_stream_type = 4;
5585pub type zend_stream_type = ::std::os::raw::c_uint;
5586#[repr(C)]
5587#[derive(Debug, Copy, Clone)]
5588pub struct _zend_mmap {
5589    pub len: size_t,
5590    pub pos: size_t,
5591    pub map: *mut ::std::os::raw::c_void,
5592    pub buf: *mut ::std::os::raw::c_char,
5593    pub old_handle: *mut ::std::os::raw::c_void,
5594    pub old_closer: zend_stream_closer_t,
5595}
5596#[test]
5597fn bindgen_test_layout__zend_mmap() {
5598    assert_eq!(
5599        ::std::mem::size_of::<_zend_mmap>(),
5600        48usize,
5601        concat!("Size of: ", stringify!(_zend_mmap))
5602    );
5603    assert_eq!(
5604        ::std::mem::align_of::<_zend_mmap>(),
5605        8usize,
5606        concat!("Alignment of ", stringify!(_zend_mmap))
5607    );
5608    assert_eq!(
5609        unsafe { &(*(::std::ptr::null::<_zend_mmap>())).len as *const _ as usize },
5610        0usize,
5611        concat!(
5612            "Offset of field: ",
5613            stringify!(_zend_mmap),
5614            "::",
5615            stringify!(len)
5616        )
5617    );
5618    assert_eq!(
5619        unsafe { &(*(::std::ptr::null::<_zend_mmap>())).pos as *const _ as usize },
5620        8usize,
5621        concat!(
5622            "Offset of field: ",
5623            stringify!(_zend_mmap),
5624            "::",
5625            stringify!(pos)
5626        )
5627    );
5628    assert_eq!(
5629        unsafe { &(*(::std::ptr::null::<_zend_mmap>())).map as *const _ as usize },
5630        16usize,
5631        concat!(
5632            "Offset of field: ",
5633            stringify!(_zend_mmap),
5634            "::",
5635            stringify!(map)
5636        )
5637    );
5638    assert_eq!(
5639        unsafe { &(*(::std::ptr::null::<_zend_mmap>())).buf as *const _ as usize },
5640        24usize,
5641        concat!(
5642            "Offset of field: ",
5643            stringify!(_zend_mmap),
5644            "::",
5645            stringify!(buf)
5646        )
5647    );
5648    assert_eq!(
5649        unsafe { &(*(::std::ptr::null::<_zend_mmap>())).old_handle as *const _ as usize },
5650        32usize,
5651        concat!(
5652            "Offset of field: ",
5653            stringify!(_zend_mmap),
5654            "::",
5655            stringify!(old_handle)
5656        )
5657    );
5658    assert_eq!(
5659        unsafe { &(*(::std::ptr::null::<_zend_mmap>())).old_closer as *const _ as usize },
5660        40usize,
5661        concat!(
5662            "Offset of field: ",
5663            stringify!(_zend_mmap),
5664            "::",
5665            stringify!(old_closer)
5666        )
5667    );
5668}
5669pub type zend_mmap = _zend_mmap;
5670#[repr(C)]
5671#[derive(Debug, Copy, Clone)]
5672pub struct _zend_stream {
5673    pub handle: *mut ::std::os::raw::c_void,
5674    pub isatty: ::std::os::raw::c_int,
5675    pub mmap: zend_mmap,
5676    pub reader: zend_stream_reader_t,
5677    pub fsizer: zend_stream_fsizer_t,
5678    pub closer: zend_stream_closer_t,
5679}
5680#[test]
5681fn bindgen_test_layout__zend_stream() {
5682    assert_eq!(
5683        ::std::mem::size_of::<_zend_stream>(),
5684        88usize,
5685        concat!("Size of: ", stringify!(_zend_stream))
5686    );
5687    assert_eq!(
5688        ::std::mem::align_of::<_zend_stream>(),
5689        8usize,
5690        concat!("Alignment of ", stringify!(_zend_stream))
5691    );
5692    assert_eq!(
5693        unsafe { &(*(::std::ptr::null::<_zend_stream>())).handle as *const _ as usize },
5694        0usize,
5695        concat!(
5696            "Offset of field: ",
5697            stringify!(_zend_stream),
5698            "::",
5699            stringify!(handle)
5700        )
5701    );
5702    assert_eq!(
5703        unsafe { &(*(::std::ptr::null::<_zend_stream>())).isatty as *const _ as usize },
5704        8usize,
5705        concat!(
5706            "Offset of field: ",
5707            stringify!(_zend_stream),
5708            "::",
5709            stringify!(isatty)
5710        )
5711    );
5712    assert_eq!(
5713        unsafe { &(*(::std::ptr::null::<_zend_stream>())).mmap as *const _ as usize },
5714        16usize,
5715        concat!(
5716            "Offset of field: ",
5717            stringify!(_zend_stream),
5718            "::",
5719            stringify!(mmap)
5720        )
5721    );
5722    assert_eq!(
5723        unsafe { &(*(::std::ptr::null::<_zend_stream>())).reader as *const _ as usize },
5724        64usize,
5725        concat!(
5726            "Offset of field: ",
5727            stringify!(_zend_stream),
5728            "::",
5729            stringify!(reader)
5730        )
5731    );
5732    assert_eq!(
5733        unsafe { &(*(::std::ptr::null::<_zend_stream>())).fsizer as *const _ as usize },
5734        72usize,
5735        concat!(
5736            "Offset of field: ",
5737            stringify!(_zend_stream),
5738            "::",
5739            stringify!(fsizer)
5740        )
5741    );
5742    assert_eq!(
5743        unsafe { &(*(::std::ptr::null::<_zend_stream>())).closer as *const _ as usize },
5744        80usize,
5745        concat!(
5746            "Offset of field: ",
5747            stringify!(_zend_stream),
5748            "::",
5749            stringify!(closer)
5750        )
5751    );
5752}
5753pub type zend_stream = _zend_stream;
5754#[repr(C)]
5755#[derive(Copy, Clone)]
5756pub struct _zend_file_handle {
5757    pub type_: zend_stream_type,
5758    pub filename: *const ::std::os::raw::c_char,
5759    pub opened_path: *mut ::std::os::raw::c_char,
5760    pub handle: _zend_file_handle__bindgen_ty_1,
5761    pub free_filename: zend_bool,
5762}
5763#[repr(C)]
5764#[derive(Copy, Clone)]
5765pub union _zend_file_handle__bindgen_ty_1 {
5766    pub fd: ::std::os::raw::c_int,
5767    pub fp: *mut FILE,
5768    pub stream: zend_stream,
5769    _bindgen_union_align: [u64; 11usize],
5770}
5771#[test]
5772fn bindgen_test_layout__zend_file_handle__bindgen_ty_1() {
5773    assert_eq!(
5774        ::std::mem::size_of::<_zend_file_handle__bindgen_ty_1>(),
5775        88usize,
5776        concat!("Size of: ", stringify!(_zend_file_handle__bindgen_ty_1))
5777    );
5778    assert_eq!(
5779        ::std::mem::align_of::<_zend_file_handle__bindgen_ty_1>(),
5780        8usize,
5781        concat!("Alignment of ", stringify!(_zend_file_handle__bindgen_ty_1))
5782    );
5783    assert_eq!(
5784        unsafe {
5785            &(*(::std::ptr::null::<_zend_file_handle__bindgen_ty_1>())).fd as *const _ as usize
5786        },
5787        0usize,
5788        concat!(
5789            "Offset of field: ",
5790            stringify!(_zend_file_handle__bindgen_ty_1),
5791            "::",
5792            stringify!(fd)
5793        )
5794    );
5795    assert_eq!(
5796        unsafe {
5797            &(*(::std::ptr::null::<_zend_file_handle__bindgen_ty_1>())).fp as *const _ as usize
5798        },
5799        0usize,
5800        concat!(
5801            "Offset of field: ",
5802            stringify!(_zend_file_handle__bindgen_ty_1),
5803            "::",
5804            stringify!(fp)
5805        )
5806    );
5807    assert_eq!(
5808        unsafe {
5809            &(*(::std::ptr::null::<_zend_file_handle__bindgen_ty_1>())).stream as *const _ as usize
5810        },
5811        0usize,
5812        concat!(
5813            "Offset of field: ",
5814            stringify!(_zend_file_handle__bindgen_ty_1),
5815            "::",
5816            stringify!(stream)
5817        )
5818    );
5819}
5820#[test]
5821fn bindgen_test_layout__zend_file_handle() {
5822    assert_eq!(
5823        ::std::mem::size_of::<_zend_file_handle>(),
5824        120usize,
5825        concat!("Size of: ", stringify!(_zend_file_handle))
5826    );
5827    assert_eq!(
5828        ::std::mem::align_of::<_zend_file_handle>(),
5829        8usize,
5830        concat!("Alignment of ", stringify!(_zend_file_handle))
5831    );
5832    assert_eq!(
5833        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).type_ as *const _ as usize },
5834        0usize,
5835        concat!(
5836            "Offset of field: ",
5837            stringify!(_zend_file_handle),
5838            "::",
5839            stringify!(type_)
5840        )
5841    );
5842    assert_eq!(
5843        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).filename as *const _ as usize },
5844        8usize,
5845        concat!(
5846            "Offset of field: ",
5847            stringify!(_zend_file_handle),
5848            "::",
5849            stringify!(filename)
5850        )
5851    );
5852    assert_eq!(
5853        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).opened_path as *const _ as usize },
5854        16usize,
5855        concat!(
5856            "Offset of field: ",
5857            stringify!(_zend_file_handle),
5858            "::",
5859            stringify!(opened_path)
5860        )
5861    );
5862    assert_eq!(
5863        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).handle as *const _ as usize },
5864        24usize,
5865        concat!(
5866            "Offset of field: ",
5867            stringify!(_zend_file_handle),
5868            "::",
5869            stringify!(handle)
5870        )
5871    );
5872    assert_eq!(
5873        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).free_filename as *const _ as usize },
5874        112usize,
5875        concat!(
5876            "Offset of field: ",
5877            stringify!(_zend_file_handle),
5878            "::",
5879            stringify!(free_filename)
5880        )
5881    );
5882}
5883pub type zend_file_handle = _zend_file_handle;
5884extern "C" {
5885    pub fn zend_stream_open(
5886        filename: *const ::std::os::raw::c_char,
5887        handle: *mut zend_file_handle,
5888        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
5889    ) -> ::std::os::raw::c_int;
5890}
5891extern "C" {
5892    pub fn zend_stream_fixup(
5893        file_handle: *mut zend_file_handle,
5894        buf: *mut *mut ::std::os::raw::c_char,
5895        len: *mut size_t,
5896        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
5897    ) -> ::std::os::raw::c_int;
5898}
5899extern "C" {
5900    pub fn zend_file_handle_dtor(
5901        fh: *mut zend_file_handle,
5902        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
5903    );
5904}
5905extern "C" {
5906    pub fn zend_compare_file_handles(
5907        fh1: *mut zend_file_handle,
5908        fh2: *mut zend_file_handle,
5909    ) -> ::std::os::raw::c_int;
5910}
5911#[repr(C)]
5912#[derive(Debug, Copy, Clone)]
5913pub struct _zend_utility_functions {
5914    pub error_function: ::std::option::Option<
5915        unsafe extern "C" fn(
5916            type_: ::std::os::raw::c_int,
5917            error_filename: *const ::std::os::raw::c_char,
5918            error_lineno: uint,
5919            format: *const ::std::os::raw::c_char,
5920            args: *mut __va_list_tag,
5921        ),
5922    >,
5923    pub printf_function: ::std::option::Option<
5924        unsafe extern "C" fn(format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int,
5925    >,
5926    pub write_function: ::std::option::Option<
5927        unsafe extern "C" fn(
5928            str_: *const ::std::os::raw::c_char,
5929            str_length: uint,
5930        ) -> ::std::os::raw::c_int,
5931    >,
5932    pub fopen_function: ::std::option::Option<
5933        unsafe extern "C" fn(
5934            filename: *const ::std::os::raw::c_char,
5935            opened_path: *mut *mut ::std::os::raw::c_char,
5936            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
5937        ) -> *mut FILE,
5938    >,
5939    pub message_handler: ::std::option::Option<
5940        unsafe extern "C" fn(
5941            message: ::std::os::raw::c_long,
5942            data: *const ::std::os::raw::c_void,
5943            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
5944        ),
5945    >,
5946    pub block_interruptions: ::std::option::Option<unsafe extern "C" fn()>,
5947    pub unblock_interruptions: ::std::option::Option<unsafe extern "C" fn()>,
5948    pub get_configuration_directive: ::std::option::Option<
5949        unsafe extern "C" fn(
5950            name: *const ::std::os::raw::c_char,
5951            name_length: uint,
5952            contents: *mut zval,
5953        ) -> ::std::os::raw::c_int,
5954    >,
5955    pub ticks_function: ::std::option::Option<unsafe extern "C" fn(ticks: ::std::os::raw::c_int)>,
5956    pub on_timeout: ::std::option::Option<
5957        unsafe extern "C" fn(
5958            seconds: ::std::os::raw::c_int,
5959            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
5960        ),
5961    >,
5962    pub stream_open_function: ::std::option::Option<
5963        unsafe extern "C" fn(
5964            filename: *const ::std::os::raw::c_char,
5965            handle: *mut zend_file_handle,
5966            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
5967        ) -> ::std::os::raw::c_int,
5968    >,
5969    pub vspprintf_function: ::std::option::Option<
5970        unsafe extern "C" fn(
5971            pbuf: *mut *mut ::std::os::raw::c_char,
5972            max_len: size_t,
5973            format: *const ::std::os::raw::c_char,
5974            ap: *mut __va_list_tag,
5975        ) -> ::std::os::raw::c_int,
5976    >,
5977    pub getenv_function: ::std::option::Option<
5978        unsafe extern "C" fn(
5979            name: *mut ::std::os::raw::c_char,
5980            name_len: size_t,
5981            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
5982        ) -> *mut ::std::os::raw::c_char,
5983    >,
5984    pub resolve_path_function: ::std::option::Option<
5985        unsafe extern "C" fn(
5986            filename: *const ::std::os::raw::c_char,
5987            filename_len: ::std::os::raw::c_int,
5988            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
5989        ) -> *mut ::std::os::raw::c_char,
5990    >,
5991}
5992#[test]
5993fn bindgen_test_layout__zend_utility_functions() {
5994    assert_eq!(
5995        ::std::mem::size_of::<_zend_utility_functions>(),
5996        112usize,
5997        concat!("Size of: ", stringify!(_zend_utility_functions))
5998    );
5999    assert_eq!(
6000        ::std::mem::align_of::<_zend_utility_functions>(),
6001        8usize,
6002        concat!("Alignment of ", stringify!(_zend_utility_functions))
6003    );
6004    assert_eq!(
6005        unsafe {
6006            &(*(::std::ptr::null::<_zend_utility_functions>())).error_function as *const _ as usize
6007        },
6008        0usize,
6009        concat!(
6010            "Offset of field: ",
6011            stringify!(_zend_utility_functions),
6012            "::",
6013            stringify!(error_function)
6014        )
6015    );
6016    assert_eq!(
6017        unsafe {
6018            &(*(::std::ptr::null::<_zend_utility_functions>())).printf_function as *const _ as usize
6019        },
6020        8usize,
6021        concat!(
6022            "Offset of field: ",
6023            stringify!(_zend_utility_functions),
6024            "::",
6025            stringify!(printf_function)
6026        )
6027    );
6028    assert_eq!(
6029        unsafe {
6030            &(*(::std::ptr::null::<_zend_utility_functions>())).write_function as *const _ as usize
6031        },
6032        16usize,
6033        concat!(
6034            "Offset of field: ",
6035            stringify!(_zend_utility_functions),
6036            "::",
6037            stringify!(write_function)
6038        )
6039    );
6040    assert_eq!(
6041        unsafe {
6042            &(*(::std::ptr::null::<_zend_utility_functions>())).fopen_function as *const _ as usize
6043        },
6044        24usize,
6045        concat!(
6046            "Offset of field: ",
6047            stringify!(_zend_utility_functions),
6048            "::",
6049            stringify!(fopen_function)
6050        )
6051    );
6052    assert_eq!(
6053        unsafe {
6054            &(*(::std::ptr::null::<_zend_utility_functions>())).message_handler as *const _ as usize
6055        },
6056        32usize,
6057        concat!(
6058            "Offset of field: ",
6059            stringify!(_zend_utility_functions),
6060            "::",
6061            stringify!(message_handler)
6062        )
6063    );
6064    assert_eq!(
6065        unsafe {
6066            &(*(::std::ptr::null::<_zend_utility_functions>())).block_interruptions as *const _
6067                as usize
6068        },
6069        40usize,
6070        concat!(
6071            "Offset of field: ",
6072            stringify!(_zend_utility_functions),
6073            "::",
6074            stringify!(block_interruptions)
6075        )
6076    );
6077    assert_eq!(
6078        unsafe {
6079            &(*(::std::ptr::null::<_zend_utility_functions>())).unblock_interruptions as *const _
6080                as usize
6081        },
6082        48usize,
6083        concat!(
6084            "Offset of field: ",
6085            stringify!(_zend_utility_functions),
6086            "::",
6087            stringify!(unblock_interruptions)
6088        )
6089    );
6090    assert_eq!(
6091        unsafe {
6092            &(*(::std::ptr::null::<_zend_utility_functions>())).get_configuration_directive
6093                as *const _ as usize
6094        },
6095        56usize,
6096        concat!(
6097            "Offset of field: ",
6098            stringify!(_zend_utility_functions),
6099            "::",
6100            stringify!(get_configuration_directive)
6101        )
6102    );
6103    assert_eq!(
6104        unsafe {
6105            &(*(::std::ptr::null::<_zend_utility_functions>())).ticks_function as *const _ as usize
6106        },
6107        64usize,
6108        concat!(
6109            "Offset of field: ",
6110            stringify!(_zend_utility_functions),
6111            "::",
6112            stringify!(ticks_function)
6113        )
6114    );
6115    assert_eq!(
6116        unsafe {
6117            &(*(::std::ptr::null::<_zend_utility_functions>())).on_timeout as *const _ as usize
6118        },
6119        72usize,
6120        concat!(
6121            "Offset of field: ",
6122            stringify!(_zend_utility_functions),
6123            "::",
6124            stringify!(on_timeout)
6125        )
6126    );
6127    assert_eq!(
6128        unsafe {
6129            &(*(::std::ptr::null::<_zend_utility_functions>())).stream_open_function as *const _
6130                as usize
6131        },
6132        80usize,
6133        concat!(
6134            "Offset of field: ",
6135            stringify!(_zend_utility_functions),
6136            "::",
6137            stringify!(stream_open_function)
6138        )
6139    );
6140    assert_eq!(
6141        unsafe {
6142            &(*(::std::ptr::null::<_zend_utility_functions>())).vspprintf_function as *const _
6143                as usize
6144        },
6145        88usize,
6146        concat!(
6147            "Offset of field: ",
6148            stringify!(_zend_utility_functions),
6149            "::",
6150            stringify!(vspprintf_function)
6151        )
6152    );
6153    assert_eq!(
6154        unsafe {
6155            &(*(::std::ptr::null::<_zend_utility_functions>())).getenv_function as *const _ as usize
6156        },
6157        96usize,
6158        concat!(
6159            "Offset of field: ",
6160            stringify!(_zend_utility_functions),
6161            "::",
6162            stringify!(getenv_function)
6163        )
6164    );
6165    assert_eq!(
6166        unsafe {
6167            &(*(::std::ptr::null::<_zend_utility_functions>())).resolve_path_function as *const _
6168                as usize
6169        },
6170        104usize,
6171        concat!(
6172            "Offset of field: ",
6173            stringify!(_zend_utility_functions),
6174            "::",
6175            stringify!(resolve_path_function)
6176        )
6177    );
6178}
6179pub type zend_utility_functions = _zend_utility_functions;
6180#[repr(C)]
6181#[derive(Debug, Copy, Clone)]
6182pub struct _zend_utility_values {
6183    pub import_use_extension: *mut ::std::os::raw::c_char,
6184    pub import_use_extension_length: uint,
6185    pub html_errors: zend_bool,
6186}
6187#[test]
6188fn bindgen_test_layout__zend_utility_values() {
6189    assert_eq!(
6190        ::std::mem::size_of::<_zend_utility_values>(),
6191        16usize,
6192        concat!("Size of: ", stringify!(_zend_utility_values))
6193    );
6194    assert_eq!(
6195        ::std::mem::align_of::<_zend_utility_values>(),
6196        8usize,
6197        concat!("Alignment of ", stringify!(_zend_utility_values))
6198    );
6199    assert_eq!(
6200        unsafe {
6201            &(*(::std::ptr::null::<_zend_utility_values>())).import_use_extension as *const _
6202                as usize
6203        },
6204        0usize,
6205        concat!(
6206            "Offset of field: ",
6207            stringify!(_zend_utility_values),
6208            "::",
6209            stringify!(import_use_extension)
6210        )
6211    );
6212    assert_eq!(
6213        unsafe {
6214            &(*(::std::ptr::null::<_zend_utility_values>())).import_use_extension_length as *const _
6215                as usize
6216        },
6217        8usize,
6218        concat!(
6219            "Offset of field: ",
6220            stringify!(_zend_utility_values),
6221            "::",
6222            stringify!(import_use_extension_length)
6223        )
6224    );
6225    assert_eq!(
6226        unsafe {
6227            &(*(::std::ptr::null::<_zend_utility_values>())).html_errors as *const _ as usize
6228        },
6229        12usize,
6230        concat!(
6231            "Offset of field: ",
6232            stringify!(_zend_utility_values),
6233            "::",
6234            stringify!(html_errors)
6235        )
6236    );
6237}
6238pub type zend_utility_values = _zend_utility_values;
6239pub type zend_write_func_t = ::std::option::Option<
6240    unsafe extern "C" fn(
6241        str_: *const ::std::os::raw::c_char,
6242        str_length: uint,
6243    ) -> ::std::os::raw::c_int,
6244>;
6245extern "C" {
6246    pub fn zend_startup(
6247        utility_functions: *mut zend_utility_functions,
6248        extensions: *mut *mut ::std::os::raw::c_char,
6249        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
6250    ) -> ::std::os::raw::c_int;
6251}
6252extern "C" {
6253    pub fn zend_shutdown(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
6254}
6255extern "C" {
6256    pub fn zend_register_standard_ini_entries(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
6257}
6258extern "C" {
6259    pub fn zend_post_startup(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
6260}
6261extern "C" {
6262    pub fn zend_set_utility_values(utility_values: *mut zend_utility_values);
6263}
6264extern "C" {
6265    pub fn _zend_bailout(filename: *mut ::std::os::raw::c_char, lineno: uint);
6266}
6267extern "C" {
6268    pub fn zend_make_printable_zval(
6269        expr: *mut zval,
6270        expr_copy: *mut zval,
6271        use_copy: *mut ::std::os::raw::c_int,
6272    );
6273}
6274extern "C" {
6275    pub fn zend_print_zval(expr: *mut zval, indent: ::std::os::raw::c_int)
6276        -> ::std::os::raw::c_int;
6277}
6278extern "C" {
6279    pub fn zend_print_zval_ex(
6280        write_func: zend_write_func_t,
6281        expr: *mut zval,
6282        indent: ::std::os::raw::c_int,
6283    ) -> ::std::os::raw::c_int;
6284}
6285extern "C" {
6286    pub fn zend_print_zval_r(
6287        expr: *mut zval,
6288        indent: ::std::os::raw::c_int,
6289        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
6290    );
6291}
6292extern "C" {
6293    pub fn zend_print_flat_zval_r(expr: *mut zval, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
6294}
6295extern "C" {
6296    pub fn zend_print_zval_r_ex(
6297        write_func: zend_write_func_t,
6298        expr: *mut zval,
6299        indent: ::std::os::raw::c_int,
6300        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
6301    );
6302}
6303extern "C" {
6304    pub fn zend_output_debug_string(
6305        trigger_break: zend_bool,
6306        format: *const ::std::os::raw::c_char,
6307        ...
6308    );
6309}
6310extern "C" {
6311    pub fn zend_activate(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
6312}
6313extern "C" {
6314    pub fn zend_deactivate(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
6315}
6316extern "C" {
6317    pub fn zend_call_destructors(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
6318}
6319extern "C" {
6320    pub fn zend_activate_modules(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
6321}
6322extern "C" {
6323    pub fn zend_deactivate_modules(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
6324}
6325extern "C" {
6326    pub fn zend_post_deactivate_modules(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
6327}
6328extern "C" {
6329    pub static mut zend_printf: ::std::option::Option<
6330        unsafe extern "C" fn(format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int,
6331    >;
6332}
6333extern "C" {
6334    pub static mut zend_write: zend_write_func_t;
6335}
6336extern "C" {
6337    pub static mut zend_fopen: ::std::option::Option<
6338        unsafe extern "C" fn(
6339            filename: *const ::std::os::raw::c_char,
6340            opened_path: *mut *mut ::std::os::raw::c_char,
6341            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
6342        ) -> *mut FILE,
6343    >;
6344}
6345extern "C" {
6346    pub static mut zend_block_interruptions: ::std::option::Option<unsafe extern "C" fn()>;
6347}
6348extern "C" {
6349    pub static mut zend_unblock_interruptions: ::std::option::Option<unsafe extern "C" fn()>;
6350}
6351extern "C" {
6352    pub static mut zend_ticks_function:
6353        ::std::option::Option<unsafe extern "C" fn(ticks: ::std::os::raw::c_int)>;
6354}
6355extern "C" {
6356    pub static mut zend_error_cb: ::std::option::Option<
6357        unsafe extern "C" fn(
6358            type_: ::std::os::raw::c_int,
6359            error_filename: *const ::std::os::raw::c_char,
6360            error_lineno: uint,
6361            format: *const ::std::os::raw::c_char,
6362            args: *mut __va_list_tag,
6363        ),
6364    >;
6365}
6366extern "C" {
6367    pub static mut zend_on_timeout: ::std::option::Option<
6368        unsafe extern "C" fn(
6369            seconds: ::std::os::raw::c_int,
6370            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
6371        ),
6372    >;
6373}
6374extern "C" {
6375    pub static mut zend_stream_open_function: ::std::option::Option<
6376        unsafe extern "C" fn(
6377            filename: *const ::std::os::raw::c_char,
6378            handle: *mut zend_file_handle,
6379            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
6380        ) -> ::std::os::raw::c_int,
6381    >;
6382}
6383extern "C" {
6384    pub static mut zend_vspprintf: ::std::option::Option<
6385        unsafe extern "C" fn(
6386            pbuf: *mut *mut ::std::os::raw::c_char,
6387            max_len: size_t,
6388            format: *const ::std::os::raw::c_char,
6389            ap: *mut __va_list_tag,
6390        ) -> ::std::os::raw::c_int,
6391    >;
6392}
6393extern "C" {
6394    pub static mut zend_getenv: ::std::option::Option<
6395        unsafe extern "C" fn(
6396            name: *mut ::std::os::raw::c_char,
6397            name_len: size_t,
6398            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
6399        ) -> *mut ::std::os::raw::c_char,
6400    >;
6401}
6402extern "C" {
6403    pub static mut zend_resolve_path: ::std::option::Option<
6404        unsafe extern "C" fn(
6405            filename: *const ::std::os::raw::c_char,
6406            filename_len: ::std::os::raw::c_int,
6407            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
6408        ) -> *mut ::std::os::raw::c_char,
6409    >;
6410}
6411extern "C" {
6412    pub fn zend_error(type_: ::std::os::raw::c_int, format: *const ::std::os::raw::c_char, ...);
6413}
6414extern "C" {
6415    pub fn zenderror(error: *const ::std::os::raw::c_char);
6416}
6417extern "C" {
6418    pub static mut zend_standard_class_def: *mut zend_class_entry;
6419}
6420extern "C" {
6421    pub static mut zend_uv: zend_utility_values;
6422}
6423extern "C" {
6424    pub static mut zval_used_for_init: zval;
6425}
6426extern "C" {
6427    pub fn zend_message_dispatcher(
6428        message: ::std::os::raw::c_long,
6429        data: *const ::std::os::raw::c_void,
6430        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
6431    );
6432}
6433extern "C" {
6434    pub fn zend_get_configuration_directive(
6435        name: *const ::std::os::raw::c_char,
6436        name_length: uint,
6437        contents: *mut zval,
6438    ) -> ::std::os::raw::c_int;
6439}
6440#[repr(C)]
6441#[derive(Copy, Clone)]
6442pub struct _gc_root_buffer {
6443    pub prev: *mut _gc_root_buffer,
6444    pub next: *mut _gc_root_buffer,
6445    pub handle: zend_object_handle,
6446    pub u: _gc_root_buffer__bindgen_ty_1,
6447}
6448#[repr(C)]
6449#[derive(Copy, Clone)]
6450pub union _gc_root_buffer__bindgen_ty_1 {
6451    pub pz: *mut zval,
6452    pub handlers: *const zend_object_handlers,
6453    _bindgen_union_align: u64,
6454}
6455#[test]
6456fn bindgen_test_layout__gc_root_buffer__bindgen_ty_1() {
6457    assert_eq!(
6458        ::std::mem::size_of::<_gc_root_buffer__bindgen_ty_1>(),
6459        8usize,
6460        concat!("Size of: ", stringify!(_gc_root_buffer__bindgen_ty_1))
6461    );
6462    assert_eq!(
6463        ::std::mem::align_of::<_gc_root_buffer__bindgen_ty_1>(),
6464        8usize,
6465        concat!("Alignment of ", stringify!(_gc_root_buffer__bindgen_ty_1))
6466    );
6467    assert_eq!(
6468        unsafe {
6469            &(*(::std::ptr::null::<_gc_root_buffer__bindgen_ty_1>())).pz as *const _ as usize
6470        },
6471        0usize,
6472        concat!(
6473            "Offset of field: ",
6474            stringify!(_gc_root_buffer__bindgen_ty_1),
6475            "::",
6476            stringify!(pz)
6477        )
6478    );
6479    assert_eq!(
6480        unsafe {
6481            &(*(::std::ptr::null::<_gc_root_buffer__bindgen_ty_1>())).handlers as *const _ as usize
6482        },
6483        0usize,
6484        concat!(
6485            "Offset of field: ",
6486            stringify!(_gc_root_buffer__bindgen_ty_1),
6487            "::",
6488            stringify!(handlers)
6489        )
6490    );
6491}
6492#[test]
6493fn bindgen_test_layout__gc_root_buffer() {
6494    assert_eq!(
6495        ::std::mem::size_of::<_gc_root_buffer>(),
6496        32usize,
6497        concat!("Size of: ", stringify!(_gc_root_buffer))
6498    );
6499    assert_eq!(
6500        ::std::mem::align_of::<_gc_root_buffer>(),
6501        8usize,
6502        concat!("Alignment of ", stringify!(_gc_root_buffer))
6503    );
6504    assert_eq!(
6505        unsafe { &(*(::std::ptr::null::<_gc_root_buffer>())).prev as *const _ as usize },
6506        0usize,
6507        concat!(
6508            "Offset of field: ",
6509            stringify!(_gc_root_buffer),
6510            "::",
6511            stringify!(prev)
6512        )
6513    );
6514    assert_eq!(
6515        unsafe { &(*(::std::ptr::null::<_gc_root_buffer>())).next as *const _ as usize },
6516        8usize,
6517        concat!(
6518            "Offset of field: ",
6519            stringify!(_gc_root_buffer),
6520            "::",
6521            stringify!(next)
6522        )
6523    );
6524    assert_eq!(
6525        unsafe { &(*(::std::ptr::null::<_gc_root_buffer>())).handle as *const _ as usize },
6526        16usize,
6527        concat!(
6528            "Offset of field: ",
6529            stringify!(_gc_root_buffer),
6530            "::",
6531            stringify!(handle)
6532        )
6533    );
6534    assert_eq!(
6535        unsafe { &(*(::std::ptr::null::<_gc_root_buffer>())).u as *const _ as usize },
6536        24usize,
6537        concat!(
6538            "Offset of field: ",
6539            stringify!(_gc_root_buffer),
6540            "::",
6541            stringify!(u)
6542        )
6543    );
6544}
6545pub type gc_root_buffer = _gc_root_buffer;
6546#[repr(C)]
6547#[derive(Copy, Clone)]
6548pub struct _zval_gc_info {
6549    pub z: zval,
6550    pub u: _zval_gc_info__bindgen_ty_1,
6551}
6552#[repr(C)]
6553#[derive(Copy, Clone)]
6554pub union _zval_gc_info__bindgen_ty_1 {
6555    pub buffered: *mut gc_root_buffer,
6556    pub next: *mut _zval_gc_info,
6557    _bindgen_union_align: u64,
6558}
6559#[test]
6560fn bindgen_test_layout__zval_gc_info__bindgen_ty_1() {
6561    assert_eq!(
6562        ::std::mem::size_of::<_zval_gc_info__bindgen_ty_1>(),
6563        8usize,
6564        concat!("Size of: ", stringify!(_zval_gc_info__bindgen_ty_1))
6565    );
6566    assert_eq!(
6567        ::std::mem::align_of::<_zval_gc_info__bindgen_ty_1>(),
6568        8usize,
6569        concat!("Alignment of ", stringify!(_zval_gc_info__bindgen_ty_1))
6570    );
6571    assert_eq!(
6572        unsafe {
6573            &(*(::std::ptr::null::<_zval_gc_info__bindgen_ty_1>())).buffered as *const _ as usize
6574        },
6575        0usize,
6576        concat!(
6577            "Offset of field: ",
6578            stringify!(_zval_gc_info__bindgen_ty_1),
6579            "::",
6580            stringify!(buffered)
6581        )
6582    );
6583    assert_eq!(
6584        unsafe {
6585            &(*(::std::ptr::null::<_zval_gc_info__bindgen_ty_1>())).next as *const _ as usize
6586        },
6587        0usize,
6588        concat!(
6589            "Offset of field: ",
6590            stringify!(_zval_gc_info__bindgen_ty_1),
6591            "::",
6592            stringify!(next)
6593        )
6594    );
6595}
6596#[test]
6597fn bindgen_test_layout__zval_gc_info() {
6598    assert_eq!(
6599        ::std::mem::size_of::<_zval_gc_info>(),
6600        32usize,
6601        concat!("Size of: ", stringify!(_zval_gc_info))
6602    );
6603    assert_eq!(
6604        ::std::mem::align_of::<_zval_gc_info>(),
6605        8usize,
6606        concat!("Alignment of ", stringify!(_zval_gc_info))
6607    );
6608    assert_eq!(
6609        unsafe { &(*(::std::ptr::null::<_zval_gc_info>())).z as *const _ as usize },
6610        0usize,
6611        concat!(
6612            "Offset of field: ",
6613            stringify!(_zval_gc_info),
6614            "::",
6615            stringify!(z)
6616        )
6617    );
6618    assert_eq!(
6619        unsafe { &(*(::std::ptr::null::<_zval_gc_info>())).u as *const _ as usize },
6620        24usize,
6621        concat!(
6622            "Offset of field: ",
6623            stringify!(_zval_gc_info),
6624            "::",
6625            stringify!(u)
6626        )
6627    );
6628}
6629pub type zval_gc_info = _zval_gc_info;
6630#[repr(C)]
6631#[derive(Copy, Clone)]
6632pub struct _zend_gc_globals {
6633    pub gc_enabled: zend_bool,
6634    pub gc_active: zend_bool,
6635    pub buf: *mut gc_root_buffer,
6636    pub roots: gc_root_buffer,
6637    pub unused: *mut gc_root_buffer,
6638    pub first_unused: *mut gc_root_buffer,
6639    pub last_unused: *mut gc_root_buffer,
6640    pub zval_to_free: *mut zval_gc_info,
6641    pub free_list: *mut zval_gc_info,
6642    pub next_to_free: *mut zval_gc_info,
6643    pub gc_runs: zend_uint,
6644    pub collected: zend_uint,
6645}
6646#[test]
6647fn bindgen_test_layout__zend_gc_globals() {
6648    assert_eq!(
6649        ::std::mem::size_of::<_zend_gc_globals>(),
6650        104usize,
6651        concat!("Size of: ", stringify!(_zend_gc_globals))
6652    );
6653    assert_eq!(
6654        ::std::mem::align_of::<_zend_gc_globals>(),
6655        8usize,
6656        concat!("Alignment of ", stringify!(_zend_gc_globals))
6657    );
6658    assert_eq!(
6659        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).gc_enabled as *const _ as usize },
6660        0usize,
6661        concat!(
6662            "Offset of field: ",
6663            stringify!(_zend_gc_globals),
6664            "::",
6665            stringify!(gc_enabled)
6666        )
6667    );
6668    assert_eq!(
6669        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).gc_active as *const _ as usize },
6670        1usize,
6671        concat!(
6672            "Offset of field: ",
6673            stringify!(_zend_gc_globals),
6674            "::",
6675            stringify!(gc_active)
6676        )
6677    );
6678    assert_eq!(
6679        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).buf as *const _ as usize },
6680        8usize,
6681        concat!(
6682            "Offset of field: ",
6683            stringify!(_zend_gc_globals),
6684            "::",
6685            stringify!(buf)
6686        )
6687    );
6688    assert_eq!(
6689        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).roots as *const _ as usize },
6690        16usize,
6691        concat!(
6692            "Offset of field: ",
6693            stringify!(_zend_gc_globals),
6694            "::",
6695            stringify!(roots)
6696        )
6697    );
6698    assert_eq!(
6699        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).unused as *const _ as usize },
6700        48usize,
6701        concat!(
6702            "Offset of field: ",
6703            stringify!(_zend_gc_globals),
6704            "::",
6705            stringify!(unused)
6706        )
6707    );
6708    assert_eq!(
6709        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).first_unused as *const _ as usize },
6710        56usize,
6711        concat!(
6712            "Offset of field: ",
6713            stringify!(_zend_gc_globals),
6714            "::",
6715            stringify!(first_unused)
6716        )
6717    );
6718    assert_eq!(
6719        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).last_unused as *const _ as usize },
6720        64usize,
6721        concat!(
6722            "Offset of field: ",
6723            stringify!(_zend_gc_globals),
6724            "::",
6725            stringify!(last_unused)
6726        )
6727    );
6728    assert_eq!(
6729        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).zval_to_free as *const _ as usize },
6730        72usize,
6731        concat!(
6732            "Offset of field: ",
6733            stringify!(_zend_gc_globals),
6734            "::",
6735            stringify!(zval_to_free)
6736        )
6737    );
6738    assert_eq!(
6739        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).free_list as *const _ as usize },
6740        80usize,
6741        concat!(
6742            "Offset of field: ",
6743            stringify!(_zend_gc_globals),
6744            "::",
6745            stringify!(free_list)
6746        )
6747    );
6748    assert_eq!(
6749        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).next_to_free as *const _ as usize },
6750        88usize,
6751        concat!(
6752            "Offset of field: ",
6753            stringify!(_zend_gc_globals),
6754            "::",
6755            stringify!(next_to_free)
6756        )
6757    );
6758    assert_eq!(
6759        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).gc_runs as *const _ as usize },
6760        96usize,
6761        concat!(
6762            "Offset of field: ",
6763            stringify!(_zend_gc_globals),
6764            "::",
6765            stringify!(gc_runs)
6766        )
6767    );
6768    assert_eq!(
6769        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).collected as *const _ as usize },
6770        100usize,
6771        concat!(
6772            "Offset of field: ",
6773            stringify!(_zend_gc_globals),
6774            "::",
6775            stringify!(collected)
6776        )
6777    );
6778}
6779pub type zend_gc_globals = _zend_gc_globals;
6780extern "C" {
6781    pub static mut gc_globals_id: ::std::os::raw::c_int;
6782}
6783extern "C" {
6784    pub fn zend_freedtoa(s: *mut ::std::os::raw::c_char);
6785}
6786extern "C" {
6787    pub fn zend_dtoa(
6788        _d: f64,
6789        mode: ::std::os::raw::c_int,
6790        ndigits: ::std::os::raw::c_int,
6791        decpt: *mut ::std::os::raw::c_int,
6792        sign: *mut ::std::os::raw::c_int,
6793        rve: *mut *mut ::std::os::raw::c_char,
6794    ) -> *mut ::std::os::raw::c_char;
6795}
6796extern "C" {
6797    pub fn zend_strtod(
6798        s00: *const ::std::os::raw::c_char,
6799        se: *mut *const ::std::os::raw::c_char,
6800    ) -> f64;
6801}
6802extern "C" {
6803    pub fn zend_hex_strtod(
6804        str_: *const ::std::os::raw::c_char,
6805        endptr: *mut *const ::std::os::raw::c_char,
6806    ) -> f64;
6807}
6808extern "C" {
6809    pub fn zend_oct_strtod(
6810        str_: *const ::std::os::raw::c_char,
6811        endptr: *mut *const ::std::os::raw::c_char,
6812    ) -> f64;
6813}
6814extern "C" {
6815    pub fn zend_bin_strtod(
6816        str_: *const ::std::os::raw::c_char,
6817        endptr: *mut *const ::std::os::raw::c_char,
6818    ) -> f64;
6819}
6820extern "C" {
6821    pub fn zend_startup_strtod() -> ::std::os::raw::c_int;
6822}
6823extern "C" {
6824    pub fn zend_shutdown_strtod() -> ::std::os::raw::c_int;
6825}
6826extern "C" {
6827    pub fn zend_string_to_double(number: *const ::std::os::raw::c_char, length: zend_uint) -> f64;
6828}
6829extern "C" {
6830    pub fn zend_str_tolower(str_: *mut ::std::os::raw::c_char, length: ::std::os::raw::c_uint);
6831}
6832extern "C" {
6833    pub fn zend_str_tolower_copy(
6834        dest: *mut ::std::os::raw::c_char,
6835        source: *const ::std::os::raw::c_char,
6836        length: ::std::os::raw::c_uint,
6837    ) -> *mut ::std::os::raw::c_char;
6838}
6839extern "C" {
6840    pub fn zend_str_tolower_dup(
6841        source: *const ::std::os::raw::c_char,
6842        length: ::std::os::raw::c_uint,
6843    ) -> *mut ::std::os::raw::c_char;
6844}
6845extern "C" {
6846    pub fn zend_binary_zval_strcmp(s1: *mut zval, s2: *mut zval) -> ::std::os::raw::c_int;
6847}
6848extern "C" {
6849    pub fn zend_binary_zval_strncmp(
6850        s1: *mut zval,
6851        s2: *mut zval,
6852        s3: *mut zval,
6853    ) -> ::std::os::raw::c_int;
6854}
6855extern "C" {
6856    pub fn zend_binary_zval_strcasecmp(s1: *mut zval, s2: *mut zval) -> ::std::os::raw::c_int;
6857}
6858extern "C" {
6859    pub fn zend_binary_zval_strncasecmp(
6860        s1: *mut zval,
6861        s2: *mut zval,
6862        s3: *mut zval,
6863    ) -> ::std::os::raw::c_int;
6864}
6865extern "C" {
6866    pub fn zend_binary_strcmp(
6867        s1: *const ::std::os::raw::c_char,
6868        len1: uint,
6869        s2: *const ::std::os::raw::c_char,
6870        len2: uint,
6871    ) -> ::std::os::raw::c_int;
6872}
6873extern "C" {
6874    pub fn zend_binary_strncmp(
6875        s1: *const ::std::os::raw::c_char,
6876        len1: uint,
6877        s2: *const ::std::os::raw::c_char,
6878        len2: uint,
6879        length: uint,
6880    ) -> ::std::os::raw::c_int;
6881}
6882extern "C" {
6883    pub fn zend_binary_strcasecmp(
6884        s1: *const ::std::os::raw::c_char,
6885        len1: uint,
6886        s2: *const ::std::os::raw::c_char,
6887        len2: uint,
6888    ) -> ::std::os::raw::c_int;
6889}
6890extern "C" {
6891    pub fn zend_binary_strncasecmp(
6892        s1: *const ::std::os::raw::c_char,
6893        len1: uint,
6894        s2: *const ::std::os::raw::c_char,
6895        len2: uint,
6896        length: uint,
6897    ) -> ::std::os::raw::c_int;
6898}
6899extern "C" {
6900    pub fn zend_binary_strncasecmp_l(
6901        s1: *const ::std::os::raw::c_char,
6902        len1: uint,
6903        s2: *const ::std::os::raw::c_char,
6904        len2: uint,
6905        length: uint,
6906    ) -> ::std::os::raw::c_int;
6907}
6908extern "C" {
6909    pub fn zendi_smart_strcmp(result: *mut zval, s1: *mut zval, s2: *mut zval);
6910}
6911extern "C" {
6912    pub fn zend_compare_symbol_tables(
6913        result: *mut zval,
6914        ht1: *mut HashTable,
6915        ht2: *mut HashTable,
6916        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
6917    );
6918}
6919extern "C" {
6920    pub fn zend_compare_arrays(
6921        result: *mut zval,
6922        a1: *mut zval,
6923        a2: *mut zval,
6924        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
6925    );
6926}
6927extern "C" {
6928    pub fn zend_compare_objects(
6929        result: *mut zval,
6930        o1: *mut zval,
6931        o2: *mut zval,
6932        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
6933    );
6934}
6935extern "C" {
6936    pub fn zend_atoi(
6937        str_: *const ::std::os::raw::c_char,
6938        str_len: ::std::os::raw::c_int,
6939    ) -> ::std::os::raw::c_int;
6940}
6941extern "C" {
6942    pub fn zend_atol(
6943        str_: *const ::std::os::raw::c_char,
6944        str_len: ::std::os::raw::c_int,
6945    ) -> ::std::os::raw::c_long;
6946}
6947extern "C" {
6948    pub fn zend_locale_sprintf_double(op: *mut zval);
6949}
6950extern "C" {
6951    pub fn zend_print_variable(var: *mut zval) -> ::std::os::raw::c_int;
6952}
6953pub const zend_error_handling_t_EH_NORMAL: zend_error_handling_t = 0;
6954pub const zend_error_handling_t_EH_SUPPRESS: zend_error_handling_t = 1;
6955pub const zend_error_handling_t_EH_THROW: zend_error_handling_t = 2;
6956pub type zend_error_handling_t = ::std::os::raw::c_uint;
6957#[repr(C)]
6958#[derive(Debug, Copy, Clone)]
6959pub struct zend_error_handling {
6960    pub handling: zend_error_handling_t,
6961    pub exception: *mut zend_class_entry,
6962    pub user_handler: *mut zval,
6963}
6964#[test]
6965fn bindgen_test_layout_zend_error_handling() {
6966    assert_eq!(
6967        ::std::mem::size_of::<zend_error_handling>(),
6968        24usize,
6969        concat!("Size of: ", stringify!(zend_error_handling))
6970    );
6971    assert_eq!(
6972        ::std::mem::align_of::<zend_error_handling>(),
6973        8usize,
6974        concat!("Alignment of ", stringify!(zend_error_handling))
6975    );
6976    assert_eq!(
6977        unsafe { &(*(::std::ptr::null::<zend_error_handling>())).handling as *const _ as usize },
6978        0usize,
6979        concat!(
6980            "Offset of field: ",
6981            stringify!(zend_error_handling),
6982            "::",
6983            stringify!(handling)
6984        )
6985    );
6986    assert_eq!(
6987        unsafe { &(*(::std::ptr::null::<zend_error_handling>())).exception as *const _ as usize },
6988        8usize,
6989        concat!(
6990            "Offset of field: ",
6991            stringify!(zend_error_handling),
6992            "::",
6993            stringify!(exception)
6994        )
6995    );
6996    assert_eq!(
6997        unsafe {
6998            &(*(::std::ptr::null::<zend_error_handling>())).user_handler as *const _ as usize
6999        },
7000        16usize,
7001        concat!(
7002            "Offset of field: ",
7003            stringify!(zend_error_handling),
7004            "::",
7005            stringify!(user_handler)
7006        )
7007    );
7008}
7009extern "C" {
7010    pub fn zend_save_error_handling(
7011        current: *mut zend_error_handling,
7012        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
7013    );
7014}
7015extern "C" {
7016    pub fn zend_replace_error_handling(
7017        error_handling: zend_error_handling_t,
7018        exception_class: *mut zend_class_entry,
7019        current: *mut zend_error_handling,
7020        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
7021    );
7022}
7023extern "C" {
7024    pub fn zend_restore_error_handling(
7025        saved: *mut zend_error_handling,
7026        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
7027    );
7028}
7029pub type compare_r_func_t = ::std::option::Option<
7030    unsafe extern "C" fn(
7031        arg1: *const ::std::os::raw::c_void,
7032        arg2: *const ::std::os::raw::c_void,
7033        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
7034        arg3: *mut ::std::os::raw::c_void,
7035    ) -> ::std::os::raw::c_int,
7036>;
7037extern "C" {
7038    pub fn zend_qsort(
7039        base: *mut ::std::os::raw::c_void,
7040        nmemb: size_t,
7041        siz: size_t,
7042        compare: compare_func_t,
7043        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
7044    );
7045}
7046extern "C" {
7047    pub fn zend_qsort_r(
7048        base: *mut ::std::os::raw::c_void,
7049        nmemb: size_t,
7050        siz: size_t,
7051        compare: compare_r_func_t,
7052        arg: *mut ::std::os::raw::c_void,
7053        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
7054    );
7055}
7056pub type zend_op_array = _zend_op_array;
7057pub type zend_op = _zend_op;
7058#[repr(C)]
7059#[derive(Debug, Copy, Clone)]
7060pub struct _zend_compiler_context {
7061    pub opcodes_size: zend_uint,
7062    pub vars_size: ::std::os::raw::c_int,
7063    pub literals_size: ::std::os::raw::c_int,
7064    pub current_brk_cont: ::std::os::raw::c_int,
7065    pub backpatch_count: ::std::os::raw::c_int,
7066    pub nested_calls: ::std::os::raw::c_int,
7067    pub used_stack: ::std::os::raw::c_int,
7068    pub in_finally: ::std::os::raw::c_int,
7069    pub labels: *mut HashTable,
7070}
7071#[test]
7072fn bindgen_test_layout__zend_compiler_context() {
7073    assert_eq!(
7074        ::std::mem::size_of::<_zend_compiler_context>(),
7075        40usize,
7076        concat!("Size of: ", stringify!(_zend_compiler_context))
7077    );
7078    assert_eq!(
7079        ::std::mem::align_of::<_zend_compiler_context>(),
7080        8usize,
7081        concat!("Alignment of ", stringify!(_zend_compiler_context))
7082    );
7083    assert_eq!(
7084        unsafe {
7085            &(*(::std::ptr::null::<_zend_compiler_context>())).opcodes_size as *const _ as usize
7086        },
7087        0usize,
7088        concat!(
7089            "Offset of field: ",
7090            stringify!(_zend_compiler_context),
7091            "::",
7092            stringify!(opcodes_size)
7093        )
7094    );
7095    assert_eq!(
7096        unsafe {
7097            &(*(::std::ptr::null::<_zend_compiler_context>())).vars_size as *const _ as usize
7098        },
7099        4usize,
7100        concat!(
7101            "Offset of field: ",
7102            stringify!(_zend_compiler_context),
7103            "::",
7104            stringify!(vars_size)
7105        )
7106    );
7107    assert_eq!(
7108        unsafe {
7109            &(*(::std::ptr::null::<_zend_compiler_context>())).literals_size as *const _ as usize
7110        },
7111        8usize,
7112        concat!(
7113            "Offset of field: ",
7114            stringify!(_zend_compiler_context),
7115            "::",
7116            stringify!(literals_size)
7117        )
7118    );
7119    assert_eq!(
7120        unsafe {
7121            &(*(::std::ptr::null::<_zend_compiler_context>())).current_brk_cont as *const _ as usize
7122        },
7123        12usize,
7124        concat!(
7125            "Offset of field: ",
7126            stringify!(_zend_compiler_context),
7127            "::",
7128            stringify!(current_brk_cont)
7129        )
7130    );
7131    assert_eq!(
7132        unsafe {
7133            &(*(::std::ptr::null::<_zend_compiler_context>())).backpatch_count as *const _ as usize
7134        },
7135        16usize,
7136        concat!(
7137            "Offset of field: ",
7138            stringify!(_zend_compiler_context),
7139            "::",
7140            stringify!(backpatch_count)
7141        )
7142    );
7143    assert_eq!(
7144        unsafe {
7145            &(*(::std::ptr::null::<_zend_compiler_context>())).nested_calls as *const _ as usize
7146        },
7147        20usize,
7148        concat!(
7149            "Offset of field: ",
7150            stringify!(_zend_compiler_context),
7151            "::",
7152            stringify!(nested_calls)
7153        )
7154    );
7155    assert_eq!(
7156        unsafe {
7157            &(*(::std::ptr::null::<_zend_compiler_context>())).used_stack as *const _ as usize
7158        },
7159        24usize,
7160        concat!(
7161            "Offset of field: ",
7162            stringify!(_zend_compiler_context),
7163            "::",
7164            stringify!(used_stack)
7165        )
7166    );
7167    assert_eq!(
7168        unsafe {
7169            &(*(::std::ptr::null::<_zend_compiler_context>())).in_finally as *const _ as usize
7170        },
7171        28usize,
7172        concat!(
7173            "Offset of field: ",
7174            stringify!(_zend_compiler_context),
7175            "::",
7176            stringify!(in_finally)
7177        )
7178    );
7179    assert_eq!(
7180        unsafe { &(*(::std::ptr::null::<_zend_compiler_context>())).labels as *const _ as usize },
7181        32usize,
7182        concat!(
7183            "Offset of field: ",
7184            stringify!(_zend_compiler_context),
7185            "::",
7186            stringify!(labels)
7187        )
7188    );
7189}
7190pub type zend_compiler_context = _zend_compiler_context;
7191#[repr(C)]
7192#[derive(Copy, Clone)]
7193pub struct _zend_literal {
7194    pub constant: zval,
7195    pub hash_value: zend_ulong,
7196    pub cache_slot: zend_uint,
7197}
7198#[test]
7199fn bindgen_test_layout__zend_literal() {
7200    assert_eq!(
7201        ::std::mem::size_of::<_zend_literal>(),
7202        40usize,
7203        concat!("Size of: ", stringify!(_zend_literal))
7204    );
7205    assert_eq!(
7206        ::std::mem::align_of::<_zend_literal>(),
7207        8usize,
7208        concat!("Alignment of ", stringify!(_zend_literal))
7209    );
7210    assert_eq!(
7211        unsafe { &(*(::std::ptr::null::<_zend_literal>())).constant as *const _ as usize },
7212        0usize,
7213        concat!(
7214            "Offset of field: ",
7215            stringify!(_zend_literal),
7216            "::",
7217            stringify!(constant)
7218        )
7219    );
7220    assert_eq!(
7221        unsafe { &(*(::std::ptr::null::<_zend_literal>())).hash_value as *const _ as usize },
7222        24usize,
7223        concat!(
7224            "Offset of field: ",
7225            stringify!(_zend_literal),
7226            "::",
7227            stringify!(hash_value)
7228        )
7229    );
7230    assert_eq!(
7231        unsafe { &(*(::std::ptr::null::<_zend_literal>())).cache_slot as *const _ as usize },
7232        32usize,
7233        concat!(
7234            "Offset of field: ",
7235            stringify!(_zend_literal),
7236            "::",
7237            stringify!(cache_slot)
7238        )
7239    );
7240}
7241pub type zend_literal = _zend_literal;
7242#[repr(C)]
7243#[derive(Copy, Clone)]
7244pub union _znode_op {
7245    pub constant: zend_uint,
7246    pub var: zend_uint,
7247    pub num: zend_uint,
7248    pub hash: zend_ulong,
7249    pub opline_num: zend_uint,
7250    pub jmp_addr: *mut zend_op,
7251    pub zv: *mut zval,
7252    pub literal: *mut zend_literal,
7253    pub ptr: *mut ::std::os::raw::c_void,
7254    _bindgen_union_align: u64,
7255}
7256#[test]
7257fn bindgen_test_layout__znode_op() {
7258    assert_eq!(
7259        ::std::mem::size_of::<_znode_op>(),
7260        8usize,
7261        concat!("Size of: ", stringify!(_znode_op))
7262    );
7263    assert_eq!(
7264        ::std::mem::align_of::<_znode_op>(),
7265        8usize,
7266        concat!("Alignment of ", stringify!(_znode_op))
7267    );
7268    assert_eq!(
7269        unsafe { &(*(::std::ptr::null::<_znode_op>())).constant as *const _ as usize },
7270        0usize,
7271        concat!(
7272            "Offset of field: ",
7273            stringify!(_znode_op),
7274            "::",
7275            stringify!(constant)
7276        )
7277    );
7278    assert_eq!(
7279        unsafe { &(*(::std::ptr::null::<_znode_op>())).var as *const _ as usize },
7280        0usize,
7281        concat!(
7282            "Offset of field: ",
7283            stringify!(_znode_op),
7284            "::",
7285            stringify!(var)
7286        )
7287    );
7288    assert_eq!(
7289        unsafe { &(*(::std::ptr::null::<_znode_op>())).num as *const _ as usize },
7290        0usize,
7291        concat!(
7292            "Offset of field: ",
7293            stringify!(_znode_op),
7294            "::",
7295            stringify!(num)
7296        )
7297    );
7298    assert_eq!(
7299        unsafe { &(*(::std::ptr::null::<_znode_op>())).hash as *const _ as usize },
7300        0usize,
7301        concat!(
7302            "Offset of field: ",
7303            stringify!(_znode_op),
7304            "::",
7305            stringify!(hash)
7306        )
7307    );
7308    assert_eq!(
7309        unsafe { &(*(::std::ptr::null::<_znode_op>())).opline_num as *const _ as usize },
7310        0usize,
7311        concat!(
7312            "Offset of field: ",
7313            stringify!(_znode_op),
7314            "::",
7315            stringify!(opline_num)
7316        )
7317    );
7318    assert_eq!(
7319        unsafe { &(*(::std::ptr::null::<_znode_op>())).jmp_addr as *const _ as usize },
7320        0usize,
7321        concat!(
7322            "Offset of field: ",
7323            stringify!(_znode_op),
7324            "::",
7325            stringify!(jmp_addr)
7326        )
7327    );
7328    assert_eq!(
7329        unsafe { &(*(::std::ptr::null::<_znode_op>())).zv as *const _ as usize },
7330        0usize,
7331        concat!(
7332            "Offset of field: ",
7333            stringify!(_znode_op),
7334            "::",
7335            stringify!(zv)
7336        )
7337    );
7338    assert_eq!(
7339        unsafe { &(*(::std::ptr::null::<_znode_op>())).literal as *const _ as usize },
7340        0usize,
7341        concat!(
7342            "Offset of field: ",
7343            stringify!(_znode_op),
7344            "::",
7345            stringify!(literal)
7346        )
7347    );
7348    assert_eq!(
7349        unsafe { &(*(::std::ptr::null::<_znode_op>())).ptr as *const _ as usize },
7350        0usize,
7351        concat!(
7352            "Offset of field: ",
7353            stringify!(_znode_op),
7354            "::",
7355            stringify!(ptr)
7356        )
7357    );
7358}
7359pub type znode_op = _znode_op;
7360#[repr(C)]
7361#[derive(Copy, Clone)]
7362pub struct _znode {
7363    pub op_type: ::std::os::raw::c_int,
7364    pub u: _znode__bindgen_ty_1,
7365    pub EA: zend_uint,
7366}
7367#[repr(C)]
7368#[derive(Copy, Clone)]
7369pub union _znode__bindgen_ty_1 {
7370    pub op: znode_op,
7371    pub constant: zval,
7372    pub op_array: *mut zend_op_array,
7373    pub ast: *mut zend_ast,
7374    _bindgen_union_align: [u64; 3usize],
7375}
7376#[test]
7377fn bindgen_test_layout__znode__bindgen_ty_1() {
7378    assert_eq!(
7379        ::std::mem::size_of::<_znode__bindgen_ty_1>(),
7380        24usize,
7381        concat!("Size of: ", stringify!(_znode__bindgen_ty_1))
7382    );
7383    assert_eq!(
7384        ::std::mem::align_of::<_znode__bindgen_ty_1>(),
7385        8usize,
7386        concat!("Alignment of ", stringify!(_znode__bindgen_ty_1))
7387    );
7388    assert_eq!(
7389        unsafe { &(*(::std::ptr::null::<_znode__bindgen_ty_1>())).op as *const _ as usize },
7390        0usize,
7391        concat!(
7392            "Offset of field: ",
7393            stringify!(_znode__bindgen_ty_1),
7394            "::",
7395            stringify!(op)
7396        )
7397    );
7398    assert_eq!(
7399        unsafe { &(*(::std::ptr::null::<_znode__bindgen_ty_1>())).constant as *const _ as usize },
7400        0usize,
7401        concat!(
7402            "Offset of field: ",
7403            stringify!(_znode__bindgen_ty_1),
7404            "::",
7405            stringify!(constant)
7406        )
7407    );
7408    assert_eq!(
7409        unsafe { &(*(::std::ptr::null::<_znode__bindgen_ty_1>())).op_array as *const _ as usize },
7410        0usize,
7411        concat!(
7412            "Offset of field: ",
7413            stringify!(_znode__bindgen_ty_1),
7414            "::",
7415            stringify!(op_array)
7416        )
7417    );
7418    assert_eq!(
7419        unsafe { &(*(::std::ptr::null::<_znode__bindgen_ty_1>())).ast as *const _ as usize },
7420        0usize,
7421        concat!(
7422            "Offset of field: ",
7423            stringify!(_znode__bindgen_ty_1),
7424            "::",
7425            stringify!(ast)
7426        )
7427    );
7428}
7429#[test]
7430fn bindgen_test_layout__znode() {
7431    assert_eq!(
7432        ::std::mem::size_of::<_znode>(),
7433        40usize,
7434        concat!("Size of: ", stringify!(_znode))
7435    );
7436    assert_eq!(
7437        ::std::mem::align_of::<_znode>(),
7438        8usize,
7439        concat!("Alignment of ", stringify!(_znode))
7440    );
7441    assert_eq!(
7442        unsafe { &(*(::std::ptr::null::<_znode>())).op_type as *const _ as usize },
7443        0usize,
7444        concat!(
7445            "Offset of field: ",
7446            stringify!(_znode),
7447            "::",
7448            stringify!(op_type)
7449        )
7450    );
7451    assert_eq!(
7452        unsafe { &(*(::std::ptr::null::<_znode>())).u as *const _ as usize },
7453        8usize,
7454        concat!("Offset of field: ", stringify!(_znode), "::", stringify!(u))
7455    );
7456    assert_eq!(
7457        unsafe { &(*(::std::ptr::null::<_znode>())).EA as *const _ as usize },
7458        32usize,
7459        concat!(
7460            "Offset of field: ",
7461            stringify!(_znode),
7462            "::",
7463            stringify!(EA)
7464        )
7465    );
7466}
7467pub type znode = _znode;
7468pub type zend_execute_data = _zend_execute_data;
7469pub type user_opcode_handler_t = ::std::option::Option<
7470    unsafe extern "C" fn(
7471        execute_data: *mut zend_execute_data,
7472        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
7473    ) -> ::std::os::raw::c_int,
7474>;
7475pub type opcode_handler_t = ::std::option::Option<
7476    unsafe extern "C" fn(
7477        execute_data: *mut zend_execute_data,
7478        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
7479    ) -> ::std::os::raw::c_int,
7480>;
7481extern "C" {
7482    pub static mut zend_opcode_handlers: *mut opcode_handler_t;
7483}
7484#[repr(C)]
7485#[derive(Copy, Clone)]
7486pub struct _zend_op {
7487    pub handler: opcode_handler_t,
7488    pub op1: znode_op,
7489    pub op2: znode_op,
7490    pub result: znode_op,
7491    pub extended_value: ulong,
7492    pub lineno: uint,
7493    pub opcode: zend_uchar,
7494    pub op1_type: zend_uchar,
7495    pub op2_type: zend_uchar,
7496    pub result_type: zend_uchar,
7497}
7498#[test]
7499fn bindgen_test_layout__zend_op() {
7500    assert_eq!(
7501        ::std::mem::size_of::<_zend_op>(),
7502        48usize,
7503        concat!("Size of: ", stringify!(_zend_op))
7504    );
7505    assert_eq!(
7506        ::std::mem::align_of::<_zend_op>(),
7507        8usize,
7508        concat!("Alignment of ", stringify!(_zend_op))
7509    );
7510    assert_eq!(
7511        unsafe { &(*(::std::ptr::null::<_zend_op>())).handler as *const _ as usize },
7512        0usize,
7513        concat!(
7514            "Offset of field: ",
7515            stringify!(_zend_op),
7516            "::",
7517            stringify!(handler)
7518        )
7519    );
7520    assert_eq!(
7521        unsafe { &(*(::std::ptr::null::<_zend_op>())).op1 as *const _ as usize },
7522        8usize,
7523        concat!(
7524            "Offset of field: ",
7525            stringify!(_zend_op),
7526            "::",
7527            stringify!(op1)
7528        )
7529    );
7530    assert_eq!(
7531        unsafe { &(*(::std::ptr::null::<_zend_op>())).op2 as *const _ as usize },
7532        16usize,
7533        concat!(
7534            "Offset of field: ",
7535            stringify!(_zend_op),
7536            "::",
7537            stringify!(op2)
7538        )
7539    );
7540    assert_eq!(
7541        unsafe { &(*(::std::ptr::null::<_zend_op>())).result as *const _ as usize },
7542        24usize,
7543        concat!(
7544            "Offset of field: ",
7545            stringify!(_zend_op),
7546            "::",
7547            stringify!(result)
7548        )
7549    );
7550    assert_eq!(
7551        unsafe { &(*(::std::ptr::null::<_zend_op>())).extended_value as *const _ as usize },
7552        32usize,
7553        concat!(
7554            "Offset of field: ",
7555            stringify!(_zend_op),
7556            "::",
7557            stringify!(extended_value)
7558        )
7559    );
7560    assert_eq!(
7561        unsafe { &(*(::std::ptr::null::<_zend_op>())).lineno as *const _ as usize },
7562        40usize,
7563        concat!(
7564            "Offset of field: ",
7565            stringify!(_zend_op),
7566            "::",
7567            stringify!(lineno)
7568        )
7569    );
7570    assert_eq!(
7571        unsafe { &(*(::std::ptr::null::<_zend_op>())).opcode as *const _ as usize },
7572        44usize,
7573        concat!(
7574            "Offset of field: ",
7575            stringify!(_zend_op),
7576            "::",
7577            stringify!(opcode)
7578        )
7579    );
7580    assert_eq!(
7581        unsafe { &(*(::std::ptr::null::<_zend_op>())).op1_type as *const _ as usize },
7582        45usize,
7583        concat!(
7584            "Offset of field: ",
7585            stringify!(_zend_op),
7586            "::",
7587            stringify!(op1_type)
7588        )
7589    );
7590    assert_eq!(
7591        unsafe { &(*(::std::ptr::null::<_zend_op>())).op2_type as *const _ as usize },
7592        46usize,
7593        concat!(
7594            "Offset of field: ",
7595            stringify!(_zend_op),
7596            "::",
7597            stringify!(op2_type)
7598        )
7599    );
7600    assert_eq!(
7601        unsafe { &(*(::std::ptr::null::<_zend_op>())).result_type as *const _ as usize },
7602        47usize,
7603        concat!(
7604            "Offset of field: ",
7605            stringify!(_zend_op),
7606            "::",
7607            stringify!(result_type)
7608        )
7609    );
7610}
7611#[repr(C)]
7612#[derive(Debug, Copy, Clone)]
7613pub struct _zend_brk_cont_element {
7614    pub start: ::std::os::raw::c_int,
7615    pub cont: ::std::os::raw::c_int,
7616    pub brk: ::std::os::raw::c_int,
7617    pub parent: ::std::os::raw::c_int,
7618}
7619#[test]
7620fn bindgen_test_layout__zend_brk_cont_element() {
7621    assert_eq!(
7622        ::std::mem::size_of::<_zend_brk_cont_element>(),
7623        16usize,
7624        concat!("Size of: ", stringify!(_zend_brk_cont_element))
7625    );
7626    assert_eq!(
7627        ::std::mem::align_of::<_zend_brk_cont_element>(),
7628        4usize,
7629        concat!("Alignment of ", stringify!(_zend_brk_cont_element))
7630    );
7631    assert_eq!(
7632        unsafe { &(*(::std::ptr::null::<_zend_brk_cont_element>())).start as *const _ as usize },
7633        0usize,
7634        concat!(
7635            "Offset of field: ",
7636            stringify!(_zend_brk_cont_element),
7637            "::",
7638            stringify!(start)
7639        )
7640    );
7641    assert_eq!(
7642        unsafe { &(*(::std::ptr::null::<_zend_brk_cont_element>())).cont as *const _ as usize },
7643        4usize,
7644        concat!(
7645            "Offset of field: ",
7646            stringify!(_zend_brk_cont_element),
7647            "::",
7648            stringify!(cont)
7649        )
7650    );
7651    assert_eq!(
7652        unsafe { &(*(::std::ptr::null::<_zend_brk_cont_element>())).brk as *const _ as usize },
7653        8usize,
7654        concat!(
7655            "Offset of field: ",
7656            stringify!(_zend_brk_cont_element),
7657            "::",
7658            stringify!(brk)
7659        )
7660    );
7661    assert_eq!(
7662        unsafe { &(*(::std::ptr::null::<_zend_brk_cont_element>())).parent as *const _ as usize },
7663        12usize,
7664        concat!(
7665            "Offset of field: ",
7666            stringify!(_zend_brk_cont_element),
7667            "::",
7668            stringify!(parent)
7669        )
7670    );
7671}
7672pub type zend_brk_cont_element = _zend_brk_cont_element;
7673#[repr(C)]
7674#[derive(Debug, Copy, Clone)]
7675pub struct _zend_label {
7676    pub brk_cont: ::std::os::raw::c_int,
7677    pub opline_num: zend_uint,
7678}
7679#[test]
7680fn bindgen_test_layout__zend_label() {
7681    assert_eq!(
7682        ::std::mem::size_of::<_zend_label>(),
7683        8usize,
7684        concat!("Size of: ", stringify!(_zend_label))
7685    );
7686    assert_eq!(
7687        ::std::mem::align_of::<_zend_label>(),
7688        4usize,
7689        concat!("Alignment of ", stringify!(_zend_label))
7690    );
7691    assert_eq!(
7692        unsafe { &(*(::std::ptr::null::<_zend_label>())).brk_cont as *const _ as usize },
7693        0usize,
7694        concat!(
7695            "Offset of field: ",
7696            stringify!(_zend_label),
7697            "::",
7698            stringify!(brk_cont)
7699        )
7700    );
7701    assert_eq!(
7702        unsafe { &(*(::std::ptr::null::<_zend_label>())).opline_num as *const _ as usize },
7703        4usize,
7704        concat!(
7705            "Offset of field: ",
7706            stringify!(_zend_label),
7707            "::",
7708            stringify!(opline_num)
7709        )
7710    );
7711}
7712pub type zend_label = _zend_label;
7713#[repr(C)]
7714#[derive(Debug, Copy, Clone)]
7715pub struct _zend_try_catch_element {
7716    pub try_op: zend_uint,
7717    pub catch_op: zend_uint,
7718    pub finally_op: zend_uint,
7719    pub finally_end: zend_uint,
7720}
7721#[test]
7722fn bindgen_test_layout__zend_try_catch_element() {
7723    assert_eq!(
7724        ::std::mem::size_of::<_zend_try_catch_element>(),
7725        16usize,
7726        concat!("Size of: ", stringify!(_zend_try_catch_element))
7727    );
7728    assert_eq!(
7729        ::std::mem::align_of::<_zend_try_catch_element>(),
7730        4usize,
7731        concat!("Alignment of ", stringify!(_zend_try_catch_element))
7732    );
7733    assert_eq!(
7734        unsafe { &(*(::std::ptr::null::<_zend_try_catch_element>())).try_op as *const _ as usize },
7735        0usize,
7736        concat!(
7737            "Offset of field: ",
7738            stringify!(_zend_try_catch_element),
7739            "::",
7740            stringify!(try_op)
7741        )
7742    );
7743    assert_eq!(
7744        unsafe {
7745            &(*(::std::ptr::null::<_zend_try_catch_element>())).catch_op as *const _ as usize
7746        },
7747        4usize,
7748        concat!(
7749            "Offset of field: ",
7750            stringify!(_zend_try_catch_element),
7751            "::",
7752            stringify!(catch_op)
7753        )
7754    );
7755    assert_eq!(
7756        unsafe {
7757            &(*(::std::ptr::null::<_zend_try_catch_element>())).finally_op as *const _ as usize
7758        },
7759        8usize,
7760        concat!(
7761            "Offset of field: ",
7762            stringify!(_zend_try_catch_element),
7763            "::",
7764            stringify!(finally_op)
7765        )
7766    );
7767    assert_eq!(
7768        unsafe {
7769            &(*(::std::ptr::null::<_zend_try_catch_element>())).finally_end as *const _ as usize
7770        },
7771        12usize,
7772        concat!(
7773            "Offset of field: ",
7774            stringify!(_zend_try_catch_element),
7775            "::",
7776            stringify!(finally_end)
7777        )
7778    );
7779}
7780pub type zend_try_catch_element = _zend_try_catch_element;
7781extern "C" {
7782    pub fn zend_visibility_string(fn_flags: zend_uint) -> *mut ::std::os::raw::c_char;
7783}
7784#[repr(C)]
7785#[derive(Debug, Copy, Clone)]
7786pub struct _zend_property_info {
7787    pub flags: zend_uint,
7788    pub name: *const ::std::os::raw::c_char,
7789    pub name_length: ::std::os::raw::c_int,
7790    pub h: ulong,
7791    pub offset: ::std::os::raw::c_int,
7792    pub doc_comment: *const ::std::os::raw::c_char,
7793    pub doc_comment_len: ::std::os::raw::c_int,
7794    pub ce: *mut zend_class_entry,
7795}
7796#[test]
7797fn bindgen_test_layout__zend_property_info() {
7798    assert_eq!(
7799        ::std::mem::size_of::<_zend_property_info>(),
7800        64usize,
7801        concat!("Size of: ", stringify!(_zend_property_info))
7802    );
7803    assert_eq!(
7804        ::std::mem::align_of::<_zend_property_info>(),
7805        8usize,
7806        concat!("Alignment of ", stringify!(_zend_property_info))
7807    );
7808    assert_eq!(
7809        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).flags as *const _ as usize },
7810        0usize,
7811        concat!(
7812            "Offset of field: ",
7813            stringify!(_zend_property_info),
7814            "::",
7815            stringify!(flags)
7816        )
7817    );
7818    assert_eq!(
7819        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).name as *const _ as usize },
7820        8usize,
7821        concat!(
7822            "Offset of field: ",
7823            stringify!(_zend_property_info),
7824            "::",
7825            stringify!(name)
7826        )
7827    );
7828    assert_eq!(
7829        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).name_length as *const _ as usize },
7830        16usize,
7831        concat!(
7832            "Offset of field: ",
7833            stringify!(_zend_property_info),
7834            "::",
7835            stringify!(name_length)
7836        )
7837    );
7838    assert_eq!(
7839        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).h as *const _ as usize },
7840        24usize,
7841        concat!(
7842            "Offset of field: ",
7843            stringify!(_zend_property_info),
7844            "::",
7845            stringify!(h)
7846        )
7847    );
7848    assert_eq!(
7849        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).offset as *const _ as usize },
7850        32usize,
7851        concat!(
7852            "Offset of field: ",
7853            stringify!(_zend_property_info),
7854            "::",
7855            stringify!(offset)
7856        )
7857    );
7858    assert_eq!(
7859        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).doc_comment as *const _ as usize },
7860        40usize,
7861        concat!(
7862            "Offset of field: ",
7863            stringify!(_zend_property_info),
7864            "::",
7865            stringify!(doc_comment)
7866        )
7867    );
7868    assert_eq!(
7869        unsafe {
7870            &(*(::std::ptr::null::<_zend_property_info>())).doc_comment_len as *const _ as usize
7871        },
7872        48usize,
7873        concat!(
7874            "Offset of field: ",
7875            stringify!(_zend_property_info),
7876            "::",
7877            stringify!(doc_comment_len)
7878        )
7879    );
7880    assert_eq!(
7881        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).ce as *const _ as usize },
7882        56usize,
7883        concat!(
7884            "Offset of field: ",
7885            stringify!(_zend_property_info),
7886            "::",
7887            stringify!(ce)
7888        )
7889    );
7890}
7891pub type zend_property_info = _zend_property_info;
7892#[repr(C)]
7893#[derive(Debug, Copy, Clone)]
7894pub struct _zend_arg_info {
7895    pub name: *const ::std::os::raw::c_char,
7896    pub name_len: zend_uint,
7897    pub class_name: *const ::std::os::raw::c_char,
7898    pub class_name_len: zend_uint,
7899    pub type_hint: zend_uchar,
7900    pub pass_by_reference: zend_uchar,
7901    pub allow_null: zend_bool,
7902    pub is_variadic: zend_bool,
7903}
7904#[test]
7905fn bindgen_test_layout__zend_arg_info() {
7906    assert_eq!(
7907        ::std::mem::size_of::<_zend_arg_info>(),
7908        32usize,
7909        concat!("Size of: ", stringify!(_zend_arg_info))
7910    );
7911    assert_eq!(
7912        ::std::mem::align_of::<_zend_arg_info>(),
7913        8usize,
7914        concat!("Alignment of ", stringify!(_zend_arg_info))
7915    );
7916    assert_eq!(
7917        unsafe { &(*(::std::ptr::null::<_zend_arg_info>())).name as *const _ as usize },
7918        0usize,
7919        concat!(
7920            "Offset of field: ",
7921            stringify!(_zend_arg_info),
7922            "::",
7923            stringify!(name)
7924        )
7925    );
7926    assert_eq!(
7927        unsafe { &(*(::std::ptr::null::<_zend_arg_info>())).name_len as *const _ as usize },
7928        8usize,
7929        concat!(
7930            "Offset of field: ",
7931            stringify!(_zend_arg_info),
7932            "::",
7933            stringify!(name_len)
7934        )
7935    );
7936    assert_eq!(
7937        unsafe { &(*(::std::ptr::null::<_zend_arg_info>())).class_name as *const _ as usize },
7938        16usize,
7939        concat!(
7940            "Offset of field: ",
7941            stringify!(_zend_arg_info),
7942            "::",
7943            stringify!(class_name)
7944        )
7945    );
7946    assert_eq!(
7947        unsafe { &(*(::std::ptr::null::<_zend_arg_info>())).class_name_len as *const _ as usize },
7948        24usize,
7949        concat!(
7950            "Offset of field: ",
7951            stringify!(_zend_arg_info),
7952            "::",
7953            stringify!(class_name_len)
7954        )
7955    );
7956    assert_eq!(
7957        unsafe { &(*(::std::ptr::null::<_zend_arg_info>())).type_hint as *const _ as usize },
7958        28usize,
7959        concat!(
7960            "Offset of field: ",
7961            stringify!(_zend_arg_info),
7962            "::",
7963            stringify!(type_hint)
7964        )
7965    );
7966    assert_eq!(
7967        unsafe {
7968            &(*(::std::ptr::null::<_zend_arg_info>())).pass_by_reference as *const _ as usize
7969        },
7970        29usize,
7971        concat!(
7972            "Offset of field: ",
7973            stringify!(_zend_arg_info),
7974            "::",
7975            stringify!(pass_by_reference)
7976        )
7977    );
7978    assert_eq!(
7979        unsafe { &(*(::std::ptr::null::<_zend_arg_info>())).allow_null as *const _ as usize },
7980        30usize,
7981        concat!(
7982            "Offset of field: ",
7983            stringify!(_zend_arg_info),
7984            "::",
7985            stringify!(allow_null)
7986        )
7987    );
7988    assert_eq!(
7989        unsafe { &(*(::std::ptr::null::<_zend_arg_info>())).is_variadic as *const _ as usize },
7990        31usize,
7991        concat!(
7992            "Offset of field: ",
7993            stringify!(_zend_arg_info),
7994            "::",
7995            stringify!(is_variadic)
7996        )
7997    );
7998}
7999pub type zend_arg_info = _zend_arg_info;
8000#[repr(C)]
8001#[derive(Debug, Copy, Clone)]
8002pub struct _zend_internal_function_info {
8003    pub _name: *const ::std::os::raw::c_char,
8004    pub _name_len: zend_uint,
8005    pub _class_name: *const ::std::os::raw::c_char,
8006    pub required_num_args: zend_uint,
8007    pub _type_hint: zend_uchar,
8008    pub return_reference: zend_bool,
8009    pub _allow_null: zend_bool,
8010    pub _is_variadic: zend_bool,
8011}
8012#[test]
8013fn bindgen_test_layout__zend_internal_function_info() {
8014    assert_eq!(
8015        ::std::mem::size_of::<_zend_internal_function_info>(),
8016        32usize,
8017        concat!("Size of: ", stringify!(_zend_internal_function_info))
8018    );
8019    assert_eq!(
8020        ::std::mem::align_of::<_zend_internal_function_info>(),
8021        8usize,
8022        concat!("Alignment of ", stringify!(_zend_internal_function_info))
8023    );
8024    assert_eq!(
8025        unsafe {
8026            &(*(::std::ptr::null::<_zend_internal_function_info>()))._name as *const _ as usize
8027        },
8028        0usize,
8029        concat!(
8030            "Offset of field: ",
8031            stringify!(_zend_internal_function_info),
8032            "::",
8033            stringify!(_name)
8034        )
8035    );
8036    assert_eq!(
8037        unsafe {
8038            &(*(::std::ptr::null::<_zend_internal_function_info>()))._name_len as *const _ as usize
8039        },
8040        8usize,
8041        concat!(
8042            "Offset of field: ",
8043            stringify!(_zend_internal_function_info),
8044            "::",
8045            stringify!(_name_len)
8046        )
8047    );
8048    assert_eq!(
8049        unsafe {
8050            &(*(::std::ptr::null::<_zend_internal_function_info>()))._class_name as *const _
8051                as usize
8052        },
8053        16usize,
8054        concat!(
8055            "Offset of field: ",
8056            stringify!(_zend_internal_function_info),
8057            "::",
8058            stringify!(_class_name)
8059        )
8060    );
8061    assert_eq!(
8062        unsafe {
8063            &(*(::std::ptr::null::<_zend_internal_function_info>())).required_num_args as *const _
8064                as usize
8065        },
8066        24usize,
8067        concat!(
8068            "Offset of field: ",
8069            stringify!(_zend_internal_function_info),
8070            "::",
8071            stringify!(required_num_args)
8072        )
8073    );
8074    assert_eq!(
8075        unsafe {
8076            &(*(::std::ptr::null::<_zend_internal_function_info>()))._type_hint as *const _ as usize
8077        },
8078        28usize,
8079        concat!(
8080            "Offset of field: ",
8081            stringify!(_zend_internal_function_info),
8082            "::",
8083            stringify!(_type_hint)
8084        )
8085    );
8086    assert_eq!(
8087        unsafe {
8088            &(*(::std::ptr::null::<_zend_internal_function_info>())).return_reference as *const _
8089                as usize
8090        },
8091        29usize,
8092        concat!(
8093            "Offset of field: ",
8094            stringify!(_zend_internal_function_info),
8095            "::",
8096            stringify!(return_reference)
8097        )
8098    );
8099    assert_eq!(
8100        unsafe {
8101            &(*(::std::ptr::null::<_zend_internal_function_info>()))._allow_null as *const _
8102                as usize
8103        },
8104        30usize,
8105        concat!(
8106            "Offset of field: ",
8107            stringify!(_zend_internal_function_info),
8108            "::",
8109            stringify!(_allow_null)
8110        )
8111    );
8112    assert_eq!(
8113        unsafe {
8114            &(*(::std::ptr::null::<_zend_internal_function_info>()))._is_variadic as *const _
8115                as usize
8116        },
8117        31usize,
8118        concat!(
8119            "Offset of field: ",
8120            stringify!(_zend_internal_function_info),
8121            "::",
8122            stringify!(_is_variadic)
8123        )
8124    );
8125}
8126pub type zend_internal_function_info = _zend_internal_function_info;
8127#[repr(C)]
8128#[derive(Debug, Copy, Clone)]
8129pub struct _zend_compiled_variable {
8130    pub name: *const ::std::os::raw::c_char,
8131    pub name_len: ::std::os::raw::c_int,
8132    pub hash_value: ulong,
8133}
8134#[test]
8135fn bindgen_test_layout__zend_compiled_variable() {
8136    assert_eq!(
8137        ::std::mem::size_of::<_zend_compiled_variable>(),
8138        24usize,
8139        concat!("Size of: ", stringify!(_zend_compiled_variable))
8140    );
8141    assert_eq!(
8142        ::std::mem::align_of::<_zend_compiled_variable>(),
8143        8usize,
8144        concat!("Alignment of ", stringify!(_zend_compiled_variable))
8145    );
8146    assert_eq!(
8147        unsafe { &(*(::std::ptr::null::<_zend_compiled_variable>())).name as *const _ as usize },
8148        0usize,
8149        concat!(
8150            "Offset of field: ",
8151            stringify!(_zend_compiled_variable),
8152            "::",
8153            stringify!(name)
8154        )
8155    );
8156    assert_eq!(
8157        unsafe {
8158            &(*(::std::ptr::null::<_zend_compiled_variable>())).name_len as *const _ as usize
8159        },
8160        8usize,
8161        concat!(
8162            "Offset of field: ",
8163            stringify!(_zend_compiled_variable),
8164            "::",
8165            stringify!(name_len)
8166        )
8167    );
8168    assert_eq!(
8169        unsafe {
8170            &(*(::std::ptr::null::<_zend_compiled_variable>())).hash_value as *const _ as usize
8171        },
8172        16usize,
8173        concat!(
8174            "Offset of field: ",
8175            stringify!(_zend_compiled_variable),
8176            "::",
8177            stringify!(hash_value)
8178        )
8179    );
8180}
8181pub type zend_compiled_variable = _zend_compiled_variable;
8182#[repr(C)]
8183#[derive(Debug, Copy, Clone)]
8184pub struct _zend_op_array {
8185    pub type_: zend_uchar,
8186    pub function_name: *const ::std::os::raw::c_char,
8187    pub scope: *mut zend_class_entry,
8188    pub fn_flags: zend_uint,
8189    pub prototype: *mut _zend_function,
8190    pub num_args: zend_uint,
8191    pub required_num_args: zend_uint,
8192    pub arg_info: *mut zend_arg_info,
8193    pub refcount: *mut zend_uint,
8194    pub opcodes: *mut zend_op,
8195    pub last: zend_uint,
8196    pub vars: *mut zend_compiled_variable,
8197    pub last_var: ::std::os::raw::c_int,
8198    pub T: zend_uint,
8199    pub nested_calls: zend_uint,
8200    pub used_stack: zend_uint,
8201    pub brk_cont_array: *mut zend_brk_cont_element,
8202    pub last_brk_cont: ::std::os::raw::c_int,
8203    pub try_catch_array: *mut zend_try_catch_element,
8204    pub last_try_catch: ::std::os::raw::c_int,
8205    pub has_finally_block: zend_bool,
8206    pub static_variables: *mut HashTable,
8207    pub this_var: zend_uint,
8208    pub filename: *const ::std::os::raw::c_char,
8209    pub line_start: zend_uint,
8210    pub line_end: zend_uint,
8211    pub doc_comment: *const ::std::os::raw::c_char,
8212    pub doc_comment_len: zend_uint,
8213    pub early_binding: zend_uint,
8214    pub literals: *mut zend_literal,
8215    pub last_literal: ::std::os::raw::c_int,
8216    pub run_time_cache: *mut *mut ::std::os::raw::c_void,
8217    pub last_cache_slot: ::std::os::raw::c_int,
8218    pub reserved: [*mut ::std::os::raw::c_void; 4usize],
8219}
8220#[test]
8221fn bindgen_test_layout__zend_op_array() {
8222    assert_eq!(
8223        ::std::mem::size_of::<_zend_op_array>(),
8224        248usize,
8225        concat!("Size of: ", stringify!(_zend_op_array))
8226    );
8227    assert_eq!(
8228        ::std::mem::align_of::<_zend_op_array>(),
8229        8usize,
8230        concat!("Alignment of ", stringify!(_zend_op_array))
8231    );
8232    assert_eq!(
8233        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).type_ as *const _ as usize },
8234        0usize,
8235        concat!(
8236            "Offset of field: ",
8237            stringify!(_zend_op_array),
8238            "::",
8239            stringify!(type_)
8240        )
8241    );
8242    assert_eq!(
8243        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).function_name as *const _ as usize },
8244        8usize,
8245        concat!(
8246            "Offset of field: ",
8247            stringify!(_zend_op_array),
8248            "::",
8249            stringify!(function_name)
8250        )
8251    );
8252    assert_eq!(
8253        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).scope as *const _ as usize },
8254        16usize,
8255        concat!(
8256            "Offset of field: ",
8257            stringify!(_zend_op_array),
8258            "::",
8259            stringify!(scope)
8260        )
8261    );
8262    assert_eq!(
8263        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).fn_flags as *const _ as usize },
8264        24usize,
8265        concat!(
8266            "Offset of field: ",
8267            stringify!(_zend_op_array),
8268            "::",
8269            stringify!(fn_flags)
8270        )
8271    );
8272    assert_eq!(
8273        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).prototype as *const _ as usize },
8274        32usize,
8275        concat!(
8276            "Offset of field: ",
8277            stringify!(_zend_op_array),
8278            "::",
8279            stringify!(prototype)
8280        )
8281    );
8282    assert_eq!(
8283        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).num_args as *const _ as usize },
8284        40usize,
8285        concat!(
8286            "Offset of field: ",
8287            stringify!(_zend_op_array),
8288            "::",
8289            stringify!(num_args)
8290        )
8291    );
8292    assert_eq!(
8293        unsafe {
8294            &(*(::std::ptr::null::<_zend_op_array>())).required_num_args as *const _ as usize
8295        },
8296        44usize,
8297        concat!(
8298            "Offset of field: ",
8299            stringify!(_zend_op_array),
8300            "::",
8301            stringify!(required_num_args)
8302        )
8303    );
8304    assert_eq!(
8305        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).arg_info as *const _ as usize },
8306        48usize,
8307        concat!(
8308            "Offset of field: ",
8309            stringify!(_zend_op_array),
8310            "::",
8311            stringify!(arg_info)
8312        )
8313    );
8314    assert_eq!(
8315        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).refcount as *const _ as usize },
8316        56usize,
8317        concat!(
8318            "Offset of field: ",
8319            stringify!(_zend_op_array),
8320            "::",
8321            stringify!(refcount)
8322        )
8323    );
8324    assert_eq!(
8325        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).opcodes as *const _ as usize },
8326        64usize,
8327        concat!(
8328            "Offset of field: ",
8329            stringify!(_zend_op_array),
8330            "::",
8331            stringify!(opcodes)
8332        )
8333    );
8334    assert_eq!(
8335        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last as *const _ as usize },
8336        72usize,
8337        concat!(
8338            "Offset of field: ",
8339            stringify!(_zend_op_array),
8340            "::",
8341            stringify!(last)
8342        )
8343    );
8344    assert_eq!(
8345        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).vars as *const _ as usize },
8346        80usize,
8347        concat!(
8348            "Offset of field: ",
8349            stringify!(_zend_op_array),
8350            "::",
8351            stringify!(vars)
8352        )
8353    );
8354    assert_eq!(
8355        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last_var as *const _ as usize },
8356        88usize,
8357        concat!(
8358            "Offset of field: ",
8359            stringify!(_zend_op_array),
8360            "::",
8361            stringify!(last_var)
8362        )
8363    );
8364    assert_eq!(
8365        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).T as *const _ as usize },
8366        92usize,
8367        concat!(
8368            "Offset of field: ",
8369            stringify!(_zend_op_array),
8370            "::",
8371            stringify!(T)
8372        )
8373    );
8374    assert_eq!(
8375        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).nested_calls as *const _ as usize },
8376        96usize,
8377        concat!(
8378            "Offset of field: ",
8379            stringify!(_zend_op_array),
8380            "::",
8381            stringify!(nested_calls)
8382        )
8383    );
8384    assert_eq!(
8385        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).used_stack as *const _ as usize },
8386        100usize,
8387        concat!(
8388            "Offset of field: ",
8389            stringify!(_zend_op_array),
8390            "::",
8391            stringify!(used_stack)
8392        )
8393    );
8394    assert_eq!(
8395        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).brk_cont_array as *const _ as usize },
8396        104usize,
8397        concat!(
8398            "Offset of field: ",
8399            stringify!(_zend_op_array),
8400            "::",
8401            stringify!(brk_cont_array)
8402        )
8403    );
8404    assert_eq!(
8405        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last_brk_cont as *const _ as usize },
8406        112usize,
8407        concat!(
8408            "Offset of field: ",
8409            stringify!(_zend_op_array),
8410            "::",
8411            stringify!(last_brk_cont)
8412        )
8413    );
8414    assert_eq!(
8415        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).try_catch_array as *const _ as usize },
8416        120usize,
8417        concat!(
8418            "Offset of field: ",
8419            stringify!(_zend_op_array),
8420            "::",
8421            stringify!(try_catch_array)
8422        )
8423    );
8424    assert_eq!(
8425        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last_try_catch as *const _ as usize },
8426        128usize,
8427        concat!(
8428            "Offset of field: ",
8429            stringify!(_zend_op_array),
8430            "::",
8431            stringify!(last_try_catch)
8432        )
8433    );
8434    assert_eq!(
8435        unsafe {
8436            &(*(::std::ptr::null::<_zend_op_array>())).has_finally_block as *const _ as usize
8437        },
8438        132usize,
8439        concat!(
8440            "Offset of field: ",
8441            stringify!(_zend_op_array),
8442            "::",
8443            stringify!(has_finally_block)
8444        )
8445    );
8446    assert_eq!(
8447        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).static_variables as *const _ as usize },
8448        136usize,
8449        concat!(
8450            "Offset of field: ",
8451            stringify!(_zend_op_array),
8452            "::",
8453            stringify!(static_variables)
8454        )
8455    );
8456    assert_eq!(
8457        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).this_var as *const _ as usize },
8458        144usize,
8459        concat!(
8460            "Offset of field: ",
8461            stringify!(_zend_op_array),
8462            "::",
8463            stringify!(this_var)
8464        )
8465    );
8466    assert_eq!(
8467        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).filename as *const _ as usize },
8468        152usize,
8469        concat!(
8470            "Offset of field: ",
8471            stringify!(_zend_op_array),
8472            "::",
8473            stringify!(filename)
8474        )
8475    );
8476    assert_eq!(
8477        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).line_start as *const _ as usize },
8478        160usize,
8479        concat!(
8480            "Offset of field: ",
8481            stringify!(_zend_op_array),
8482            "::",
8483            stringify!(line_start)
8484        )
8485    );
8486    assert_eq!(
8487        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).line_end as *const _ as usize },
8488        164usize,
8489        concat!(
8490            "Offset of field: ",
8491            stringify!(_zend_op_array),
8492            "::",
8493            stringify!(line_end)
8494        )
8495    );
8496    assert_eq!(
8497        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).doc_comment as *const _ as usize },
8498        168usize,
8499        concat!(
8500            "Offset of field: ",
8501            stringify!(_zend_op_array),
8502            "::",
8503            stringify!(doc_comment)
8504        )
8505    );
8506    assert_eq!(
8507        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).doc_comment_len as *const _ as usize },
8508        176usize,
8509        concat!(
8510            "Offset of field: ",
8511            stringify!(_zend_op_array),
8512            "::",
8513            stringify!(doc_comment_len)
8514        )
8515    );
8516    assert_eq!(
8517        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).early_binding as *const _ as usize },
8518        180usize,
8519        concat!(
8520            "Offset of field: ",
8521            stringify!(_zend_op_array),
8522            "::",
8523            stringify!(early_binding)
8524        )
8525    );
8526    assert_eq!(
8527        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).literals as *const _ as usize },
8528        184usize,
8529        concat!(
8530            "Offset of field: ",
8531            stringify!(_zend_op_array),
8532            "::",
8533            stringify!(literals)
8534        )
8535    );
8536    assert_eq!(
8537        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last_literal as *const _ as usize },
8538        192usize,
8539        concat!(
8540            "Offset of field: ",
8541            stringify!(_zend_op_array),
8542            "::",
8543            stringify!(last_literal)
8544        )
8545    );
8546    assert_eq!(
8547        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).run_time_cache as *const _ as usize },
8548        200usize,
8549        concat!(
8550            "Offset of field: ",
8551            stringify!(_zend_op_array),
8552            "::",
8553            stringify!(run_time_cache)
8554        )
8555    );
8556    assert_eq!(
8557        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last_cache_slot as *const _ as usize },
8558        208usize,
8559        concat!(
8560            "Offset of field: ",
8561            stringify!(_zend_op_array),
8562            "::",
8563            stringify!(last_cache_slot)
8564        )
8565    );
8566    assert_eq!(
8567        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).reserved as *const _ as usize },
8568        216usize,
8569        concat!(
8570            "Offset of field: ",
8571            stringify!(_zend_op_array),
8572            "::",
8573            stringify!(reserved)
8574        )
8575    );
8576}
8577#[repr(C)]
8578#[derive(Debug, Copy, Clone)]
8579pub struct _zend_internal_function {
8580    pub type_: zend_uchar,
8581    pub function_name: *const ::std::os::raw::c_char,
8582    pub scope: *mut zend_class_entry,
8583    pub fn_flags: zend_uint,
8584    pub prototype: *mut _zend_function,
8585    pub num_args: zend_uint,
8586    pub required_num_args: zend_uint,
8587    pub arg_info: *mut zend_arg_info,
8588    pub handler: ::std::option::Option<
8589        unsafe extern "C" fn(
8590            ht: ::std::os::raw::c_int,
8591            return_value: *mut zval,
8592            return_value_ptr: *mut *mut zval,
8593            this_ptr: *mut zval,
8594            return_value_used: ::std::os::raw::c_int,
8595            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
8596        ),
8597    >,
8598    pub module: *mut _zend_module_entry,
8599}
8600#[test]
8601fn bindgen_test_layout__zend_internal_function() {
8602    assert_eq!(
8603        ::std::mem::size_of::<_zend_internal_function>(),
8604        72usize,
8605        concat!("Size of: ", stringify!(_zend_internal_function))
8606    );
8607    assert_eq!(
8608        ::std::mem::align_of::<_zend_internal_function>(),
8609        8usize,
8610        concat!("Alignment of ", stringify!(_zend_internal_function))
8611    );
8612    assert_eq!(
8613        unsafe { &(*(::std::ptr::null::<_zend_internal_function>())).type_ as *const _ as usize },
8614        0usize,
8615        concat!(
8616            "Offset of field: ",
8617            stringify!(_zend_internal_function),
8618            "::",
8619            stringify!(type_)
8620        )
8621    );
8622    assert_eq!(
8623        unsafe {
8624            &(*(::std::ptr::null::<_zend_internal_function>())).function_name as *const _ as usize
8625        },
8626        8usize,
8627        concat!(
8628            "Offset of field: ",
8629            stringify!(_zend_internal_function),
8630            "::",
8631            stringify!(function_name)
8632        )
8633    );
8634    assert_eq!(
8635        unsafe { &(*(::std::ptr::null::<_zend_internal_function>())).scope as *const _ as usize },
8636        16usize,
8637        concat!(
8638            "Offset of field: ",
8639            stringify!(_zend_internal_function),
8640            "::",
8641            stringify!(scope)
8642        )
8643    );
8644    assert_eq!(
8645        unsafe {
8646            &(*(::std::ptr::null::<_zend_internal_function>())).fn_flags as *const _ as usize
8647        },
8648        24usize,
8649        concat!(
8650            "Offset of field: ",
8651            stringify!(_zend_internal_function),
8652            "::",
8653            stringify!(fn_flags)
8654        )
8655    );
8656    assert_eq!(
8657        unsafe {
8658            &(*(::std::ptr::null::<_zend_internal_function>())).prototype as *const _ as usize
8659        },
8660        32usize,
8661        concat!(
8662            "Offset of field: ",
8663            stringify!(_zend_internal_function),
8664            "::",
8665            stringify!(prototype)
8666        )
8667    );
8668    assert_eq!(
8669        unsafe {
8670            &(*(::std::ptr::null::<_zend_internal_function>())).num_args as *const _ as usize
8671        },
8672        40usize,
8673        concat!(
8674            "Offset of field: ",
8675            stringify!(_zend_internal_function),
8676            "::",
8677            stringify!(num_args)
8678        )
8679    );
8680    assert_eq!(
8681        unsafe {
8682            &(*(::std::ptr::null::<_zend_internal_function>())).required_num_args as *const _
8683                as usize
8684        },
8685        44usize,
8686        concat!(
8687            "Offset of field: ",
8688            stringify!(_zend_internal_function),
8689            "::",
8690            stringify!(required_num_args)
8691        )
8692    );
8693    assert_eq!(
8694        unsafe {
8695            &(*(::std::ptr::null::<_zend_internal_function>())).arg_info as *const _ as usize
8696        },
8697        48usize,
8698        concat!(
8699            "Offset of field: ",
8700            stringify!(_zend_internal_function),
8701            "::",
8702            stringify!(arg_info)
8703        )
8704    );
8705    assert_eq!(
8706        unsafe { &(*(::std::ptr::null::<_zend_internal_function>())).handler as *const _ as usize },
8707        56usize,
8708        concat!(
8709            "Offset of field: ",
8710            stringify!(_zend_internal_function),
8711            "::",
8712            stringify!(handler)
8713        )
8714    );
8715    assert_eq!(
8716        unsafe { &(*(::std::ptr::null::<_zend_internal_function>())).module as *const _ as usize },
8717        64usize,
8718        concat!(
8719            "Offset of field: ",
8720            stringify!(_zend_internal_function),
8721            "::",
8722            stringify!(module)
8723        )
8724    );
8725}
8726pub type zend_internal_function = _zend_internal_function;
8727#[repr(C)]
8728#[derive(Copy, Clone)]
8729pub union _zend_function {
8730    pub type_: zend_uchar,
8731    pub common: _zend_function__bindgen_ty_1,
8732    pub op_array: zend_op_array,
8733    pub internal_function: zend_internal_function,
8734    _bindgen_union_align: [u64; 31usize],
8735}
8736#[repr(C)]
8737#[derive(Debug, Copy, Clone)]
8738pub struct _zend_function__bindgen_ty_1 {
8739    pub type_: zend_uchar,
8740    pub function_name: *const ::std::os::raw::c_char,
8741    pub scope: *mut zend_class_entry,
8742    pub fn_flags: zend_uint,
8743    pub prototype: *mut _zend_function,
8744    pub num_args: zend_uint,
8745    pub required_num_args: zend_uint,
8746    pub arg_info: *mut zend_arg_info,
8747}
8748#[test]
8749fn bindgen_test_layout__zend_function__bindgen_ty_1() {
8750    assert_eq!(
8751        ::std::mem::size_of::<_zend_function__bindgen_ty_1>(),
8752        56usize,
8753        concat!("Size of: ", stringify!(_zend_function__bindgen_ty_1))
8754    );
8755    assert_eq!(
8756        ::std::mem::align_of::<_zend_function__bindgen_ty_1>(),
8757        8usize,
8758        concat!("Alignment of ", stringify!(_zend_function__bindgen_ty_1))
8759    );
8760    assert_eq!(
8761        unsafe {
8762            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).type_ as *const _ as usize
8763        },
8764        0usize,
8765        concat!(
8766            "Offset of field: ",
8767            stringify!(_zend_function__bindgen_ty_1),
8768            "::",
8769            stringify!(type_)
8770        )
8771    );
8772    assert_eq!(
8773        unsafe {
8774            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).function_name as *const _
8775                as usize
8776        },
8777        8usize,
8778        concat!(
8779            "Offset of field: ",
8780            stringify!(_zend_function__bindgen_ty_1),
8781            "::",
8782            stringify!(function_name)
8783        )
8784    );
8785    assert_eq!(
8786        unsafe {
8787            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).scope as *const _ as usize
8788        },
8789        16usize,
8790        concat!(
8791            "Offset of field: ",
8792            stringify!(_zend_function__bindgen_ty_1),
8793            "::",
8794            stringify!(scope)
8795        )
8796    );
8797    assert_eq!(
8798        unsafe {
8799            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).fn_flags as *const _ as usize
8800        },
8801        24usize,
8802        concat!(
8803            "Offset of field: ",
8804            stringify!(_zend_function__bindgen_ty_1),
8805            "::",
8806            stringify!(fn_flags)
8807        )
8808    );
8809    assert_eq!(
8810        unsafe {
8811            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).prototype as *const _ as usize
8812        },
8813        32usize,
8814        concat!(
8815            "Offset of field: ",
8816            stringify!(_zend_function__bindgen_ty_1),
8817            "::",
8818            stringify!(prototype)
8819        )
8820    );
8821    assert_eq!(
8822        unsafe {
8823            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).num_args as *const _ as usize
8824        },
8825        40usize,
8826        concat!(
8827            "Offset of field: ",
8828            stringify!(_zend_function__bindgen_ty_1),
8829            "::",
8830            stringify!(num_args)
8831        )
8832    );
8833    assert_eq!(
8834        unsafe {
8835            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).required_num_args as *const _
8836                as usize
8837        },
8838        44usize,
8839        concat!(
8840            "Offset of field: ",
8841            stringify!(_zend_function__bindgen_ty_1),
8842            "::",
8843            stringify!(required_num_args)
8844        )
8845    );
8846    assert_eq!(
8847        unsafe {
8848            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).arg_info as *const _ as usize
8849        },
8850        48usize,
8851        concat!(
8852            "Offset of field: ",
8853            stringify!(_zend_function__bindgen_ty_1),
8854            "::",
8855            stringify!(arg_info)
8856        )
8857    );
8858}
8859#[test]
8860fn bindgen_test_layout__zend_function() {
8861    assert_eq!(
8862        ::std::mem::size_of::<_zend_function>(),
8863        248usize,
8864        concat!("Size of: ", stringify!(_zend_function))
8865    );
8866    assert_eq!(
8867        ::std::mem::align_of::<_zend_function>(),
8868        8usize,
8869        concat!("Alignment of ", stringify!(_zend_function))
8870    );
8871    assert_eq!(
8872        unsafe { &(*(::std::ptr::null::<_zend_function>())).type_ as *const _ as usize },
8873        0usize,
8874        concat!(
8875            "Offset of field: ",
8876            stringify!(_zend_function),
8877            "::",
8878            stringify!(type_)
8879        )
8880    );
8881    assert_eq!(
8882        unsafe { &(*(::std::ptr::null::<_zend_function>())).common as *const _ as usize },
8883        0usize,
8884        concat!(
8885            "Offset of field: ",
8886            stringify!(_zend_function),
8887            "::",
8888            stringify!(common)
8889        )
8890    );
8891    assert_eq!(
8892        unsafe { &(*(::std::ptr::null::<_zend_function>())).op_array as *const _ as usize },
8893        0usize,
8894        concat!(
8895            "Offset of field: ",
8896            stringify!(_zend_function),
8897            "::",
8898            stringify!(op_array)
8899        )
8900    );
8901    assert_eq!(
8902        unsafe {
8903            &(*(::std::ptr::null::<_zend_function>())).internal_function as *const _ as usize
8904        },
8905        0usize,
8906        concat!(
8907            "Offset of field: ",
8908            stringify!(_zend_function),
8909            "::",
8910            stringify!(internal_function)
8911        )
8912    );
8913}
8914pub type zend_function = _zend_function;
8915#[repr(C)]
8916#[derive(Debug, Copy, Clone)]
8917pub struct _zend_function_state {
8918    pub function: *mut zend_function,
8919    pub arguments: *mut *mut ::std::os::raw::c_void,
8920}
8921#[test]
8922fn bindgen_test_layout__zend_function_state() {
8923    assert_eq!(
8924        ::std::mem::size_of::<_zend_function_state>(),
8925        16usize,
8926        concat!("Size of: ", stringify!(_zend_function_state))
8927    );
8928    assert_eq!(
8929        ::std::mem::align_of::<_zend_function_state>(),
8930        8usize,
8931        concat!("Alignment of ", stringify!(_zend_function_state))
8932    );
8933    assert_eq!(
8934        unsafe { &(*(::std::ptr::null::<_zend_function_state>())).function as *const _ as usize },
8935        0usize,
8936        concat!(
8937            "Offset of field: ",
8938            stringify!(_zend_function_state),
8939            "::",
8940            stringify!(function)
8941        )
8942    );
8943    assert_eq!(
8944        unsafe { &(*(::std::ptr::null::<_zend_function_state>())).arguments as *const _ as usize },
8945        8usize,
8946        concat!(
8947            "Offset of field: ",
8948            stringify!(_zend_function_state),
8949            "::",
8950            stringify!(arguments)
8951        )
8952    );
8953}
8954pub type zend_function_state = _zend_function_state;
8955#[repr(C)]
8956#[derive(Debug, Copy, Clone)]
8957pub struct _zend_function_call_entry {
8958    pub fbc: *mut zend_function,
8959    pub arg_num: zend_uint,
8960    pub uses_argument_unpacking: zend_bool,
8961}
8962#[test]
8963fn bindgen_test_layout__zend_function_call_entry() {
8964    assert_eq!(
8965        ::std::mem::size_of::<_zend_function_call_entry>(),
8966        16usize,
8967        concat!("Size of: ", stringify!(_zend_function_call_entry))
8968    );
8969    assert_eq!(
8970        ::std::mem::align_of::<_zend_function_call_entry>(),
8971        8usize,
8972        concat!("Alignment of ", stringify!(_zend_function_call_entry))
8973    );
8974    assert_eq!(
8975        unsafe { &(*(::std::ptr::null::<_zend_function_call_entry>())).fbc as *const _ as usize },
8976        0usize,
8977        concat!(
8978            "Offset of field: ",
8979            stringify!(_zend_function_call_entry),
8980            "::",
8981            stringify!(fbc)
8982        )
8983    );
8984    assert_eq!(
8985        unsafe {
8986            &(*(::std::ptr::null::<_zend_function_call_entry>())).arg_num as *const _ as usize
8987        },
8988        8usize,
8989        concat!(
8990            "Offset of field: ",
8991            stringify!(_zend_function_call_entry),
8992            "::",
8993            stringify!(arg_num)
8994        )
8995    );
8996    assert_eq!(
8997        unsafe {
8998            &(*(::std::ptr::null::<_zend_function_call_entry>())).uses_argument_unpacking
8999                as *const _ as usize
9000        },
9001        12usize,
9002        concat!(
9003            "Offset of field: ",
9004            stringify!(_zend_function_call_entry),
9005            "::",
9006            stringify!(uses_argument_unpacking)
9007        )
9008    );
9009}
9010pub type zend_function_call_entry = _zend_function_call_entry;
9011#[repr(C)]
9012#[derive(Copy, Clone)]
9013pub struct _zend_switch_entry {
9014    pub cond: znode,
9015    pub default_case: ::std::os::raw::c_int,
9016    pub control_var: ::std::os::raw::c_int,
9017}
9018#[test]
9019fn bindgen_test_layout__zend_switch_entry() {
9020    assert_eq!(
9021        ::std::mem::size_of::<_zend_switch_entry>(),
9022        48usize,
9023        concat!("Size of: ", stringify!(_zend_switch_entry))
9024    );
9025    assert_eq!(
9026        ::std::mem::align_of::<_zend_switch_entry>(),
9027        8usize,
9028        concat!("Alignment of ", stringify!(_zend_switch_entry))
9029    );
9030    assert_eq!(
9031        unsafe { &(*(::std::ptr::null::<_zend_switch_entry>())).cond as *const _ as usize },
9032        0usize,
9033        concat!(
9034            "Offset of field: ",
9035            stringify!(_zend_switch_entry),
9036            "::",
9037            stringify!(cond)
9038        )
9039    );
9040    assert_eq!(
9041        unsafe { &(*(::std::ptr::null::<_zend_switch_entry>())).default_case as *const _ as usize },
9042        40usize,
9043        concat!(
9044            "Offset of field: ",
9045            stringify!(_zend_switch_entry),
9046            "::",
9047            stringify!(default_case)
9048        )
9049    );
9050    assert_eq!(
9051        unsafe { &(*(::std::ptr::null::<_zend_switch_entry>())).control_var as *const _ as usize },
9052        44usize,
9053        concat!(
9054            "Offset of field: ",
9055            stringify!(_zend_switch_entry),
9056            "::",
9057            stringify!(control_var)
9058        )
9059    );
9060}
9061pub type zend_switch_entry = _zend_switch_entry;
9062#[repr(C)]
9063#[derive(Debug, Copy, Clone)]
9064pub struct _call_slot {
9065    pub fbc: *mut zend_function,
9066    pub object: *mut zval,
9067    pub called_scope: *mut zend_class_entry,
9068    pub num_additional_args: zend_uint,
9069    pub is_ctor_call: zend_bool,
9070    pub is_ctor_result_used: zend_bool,
9071}
9072#[test]
9073fn bindgen_test_layout__call_slot() {
9074    assert_eq!(
9075        ::std::mem::size_of::<_call_slot>(),
9076        32usize,
9077        concat!("Size of: ", stringify!(_call_slot))
9078    );
9079    assert_eq!(
9080        ::std::mem::align_of::<_call_slot>(),
9081        8usize,
9082        concat!("Alignment of ", stringify!(_call_slot))
9083    );
9084    assert_eq!(
9085        unsafe { &(*(::std::ptr::null::<_call_slot>())).fbc as *const _ as usize },
9086        0usize,
9087        concat!(
9088            "Offset of field: ",
9089            stringify!(_call_slot),
9090            "::",
9091            stringify!(fbc)
9092        )
9093    );
9094    assert_eq!(
9095        unsafe { &(*(::std::ptr::null::<_call_slot>())).object as *const _ as usize },
9096        8usize,
9097        concat!(
9098            "Offset of field: ",
9099            stringify!(_call_slot),
9100            "::",
9101            stringify!(object)
9102        )
9103    );
9104    assert_eq!(
9105        unsafe { &(*(::std::ptr::null::<_call_slot>())).called_scope as *const _ as usize },
9106        16usize,
9107        concat!(
9108            "Offset of field: ",
9109            stringify!(_call_slot),
9110            "::",
9111            stringify!(called_scope)
9112        )
9113    );
9114    assert_eq!(
9115        unsafe { &(*(::std::ptr::null::<_call_slot>())).num_additional_args as *const _ as usize },
9116        24usize,
9117        concat!(
9118            "Offset of field: ",
9119            stringify!(_call_slot),
9120            "::",
9121            stringify!(num_additional_args)
9122        )
9123    );
9124    assert_eq!(
9125        unsafe { &(*(::std::ptr::null::<_call_slot>())).is_ctor_call as *const _ as usize },
9126        28usize,
9127        concat!(
9128            "Offset of field: ",
9129            stringify!(_call_slot),
9130            "::",
9131            stringify!(is_ctor_call)
9132        )
9133    );
9134    assert_eq!(
9135        unsafe { &(*(::std::ptr::null::<_call_slot>())).is_ctor_result_used as *const _ as usize },
9136        29usize,
9137        concat!(
9138            "Offset of field: ",
9139            stringify!(_call_slot),
9140            "::",
9141            stringify!(is_ctor_result_used)
9142        )
9143    );
9144}
9145pub type call_slot = _call_slot;
9146#[repr(C)]
9147#[derive(Debug, Copy, Clone)]
9148pub struct _zend_execute_data {
9149    pub opline: *mut _zend_op,
9150    pub function_state: zend_function_state,
9151    pub op_array: *mut zend_op_array,
9152    pub object: *mut zval,
9153    pub symbol_table: *mut HashTable,
9154    pub prev_execute_data: *mut _zend_execute_data,
9155    pub old_error_reporting: *mut zval,
9156    pub nested: zend_bool,
9157    pub original_return_value: *mut *mut zval,
9158    pub current_scope: *mut zend_class_entry,
9159    pub current_called_scope: *mut zend_class_entry,
9160    pub current_this: *mut zval,
9161    pub fast_ret: *mut _zend_op,
9162    pub delayed_exception: *mut zval,
9163    pub call_slots: *mut call_slot,
9164    pub call: *mut call_slot,
9165}
9166#[test]
9167fn bindgen_test_layout__zend_execute_data() {
9168    assert_eq!(
9169        ::std::mem::size_of::<_zend_execute_data>(),
9170        136usize,
9171        concat!("Size of: ", stringify!(_zend_execute_data))
9172    );
9173    assert_eq!(
9174        ::std::mem::align_of::<_zend_execute_data>(),
9175        8usize,
9176        concat!("Alignment of ", stringify!(_zend_execute_data))
9177    );
9178    assert_eq!(
9179        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).opline as *const _ as usize },
9180        0usize,
9181        concat!(
9182            "Offset of field: ",
9183            stringify!(_zend_execute_data),
9184            "::",
9185            stringify!(opline)
9186        )
9187    );
9188    assert_eq!(
9189        unsafe {
9190            &(*(::std::ptr::null::<_zend_execute_data>())).function_state as *const _ as usize
9191        },
9192        8usize,
9193        concat!(
9194            "Offset of field: ",
9195            stringify!(_zend_execute_data),
9196            "::",
9197            stringify!(function_state)
9198        )
9199    );
9200    assert_eq!(
9201        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).op_array as *const _ as usize },
9202        24usize,
9203        concat!(
9204            "Offset of field: ",
9205            stringify!(_zend_execute_data),
9206            "::",
9207            stringify!(op_array)
9208        )
9209    );
9210    assert_eq!(
9211        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).object as *const _ as usize },
9212        32usize,
9213        concat!(
9214            "Offset of field: ",
9215            stringify!(_zend_execute_data),
9216            "::",
9217            stringify!(object)
9218        )
9219    );
9220    assert_eq!(
9221        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).symbol_table as *const _ as usize },
9222        40usize,
9223        concat!(
9224            "Offset of field: ",
9225            stringify!(_zend_execute_data),
9226            "::",
9227            stringify!(symbol_table)
9228        )
9229    );
9230    assert_eq!(
9231        unsafe {
9232            &(*(::std::ptr::null::<_zend_execute_data>())).prev_execute_data as *const _ as usize
9233        },
9234        48usize,
9235        concat!(
9236            "Offset of field: ",
9237            stringify!(_zend_execute_data),
9238            "::",
9239            stringify!(prev_execute_data)
9240        )
9241    );
9242    assert_eq!(
9243        unsafe {
9244            &(*(::std::ptr::null::<_zend_execute_data>())).old_error_reporting as *const _ as usize
9245        },
9246        56usize,
9247        concat!(
9248            "Offset of field: ",
9249            stringify!(_zend_execute_data),
9250            "::",
9251            stringify!(old_error_reporting)
9252        )
9253    );
9254    assert_eq!(
9255        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).nested as *const _ as usize },
9256        64usize,
9257        concat!(
9258            "Offset of field: ",
9259            stringify!(_zend_execute_data),
9260            "::",
9261            stringify!(nested)
9262        )
9263    );
9264    assert_eq!(
9265        unsafe {
9266            &(*(::std::ptr::null::<_zend_execute_data>())).original_return_value as *const _
9267                as usize
9268        },
9269        72usize,
9270        concat!(
9271            "Offset of field: ",
9272            stringify!(_zend_execute_data),
9273            "::",
9274            stringify!(original_return_value)
9275        )
9276    );
9277    assert_eq!(
9278        unsafe {
9279            &(*(::std::ptr::null::<_zend_execute_data>())).current_scope as *const _ as usize
9280        },
9281        80usize,
9282        concat!(
9283            "Offset of field: ",
9284            stringify!(_zend_execute_data),
9285            "::",
9286            stringify!(current_scope)
9287        )
9288    );
9289    assert_eq!(
9290        unsafe {
9291            &(*(::std::ptr::null::<_zend_execute_data>())).current_called_scope as *const _ as usize
9292        },
9293        88usize,
9294        concat!(
9295            "Offset of field: ",
9296            stringify!(_zend_execute_data),
9297            "::",
9298            stringify!(current_called_scope)
9299        )
9300    );
9301    assert_eq!(
9302        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).current_this as *const _ as usize },
9303        96usize,
9304        concat!(
9305            "Offset of field: ",
9306            stringify!(_zend_execute_data),
9307            "::",
9308            stringify!(current_this)
9309        )
9310    );
9311    assert_eq!(
9312        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).fast_ret as *const _ as usize },
9313        104usize,
9314        concat!(
9315            "Offset of field: ",
9316            stringify!(_zend_execute_data),
9317            "::",
9318            stringify!(fast_ret)
9319        )
9320    );
9321    assert_eq!(
9322        unsafe {
9323            &(*(::std::ptr::null::<_zend_execute_data>())).delayed_exception as *const _ as usize
9324        },
9325        112usize,
9326        concat!(
9327            "Offset of field: ",
9328            stringify!(_zend_execute_data),
9329            "::",
9330            stringify!(delayed_exception)
9331        )
9332    );
9333    assert_eq!(
9334        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).call_slots as *const _ as usize },
9335        120usize,
9336        concat!(
9337            "Offset of field: ",
9338            stringify!(_zend_execute_data),
9339            "::",
9340            stringify!(call_slots)
9341        )
9342    );
9343    assert_eq!(
9344        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).call as *const _ as usize },
9345        128usize,
9346        concat!(
9347            "Offset of field: ",
9348            stringify!(_zend_execute_data),
9349            "::",
9350            stringify!(call)
9351        )
9352    );
9353}
9354#[repr(C)]
9355#[derive(Debug, Copy, Clone)]
9356pub struct __jmp_buf_tag {
9357    pub __jmpbuf: __jmp_buf,
9358    pub __mask_was_saved: ::std::os::raw::c_int,
9359    pub __saved_mask: __sigset_t,
9360}
9361#[test]
9362fn bindgen_test_layout___jmp_buf_tag() {
9363    assert_eq!(
9364        ::std::mem::size_of::<__jmp_buf_tag>(),
9365        200usize,
9366        concat!("Size of: ", stringify!(__jmp_buf_tag))
9367    );
9368    assert_eq!(
9369        ::std::mem::align_of::<__jmp_buf_tag>(),
9370        8usize,
9371        concat!("Alignment of ", stringify!(__jmp_buf_tag))
9372    );
9373    assert_eq!(
9374        unsafe { &(*(::std::ptr::null::<__jmp_buf_tag>())).__jmpbuf as *const _ as usize },
9375        0usize,
9376        concat!(
9377            "Offset of field: ",
9378            stringify!(__jmp_buf_tag),
9379            "::",
9380            stringify!(__jmpbuf)
9381        )
9382    );
9383    assert_eq!(
9384        unsafe { &(*(::std::ptr::null::<__jmp_buf_tag>())).__mask_was_saved as *const _ as usize },
9385        64usize,
9386        concat!(
9387            "Offset of field: ",
9388            stringify!(__jmp_buf_tag),
9389            "::",
9390            stringify!(__mask_was_saved)
9391        )
9392    );
9393    assert_eq!(
9394        unsafe { &(*(::std::ptr::null::<__jmp_buf_tag>())).__saved_mask as *const _ as usize },
9395        72usize,
9396        concat!(
9397            "Offset of field: ",
9398            stringify!(__jmp_buf_tag),
9399            "::",
9400            stringify!(__saved_mask)
9401        )
9402    );
9403}
9404pub type jmp_buf = [__jmp_buf_tag; 1usize];
9405pub type zend_compiler_globals = _zend_compiler_globals;
9406pub type zend_executor_globals = _zend_executor_globals;
9407pub type zend_php_scanner_globals = _zend_php_scanner_globals;
9408pub type zend_ini_scanner_globals = _zend_ini_scanner_globals;
9409extern "C" {
9410    pub fn zendparse(compiler_globals: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
9411}
9412#[repr(C)]
9413#[derive(Debug, Copy, Clone)]
9414pub struct _zend_stack {
9415    pub top: ::std::os::raw::c_int,
9416    pub max: ::std::os::raw::c_int,
9417    pub elements: *mut *mut ::std::os::raw::c_void,
9418}
9419#[test]
9420fn bindgen_test_layout__zend_stack() {
9421    assert_eq!(
9422        ::std::mem::size_of::<_zend_stack>(),
9423        16usize,
9424        concat!("Size of: ", stringify!(_zend_stack))
9425    );
9426    assert_eq!(
9427        ::std::mem::align_of::<_zend_stack>(),
9428        8usize,
9429        concat!("Alignment of ", stringify!(_zend_stack))
9430    );
9431    assert_eq!(
9432        unsafe { &(*(::std::ptr::null::<_zend_stack>())).top as *const _ as usize },
9433        0usize,
9434        concat!(
9435            "Offset of field: ",
9436            stringify!(_zend_stack),
9437            "::",
9438            stringify!(top)
9439        )
9440    );
9441    assert_eq!(
9442        unsafe { &(*(::std::ptr::null::<_zend_stack>())).max as *const _ as usize },
9443        4usize,
9444        concat!(
9445            "Offset of field: ",
9446            stringify!(_zend_stack),
9447            "::",
9448            stringify!(max)
9449        )
9450    );
9451    assert_eq!(
9452        unsafe { &(*(::std::ptr::null::<_zend_stack>())).elements as *const _ as usize },
9453        8usize,
9454        concat!(
9455            "Offset of field: ",
9456            stringify!(_zend_stack),
9457            "::",
9458            stringify!(elements)
9459        )
9460    );
9461}
9462pub type zend_stack = _zend_stack;
9463extern "C" {
9464    pub fn zend_stack_init(stack: *mut zend_stack) -> ::std::os::raw::c_int;
9465}
9466extern "C" {
9467    pub fn zend_stack_push(
9468        stack: *mut zend_stack,
9469        element: *const ::std::os::raw::c_void,
9470        size: ::std::os::raw::c_int,
9471    ) -> ::std::os::raw::c_int;
9472}
9473extern "C" {
9474    pub fn zend_stack_top(
9475        stack: *const zend_stack,
9476        element: *mut *mut ::std::os::raw::c_void,
9477    ) -> ::std::os::raw::c_int;
9478}
9479extern "C" {
9480    pub fn zend_stack_del_top(stack: *mut zend_stack) -> ::std::os::raw::c_int;
9481}
9482extern "C" {
9483    pub fn zend_stack_int_top(stack: *const zend_stack) -> ::std::os::raw::c_int;
9484}
9485extern "C" {
9486    pub fn zend_stack_is_empty(stack: *const zend_stack) -> ::std::os::raw::c_int;
9487}
9488extern "C" {
9489    pub fn zend_stack_destroy(stack: *mut zend_stack) -> ::std::os::raw::c_int;
9490}
9491extern "C" {
9492    pub fn zend_stack_base(stack: *const zend_stack) -> *mut *mut ::std::os::raw::c_void;
9493}
9494extern "C" {
9495    pub fn zend_stack_count(stack: *const zend_stack) -> ::std::os::raw::c_int;
9496}
9497extern "C" {
9498    pub fn zend_stack_apply(
9499        stack: *mut zend_stack,
9500        type_: ::std::os::raw::c_int,
9501        apply_function: ::std::option::Option<
9502            unsafe extern "C" fn(element: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
9503        >,
9504    );
9505}
9506extern "C" {
9507    pub fn zend_stack_apply_with_argument(
9508        stack: *mut zend_stack,
9509        type_: ::std::os::raw::c_int,
9510        apply_function: ::std::option::Option<
9511            unsafe extern "C" fn(
9512                element: *mut ::std::os::raw::c_void,
9513                arg: *mut ::std::os::raw::c_void,
9514            ) -> ::std::os::raw::c_int,
9515        >,
9516        arg: *mut ::std::os::raw::c_void,
9517    );
9518}
9519#[repr(C)]
9520#[derive(Debug, Copy, Clone)]
9521pub struct _zend_ptr_stack {
9522    pub top: ::std::os::raw::c_int,
9523    pub max: ::std::os::raw::c_int,
9524    pub elements: *mut *mut ::std::os::raw::c_void,
9525    pub top_element: *mut *mut ::std::os::raw::c_void,
9526    pub persistent: zend_bool,
9527}
9528#[test]
9529fn bindgen_test_layout__zend_ptr_stack() {
9530    assert_eq!(
9531        ::std::mem::size_of::<_zend_ptr_stack>(),
9532        32usize,
9533        concat!("Size of: ", stringify!(_zend_ptr_stack))
9534    );
9535    assert_eq!(
9536        ::std::mem::align_of::<_zend_ptr_stack>(),
9537        8usize,
9538        concat!("Alignment of ", stringify!(_zend_ptr_stack))
9539    );
9540    assert_eq!(
9541        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).top as *const _ as usize },
9542        0usize,
9543        concat!(
9544            "Offset of field: ",
9545            stringify!(_zend_ptr_stack),
9546            "::",
9547            stringify!(top)
9548        )
9549    );
9550    assert_eq!(
9551        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).max as *const _ as usize },
9552        4usize,
9553        concat!(
9554            "Offset of field: ",
9555            stringify!(_zend_ptr_stack),
9556            "::",
9557            stringify!(max)
9558        )
9559    );
9560    assert_eq!(
9561        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).elements as *const _ as usize },
9562        8usize,
9563        concat!(
9564            "Offset of field: ",
9565            stringify!(_zend_ptr_stack),
9566            "::",
9567            stringify!(elements)
9568        )
9569    );
9570    assert_eq!(
9571        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).top_element as *const _ as usize },
9572        16usize,
9573        concat!(
9574            "Offset of field: ",
9575            stringify!(_zend_ptr_stack),
9576            "::",
9577            stringify!(top_element)
9578        )
9579    );
9580    assert_eq!(
9581        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).persistent as *const _ as usize },
9582        24usize,
9583        concat!(
9584            "Offset of field: ",
9585            stringify!(_zend_ptr_stack),
9586            "::",
9587            stringify!(persistent)
9588        )
9589    );
9590}
9591pub type zend_ptr_stack = _zend_ptr_stack;
9592extern "C" {
9593    pub fn zend_ptr_stack_init(stack: *mut zend_ptr_stack);
9594}
9595extern "C" {
9596    pub fn zend_ptr_stack_init_ex(stack: *mut zend_ptr_stack, persistent: zend_bool);
9597}
9598extern "C" {
9599    pub fn zend_ptr_stack_n_push(stack: *mut zend_ptr_stack, count: ::std::os::raw::c_int, ...);
9600}
9601extern "C" {
9602    pub fn zend_ptr_stack_n_pop(stack: *mut zend_ptr_stack, count: ::std::os::raw::c_int, ...);
9603}
9604extern "C" {
9605    pub fn zend_ptr_stack_destroy(stack: *mut zend_ptr_stack);
9606}
9607extern "C" {
9608    pub fn zend_ptr_stack_apply(
9609        stack: *mut zend_ptr_stack,
9610        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
9611    );
9612}
9613extern "C" {
9614    pub fn zend_ptr_stack_clean(
9615        stack: *mut zend_ptr_stack,
9616        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
9617        free_elements: zend_bool,
9618    );
9619}
9620extern "C" {
9621    pub fn zend_ptr_stack_num_elements(stack: *mut zend_ptr_stack) -> ::std::os::raw::c_int;
9622}
9623extern "C" {
9624    pub fn zend_object_std_init(
9625        object: *mut zend_object,
9626        ce: *mut zend_class_entry,
9627        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
9628    );
9629}
9630extern "C" {
9631    pub fn zend_object_std_dtor(
9632        object: *mut zend_object,
9633        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
9634    );
9635}
9636extern "C" {
9637    pub fn zend_objects_new(
9638        object: *mut *mut zend_object,
9639        class_type: *mut zend_class_entry,
9640        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
9641    ) -> zend_object_value;
9642}
9643extern "C" {
9644    pub fn zend_objects_destroy_object(
9645        object: *mut zend_object,
9646        handle: zend_object_handle,
9647        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
9648    );
9649}
9650extern "C" {
9651    pub fn zend_objects_get_address(
9652        object: *const zval,
9653        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
9654    ) -> *mut zend_object;
9655}
9656extern "C" {
9657    pub fn zend_objects_clone_members(
9658        new_object: *mut zend_object,
9659        new_obj_val: zend_object_value,
9660        old_object: *mut zend_object,
9661        handle: zend_object_handle,
9662        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
9663    );
9664}
9665extern "C" {
9666    pub fn zend_objects_clone_obj(
9667        object: *mut zval,
9668        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
9669    ) -> zend_object_value;
9670}
9671extern "C" {
9672    pub fn zend_objects_free_object_storage(
9673        object: *mut zend_object,
9674        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
9675    );
9676}
9677pub type zend_objects_store_dtor_t = ::std::option::Option<
9678    unsafe extern "C" fn(
9679        object: *mut ::std::os::raw::c_void,
9680        handle: zend_object_handle,
9681        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
9682    ),
9683>;
9684pub type zend_objects_free_object_storage_t = ::std::option::Option<
9685    unsafe extern "C" fn(
9686        object: *mut ::std::os::raw::c_void,
9687        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
9688    ),
9689>;
9690pub type zend_objects_store_clone_t = ::std::option::Option<
9691    unsafe extern "C" fn(
9692        object: *mut ::std::os::raw::c_void,
9693        object_clone: *mut *mut ::std::os::raw::c_void,
9694        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
9695    ),
9696>;
9697#[repr(C)]
9698#[derive(Copy, Clone)]
9699pub struct _zend_object_store_bucket {
9700    pub destructor_called: zend_bool,
9701    pub valid: zend_bool,
9702    pub apply_count: zend_uchar,
9703    pub bucket: _zend_object_store_bucket__store_bucket,
9704}
9705#[repr(C)]
9706#[derive(Copy, Clone)]
9707pub union _zend_object_store_bucket__store_bucket {
9708    pub obj: _zend_object_store_bucket__store_bucket__store_object,
9709    pub free_list: _zend_object_store_bucket__store_bucket__bindgen_ty_1,
9710    _bindgen_union_align: [u64; 7usize],
9711}
9712#[repr(C)]
9713#[derive(Debug, Copy, Clone)]
9714pub struct _zend_object_store_bucket__store_bucket__store_object {
9715    pub object: *mut ::std::os::raw::c_void,
9716    pub dtor: zend_objects_store_dtor_t,
9717    pub free_storage: zend_objects_free_object_storage_t,
9718    pub clone: zend_objects_store_clone_t,
9719    pub handlers: *const zend_object_handlers,
9720    pub refcount: zend_uint,
9721    pub buffered: *mut gc_root_buffer,
9722}
9723#[test]
9724fn bindgen_test_layout__zend_object_store_bucket__store_bucket__store_object() {
9725    assert_eq!(
9726        ::std::mem::size_of::<_zend_object_store_bucket__store_bucket__store_object>(),
9727        56usize,
9728        concat!(
9729            "Size of: ",
9730            stringify!(_zend_object_store_bucket__store_bucket__store_object)
9731        )
9732    );
9733    assert_eq!(
9734        ::std::mem::align_of::<_zend_object_store_bucket__store_bucket__store_object>(),
9735        8usize,
9736        concat!(
9737            "Alignment of ",
9738            stringify!(_zend_object_store_bucket__store_bucket__store_object)
9739        )
9740    );
9741    assert_eq!(
9742        unsafe {
9743            &(*(::std::ptr::null::<_zend_object_store_bucket__store_bucket__store_object>())).object
9744                as *const _ as usize
9745        },
9746        0usize,
9747        concat!(
9748            "Offset of field: ",
9749            stringify!(_zend_object_store_bucket__store_bucket__store_object),
9750            "::",
9751            stringify!(object)
9752        )
9753    );
9754    assert_eq!(
9755        unsafe {
9756            &(*(::std::ptr::null::<_zend_object_store_bucket__store_bucket__store_object>())).dtor
9757                as *const _ as usize
9758        },
9759        8usize,
9760        concat!(
9761            "Offset of field: ",
9762            stringify!(_zend_object_store_bucket__store_bucket__store_object),
9763            "::",
9764            stringify!(dtor)
9765        )
9766    );
9767    assert_eq!(
9768        unsafe {
9769            &(*(::std::ptr::null::<_zend_object_store_bucket__store_bucket__store_object>()))
9770                .free_storage as *const _ as usize
9771        },
9772        16usize,
9773        concat!(
9774            "Offset of field: ",
9775            stringify!(_zend_object_store_bucket__store_bucket__store_object),
9776            "::",
9777            stringify!(free_storage)
9778        )
9779    );
9780    assert_eq!(
9781        unsafe {
9782            &(*(::std::ptr::null::<_zend_object_store_bucket__store_bucket__store_object>())).clone
9783                as *const _ as usize
9784        },
9785        24usize,
9786        concat!(
9787            "Offset of field: ",
9788            stringify!(_zend_object_store_bucket__store_bucket__store_object),
9789            "::",
9790            stringify!(clone)
9791        )
9792    );
9793    assert_eq!(
9794        unsafe {
9795            &(*(::std::ptr::null::<_zend_object_store_bucket__store_bucket__store_object>()))
9796                .handlers as *const _ as usize
9797        },
9798        32usize,
9799        concat!(
9800            "Offset of field: ",
9801            stringify!(_zend_object_store_bucket__store_bucket__store_object),
9802            "::",
9803            stringify!(handlers)
9804        )
9805    );
9806    assert_eq!(
9807        unsafe {
9808            &(*(::std::ptr::null::<_zend_object_store_bucket__store_bucket__store_object>()))
9809                .refcount as *const _ as usize
9810        },
9811        40usize,
9812        concat!(
9813            "Offset of field: ",
9814            stringify!(_zend_object_store_bucket__store_bucket__store_object),
9815            "::",
9816            stringify!(refcount)
9817        )
9818    );
9819    assert_eq!(
9820        unsafe {
9821            &(*(::std::ptr::null::<_zend_object_store_bucket__store_bucket__store_object>()))
9822                .buffered as *const _ as usize
9823        },
9824        48usize,
9825        concat!(
9826            "Offset of field: ",
9827            stringify!(_zend_object_store_bucket__store_bucket__store_object),
9828            "::",
9829            stringify!(buffered)
9830        )
9831    );
9832}
9833#[repr(C)]
9834#[derive(Debug, Copy, Clone)]
9835pub struct _zend_object_store_bucket__store_bucket__bindgen_ty_1 {
9836    pub next: ::std::os::raw::c_int,
9837}
9838#[test]
9839fn bindgen_test_layout__zend_object_store_bucket__store_bucket__bindgen_ty_1() {
9840    assert_eq!(
9841        ::std::mem::size_of::<_zend_object_store_bucket__store_bucket__bindgen_ty_1>(),
9842        4usize,
9843        concat!(
9844            "Size of: ",
9845            stringify!(_zend_object_store_bucket__store_bucket__bindgen_ty_1)
9846        )
9847    );
9848    assert_eq!(
9849        ::std::mem::align_of::<_zend_object_store_bucket__store_bucket__bindgen_ty_1>(),
9850        4usize,
9851        concat!(
9852            "Alignment of ",
9853            stringify!(_zend_object_store_bucket__store_bucket__bindgen_ty_1)
9854        )
9855    );
9856    assert_eq!(
9857        unsafe {
9858            &(*(::std::ptr::null::<_zend_object_store_bucket__store_bucket__bindgen_ty_1>())).next
9859                as *const _ as usize
9860        },
9861        0usize,
9862        concat!(
9863            "Offset of field: ",
9864            stringify!(_zend_object_store_bucket__store_bucket__bindgen_ty_1),
9865            "::",
9866            stringify!(next)
9867        )
9868    );
9869}
9870#[test]
9871fn bindgen_test_layout__zend_object_store_bucket__store_bucket() {
9872    assert_eq!(
9873        ::std::mem::size_of::<_zend_object_store_bucket__store_bucket>(),
9874        56usize,
9875        concat!(
9876            "Size of: ",
9877            stringify!(_zend_object_store_bucket__store_bucket)
9878        )
9879    );
9880    assert_eq!(
9881        ::std::mem::align_of::<_zend_object_store_bucket__store_bucket>(),
9882        8usize,
9883        concat!(
9884            "Alignment of ",
9885            stringify!(_zend_object_store_bucket__store_bucket)
9886        )
9887    );
9888    assert_eq!(
9889        unsafe {
9890            &(*(::std::ptr::null::<_zend_object_store_bucket__store_bucket>())).obj as *const _
9891                as usize
9892        },
9893        0usize,
9894        concat!(
9895            "Offset of field: ",
9896            stringify!(_zend_object_store_bucket__store_bucket),
9897            "::",
9898            stringify!(obj)
9899        )
9900    );
9901    assert_eq!(
9902        unsafe {
9903            &(*(::std::ptr::null::<_zend_object_store_bucket__store_bucket>())).free_list
9904                as *const _ as usize
9905        },
9906        0usize,
9907        concat!(
9908            "Offset of field: ",
9909            stringify!(_zend_object_store_bucket__store_bucket),
9910            "::",
9911            stringify!(free_list)
9912        )
9913    );
9914}
9915#[test]
9916fn bindgen_test_layout__zend_object_store_bucket() {
9917    assert_eq!(
9918        ::std::mem::size_of::<_zend_object_store_bucket>(),
9919        64usize,
9920        concat!("Size of: ", stringify!(_zend_object_store_bucket))
9921    );
9922    assert_eq!(
9923        ::std::mem::align_of::<_zend_object_store_bucket>(),
9924        8usize,
9925        concat!("Alignment of ", stringify!(_zend_object_store_bucket))
9926    );
9927    assert_eq!(
9928        unsafe {
9929            &(*(::std::ptr::null::<_zend_object_store_bucket>())).destructor_called as *const _
9930                as usize
9931        },
9932        0usize,
9933        concat!(
9934            "Offset of field: ",
9935            stringify!(_zend_object_store_bucket),
9936            "::",
9937            stringify!(destructor_called)
9938        )
9939    );
9940    assert_eq!(
9941        unsafe { &(*(::std::ptr::null::<_zend_object_store_bucket>())).valid as *const _ as usize },
9942        1usize,
9943        concat!(
9944            "Offset of field: ",
9945            stringify!(_zend_object_store_bucket),
9946            "::",
9947            stringify!(valid)
9948        )
9949    );
9950    assert_eq!(
9951        unsafe {
9952            &(*(::std::ptr::null::<_zend_object_store_bucket>())).apply_count as *const _ as usize
9953        },
9954        2usize,
9955        concat!(
9956            "Offset of field: ",
9957            stringify!(_zend_object_store_bucket),
9958            "::",
9959            stringify!(apply_count)
9960        )
9961    );
9962    assert_eq!(
9963        unsafe {
9964            &(*(::std::ptr::null::<_zend_object_store_bucket>())).bucket as *const _ as usize
9965        },
9966        8usize,
9967        concat!(
9968            "Offset of field: ",
9969            stringify!(_zend_object_store_bucket),
9970            "::",
9971            stringify!(bucket)
9972        )
9973    );
9974}
9975pub type zend_object_store_bucket = _zend_object_store_bucket;
9976#[repr(C)]
9977#[derive(Debug, Copy, Clone)]
9978pub struct _zend_objects_store {
9979    pub object_buckets: *mut zend_object_store_bucket,
9980    pub top: zend_uint,
9981    pub size: zend_uint,
9982    pub free_list_head: ::std::os::raw::c_int,
9983}
9984#[test]
9985fn bindgen_test_layout__zend_objects_store() {
9986    assert_eq!(
9987        ::std::mem::size_of::<_zend_objects_store>(),
9988        24usize,
9989        concat!("Size of: ", stringify!(_zend_objects_store))
9990    );
9991    assert_eq!(
9992        ::std::mem::align_of::<_zend_objects_store>(),
9993        8usize,
9994        concat!("Alignment of ", stringify!(_zend_objects_store))
9995    );
9996    assert_eq!(
9997        unsafe {
9998            &(*(::std::ptr::null::<_zend_objects_store>())).object_buckets as *const _ as usize
9999        },
10000        0usize,
10001        concat!(
10002            "Offset of field: ",
10003            stringify!(_zend_objects_store),
10004            "::",
10005            stringify!(object_buckets)
10006        )
10007    );
10008    assert_eq!(
10009        unsafe { &(*(::std::ptr::null::<_zend_objects_store>())).top as *const _ as usize },
10010        8usize,
10011        concat!(
10012            "Offset of field: ",
10013            stringify!(_zend_objects_store),
10014            "::",
10015            stringify!(top)
10016        )
10017    );
10018    assert_eq!(
10019        unsafe { &(*(::std::ptr::null::<_zend_objects_store>())).size as *const _ as usize },
10020        12usize,
10021        concat!(
10022            "Offset of field: ",
10023            stringify!(_zend_objects_store),
10024            "::",
10025            stringify!(size)
10026        )
10027    );
10028    assert_eq!(
10029        unsafe {
10030            &(*(::std::ptr::null::<_zend_objects_store>())).free_list_head as *const _ as usize
10031        },
10032        16usize,
10033        concat!(
10034            "Offset of field: ",
10035            stringify!(_zend_objects_store),
10036            "::",
10037            stringify!(free_list_head)
10038        )
10039    );
10040}
10041pub type zend_objects_store = _zend_objects_store;
10042extern "C" {
10043    pub fn zend_objects_store_init(objects: *mut zend_objects_store, init_size: zend_uint);
10044}
10045extern "C" {
10046    pub fn zend_objects_store_call_destructors(
10047        objects: *mut zend_objects_store,
10048        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10049    );
10050}
10051extern "C" {
10052    pub fn zend_objects_store_mark_destructed(
10053        objects: *mut zend_objects_store,
10054        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10055    );
10056}
10057extern "C" {
10058    pub fn zend_objects_store_destroy(objects: *mut zend_objects_store);
10059}
10060extern "C" {
10061    pub fn zend_objects_store_put(
10062        object: *mut ::std::os::raw::c_void,
10063        dtor: zend_objects_store_dtor_t,
10064        storage: zend_objects_free_object_storage_t,
10065        clone: zend_objects_store_clone_t,
10066        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10067    ) -> zend_object_handle;
10068}
10069extern "C" {
10070    pub fn zend_objects_store_add_ref(
10071        object: *mut zval,
10072        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10073    );
10074}
10075extern "C" {
10076    pub fn zend_objects_store_del_ref(
10077        object: *mut zval,
10078        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10079    );
10080}
10081extern "C" {
10082    pub fn zend_objects_store_add_ref_by_handle(
10083        handle: zend_object_handle,
10084        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10085    );
10086}
10087extern "C" {
10088    pub fn zend_objects_store_del_ref_by_handle_ex(
10089        handle: zend_object_handle,
10090        handlers: *const zend_object_handlers,
10091        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10092    );
10093}
10094extern "C" {
10095    pub fn zend_objects_store_get_refcount(
10096        object: *mut zval,
10097        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10098    ) -> zend_uint;
10099}
10100extern "C" {
10101    pub fn zend_objects_store_clone_obj(
10102        object: *mut zval,
10103        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10104    ) -> zend_object_value;
10105}
10106extern "C" {
10107    pub fn zend_object_store_get_object(
10108        object: *const zval,
10109        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10110    ) -> *mut ::std::os::raw::c_void;
10111}
10112extern "C" {
10113    pub fn zend_object_store_get_object_by_handle(
10114        handle: zend_object_handle,
10115        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10116    ) -> *mut ::std::os::raw::c_void;
10117}
10118extern "C" {
10119    pub fn zend_object_store_set_object(
10120        zobject: *mut zval,
10121        object: *mut ::std::os::raw::c_void,
10122        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10123    );
10124}
10125extern "C" {
10126    pub fn zend_object_store_ctor_failed(
10127        zobject: *mut zval,
10128        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10129    );
10130}
10131extern "C" {
10132    pub fn zend_objects_store_free_object_storage(
10133        objects: *mut zend_objects_store,
10134        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10135    );
10136}
10137extern "C" {
10138    pub fn zend_object_create_proxy(
10139        object: *mut zval,
10140        member: *mut zval,
10141        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10142    ) -> *mut zval;
10143}
10144extern "C" {
10145    pub fn zend_get_std_object_handlers() -> *mut zend_object_handlers;
10146}
10147extern "C" {
10148    pub fn zend_init_fpu(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
10149}
10150extern "C" {
10151    pub fn zend_shutdown_fpu(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
10152}
10153extern "C" {
10154    pub fn zend_ensure_fpu_mode(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
10155}
10156pub type fpu_control_t = ::std::os::raw::c_ushort;
10157#[repr(C)]
10158#[derive(Debug, Copy, Clone)]
10159pub struct _zend_encoding {
10160    _unused: [u8; 0],
10161}
10162pub type zend_encoding = _zend_encoding;
10163pub type zend_encoding_filter = ::std::option::Option<
10164    unsafe extern "C" fn(
10165        str_: *mut *mut ::std::os::raw::c_uchar,
10166        str_length: *mut size_t,
10167        buf: *const ::std::os::raw::c_uchar,
10168        length: size_t,
10169        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10170    ) -> size_t,
10171>;
10172pub type zend_encoding_fetcher = ::std::option::Option<
10173    unsafe extern "C" fn(
10174        encoding_name: *const ::std::os::raw::c_char,
10175        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10176    ) -> *const zend_encoding,
10177>;
10178pub type zend_encoding_name_getter = ::std::option::Option<
10179    unsafe extern "C" fn(encoding: *const zend_encoding) -> *const ::std::os::raw::c_char,
10180>;
10181pub type zend_encoding_lexer_compatibility_checker = ::std::option::Option<
10182    unsafe extern "C" fn(encoding: *const zend_encoding) -> ::std::os::raw::c_int,
10183>;
10184pub type zend_encoding_detector = ::std::option::Option<
10185    unsafe extern "C" fn(
10186        string: *const ::std::os::raw::c_uchar,
10187        length: size_t,
10188        list: *mut *const zend_encoding,
10189        list_size: size_t,
10190        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10191    ) -> *const zend_encoding,
10192>;
10193pub type zend_encoding_converter = ::std::option::Option<
10194    unsafe extern "C" fn(
10195        to: *mut *mut ::std::os::raw::c_uchar,
10196        to_length: *mut size_t,
10197        from: *const ::std::os::raw::c_uchar,
10198        from_length: size_t,
10199        encoding_to: *const zend_encoding,
10200        encoding_from: *const zend_encoding,
10201        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10202    ) -> size_t,
10203>;
10204pub type zend_encoding_list_parser = ::std::option::Option<
10205    unsafe extern "C" fn(
10206        encoding_list: *const ::std::os::raw::c_char,
10207        encoding_list_len: size_t,
10208        return_list: *mut *mut *const zend_encoding,
10209        return_size: *mut size_t,
10210        persistent: ::std::os::raw::c_int,
10211        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10212    ) -> ::std::os::raw::c_int,
10213>;
10214pub type zend_encoding_internal_encoding_getter = ::std::option::Option<
10215    unsafe extern "C" fn(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void) -> *const zend_encoding,
10216>;
10217pub type zend_encoding_internal_encoding_setter = ::std::option::Option<
10218    unsafe extern "C" fn(
10219        encoding: *const zend_encoding,
10220        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10221    ) -> ::std::os::raw::c_int,
10222>;
10223#[repr(C)]
10224#[derive(Debug, Copy, Clone)]
10225pub struct _zend_multibyte_functions {
10226    pub provider_name: *const ::std::os::raw::c_char,
10227    pub encoding_fetcher: zend_encoding_fetcher,
10228    pub encoding_name_getter: zend_encoding_name_getter,
10229    pub lexer_compatibility_checker: zend_encoding_lexer_compatibility_checker,
10230    pub encoding_detector: zend_encoding_detector,
10231    pub encoding_converter: zend_encoding_converter,
10232    pub encoding_list_parser: zend_encoding_list_parser,
10233    pub internal_encoding_getter: zend_encoding_internal_encoding_getter,
10234    pub internal_encoding_setter: zend_encoding_internal_encoding_setter,
10235}
10236#[test]
10237fn bindgen_test_layout__zend_multibyte_functions() {
10238    assert_eq!(
10239        ::std::mem::size_of::<_zend_multibyte_functions>(),
10240        72usize,
10241        concat!("Size of: ", stringify!(_zend_multibyte_functions))
10242    );
10243    assert_eq!(
10244        ::std::mem::align_of::<_zend_multibyte_functions>(),
10245        8usize,
10246        concat!("Alignment of ", stringify!(_zend_multibyte_functions))
10247    );
10248    assert_eq!(
10249        unsafe {
10250            &(*(::std::ptr::null::<_zend_multibyte_functions>())).provider_name as *const _ as usize
10251        },
10252        0usize,
10253        concat!(
10254            "Offset of field: ",
10255            stringify!(_zend_multibyte_functions),
10256            "::",
10257            stringify!(provider_name)
10258        )
10259    );
10260    assert_eq!(
10261        unsafe {
10262            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_fetcher as *const _
10263                as usize
10264        },
10265        8usize,
10266        concat!(
10267            "Offset of field: ",
10268            stringify!(_zend_multibyte_functions),
10269            "::",
10270            stringify!(encoding_fetcher)
10271        )
10272    );
10273    assert_eq!(
10274        unsafe {
10275            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_name_getter as *const _
10276                as usize
10277        },
10278        16usize,
10279        concat!(
10280            "Offset of field: ",
10281            stringify!(_zend_multibyte_functions),
10282            "::",
10283            stringify!(encoding_name_getter)
10284        )
10285    );
10286    assert_eq!(
10287        unsafe {
10288            &(*(::std::ptr::null::<_zend_multibyte_functions>())).lexer_compatibility_checker
10289                as *const _ as usize
10290        },
10291        24usize,
10292        concat!(
10293            "Offset of field: ",
10294            stringify!(_zend_multibyte_functions),
10295            "::",
10296            stringify!(lexer_compatibility_checker)
10297        )
10298    );
10299    assert_eq!(
10300        unsafe {
10301            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_detector as *const _
10302                as usize
10303        },
10304        32usize,
10305        concat!(
10306            "Offset of field: ",
10307            stringify!(_zend_multibyte_functions),
10308            "::",
10309            stringify!(encoding_detector)
10310        )
10311    );
10312    assert_eq!(
10313        unsafe {
10314            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_converter as *const _
10315                as usize
10316        },
10317        40usize,
10318        concat!(
10319            "Offset of field: ",
10320            stringify!(_zend_multibyte_functions),
10321            "::",
10322            stringify!(encoding_converter)
10323        )
10324    );
10325    assert_eq!(
10326        unsafe {
10327            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_list_parser as *const _
10328                as usize
10329        },
10330        48usize,
10331        concat!(
10332            "Offset of field: ",
10333            stringify!(_zend_multibyte_functions),
10334            "::",
10335            stringify!(encoding_list_parser)
10336        )
10337    );
10338    assert_eq!(
10339        unsafe {
10340            &(*(::std::ptr::null::<_zend_multibyte_functions>())).internal_encoding_getter
10341                as *const _ as usize
10342        },
10343        56usize,
10344        concat!(
10345            "Offset of field: ",
10346            stringify!(_zend_multibyte_functions),
10347            "::",
10348            stringify!(internal_encoding_getter)
10349        )
10350    );
10351    assert_eq!(
10352        unsafe {
10353            &(*(::std::ptr::null::<_zend_multibyte_functions>())).internal_encoding_setter
10354                as *const _ as usize
10355        },
10356        64usize,
10357        concat!(
10358            "Offset of field: ",
10359            stringify!(_zend_multibyte_functions),
10360            "::",
10361            stringify!(internal_encoding_setter)
10362        )
10363    );
10364}
10365pub type zend_multibyte_functions = _zend_multibyte_functions;
10366extern "C" {
10367    pub static mut zend_multibyte_encoding_utf32be: *const zend_encoding;
10368}
10369extern "C" {
10370    pub static mut zend_multibyte_encoding_utf32le: *const zend_encoding;
10371}
10372extern "C" {
10373    pub static mut zend_multibyte_encoding_utf16be: *const zend_encoding;
10374}
10375extern "C" {
10376    pub static mut zend_multibyte_encoding_utf16le: *const zend_encoding;
10377}
10378extern "C" {
10379    pub static mut zend_multibyte_encoding_utf8: *const zend_encoding;
10380}
10381extern "C" {
10382    pub fn zend_multibyte_set_functions(
10383        functions: *const zend_multibyte_functions,
10384        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10385    ) -> ::std::os::raw::c_int;
10386}
10387extern "C" {
10388    pub fn zend_multibyte_get_functions(
10389        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10390    ) -> *const zend_multibyte_functions;
10391}
10392extern "C" {
10393    pub fn zend_multibyte_fetch_encoding(
10394        name: *const ::std::os::raw::c_char,
10395        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10396    ) -> *const zend_encoding;
10397}
10398extern "C" {
10399    pub fn zend_multibyte_get_encoding_name(
10400        encoding: *const zend_encoding,
10401    ) -> *const ::std::os::raw::c_char;
10402}
10403extern "C" {
10404    pub fn zend_multibyte_check_lexer_compatibility(
10405        encoding: *const zend_encoding,
10406    ) -> ::std::os::raw::c_int;
10407}
10408extern "C" {
10409    pub fn zend_multibyte_encoding_detector(
10410        string: *const ::std::os::raw::c_uchar,
10411        length: size_t,
10412        list: *mut *const zend_encoding,
10413        list_size: size_t,
10414        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10415    ) -> *const zend_encoding;
10416}
10417extern "C" {
10418    pub fn zend_multibyte_encoding_converter(
10419        to: *mut *mut ::std::os::raw::c_uchar,
10420        to_length: *mut size_t,
10421        from: *const ::std::os::raw::c_uchar,
10422        from_length: size_t,
10423        encoding_to: *const zend_encoding,
10424        encoding_from: *const zend_encoding,
10425        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10426    ) -> size_t;
10427}
10428extern "C" {
10429    pub fn zend_multibyte_parse_encoding_list(
10430        encoding_list: *const ::std::os::raw::c_char,
10431        encoding_list_len: size_t,
10432        return_list: *mut *mut *const zend_encoding,
10433        return_size: *mut size_t,
10434        persistent: ::std::os::raw::c_int,
10435        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10436    ) -> ::std::os::raw::c_int;
10437}
10438extern "C" {
10439    pub fn zend_multibyte_get_internal_encoding(
10440        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10441    ) -> *const zend_encoding;
10442}
10443extern "C" {
10444    pub fn zend_multibyte_get_script_encoding(
10445        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10446    ) -> *const zend_encoding;
10447}
10448extern "C" {
10449    pub fn zend_multibyte_set_script_encoding(
10450        encoding_list: *mut *const zend_encoding,
10451        encoding_list_size: size_t,
10452        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10453    ) -> ::std::os::raw::c_int;
10454}
10455extern "C" {
10456    pub fn zend_multibyte_set_internal_encoding(
10457        encoding: *const zend_encoding,
10458        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10459    ) -> ::std::os::raw::c_int;
10460}
10461extern "C" {
10462    pub fn zend_multibyte_set_script_encoding_by_string(
10463        new_value: *const ::std::os::raw::c_char,
10464        new_value_length: size_t,
10465        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
10466    ) -> ::std::os::raw::c_int;
10467}
10468#[repr(C)]
10469#[derive(Copy, Clone)]
10470pub struct _zend_declarables {
10471    pub ticks: zval,
10472}
10473#[test]
10474fn bindgen_test_layout__zend_declarables() {
10475    assert_eq!(
10476        ::std::mem::size_of::<_zend_declarables>(),
10477        24usize,
10478        concat!("Size of: ", stringify!(_zend_declarables))
10479    );
10480    assert_eq!(
10481        ::std::mem::align_of::<_zend_declarables>(),
10482        8usize,
10483        concat!("Alignment of ", stringify!(_zend_declarables))
10484    );
10485    assert_eq!(
10486        unsafe { &(*(::std::ptr::null::<_zend_declarables>())).ticks as *const _ as usize },
10487        0usize,
10488        concat!(
10489            "Offset of field: ",
10490            stringify!(_zend_declarables),
10491            "::",
10492            stringify!(ticks)
10493        )
10494    );
10495}
10496pub type zend_declarables = _zend_declarables;
10497pub type zend_vm_stack = *mut _zend_vm_stack;
10498pub type zend_ini_entry = _zend_ini_entry;
10499#[repr(C)]
10500#[derive(Copy, Clone)]
10501pub struct _zend_compiler_globals {
10502    pub bp_stack: zend_stack,
10503    pub switch_cond_stack: zend_stack,
10504    pub foreach_copy_stack: zend_stack,
10505    pub object_stack: zend_stack,
10506    pub declare_stack: zend_stack,
10507    pub active_class_entry: *mut zend_class_entry,
10508    pub list_llist: zend_llist,
10509    pub dimension_llist: zend_llist,
10510    pub list_stack: zend_stack,
10511    pub function_call_stack: zend_stack,
10512    pub compiled_filename: *mut ::std::os::raw::c_char,
10513    pub zend_lineno: ::std::os::raw::c_int,
10514    pub active_op_array: *mut zend_op_array,
10515    pub function_table: *mut HashTable,
10516    pub class_table: *mut HashTable,
10517    pub filenames_table: HashTable,
10518    pub auto_globals: *mut HashTable,
10519    pub parse_error: zend_bool,
10520    pub in_compilation: zend_bool,
10521    pub short_tags: zend_bool,
10522    pub asp_tags: zend_bool,
10523    pub declarables: zend_declarables,
10524    pub unclean_shutdown: zend_bool,
10525    pub ini_parser_unbuffered_errors: zend_bool,
10526    pub open_files: zend_llist,
10527    pub catch_begin: ::std::os::raw::c_long,
10528    pub ini_parser_param: *mut _zend_ini_parser_param,
10529    pub interactive: ::std::os::raw::c_int,
10530    pub start_lineno: zend_uint,
10531    pub increment_lineno: zend_bool,
10532    pub implementing_class: znode,
10533    pub access_type: zend_uint,
10534    pub doc_comment: *mut ::std::os::raw::c_char,
10535    pub doc_comment_len: zend_uint,
10536    pub compiler_options: zend_uint,
10537    pub current_namespace: *mut zval,
10538    pub current_import: *mut HashTable,
10539    pub current_import_function: *mut HashTable,
10540    pub current_import_const: *mut HashTable,
10541    pub in_namespace: zend_bool,
10542    pub has_bracketed_namespaces: zend_bool,
10543    pub const_filenames: HashTable,
10544    pub context: zend_compiler_context,
10545    pub context_stack: zend_stack,
10546    pub interned_strings_start: *mut ::std::os::raw::c_char,
10547    pub interned_strings_end: *mut ::std::os::raw::c_char,
10548    pub interned_strings_top: *mut ::std::os::raw::c_char,
10549    pub interned_strings_snapshot_top: *mut ::std::os::raw::c_char,
10550    pub interned_strings: HashTable,
10551    pub script_encoding_list: *mut *const zend_encoding,
10552    pub script_encoding_list_size: size_t,
10553    pub multibyte: zend_bool,
10554    pub detect_unicode: zend_bool,
10555    pub encoding_declared: zend_bool,
10556    pub static_members_table: *mut *mut *mut zval,
10557    pub last_static_member: ::std::os::raw::c_int,
10558}
10559#[test]
10560fn bindgen_test_layout__zend_compiler_globals() {
10561    assert_eq!(
10562        ::std::mem::size_of::<_zend_compiler_globals>(),
10563        856usize,
10564        concat!("Size of: ", stringify!(_zend_compiler_globals))
10565    );
10566    assert_eq!(
10567        ::std::mem::align_of::<_zend_compiler_globals>(),
10568        8usize,
10569        concat!("Alignment of ", stringify!(_zend_compiler_globals))
10570    );
10571    assert_eq!(
10572        unsafe { &(*(::std::ptr::null::<_zend_compiler_globals>())).bp_stack as *const _ as usize },
10573        0usize,
10574        concat!(
10575            "Offset of field: ",
10576            stringify!(_zend_compiler_globals),
10577            "::",
10578            stringify!(bp_stack)
10579        )
10580    );
10581    assert_eq!(
10582        unsafe {
10583            &(*(::std::ptr::null::<_zend_compiler_globals>())).switch_cond_stack as *const _
10584                as usize
10585        },
10586        16usize,
10587        concat!(
10588            "Offset of field: ",
10589            stringify!(_zend_compiler_globals),
10590            "::",
10591            stringify!(switch_cond_stack)
10592        )
10593    );
10594    assert_eq!(
10595        unsafe {
10596            &(*(::std::ptr::null::<_zend_compiler_globals>())).foreach_copy_stack as *const _
10597                as usize
10598        },
10599        32usize,
10600        concat!(
10601            "Offset of field: ",
10602            stringify!(_zend_compiler_globals),
10603            "::",
10604            stringify!(foreach_copy_stack)
10605        )
10606    );
10607    assert_eq!(
10608        unsafe {
10609            &(*(::std::ptr::null::<_zend_compiler_globals>())).object_stack as *const _ as usize
10610        },
10611        48usize,
10612        concat!(
10613            "Offset of field: ",
10614            stringify!(_zend_compiler_globals),
10615            "::",
10616            stringify!(object_stack)
10617        )
10618    );
10619    assert_eq!(
10620        unsafe {
10621            &(*(::std::ptr::null::<_zend_compiler_globals>())).declare_stack as *const _ as usize
10622        },
10623        64usize,
10624        concat!(
10625            "Offset of field: ",
10626            stringify!(_zend_compiler_globals),
10627            "::",
10628            stringify!(declare_stack)
10629        )
10630    );
10631    assert_eq!(
10632        unsafe {
10633            &(*(::std::ptr::null::<_zend_compiler_globals>())).active_class_entry as *const _
10634                as usize
10635        },
10636        80usize,
10637        concat!(
10638            "Offset of field: ",
10639            stringify!(_zend_compiler_globals),
10640            "::",
10641            stringify!(active_class_entry)
10642        )
10643    );
10644    assert_eq!(
10645        unsafe {
10646            &(*(::std::ptr::null::<_zend_compiler_globals>())).list_llist as *const _ as usize
10647        },
10648        88usize,
10649        concat!(
10650            "Offset of field: ",
10651            stringify!(_zend_compiler_globals),
10652            "::",
10653            stringify!(list_llist)
10654        )
10655    );
10656    assert_eq!(
10657        unsafe {
10658            &(*(::std::ptr::null::<_zend_compiler_globals>())).dimension_llist as *const _ as usize
10659        },
10660        144usize,
10661        concat!(
10662            "Offset of field: ",
10663            stringify!(_zend_compiler_globals),
10664            "::",
10665            stringify!(dimension_llist)
10666        )
10667    );
10668    assert_eq!(
10669        unsafe {
10670            &(*(::std::ptr::null::<_zend_compiler_globals>())).list_stack as *const _ as usize
10671        },
10672        200usize,
10673        concat!(
10674            "Offset of field: ",
10675            stringify!(_zend_compiler_globals),
10676            "::",
10677            stringify!(list_stack)
10678        )
10679    );
10680    assert_eq!(
10681        unsafe {
10682            &(*(::std::ptr::null::<_zend_compiler_globals>())).function_call_stack as *const _
10683                as usize
10684        },
10685        216usize,
10686        concat!(
10687            "Offset of field: ",
10688            stringify!(_zend_compiler_globals),
10689            "::",
10690            stringify!(function_call_stack)
10691        )
10692    );
10693    assert_eq!(
10694        unsafe {
10695            &(*(::std::ptr::null::<_zend_compiler_globals>())).compiled_filename as *const _
10696                as usize
10697        },
10698        232usize,
10699        concat!(
10700            "Offset of field: ",
10701            stringify!(_zend_compiler_globals),
10702            "::",
10703            stringify!(compiled_filename)
10704        )
10705    );
10706    assert_eq!(
10707        unsafe {
10708            &(*(::std::ptr::null::<_zend_compiler_globals>())).zend_lineno as *const _ as usize
10709        },
10710        240usize,
10711        concat!(
10712            "Offset of field: ",
10713            stringify!(_zend_compiler_globals),
10714            "::",
10715            stringify!(zend_lineno)
10716        )
10717    );
10718    assert_eq!(
10719        unsafe {
10720            &(*(::std::ptr::null::<_zend_compiler_globals>())).active_op_array as *const _ as usize
10721        },
10722        248usize,
10723        concat!(
10724            "Offset of field: ",
10725            stringify!(_zend_compiler_globals),
10726            "::",
10727            stringify!(active_op_array)
10728        )
10729    );
10730    assert_eq!(
10731        unsafe {
10732            &(*(::std::ptr::null::<_zend_compiler_globals>())).function_table as *const _ as usize
10733        },
10734        256usize,
10735        concat!(
10736            "Offset of field: ",
10737            stringify!(_zend_compiler_globals),
10738            "::",
10739            stringify!(function_table)
10740        )
10741    );
10742    assert_eq!(
10743        unsafe {
10744            &(*(::std::ptr::null::<_zend_compiler_globals>())).class_table as *const _ as usize
10745        },
10746        264usize,
10747        concat!(
10748            "Offset of field: ",
10749            stringify!(_zend_compiler_globals),
10750            "::",
10751            stringify!(class_table)
10752        )
10753    );
10754    assert_eq!(
10755        unsafe {
10756            &(*(::std::ptr::null::<_zend_compiler_globals>())).filenames_table as *const _ as usize
10757        },
10758        272usize,
10759        concat!(
10760            "Offset of field: ",
10761            stringify!(_zend_compiler_globals),
10762            "::",
10763            stringify!(filenames_table)
10764        )
10765    );
10766    assert_eq!(
10767        unsafe {
10768            &(*(::std::ptr::null::<_zend_compiler_globals>())).auto_globals as *const _ as usize
10769        },
10770        344usize,
10771        concat!(
10772            "Offset of field: ",
10773            stringify!(_zend_compiler_globals),
10774            "::",
10775            stringify!(auto_globals)
10776        )
10777    );
10778    assert_eq!(
10779        unsafe {
10780            &(*(::std::ptr::null::<_zend_compiler_globals>())).parse_error as *const _ as usize
10781        },
10782        352usize,
10783        concat!(
10784            "Offset of field: ",
10785            stringify!(_zend_compiler_globals),
10786            "::",
10787            stringify!(parse_error)
10788        )
10789    );
10790    assert_eq!(
10791        unsafe {
10792            &(*(::std::ptr::null::<_zend_compiler_globals>())).in_compilation as *const _ as usize
10793        },
10794        353usize,
10795        concat!(
10796            "Offset of field: ",
10797            stringify!(_zend_compiler_globals),
10798            "::",
10799            stringify!(in_compilation)
10800        )
10801    );
10802    assert_eq!(
10803        unsafe {
10804            &(*(::std::ptr::null::<_zend_compiler_globals>())).short_tags as *const _ as usize
10805        },
10806        354usize,
10807        concat!(
10808            "Offset of field: ",
10809            stringify!(_zend_compiler_globals),
10810            "::",
10811            stringify!(short_tags)
10812        )
10813    );
10814    assert_eq!(
10815        unsafe { &(*(::std::ptr::null::<_zend_compiler_globals>())).asp_tags as *const _ as usize },
10816        355usize,
10817        concat!(
10818            "Offset of field: ",
10819            stringify!(_zend_compiler_globals),
10820            "::",
10821            stringify!(asp_tags)
10822        )
10823    );
10824    assert_eq!(
10825        unsafe {
10826            &(*(::std::ptr::null::<_zend_compiler_globals>())).declarables as *const _ as usize
10827        },
10828        360usize,
10829        concat!(
10830            "Offset of field: ",
10831            stringify!(_zend_compiler_globals),
10832            "::",
10833            stringify!(declarables)
10834        )
10835    );
10836    assert_eq!(
10837        unsafe {
10838            &(*(::std::ptr::null::<_zend_compiler_globals>())).unclean_shutdown as *const _ as usize
10839        },
10840        384usize,
10841        concat!(
10842            "Offset of field: ",
10843            stringify!(_zend_compiler_globals),
10844            "::",
10845            stringify!(unclean_shutdown)
10846        )
10847    );
10848    assert_eq!(
10849        unsafe {
10850            &(*(::std::ptr::null::<_zend_compiler_globals>())).ini_parser_unbuffered_errors
10851                as *const _ as usize
10852        },
10853        385usize,
10854        concat!(
10855            "Offset of field: ",
10856            stringify!(_zend_compiler_globals),
10857            "::",
10858            stringify!(ini_parser_unbuffered_errors)
10859        )
10860    );
10861    assert_eq!(
10862        unsafe {
10863            &(*(::std::ptr::null::<_zend_compiler_globals>())).open_files as *const _ as usize
10864        },
10865        392usize,
10866        concat!(
10867            "Offset of field: ",
10868            stringify!(_zend_compiler_globals),
10869            "::",
10870            stringify!(open_files)
10871        )
10872    );
10873    assert_eq!(
10874        unsafe {
10875            &(*(::std::ptr::null::<_zend_compiler_globals>())).catch_begin as *const _ as usize
10876        },
10877        448usize,
10878        concat!(
10879            "Offset of field: ",
10880            stringify!(_zend_compiler_globals),
10881            "::",
10882            stringify!(catch_begin)
10883        )
10884    );
10885    assert_eq!(
10886        unsafe {
10887            &(*(::std::ptr::null::<_zend_compiler_globals>())).ini_parser_param as *const _ as usize
10888        },
10889        456usize,
10890        concat!(
10891            "Offset of field: ",
10892            stringify!(_zend_compiler_globals),
10893            "::",
10894            stringify!(ini_parser_param)
10895        )
10896    );
10897    assert_eq!(
10898        unsafe {
10899            &(*(::std::ptr::null::<_zend_compiler_globals>())).interactive as *const _ as usize
10900        },
10901        464usize,
10902        concat!(
10903            "Offset of field: ",
10904            stringify!(_zend_compiler_globals),
10905            "::",
10906            stringify!(interactive)
10907        )
10908    );
10909    assert_eq!(
10910        unsafe {
10911            &(*(::std::ptr::null::<_zend_compiler_globals>())).start_lineno as *const _ as usize
10912        },
10913        468usize,
10914        concat!(
10915            "Offset of field: ",
10916            stringify!(_zend_compiler_globals),
10917            "::",
10918            stringify!(start_lineno)
10919        )
10920    );
10921    assert_eq!(
10922        unsafe {
10923            &(*(::std::ptr::null::<_zend_compiler_globals>())).increment_lineno as *const _ as usize
10924        },
10925        472usize,
10926        concat!(
10927            "Offset of field: ",
10928            stringify!(_zend_compiler_globals),
10929            "::",
10930            stringify!(increment_lineno)
10931        )
10932    );
10933    assert_eq!(
10934        unsafe {
10935            &(*(::std::ptr::null::<_zend_compiler_globals>())).implementing_class as *const _
10936                as usize
10937        },
10938        480usize,
10939        concat!(
10940            "Offset of field: ",
10941            stringify!(_zend_compiler_globals),
10942            "::",
10943            stringify!(implementing_class)
10944        )
10945    );
10946    assert_eq!(
10947        unsafe {
10948            &(*(::std::ptr::null::<_zend_compiler_globals>())).access_type as *const _ as usize
10949        },
10950        520usize,
10951        concat!(
10952            "Offset of field: ",
10953            stringify!(_zend_compiler_globals),
10954            "::",
10955            stringify!(access_type)
10956        )
10957    );
10958    assert_eq!(
10959        unsafe {
10960            &(*(::std::ptr::null::<_zend_compiler_globals>())).doc_comment as *const _ as usize
10961        },
10962        528usize,
10963        concat!(
10964            "Offset of field: ",
10965            stringify!(_zend_compiler_globals),
10966            "::",
10967            stringify!(doc_comment)
10968        )
10969    );
10970    assert_eq!(
10971        unsafe {
10972            &(*(::std::ptr::null::<_zend_compiler_globals>())).doc_comment_len as *const _ as usize
10973        },
10974        536usize,
10975        concat!(
10976            "Offset of field: ",
10977            stringify!(_zend_compiler_globals),
10978            "::",
10979            stringify!(doc_comment_len)
10980        )
10981    );
10982    assert_eq!(
10983        unsafe {
10984            &(*(::std::ptr::null::<_zend_compiler_globals>())).compiler_options as *const _ as usize
10985        },
10986        540usize,
10987        concat!(
10988            "Offset of field: ",
10989            stringify!(_zend_compiler_globals),
10990            "::",
10991            stringify!(compiler_options)
10992        )
10993    );
10994    assert_eq!(
10995        unsafe {
10996            &(*(::std::ptr::null::<_zend_compiler_globals>())).current_namespace as *const _
10997                as usize
10998        },
10999        544usize,
11000        concat!(
11001            "Offset of field: ",
11002            stringify!(_zend_compiler_globals),
11003            "::",
11004            stringify!(current_namespace)
11005        )
11006    );
11007    assert_eq!(
11008        unsafe {
11009            &(*(::std::ptr::null::<_zend_compiler_globals>())).current_import as *const _ as usize
11010        },
11011        552usize,
11012        concat!(
11013            "Offset of field: ",
11014            stringify!(_zend_compiler_globals),
11015            "::",
11016            stringify!(current_import)
11017        )
11018    );
11019    assert_eq!(
11020        unsafe {
11021            &(*(::std::ptr::null::<_zend_compiler_globals>())).current_import_function as *const _
11022                as usize
11023        },
11024        560usize,
11025        concat!(
11026            "Offset of field: ",
11027            stringify!(_zend_compiler_globals),
11028            "::",
11029            stringify!(current_import_function)
11030        )
11031    );
11032    assert_eq!(
11033        unsafe {
11034            &(*(::std::ptr::null::<_zend_compiler_globals>())).current_import_const as *const _
11035                as usize
11036        },
11037        568usize,
11038        concat!(
11039            "Offset of field: ",
11040            stringify!(_zend_compiler_globals),
11041            "::",
11042            stringify!(current_import_const)
11043        )
11044    );
11045    assert_eq!(
11046        unsafe {
11047            &(*(::std::ptr::null::<_zend_compiler_globals>())).in_namespace as *const _ as usize
11048        },
11049        576usize,
11050        concat!(
11051            "Offset of field: ",
11052            stringify!(_zend_compiler_globals),
11053            "::",
11054            stringify!(in_namespace)
11055        )
11056    );
11057    assert_eq!(
11058        unsafe {
11059            &(*(::std::ptr::null::<_zend_compiler_globals>())).has_bracketed_namespaces as *const _
11060                as usize
11061        },
11062        577usize,
11063        concat!(
11064            "Offset of field: ",
11065            stringify!(_zend_compiler_globals),
11066            "::",
11067            stringify!(has_bracketed_namespaces)
11068        )
11069    );
11070    assert_eq!(
11071        unsafe {
11072            &(*(::std::ptr::null::<_zend_compiler_globals>())).const_filenames as *const _ as usize
11073        },
11074        584usize,
11075        concat!(
11076            "Offset of field: ",
11077            stringify!(_zend_compiler_globals),
11078            "::",
11079            stringify!(const_filenames)
11080        )
11081    );
11082    assert_eq!(
11083        unsafe { &(*(::std::ptr::null::<_zend_compiler_globals>())).context as *const _ as usize },
11084        656usize,
11085        concat!(
11086            "Offset of field: ",
11087            stringify!(_zend_compiler_globals),
11088            "::",
11089            stringify!(context)
11090        )
11091    );
11092    assert_eq!(
11093        unsafe {
11094            &(*(::std::ptr::null::<_zend_compiler_globals>())).context_stack as *const _ as usize
11095        },
11096        696usize,
11097        concat!(
11098            "Offset of field: ",
11099            stringify!(_zend_compiler_globals),
11100            "::",
11101            stringify!(context_stack)
11102        )
11103    );
11104    assert_eq!(
11105        unsafe {
11106            &(*(::std::ptr::null::<_zend_compiler_globals>())).interned_strings_start as *const _
11107                as usize
11108        },
11109        712usize,
11110        concat!(
11111            "Offset of field: ",
11112            stringify!(_zend_compiler_globals),
11113            "::",
11114            stringify!(interned_strings_start)
11115        )
11116    );
11117    assert_eq!(
11118        unsafe {
11119            &(*(::std::ptr::null::<_zend_compiler_globals>())).interned_strings_end as *const _
11120                as usize
11121        },
11122        720usize,
11123        concat!(
11124            "Offset of field: ",
11125            stringify!(_zend_compiler_globals),
11126            "::",
11127            stringify!(interned_strings_end)
11128        )
11129    );
11130    assert_eq!(
11131        unsafe {
11132            &(*(::std::ptr::null::<_zend_compiler_globals>())).interned_strings_top as *const _
11133                as usize
11134        },
11135        728usize,
11136        concat!(
11137            "Offset of field: ",
11138            stringify!(_zend_compiler_globals),
11139            "::",
11140            stringify!(interned_strings_top)
11141        )
11142    );
11143    assert_eq!(
11144        unsafe {
11145            &(*(::std::ptr::null::<_zend_compiler_globals>())).interned_strings_snapshot_top
11146                as *const _ as usize
11147        },
11148        736usize,
11149        concat!(
11150            "Offset of field: ",
11151            stringify!(_zend_compiler_globals),
11152            "::",
11153            stringify!(interned_strings_snapshot_top)
11154        )
11155    );
11156    assert_eq!(
11157        unsafe {
11158            &(*(::std::ptr::null::<_zend_compiler_globals>())).interned_strings as *const _ as usize
11159        },
11160        744usize,
11161        concat!(
11162            "Offset of field: ",
11163            stringify!(_zend_compiler_globals),
11164            "::",
11165            stringify!(interned_strings)
11166        )
11167    );
11168    assert_eq!(
11169        unsafe {
11170            &(*(::std::ptr::null::<_zend_compiler_globals>())).script_encoding_list as *const _
11171                as usize
11172        },
11173        816usize,
11174        concat!(
11175            "Offset of field: ",
11176            stringify!(_zend_compiler_globals),
11177            "::",
11178            stringify!(script_encoding_list)
11179        )
11180    );
11181    assert_eq!(
11182        unsafe {
11183            &(*(::std::ptr::null::<_zend_compiler_globals>())).script_encoding_list_size as *const _
11184                as usize
11185        },
11186        824usize,
11187        concat!(
11188            "Offset of field: ",
11189            stringify!(_zend_compiler_globals),
11190            "::",
11191            stringify!(script_encoding_list_size)
11192        )
11193    );
11194    assert_eq!(
11195        unsafe {
11196            &(*(::std::ptr::null::<_zend_compiler_globals>())).multibyte as *const _ as usize
11197        },
11198        832usize,
11199        concat!(
11200            "Offset of field: ",
11201            stringify!(_zend_compiler_globals),
11202            "::",
11203            stringify!(multibyte)
11204        )
11205    );
11206    assert_eq!(
11207        unsafe {
11208            &(*(::std::ptr::null::<_zend_compiler_globals>())).detect_unicode as *const _ as usize
11209        },
11210        833usize,
11211        concat!(
11212            "Offset of field: ",
11213            stringify!(_zend_compiler_globals),
11214            "::",
11215            stringify!(detect_unicode)
11216        )
11217    );
11218    assert_eq!(
11219        unsafe {
11220            &(*(::std::ptr::null::<_zend_compiler_globals>())).encoding_declared as *const _
11221                as usize
11222        },
11223        834usize,
11224        concat!(
11225            "Offset of field: ",
11226            stringify!(_zend_compiler_globals),
11227            "::",
11228            stringify!(encoding_declared)
11229        )
11230    );
11231    assert_eq!(
11232        unsafe {
11233            &(*(::std::ptr::null::<_zend_compiler_globals>())).static_members_table as *const _
11234                as usize
11235        },
11236        840usize,
11237        concat!(
11238            "Offset of field: ",
11239            stringify!(_zend_compiler_globals),
11240            "::",
11241            stringify!(static_members_table)
11242        )
11243    );
11244    assert_eq!(
11245        unsafe {
11246            &(*(::std::ptr::null::<_zend_compiler_globals>())).last_static_member as *const _
11247                as usize
11248        },
11249        848usize,
11250        concat!(
11251            "Offset of field: ",
11252            stringify!(_zend_compiler_globals),
11253            "::",
11254            stringify!(last_static_member)
11255        )
11256    );
11257}
11258#[repr(C)]
11259#[derive(Copy, Clone)]
11260pub struct _zend_executor_globals {
11261    pub return_value_ptr_ptr: *mut *mut zval,
11262    pub uninitialized_zval: zval,
11263    pub uninitialized_zval_ptr: *mut zval,
11264    pub error_zval: zval,
11265    pub error_zval_ptr: *mut zval,
11266    pub symtable_cache: [*mut HashTable; 32usize],
11267    pub symtable_cache_limit: *mut *mut HashTable,
11268    pub symtable_cache_ptr: *mut *mut HashTable,
11269    pub opline_ptr: *mut *mut zend_op,
11270    pub active_symbol_table: *mut HashTable,
11271    pub symbol_table: HashTable,
11272    pub included_files: HashTable,
11273    pub bailout: *mut jmp_buf,
11274    pub error_reporting: ::std::os::raw::c_int,
11275    pub orig_error_reporting: ::std::os::raw::c_int,
11276    pub exit_status: ::std::os::raw::c_int,
11277    pub active_op_array: *mut zend_op_array,
11278    pub function_table: *mut HashTable,
11279    pub class_table: *mut HashTable,
11280    pub zend_constants: *mut HashTable,
11281    pub scope: *mut zend_class_entry,
11282    pub called_scope: *mut zend_class_entry,
11283    pub This: *mut zval,
11284    pub precision: ::std::os::raw::c_long,
11285    pub ticks_count: ::std::os::raw::c_int,
11286    pub in_execution: zend_bool,
11287    pub in_autoload: *mut HashTable,
11288    pub autoload_func: *mut zend_function,
11289    pub full_tables_cleanup: zend_bool,
11290    pub no_extensions: zend_bool,
11291    pub regular_list: HashTable,
11292    pub persistent_list: HashTable,
11293    pub argument_stack: zend_vm_stack,
11294    pub user_error_handler_error_reporting: ::std::os::raw::c_int,
11295    pub user_error_handler: *mut zval,
11296    pub user_exception_handler: *mut zval,
11297    pub user_error_handlers_error_reporting: zend_stack,
11298    pub user_error_handlers: zend_ptr_stack,
11299    pub user_exception_handlers: zend_ptr_stack,
11300    pub error_handling: zend_error_handling_t,
11301    pub exception_class: *mut zend_class_entry,
11302    pub timeout_seconds: ::std::os::raw::c_int,
11303    pub lambda_count: ::std::os::raw::c_int,
11304    pub ini_directives: *mut HashTable,
11305    pub modified_ini_directives: *mut HashTable,
11306    pub error_reporting_ini_entry: *mut zend_ini_entry,
11307    pub objects_store: zend_objects_store,
11308    pub exception: *mut zval,
11309    pub prev_exception: *mut zval,
11310    pub opline_before_exception: *mut zend_op,
11311    pub exception_op: [zend_op; 3usize],
11312    pub current_execute_data: *mut _zend_execute_data,
11313    pub current_module: *mut _zend_module_entry,
11314    pub std_property_info: zend_property_info,
11315    pub active: zend_bool,
11316    pub start_op: *mut zend_op,
11317    pub saved_fpu_cw_ptr: *mut ::std::os::raw::c_void,
11318    pub saved_fpu_cw: fpu_control_t,
11319    pub reserved: [*mut ::std::os::raw::c_void; 4usize],
11320}
11321#[test]
11322fn bindgen_test_layout__zend_executor_globals() {
11323    assert_eq!(
11324        ::std::mem::size_of::<_zend_executor_globals>(),
11325        1264usize,
11326        concat!("Size of: ", stringify!(_zend_executor_globals))
11327    );
11328    assert_eq!(
11329        ::std::mem::align_of::<_zend_executor_globals>(),
11330        8usize,
11331        concat!("Alignment of ", stringify!(_zend_executor_globals))
11332    );
11333    assert_eq!(
11334        unsafe {
11335            &(*(::std::ptr::null::<_zend_executor_globals>())).return_value_ptr_ptr as *const _
11336                as usize
11337        },
11338        0usize,
11339        concat!(
11340            "Offset of field: ",
11341            stringify!(_zend_executor_globals),
11342            "::",
11343            stringify!(return_value_ptr_ptr)
11344        )
11345    );
11346    assert_eq!(
11347        unsafe {
11348            &(*(::std::ptr::null::<_zend_executor_globals>())).uninitialized_zval as *const _
11349                as usize
11350        },
11351        8usize,
11352        concat!(
11353            "Offset of field: ",
11354            stringify!(_zend_executor_globals),
11355            "::",
11356            stringify!(uninitialized_zval)
11357        )
11358    );
11359    assert_eq!(
11360        unsafe {
11361            &(*(::std::ptr::null::<_zend_executor_globals>())).uninitialized_zval_ptr as *const _
11362                as usize
11363        },
11364        32usize,
11365        concat!(
11366            "Offset of field: ",
11367            stringify!(_zend_executor_globals),
11368            "::",
11369            stringify!(uninitialized_zval_ptr)
11370        )
11371    );
11372    assert_eq!(
11373        unsafe {
11374            &(*(::std::ptr::null::<_zend_executor_globals>())).error_zval as *const _ as usize
11375        },
11376        40usize,
11377        concat!(
11378            "Offset of field: ",
11379            stringify!(_zend_executor_globals),
11380            "::",
11381            stringify!(error_zval)
11382        )
11383    );
11384    assert_eq!(
11385        unsafe {
11386            &(*(::std::ptr::null::<_zend_executor_globals>())).error_zval_ptr as *const _ as usize
11387        },
11388        64usize,
11389        concat!(
11390            "Offset of field: ",
11391            stringify!(_zend_executor_globals),
11392            "::",
11393            stringify!(error_zval_ptr)
11394        )
11395    );
11396    assert_eq!(
11397        unsafe {
11398            &(*(::std::ptr::null::<_zend_executor_globals>())).symtable_cache as *const _ as usize
11399        },
11400        72usize,
11401        concat!(
11402            "Offset of field: ",
11403            stringify!(_zend_executor_globals),
11404            "::",
11405            stringify!(symtable_cache)
11406        )
11407    );
11408    assert_eq!(
11409        unsafe {
11410            &(*(::std::ptr::null::<_zend_executor_globals>())).symtable_cache_limit as *const _
11411                as usize
11412        },
11413        328usize,
11414        concat!(
11415            "Offset of field: ",
11416            stringify!(_zend_executor_globals),
11417            "::",
11418            stringify!(symtable_cache_limit)
11419        )
11420    );
11421    assert_eq!(
11422        unsafe {
11423            &(*(::std::ptr::null::<_zend_executor_globals>())).symtable_cache_ptr as *const _
11424                as usize
11425        },
11426        336usize,
11427        concat!(
11428            "Offset of field: ",
11429            stringify!(_zend_executor_globals),
11430            "::",
11431            stringify!(symtable_cache_ptr)
11432        )
11433    );
11434    assert_eq!(
11435        unsafe {
11436            &(*(::std::ptr::null::<_zend_executor_globals>())).opline_ptr as *const _ as usize
11437        },
11438        344usize,
11439        concat!(
11440            "Offset of field: ",
11441            stringify!(_zend_executor_globals),
11442            "::",
11443            stringify!(opline_ptr)
11444        )
11445    );
11446    assert_eq!(
11447        unsafe {
11448            &(*(::std::ptr::null::<_zend_executor_globals>())).active_symbol_table as *const _
11449                as usize
11450        },
11451        352usize,
11452        concat!(
11453            "Offset of field: ",
11454            stringify!(_zend_executor_globals),
11455            "::",
11456            stringify!(active_symbol_table)
11457        )
11458    );
11459    assert_eq!(
11460        unsafe {
11461            &(*(::std::ptr::null::<_zend_executor_globals>())).symbol_table as *const _ as usize
11462        },
11463        360usize,
11464        concat!(
11465            "Offset of field: ",
11466            stringify!(_zend_executor_globals),
11467            "::",
11468            stringify!(symbol_table)
11469        )
11470    );
11471    assert_eq!(
11472        unsafe {
11473            &(*(::std::ptr::null::<_zend_executor_globals>())).included_files as *const _ as usize
11474        },
11475        432usize,
11476        concat!(
11477            "Offset of field: ",
11478            stringify!(_zend_executor_globals),
11479            "::",
11480            stringify!(included_files)
11481        )
11482    );
11483    assert_eq!(
11484        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).bailout as *const _ as usize },
11485        504usize,
11486        concat!(
11487            "Offset of field: ",
11488            stringify!(_zend_executor_globals),
11489            "::",
11490            stringify!(bailout)
11491        )
11492    );
11493    assert_eq!(
11494        unsafe {
11495            &(*(::std::ptr::null::<_zend_executor_globals>())).error_reporting as *const _ as usize
11496        },
11497        512usize,
11498        concat!(
11499            "Offset of field: ",
11500            stringify!(_zend_executor_globals),
11501            "::",
11502            stringify!(error_reporting)
11503        )
11504    );
11505    assert_eq!(
11506        unsafe {
11507            &(*(::std::ptr::null::<_zend_executor_globals>())).orig_error_reporting as *const _
11508                as usize
11509        },
11510        516usize,
11511        concat!(
11512            "Offset of field: ",
11513            stringify!(_zend_executor_globals),
11514            "::",
11515            stringify!(orig_error_reporting)
11516        )
11517    );
11518    assert_eq!(
11519        unsafe {
11520            &(*(::std::ptr::null::<_zend_executor_globals>())).exit_status as *const _ as usize
11521        },
11522        520usize,
11523        concat!(
11524            "Offset of field: ",
11525            stringify!(_zend_executor_globals),
11526            "::",
11527            stringify!(exit_status)
11528        )
11529    );
11530    assert_eq!(
11531        unsafe {
11532            &(*(::std::ptr::null::<_zend_executor_globals>())).active_op_array as *const _ as usize
11533        },
11534        528usize,
11535        concat!(
11536            "Offset of field: ",
11537            stringify!(_zend_executor_globals),
11538            "::",
11539            stringify!(active_op_array)
11540        )
11541    );
11542    assert_eq!(
11543        unsafe {
11544            &(*(::std::ptr::null::<_zend_executor_globals>())).function_table as *const _ as usize
11545        },
11546        536usize,
11547        concat!(
11548            "Offset of field: ",
11549            stringify!(_zend_executor_globals),
11550            "::",
11551            stringify!(function_table)
11552        )
11553    );
11554    assert_eq!(
11555        unsafe {
11556            &(*(::std::ptr::null::<_zend_executor_globals>())).class_table as *const _ as usize
11557        },
11558        544usize,
11559        concat!(
11560            "Offset of field: ",
11561            stringify!(_zend_executor_globals),
11562            "::",
11563            stringify!(class_table)
11564        )
11565    );
11566    assert_eq!(
11567        unsafe {
11568            &(*(::std::ptr::null::<_zend_executor_globals>())).zend_constants as *const _ as usize
11569        },
11570        552usize,
11571        concat!(
11572            "Offset of field: ",
11573            stringify!(_zend_executor_globals),
11574            "::",
11575            stringify!(zend_constants)
11576        )
11577    );
11578    assert_eq!(
11579        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).scope as *const _ as usize },
11580        560usize,
11581        concat!(
11582            "Offset of field: ",
11583            stringify!(_zend_executor_globals),
11584            "::",
11585            stringify!(scope)
11586        )
11587    );
11588    assert_eq!(
11589        unsafe {
11590            &(*(::std::ptr::null::<_zend_executor_globals>())).called_scope as *const _ as usize
11591        },
11592        568usize,
11593        concat!(
11594            "Offset of field: ",
11595            stringify!(_zend_executor_globals),
11596            "::",
11597            stringify!(called_scope)
11598        )
11599    );
11600    assert_eq!(
11601        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).This as *const _ as usize },
11602        576usize,
11603        concat!(
11604            "Offset of field: ",
11605            stringify!(_zend_executor_globals),
11606            "::",
11607            stringify!(This)
11608        )
11609    );
11610    assert_eq!(
11611        unsafe {
11612            &(*(::std::ptr::null::<_zend_executor_globals>())).precision as *const _ as usize
11613        },
11614        584usize,
11615        concat!(
11616            "Offset of field: ",
11617            stringify!(_zend_executor_globals),
11618            "::",
11619            stringify!(precision)
11620        )
11621    );
11622    assert_eq!(
11623        unsafe {
11624            &(*(::std::ptr::null::<_zend_executor_globals>())).ticks_count as *const _ as usize
11625        },
11626        592usize,
11627        concat!(
11628            "Offset of field: ",
11629            stringify!(_zend_executor_globals),
11630            "::",
11631            stringify!(ticks_count)
11632        )
11633    );
11634    assert_eq!(
11635        unsafe {
11636            &(*(::std::ptr::null::<_zend_executor_globals>())).in_execution as *const _ as usize
11637        },
11638        596usize,
11639        concat!(
11640            "Offset of field: ",
11641            stringify!(_zend_executor_globals),
11642            "::",
11643            stringify!(in_execution)
11644        )
11645    );
11646    assert_eq!(
11647        unsafe {
11648            &(*(::std::ptr::null::<_zend_executor_globals>())).in_autoload as *const _ as usize
11649        },
11650        600usize,
11651        concat!(
11652            "Offset of field: ",
11653            stringify!(_zend_executor_globals),
11654            "::",
11655            stringify!(in_autoload)
11656        )
11657    );
11658    assert_eq!(
11659        unsafe {
11660            &(*(::std::ptr::null::<_zend_executor_globals>())).autoload_func as *const _ as usize
11661        },
11662        608usize,
11663        concat!(
11664            "Offset of field: ",
11665            stringify!(_zend_executor_globals),
11666            "::",
11667            stringify!(autoload_func)
11668        )
11669    );
11670    assert_eq!(
11671        unsafe {
11672            &(*(::std::ptr::null::<_zend_executor_globals>())).full_tables_cleanup as *const _
11673                as usize
11674        },
11675        616usize,
11676        concat!(
11677            "Offset of field: ",
11678            stringify!(_zend_executor_globals),
11679            "::",
11680            stringify!(full_tables_cleanup)
11681        )
11682    );
11683    assert_eq!(
11684        unsafe {
11685            &(*(::std::ptr::null::<_zend_executor_globals>())).no_extensions as *const _ as usize
11686        },
11687        617usize,
11688        concat!(
11689            "Offset of field: ",
11690            stringify!(_zend_executor_globals),
11691            "::",
11692            stringify!(no_extensions)
11693        )
11694    );
11695    assert_eq!(
11696        unsafe {
11697            &(*(::std::ptr::null::<_zend_executor_globals>())).regular_list as *const _ as usize
11698        },
11699        624usize,
11700        concat!(
11701            "Offset of field: ",
11702            stringify!(_zend_executor_globals),
11703            "::",
11704            stringify!(regular_list)
11705        )
11706    );
11707    assert_eq!(
11708        unsafe {
11709            &(*(::std::ptr::null::<_zend_executor_globals>())).persistent_list as *const _ as usize
11710        },
11711        696usize,
11712        concat!(
11713            "Offset of field: ",
11714            stringify!(_zend_executor_globals),
11715            "::",
11716            stringify!(persistent_list)
11717        )
11718    );
11719    assert_eq!(
11720        unsafe {
11721            &(*(::std::ptr::null::<_zend_executor_globals>())).argument_stack as *const _ as usize
11722        },
11723        768usize,
11724        concat!(
11725            "Offset of field: ",
11726            stringify!(_zend_executor_globals),
11727            "::",
11728            stringify!(argument_stack)
11729        )
11730    );
11731    assert_eq!(
11732        unsafe {
11733            &(*(::std::ptr::null::<_zend_executor_globals>())).user_error_handler_error_reporting
11734                as *const _ as usize
11735        },
11736        776usize,
11737        concat!(
11738            "Offset of field: ",
11739            stringify!(_zend_executor_globals),
11740            "::",
11741            stringify!(user_error_handler_error_reporting)
11742        )
11743    );
11744    assert_eq!(
11745        unsafe {
11746            &(*(::std::ptr::null::<_zend_executor_globals>())).user_error_handler as *const _
11747                as usize
11748        },
11749        784usize,
11750        concat!(
11751            "Offset of field: ",
11752            stringify!(_zend_executor_globals),
11753            "::",
11754            stringify!(user_error_handler)
11755        )
11756    );
11757    assert_eq!(
11758        unsafe {
11759            &(*(::std::ptr::null::<_zend_executor_globals>())).user_exception_handler as *const _
11760                as usize
11761        },
11762        792usize,
11763        concat!(
11764            "Offset of field: ",
11765            stringify!(_zend_executor_globals),
11766            "::",
11767            stringify!(user_exception_handler)
11768        )
11769    );
11770    assert_eq!(
11771        unsafe {
11772            &(*(::std::ptr::null::<_zend_executor_globals>())).user_error_handlers_error_reporting
11773                as *const _ as usize
11774        },
11775        800usize,
11776        concat!(
11777            "Offset of field: ",
11778            stringify!(_zend_executor_globals),
11779            "::",
11780            stringify!(user_error_handlers_error_reporting)
11781        )
11782    );
11783    assert_eq!(
11784        unsafe {
11785            &(*(::std::ptr::null::<_zend_executor_globals>())).user_error_handlers as *const _
11786                as usize
11787        },
11788        816usize,
11789        concat!(
11790            "Offset of field: ",
11791            stringify!(_zend_executor_globals),
11792            "::",
11793            stringify!(user_error_handlers)
11794        )
11795    );
11796    assert_eq!(
11797        unsafe {
11798            &(*(::std::ptr::null::<_zend_executor_globals>())).user_exception_handlers as *const _
11799                as usize
11800        },
11801        848usize,
11802        concat!(
11803            "Offset of field: ",
11804            stringify!(_zend_executor_globals),
11805            "::",
11806            stringify!(user_exception_handlers)
11807        )
11808    );
11809    assert_eq!(
11810        unsafe {
11811            &(*(::std::ptr::null::<_zend_executor_globals>())).error_handling as *const _ as usize
11812        },
11813        880usize,
11814        concat!(
11815            "Offset of field: ",
11816            stringify!(_zend_executor_globals),
11817            "::",
11818            stringify!(error_handling)
11819        )
11820    );
11821    assert_eq!(
11822        unsafe {
11823            &(*(::std::ptr::null::<_zend_executor_globals>())).exception_class as *const _ as usize
11824        },
11825        888usize,
11826        concat!(
11827            "Offset of field: ",
11828            stringify!(_zend_executor_globals),
11829            "::",
11830            stringify!(exception_class)
11831        )
11832    );
11833    assert_eq!(
11834        unsafe {
11835            &(*(::std::ptr::null::<_zend_executor_globals>())).timeout_seconds as *const _ as usize
11836        },
11837        896usize,
11838        concat!(
11839            "Offset of field: ",
11840            stringify!(_zend_executor_globals),
11841            "::",
11842            stringify!(timeout_seconds)
11843        )
11844    );
11845    assert_eq!(
11846        unsafe {
11847            &(*(::std::ptr::null::<_zend_executor_globals>())).lambda_count as *const _ as usize
11848        },
11849        900usize,
11850        concat!(
11851            "Offset of field: ",
11852            stringify!(_zend_executor_globals),
11853            "::",
11854            stringify!(lambda_count)
11855        )
11856    );
11857    assert_eq!(
11858        unsafe {
11859            &(*(::std::ptr::null::<_zend_executor_globals>())).ini_directives as *const _ as usize
11860        },
11861        904usize,
11862        concat!(
11863            "Offset of field: ",
11864            stringify!(_zend_executor_globals),
11865            "::",
11866            stringify!(ini_directives)
11867        )
11868    );
11869    assert_eq!(
11870        unsafe {
11871            &(*(::std::ptr::null::<_zend_executor_globals>())).modified_ini_directives as *const _
11872                as usize
11873        },
11874        912usize,
11875        concat!(
11876            "Offset of field: ",
11877            stringify!(_zend_executor_globals),
11878            "::",
11879            stringify!(modified_ini_directives)
11880        )
11881    );
11882    assert_eq!(
11883        unsafe {
11884            &(*(::std::ptr::null::<_zend_executor_globals>())).error_reporting_ini_entry as *const _
11885                as usize
11886        },
11887        920usize,
11888        concat!(
11889            "Offset of field: ",
11890            stringify!(_zend_executor_globals),
11891            "::",
11892            stringify!(error_reporting_ini_entry)
11893        )
11894    );
11895    assert_eq!(
11896        unsafe {
11897            &(*(::std::ptr::null::<_zend_executor_globals>())).objects_store as *const _ as usize
11898        },
11899        928usize,
11900        concat!(
11901            "Offset of field: ",
11902            stringify!(_zend_executor_globals),
11903            "::",
11904            stringify!(objects_store)
11905        )
11906    );
11907    assert_eq!(
11908        unsafe {
11909            &(*(::std::ptr::null::<_zend_executor_globals>())).exception as *const _ as usize
11910        },
11911        952usize,
11912        concat!(
11913            "Offset of field: ",
11914            stringify!(_zend_executor_globals),
11915            "::",
11916            stringify!(exception)
11917        )
11918    );
11919    assert_eq!(
11920        unsafe {
11921            &(*(::std::ptr::null::<_zend_executor_globals>())).prev_exception as *const _ as usize
11922        },
11923        960usize,
11924        concat!(
11925            "Offset of field: ",
11926            stringify!(_zend_executor_globals),
11927            "::",
11928            stringify!(prev_exception)
11929        )
11930    );
11931    assert_eq!(
11932        unsafe {
11933            &(*(::std::ptr::null::<_zend_executor_globals>())).opline_before_exception as *const _
11934                as usize
11935        },
11936        968usize,
11937        concat!(
11938            "Offset of field: ",
11939            stringify!(_zend_executor_globals),
11940            "::",
11941            stringify!(opline_before_exception)
11942        )
11943    );
11944    assert_eq!(
11945        unsafe {
11946            &(*(::std::ptr::null::<_zend_executor_globals>())).exception_op as *const _ as usize
11947        },
11948        976usize,
11949        concat!(
11950            "Offset of field: ",
11951            stringify!(_zend_executor_globals),
11952            "::",
11953            stringify!(exception_op)
11954        )
11955    );
11956    assert_eq!(
11957        unsafe {
11958            &(*(::std::ptr::null::<_zend_executor_globals>())).current_execute_data as *const _
11959                as usize
11960        },
11961        1120usize,
11962        concat!(
11963            "Offset of field: ",
11964            stringify!(_zend_executor_globals),
11965            "::",
11966            stringify!(current_execute_data)
11967        )
11968    );
11969    assert_eq!(
11970        unsafe {
11971            &(*(::std::ptr::null::<_zend_executor_globals>())).current_module as *const _ as usize
11972        },
11973        1128usize,
11974        concat!(
11975            "Offset of field: ",
11976            stringify!(_zend_executor_globals),
11977            "::",
11978            stringify!(current_module)
11979        )
11980    );
11981    assert_eq!(
11982        unsafe {
11983            &(*(::std::ptr::null::<_zend_executor_globals>())).std_property_info as *const _
11984                as usize
11985        },
11986        1136usize,
11987        concat!(
11988            "Offset of field: ",
11989            stringify!(_zend_executor_globals),
11990            "::",
11991            stringify!(std_property_info)
11992        )
11993    );
11994    assert_eq!(
11995        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).active as *const _ as usize },
11996        1200usize,
11997        concat!(
11998            "Offset of field: ",
11999            stringify!(_zend_executor_globals),
12000            "::",
12001            stringify!(active)
12002        )
12003    );
12004    assert_eq!(
12005        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).start_op as *const _ as usize },
12006        1208usize,
12007        concat!(
12008            "Offset of field: ",
12009            stringify!(_zend_executor_globals),
12010            "::",
12011            stringify!(start_op)
12012        )
12013    );
12014    assert_eq!(
12015        unsafe {
12016            &(*(::std::ptr::null::<_zend_executor_globals>())).saved_fpu_cw_ptr as *const _ as usize
12017        },
12018        1216usize,
12019        concat!(
12020            "Offset of field: ",
12021            stringify!(_zend_executor_globals),
12022            "::",
12023            stringify!(saved_fpu_cw_ptr)
12024        )
12025    );
12026    assert_eq!(
12027        unsafe {
12028            &(*(::std::ptr::null::<_zend_executor_globals>())).saved_fpu_cw as *const _ as usize
12029        },
12030        1224usize,
12031        concat!(
12032            "Offset of field: ",
12033            stringify!(_zend_executor_globals),
12034            "::",
12035            stringify!(saved_fpu_cw)
12036        )
12037    );
12038    assert_eq!(
12039        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).reserved as *const _ as usize },
12040        1232usize,
12041        concat!(
12042            "Offset of field: ",
12043            stringify!(_zend_executor_globals),
12044            "::",
12045            stringify!(reserved)
12046        )
12047    );
12048}
12049#[repr(C)]
12050#[derive(Debug, Copy, Clone)]
12051pub struct _zend_ini_scanner_globals {
12052    pub yy_in: *mut zend_file_handle,
12053    pub yy_out: *mut zend_file_handle,
12054    pub yy_leng: ::std::os::raw::c_uint,
12055    pub yy_start: *mut ::std::os::raw::c_uchar,
12056    pub yy_text: *mut ::std::os::raw::c_uchar,
12057    pub yy_cursor: *mut ::std::os::raw::c_uchar,
12058    pub yy_marker: *mut ::std::os::raw::c_uchar,
12059    pub yy_limit: *mut ::std::os::raw::c_uchar,
12060    pub yy_state: ::std::os::raw::c_int,
12061    pub state_stack: zend_stack,
12062    pub filename: *mut ::std::os::raw::c_char,
12063    pub lineno: ::std::os::raw::c_int,
12064    pub scanner_mode: ::std::os::raw::c_int,
12065}
12066#[test]
12067fn bindgen_test_layout__zend_ini_scanner_globals() {
12068    assert_eq!(
12069        ::std::mem::size_of::<_zend_ini_scanner_globals>(),
12070        104usize,
12071        concat!("Size of: ", stringify!(_zend_ini_scanner_globals))
12072    );
12073    assert_eq!(
12074        ::std::mem::align_of::<_zend_ini_scanner_globals>(),
12075        8usize,
12076        concat!("Alignment of ", stringify!(_zend_ini_scanner_globals))
12077    );
12078    assert_eq!(
12079        unsafe { &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_in as *const _ as usize },
12080        0usize,
12081        concat!(
12082            "Offset of field: ",
12083            stringify!(_zend_ini_scanner_globals),
12084            "::",
12085            stringify!(yy_in)
12086        )
12087    );
12088    assert_eq!(
12089        unsafe {
12090            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_out as *const _ as usize
12091        },
12092        8usize,
12093        concat!(
12094            "Offset of field: ",
12095            stringify!(_zend_ini_scanner_globals),
12096            "::",
12097            stringify!(yy_out)
12098        )
12099    );
12100    assert_eq!(
12101        unsafe {
12102            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_leng as *const _ as usize
12103        },
12104        16usize,
12105        concat!(
12106            "Offset of field: ",
12107            stringify!(_zend_ini_scanner_globals),
12108            "::",
12109            stringify!(yy_leng)
12110        )
12111    );
12112    assert_eq!(
12113        unsafe {
12114            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_start as *const _ as usize
12115        },
12116        24usize,
12117        concat!(
12118            "Offset of field: ",
12119            stringify!(_zend_ini_scanner_globals),
12120            "::",
12121            stringify!(yy_start)
12122        )
12123    );
12124    assert_eq!(
12125        unsafe {
12126            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_text as *const _ as usize
12127        },
12128        32usize,
12129        concat!(
12130            "Offset of field: ",
12131            stringify!(_zend_ini_scanner_globals),
12132            "::",
12133            stringify!(yy_text)
12134        )
12135    );
12136    assert_eq!(
12137        unsafe {
12138            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_cursor as *const _ as usize
12139        },
12140        40usize,
12141        concat!(
12142            "Offset of field: ",
12143            stringify!(_zend_ini_scanner_globals),
12144            "::",
12145            stringify!(yy_cursor)
12146        )
12147    );
12148    assert_eq!(
12149        unsafe {
12150            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_marker as *const _ as usize
12151        },
12152        48usize,
12153        concat!(
12154            "Offset of field: ",
12155            stringify!(_zend_ini_scanner_globals),
12156            "::",
12157            stringify!(yy_marker)
12158        )
12159    );
12160    assert_eq!(
12161        unsafe {
12162            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_limit as *const _ as usize
12163        },
12164        56usize,
12165        concat!(
12166            "Offset of field: ",
12167            stringify!(_zend_ini_scanner_globals),
12168            "::",
12169            stringify!(yy_limit)
12170        )
12171    );
12172    assert_eq!(
12173        unsafe {
12174            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_state as *const _ as usize
12175        },
12176        64usize,
12177        concat!(
12178            "Offset of field: ",
12179            stringify!(_zend_ini_scanner_globals),
12180            "::",
12181            stringify!(yy_state)
12182        )
12183    );
12184    assert_eq!(
12185        unsafe {
12186            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).state_stack as *const _ as usize
12187        },
12188        72usize,
12189        concat!(
12190            "Offset of field: ",
12191            stringify!(_zend_ini_scanner_globals),
12192            "::",
12193            stringify!(state_stack)
12194        )
12195    );
12196    assert_eq!(
12197        unsafe {
12198            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).filename as *const _ as usize
12199        },
12200        88usize,
12201        concat!(
12202            "Offset of field: ",
12203            stringify!(_zend_ini_scanner_globals),
12204            "::",
12205            stringify!(filename)
12206        )
12207    );
12208    assert_eq!(
12209        unsafe {
12210            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).lineno as *const _ as usize
12211        },
12212        96usize,
12213        concat!(
12214            "Offset of field: ",
12215            stringify!(_zend_ini_scanner_globals),
12216            "::",
12217            stringify!(lineno)
12218        )
12219    );
12220    assert_eq!(
12221        unsafe {
12222            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).scanner_mode as *const _ as usize
12223        },
12224        100usize,
12225        concat!(
12226            "Offset of field: ",
12227            stringify!(_zend_ini_scanner_globals),
12228            "::",
12229            stringify!(scanner_mode)
12230        )
12231    );
12232}
12233#[repr(C)]
12234#[derive(Debug, Copy, Clone)]
12235pub struct _zend_php_scanner_globals {
12236    pub yy_in: *mut zend_file_handle,
12237    pub yy_out: *mut zend_file_handle,
12238    pub yy_leng: ::std::os::raw::c_uint,
12239    pub yy_start: *mut ::std::os::raw::c_uchar,
12240    pub yy_text: *mut ::std::os::raw::c_uchar,
12241    pub yy_cursor: *mut ::std::os::raw::c_uchar,
12242    pub yy_marker: *mut ::std::os::raw::c_uchar,
12243    pub yy_limit: *mut ::std::os::raw::c_uchar,
12244    pub yy_state: ::std::os::raw::c_int,
12245    pub state_stack: zend_stack,
12246    pub heredoc_label_stack: zend_ptr_stack,
12247    pub script_org: *mut ::std::os::raw::c_uchar,
12248    pub script_org_size: size_t,
12249    pub script_filtered: *mut ::std::os::raw::c_uchar,
12250    pub script_filtered_size: size_t,
12251    pub input_filter: zend_encoding_filter,
12252    pub output_filter: zend_encoding_filter,
12253    pub script_encoding: *const zend_encoding,
12254}
12255#[test]
12256fn bindgen_test_layout__zend_php_scanner_globals() {
12257    assert_eq!(
12258        ::std::mem::size_of::<_zend_php_scanner_globals>(),
12259        176usize,
12260        concat!("Size of: ", stringify!(_zend_php_scanner_globals))
12261    );
12262    assert_eq!(
12263        ::std::mem::align_of::<_zend_php_scanner_globals>(),
12264        8usize,
12265        concat!("Alignment of ", stringify!(_zend_php_scanner_globals))
12266    );
12267    assert_eq!(
12268        unsafe { &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_in as *const _ as usize },
12269        0usize,
12270        concat!(
12271            "Offset of field: ",
12272            stringify!(_zend_php_scanner_globals),
12273            "::",
12274            stringify!(yy_in)
12275        )
12276    );
12277    assert_eq!(
12278        unsafe {
12279            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_out as *const _ as usize
12280        },
12281        8usize,
12282        concat!(
12283            "Offset of field: ",
12284            stringify!(_zend_php_scanner_globals),
12285            "::",
12286            stringify!(yy_out)
12287        )
12288    );
12289    assert_eq!(
12290        unsafe {
12291            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_leng as *const _ as usize
12292        },
12293        16usize,
12294        concat!(
12295            "Offset of field: ",
12296            stringify!(_zend_php_scanner_globals),
12297            "::",
12298            stringify!(yy_leng)
12299        )
12300    );
12301    assert_eq!(
12302        unsafe {
12303            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_start as *const _ as usize
12304        },
12305        24usize,
12306        concat!(
12307            "Offset of field: ",
12308            stringify!(_zend_php_scanner_globals),
12309            "::",
12310            stringify!(yy_start)
12311        )
12312    );
12313    assert_eq!(
12314        unsafe {
12315            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_text as *const _ as usize
12316        },
12317        32usize,
12318        concat!(
12319            "Offset of field: ",
12320            stringify!(_zend_php_scanner_globals),
12321            "::",
12322            stringify!(yy_text)
12323        )
12324    );
12325    assert_eq!(
12326        unsafe {
12327            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_cursor as *const _ as usize
12328        },
12329        40usize,
12330        concat!(
12331            "Offset of field: ",
12332            stringify!(_zend_php_scanner_globals),
12333            "::",
12334            stringify!(yy_cursor)
12335        )
12336    );
12337    assert_eq!(
12338        unsafe {
12339            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_marker as *const _ as usize
12340        },
12341        48usize,
12342        concat!(
12343            "Offset of field: ",
12344            stringify!(_zend_php_scanner_globals),
12345            "::",
12346            stringify!(yy_marker)
12347        )
12348    );
12349    assert_eq!(
12350        unsafe {
12351            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_limit as *const _ as usize
12352        },
12353        56usize,
12354        concat!(
12355            "Offset of field: ",
12356            stringify!(_zend_php_scanner_globals),
12357            "::",
12358            stringify!(yy_limit)
12359        )
12360    );
12361    assert_eq!(
12362        unsafe {
12363            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_state as *const _ as usize
12364        },
12365        64usize,
12366        concat!(
12367            "Offset of field: ",
12368            stringify!(_zend_php_scanner_globals),
12369            "::",
12370            stringify!(yy_state)
12371        )
12372    );
12373    assert_eq!(
12374        unsafe {
12375            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).state_stack as *const _ as usize
12376        },
12377        72usize,
12378        concat!(
12379            "Offset of field: ",
12380            stringify!(_zend_php_scanner_globals),
12381            "::",
12382            stringify!(state_stack)
12383        )
12384    );
12385    assert_eq!(
12386        unsafe {
12387            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).heredoc_label_stack as *const _
12388                as usize
12389        },
12390        88usize,
12391        concat!(
12392            "Offset of field: ",
12393            stringify!(_zend_php_scanner_globals),
12394            "::",
12395            stringify!(heredoc_label_stack)
12396        )
12397    );
12398    assert_eq!(
12399        unsafe {
12400            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_org as *const _ as usize
12401        },
12402        120usize,
12403        concat!(
12404            "Offset of field: ",
12405            stringify!(_zend_php_scanner_globals),
12406            "::",
12407            stringify!(script_org)
12408        )
12409    );
12410    assert_eq!(
12411        unsafe {
12412            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_org_size as *const _
12413                as usize
12414        },
12415        128usize,
12416        concat!(
12417            "Offset of field: ",
12418            stringify!(_zend_php_scanner_globals),
12419            "::",
12420            stringify!(script_org_size)
12421        )
12422    );
12423    assert_eq!(
12424        unsafe {
12425            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_filtered as *const _
12426                as usize
12427        },
12428        136usize,
12429        concat!(
12430            "Offset of field: ",
12431            stringify!(_zend_php_scanner_globals),
12432            "::",
12433            stringify!(script_filtered)
12434        )
12435    );
12436    assert_eq!(
12437        unsafe {
12438            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_filtered_size as *const _
12439                as usize
12440        },
12441        144usize,
12442        concat!(
12443            "Offset of field: ",
12444            stringify!(_zend_php_scanner_globals),
12445            "::",
12446            stringify!(script_filtered_size)
12447        )
12448    );
12449    assert_eq!(
12450        unsafe {
12451            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).input_filter as *const _ as usize
12452        },
12453        152usize,
12454        concat!(
12455            "Offset of field: ",
12456            stringify!(_zend_php_scanner_globals),
12457            "::",
12458            stringify!(input_filter)
12459        )
12460    );
12461    assert_eq!(
12462        unsafe {
12463            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).output_filter as *const _ as usize
12464        },
12465        160usize,
12466        concat!(
12467            "Offset of field: ",
12468            stringify!(_zend_php_scanner_globals),
12469            "::",
12470            stringify!(output_filter)
12471        )
12472    );
12473    assert_eq!(
12474        unsafe {
12475            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_encoding as *const _
12476                as usize
12477        },
12478        168usize,
12479        concat!(
12480            "Offset of field: ",
12481            stringify!(_zend_php_scanner_globals),
12482            "::",
12483            stringify!(script_encoding)
12484        )
12485    );
12486}
12487extern "C" {
12488    pub fn zend_init_compiler_data_structures(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
12489}
12490extern "C" {
12491    pub fn zend_init_compiler_context(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
12492}
12493extern "C" {
12494    pub static mut zend_compile_file: ::std::option::Option<
12495        unsafe extern "C" fn(
12496            file_handle: *mut zend_file_handle,
12497            type_: ::std::os::raw::c_int,
12498            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12499        ) -> *mut zend_op_array,
12500    >;
12501}
12502extern "C" {
12503    pub static mut zend_compile_string: ::std::option::Option<
12504        unsafe extern "C" fn(
12505            source_string: *mut zval,
12506            filename: *mut ::std::os::raw::c_char,
12507            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12508        ) -> *mut zend_op_array,
12509    >;
12510}
12511extern "C" {
12512    pub fn zend_set_compiled_filename(
12513        new_compiled_filename: *const ::std::os::raw::c_char,
12514        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12515    ) -> *mut ::std::os::raw::c_char;
12516}
12517extern "C" {
12518    pub fn zend_restore_compiled_filename(
12519        original_compiled_filename: *mut ::std::os::raw::c_char,
12520        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12521    );
12522}
12523extern "C" {
12524    pub fn zend_get_compiled_filename(
12525        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12526    ) -> *mut ::std::os::raw::c_char;
12527}
12528extern "C" {
12529    pub fn zend_get_compiled_lineno(
12530        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12531    ) -> ::std::os::raw::c_int;
12532}
12533extern "C" {
12534    pub fn zend_get_scanned_file_offset(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void) -> size_t;
12535}
12536extern "C" {
12537    pub fn zend_resolve_non_class_name(
12538        element_name: *mut znode,
12539        check_namespace: *mut zend_bool,
12540        case_sensitive: zend_bool,
12541        current_import_sub: *mut HashTable,
12542        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12543    );
12544}
12545extern "C" {
12546    pub fn zend_resolve_function_name(
12547        element_name: *mut znode,
12548        check_namespace: *mut zend_bool,
12549        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12550    );
12551}
12552extern "C" {
12553    pub fn zend_resolve_const_name(
12554        element_name: *mut znode,
12555        check_namespace: *mut zend_bool,
12556        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12557    );
12558}
12559extern "C" {
12560    pub fn zend_resolve_class_name(
12561        class_name: *mut znode,
12562        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12563    );
12564}
12565extern "C" {
12566    pub fn zend_get_compiled_variable_name(
12567        op_array: *const zend_op_array,
12568        var: zend_uint,
12569        name_len: *mut ::std::os::raw::c_int,
12570    ) -> *const ::std::os::raw::c_char;
12571}
12572extern "C" {
12573    pub fn zend_get_zendtext(
12574        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12575    ) -> *const ::std::os::raw::c_char;
12576}
12577extern "C" {
12578    pub fn zend_get_zendleng(
12579        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12580    ) -> ::std::os::raw::c_int;
12581}
12582extern "C" {
12583    pub fn zend_do_binary_op(
12584        op: zend_uchar,
12585        result: *mut znode,
12586        op1: *const znode,
12587        op2: *const znode,
12588        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12589    );
12590}
12591extern "C" {
12592    pub fn zend_do_unary_op(
12593        op: zend_uchar,
12594        result: *mut znode,
12595        op1: *const znode,
12596        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12597    );
12598}
12599extern "C" {
12600    pub fn zend_do_binary_assign_op(
12601        op: zend_uchar,
12602        result: *mut znode,
12603        op1: *const znode,
12604        op2: *const znode,
12605        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12606    );
12607}
12608extern "C" {
12609    pub fn zend_do_assign(
12610        result: *mut znode,
12611        variable: *mut znode,
12612        value: *mut znode,
12613        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12614    );
12615}
12616extern "C" {
12617    pub fn zend_do_assign_ref(
12618        result: *mut znode,
12619        lvar: *const znode,
12620        rvar: *const znode,
12621        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12622    );
12623}
12624extern "C" {
12625    pub fn zend_do_indirect_references(
12626        result: *mut znode,
12627        num_references: *const znode,
12628        variable: *mut znode,
12629        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12630    );
12631}
12632extern "C" {
12633    pub fn zend_do_fetch_static_variable(
12634        varname: *mut znode,
12635        static_assignment: *const znode,
12636        fetch_type: ::std::os::raw::c_int,
12637        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12638    );
12639}
12640extern "C" {
12641    pub fn zend_do_fetch_global_variable(
12642        varname: *mut znode,
12643        static_assignment: *const znode,
12644        fetch_type: ::std::os::raw::c_int,
12645        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12646    );
12647}
12648extern "C" {
12649    pub fn zend_do_fetch_static_member(
12650        result: *mut znode,
12651        class_znode: *mut znode,
12652        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12653    );
12654}
12655extern "C" {
12656    pub fn zend_do_print(
12657        result: *mut znode,
12658        arg: *const znode,
12659        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12660    );
12661}
12662extern "C" {
12663    pub fn zend_do_echo(arg: *const znode, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
12664}
12665extern "C" {
12666    pub fn zend_do_while_cond(
12667        expr: *const znode,
12668        close_bracket_token: *mut znode,
12669        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12670    );
12671}
12672extern "C" {
12673    pub fn zend_do_while_end(
12674        while_token: *const znode,
12675        close_bracket_token: *const znode,
12676        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12677    );
12678}
12679extern "C" {
12680    pub fn zend_do_do_while_begin(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
12681}
12682extern "C" {
12683    pub fn zend_do_do_while_end(
12684        do_token: *const znode,
12685        expr_open_bracket: *const znode,
12686        expr: *const znode,
12687        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12688    );
12689}
12690extern "C" {
12691    pub fn zend_do_if_cond(
12692        cond: *const znode,
12693        closing_bracket_token: *mut znode,
12694        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12695    );
12696}
12697extern "C" {
12698    pub fn zend_do_if_after_statement(
12699        closing_bracket_token: *const znode,
12700        initialize: ::std::os::raw::c_uchar,
12701        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12702    );
12703}
12704extern "C" {
12705    pub fn zend_do_if_end(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
12706}
12707extern "C" {
12708    pub fn zend_do_for_cond(
12709        expr: *const znode,
12710        second_semicolon_token: *mut znode,
12711        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12712    );
12713}
12714extern "C" {
12715    pub fn zend_do_for_before_statement(
12716        cond_start: *const znode,
12717        second_semicolon_token: *const znode,
12718        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12719    );
12720}
12721extern "C" {
12722    pub fn zend_do_for_end(
12723        second_semicolon_token: *const znode,
12724        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12725    );
12726}
12727extern "C" {
12728    pub fn zend_do_pre_incdec(
12729        result: *mut znode,
12730        op1: *const znode,
12731        op: zend_uchar,
12732        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12733    );
12734}
12735extern "C" {
12736    pub fn zend_do_post_incdec(
12737        result: *mut znode,
12738        op1: *const znode,
12739        op: zend_uchar,
12740        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12741    );
12742}
12743extern "C" {
12744    pub fn zend_do_begin_variable_parse(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
12745}
12746extern "C" {
12747    pub fn zend_do_end_variable_parse(
12748        variable: *mut znode,
12749        type_: ::std::os::raw::c_int,
12750        arg_offset: ::std::os::raw::c_int,
12751        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12752    );
12753}
12754extern "C" {
12755    pub fn zend_check_writable_variable(variable: *const znode);
12756}
12757extern "C" {
12758    pub fn zend_do_free(op1: *mut znode, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
12759}
12760extern "C" {
12761    pub fn zend_do_add_string(
12762        result: *mut znode,
12763        op1: *const znode,
12764        op2: *mut znode,
12765        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12766    );
12767}
12768extern "C" {
12769    pub fn zend_do_add_variable(
12770        result: *mut znode,
12771        op1: *const znode,
12772        op2: *const znode,
12773        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12774    );
12775}
12776extern "C" {
12777    pub fn zend_do_verify_access_types(
12778        current_access_type: *const znode,
12779        new_modifier: *const znode,
12780    ) -> ::std::os::raw::c_int;
12781}
12782extern "C" {
12783    pub fn zend_do_begin_function_declaration(
12784        function_token: *mut znode,
12785        function_name: *mut znode,
12786        is_method: ::std::os::raw::c_int,
12787        return_reference: ::std::os::raw::c_int,
12788        fn_flags_znode: *mut znode,
12789        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12790    );
12791}
12792extern "C" {
12793    pub fn zend_do_end_function_declaration(
12794        function_token: *const znode,
12795        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12796    );
12797}
12798extern "C" {
12799    pub fn zend_do_receive_param(
12800        op: zend_uchar,
12801        varname: *mut znode,
12802        initialization: *const znode,
12803        class_type: *mut znode,
12804        pass_by_reference: zend_bool,
12805        is_variadic: zend_bool,
12806        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12807    );
12808}
12809extern "C" {
12810    pub fn zend_do_begin_function_call(
12811        function_name: *mut znode,
12812        check_namespace: zend_bool,
12813        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12814    ) -> ::std::os::raw::c_int;
12815}
12816extern "C" {
12817    pub fn zend_do_begin_method_call(
12818        left_bracket: *mut znode,
12819        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12820    );
12821}
12822extern "C" {
12823    pub fn zend_do_clone(
12824        result: *mut znode,
12825        expr: *const znode,
12826        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12827    );
12828}
12829extern "C" {
12830    pub fn zend_do_begin_dynamic_function_call(
12831        function_name: *mut znode,
12832        prefix_len: ::std::os::raw::c_int,
12833        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12834    );
12835}
12836extern "C" {
12837    pub fn zend_do_fetch_class(
12838        result: *mut znode,
12839        class_name: *mut znode,
12840        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12841    );
12842}
12843extern "C" {
12844    pub fn zend_do_build_full_name(
12845        result: *mut znode,
12846        prefix: *mut znode,
12847        name: *mut znode,
12848        is_class_member: ::std::os::raw::c_int,
12849        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12850    );
12851}
12852extern "C" {
12853    pub fn zend_do_begin_class_member_function_call(
12854        class_name: *mut znode,
12855        method_name: *mut znode,
12856        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12857    ) -> ::std::os::raw::c_int;
12858}
12859extern "C" {
12860    pub fn zend_do_end_function_call(
12861        function_name: *mut znode,
12862        result: *mut znode,
12863        is_method: ::std::os::raw::c_int,
12864        is_dynamic_fcall: ::std::os::raw::c_int,
12865        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12866    );
12867}
12868extern "C" {
12869    pub fn zend_do_return(
12870        expr: *mut znode,
12871        do_end_vparse: ::std::os::raw::c_int,
12872        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12873    );
12874}
12875extern "C" {
12876    pub fn zend_do_yield(
12877        result: *mut znode,
12878        value: *mut znode,
12879        key: *const znode,
12880        is_variable: zend_bool,
12881        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12882    );
12883}
12884extern "C" {
12885    pub fn zend_do_handle_exception(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
12886}
12887extern "C" {
12888    pub fn zend_do_begin_lambda_function_declaration(
12889        result: *mut znode,
12890        function_token: *mut znode,
12891        return_reference: ::std::os::raw::c_int,
12892        is_static: ::std::os::raw::c_int,
12893        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12894    );
12895}
12896extern "C" {
12897    pub fn zend_do_fetch_lexical_variable(
12898        varname: *mut znode,
12899        is_ref: zend_bool,
12900        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12901    );
12902}
12903extern "C" {
12904    pub fn zend_do_try(try_token: *mut znode, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
12905}
12906extern "C" {
12907    pub fn zend_do_begin_catch(
12908        try_token: *mut znode,
12909        catch_class: *mut znode,
12910        catch_var: *mut znode,
12911        first_catch: *mut znode,
12912        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12913    );
12914}
12915extern "C" {
12916    pub fn zend_do_bind_catch(
12917        try_token: *mut znode,
12918        catch_token: *mut znode,
12919        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12920    );
12921}
12922extern "C" {
12923    pub fn zend_do_end_catch(
12924        catch_token: *mut znode,
12925        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12926    );
12927}
12928extern "C" {
12929    pub fn zend_do_finally(
12930        finally_token: *mut znode,
12931        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12932    );
12933}
12934extern "C" {
12935    pub fn zend_do_end_finally(
12936        try_token: *mut znode,
12937        catch_token: *mut znode,
12938        finally_token: *mut znode,
12939        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12940    );
12941}
12942extern "C" {
12943    pub fn zend_do_throw(expr: *const znode, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
12944}
12945extern "C" {
12946    pub fn zend_do_inherit_interfaces(
12947        ce: *mut zend_class_entry,
12948        iface: *const zend_class_entry,
12949        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12950    );
12951}
12952extern "C" {
12953    pub fn zend_do_implement_interface(
12954        ce: *mut zend_class_entry,
12955        iface: *mut zend_class_entry,
12956        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12957    );
12958}
12959extern "C" {
12960    pub fn zend_do_implements_interface(
12961        interface_znode: *mut znode,
12962        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12963    );
12964}
12965extern "C" {
12966    pub fn zend_do_use_trait(
12967        trait_znode: *mut znode,
12968        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12969    );
12970}
12971extern "C" {
12972    pub fn zend_prepare_reference(
12973        result: *mut znode,
12974        class_name: *mut znode,
12975        method_name: *mut znode,
12976        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12977    );
12978}
12979extern "C" {
12980    pub fn zend_add_trait_precedence(
12981        method_reference: *mut znode,
12982        trait_list: *mut znode,
12983        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12984    );
12985}
12986extern "C" {
12987    pub fn zend_add_trait_alias(
12988        method_reference: *mut znode,
12989        modifiers: *mut znode,
12990        alias: *mut znode,
12991        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12992    );
12993}
12994extern "C" {
12995    pub fn zend_do_implement_trait(
12996        ce: *mut zend_class_entry,
12997        trait_: *mut zend_class_entry,
12998        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
12999    );
13000}
13001extern "C" {
13002    pub fn zend_do_bind_traits(
13003        ce: *mut zend_class_entry,
13004        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13005    );
13006}
13007extern "C" {
13008    pub fn zend_do_inheritance(
13009        ce: *mut zend_class_entry,
13010        parent_ce: *mut zend_class_entry,
13011        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13012    );
13013}
13014extern "C" {
13015    pub fn zend_do_early_binding(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
13016}
13017extern "C" {
13018    pub fn zend_do_delayed_early_binding(
13019        op_array: *const zend_op_array,
13020        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13021    );
13022}
13023extern "C" {
13024    pub fn zend_do_pass_param(
13025        param: *mut znode,
13026        op: zend_uchar,
13027        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13028    );
13029}
13030extern "C" {
13031    pub fn zend_do_unpack_params(
13032        params: *mut znode,
13033        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13034    );
13035}
13036extern "C" {
13037    pub fn zend_do_boolean_or_begin(
13038        expr1: *mut znode,
13039        op_token: *mut znode,
13040        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13041    );
13042}
13043extern "C" {
13044    pub fn zend_do_boolean_or_end(
13045        result: *mut znode,
13046        expr1: *const znode,
13047        expr2: *const znode,
13048        op_token: *mut znode,
13049        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13050    );
13051}
13052extern "C" {
13053    pub fn zend_do_boolean_and_begin(
13054        expr1: *mut znode,
13055        op_token: *mut znode,
13056        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13057    );
13058}
13059extern "C" {
13060    pub fn zend_do_boolean_and_end(
13061        result: *mut znode,
13062        expr1: *const znode,
13063        expr2: *const znode,
13064        op_token: *const znode,
13065        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13066    );
13067}
13068extern "C" {
13069    pub fn zend_do_brk_cont(
13070        op: zend_uchar,
13071        expr: *const znode,
13072        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13073    );
13074}
13075extern "C" {
13076    pub fn zend_do_switch_cond(cond: *const znode, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
13077}
13078extern "C" {
13079    pub fn zend_do_switch_end(
13080        case_list: *const znode,
13081        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13082    );
13083}
13084extern "C" {
13085    pub fn zend_do_case_before_statement(
13086        case_list: *const znode,
13087        case_token: *mut znode,
13088        case_expr: *const znode,
13089        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13090    );
13091}
13092extern "C" {
13093    pub fn zend_do_case_after_statement(
13094        result: *mut znode,
13095        case_token: *const znode,
13096        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13097    );
13098}
13099extern "C" {
13100    pub fn zend_do_default_before_statement(
13101        case_list: *const znode,
13102        default_token: *mut znode,
13103        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13104    );
13105}
13106extern "C" {
13107    pub fn zend_do_begin_class_declaration(
13108        class_token: *const znode,
13109        class_name: *mut znode,
13110        parent_class_name: *const znode,
13111        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13112    );
13113}
13114extern "C" {
13115    pub fn zend_do_end_class_declaration(
13116        class_token: *const znode,
13117        parent_token: *const znode,
13118        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13119    );
13120}
13121extern "C" {
13122    pub fn zend_do_declare_property(
13123        var_name: *const znode,
13124        value: *const znode,
13125        access_type: zend_uint,
13126        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13127    );
13128}
13129extern "C" {
13130    pub fn zend_do_declare_class_constant(
13131        var_name: *mut znode,
13132        value: *const znode,
13133        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13134    );
13135}
13136extern "C" {
13137    pub fn zend_do_fetch_property(
13138        result: *mut znode,
13139        object: *mut znode,
13140        property: *const znode,
13141        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13142    );
13143}
13144extern "C" {
13145    pub fn zend_do_halt_compiler_register(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
13146}
13147extern "C" {
13148    pub fn zend_do_push_object(
13149        object: *const znode,
13150        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13151    );
13152}
13153extern "C" {
13154    pub fn zend_do_pop_object(object: *mut znode, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
13155}
13156extern "C" {
13157    pub fn zend_do_begin_new_object(
13158        new_token: *mut znode,
13159        class_type: *mut znode,
13160        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13161    );
13162}
13163extern "C" {
13164    pub fn zend_do_end_new_object(
13165        result: *mut znode,
13166        new_token: *const znode,
13167        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13168    );
13169}
13170extern "C" {
13171    pub fn zend_do_fetch_constant(
13172        result: *mut znode,
13173        constant_container: *mut znode,
13174        constant_name: *mut znode,
13175        mode: ::std::os::raw::c_int,
13176        check_namespace: zend_bool,
13177        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13178    );
13179}
13180extern "C" {
13181    pub fn zend_do_shell_exec(
13182        result: *mut znode,
13183        cmd: *const znode,
13184        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13185    );
13186}
13187extern "C" {
13188    pub fn zend_do_init_array(
13189        result: *mut znode,
13190        expr: *const znode,
13191        offset: *const znode,
13192        is_ref: zend_bool,
13193        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13194    );
13195}
13196extern "C" {
13197    pub fn zend_do_add_array_element(
13198        result: *mut znode,
13199        expr: *const znode,
13200        offset: *const znode,
13201        is_ref: zend_bool,
13202        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13203    );
13204}
13205extern "C" {
13206    pub fn zend_do_add_static_array_element(
13207        result: *mut zval,
13208        offset: *mut zval,
13209        expr: *const zval,
13210    );
13211}
13212extern "C" {
13213    pub fn zend_do_list_init(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
13214}
13215extern "C" {
13216    pub fn zend_do_list_end(
13217        result: *mut znode,
13218        expr: *mut znode,
13219        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13220    );
13221}
13222extern "C" {
13223    pub fn zend_do_add_list_element(
13224        element: *const znode,
13225        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13226    );
13227}
13228extern "C" {
13229    pub fn zend_do_new_list_begin(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
13230}
13231extern "C" {
13232    pub fn zend_do_new_list_end(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
13233}
13234extern "C" {
13235    pub fn zend_init_list(
13236        result: *mut ::std::os::raw::c_void,
13237        item: *mut ::std::os::raw::c_void,
13238        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13239    );
13240}
13241extern "C" {
13242    pub fn zend_add_to_list(
13243        result: *mut ::std::os::raw::c_void,
13244        item: *mut ::std::os::raw::c_void,
13245        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13246    );
13247}
13248extern "C" {
13249    pub fn zend_do_cast(
13250        result: *mut znode,
13251        expr: *const znode,
13252        type_: ::std::os::raw::c_int,
13253        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13254    );
13255}
13256extern "C" {
13257    pub fn zend_do_include_or_eval(
13258        type_: ::std::os::raw::c_int,
13259        result: *mut znode,
13260        op1: *const znode,
13261        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13262    );
13263}
13264extern "C" {
13265    pub fn zend_do_unset(variable: *const znode, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
13266}
13267extern "C" {
13268    pub fn zend_do_isset_or_isempty(
13269        type_: ::std::os::raw::c_int,
13270        result: *mut znode,
13271        variable: *mut znode,
13272        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13273    );
13274}
13275extern "C" {
13276    pub fn zend_do_instanceof(
13277        result: *mut znode,
13278        expr: *const znode,
13279        class_znode: *const znode,
13280        type_: ::std::os::raw::c_int,
13281        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13282    );
13283}
13284extern "C" {
13285    pub fn zend_do_foreach_begin(
13286        foreach_token: *mut znode,
13287        open_brackets_token: *mut znode,
13288        array: *mut znode,
13289        as_token: *mut znode,
13290        variable: ::std::os::raw::c_int,
13291        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13292    );
13293}
13294extern "C" {
13295    pub fn zend_do_foreach_cont(
13296        foreach_token: *mut znode,
13297        open_brackets_token: *const znode,
13298        as_token: *const znode,
13299        value: *mut znode,
13300        key: *mut znode,
13301        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13302    );
13303}
13304extern "C" {
13305    pub fn zend_do_foreach_end(
13306        foreach_token: *const znode,
13307        as_token: *const znode,
13308        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13309    );
13310}
13311extern "C" {
13312    pub fn zend_do_declare_begin(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
13313}
13314extern "C" {
13315    pub fn zend_do_declare_stmt(
13316        var: *mut znode,
13317        val: *mut znode,
13318        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13319    );
13320}
13321extern "C" {
13322    pub fn zend_do_declare_end(
13323        declare_token: *const znode,
13324        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13325    );
13326}
13327extern "C" {
13328    pub fn zend_do_exit(
13329        result: *mut znode,
13330        message: *const znode,
13331        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13332    );
13333}
13334extern "C" {
13335    pub fn zend_do_begin_silence(
13336        strudel_token: *mut znode,
13337        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13338    );
13339}
13340extern "C" {
13341    pub fn zend_do_end_silence(
13342        strudel_token: *const znode,
13343        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13344    );
13345}
13346extern "C" {
13347    pub fn zend_do_jmp_set(
13348        value: *const znode,
13349        jmp_token: *mut znode,
13350        colon_token: *mut znode,
13351        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13352    );
13353}
13354extern "C" {
13355    pub fn zend_do_jmp_set_else(
13356        result: *mut znode,
13357        false_value: *const znode,
13358        jmp_token: *const znode,
13359        colon_token: *const znode,
13360        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13361    );
13362}
13363extern "C" {
13364    pub fn zend_do_begin_qm_op(
13365        cond: *const znode,
13366        qm_token: *mut znode,
13367        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13368    );
13369}
13370extern "C" {
13371    pub fn zend_do_qm_true(
13372        true_value: *const znode,
13373        qm_token: *mut znode,
13374        colon_token: *mut znode,
13375        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13376    );
13377}
13378extern "C" {
13379    pub fn zend_do_qm_false(
13380        result: *mut znode,
13381        false_value: *const znode,
13382        qm_token: *const znode,
13383        colon_token: *const znode,
13384        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13385    );
13386}
13387extern "C" {
13388    pub fn zend_do_extended_info(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
13389}
13390extern "C" {
13391    pub fn zend_do_extended_fcall_begin(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
13392}
13393extern "C" {
13394    pub fn zend_do_extended_fcall_end(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
13395}
13396extern "C" {
13397    pub fn zend_do_ticks(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
13398}
13399extern "C" {
13400    pub fn zend_do_abstract_method(
13401        function_name: *const znode,
13402        modifiers: *mut znode,
13403        body: *const znode,
13404        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13405    );
13406}
13407extern "C" {
13408    pub fn zend_do_declare_constant(
13409        name: *mut znode,
13410        value: *mut znode,
13411        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13412    );
13413}
13414extern "C" {
13415    pub fn zend_do_build_namespace_name(
13416        result: *mut znode,
13417        prefix: *mut znode,
13418        name: *mut znode,
13419        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13420    );
13421}
13422extern "C" {
13423    pub fn zend_do_begin_namespace(
13424        name: *const znode,
13425        with_brackets: zend_bool,
13426        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13427    );
13428}
13429extern "C" {
13430    pub fn zend_do_end_namespace(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
13431}
13432extern "C" {
13433    pub fn zend_verify_namespace(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
13434}
13435extern "C" {
13436    pub fn zend_do_use(
13437        name: *mut znode,
13438        new_name: *mut znode,
13439        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13440    );
13441}
13442extern "C" {
13443    pub fn zend_do_use_non_class(
13444        ns_name: *mut znode,
13445        new_name: *mut znode,
13446        is_function: ::std::os::raw::c_int,
13447        case_sensitive: zend_bool,
13448        current_import_sub: *mut HashTable,
13449        lookup_table: *mut HashTable,
13450        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13451    );
13452}
13453extern "C" {
13454    pub fn zend_do_use_function(
13455        name: *mut znode,
13456        new_name: *mut znode,
13457        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13458    );
13459}
13460extern "C" {
13461    pub fn zend_do_use_const(
13462        name: *mut znode,
13463        new_name: *mut znode,
13464        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13465    );
13466}
13467extern "C" {
13468    pub fn zend_do_end_compilation(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
13469}
13470extern "C" {
13471    pub fn zend_do_constant_expression(
13472        result: *mut znode,
13473        ast: *mut zend_ast,
13474        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13475    );
13476}
13477extern "C" {
13478    pub fn zend_do_resolve_class_name(
13479        result: *mut znode,
13480        class_name: *mut znode,
13481        is_static: ::std::os::raw::c_int,
13482        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13483    );
13484}
13485extern "C" {
13486    pub fn zend_do_label(label: *mut znode, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
13487}
13488extern "C" {
13489    pub fn zend_do_goto(label: *const znode, tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
13490}
13491extern "C" {
13492    pub fn zend_resolve_goto_label(
13493        op_array: *mut zend_op_array,
13494        opline: *mut zend_op,
13495        pass2: ::std::os::raw::c_int,
13496        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13497    );
13498}
13499extern "C" {
13500    pub fn zend_release_labels(
13501        temporary: ::std::os::raw::c_int,
13502        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13503    );
13504}
13505extern "C" {
13506    pub fn zend_execute_scripts(
13507        type_: ::std::os::raw::c_int,
13508        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13509        retval: *mut *mut zval,
13510        file_count: ::std::os::raw::c_int,
13511        ...
13512    ) -> ::std::os::raw::c_int;
13513}
13514extern "C" {
13515    pub fn zend_destroy_file_handle(
13516        file_handle: *mut zend_file_handle,
13517        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13518    );
13519}
13520extern "C" {
13521    pub fn zend_cleanup_class_data(
13522        pce: *mut *mut zend_class_entry,
13523        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13524    ) -> ::std::os::raw::c_int;
13525}
13526extern "C" {
13527    pub fn zend_cleanup_user_class_data(
13528        pce: *mut *mut zend_class_entry,
13529        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13530    ) -> ::std::os::raw::c_int;
13531}
13532extern "C" {
13533    pub fn zend_cleanup_internal_class_data(
13534        ce: *mut zend_class_entry,
13535        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13536    );
13537}
13538extern "C" {
13539    pub fn zend_cleanup_internal_classes(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
13540}
13541extern "C" {
13542    pub fn zend_cleanup_function_data(
13543        function: *mut zend_function,
13544        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13545    ) -> ::std::os::raw::c_int;
13546}
13547extern "C" {
13548    pub fn zend_cleanup_function_data_full(
13549        function: *mut zend_function,
13550        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13551    ) -> ::std::os::raw::c_int;
13552}
13553extern "C" {
13554    pub fn zend_function_dtor(function: *mut zend_function);
13555}
13556extern "C" {
13557    pub fn zend_class_add_ref(ce: *mut *mut zend_class_entry);
13558}
13559extern "C" {
13560    pub fn zend_mangle_property_name(
13561        dest: *mut *mut ::std::os::raw::c_char,
13562        dest_length: *mut ::std::os::raw::c_int,
13563        src1: *const ::std::os::raw::c_char,
13564        src1_length: ::std::os::raw::c_int,
13565        src2: *const ::std::os::raw::c_char,
13566        src2_length: ::std::os::raw::c_int,
13567        internal: ::std::os::raw::c_int,
13568    );
13569}
13570extern "C" {
13571    pub fn zend_unmangle_property_name_ex(
13572        mangled_property: *const ::std::os::raw::c_char,
13573        mangled_property_len: ::std::os::raw::c_int,
13574        class_name: *mut *const ::std::os::raw::c_char,
13575        prop_name: *mut *const ::std::os::raw::c_char,
13576        prop_len: *mut ::std::os::raw::c_int,
13577    ) -> ::std::os::raw::c_int;
13578}
13579extern "C" {
13580    pub fn zend_do_first_catch(
13581        open_parentheses: *mut znode,
13582        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13583    );
13584}
13585extern "C" {
13586    pub fn zend_initialize_try_catch_element(
13587        catch_token: *mut znode,
13588        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13589    );
13590}
13591extern "C" {
13592    pub fn zend_do_mark_last_catch(
13593        first_catch: *const znode,
13594        last_additional_catch: *const znode,
13595        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13596    );
13597}
13598extern "C" {
13599    pub fn zend_is_compiling(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void) -> zend_bool;
13600}
13601extern "C" {
13602    pub fn zend_make_compiled_string_description(
13603        name: *const ::std::os::raw::c_char,
13604        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13605    ) -> *mut ::std::os::raw::c_char;
13606}
13607extern "C" {
13608    pub fn zend_initialize_class_data(
13609        ce: *mut zend_class_entry,
13610        nullify_handlers: zend_bool,
13611        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13612    );
13613}
13614extern "C" {
13615    pub fn zend_get_class_fetch_type(
13616        class_name: *const ::std::os::raw::c_char,
13617        class_name_len: uint,
13618    ) -> ::std::os::raw::c_int;
13619}
13620pub type zend_auto_global_callback = ::std::option::Option<
13621    unsafe extern "C" fn(
13622        name: *const ::std::os::raw::c_char,
13623        name_len: uint,
13624        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13625    ) -> zend_bool,
13626>;
13627#[repr(C)]
13628#[derive(Debug, Copy, Clone)]
13629pub struct _zend_auto_global {
13630    pub name: *const ::std::os::raw::c_char,
13631    pub name_len: uint,
13632    pub auto_global_callback: zend_auto_global_callback,
13633    pub jit: zend_bool,
13634    pub armed: zend_bool,
13635}
13636#[test]
13637fn bindgen_test_layout__zend_auto_global() {
13638    assert_eq!(
13639        ::std::mem::size_of::<_zend_auto_global>(),
13640        32usize,
13641        concat!("Size of: ", stringify!(_zend_auto_global))
13642    );
13643    assert_eq!(
13644        ::std::mem::align_of::<_zend_auto_global>(),
13645        8usize,
13646        concat!("Alignment of ", stringify!(_zend_auto_global))
13647    );
13648    assert_eq!(
13649        unsafe { &(*(::std::ptr::null::<_zend_auto_global>())).name as *const _ as usize },
13650        0usize,
13651        concat!(
13652            "Offset of field: ",
13653            stringify!(_zend_auto_global),
13654            "::",
13655            stringify!(name)
13656        )
13657    );
13658    assert_eq!(
13659        unsafe { &(*(::std::ptr::null::<_zend_auto_global>())).name_len as *const _ as usize },
13660        8usize,
13661        concat!(
13662            "Offset of field: ",
13663            stringify!(_zend_auto_global),
13664            "::",
13665            stringify!(name_len)
13666        )
13667    );
13668    assert_eq!(
13669        unsafe {
13670            &(*(::std::ptr::null::<_zend_auto_global>())).auto_global_callback as *const _ as usize
13671        },
13672        16usize,
13673        concat!(
13674            "Offset of field: ",
13675            stringify!(_zend_auto_global),
13676            "::",
13677            stringify!(auto_global_callback)
13678        )
13679    );
13680    assert_eq!(
13681        unsafe { &(*(::std::ptr::null::<_zend_auto_global>())).jit as *const _ as usize },
13682        24usize,
13683        concat!(
13684            "Offset of field: ",
13685            stringify!(_zend_auto_global),
13686            "::",
13687            stringify!(jit)
13688        )
13689    );
13690    assert_eq!(
13691        unsafe { &(*(::std::ptr::null::<_zend_auto_global>())).armed as *const _ as usize },
13692        25usize,
13693        concat!(
13694            "Offset of field: ",
13695            stringify!(_zend_auto_global),
13696            "::",
13697            stringify!(armed)
13698        )
13699    );
13700}
13701pub type zend_auto_global = _zend_auto_global;
13702extern "C" {
13703    pub fn zend_register_auto_global(
13704        name: *const ::std::os::raw::c_char,
13705        name_len: uint,
13706        jit: zend_bool,
13707        auto_global_callback: zend_auto_global_callback,
13708        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13709    ) -> ::std::os::raw::c_int;
13710}
13711extern "C" {
13712    pub fn zend_activate_auto_globals(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
13713}
13714extern "C" {
13715    pub fn zend_is_auto_global(
13716        name: *const ::std::os::raw::c_char,
13717        name_len: uint,
13718        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13719    ) -> zend_bool;
13720}
13721extern "C" {
13722    pub fn zend_is_auto_global_quick(
13723        name: *const ::std::os::raw::c_char,
13724        name_len: uint,
13725        hashval: ulong,
13726        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13727    ) -> zend_bool;
13728}
13729extern "C" {
13730    pub fn zend_dirname(path: *mut ::std::os::raw::c_char, len: size_t) -> size_t;
13731}
13732extern "C" {
13733    pub fn zendlex(
13734        zendlval: *mut znode,
13735        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13736    ) -> ::std::os::raw::c_int;
13737}
13738extern "C" {
13739    pub fn zend_add_literal(
13740        op_array: *mut zend_op_array,
13741        zv: *const zval,
13742        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13743    ) -> ::std::os::raw::c_int;
13744}
13745extern "C" {
13746    pub fn zend_get_opcode_name(opcode: zend_uchar) -> *const ::std::os::raw::c_char;
13747}
13748pub type zend_module_entry = _zend_module_entry;
13749pub type zend_module_dep = _zend_module_dep;
13750#[repr(C)]
13751#[derive(Debug, Copy, Clone)]
13752pub struct _zend_module_entry {
13753    pub size: ::std::os::raw::c_ushort,
13754    pub zend_api: ::std::os::raw::c_uint,
13755    pub zend_debug: ::std::os::raw::c_uchar,
13756    pub zts: ::std::os::raw::c_uchar,
13757    pub ini_entry: *const _zend_ini_entry,
13758    pub deps: *const _zend_module_dep,
13759    pub name: *const ::std::os::raw::c_char,
13760    pub functions: *const _zend_function_entry,
13761    pub module_startup_func: ::std::option::Option<
13762        unsafe extern "C" fn(
13763            type_: ::std::os::raw::c_int,
13764            module_number: ::std::os::raw::c_int,
13765            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13766        ) -> ::std::os::raw::c_int,
13767    >,
13768    pub module_shutdown_func: ::std::option::Option<
13769        unsafe extern "C" fn(
13770            type_: ::std::os::raw::c_int,
13771            module_number: ::std::os::raw::c_int,
13772            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13773        ) -> ::std::os::raw::c_int,
13774    >,
13775    pub request_startup_func: ::std::option::Option<
13776        unsafe extern "C" fn(
13777            type_: ::std::os::raw::c_int,
13778            module_number: ::std::os::raw::c_int,
13779            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13780        ) -> ::std::os::raw::c_int,
13781    >,
13782    pub request_shutdown_func: ::std::option::Option<
13783        unsafe extern "C" fn(
13784            type_: ::std::os::raw::c_int,
13785            module_number: ::std::os::raw::c_int,
13786            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13787        ) -> ::std::os::raw::c_int,
13788    >,
13789    pub info_func: ::std::option::Option<
13790        unsafe extern "C" fn(
13791            zend_module: *mut zend_module_entry,
13792            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13793        ),
13794    >,
13795    pub version: *const ::std::os::raw::c_char,
13796    pub globals_size: size_t,
13797    pub globals_id_ptr: *mut ts_rsrc_id,
13798    pub globals_ctor: ::std::option::Option<
13799        unsafe extern "C" fn(
13800            global: *mut ::std::os::raw::c_void,
13801            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13802        ),
13803    >,
13804    pub globals_dtor: ::std::option::Option<
13805        unsafe extern "C" fn(
13806            global: *mut ::std::os::raw::c_void,
13807            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
13808        ),
13809    >,
13810    pub post_deactivate_func:
13811        ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_int>,
13812    pub module_started: ::std::os::raw::c_int,
13813    pub type_: ::std::os::raw::c_uchar,
13814    pub handle: *mut ::std::os::raw::c_void,
13815    pub module_number: ::std::os::raw::c_int,
13816    pub build_id: *const ::std::os::raw::c_char,
13817}
13818#[test]
13819fn bindgen_test_layout__zend_module_entry() {
13820    assert_eq!(
13821        ::std::mem::size_of::<_zend_module_entry>(),
13822        168usize,
13823        concat!("Size of: ", stringify!(_zend_module_entry))
13824    );
13825    assert_eq!(
13826        ::std::mem::align_of::<_zend_module_entry>(),
13827        8usize,
13828        concat!("Alignment of ", stringify!(_zend_module_entry))
13829    );
13830    assert_eq!(
13831        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).size as *const _ as usize },
13832        0usize,
13833        concat!(
13834            "Offset of field: ",
13835            stringify!(_zend_module_entry),
13836            "::",
13837            stringify!(size)
13838        )
13839    );
13840    assert_eq!(
13841        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).zend_api as *const _ as usize },
13842        4usize,
13843        concat!(
13844            "Offset of field: ",
13845            stringify!(_zend_module_entry),
13846            "::",
13847            stringify!(zend_api)
13848        )
13849    );
13850    assert_eq!(
13851        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).zend_debug as *const _ as usize },
13852        8usize,
13853        concat!(
13854            "Offset of field: ",
13855            stringify!(_zend_module_entry),
13856            "::",
13857            stringify!(zend_debug)
13858        )
13859    );
13860    assert_eq!(
13861        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).zts as *const _ as usize },
13862        9usize,
13863        concat!(
13864            "Offset of field: ",
13865            stringify!(_zend_module_entry),
13866            "::",
13867            stringify!(zts)
13868        )
13869    );
13870    assert_eq!(
13871        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).ini_entry as *const _ as usize },
13872        16usize,
13873        concat!(
13874            "Offset of field: ",
13875            stringify!(_zend_module_entry),
13876            "::",
13877            stringify!(ini_entry)
13878        )
13879    );
13880    assert_eq!(
13881        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).deps as *const _ as usize },
13882        24usize,
13883        concat!(
13884            "Offset of field: ",
13885            stringify!(_zend_module_entry),
13886            "::",
13887            stringify!(deps)
13888        )
13889    );
13890    assert_eq!(
13891        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).name as *const _ as usize },
13892        32usize,
13893        concat!(
13894            "Offset of field: ",
13895            stringify!(_zend_module_entry),
13896            "::",
13897            stringify!(name)
13898        )
13899    );
13900    assert_eq!(
13901        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).functions as *const _ as usize },
13902        40usize,
13903        concat!(
13904            "Offset of field: ",
13905            stringify!(_zend_module_entry),
13906            "::",
13907            stringify!(functions)
13908        )
13909    );
13910    assert_eq!(
13911        unsafe {
13912            &(*(::std::ptr::null::<_zend_module_entry>())).module_startup_func as *const _ as usize
13913        },
13914        48usize,
13915        concat!(
13916            "Offset of field: ",
13917            stringify!(_zend_module_entry),
13918            "::",
13919            stringify!(module_startup_func)
13920        )
13921    );
13922    assert_eq!(
13923        unsafe {
13924            &(*(::std::ptr::null::<_zend_module_entry>())).module_shutdown_func as *const _ as usize
13925        },
13926        56usize,
13927        concat!(
13928            "Offset of field: ",
13929            stringify!(_zend_module_entry),
13930            "::",
13931            stringify!(module_shutdown_func)
13932        )
13933    );
13934    assert_eq!(
13935        unsafe {
13936            &(*(::std::ptr::null::<_zend_module_entry>())).request_startup_func as *const _ as usize
13937        },
13938        64usize,
13939        concat!(
13940            "Offset of field: ",
13941            stringify!(_zend_module_entry),
13942            "::",
13943            stringify!(request_startup_func)
13944        )
13945    );
13946    assert_eq!(
13947        unsafe {
13948            &(*(::std::ptr::null::<_zend_module_entry>())).request_shutdown_func as *const _
13949                as usize
13950        },
13951        72usize,
13952        concat!(
13953            "Offset of field: ",
13954            stringify!(_zend_module_entry),
13955            "::",
13956            stringify!(request_shutdown_func)
13957        )
13958    );
13959    assert_eq!(
13960        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).info_func as *const _ as usize },
13961        80usize,
13962        concat!(
13963            "Offset of field: ",
13964            stringify!(_zend_module_entry),
13965            "::",
13966            stringify!(info_func)
13967        )
13968    );
13969    assert_eq!(
13970        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).version as *const _ as usize },
13971        88usize,
13972        concat!(
13973            "Offset of field: ",
13974            stringify!(_zend_module_entry),
13975            "::",
13976            stringify!(version)
13977        )
13978    );
13979    assert_eq!(
13980        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).globals_size as *const _ as usize },
13981        96usize,
13982        concat!(
13983            "Offset of field: ",
13984            stringify!(_zend_module_entry),
13985            "::",
13986            stringify!(globals_size)
13987        )
13988    );
13989    assert_eq!(
13990        unsafe {
13991            &(*(::std::ptr::null::<_zend_module_entry>())).globals_id_ptr as *const _ as usize
13992        },
13993        104usize,
13994        concat!(
13995            "Offset of field: ",
13996            stringify!(_zend_module_entry),
13997            "::",
13998            stringify!(globals_id_ptr)
13999        )
14000    );
14001    assert_eq!(
14002        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).globals_ctor as *const _ as usize },
14003        112usize,
14004        concat!(
14005            "Offset of field: ",
14006            stringify!(_zend_module_entry),
14007            "::",
14008            stringify!(globals_ctor)
14009        )
14010    );
14011    assert_eq!(
14012        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).globals_dtor as *const _ as usize },
14013        120usize,
14014        concat!(
14015            "Offset of field: ",
14016            stringify!(_zend_module_entry),
14017            "::",
14018            stringify!(globals_dtor)
14019        )
14020    );
14021    assert_eq!(
14022        unsafe {
14023            &(*(::std::ptr::null::<_zend_module_entry>())).post_deactivate_func as *const _ as usize
14024        },
14025        128usize,
14026        concat!(
14027            "Offset of field: ",
14028            stringify!(_zend_module_entry),
14029            "::",
14030            stringify!(post_deactivate_func)
14031        )
14032    );
14033    assert_eq!(
14034        unsafe {
14035            &(*(::std::ptr::null::<_zend_module_entry>())).module_started as *const _ as usize
14036        },
14037        136usize,
14038        concat!(
14039            "Offset of field: ",
14040            stringify!(_zend_module_entry),
14041            "::",
14042            stringify!(module_started)
14043        )
14044    );
14045    assert_eq!(
14046        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).type_ as *const _ as usize },
14047        140usize,
14048        concat!(
14049            "Offset of field: ",
14050            stringify!(_zend_module_entry),
14051            "::",
14052            stringify!(type_)
14053        )
14054    );
14055    assert_eq!(
14056        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).handle as *const _ as usize },
14057        144usize,
14058        concat!(
14059            "Offset of field: ",
14060            stringify!(_zend_module_entry),
14061            "::",
14062            stringify!(handle)
14063        )
14064    );
14065    assert_eq!(
14066        unsafe {
14067            &(*(::std::ptr::null::<_zend_module_entry>())).module_number as *const _ as usize
14068        },
14069        152usize,
14070        concat!(
14071            "Offset of field: ",
14072            stringify!(_zend_module_entry),
14073            "::",
14074            stringify!(module_number)
14075        )
14076    );
14077    assert_eq!(
14078        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).build_id as *const _ as usize },
14079        160usize,
14080        concat!(
14081            "Offset of field: ",
14082            stringify!(_zend_module_entry),
14083            "::",
14084            stringify!(build_id)
14085        )
14086    );
14087}
14088#[repr(C)]
14089#[derive(Debug, Copy, Clone)]
14090pub struct _zend_module_dep {
14091    pub name: *const ::std::os::raw::c_char,
14092    pub rel: *const ::std::os::raw::c_char,
14093    pub version: *const ::std::os::raw::c_char,
14094    pub type_: ::std::os::raw::c_uchar,
14095}
14096#[test]
14097fn bindgen_test_layout__zend_module_dep() {
14098    assert_eq!(
14099        ::std::mem::size_of::<_zend_module_dep>(),
14100        32usize,
14101        concat!("Size of: ", stringify!(_zend_module_dep))
14102    );
14103    assert_eq!(
14104        ::std::mem::align_of::<_zend_module_dep>(),
14105        8usize,
14106        concat!("Alignment of ", stringify!(_zend_module_dep))
14107    );
14108    assert_eq!(
14109        unsafe { &(*(::std::ptr::null::<_zend_module_dep>())).name as *const _ as usize },
14110        0usize,
14111        concat!(
14112            "Offset of field: ",
14113            stringify!(_zend_module_dep),
14114            "::",
14115            stringify!(name)
14116        )
14117    );
14118    assert_eq!(
14119        unsafe { &(*(::std::ptr::null::<_zend_module_dep>())).rel as *const _ as usize },
14120        8usize,
14121        concat!(
14122            "Offset of field: ",
14123            stringify!(_zend_module_dep),
14124            "::",
14125            stringify!(rel)
14126        )
14127    );
14128    assert_eq!(
14129        unsafe { &(*(::std::ptr::null::<_zend_module_dep>())).version as *const _ as usize },
14130        16usize,
14131        concat!(
14132            "Offset of field: ",
14133            stringify!(_zend_module_dep),
14134            "::",
14135            stringify!(version)
14136        )
14137    );
14138    assert_eq!(
14139        unsafe { &(*(::std::ptr::null::<_zend_module_dep>())).type_ as *const _ as usize },
14140        24usize,
14141        concat!(
14142            "Offset of field: ",
14143            stringify!(_zend_module_dep),
14144            "::",
14145            stringify!(type_)
14146        )
14147    );
14148}
14149extern "C" {
14150    pub static mut module_registry: HashTable;
14151}
14152#[repr(C)]
14153#[derive(Debug, Copy, Clone)]
14154pub struct _zend_rsrc_list_entry {
14155    pub ptr: *mut ::std::os::raw::c_void,
14156    pub type_: ::std::os::raw::c_int,
14157    pub refcount: ::std::os::raw::c_int,
14158}
14159#[test]
14160fn bindgen_test_layout__zend_rsrc_list_entry() {
14161    assert_eq!(
14162        ::std::mem::size_of::<_zend_rsrc_list_entry>(),
14163        16usize,
14164        concat!("Size of: ", stringify!(_zend_rsrc_list_entry))
14165    );
14166    assert_eq!(
14167        ::std::mem::align_of::<_zend_rsrc_list_entry>(),
14168        8usize,
14169        concat!("Alignment of ", stringify!(_zend_rsrc_list_entry))
14170    );
14171    assert_eq!(
14172        unsafe { &(*(::std::ptr::null::<_zend_rsrc_list_entry>())).ptr as *const _ as usize },
14173        0usize,
14174        concat!(
14175            "Offset of field: ",
14176            stringify!(_zend_rsrc_list_entry),
14177            "::",
14178            stringify!(ptr)
14179        )
14180    );
14181    assert_eq!(
14182        unsafe { &(*(::std::ptr::null::<_zend_rsrc_list_entry>())).type_ as *const _ as usize },
14183        8usize,
14184        concat!(
14185            "Offset of field: ",
14186            stringify!(_zend_rsrc_list_entry),
14187            "::",
14188            stringify!(type_)
14189        )
14190    );
14191    assert_eq!(
14192        unsafe { &(*(::std::ptr::null::<_zend_rsrc_list_entry>())).refcount as *const _ as usize },
14193        12usize,
14194        concat!(
14195            "Offset of field: ",
14196            stringify!(_zend_rsrc_list_entry),
14197            "::",
14198            stringify!(refcount)
14199        )
14200    );
14201}
14202pub type zend_rsrc_list_entry = _zend_rsrc_list_entry;
14203pub type rsrc_dtor_func_t = ::std::option::Option<
14204    unsafe extern "C" fn(
14205        rsrc: *mut zend_rsrc_list_entry,
14206        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14207    ),
14208>;
14209#[repr(C)]
14210#[derive(Debug, Copy, Clone)]
14211pub struct _zend_rsrc_list_dtors_entry {
14212    pub list_dtor: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
14213    pub plist_dtor: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
14214    pub list_dtor_ex: rsrc_dtor_func_t,
14215    pub plist_dtor_ex: rsrc_dtor_func_t,
14216    pub type_name: *const ::std::os::raw::c_char,
14217    pub module_number: ::std::os::raw::c_int,
14218    pub resource_id: ::std::os::raw::c_int,
14219    pub type_: ::std::os::raw::c_uchar,
14220}
14221#[test]
14222fn bindgen_test_layout__zend_rsrc_list_dtors_entry() {
14223    assert_eq!(
14224        ::std::mem::size_of::<_zend_rsrc_list_dtors_entry>(),
14225        56usize,
14226        concat!("Size of: ", stringify!(_zend_rsrc_list_dtors_entry))
14227    );
14228    assert_eq!(
14229        ::std::mem::align_of::<_zend_rsrc_list_dtors_entry>(),
14230        8usize,
14231        concat!("Alignment of ", stringify!(_zend_rsrc_list_dtors_entry))
14232    );
14233    assert_eq!(
14234        unsafe {
14235            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).list_dtor as *const _ as usize
14236        },
14237        0usize,
14238        concat!(
14239            "Offset of field: ",
14240            stringify!(_zend_rsrc_list_dtors_entry),
14241            "::",
14242            stringify!(list_dtor)
14243        )
14244    );
14245    assert_eq!(
14246        unsafe {
14247            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).plist_dtor as *const _ as usize
14248        },
14249        8usize,
14250        concat!(
14251            "Offset of field: ",
14252            stringify!(_zend_rsrc_list_dtors_entry),
14253            "::",
14254            stringify!(plist_dtor)
14255        )
14256    );
14257    assert_eq!(
14258        unsafe {
14259            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).list_dtor_ex as *const _
14260                as usize
14261        },
14262        16usize,
14263        concat!(
14264            "Offset of field: ",
14265            stringify!(_zend_rsrc_list_dtors_entry),
14266            "::",
14267            stringify!(list_dtor_ex)
14268        )
14269    );
14270    assert_eq!(
14271        unsafe {
14272            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).plist_dtor_ex as *const _
14273                as usize
14274        },
14275        24usize,
14276        concat!(
14277            "Offset of field: ",
14278            stringify!(_zend_rsrc_list_dtors_entry),
14279            "::",
14280            stringify!(plist_dtor_ex)
14281        )
14282    );
14283    assert_eq!(
14284        unsafe {
14285            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).type_name as *const _ as usize
14286        },
14287        32usize,
14288        concat!(
14289            "Offset of field: ",
14290            stringify!(_zend_rsrc_list_dtors_entry),
14291            "::",
14292            stringify!(type_name)
14293        )
14294    );
14295    assert_eq!(
14296        unsafe {
14297            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).module_number as *const _
14298                as usize
14299        },
14300        40usize,
14301        concat!(
14302            "Offset of field: ",
14303            stringify!(_zend_rsrc_list_dtors_entry),
14304            "::",
14305            stringify!(module_number)
14306        )
14307    );
14308    assert_eq!(
14309        unsafe {
14310            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).resource_id as *const _ as usize
14311        },
14312        44usize,
14313        concat!(
14314            "Offset of field: ",
14315            stringify!(_zend_rsrc_list_dtors_entry),
14316            "::",
14317            stringify!(resource_id)
14318        )
14319    );
14320    assert_eq!(
14321        unsafe {
14322            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).type_ as *const _ as usize
14323        },
14324        48usize,
14325        concat!(
14326            "Offset of field: ",
14327            stringify!(_zend_rsrc_list_dtors_entry),
14328            "::",
14329            stringify!(type_)
14330        )
14331    );
14332}
14333pub type zend_rsrc_list_dtors_entry = _zend_rsrc_list_dtors_entry;
14334extern "C" {
14335    pub fn zend_register_list_destructors(
14336        ld: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
14337        pld: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
14338        module_number: ::std::os::raw::c_int,
14339    ) -> ::std::os::raw::c_int;
14340}
14341extern "C" {
14342    pub fn zend_register_list_destructors_ex(
14343        ld: rsrc_dtor_func_t,
14344        pld: rsrc_dtor_func_t,
14345        type_name: *const ::std::os::raw::c_char,
14346        module_number: ::std::os::raw::c_int,
14347    ) -> ::std::os::raw::c_int;
14348}
14349extern "C" {
14350    pub fn zend_clean_module_rsrc_dtors(
14351        module_number: ::std::os::raw::c_int,
14352        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14353    );
14354}
14355extern "C" {
14356    pub fn zend_init_rsrc_list(
14357        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14358    ) -> ::std::os::raw::c_int;
14359}
14360extern "C" {
14361    pub fn zend_init_rsrc_plist(
14362        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14363    ) -> ::std::os::raw::c_int;
14364}
14365extern "C" {
14366    pub fn zend_destroy_rsrc_list(
14367        ht: *mut HashTable,
14368        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14369    );
14370}
14371extern "C" {
14372    pub fn zend_init_rsrc_list_dtors() -> ::std::os::raw::c_int;
14373}
14374extern "C" {
14375    pub fn zend_destroy_rsrc_list_dtors();
14376}
14377extern "C" {
14378    pub fn zend_list_insert(
14379        ptr: *mut ::std::os::raw::c_void,
14380        type_: ::std::os::raw::c_int,
14381        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14382    ) -> ::std::os::raw::c_int;
14383}
14384extern "C" {
14385    pub fn _zend_list_addref(
14386        id: ::std::os::raw::c_int,
14387        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14388    ) -> ::std::os::raw::c_int;
14389}
14390extern "C" {
14391    pub fn _zend_list_delete(
14392        id: ::std::os::raw::c_int,
14393        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14394    ) -> ::std::os::raw::c_int;
14395}
14396extern "C" {
14397    pub fn _zend_list_find(
14398        id: ::std::os::raw::c_int,
14399        type_: *mut ::std::os::raw::c_int,
14400        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14401    ) -> *mut ::std::os::raw::c_void;
14402}
14403extern "C" {
14404    pub fn zend_register_resource(
14405        rsrc_result: *mut zval,
14406        rsrc_pointer: *mut ::std::os::raw::c_void,
14407        rsrc_type: ::std::os::raw::c_int,
14408        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14409    ) -> ::std::os::raw::c_int;
14410}
14411extern "C" {
14412    pub fn zend_fetch_resource(
14413        passed_id: *mut *mut zval,
14414        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14415        default_id: ::std::os::raw::c_int,
14416        resource_type_name: *const ::std::os::raw::c_char,
14417        found_resource_type: *mut ::std::os::raw::c_int,
14418        num_resource_types: ::std::os::raw::c_int,
14419        ...
14420    ) -> *mut ::std::os::raw::c_void;
14421}
14422extern "C" {
14423    pub fn zend_rsrc_list_get_rsrc_type(
14424        resource: ::std::os::raw::c_int,
14425        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14426    ) -> *const ::std::os::raw::c_char;
14427}
14428extern "C" {
14429    pub fn zend_fetch_list_dtor_id(type_name: *mut ::std::os::raw::c_char)
14430        -> ::std::os::raw::c_int;
14431}
14432extern "C" {
14433    pub static mut zend_execute_ex: ::std::option::Option<
14434        unsafe extern "C" fn(
14435            execute_data: *mut zend_execute_data,
14436            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14437        ),
14438    >;
14439}
14440extern "C" {
14441    pub static mut zend_execute_internal: ::std::option::Option<
14442        unsafe extern "C" fn(
14443            execute_data_ptr: *mut zend_execute_data,
14444            fci: *mut _zend_fcall_info,
14445            return_value_used: ::std::os::raw::c_int,
14446            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14447        ),
14448    >;
14449}
14450extern "C" {
14451    pub fn zend_create_execute_data_from_op_array(
14452        op_array: *mut zend_op_array,
14453        nested: zend_bool,
14454        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14455    ) -> *mut zend_execute_data;
14456}
14457extern "C" {
14458    pub fn zend_execute(
14459        op_array: *mut zend_op_array,
14460        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14461    );
14462}
14463extern "C" {
14464    pub fn zend_is_true(op: *mut zval) -> ::std::os::raw::c_int;
14465}
14466extern "C" {
14467    pub fn zend_lookup_class(
14468        name: *const ::std::os::raw::c_char,
14469        name_length: ::std::os::raw::c_int,
14470        ce: *mut *mut *mut zend_class_entry,
14471        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14472    ) -> ::std::os::raw::c_int;
14473}
14474extern "C" {
14475    pub fn zend_lookup_class_ex(
14476        name: *const ::std::os::raw::c_char,
14477        name_length: ::std::os::raw::c_int,
14478        key: *const zend_literal,
14479        use_autoload: ::std::os::raw::c_int,
14480        ce: *mut *mut *mut zend_class_entry,
14481        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14482    ) -> ::std::os::raw::c_int;
14483}
14484extern "C" {
14485    pub fn zend_eval_string(
14486        str_: *mut ::std::os::raw::c_char,
14487        retval_ptr: *mut zval,
14488        string_name: *mut ::std::os::raw::c_char,
14489        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14490    ) -> ::std::os::raw::c_int;
14491}
14492extern "C" {
14493    pub fn zend_eval_stringl(
14494        str_: *mut ::std::os::raw::c_char,
14495        str_len: ::std::os::raw::c_int,
14496        retval_ptr: *mut zval,
14497        string_name: *mut ::std::os::raw::c_char,
14498        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14499    ) -> ::std::os::raw::c_int;
14500}
14501extern "C" {
14502    pub fn zend_eval_string_ex(
14503        str_: *mut ::std::os::raw::c_char,
14504        retval_ptr: *mut zval,
14505        string_name: *mut ::std::os::raw::c_char,
14506        handle_exceptions: ::std::os::raw::c_int,
14507        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14508    ) -> ::std::os::raw::c_int;
14509}
14510extern "C" {
14511    pub fn zend_eval_stringl_ex(
14512        str_: *mut ::std::os::raw::c_char,
14513        str_len: ::std::os::raw::c_int,
14514        retval_ptr: *mut zval,
14515        string_name: *mut ::std::os::raw::c_char,
14516        handle_exceptions: ::std::os::raw::c_int,
14517        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14518    ) -> ::std::os::raw::c_int;
14519}
14520extern "C" {
14521    pub fn zend_verify_arg_class_kind(
14522        cur_arg_info: *const zend_arg_info,
14523        fetch_type: ulong,
14524        class_name: *mut *const ::std::os::raw::c_char,
14525        pce: *mut *mut zend_class_entry,
14526        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14527    ) -> *mut ::std::os::raw::c_char;
14528}
14529extern "C" {
14530    pub fn zend_verify_arg_error(
14531        error_type: ::std::os::raw::c_int,
14532        zf: *const zend_function,
14533        arg_num: zend_uint,
14534        need_msg: *const ::std::os::raw::c_char,
14535        need_kind: *const ::std::os::raw::c_char,
14536        given_msg: *const ::std::os::raw::c_char,
14537        given_kind: *const ::std::os::raw::c_char,
14538        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14539    ) -> ::std::os::raw::c_int;
14540}
14541#[repr(C)]
14542#[derive(Debug, Copy, Clone)]
14543pub struct _zend_vm_stack {
14544    pub top: *mut *mut ::std::os::raw::c_void,
14545    pub end: *mut *mut ::std::os::raw::c_void,
14546    pub prev: zend_vm_stack,
14547}
14548#[test]
14549fn bindgen_test_layout__zend_vm_stack() {
14550    assert_eq!(
14551        ::std::mem::size_of::<_zend_vm_stack>(),
14552        24usize,
14553        concat!("Size of: ", stringify!(_zend_vm_stack))
14554    );
14555    assert_eq!(
14556        ::std::mem::align_of::<_zend_vm_stack>(),
14557        8usize,
14558        concat!("Alignment of ", stringify!(_zend_vm_stack))
14559    );
14560    assert_eq!(
14561        unsafe { &(*(::std::ptr::null::<_zend_vm_stack>())).top as *const _ as usize },
14562        0usize,
14563        concat!(
14564            "Offset of field: ",
14565            stringify!(_zend_vm_stack),
14566            "::",
14567            stringify!(top)
14568        )
14569    );
14570    assert_eq!(
14571        unsafe { &(*(::std::ptr::null::<_zend_vm_stack>())).end as *const _ as usize },
14572        8usize,
14573        concat!(
14574            "Offset of field: ",
14575            stringify!(_zend_vm_stack),
14576            "::",
14577            stringify!(end)
14578        )
14579    );
14580    assert_eq!(
14581        unsafe { &(*(::std::ptr::null::<_zend_vm_stack>())).prev as *const _ as usize },
14582        16usize,
14583        concat!(
14584            "Offset of field: ",
14585            stringify!(_zend_vm_stack),
14586            "::",
14587            stringify!(prev)
14588        )
14589    );
14590}
14591extern "C" {
14592    pub fn zend_get_executed_filename(
14593        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14594    ) -> *const ::std::os::raw::c_char;
14595}
14596extern "C" {
14597    pub fn zend_get_executed_lineno(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void) -> uint;
14598}
14599extern "C" {
14600    pub fn zend_is_executing(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void) -> zend_bool;
14601}
14602extern "C" {
14603    pub fn zend_set_timeout(seconds: ::std::os::raw::c_long, reset_signals: ::std::os::raw::c_int);
14604}
14605extern "C" {
14606    pub fn zend_unset_timeout(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
14607}
14608extern "C" {
14609    pub fn zend_timeout(dummy: ::std::os::raw::c_int);
14610}
14611extern "C" {
14612    pub fn zend_fetch_class(
14613        class_name: *const ::std::os::raw::c_char,
14614        class_name_len: uint,
14615        fetch_type: ::std::os::raw::c_int,
14616        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14617    ) -> *mut zend_class_entry;
14618}
14619extern "C" {
14620    pub fn zend_fetch_class_by_name(
14621        class_name: *const ::std::os::raw::c_char,
14622        class_name_len: uint,
14623        key: *const zend_literal,
14624        fetch_type: ::std::os::raw::c_int,
14625        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14626    ) -> *mut zend_class_entry;
14627}
14628extern "C" {
14629    pub fn zend_verify_abstract_class(
14630        ce: *mut zend_class_entry,
14631        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14632    );
14633}
14634extern "C" {
14635    pub fn zend_fetch_dimension_by_zval(
14636        result: *mut *mut zval,
14637        container: *mut zval,
14638        dim: *mut zval,
14639        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14640    );
14641}
14642extern "C" {
14643    pub fn zend_get_compiled_variable_value(
14644        execute_data_ptr: *const zend_execute_data,
14645        var: zend_uint,
14646    ) -> *mut *mut zval;
14647}
14648extern "C" {
14649    pub fn zend_set_user_opcode_handler(
14650        opcode: zend_uchar,
14651        handler: user_opcode_handler_t,
14652    ) -> ::std::os::raw::c_int;
14653}
14654extern "C" {
14655    pub fn zend_get_user_opcode_handler(opcode: zend_uchar) -> user_opcode_handler_t;
14656}
14657#[repr(C)]
14658#[derive(Debug, Copy, Clone)]
14659pub struct _zend_free_op {
14660    pub var: *mut zval,
14661}
14662#[test]
14663fn bindgen_test_layout__zend_free_op() {
14664    assert_eq!(
14665        ::std::mem::size_of::<_zend_free_op>(),
14666        8usize,
14667        concat!("Size of: ", stringify!(_zend_free_op))
14668    );
14669    assert_eq!(
14670        ::std::mem::align_of::<_zend_free_op>(),
14671        8usize,
14672        concat!("Alignment of ", stringify!(_zend_free_op))
14673    );
14674    assert_eq!(
14675        unsafe { &(*(::std::ptr::null::<_zend_free_op>())).var as *const _ as usize },
14676        0usize,
14677        concat!(
14678            "Offset of field: ",
14679            stringify!(_zend_free_op),
14680            "::",
14681            stringify!(var)
14682        )
14683    );
14684}
14685pub type zend_free_op = _zend_free_op;
14686extern "C" {
14687    pub fn zend_get_zval_ptr(
14688        op_type: ::std::os::raw::c_int,
14689        node: *const znode_op,
14690        execute_data: *const zend_execute_data,
14691        should_free: *mut zend_free_op,
14692        type_: ::std::os::raw::c_int,
14693        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14694    ) -> *mut zval;
14695}
14696extern "C" {
14697    pub fn zend_get_zval_ptr_ptr(
14698        op_type: ::std::os::raw::c_int,
14699        node: *const znode_op,
14700        execute_data: *const zend_execute_data,
14701        should_free: *mut zend_free_op,
14702        type_: ::std::os::raw::c_int,
14703        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14704    ) -> *mut *mut zval;
14705}
14706extern "C" {
14707    pub fn zend_do_fcall(
14708        execute_data: *mut zend_execute_data,
14709        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14710    ) -> ::std::os::raw::c_int;
14711}
14712extern "C" {
14713    pub fn zend_clean_and_cache_symbol_table(
14714        symbol_table: *mut HashTable,
14715        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14716    );
14717}
14718extern "C" {
14719    pub fn zend_free_compiled_variables(
14720        execute_data: *mut zend_execute_data,
14721        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14722    );
14723}
14724#[repr(C)]
14725#[derive(Debug, Copy, Clone)]
14726pub struct _zend_function_entry {
14727    pub fname: *const ::std::os::raw::c_char,
14728    pub handler: ::std::option::Option<
14729        unsafe extern "C" fn(
14730            ht: ::std::os::raw::c_int,
14731            return_value: *mut zval,
14732            return_value_ptr: *mut *mut zval,
14733            this_ptr: *mut zval,
14734            return_value_used: ::std::os::raw::c_int,
14735            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
14736        ),
14737    >,
14738    pub arg_info: *const _zend_arg_info,
14739    pub num_args: zend_uint,
14740    pub flags: zend_uint,
14741}
14742#[test]
14743fn bindgen_test_layout__zend_function_entry() {
14744    assert_eq!(
14745        ::std::mem::size_of::<_zend_function_entry>(),
14746        32usize,
14747        concat!("Size of: ", stringify!(_zend_function_entry))
14748    );
14749    assert_eq!(
14750        ::std::mem::align_of::<_zend_function_entry>(),
14751        8usize,
14752        concat!("Alignment of ", stringify!(_zend_function_entry))
14753    );
14754    assert_eq!(
14755        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).fname as *const _ as usize },
14756        0usize,
14757        concat!(
14758            "Offset of field: ",
14759            stringify!(_zend_function_entry),
14760            "::",
14761            stringify!(fname)
14762        )
14763    );
14764    assert_eq!(
14765        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).handler as *const _ as usize },
14766        8usize,
14767        concat!(
14768            "Offset of field: ",
14769            stringify!(_zend_function_entry),
14770            "::",
14771            stringify!(handler)
14772        )
14773    );
14774    assert_eq!(
14775        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).arg_info as *const _ as usize },
14776        16usize,
14777        concat!(
14778            "Offset of field: ",
14779            stringify!(_zend_function_entry),
14780            "::",
14781            stringify!(arg_info)
14782        )
14783    );
14784    assert_eq!(
14785        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).num_args as *const _ as usize },
14786        24usize,
14787        concat!(
14788            "Offset of field: ",
14789            stringify!(_zend_function_entry),
14790            "::",
14791            stringify!(num_args)
14792        )
14793    );
14794    assert_eq!(
14795        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).flags as *const _ as usize },
14796        28usize,
14797        concat!(
14798            "Offset of field: ",
14799            stringify!(_zend_function_entry),
14800            "::",
14801            stringify!(flags)
14802        )
14803    );
14804}
14805pub type zend_function_entry = _zend_function_entry;
14806#[repr(C)]
14807#[derive(Debug, Copy, Clone)]
14808pub struct _zend_fcall_info {
14809    pub size: size_t,
14810    pub function_table: *mut HashTable,
14811    pub function_name: *mut zval,
14812    pub symbol_table: *mut HashTable,
14813    pub retval_ptr_ptr: *mut *mut zval,
14814    pub param_count: zend_uint,
14815    pub params: *mut *mut *mut zval,
14816    pub object_ptr: *mut zval,
14817    pub no_separation: zend_bool,
14818}
14819#[test]
14820fn bindgen_test_layout__zend_fcall_info() {
14821    assert_eq!(
14822        ::std::mem::size_of::<_zend_fcall_info>(),
14823        72usize,
14824        concat!("Size of: ", stringify!(_zend_fcall_info))
14825    );
14826    assert_eq!(
14827        ::std::mem::align_of::<_zend_fcall_info>(),
14828        8usize,
14829        concat!("Alignment of ", stringify!(_zend_fcall_info))
14830    );
14831    assert_eq!(
14832        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).size as *const _ as usize },
14833        0usize,
14834        concat!(
14835            "Offset of field: ",
14836            stringify!(_zend_fcall_info),
14837            "::",
14838            stringify!(size)
14839        )
14840    );
14841    assert_eq!(
14842        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).function_table as *const _ as usize },
14843        8usize,
14844        concat!(
14845            "Offset of field: ",
14846            stringify!(_zend_fcall_info),
14847            "::",
14848            stringify!(function_table)
14849        )
14850    );
14851    assert_eq!(
14852        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).function_name as *const _ as usize },
14853        16usize,
14854        concat!(
14855            "Offset of field: ",
14856            stringify!(_zend_fcall_info),
14857            "::",
14858            stringify!(function_name)
14859        )
14860    );
14861    assert_eq!(
14862        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).symbol_table as *const _ as usize },
14863        24usize,
14864        concat!(
14865            "Offset of field: ",
14866            stringify!(_zend_fcall_info),
14867            "::",
14868            stringify!(symbol_table)
14869        )
14870    );
14871    assert_eq!(
14872        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).retval_ptr_ptr as *const _ as usize },
14873        32usize,
14874        concat!(
14875            "Offset of field: ",
14876            stringify!(_zend_fcall_info),
14877            "::",
14878            stringify!(retval_ptr_ptr)
14879        )
14880    );
14881    assert_eq!(
14882        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).param_count as *const _ as usize },
14883        40usize,
14884        concat!(
14885            "Offset of field: ",
14886            stringify!(_zend_fcall_info),
14887            "::",
14888            stringify!(param_count)
14889        )
14890    );
14891    assert_eq!(
14892        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).params as *const _ as usize },
14893        48usize,
14894        concat!(
14895            "Offset of field: ",
14896            stringify!(_zend_fcall_info),
14897            "::",
14898            stringify!(params)
14899        )
14900    );
14901    assert_eq!(
14902        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).object_ptr as *const _ as usize },
14903        56usize,
14904        concat!(
14905            "Offset of field: ",
14906            stringify!(_zend_fcall_info),
14907            "::",
14908            stringify!(object_ptr)
14909        )
14910    );
14911    assert_eq!(
14912        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).no_separation as *const _ as usize },
14913        64usize,
14914        concat!(
14915            "Offset of field: ",
14916            stringify!(_zend_fcall_info),
14917            "::",
14918            stringify!(no_separation)
14919        )
14920    );
14921}
14922pub type zend_fcall_info = _zend_fcall_info;
14923#[repr(C)]
14924#[derive(Debug, Copy, Clone)]
14925pub struct _zend_fcall_info_cache {
14926    pub initialized: zend_bool,
14927    pub function_handler: *mut zend_function,
14928    pub calling_scope: *mut zend_class_entry,
14929    pub called_scope: *mut zend_class_entry,
14930    pub object_ptr: *mut zval,
14931}
14932#[test]
14933fn bindgen_test_layout__zend_fcall_info_cache() {
14934    assert_eq!(
14935        ::std::mem::size_of::<_zend_fcall_info_cache>(),
14936        40usize,
14937        concat!("Size of: ", stringify!(_zend_fcall_info_cache))
14938    );
14939    assert_eq!(
14940        ::std::mem::align_of::<_zend_fcall_info_cache>(),
14941        8usize,
14942        concat!("Alignment of ", stringify!(_zend_fcall_info_cache))
14943    );
14944    assert_eq!(
14945        unsafe {
14946            &(*(::std::ptr::null::<_zend_fcall_info_cache>())).initialized as *const _ as usize
14947        },
14948        0usize,
14949        concat!(
14950            "Offset of field: ",
14951            stringify!(_zend_fcall_info_cache),
14952            "::",
14953            stringify!(initialized)
14954        )
14955    );
14956    assert_eq!(
14957        unsafe {
14958            &(*(::std::ptr::null::<_zend_fcall_info_cache>())).function_handler as *const _ as usize
14959        },
14960        8usize,
14961        concat!(
14962            "Offset of field: ",
14963            stringify!(_zend_fcall_info_cache),
14964            "::",
14965            stringify!(function_handler)
14966        )
14967    );
14968    assert_eq!(
14969        unsafe {
14970            &(*(::std::ptr::null::<_zend_fcall_info_cache>())).calling_scope as *const _ as usize
14971        },
14972        16usize,
14973        concat!(
14974            "Offset of field: ",
14975            stringify!(_zend_fcall_info_cache),
14976            "::",
14977            stringify!(calling_scope)
14978        )
14979    );
14980    assert_eq!(
14981        unsafe {
14982            &(*(::std::ptr::null::<_zend_fcall_info_cache>())).called_scope as *const _ as usize
14983        },
14984        24usize,
14985        concat!(
14986            "Offset of field: ",
14987            stringify!(_zend_fcall_info_cache),
14988            "::",
14989            stringify!(called_scope)
14990        )
14991    );
14992    assert_eq!(
14993        unsafe {
14994            &(*(::std::ptr::null::<_zend_fcall_info_cache>())).object_ptr as *const _ as usize
14995        },
14996        32usize,
14997        concat!(
14998            "Offset of field: ",
14999            stringify!(_zend_fcall_info_cache),
15000            "::",
15001            stringify!(object_ptr)
15002        )
15003    );
15004}
15005pub type zend_fcall_info_cache = _zend_fcall_info_cache;
15006extern "C" {
15007    pub fn zend_next_free_module() -> ::std::os::raw::c_int;
15008}
15009extern "C" {
15010    pub fn zend_get_parameters(
15011        ht: ::std::os::raw::c_int,
15012        param_count: ::std::os::raw::c_int,
15013        ...
15014    ) -> ::std::os::raw::c_int;
15015}
15016extern "C" {
15017    pub fn _zend_get_parameters_array(
15018        ht: ::std::os::raw::c_int,
15019        param_count: ::std::os::raw::c_int,
15020        argument_array: *mut *mut zval,
15021        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15022    ) -> ::std::os::raw::c_int;
15023}
15024extern "C" {
15025    pub fn zend_get_parameters_ex(param_count: ::std::os::raw::c_int, ...)
15026        -> ::std::os::raw::c_int;
15027}
15028extern "C" {
15029    pub fn _zend_get_parameters_array_ex(
15030        param_count: ::std::os::raw::c_int,
15031        argument_array: *mut *mut *mut zval,
15032        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15033    ) -> ::std::os::raw::c_int;
15034}
15035extern "C" {
15036    pub fn zend_copy_parameters_array(
15037        param_count: ::std::os::raw::c_int,
15038        argument_array: *mut zval,
15039        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15040    ) -> ::std::os::raw::c_int;
15041}
15042extern "C" {
15043    pub fn zend_parse_parameters(
15044        num_args: ::std::os::raw::c_int,
15045        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15046        type_spec: *const ::std::os::raw::c_char,
15047        ...
15048    ) -> ::std::os::raw::c_int;
15049}
15050extern "C" {
15051    pub fn zend_parse_parameters_ex(
15052        flags: ::std::os::raw::c_int,
15053        num_args: ::std::os::raw::c_int,
15054        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15055        type_spec: *const ::std::os::raw::c_char,
15056        ...
15057    ) -> ::std::os::raw::c_int;
15058}
15059extern "C" {
15060    pub fn zend_zval_type_name(arg: *const zval) -> *mut ::std::os::raw::c_char;
15061}
15062extern "C" {
15063    pub fn zend_parse_method_parameters(
15064        num_args: ::std::os::raw::c_int,
15065        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15066        this_ptr: *mut zval,
15067        type_spec: *const ::std::os::raw::c_char,
15068        ...
15069    ) -> ::std::os::raw::c_int;
15070}
15071extern "C" {
15072    pub fn zend_parse_method_parameters_ex(
15073        flags: ::std::os::raw::c_int,
15074        num_args: ::std::os::raw::c_int,
15075        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15076        this_ptr: *mut zval,
15077        type_spec: *const ::std::os::raw::c_char,
15078        ...
15079    ) -> ::std::os::raw::c_int;
15080}
15081extern "C" {
15082    pub fn zend_parse_parameter(
15083        flags: ::std::os::raw::c_int,
15084        arg_num: ::std::os::raw::c_int,
15085        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15086        arg: *mut *mut zval,
15087        spec: *const ::std::os::raw::c_char,
15088        ...
15089    ) -> ::std::os::raw::c_int;
15090}
15091extern "C" {
15092    pub fn zend_register_functions(
15093        scope: *mut zend_class_entry,
15094        functions: *const zend_function_entry,
15095        function_table: *mut HashTable,
15096        type_: ::std::os::raw::c_int,
15097        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15098    ) -> ::std::os::raw::c_int;
15099}
15100extern "C" {
15101    pub fn zend_unregister_functions(
15102        functions: *const zend_function_entry,
15103        count: ::std::os::raw::c_int,
15104        function_table: *mut HashTable,
15105        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15106    );
15107}
15108extern "C" {
15109    pub fn zend_startup_module(module_entry: *mut zend_module_entry) -> ::std::os::raw::c_int;
15110}
15111extern "C" {
15112    pub fn zend_register_internal_module(
15113        module_entry: *mut zend_module_entry,
15114        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15115    ) -> *mut zend_module_entry;
15116}
15117extern "C" {
15118    pub fn zend_register_module_ex(
15119        module: *mut zend_module_entry,
15120        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15121    ) -> *mut zend_module_entry;
15122}
15123extern "C" {
15124    pub fn zend_startup_module_ex(
15125        module: *mut zend_module_entry,
15126        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15127    ) -> ::std::os::raw::c_int;
15128}
15129extern "C" {
15130    pub fn zend_startup_modules(
15131        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15132    ) -> ::std::os::raw::c_int;
15133}
15134extern "C" {
15135    pub fn zend_collect_module_handlers(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
15136}
15137extern "C" {
15138    pub fn zend_destroy_modules();
15139}
15140extern "C" {
15141    pub fn zend_check_magic_method_implementation(
15142        ce: *const zend_class_entry,
15143        fptr: *const zend_function,
15144        error_type: ::std::os::raw::c_int,
15145        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15146    );
15147}
15148extern "C" {
15149    pub fn zend_register_internal_class(
15150        class_entry: *mut zend_class_entry,
15151        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15152    ) -> *mut zend_class_entry;
15153}
15154extern "C" {
15155    pub fn zend_register_internal_class_ex(
15156        class_entry: *mut zend_class_entry,
15157        parent_ce: *mut zend_class_entry,
15158        parent_name: *mut ::std::os::raw::c_char,
15159        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15160    ) -> *mut zend_class_entry;
15161}
15162extern "C" {
15163    pub fn zend_register_internal_interface(
15164        orig_class_entry: *mut zend_class_entry,
15165        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15166    ) -> *mut zend_class_entry;
15167}
15168extern "C" {
15169    pub fn zend_class_implements(
15170        class_entry: *mut zend_class_entry,
15171        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15172        num_interfaces: ::std::os::raw::c_int,
15173        ...
15174    );
15175}
15176extern "C" {
15177    pub fn zend_register_class_alias_ex(
15178        name: *const ::std::os::raw::c_char,
15179        name_len: ::std::os::raw::c_int,
15180        ce: *mut zend_class_entry,
15181        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15182    ) -> ::std::os::raw::c_int;
15183}
15184extern "C" {
15185    pub fn zend_disable_function(
15186        function_name: *mut ::std::os::raw::c_char,
15187        function_name_length: uint,
15188        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15189    ) -> ::std::os::raw::c_int;
15190}
15191extern "C" {
15192    pub fn zend_disable_class(
15193        class_name: *mut ::std::os::raw::c_char,
15194        class_name_length: uint,
15195        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15196    ) -> ::std::os::raw::c_int;
15197}
15198extern "C" {
15199    pub fn zend_wrong_param_count(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
15200}
15201extern "C" {
15202    pub fn zend_is_callable_ex(
15203        callable: *mut zval,
15204        object_ptr: *mut zval,
15205        check_flags: uint,
15206        callable_name: *mut *mut ::std::os::raw::c_char,
15207        callable_name_len: *mut ::std::os::raw::c_int,
15208        fcc: *mut zend_fcall_info_cache,
15209        error: *mut *mut ::std::os::raw::c_char,
15210        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15211    ) -> zend_bool;
15212}
15213extern "C" {
15214    pub fn zend_is_callable(
15215        callable: *mut zval,
15216        check_flags: uint,
15217        callable_name: *mut *mut ::std::os::raw::c_char,
15218        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15219    ) -> zend_bool;
15220}
15221extern "C" {
15222    pub fn zend_make_callable(
15223        callable: *mut zval,
15224        callable_name: *mut *mut ::std::os::raw::c_char,
15225        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15226    ) -> zend_bool;
15227}
15228extern "C" {
15229    pub fn zend_get_module_version(
15230        module_name: *const ::std::os::raw::c_char,
15231    ) -> *const ::std::os::raw::c_char;
15232}
15233extern "C" {
15234    pub fn zend_get_module_started(
15235        module_name: *const ::std::os::raw::c_char,
15236    ) -> ::std::os::raw::c_int;
15237}
15238extern "C" {
15239    pub fn zend_declare_property(
15240        ce: *mut zend_class_entry,
15241        name: *const ::std::os::raw::c_char,
15242        name_length: ::std::os::raw::c_int,
15243        property: *mut zval,
15244        access_type: ::std::os::raw::c_int,
15245        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15246    ) -> ::std::os::raw::c_int;
15247}
15248extern "C" {
15249    pub fn zend_declare_property_ex(
15250        ce: *mut zend_class_entry,
15251        name: *const ::std::os::raw::c_char,
15252        name_length: ::std::os::raw::c_int,
15253        property: *mut zval,
15254        access_type: ::std::os::raw::c_int,
15255        doc_comment: *const ::std::os::raw::c_char,
15256        doc_comment_len: ::std::os::raw::c_int,
15257        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15258    ) -> ::std::os::raw::c_int;
15259}
15260extern "C" {
15261    pub fn zend_declare_property_null(
15262        ce: *mut zend_class_entry,
15263        name: *const ::std::os::raw::c_char,
15264        name_length: ::std::os::raw::c_int,
15265        access_type: ::std::os::raw::c_int,
15266        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15267    ) -> ::std::os::raw::c_int;
15268}
15269extern "C" {
15270    pub fn zend_declare_property_bool(
15271        ce: *mut zend_class_entry,
15272        name: *const ::std::os::raw::c_char,
15273        name_length: ::std::os::raw::c_int,
15274        value: ::std::os::raw::c_long,
15275        access_type: ::std::os::raw::c_int,
15276        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15277    ) -> ::std::os::raw::c_int;
15278}
15279extern "C" {
15280    pub fn zend_declare_property_long(
15281        ce: *mut zend_class_entry,
15282        name: *const ::std::os::raw::c_char,
15283        name_length: ::std::os::raw::c_int,
15284        value: ::std::os::raw::c_long,
15285        access_type: ::std::os::raw::c_int,
15286        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15287    ) -> ::std::os::raw::c_int;
15288}
15289extern "C" {
15290    pub fn zend_declare_property_double(
15291        ce: *mut zend_class_entry,
15292        name: *const ::std::os::raw::c_char,
15293        name_length: ::std::os::raw::c_int,
15294        value: f64,
15295        access_type: ::std::os::raw::c_int,
15296        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15297    ) -> ::std::os::raw::c_int;
15298}
15299extern "C" {
15300    pub fn zend_declare_property_string(
15301        ce: *mut zend_class_entry,
15302        name: *const ::std::os::raw::c_char,
15303        name_length: ::std::os::raw::c_int,
15304        value: *const ::std::os::raw::c_char,
15305        access_type: ::std::os::raw::c_int,
15306        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15307    ) -> ::std::os::raw::c_int;
15308}
15309extern "C" {
15310    pub fn zend_declare_property_stringl(
15311        ce: *mut zend_class_entry,
15312        name: *const ::std::os::raw::c_char,
15313        name_length: ::std::os::raw::c_int,
15314        value: *const ::std::os::raw::c_char,
15315        value_len: ::std::os::raw::c_int,
15316        access_type: ::std::os::raw::c_int,
15317        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15318    ) -> ::std::os::raw::c_int;
15319}
15320extern "C" {
15321    pub fn zend_declare_class_constant(
15322        ce: *mut zend_class_entry,
15323        name: *const ::std::os::raw::c_char,
15324        name_length: size_t,
15325        value: *mut zval,
15326        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15327    ) -> ::std::os::raw::c_int;
15328}
15329extern "C" {
15330    pub fn zend_declare_class_constant_null(
15331        ce: *mut zend_class_entry,
15332        name: *const ::std::os::raw::c_char,
15333        name_length: size_t,
15334        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15335    ) -> ::std::os::raw::c_int;
15336}
15337extern "C" {
15338    pub fn zend_declare_class_constant_long(
15339        ce: *mut zend_class_entry,
15340        name: *const ::std::os::raw::c_char,
15341        name_length: size_t,
15342        value: ::std::os::raw::c_long,
15343        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15344    ) -> ::std::os::raw::c_int;
15345}
15346extern "C" {
15347    pub fn zend_declare_class_constant_bool(
15348        ce: *mut zend_class_entry,
15349        name: *const ::std::os::raw::c_char,
15350        name_length: size_t,
15351        value: zend_bool,
15352        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15353    ) -> ::std::os::raw::c_int;
15354}
15355extern "C" {
15356    pub fn zend_declare_class_constant_double(
15357        ce: *mut zend_class_entry,
15358        name: *const ::std::os::raw::c_char,
15359        name_length: size_t,
15360        value: f64,
15361        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15362    ) -> ::std::os::raw::c_int;
15363}
15364extern "C" {
15365    pub fn zend_declare_class_constant_stringl(
15366        ce: *mut zend_class_entry,
15367        name: *const ::std::os::raw::c_char,
15368        name_length: size_t,
15369        value: *const ::std::os::raw::c_char,
15370        value_length: size_t,
15371        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15372    ) -> ::std::os::raw::c_int;
15373}
15374extern "C" {
15375    pub fn zend_declare_class_constant_string(
15376        ce: *mut zend_class_entry,
15377        name: *const ::std::os::raw::c_char,
15378        name_length: size_t,
15379        value: *const ::std::os::raw::c_char,
15380        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15381    ) -> ::std::os::raw::c_int;
15382}
15383extern "C" {
15384    pub fn zend_update_class_constants(
15385        class_type: *mut zend_class_entry,
15386        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15387    );
15388}
15389extern "C" {
15390    pub fn zend_update_property(
15391        scope: *mut zend_class_entry,
15392        object: *mut zval,
15393        name: *const ::std::os::raw::c_char,
15394        name_length: ::std::os::raw::c_int,
15395        value: *mut zval,
15396        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15397    );
15398}
15399extern "C" {
15400    pub fn zend_update_property_null(
15401        scope: *mut zend_class_entry,
15402        object: *mut zval,
15403        name: *const ::std::os::raw::c_char,
15404        name_length: ::std::os::raw::c_int,
15405        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15406    );
15407}
15408extern "C" {
15409    pub fn zend_update_property_bool(
15410        scope: *mut zend_class_entry,
15411        object: *mut zval,
15412        name: *const ::std::os::raw::c_char,
15413        name_length: ::std::os::raw::c_int,
15414        value: ::std::os::raw::c_long,
15415        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15416    );
15417}
15418extern "C" {
15419    pub fn zend_update_property_long(
15420        scope: *mut zend_class_entry,
15421        object: *mut zval,
15422        name: *const ::std::os::raw::c_char,
15423        name_length: ::std::os::raw::c_int,
15424        value: ::std::os::raw::c_long,
15425        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15426    );
15427}
15428extern "C" {
15429    pub fn zend_update_property_double(
15430        scope: *mut zend_class_entry,
15431        object: *mut zval,
15432        name: *const ::std::os::raw::c_char,
15433        name_length: ::std::os::raw::c_int,
15434        value: f64,
15435        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15436    );
15437}
15438extern "C" {
15439    pub fn zend_update_property_string(
15440        scope: *mut zend_class_entry,
15441        object: *mut zval,
15442        name: *const ::std::os::raw::c_char,
15443        name_length: ::std::os::raw::c_int,
15444        value: *const ::std::os::raw::c_char,
15445        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15446    );
15447}
15448extern "C" {
15449    pub fn zend_update_property_stringl(
15450        scope: *mut zend_class_entry,
15451        object: *mut zval,
15452        name: *const ::std::os::raw::c_char,
15453        name_length: ::std::os::raw::c_int,
15454        value: *const ::std::os::raw::c_char,
15455        value_length: ::std::os::raw::c_int,
15456        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15457    );
15458}
15459extern "C" {
15460    pub fn zend_update_static_property(
15461        scope: *mut zend_class_entry,
15462        name: *const ::std::os::raw::c_char,
15463        name_length: ::std::os::raw::c_int,
15464        value: *mut zval,
15465        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15466    ) -> ::std::os::raw::c_int;
15467}
15468extern "C" {
15469    pub fn zend_update_static_property_null(
15470        scope: *mut zend_class_entry,
15471        name: *const ::std::os::raw::c_char,
15472        name_length: ::std::os::raw::c_int,
15473        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15474    ) -> ::std::os::raw::c_int;
15475}
15476extern "C" {
15477    pub fn zend_update_static_property_bool(
15478        scope: *mut zend_class_entry,
15479        name: *const ::std::os::raw::c_char,
15480        name_length: ::std::os::raw::c_int,
15481        value: ::std::os::raw::c_long,
15482        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15483    ) -> ::std::os::raw::c_int;
15484}
15485extern "C" {
15486    pub fn zend_update_static_property_long(
15487        scope: *mut zend_class_entry,
15488        name: *const ::std::os::raw::c_char,
15489        name_length: ::std::os::raw::c_int,
15490        value: ::std::os::raw::c_long,
15491        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15492    ) -> ::std::os::raw::c_int;
15493}
15494extern "C" {
15495    pub fn zend_update_static_property_double(
15496        scope: *mut zend_class_entry,
15497        name: *const ::std::os::raw::c_char,
15498        name_length: ::std::os::raw::c_int,
15499        value: f64,
15500        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15501    ) -> ::std::os::raw::c_int;
15502}
15503extern "C" {
15504    pub fn zend_update_static_property_string(
15505        scope: *mut zend_class_entry,
15506        name: *const ::std::os::raw::c_char,
15507        name_length: ::std::os::raw::c_int,
15508        value: *const ::std::os::raw::c_char,
15509        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15510    ) -> ::std::os::raw::c_int;
15511}
15512extern "C" {
15513    pub fn zend_update_static_property_stringl(
15514        scope: *mut zend_class_entry,
15515        name: *const ::std::os::raw::c_char,
15516        name_length: ::std::os::raw::c_int,
15517        value: *const ::std::os::raw::c_char,
15518        value_length: ::std::os::raw::c_int,
15519        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15520    ) -> ::std::os::raw::c_int;
15521}
15522extern "C" {
15523    pub fn zend_read_property(
15524        scope: *mut zend_class_entry,
15525        object: *mut zval,
15526        name: *const ::std::os::raw::c_char,
15527        name_length: ::std::os::raw::c_int,
15528        silent: zend_bool,
15529        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15530    ) -> *mut zval;
15531}
15532extern "C" {
15533    pub fn zend_read_static_property(
15534        scope: *mut zend_class_entry,
15535        name: *const ::std::os::raw::c_char,
15536        name_length: ::std::os::raw::c_int,
15537        silent: zend_bool,
15538        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15539    ) -> *mut zval;
15540}
15541extern "C" {
15542    pub fn zend_get_class_entry(
15543        zobject: *const zval,
15544        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15545    ) -> *mut zend_class_entry;
15546}
15547extern "C" {
15548    pub fn zend_get_object_classname(
15549        object: *const zval,
15550        class_name: *mut *const ::std::os::raw::c_char,
15551        class_name_len: *mut zend_uint,
15552        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15553    ) -> ::std::os::raw::c_int;
15554}
15555extern "C" {
15556    pub fn zend_get_type_by_const(type_: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char;
15557}
15558extern "C" {
15559    pub fn zend_merge_properties(
15560        obj: *mut zval,
15561        properties: *mut HashTable,
15562        destroy_ht: ::std::os::raw::c_int,
15563        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15564    );
15565}
15566extern "C" {
15567    pub static empty_fcall_info: zend_fcall_info;
15568}
15569extern "C" {
15570    pub static empty_fcall_info_cache: zend_fcall_info_cache;
15571}
15572extern "C" {
15573    #[doc = " Build zend_call_info/cache from a zval*"]
15574    #[doc = ""]
15575    #[doc = " Caller is responsible to provide a return value, otherwise the we will crash."]
15576    #[doc = " fci->retval_ptr_ptr = NULL;"]
15577    #[doc = " In order to pass parameters the following members need to be set:"]
15578    #[doc = " fci->param_count = 0;"]
15579    #[doc = " fci->params = NULL;"]
15580    #[doc = " The callable_name argument may be NULL."]
15581    #[doc = " Set check_flags to IS_CALLABLE_STRICT for every new usage!"]
15582    pub fn zend_fcall_info_init(
15583        callable: *mut zval,
15584        check_flags: uint,
15585        fci: *mut zend_fcall_info,
15586        fcc: *mut zend_fcall_info_cache,
15587        callable_name: *mut *mut ::std::os::raw::c_char,
15588        error: *mut *mut ::std::os::raw::c_char,
15589        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15590    ) -> ::std::os::raw::c_int;
15591}
15592extern "C" {
15593    #[doc = " Clear arguments connected with zend_fcall_info *fci"]
15594    #[doc = " If free_mem is not zero then the params array gets free'd as well"]
15595    pub fn zend_fcall_info_args_clear(fci: *mut zend_fcall_info, free_mem: ::std::os::raw::c_int);
15596}
15597extern "C" {
15598    #[doc = " Save current arguments from zend_fcall_info *fci"]
15599    #[doc = " params array will be set to NULL"]
15600    pub fn zend_fcall_info_args_save(
15601        fci: *mut zend_fcall_info,
15602        param_count: *mut ::std::os::raw::c_int,
15603        params: *mut *mut *mut *mut zval,
15604    );
15605}
15606extern "C" {
15607    #[doc = " Free arguments connected with zend_fcall_info *fci andset back saved ones."]
15608    pub fn zend_fcall_info_args_restore(
15609        fci: *mut zend_fcall_info,
15610        param_count: ::std::os::raw::c_int,
15611        params: *mut *mut *mut zval,
15612    );
15613}
15614extern "C" {
15615    #[doc = " Set or clear the arguments in the zend_call_info struct taking care of"]
15616    #[doc = " refcount. If args is NULL and arguments are set then those are cleared."]
15617    pub fn zend_fcall_info_args(
15618        fci: *mut zend_fcall_info,
15619        args: *mut zval,
15620        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15621    ) -> ::std::os::raw::c_int;
15622}
15623extern "C" {
15624    #[doc = " Set arguments in the zend_fcall_info struct taking care of refcount."]
15625    #[doc = " If argc is 0 the arguments which are set will be cleared, else pass"]
15626    #[doc = " a variable amount of zval** arguments."]
15627    pub fn zend_fcall_info_argp(
15628        fci: *mut zend_fcall_info,
15629        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15630        argc: ::std::os::raw::c_int,
15631        argv: *mut *mut *mut zval,
15632    ) -> ::std::os::raw::c_int;
15633}
15634extern "C" {
15635    #[doc = " Set arguments in the zend_fcall_info struct taking care of refcount."]
15636    #[doc = " If argc is 0 the arguments which are set will be cleared, else pass"]
15637    #[doc = " a variable amount of zval** arguments."]
15638    pub fn zend_fcall_info_argv(
15639        fci: *mut zend_fcall_info,
15640        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15641        argc: ::std::os::raw::c_int,
15642        argv: *mut va_list,
15643    ) -> ::std::os::raw::c_int;
15644}
15645extern "C" {
15646    #[doc = " Set arguments in the zend_fcall_info struct taking care of refcount."]
15647    #[doc = " If argc is 0 the arguments which are set will be cleared, else pass"]
15648    #[doc = " a variable amount of zval** arguments."]
15649    pub fn zend_fcall_info_argn(
15650        fci: *mut zend_fcall_info,
15651        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15652        argc: ::std::os::raw::c_int,
15653        ...
15654    ) -> ::std::os::raw::c_int;
15655}
15656extern "C" {
15657    #[doc = " Call a function using information created by zend_fcall_info_init()/args()."]
15658    #[doc = " If args is given then those replace the argument info in fci is temporarily."]
15659    pub fn zend_fcall_info_call(
15660        fci: *mut zend_fcall_info,
15661        fcc: *mut zend_fcall_info_cache,
15662        retval: *mut *mut zval,
15663        args: *mut zval,
15664        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15665    ) -> ::std::os::raw::c_int;
15666}
15667extern "C" {
15668    pub fn zend_call_function(
15669        fci: *mut zend_fcall_info,
15670        fci_cache: *mut zend_fcall_info_cache,
15671        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15672    ) -> ::std::os::raw::c_int;
15673}
15674extern "C" {
15675    pub fn zend_set_hash_symbol(
15676        symbol: *mut zval,
15677        name: *const ::std::os::raw::c_char,
15678        name_length: ::std::os::raw::c_int,
15679        is_ref: zend_bool,
15680        num_symbol_tables: ::std::os::raw::c_int,
15681        ...
15682    ) -> ::std::os::raw::c_int;
15683}
15684extern "C" {
15685    pub fn zend_delete_variable(
15686        ex: *mut zend_execute_data,
15687        ht: *mut HashTable,
15688        name: *const ::std::os::raw::c_char,
15689        name_len: ::std::os::raw::c_int,
15690        hash_value: ulong,
15691        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15692    );
15693}
15694extern "C" {
15695    pub fn zend_delete_global_variable(
15696        name: *const ::std::os::raw::c_char,
15697        name_len: ::std::os::raw::c_int,
15698        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15699    ) -> ::std::os::raw::c_int;
15700}
15701extern "C" {
15702    pub fn zend_delete_global_variable_ex(
15703        name: *const ::std::os::raw::c_char,
15704        name_len: ::std::os::raw::c_int,
15705        hash_value: ulong,
15706        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15707    ) -> ::std::os::raw::c_int;
15708}
15709extern "C" {
15710    pub fn zend_reset_all_cv(
15711        symbol_table: *mut HashTable,
15712        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15713    );
15714}
15715extern "C" {
15716    pub fn zend_rebuild_symbol_table(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
15717}
15718extern "C" {
15719    pub fn zend_find_alias_name(
15720        ce: *mut zend_class_entry,
15721        name: *const ::std::os::raw::c_char,
15722        len: zend_uint,
15723    ) -> *const ::std::os::raw::c_char;
15724}
15725extern "C" {
15726    pub fn zend_resolve_method_name(
15727        ce: *mut zend_class_entry,
15728        f: *mut zend_function,
15729    ) -> *const ::std::os::raw::c_char;
15730}
15731extern "C" {
15732    pub fn php_strlcpy(
15733        dst: *mut ::std::os::raw::c_char,
15734        src: *const ::std::os::raw::c_char,
15735        siz: size_t,
15736    ) -> size_t;
15737}
15738extern "C" {
15739    pub fn php_strlcat(
15740        dst: *mut ::std::os::raw::c_char,
15741        src: *const ::std::os::raw::c_char,
15742        siz: size_t,
15743    ) -> size_t;
15744}
15745pub type socklen_t = __socklen_t;
15746pub type bool_int = ::std::os::raw::c_int;
15747pub const boolean_e_NO: boolean_e = 0;
15748pub const boolean_e_YES: boolean_e = 1;
15749pub type boolean_e = ::std::os::raw::c_uint;
15750extern "C" {
15751    pub fn php_sprintf(
15752        s: *mut ::std::os::raw::c_char,
15753        format: *const ::std::os::raw::c_char,
15754        ...
15755    ) -> ::std::os::raw::c_int;
15756}
15757extern "C" {
15758    pub fn php_gcvt(
15759        value: f64,
15760        ndigit: ::std::os::raw::c_int,
15761        dec_point: ::std::os::raw::c_char,
15762        exponent: ::std::os::raw::c_char,
15763        buf: *mut ::std::os::raw::c_char,
15764    ) -> *mut ::std::os::raw::c_char;
15765}
15766extern "C" {
15767    pub fn php_conv_fp(
15768        format: ::std::os::raw::c_char,
15769        num: f64,
15770        add_dp: boolean_e,
15771        precision: ::std::os::raw::c_int,
15772        dec_point: ::std::os::raw::c_char,
15773        is_negative: *mut bool_int,
15774        buf: *mut ::std::os::raw::c_char,
15775        len: *mut ::std::os::raw::c_int,
15776    ) -> *mut ::std::os::raw::c_char;
15777}
15778extern "C" {
15779    pub fn php_write(
15780        buf: *mut ::std::os::raw::c_void,
15781        size: uint,
15782        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15783    ) -> ::std::os::raw::c_int;
15784}
15785extern "C" {
15786    pub fn php_printf(format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int;
15787}
15788extern "C" {
15789    pub fn php_get_module_initialized() -> ::std::os::raw::c_int;
15790}
15791extern "C" {
15792    pub fn php_log_err(
15793        log_message: *mut ::std::os::raw::c_char,
15794        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15795    );
15796}
15797extern "C" {
15798    pub fn php_verror(
15799        docref: *const ::std::os::raw::c_char,
15800        params: *const ::std::os::raw::c_char,
15801        type_: ::std::os::raw::c_int,
15802        format: *const ::std::os::raw::c_char,
15803        args: *mut __va_list_tag,
15804        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15805    );
15806}
15807extern "C" {
15808    pub fn php_error_docref0(
15809        docref: *const ::std::os::raw::c_char,
15810        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15811        type_: ::std::os::raw::c_int,
15812        format: *const ::std::os::raw::c_char,
15813        ...
15814    );
15815}
15816extern "C" {
15817    pub fn php_error_docref1(
15818        docref: *const ::std::os::raw::c_char,
15819        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15820        param1: *const ::std::os::raw::c_char,
15821        type_: ::std::os::raw::c_int,
15822        format: *const ::std::os::raw::c_char,
15823        ...
15824    );
15825}
15826extern "C" {
15827    pub fn php_error_docref2(
15828        docref: *const ::std::os::raw::c_char,
15829        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15830        param1: *const ::std::os::raw::c_char,
15831        param2: *const ::std::os::raw::c_char,
15832        type_: ::std::os::raw::c_int,
15833        format: *const ::std::os::raw::c_char,
15834        ...
15835    );
15836}
15837extern "C" {
15838    pub static mut php_register_internal_extensions_func: ::std::option::Option<
15839        unsafe extern "C" fn(
15840            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15841        ) -> ::std::os::raw::c_int,
15842    >;
15843}
15844extern "C" {
15845    pub fn php_register_internal_extensions(
15846        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15847    ) -> ::std::os::raw::c_int;
15848}
15849extern "C" {
15850    pub fn php_mergesort(
15851        base: *mut ::std::os::raw::c_void,
15852        nmemb: size_t,
15853        size: size_t,
15854        cmp: ::std::option::Option<
15855            unsafe extern "C" fn(
15856                arg1: *const ::std::os::raw::c_void,
15857                arg2: *const ::std::os::raw::c_void,
15858                tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15859            ) -> ::std::os::raw::c_int,
15860        >,
15861        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15862    ) -> ::std::os::raw::c_int;
15863}
15864extern "C" {
15865    pub fn php_register_pre_request_shutdown(
15866        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
15867        userdata: *mut ::std::os::raw::c_void,
15868    );
15869}
15870extern "C" {
15871    pub fn php_com_initialize(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
15872}
15873extern "C" {
15874    pub fn php_get_current_user(
15875        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15876    ) -> *mut ::std::os::raw::c_char;
15877}
15878pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_GET_OPAQ: _php_output_handler_hook_t =
15879    0;
15880pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_GET_FLAGS: _php_output_handler_hook_t =
15881    1;
15882pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_GET_LEVEL: _php_output_handler_hook_t =
15883    2;
15884pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_IMMUTABLE: _php_output_handler_hook_t =
15885    3;
15886pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_DISABLE: _php_output_handler_hook_t =
15887    4;
15888pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_LAST: _php_output_handler_hook_t = 5;
15889pub type _php_output_handler_hook_t = ::std::os::raw::c_uint;
15890pub use self::_php_output_handler_hook_t as php_output_handler_hook_t;
15891#[repr(C)]
15892#[derive(Debug, Copy, Clone)]
15893pub struct _php_output_buffer {
15894    pub data: *mut ::std::os::raw::c_char,
15895    pub size: size_t,
15896    pub used: size_t,
15897    pub _bitfield_align_1: [u32; 0],
15898    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
15899    pub __bindgen_padding_0: u32,
15900}
15901#[test]
15902fn bindgen_test_layout__php_output_buffer() {
15903    assert_eq!(
15904        ::std::mem::size_of::<_php_output_buffer>(),
15905        32usize,
15906        concat!("Size of: ", stringify!(_php_output_buffer))
15907    );
15908    assert_eq!(
15909        ::std::mem::align_of::<_php_output_buffer>(),
15910        8usize,
15911        concat!("Alignment of ", stringify!(_php_output_buffer))
15912    );
15913    assert_eq!(
15914        unsafe { &(*(::std::ptr::null::<_php_output_buffer>())).data as *const _ as usize },
15915        0usize,
15916        concat!(
15917            "Offset of field: ",
15918            stringify!(_php_output_buffer),
15919            "::",
15920            stringify!(data)
15921        )
15922    );
15923    assert_eq!(
15924        unsafe { &(*(::std::ptr::null::<_php_output_buffer>())).size as *const _ as usize },
15925        8usize,
15926        concat!(
15927            "Offset of field: ",
15928            stringify!(_php_output_buffer),
15929            "::",
15930            stringify!(size)
15931        )
15932    );
15933    assert_eq!(
15934        unsafe { &(*(::std::ptr::null::<_php_output_buffer>())).used as *const _ as usize },
15935        16usize,
15936        concat!(
15937            "Offset of field: ",
15938            stringify!(_php_output_buffer),
15939            "::",
15940            stringify!(used)
15941        )
15942    );
15943}
15944impl _php_output_buffer {
15945    #[inline]
15946    pub fn free(&self) -> uint {
15947        unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
15948    }
15949    #[inline]
15950    pub fn set_free(&mut self, val: uint) {
15951        unsafe {
15952            let val: u32 = ::std::mem::transmute(val);
15953            self._bitfield_1.set(0usize, 1u8, val as u64)
15954        }
15955    }
15956    #[inline]
15957    pub fn _res(&self) -> uint {
15958        unsafe { ::std::mem::transmute(self._bitfield_1.get(1usize, 31u8) as u32) }
15959    }
15960    #[inline]
15961    pub fn set__res(&mut self, val: uint) {
15962        unsafe {
15963            let val: u32 = ::std::mem::transmute(val);
15964            self._bitfield_1.set(1usize, 31u8, val as u64)
15965        }
15966    }
15967    #[inline]
15968    pub fn new_bitfield_1(free: uint, _res: uint) -> __BindgenBitfieldUnit<[u8; 4usize]> {
15969        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
15970        __bindgen_bitfield_unit.set(0usize, 1u8, {
15971            let free: u32 = unsafe { ::std::mem::transmute(free) };
15972            free as u64
15973        });
15974        __bindgen_bitfield_unit.set(1usize, 31u8, {
15975            let _res: u32 = unsafe { ::std::mem::transmute(_res) };
15976            _res as u64
15977        });
15978        __bindgen_bitfield_unit
15979    }
15980}
15981pub type php_output_buffer = _php_output_buffer;
15982#[repr(C)]
15983#[derive(Debug, Copy, Clone)]
15984pub struct _php_output_context {
15985    pub op: ::std::os::raw::c_int,
15986    pub in_: php_output_buffer,
15987    pub out: php_output_buffer,
15988    pub tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
15989}
15990#[test]
15991fn bindgen_test_layout__php_output_context() {
15992    assert_eq!(
15993        ::std::mem::size_of::<_php_output_context>(),
15994        80usize,
15995        concat!("Size of: ", stringify!(_php_output_context))
15996    );
15997    assert_eq!(
15998        ::std::mem::align_of::<_php_output_context>(),
15999        8usize,
16000        concat!("Alignment of ", stringify!(_php_output_context))
16001    );
16002    assert_eq!(
16003        unsafe { &(*(::std::ptr::null::<_php_output_context>())).op as *const _ as usize },
16004        0usize,
16005        concat!(
16006            "Offset of field: ",
16007            stringify!(_php_output_context),
16008            "::",
16009            stringify!(op)
16010        )
16011    );
16012    assert_eq!(
16013        unsafe { &(*(::std::ptr::null::<_php_output_context>())).in_ as *const _ as usize },
16014        8usize,
16015        concat!(
16016            "Offset of field: ",
16017            stringify!(_php_output_context),
16018            "::",
16019            stringify!(in_)
16020        )
16021    );
16022    assert_eq!(
16023        unsafe { &(*(::std::ptr::null::<_php_output_context>())).out as *const _ as usize },
16024        40usize,
16025        concat!(
16026            "Offset of field: ",
16027            stringify!(_php_output_context),
16028            "::",
16029            stringify!(out)
16030        )
16031    );
16032    assert_eq!(
16033        unsafe { &(*(::std::ptr::null::<_php_output_context>())).tsrm_ls as *const _ as usize },
16034        72usize,
16035        concat!(
16036            "Offset of field: ",
16037            stringify!(_php_output_context),
16038            "::",
16039            stringify!(tsrm_ls)
16040        )
16041    );
16042}
16043pub type php_output_context = _php_output_context;
16044pub type php_output_handler_func_t = ::std::option::Option<
16045    unsafe extern "C" fn(
16046        output: *mut ::std::os::raw::c_char,
16047        output_len: uint,
16048        handled_output: *mut *mut ::std::os::raw::c_char,
16049        handled_output_len: *mut uint,
16050        mode: ::std::os::raw::c_int,
16051        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16052    ),
16053>;
16054pub type php_output_handler_context_func_t = ::std::option::Option<
16055    unsafe extern "C" fn(
16056        handler_context: *mut *mut ::std::os::raw::c_void,
16057        output_context: *mut php_output_context,
16058    ) -> ::std::os::raw::c_int,
16059>;
16060pub type php_output_handler_conflict_check_t = ::std::option::Option<
16061    unsafe extern "C" fn(
16062        handler_name: *const ::std::os::raw::c_char,
16063        handler_name_len: size_t,
16064        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16065    ) -> ::std::os::raw::c_int,
16066>;
16067pub type php_output_handler_alias_ctor_t = ::std::option::Option<
16068    unsafe extern "C" fn(
16069        handler_name: *const ::std::os::raw::c_char,
16070        handler_name_len: size_t,
16071        chunk_size: size_t,
16072        flags: ::std::os::raw::c_int,
16073        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16074    ) -> *mut _php_output_handler,
16075>;
16076#[repr(C)]
16077#[derive(Debug, Copy, Clone)]
16078pub struct _php_output_handler_user_func_t {
16079    pub fci: zend_fcall_info,
16080    pub fcc: zend_fcall_info_cache,
16081    pub zoh: *mut zval,
16082}
16083#[test]
16084fn bindgen_test_layout__php_output_handler_user_func_t() {
16085    assert_eq!(
16086        ::std::mem::size_of::<_php_output_handler_user_func_t>(),
16087        120usize,
16088        concat!("Size of: ", stringify!(_php_output_handler_user_func_t))
16089    );
16090    assert_eq!(
16091        ::std::mem::align_of::<_php_output_handler_user_func_t>(),
16092        8usize,
16093        concat!("Alignment of ", stringify!(_php_output_handler_user_func_t))
16094    );
16095    assert_eq!(
16096        unsafe {
16097            &(*(::std::ptr::null::<_php_output_handler_user_func_t>())).fci as *const _ as usize
16098        },
16099        0usize,
16100        concat!(
16101            "Offset of field: ",
16102            stringify!(_php_output_handler_user_func_t),
16103            "::",
16104            stringify!(fci)
16105        )
16106    );
16107    assert_eq!(
16108        unsafe {
16109            &(*(::std::ptr::null::<_php_output_handler_user_func_t>())).fcc as *const _ as usize
16110        },
16111        72usize,
16112        concat!(
16113            "Offset of field: ",
16114            stringify!(_php_output_handler_user_func_t),
16115            "::",
16116            stringify!(fcc)
16117        )
16118    );
16119    assert_eq!(
16120        unsafe {
16121            &(*(::std::ptr::null::<_php_output_handler_user_func_t>())).zoh as *const _ as usize
16122        },
16123        112usize,
16124        concat!(
16125            "Offset of field: ",
16126            stringify!(_php_output_handler_user_func_t),
16127            "::",
16128            stringify!(zoh)
16129        )
16130    );
16131}
16132pub type php_output_handler_user_func_t = _php_output_handler_user_func_t;
16133#[repr(C)]
16134#[derive(Copy, Clone)]
16135pub struct _php_output_handler {
16136    pub name: *mut ::std::os::raw::c_char,
16137    pub name_len: size_t,
16138    pub flags: ::std::os::raw::c_int,
16139    pub level: ::std::os::raw::c_int,
16140    pub size: size_t,
16141    pub buffer: php_output_buffer,
16142    pub opaq: *mut ::std::os::raw::c_void,
16143    pub dtor: ::std::option::Option<
16144        unsafe extern "C" fn(
16145            opaq: *mut ::std::os::raw::c_void,
16146            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16147        ),
16148    >,
16149    pub func: _php_output_handler__bindgen_ty_1,
16150}
16151#[repr(C)]
16152#[derive(Copy, Clone)]
16153pub union _php_output_handler__bindgen_ty_1 {
16154    pub user: *mut php_output_handler_user_func_t,
16155    pub internal: php_output_handler_context_func_t,
16156    _bindgen_union_align: u64,
16157}
16158#[test]
16159fn bindgen_test_layout__php_output_handler__bindgen_ty_1() {
16160    assert_eq!(
16161        ::std::mem::size_of::<_php_output_handler__bindgen_ty_1>(),
16162        8usize,
16163        concat!("Size of: ", stringify!(_php_output_handler__bindgen_ty_1))
16164    );
16165    assert_eq!(
16166        ::std::mem::align_of::<_php_output_handler__bindgen_ty_1>(),
16167        8usize,
16168        concat!(
16169            "Alignment of ",
16170            stringify!(_php_output_handler__bindgen_ty_1)
16171        )
16172    );
16173    assert_eq!(
16174        unsafe {
16175            &(*(::std::ptr::null::<_php_output_handler__bindgen_ty_1>())).user as *const _ as usize
16176        },
16177        0usize,
16178        concat!(
16179            "Offset of field: ",
16180            stringify!(_php_output_handler__bindgen_ty_1),
16181            "::",
16182            stringify!(user)
16183        )
16184    );
16185    assert_eq!(
16186        unsafe {
16187            &(*(::std::ptr::null::<_php_output_handler__bindgen_ty_1>())).internal as *const _
16188                as usize
16189        },
16190        0usize,
16191        concat!(
16192            "Offset of field: ",
16193            stringify!(_php_output_handler__bindgen_ty_1),
16194            "::",
16195            stringify!(internal)
16196        )
16197    );
16198}
16199#[test]
16200fn bindgen_test_layout__php_output_handler() {
16201    assert_eq!(
16202        ::std::mem::size_of::<_php_output_handler>(),
16203        88usize,
16204        concat!("Size of: ", stringify!(_php_output_handler))
16205    );
16206    assert_eq!(
16207        ::std::mem::align_of::<_php_output_handler>(),
16208        8usize,
16209        concat!("Alignment of ", stringify!(_php_output_handler))
16210    );
16211    assert_eq!(
16212        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).name as *const _ as usize },
16213        0usize,
16214        concat!(
16215            "Offset of field: ",
16216            stringify!(_php_output_handler),
16217            "::",
16218            stringify!(name)
16219        )
16220    );
16221    assert_eq!(
16222        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).name_len as *const _ as usize },
16223        8usize,
16224        concat!(
16225            "Offset of field: ",
16226            stringify!(_php_output_handler),
16227            "::",
16228            stringify!(name_len)
16229        )
16230    );
16231    assert_eq!(
16232        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).flags as *const _ as usize },
16233        16usize,
16234        concat!(
16235            "Offset of field: ",
16236            stringify!(_php_output_handler),
16237            "::",
16238            stringify!(flags)
16239        )
16240    );
16241    assert_eq!(
16242        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).level as *const _ as usize },
16243        20usize,
16244        concat!(
16245            "Offset of field: ",
16246            stringify!(_php_output_handler),
16247            "::",
16248            stringify!(level)
16249        )
16250    );
16251    assert_eq!(
16252        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).size as *const _ as usize },
16253        24usize,
16254        concat!(
16255            "Offset of field: ",
16256            stringify!(_php_output_handler),
16257            "::",
16258            stringify!(size)
16259        )
16260    );
16261    assert_eq!(
16262        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).buffer as *const _ as usize },
16263        32usize,
16264        concat!(
16265            "Offset of field: ",
16266            stringify!(_php_output_handler),
16267            "::",
16268            stringify!(buffer)
16269        )
16270    );
16271    assert_eq!(
16272        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).opaq as *const _ as usize },
16273        64usize,
16274        concat!(
16275            "Offset of field: ",
16276            stringify!(_php_output_handler),
16277            "::",
16278            stringify!(opaq)
16279        )
16280    );
16281    assert_eq!(
16282        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).dtor as *const _ as usize },
16283        72usize,
16284        concat!(
16285            "Offset of field: ",
16286            stringify!(_php_output_handler),
16287            "::",
16288            stringify!(dtor)
16289        )
16290    );
16291    assert_eq!(
16292        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).func as *const _ as usize },
16293        80usize,
16294        concat!(
16295            "Offset of field: ",
16296            stringify!(_php_output_handler),
16297            "::",
16298            stringify!(func)
16299        )
16300    );
16301}
16302pub type php_output_handler = _php_output_handler;
16303#[repr(C)]
16304#[derive(Debug, Copy, Clone)]
16305pub struct _zend_output_globals {
16306    pub flags: ::std::os::raw::c_int,
16307    pub handlers: zend_stack,
16308    pub active: *mut php_output_handler,
16309    pub running: *mut php_output_handler,
16310    pub output_start_filename: *const ::std::os::raw::c_char,
16311    pub output_start_lineno: ::std::os::raw::c_int,
16312}
16313#[test]
16314fn bindgen_test_layout__zend_output_globals() {
16315    assert_eq!(
16316        ::std::mem::size_of::<_zend_output_globals>(),
16317        56usize,
16318        concat!("Size of: ", stringify!(_zend_output_globals))
16319    );
16320    assert_eq!(
16321        ::std::mem::align_of::<_zend_output_globals>(),
16322        8usize,
16323        concat!("Alignment of ", stringify!(_zend_output_globals))
16324    );
16325    assert_eq!(
16326        unsafe { &(*(::std::ptr::null::<_zend_output_globals>())).flags as *const _ as usize },
16327        0usize,
16328        concat!(
16329            "Offset of field: ",
16330            stringify!(_zend_output_globals),
16331            "::",
16332            stringify!(flags)
16333        )
16334    );
16335    assert_eq!(
16336        unsafe { &(*(::std::ptr::null::<_zend_output_globals>())).handlers as *const _ as usize },
16337        8usize,
16338        concat!(
16339            "Offset of field: ",
16340            stringify!(_zend_output_globals),
16341            "::",
16342            stringify!(handlers)
16343        )
16344    );
16345    assert_eq!(
16346        unsafe { &(*(::std::ptr::null::<_zend_output_globals>())).active as *const _ as usize },
16347        24usize,
16348        concat!(
16349            "Offset of field: ",
16350            stringify!(_zend_output_globals),
16351            "::",
16352            stringify!(active)
16353        )
16354    );
16355    assert_eq!(
16356        unsafe { &(*(::std::ptr::null::<_zend_output_globals>())).running as *const _ as usize },
16357        32usize,
16358        concat!(
16359            "Offset of field: ",
16360            stringify!(_zend_output_globals),
16361            "::",
16362            stringify!(running)
16363        )
16364    );
16365    assert_eq!(
16366        unsafe {
16367            &(*(::std::ptr::null::<_zend_output_globals>())).output_start_filename as *const _
16368                as usize
16369        },
16370        40usize,
16371        concat!(
16372            "Offset of field: ",
16373            stringify!(_zend_output_globals),
16374            "::",
16375            stringify!(output_start_filename)
16376        )
16377    );
16378    assert_eq!(
16379        unsafe {
16380            &(*(::std::ptr::null::<_zend_output_globals>())).output_start_lineno as *const _
16381                as usize
16382        },
16383        48usize,
16384        concat!(
16385            "Offset of field: ",
16386            stringify!(_zend_output_globals),
16387            "::",
16388            stringify!(output_start_lineno)
16389        )
16390    );
16391}
16392pub type zend_output_globals = _zend_output_globals;
16393extern "C" {
16394    pub static php_output_default_handler_name: [::std::os::raw::c_char; 23usize];
16395}
16396extern "C" {
16397    pub static php_output_devnull_handler_name: [::std::os::raw::c_char; 20usize];
16398}
16399extern "C" {
16400    pub fn php_output_startup();
16401}
16402extern "C" {
16403    pub fn php_output_shutdown();
16404}
16405extern "C" {
16406    pub fn php_output_register_constants(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
16407}
16408extern "C" {
16409    pub fn php_output_activate(
16410        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16411    ) -> ::std::os::raw::c_int;
16412}
16413extern "C" {
16414    pub fn php_output_deactivate(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
16415}
16416extern "C" {
16417    pub fn php_output_set_status(
16418        status: ::std::os::raw::c_int,
16419        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16420    );
16421}
16422extern "C" {
16423    pub fn php_output_get_status(
16424        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16425    ) -> ::std::os::raw::c_int;
16426}
16427extern "C" {
16428    pub fn php_output_set_implicit_flush(
16429        flush: ::std::os::raw::c_int,
16430        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16431    );
16432}
16433extern "C" {
16434    pub fn php_output_get_start_filename(
16435        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16436    ) -> *const ::std::os::raw::c_char;
16437}
16438extern "C" {
16439    pub fn php_output_get_start_lineno(
16440        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16441    ) -> ::std::os::raw::c_int;
16442}
16443extern "C" {
16444    pub fn php_output_write_unbuffered(
16445        str_: *const ::std::os::raw::c_char,
16446        len: size_t,
16447        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16448    ) -> ::std::os::raw::c_int;
16449}
16450extern "C" {
16451    pub fn php_output_write(
16452        str_: *const ::std::os::raw::c_char,
16453        len: size_t,
16454        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16455    ) -> ::std::os::raw::c_int;
16456}
16457extern "C" {
16458    pub fn php_output_flush(
16459        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16460    ) -> ::std::os::raw::c_int;
16461}
16462extern "C" {
16463    pub fn php_output_flush_all(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
16464}
16465extern "C" {
16466    pub fn php_output_clean(
16467        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16468    ) -> ::std::os::raw::c_int;
16469}
16470extern "C" {
16471    pub fn php_output_clean_all(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
16472}
16473extern "C" {
16474    pub fn php_output_end(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int;
16475}
16476extern "C" {
16477    pub fn php_output_end_all(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
16478}
16479extern "C" {
16480    pub fn php_output_discard(
16481        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16482    ) -> ::std::os::raw::c_int;
16483}
16484extern "C" {
16485    pub fn php_output_discard_all(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
16486}
16487extern "C" {
16488    pub fn php_output_get_contents(
16489        p: *mut zval,
16490        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16491    ) -> ::std::os::raw::c_int;
16492}
16493extern "C" {
16494    pub fn php_output_get_length(
16495        p: *mut zval,
16496        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16497    ) -> ::std::os::raw::c_int;
16498}
16499extern "C" {
16500    pub fn php_output_get_level(
16501        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16502    ) -> ::std::os::raw::c_int;
16503}
16504extern "C" {
16505    pub fn php_output_get_active_handler(
16506        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16507    ) -> *mut php_output_handler;
16508}
16509extern "C" {
16510    pub fn php_output_start_default(
16511        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16512    ) -> ::std::os::raw::c_int;
16513}
16514extern "C" {
16515    pub fn php_output_start_devnull(
16516        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16517    ) -> ::std::os::raw::c_int;
16518}
16519extern "C" {
16520    pub fn php_output_start_user(
16521        output_handler: *mut zval,
16522        chunk_size: size_t,
16523        flags: ::std::os::raw::c_int,
16524        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16525    ) -> ::std::os::raw::c_int;
16526}
16527extern "C" {
16528    pub fn php_output_start_internal(
16529        name: *const ::std::os::raw::c_char,
16530        name_len: size_t,
16531        output_handler: php_output_handler_func_t,
16532        chunk_size: size_t,
16533        flags: ::std::os::raw::c_int,
16534        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16535    ) -> ::std::os::raw::c_int;
16536}
16537extern "C" {
16538    pub fn php_output_handler_create_user(
16539        handler: *mut zval,
16540        chunk_size: size_t,
16541        flags: ::std::os::raw::c_int,
16542        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16543    ) -> *mut php_output_handler;
16544}
16545extern "C" {
16546    pub fn php_output_handler_create_internal(
16547        name: *const ::std::os::raw::c_char,
16548        name_len: size_t,
16549        handler: php_output_handler_context_func_t,
16550        chunk_size: size_t,
16551        flags: ::std::os::raw::c_int,
16552        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16553    ) -> *mut php_output_handler;
16554}
16555extern "C" {
16556    pub fn php_output_handler_set_context(
16557        handler: *mut php_output_handler,
16558        opaq: *mut ::std::os::raw::c_void,
16559        dtor: ::std::option::Option<
16560            unsafe extern "C" fn(
16561                arg1: *mut ::std::os::raw::c_void,
16562                tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16563            ),
16564        >,
16565        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16566    );
16567}
16568extern "C" {
16569    pub fn php_output_handler_start(
16570        handler: *mut php_output_handler,
16571        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16572    ) -> ::std::os::raw::c_int;
16573}
16574extern "C" {
16575    pub fn php_output_handler_started(
16576        name: *const ::std::os::raw::c_char,
16577        name_len: size_t,
16578        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16579    ) -> ::std::os::raw::c_int;
16580}
16581extern "C" {
16582    pub fn php_output_handler_hook(
16583        type_: php_output_handler_hook_t,
16584        arg: *mut ::std::os::raw::c_void,
16585        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16586    ) -> ::std::os::raw::c_int;
16587}
16588extern "C" {
16589    pub fn php_output_handler_dtor(
16590        handler: *mut php_output_handler,
16591        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16592    );
16593}
16594extern "C" {
16595    pub fn php_output_handler_free(
16596        handler: *mut *mut php_output_handler,
16597        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16598    );
16599}
16600extern "C" {
16601    pub fn php_output_handler_conflict(
16602        handler_new: *const ::std::os::raw::c_char,
16603        handler_new_len: size_t,
16604        handler_set: *const ::std::os::raw::c_char,
16605        handler_set_len: size_t,
16606        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16607    ) -> ::std::os::raw::c_int;
16608}
16609extern "C" {
16610    pub fn php_output_handler_conflict_register(
16611        handler_name: *const ::std::os::raw::c_char,
16612        handler_name_len: size_t,
16613        check_func: php_output_handler_conflict_check_t,
16614        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16615    ) -> ::std::os::raw::c_int;
16616}
16617extern "C" {
16618    pub fn php_output_handler_reverse_conflict_register(
16619        handler_name: *const ::std::os::raw::c_char,
16620        handler_name_len: size_t,
16621        check_func: php_output_handler_conflict_check_t,
16622        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16623    ) -> ::std::os::raw::c_int;
16624}
16625extern "C" {
16626    pub fn php_output_handler_alias(
16627        handler_name: *const ::std::os::raw::c_char,
16628        handler_name_len: size_t,
16629        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16630    ) -> *mut php_output_handler_alias_ctor_t;
16631}
16632extern "C" {
16633    pub fn php_output_handler_alias_register(
16634        handler_name: *const ::std::os::raw::c_char,
16635        handler_name_len: size_t,
16636        func: php_output_handler_alias_ctor_t,
16637        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16638    ) -> ::std::os::raw::c_int;
16639}
16640#[repr(C)]
16641#[derive(Debug, Copy, Clone)]
16642pub struct stat {
16643    pub st_dev: __dev_t,
16644    pub st_ino: __ino_t,
16645    pub st_nlink: __nlink_t,
16646    pub st_mode: __mode_t,
16647    pub st_uid: __uid_t,
16648    pub st_gid: __gid_t,
16649    pub __pad0: ::std::os::raw::c_int,
16650    pub st_rdev: __dev_t,
16651    pub st_size: __off_t,
16652    pub st_blksize: __blksize_t,
16653    pub st_blocks: __blkcnt_t,
16654    pub st_atim: timespec,
16655    pub st_mtim: timespec,
16656    pub st_ctim: timespec,
16657    pub __glibc_reserved: [__syscall_slong_t; 3usize],
16658}
16659#[test]
16660fn bindgen_test_layout_stat() {
16661    assert_eq!(
16662        ::std::mem::size_of::<stat>(),
16663        144usize,
16664        concat!("Size of: ", stringify!(stat))
16665    );
16666    assert_eq!(
16667        ::std::mem::align_of::<stat>(),
16668        8usize,
16669        concat!("Alignment of ", stringify!(stat))
16670    );
16671    assert_eq!(
16672        unsafe { &(*(::std::ptr::null::<stat>())).st_dev as *const _ as usize },
16673        0usize,
16674        concat!(
16675            "Offset of field: ",
16676            stringify!(stat),
16677            "::",
16678            stringify!(st_dev)
16679        )
16680    );
16681    assert_eq!(
16682        unsafe { &(*(::std::ptr::null::<stat>())).st_ino as *const _ as usize },
16683        8usize,
16684        concat!(
16685            "Offset of field: ",
16686            stringify!(stat),
16687            "::",
16688            stringify!(st_ino)
16689        )
16690    );
16691    assert_eq!(
16692        unsafe { &(*(::std::ptr::null::<stat>())).st_nlink as *const _ as usize },
16693        16usize,
16694        concat!(
16695            "Offset of field: ",
16696            stringify!(stat),
16697            "::",
16698            stringify!(st_nlink)
16699        )
16700    );
16701    assert_eq!(
16702        unsafe { &(*(::std::ptr::null::<stat>())).st_mode as *const _ as usize },
16703        24usize,
16704        concat!(
16705            "Offset of field: ",
16706            stringify!(stat),
16707            "::",
16708            stringify!(st_mode)
16709        )
16710    );
16711    assert_eq!(
16712        unsafe { &(*(::std::ptr::null::<stat>())).st_uid as *const _ as usize },
16713        28usize,
16714        concat!(
16715            "Offset of field: ",
16716            stringify!(stat),
16717            "::",
16718            stringify!(st_uid)
16719        )
16720    );
16721    assert_eq!(
16722        unsafe { &(*(::std::ptr::null::<stat>())).st_gid as *const _ as usize },
16723        32usize,
16724        concat!(
16725            "Offset of field: ",
16726            stringify!(stat),
16727            "::",
16728            stringify!(st_gid)
16729        )
16730    );
16731    assert_eq!(
16732        unsafe { &(*(::std::ptr::null::<stat>())).__pad0 as *const _ as usize },
16733        36usize,
16734        concat!(
16735            "Offset of field: ",
16736            stringify!(stat),
16737            "::",
16738            stringify!(__pad0)
16739        )
16740    );
16741    assert_eq!(
16742        unsafe { &(*(::std::ptr::null::<stat>())).st_rdev as *const _ as usize },
16743        40usize,
16744        concat!(
16745            "Offset of field: ",
16746            stringify!(stat),
16747            "::",
16748            stringify!(st_rdev)
16749        )
16750    );
16751    assert_eq!(
16752        unsafe { &(*(::std::ptr::null::<stat>())).st_size as *const _ as usize },
16753        48usize,
16754        concat!(
16755            "Offset of field: ",
16756            stringify!(stat),
16757            "::",
16758            stringify!(st_size)
16759        )
16760    );
16761    assert_eq!(
16762        unsafe { &(*(::std::ptr::null::<stat>())).st_blksize as *const _ as usize },
16763        56usize,
16764        concat!(
16765            "Offset of field: ",
16766            stringify!(stat),
16767            "::",
16768            stringify!(st_blksize)
16769        )
16770    );
16771    assert_eq!(
16772        unsafe { &(*(::std::ptr::null::<stat>())).st_blocks as *const _ as usize },
16773        64usize,
16774        concat!(
16775            "Offset of field: ",
16776            stringify!(stat),
16777            "::",
16778            stringify!(st_blocks)
16779        )
16780    );
16781    assert_eq!(
16782        unsafe { &(*(::std::ptr::null::<stat>())).st_atim as *const _ as usize },
16783        72usize,
16784        concat!(
16785            "Offset of field: ",
16786            stringify!(stat),
16787            "::",
16788            stringify!(st_atim)
16789        )
16790    );
16791    assert_eq!(
16792        unsafe { &(*(::std::ptr::null::<stat>())).st_mtim as *const _ as usize },
16793        88usize,
16794        concat!(
16795            "Offset of field: ",
16796            stringify!(stat),
16797            "::",
16798            stringify!(st_mtim)
16799        )
16800    );
16801    assert_eq!(
16802        unsafe { &(*(::std::ptr::null::<stat>())).st_ctim as *const _ as usize },
16803        104usize,
16804        concat!(
16805            "Offset of field: ",
16806            stringify!(stat),
16807            "::",
16808            stringify!(st_ctim)
16809        )
16810    );
16811    assert_eq!(
16812        unsafe { &(*(::std::ptr::null::<stat>())).__glibc_reserved as *const _ as usize },
16813        120usize,
16814        concat!(
16815            "Offset of field: ",
16816            stringify!(stat),
16817            "::",
16818            stringify!(__glibc_reserved)
16819        )
16820    );
16821}
16822extern "C" {
16823    pub fn php_file_le_stream() -> ::std::os::raw::c_int;
16824}
16825extern "C" {
16826    pub fn php_file_le_pstream() -> ::std::os::raw::c_int;
16827}
16828extern "C" {
16829    pub fn php_file_le_stream_filter() -> ::std::os::raw::c_int;
16830}
16831pub type php_stream = _php_stream;
16832pub type php_stream_wrapper = _php_stream_wrapper;
16833pub type php_stream_context = _php_stream_context;
16834pub type php_stream_filter = _php_stream_filter;
16835pub type php_stream_notification_func = ::std::option::Option<
16836    unsafe extern "C" fn(
16837        context: *mut php_stream_context,
16838        notifycode: ::std::os::raw::c_int,
16839        severity: ::std::os::raw::c_int,
16840        xmsg: *mut ::std::os::raw::c_char,
16841        xcode: ::std::os::raw::c_int,
16842        bytes_sofar: size_t,
16843        bytes_max: size_t,
16844        ptr: *mut ::std::os::raw::c_void,
16845        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16846    ),
16847>;
16848pub type php_stream_notifier = _php_stream_notifier;
16849#[repr(C)]
16850#[derive(Debug, Copy, Clone)]
16851pub struct _php_stream_notifier {
16852    pub func: php_stream_notification_func,
16853    pub dtor: ::std::option::Option<unsafe extern "C" fn(notifier: *mut php_stream_notifier)>,
16854    pub ptr: *mut ::std::os::raw::c_void,
16855    pub mask: ::std::os::raw::c_int,
16856    pub progress: size_t,
16857    pub progress_max: size_t,
16858}
16859#[test]
16860fn bindgen_test_layout__php_stream_notifier() {
16861    assert_eq!(
16862        ::std::mem::size_of::<_php_stream_notifier>(),
16863        48usize,
16864        concat!("Size of: ", stringify!(_php_stream_notifier))
16865    );
16866    assert_eq!(
16867        ::std::mem::align_of::<_php_stream_notifier>(),
16868        8usize,
16869        concat!("Alignment of ", stringify!(_php_stream_notifier))
16870    );
16871    assert_eq!(
16872        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).func as *const _ as usize },
16873        0usize,
16874        concat!(
16875            "Offset of field: ",
16876            stringify!(_php_stream_notifier),
16877            "::",
16878            stringify!(func)
16879        )
16880    );
16881    assert_eq!(
16882        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).dtor as *const _ as usize },
16883        8usize,
16884        concat!(
16885            "Offset of field: ",
16886            stringify!(_php_stream_notifier),
16887            "::",
16888            stringify!(dtor)
16889        )
16890    );
16891    assert_eq!(
16892        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).ptr as *const _ as usize },
16893        16usize,
16894        concat!(
16895            "Offset of field: ",
16896            stringify!(_php_stream_notifier),
16897            "::",
16898            stringify!(ptr)
16899        )
16900    );
16901    assert_eq!(
16902        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).mask as *const _ as usize },
16903        24usize,
16904        concat!(
16905            "Offset of field: ",
16906            stringify!(_php_stream_notifier),
16907            "::",
16908            stringify!(mask)
16909        )
16910    );
16911    assert_eq!(
16912        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).progress as *const _ as usize },
16913        32usize,
16914        concat!(
16915            "Offset of field: ",
16916            stringify!(_php_stream_notifier),
16917            "::",
16918            stringify!(progress)
16919        )
16920    );
16921    assert_eq!(
16922        unsafe {
16923            &(*(::std::ptr::null::<_php_stream_notifier>())).progress_max as *const _ as usize
16924        },
16925        40usize,
16926        concat!(
16927            "Offset of field: ",
16928            stringify!(_php_stream_notifier),
16929            "::",
16930            stringify!(progress_max)
16931        )
16932    );
16933}
16934#[repr(C)]
16935#[derive(Debug, Copy, Clone)]
16936pub struct _php_stream_context {
16937    pub notifier: *mut php_stream_notifier,
16938    pub options: *mut zval,
16939    pub rsrc_id: ::std::os::raw::c_int,
16940}
16941#[test]
16942fn bindgen_test_layout__php_stream_context() {
16943    assert_eq!(
16944        ::std::mem::size_of::<_php_stream_context>(),
16945        24usize,
16946        concat!("Size of: ", stringify!(_php_stream_context))
16947    );
16948    assert_eq!(
16949        ::std::mem::align_of::<_php_stream_context>(),
16950        8usize,
16951        concat!("Alignment of ", stringify!(_php_stream_context))
16952    );
16953    assert_eq!(
16954        unsafe { &(*(::std::ptr::null::<_php_stream_context>())).notifier as *const _ as usize },
16955        0usize,
16956        concat!(
16957            "Offset of field: ",
16958            stringify!(_php_stream_context),
16959            "::",
16960            stringify!(notifier)
16961        )
16962    );
16963    assert_eq!(
16964        unsafe { &(*(::std::ptr::null::<_php_stream_context>())).options as *const _ as usize },
16965        8usize,
16966        concat!(
16967            "Offset of field: ",
16968            stringify!(_php_stream_context),
16969            "::",
16970            stringify!(options)
16971        )
16972    );
16973    assert_eq!(
16974        unsafe { &(*(::std::ptr::null::<_php_stream_context>())).rsrc_id as *const _ as usize },
16975        16usize,
16976        concat!(
16977            "Offset of field: ",
16978            stringify!(_php_stream_context),
16979            "::",
16980            stringify!(rsrc_id)
16981        )
16982    );
16983}
16984extern "C" {
16985    pub fn php_stream_context_free(context: *mut php_stream_context);
16986}
16987extern "C" {
16988    pub fn php_stream_context_alloc(
16989        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
16990    ) -> *mut php_stream_context;
16991}
16992extern "C" {
16993    pub fn php_stream_context_get_option(
16994        context: *mut php_stream_context,
16995        wrappername: *const ::std::os::raw::c_char,
16996        optionname: *const ::std::os::raw::c_char,
16997        optionvalue: *mut *mut *mut zval,
16998    ) -> ::std::os::raw::c_int;
16999}
17000extern "C" {
17001    pub fn php_stream_context_set_option(
17002        context: *mut php_stream_context,
17003        wrappername: *const ::std::os::raw::c_char,
17004        optionname: *const ::std::os::raw::c_char,
17005        optionvalue: *mut zval,
17006    ) -> ::std::os::raw::c_int;
17007}
17008extern "C" {
17009    pub fn php_stream_notification_alloc() -> *mut php_stream_notifier;
17010}
17011extern "C" {
17012    pub fn php_stream_notification_free(notifier: *mut php_stream_notifier);
17013}
17014extern "C" {
17015    pub fn php_stream_notification_notify(
17016        context: *mut php_stream_context,
17017        notifycode: ::std::os::raw::c_int,
17018        severity: ::std::os::raw::c_int,
17019        xmsg: *mut ::std::os::raw::c_char,
17020        xcode: ::std::os::raw::c_int,
17021        bytes_sofar: size_t,
17022        bytes_max: size_t,
17023        ptr: *mut ::std::os::raw::c_void,
17024        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17025    );
17026}
17027extern "C" {
17028    pub fn php_stream_context_set(
17029        stream: *mut php_stream,
17030        context: *mut php_stream_context,
17031    ) -> *mut php_stream_context;
17032}
17033pub type php_stream_bucket = _php_stream_bucket;
17034pub type php_stream_bucket_brigade = _php_stream_bucket_brigade;
17035#[repr(C)]
17036#[derive(Debug, Copy, Clone)]
17037pub struct _php_stream_bucket {
17038    pub next: *mut php_stream_bucket,
17039    pub prev: *mut php_stream_bucket,
17040    pub brigade: *mut php_stream_bucket_brigade,
17041    pub buf: *mut ::std::os::raw::c_char,
17042    pub buflen: size_t,
17043    pub own_buf: ::std::os::raw::c_int,
17044    pub is_persistent: ::std::os::raw::c_int,
17045    pub refcount: ::std::os::raw::c_int,
17046}
17047#[test]
17048fn bindgen_test_layout__php_stream_bucket() {
17049    assert_eq!(
17050        ::std::mem::size_of::<_php_stream_bucket>(),
17051        56usize,
17052        concat!("Size of: ", stringify!(_php_stream_bucket))
17053    );
17054    assert_eq!(
17055        ::std::mem::align_of::<_php_stream_bucket>(),
17056        8usize,
17057        concat!("Alignment of ", stringify!(_php_stream_bucket))
17058    );
17059    assert_eq!(
17060        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).next as *const _ as usize },
17061        0usize,
17062        concat!(
17063            "Offset of field: ",
17064            stringify!(_php_stream_bucket),
17065            "::",
17066            stringify!(next)
17067        )
17068    );
17069    assert_eq!(
17070        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).prev as *const _ as usize },
17071        8usize,
17072        concat!(
17073            "Offset of field: ",
17074            stringify!(_php_stream_bucket),
17075            "::",
17076            stringify!(prev)
17077        )
17078    );
17079    assert_eq!(
17080        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).brigade as *const _ as usize },
17081        16usize,
17082        concat!(
17083            "Offset of field: ",
17084            stringify!(_php_stream_bucket),
17085            "::",
17086            stringify!(brigade)
17087        )
17088    );
17089    assert_eq!(
17090        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).buf as *const _ as usize },
17091        24usize,
17092        concat!(
17093            "Offset of field: ",
17094            stringify!(_php_stream_bucket),
17095            "::",
17096            stringify!(buf)
17097        )
17098    );
17099    assert_eq!(
17100        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).buflen as *const _ as usize },
17101        32usize,
17102        concat!(
17103            "Offset of field: ",
17104            stringify!(_php_stream_bucket),
17105            "::",
17106            stringify!(buflen)
17107        )
17108    );
17109    assert_eq!(
17110        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).own_buf as *const _ as usize },
17111        40usize,
17112        concat!(
17113            "Offset of field: ",
17114            stringify!(_php_stream_bucket),
17115            "::",
17116            stringify!(own_buf)
17117        )
17118    );
17119    assert_eq!(
17120        unsafe {
17121            &(*(::std::ptr::null::<_php_stream_bucket>())).is_persistent as *const _ as usize
17122        },
17123        44usize,
17124        concat!(
17125            "Offset of field: ",
17126            stringify!(_php_stream_bucket),
17127            "::",
17128            stringify!(is_persistent)
17129        )
17130    );
17131    assert_eq!(
17132        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).refcount as *const _ as usize },
17133        48usize,
17134        concat!(
17135            "Offset of field: ",
17136            stringify!(_php_stream_bucket),
17137            "::",
17138            stringify!(refcount)
17139        )
17140    );
17141}
17142#[repr(C)]
17143#[derive(Debug, Copy, Clone)]
17144pub struct _php_stream_bucket_brigade {
17145    pub head: *mut php_stream_bucket,
17146    pub tail: *mut php_stream_bucket,
17147}
17148#[test]
17149fn bindgen_test_layout__php_stream_bucket_brigade() {
17150    assert_eq!(
17151        ::std::mem::size_of::<_php_stream_bucket_brigade>(),
17152        16usize,
17153        concat!("Size of: ", stringify!(_php_stream_bucket_brigade))
17154    );
17155    assert_eq!(
17156        ::std::mem::align_of::<_php_stream_bucket_brigade>(),
17157        8usize,
17158        concat!("Alignment of ", stringify!(_php_stream_bucket_brigade))
17159    );
17160    assert_eq!(
17161        unsafe { &(*(::std::ptr::null::<_php_stream_bucket_brigade>())).head as *const _ as usize },
17162        0usize,
17163        concat!(
17164            "Offset of field: ",
17165            stringify!(_php_stream_bucket_brigade),
17166            "::",
17167            stringify!(head)
17168        )
17169    );
17170    assert_eq!(
17171        unsafe { &(*(::std::ptr::null::<_php_stream_bucket_brigade>())).tail as *const _ as usize },
17172        8usize,
17173        concat!(
17174            "Offset of field: ",
17175            stringify!(_php_stream_bucket_brigade),
17176            "::",
17177            stringify!(tail)
17178        )
17179    );
17180}
17181pub const php_stream_filter_status_t_PSFS_ERR_FATAL: php_stream_filter_status_t = 0;
17182pub const php_stream_filter_status_t_PSFS_FEED_ME: php_stream_filter_status_t = 1;
17183pub const php_stream_filter_status_t_PSFS_PASS_ON: php_stream_filter_status_t = 2;
17184pub type php_stream_filter_status_t = ::std::os::raw::c_uint;
17185extern "C" {
17186    pub fn php_stream_bucket_new(
17187        stream: *mut php_stream,
17188        buf: *mut ::std::os::raw::c_char,
17189        buflen: size_t,
17190        own_buf: ::std::os::raw::c_int,
17191        buf_persistent: ::std::os::raw::c_int,
17192        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17193    ) -> *mut php_stream_bucket;
17194}
17195extern "C" {
17196    pub fn php_stream_bucket_split(
17197        in_: *mut php_stream_bucket,
17198        left: *mut *mut php_stream_bucket,
17199        right: *mut *mut php_stream_bucket,
17200        length: size_t,
17201        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17202    ) -> ::std::os::raw::c_int;
17203}
17204extern "C" {
17205    pub fn php_stream_bucket_delref(
17206        bucket: *mut php_stream_bucket,
17207        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17208    );
17209}
17210extern "C" {
17211    pub fn php_stream_bucket_prepend(
17212        brigade: *mut php_stream_bucket_brigade,
17213        bucket: *mut php_stream_bucket,
17214        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17215    );
17216}
17217extern "C" {
17218    pub fn php_stream_bucket_append(
17219        brigade: *mut php_stream_bucket_brigade,
17220        bucket: *mut php_stream_bucket,
17221        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17222    );
17223}
17224extern "C" {
17225    pub fn php_stream_bucket_unlink(
17226        bucket: *mut php_stream_bucket,
17227        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17228    );
17229}
17230extern "C" {
17231    pub fn php_stream_bucket_make_writeable(
17232        bucket: *mut php_stream_bucket,
17233        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17234    ) -> *mut php_stream_bucket;
17235}
17236#[repr(C)]
17237#[derive(Debug, Copy, Clone)]
17238pub struct _php_stream_filter_ops {
17239    pub filter: ::std::option::Option<
17240        unsafe extern "C" fn(
17241            stream: *mut php_stream,
17242            thisfilter: *mut php_stream_filter,
17243            buckets_in: *mut php_stream_bucket_brigade,
17244            buckets_out: *mut php_stream_bucket_brigade,
17245            bytes_consumed: *mut size_t,
17246            flags: ::std::os::raw::c_int,
17247            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17248        ) -> php_stream_filter_status_t,
17249    >,
17250    pub dtor: ::std::option::Option<
17251        unsafe extern "C" fn(
17252            thisfilter: *mut php_stream_filter,
17253            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17254        ),
17255    >,
17256    pub label: *const ::std::os::raw::c_char,
17257}
17258#[test]
17259fn bindgen_test_layout__php_stream_filter_ops() {
17260    assert_eq!(
17261        ::std::mem::size_of::<_php_stream_filter_ops>(),
17262        24usize,
17263        concat!("Size of: ", stringify!(_php_stream_filter_ops))
17264    );
17265    assert_eq!(
17266        ::std::mem::align_of::<_php_stream_filter_ops>(),
17267        8usize,
17268        concat!("Alignment of ", stringify!(_php_stream_filter_ops))
17269    );
17270    assert_eq!(
17271        unsafe { &(*(::std::ptr::null::<_php_stream_filter_ops>())).filter as *const _ as usize },
17272        0usize,
17273        concat!(
17274            "Offset of field: ",
17275            stringify!(_php_stream_filter_ops),
17276            "::",
17277            stringify!(filter)
17278        )
17279    );
17280    assert_eq!(
17281        unsafe { &(*(::std::ptr::null::<_php_stream_filter_ops>())).dtor as *const _ as usize },
17282        8usize,
17283        concat!(
17284            "Offset of field: ",
17285            stringify!(_php_stream_filter_ops),
17286            "::",
17287            stringify!(dtor)
17288        )
17289    );
17290    assert_eq!(
17291        unsafe { &(*(::std::ptr::null::<_php_stream_filter_ops>())).label as *const _ as usize },
17292        16usize,
17293        concat!(
17294            "Offset of field: ",
17295            stringify!(_php_stream_filter_ops),
17296            "::",
17297            stringify!(label)
17298        )
17299    );
17300}
17301pub type php_stream_filter_ops = _php_stream_filter_ops;
17302#[repr(C)]
17303#[derive(Debug, Copy, Clone)]
17304pub struct _php_stream_filter_chain {
17305    pub head: *mut php_stream_filter,
17306    pub tail: *mut php_stream_filter,
17307    pub stream: *mut php_stream,
17308}
17309#[test]
17310fn bindgen_test_layout__php_stream_filter_chain() {
17311    assert_eq!(
17312        ::std::mem::size_of::<_php_stream_filter_chain>(),
17313        24usize,
17314        concat!("Size of: ", stringify!(_php_stream_filter_chain))
17315    );
17316    assert_eq!(
17317        ::std::mem::align_of::<_php_stream_filter_chain>(),
17318        8usize,
17319        concat!("Alignment of ", stringify!(_php_stream_filter_chain))
17320    );
17321    assert_eq!(
17322        unsafe { &(*(::std::ptr::null::<_php_stream_filter_chain>())).head as *const _ as usize },
17323        0usize,
17324        concat!(
17325            "Offset of field: ",
17326            stringify!(_php_stream_filter_chain),
17327            "::",
17328            stringify!(head)
17329        )
17330    );
17331    assert_eq!(
17332        unsafe { &(*(::std::ptr::null::<_php_stream_filter_chain>())).tail as *const _ as usize },
17333        8usize,
17334        concat!(
17335            "Offset of field: ",
17336            stringify!(_php_stream_filter_chain),
17337            "::",
17338            stringify!(tail)
17339        )
17340    );
17341    assert_eq!(
17342        unsafe { &(*(::std::ptr::null::<_php_stream_filter_chain>())).stream as *const _ as usize },
17343        16usize,
17344        concat!(
17345            "Offset of field: ",
17346            stringify!(_php_stream_filter_chain),
17347            "::",
17348            stringify!(stream)
17349        )
17350    );
17351}
17352pub type php_stream_filter_chain = _php_stream_filter_chain;
17353#[repr(C)]
17354#[derive(Debug, Copy, Clone)]
17355pub struct _php_stream_filter {
17356    pub fops: *mut php_stream_filter_ops,
17357    pub abstract_: *mut ::std::os::raw::c_void,
17358    pub next: *mut php_stream_filter,
17359    pub prev: *mut php_stream_filter,
17360    pub is_persistent: ::std::os::raw::c_int,
17361    pub chain: *mut php_stream_filter_chain,
17362    pub buffer: php_stream_bucket_brigade,
17363    pub rsrc_id: ::std::os::raw::c_int,
17364}
17365#[test]
17366fn bindgen_test_layout__php_stream_filter() {
17367    assert_eq!(
17368        ::std::mem::size_of::<_php_stream_filter>(),
17369        72usize,
17370        concat!("Size of: ", stringify!(_php_stream_filter))
17371    );
17372    assert_eq!(
17373        ::std::mem::align_of::<_php_stream_filter>(),
17374        8usize,
17375        concat!("Alignment of ", stringify!(_php_stream_filter))
17376    );
17377    assert_eq!(
17378        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).fops as *const _ as usize },
17379        0usize,
17380        concat!(
17381            "Offset of field: ",
17382            stringify!(_php_stream_filter),
17383            "::",
17384            stringify!(fops)
17385        )
17386    );
17387    assert_eq!(
17388        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).abstract_ as *const _ as usize },
17389        8usize,
17390        concat!(
17391            "Offset of field: ",
17392            stringify!(_php_stream_filter),
17393            "::",
17394            stringify!(abstract_)
17395        )
17396    );
17397    assert_eq!(
17398        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).next as *const _ as usize },
17399        16usize,
17400        concat!(
17401            "Offset of field: ",
17402            stringify!(_php_stream_filter),
17403            "::",
17404            stringify!(next)
17405        )
17406    );
17407    assert_eq!(
17408        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).prev as *const _ as usize },
17409        24usize,
17410        concat!(
17411            "Offset of field: ",
17412            stringify!(_php_stream_filter),
17413            "::",
17414            stringify!(prev)
17415        )
17416    );
17417    assert_eq!(
17418        unsafe {
17419            &(*(::std::ptr::null::<_php_stream_filter>())).is_persistent as *const _ as usize
17420        },
17421        32usize,
17422        concat!(
17423            "Offset of field: ",
17424            stringify!(_php_stream_filter),
17425            "::",
17426            stringify!(is_persistent)
17427        )
17428    );
17429    assert_eq!(
17430        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).chain as *const _ as usize },
17431        40usize,
17432        concat!(
17433            "Offset of field: ",
17434            stringify!(_php_stream_filter),
17435            "::",
17436            stringify!(chain)
17437        )
17438    );
17439    assert_eq!(
17440        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).buffer as *const _ as usize },
17441        48usize,
17442        concat!(
17443            "Offset of field: ",
17444            stringify!(_php_stream_filter),
17445            "::",
17446            stringify!(buffer)
17447        )
17448    );
17449    assert_eq!(
17450        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).rsrc_id as *const _ as usize },
17451        64usize,
17452        concat!(
17453            "Offset of field: ",
17454            stringify!(_php_stream_filter),
17455            "::",
17456            stringify!(rsrc_id)
17457        )
17458    );
17459}
17460extern "C" {
17461    pub fn php_stream_filter_prepend_ex(
17462        chain: *mut php_stream_filter_chain,
17463        filter: *mut php_stream_filter,
17464        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17465    ) -> ::std::os::raw::c_int;
17466}
17467extern "C" {
17468    pub fn php_stream_filter_append_ex(
17469        chain: *mut php_stream_filter_chain,
17470        filter: *mut php_stream_filter,
17471        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17472    ) -> ::std::os::raw::c_int;
17473}
17474extern "C" {
17475    pub fn php_stream_filter_remove(
17476        filter: *mut php_stream_filter,
17477        call_dtor: ::std::os::raw::c_int,
17478        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17479    ) -> *mut php_stream_filter;
17480}
17481extern "C" {
17482    pub fn php_stream_filter_free(
17483        filter: *mut php_stream_filter,
17484        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17485    );
17486}
17487#[repr(C)]
17488#[derive(Debug, Copy, Clone)]
17489pub struct _php_stream_filter_factory {
17490    pub create_filter: ::std::option::Option<
17491        unsafe extern "C" fn(
17492            filtername: *const ::std::os::raw::c_char,
17493            filterparams: *mut zval,
17494            persistent: ::std::os::raw::c_int,
17495            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17496        ) -> *mut php_stream_filter,
17497    >,
17498}
17499#[test]
17500fn bindgen_test_layout__php_stream_filter_factory() {
17501    assert_eq!(
17502        ::std::mem::size_of::<_php_stream_filter_factory>(),
17503        8usize,
17504        concat!("Size of: ", stringify!(_php_stream_filter_factory))
17505    );
17506    assert_eq!(
17507        ::std::mem::align_of::<_php_stream_filter_factory>(),
17508        8usize,
17509        concat!("Alignment of ", stringify!(_php_stream_filter_factory))
17510    );
17511    assert_eq!(
17512        unsafe {
17513            &(*(::std::ptr::null::<_php_stream_filter_factory>())).create_filter as *const _
17514                as usize
17515        },
17516        0usize,
17517        concat!(
17518            "Offset of field: ",
17519            stringify!(_php_stream_filter_factory),
17520            "::",
17521            stringify!(create_filter)
17522        )
17523    );
17524}
17525pub type php_stream_filter_factory = _php_stream_filter_factory;
17526extern "C" {
17527    pub fn php_stream_filter_register_factory(
17528        filterpattern: *const ::std::os::raw::c_char,
17529        factory: *mut php_stream_filter_factory,
17530        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17531    ) -> ::std::os::raw::c_int;
17532}
17533extern "C" {
17534    pub fn php_stream_filter_unregister_factory(
17535        filterpattern: *const ::std::os::raw::c_char,
17536        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17537    ) -> ::std::os::raw::c_int;
17538}
17539extern "C" {
17540    pub fn php_stream_filter_register_factory_volatile(
17541        filterpattern: *const ::std::os::raw::c_char,
17542        factory: *mut php_stream_filter_factory,
17543        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17544    ) -> ::std::os::raw::c_int;
17545}
17546extern "C" {
17547    pub fn php_stream_filter_create(
17548        filtername: *const ::std::os::raw::c_char,
17549        filterparams: *mut zval,
17550        persistent: ::std::os::raw::c_int,
17551        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17552    ) -> *mut php_stream_filter;
17553}
17554#[repr(C)]
17555#[derive(Debug, Copy, Clone)]
17556pub struct _php_stream_statbuf {
17557    pub sb: stat,
17558}
17559#[test]
17560fn bindgen_test_layout__php_stream_statbuf() {
17561    assert_eq!(
17562        ::std::mem::size_of::<_php_stream_statbuf>(),
17563        144usize,
17564        concat!("Size of: ", stringify!(_php_stream_statbuf))
17565    );
17566    assert_eq!(
17567        ::std::mem::align_of::<_php_stream_statbuf>(),
17568        8usize,
17569        concat!("Alignment of ", stringify!(_php_stream_statbuf))
17570    );
17571    assert_eq!(
17572        unsafe { &(*(::std::ptr::null::<_php_stream_statbuf>())).sb as *const _ as usize },
17573        0usize,
17574        concat!(
17575            "Offset of field: ",
17576            stringify!(_php_stream_statbuf),
17577            "::",
17578            stringify!(sb)
17579        )
17580    );
17581}
17582pub type php_stream_statbuf = _php_stream_statbuf;
17583#[repr(C)]
17584#[derive(Debug, Copy, Clone)]
17585pub struct _php_stream_ops {
17586    pub write: ::std::option::Option<
17587        unsafe extern "C" fn(
17588            stream: *mut php_stream,
17589            buf: *const ::std::os::raw::c_char,
17590            count: size_t,
17591            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17592        ) -> size_t,
17593    >,
17594    pub read: ::std::option::Option<
17595        unsafe extern "C" fn(
17596            stream: *mut php_stream,
17597            buf: *mut ::std::os::raw::c_char,
17598            count: size_t,
17599            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17600        ) -> size_t,
17601    >,
17602    pub close: ::std::option::Option<
17603        unsafe extern "C" fn(
17604            stream: *mut php_stream,
17605            close_handle: ::std::os::raw::c_int,
17606            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17607        ) -> ::std::os::raw::c_int,
17608    >,
17609    pub flush: ::std::option::Option<
17610        unsafe extern "C" fn(
17611            stream: *mut php_stream,
17612            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17613        ) -> ::std::os::raw::c_int,
17614    >,
17615    pub label: *const ::std::os::raw::c_char,
17616    pub seek: ::std::option::Option<
17617        unsafe extern "C" fn(
17618            stream: *mut php_stream,
17619            offset: off_t,
17620            whence: ::std::os::raw::c_int,
17621            newoffset: *mut off_t,
17622            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17623        ) -> ::std::os::raw::c_int,
17624    >,
17625    pub cast: ::std::option::Option<
17626        unsafe extern "C" fn(
17627            stream: *mut php_stream,
17628            castas: ::std::os::raw::c_int,
17629            ret: *mut *mut ::std::os::raw::c_void,
17630            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17631        ) -> ::std::os::raw::c_int,
17632    >,
17633    pub stat: ::std::option::Option<
17634        unsafe extern "C" fn(
17635            stream: *mut php_stream,
17636            ssb: *mut php_stream_statbuf,
17637            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17638        ) -> ::std::os::raw::c_int,
17639    >,
17640    pub set_option: ::std::option::Option<
17641        unsafe extern "C" fn(
17642            stream: *mut php_stream,
17643            option: ::std::os::raw::c_int,
17644            value: ::std::os::raw::c_int,
17645            ptrparam: *mut ::std::os::raw::c_void,
17646            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17647        ) -> ::std::os::raw::c_int,
17648    >,
17649}
17650#[test]
17651fn bindgen_test_layout__php_stream_ops() {
17652    assert_eq!(
17653        ::std::mem::size_of::<_php_stream_ops>(),
17654        72usize,
17655        concat!("Size of: ", stringify!(_php_stream_ops))
17656    );
17657    assert_eq!(
17658        ::std::mem::align_of::<_php_stream_ops>(),
17659        8usize,
17660        concat!("Alignment of ", stringify!(_php_stream_ops))
17661    );
17662    assert_eq!(
17663        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).write as *const _ as usize },
17664        0usize,
17665        concat!(
17666            "Offset of field: ",
17667            stringify!(_php_stream_ops),
17668            "::",
17669            stringify!(write)
17670        )
17671    );
17672    assert_eq!(
17673        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).read as *const _ as usize },
17674        8usize,
17675        concat!(
17676            "Offset of field: ",
17677            stringify!(_php_stream_ops),
17678            "::",
17679            stringify!(read)
17680        )
17681    );
17682    assert_eq!(
17683        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).close as *const _ as usize },
17684        16usize,
17685        concat!(
17686            "Offset of field: ",
17687            stringify!(_php_stream_ops),
17688            "::",
17689            stringify!(close)
17690        )
17691    );
17692    assert_eq!(
17693        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).flush as *const _ as usize },
17694        24usize,
17695        concat!(
17696            "Offset of field: ",
17697            stringify!(_php_stream_ops),
17698            "::",
17699            stringify!(flush)
17700        )
17701    );
17702    assert_eq!(
17703        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).label as *const _ as usize },
17704        32usize,
17705        concat!(
17706            "Offset of field: ",
17707            stringify!(_php_stream_ops),
17708            "::",
17709            stringify!(label)
17710        )
17711    );
17712    assert_eq!(
17713        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).seek as *const _ as usize },
17714        40usize,
17715        concat!(
17716            "Offset of field: ",
17717            stringify!(_php_stream_ops),
17718            "::",
17719            stringify!(seek)
17720        )
17721    );
17722    assert_eq!(
17723        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).cast as *const _ as usize },
17724        48usize,
17725        concat!(
17726            "Offset of field: ",
17727            stringify!(_php_stream_ops),
17728            "::",
17729            stringify!(cast)
17730        )
17731    );
17732    assert_eq!(
17733        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).stat as *const _ as usize },
17734        56usize,
17735        concat!(
17736            "Offset of field: ",
17737            stringify!(_php_stream_ops),
17738            "::",
17739            stringify!(stat)
17740        )
17741    );
17742    assert_eq!(
17743        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).set_option as *const _ as usize },
17744        64usize,
17745        concat!(
17746            "Offset of field: ",
17747            stringify!(_php_stream_ops),
17748            "::",
17749            stringify!(set_option)
17750        )
17751    );
17752}
17753pub type php_stream_ops = _php_stream_ops;
17754#[repr(C)]
17755#[derive(Debug, Copy, Clone)]
17756pub struct _php_stream_wrapper_ops {
17757    pub stream_opener: ::std::option::Option<
17758        unsafe extern "C" fn(
17759            wrapper: *mut php_stream_wrapper,
17760            filename: *const ::std::os::raw::c_char,
17761            mode: *const ::std::os::raw::c_char,
17762            options: ::std::os::raw::c_int,
17763            opened_path: *mut *mut ::std::os::raw::c_char,
17764            context: *mut php_stream_context,
17765            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17766        ) -> *mut php_stream,
17767    >,
17768    pub stream_closer: ::std::option::Option<
17769        unsafe extern "C" fn(
17770            wrapper: *mut php_stream_wrapper,
17771            stream: *mut php_stream,
17772            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17773        ) -> ::std::os::raw::c_int,
17774    >,
17775    pub stream_stat: ::std::option::Option<
17776        unsafe extern "C" fn(
17777            wrapper: *mut php_stream_wrapper,
17778            stream: *mut php_stream,
17779            ssb: *mut php_stream_statbuf,
17780            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17781        ) -> ::std::os::raw::c_int,
17782    >,
17783    pub url_stat: ::std::option::Option<
17784        unsafe extern "C" fn(
17785            wrapper: *mut php_stream_wrapper,
17786            url: *const ::std::os::raw::c_char,
17787            flags: ::std::os::raw::c_int,
17788            ssb: *mut php_stream_statbuf,
17789            context: *mut php_stream_context,
17790            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17791        ) -> ::std::os::raw::c_int,
17792    >,
17793    pub dir_opener: ::std::option::Option<
17794        unsafe extern "C" fn(
17795            wrapper: *mut php_stream_wrapper,
17796            filename: *const ::std::os::raw::c_char,
17797            mode: *const ::std::os::raw::c_char,
17798            options: ::std::os::raw::c_int,
17799            opened_path: *mut *mut ::std::os::raw::c_char,
17800            context: *mut php_stream_context,
17801            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17802        ) -> *mut php_stream,
17803    >,
17804    pub label: *const ::std::os::raw::c_char,
17805    pub unlink: ::std::option::Option<
17806        unsafe extern "C" fn(
17807            wrapper: *mut php_stream_wrapper,
17808            url: *const ::std::os::raw::c_char,
17809            options: ::std::os::raw::c_int,
17810            context: *mut php_stream_context,
17811            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17812        ) -> ::std::os::raw::c_int,
17813    >,
17814    pub rename: ::std::option::Option<
17815        unsafe extern "C" fn(
17816            wrapper: *mut php_stream_wrapper,
17817            url_from: *const ::std::os::raw::c_char,
17818            url_to: *const ::std::os::raw::c_char,
17819            options: ::std::os::raw::c_int,
17820            context: *mut php_stream_context,
17821            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17822        ) -> ::std::os::raw::c_int,
17823    >,
17824    pub stream_mkdir: ::std::option::Option<
17825        unsafe extern "C" fn(
17826            wrapper: *mut php_stream_wrapper,
17827            url: *const ::std::os::raw::c_char,
17828            mode: ::std::os::raw::c_int,
17829            options: ::std::os::raw::c_int,
17830            context: *mut php_stream_context,
17831            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17832        ) -> ::std::os::raw::c_int,
17833    >,
17834    pub stream_rmdir: ::std::option::Option<
17835        unsafe extern "C" fn(
17836            wrapper: *mut php_stream_wrapper,
17837            url: *const ::std::os::raw::c_char,
17838            options: ::std::os::raw::c_int,
17839            context: *mut php_stream_context,
17840            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17841        ) -> ::std::os::raw::c_int,
17842    >,
17843    pub stream_metadata: ::std::option::Option<
17844        unsafe extern "C" fn(
17845            wrapper: *mut php_stream_wrapper,
17846            url: *const ::std::os::raw::c_char,
17847            options: ::std::os::raw::c_int,
17848            value: *mut ::std::os::raw::c_void,
17849            context: *mut php_stream_context,
17850            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
17851        ) -> ::std::os::raw::c_int,
17852    >,
17853}
17854#[test]
17855fn bindgen_test_layout__php_stream_wrapper_ops() {
17856    assert_eq!(
17857        ::std::mem::size_of::<_php_stream_wrapper_ops>(),
17858        88usize,
17859        concat!("Size of: ", stringify!(_php_stream_wrapper_ops))
17860    );
17861    assert_eq!(
17862        ::std::mem::align_of::<_php_stream_wrapper_ops>(),
17863        8usize,
17864        concat!("Alignment of ", stringify!(_php_stream_wrapper_ops))
17865    );
17866    assert_eq!(
17867        unsafe {
17868            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_opener as *const _ as usize
17869        },
17870        0usize,
17871        concat!(
17872            "Offset of field: ",
17873            stringify!(_php_stream_wrapper_ops),
17874            "::",
17875            stringify!(stream_opener)
17876        )
17877    );
17878    assert_eq!(
17879        unsafe {
17880            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_closer as *const _ as usize
17881        },
17882        8usize,
17883        concat!(
17884            "Offset of field: ",
17885            stringify!(_php_stream_wrapper_ops),
17886            "::",
17887            stringify!(stream_closer)
17888        )
17889    );
17890    assert_eq!(
17891        unsafe {
17892            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_stat as *const _ as usize
17893        },
17894        16usize,
17895        concat!(
17896            "Offset of field: ",
17897            stringify!(_php_stream_wrapper_ops),
17898            "::",
17899            stringify!(stream_stat)
17900        )
17901    );
17902    assert_eq!(
17903        unsafe {
17904            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).url_stat as *const _ as usize
17905        },
17906        24usize,
17907        concat!(
17908            "Offset of field: ",
17909            stringify!(_php_stream_wrapper_ops),
17910            "::",
17911            stringify!(url_stat)
17912        )
17913    );
17914    assert_eq!(
17915        unsafe {
17916            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).dir_opener as *const _ as usize
17917        },
17918        32usize,
17919        concat!(
17920            "Offset of field: ",
17921            stringify!(_php_stream_wrapper_ops),
17922            "::",
17923            stringify!(dir_opener)
17924        )
17925    );
17926    assert_eq!(
17927        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).label as *const _ as usize },
17928        40usize,
17929        concat!(
17930            "Offset of field: ",
17931            stringify!(_php_stream_wrapper_ops),
17932            "::",
17933            stringify!(label)
17934        )
17935    );
17936    assert_eq!(
17937        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).unlink as *const _ as usize },
17938        48usize,
17939        concat!(
17940            "Offset of field: ",
17941            stringify!(_php_stream_wrapper_ops),
17942            "::",
17943            stringify!(unlink)
17944        )
17945    );
17946    assert_eq!(
17947        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).rename as *const _ as usize },
17948        56usize,
17949        concat!(
17950            "Offset of field: ",
17951            stringify!(_php_stream_wrapper_ops),
17952            "::",
17953            stringify!(rename)
17954        )
17955    );
17956    assert_eq!(
17957        unsafe {
17958            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_mkdir as *const _ as usize
17959        },
17960        64usize,
17961        concat!(
17962            "Offset of field: ",
17963            stringify!(_php_stream_wrapper_ops),
17964            "::",
17965            stringify!(stream_mkdir)
17966        )
17967    );
17968    assert_eq!(
17969        unsafe {
17970            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_rmdir as *const _ as usize
17971        },
17972        72usize,
17973        concat!(
17974            "Offset of field: ",
17975            stringify!(_php_stream_wrapper_ops),
17976            "::",
17977            stringify!(stream_rmdir)
17978        )
17979    );
17980    assert_eq!(
17981        unsafe {
17982            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_metadata as *const _ as usize
17983        },
17984        80usize,
17985        concat!(
17986            "Offset of field: ",
17987            stringify!(_php_stream_wrapper_ops),
17988            "::",
17989            stringify!(stream_metadata)
17990        )
17991    );
17992}
17993pub type php_stream_wrapper_ops = _php_stream_wrapper_ops;
17994#[repr(C)]
17995#[derive(Debug, Copy, Clone)]
17996pub struct _php_stream_wrapper {
17997    pub wops: *mut php_stream_wrapper_ops,
17998    pub abstract_: *mut ::std::os::raw::c_void,
17999    pub is_url: ::std::os::raw::c_int,
18000}
18001#[test]
18002fn bindgen_test_layout__php_stream_wrapper() {
18003    assert_eq!(
18004        ::std::mem::size_of::<_php_stream_wrapper>(),
18005        24usize,
18006        concat!("Size of: ", stringify!(_php_stream_wrapper))
18007    );
18008    assert_eq!(
18009        ::std::mem::align_of::<_php_stream_wrapper>(),
18010        8usize,
18011        concat!("Alignment of ", stringify!(_php_stream_wrapper))
18012    );
18013    assert_eq!(
18014        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper>())).wops as *const _ as usize },
18015        0usize,
18016        concat!(
18017            "Offset of field: ",
18018            stringify!(_php_stream_wrapper),
18019            "::",
18020            stringify!(wops)
18021        )
18022    );
18023    assert_eq!(
18024        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper>())).abstract_ as *const _ as usize },
18025        8usize,
18026        concat!(
18027            "Offset of field: ",
18028            stringify!(_php_stream_wrapper),
18029            "::",
18030            stringify!(abstract_)
18031        )
18032    );
18033    assert_eq!(
18034        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper>())).is_url as *const _ as usize },
18035        16usize,
18036        concat!(
18037            "Offset of field: ",
18038            stringify!(_php_stream_wrapper),
18039            "::",
18040            stringify!(is_url)
18041        )
18042    );
18043}
18044#[repr(C)]
18045#[derive(Debug, Copy, Clone)]
18046pub struct _php_stream {
18047    pub ops: *mut php_stream_ops,
18048    pub abstract_: *mut ::std::os::raw::c_void,
18049    pub readfilters: php_stream_filter_chain,
18050    pub writefilters: php_stream_filter_chain,
18051    pub wrapper: *mut php_stream_wrapper,
18052    pub wrapperthis: *mut ::std::os::raw::c_void,
18053    pub wrapperdata: *mut zval,
18054    pub fgetss_state: ::std::os::raw::c_int,
18055    pub is_persistent: ::std::os::raw::c_int,
18056    pub mode: [::std::os::raw::c_char; 16usize],
18057    pub rsrc_id: ::std::os::raw::c_int,
18058    pub in_free: ::std::os::raw::c_int,
18059    pub fclose_stdiocast: ::std::os::raw::c_int,
18060    pub stdiocast: *mut FILE,
18061    pub orig_path: *mut ::std::os::raw::c_char,
18062    pub context: *mut php_stream_context,
18063    pub flags: ::std::os::raw::c_int,
18064    pub position: off_t,
18065    pub readbuf: *mut ::std::os::raw::c_uchar,
18066    pub readbuflen: size_t,
18067    pub readpos: off_t,
18068    pub writepos: off_t,
18069    pub chunk_size: size_t,
18070    pub eof: ::std::os::raw::c_int,
18071    pub enclosing_stream: *mut _php_stream,
18072}
18073#[test]
18074fn bindgen_test_layout__php_stream() {
18075    assert_eq!(
18076        ::std::mem::size_of::<_php_stream>(),
18077        224usize,
18078        concat!("Size of: ", stringify!(_php_stream))
18079    );
18080    assert_eq!(
18081        ::std::mem::align_of::<_php_stream>(),
18082        8usize,
18083        concat!("Alignment of ", stringify!(_php_stream))
18084    );
18085    assert_eq!(
18086        unsafe { &(*(::std::ptr::null::<_php_stream>())).ops as *const _ as usize },
18087        0usize,
18088        concat!(
18089            "Offset of field: ",
18090            stringify!(_php_stream),
18091            "::",
18092            stringify!(ops)
18093        )
18094    );
18095    assert_eq!(
18096        unsafe { &(*(::std::ptr::null::<_php_stream>())).abstract_ as *const _ as usize },
18097        8usize,
18098        concat!(
18099            "Offset of field: ",
18100            stringify!(_php_stream),
18101            "::",
18102            stringify!(abstract_)
18103        )
18104    );
18105    assert_eq!(
18106        unsafe { &(*(::std::ptr::null::<_php_stream>())).readfilters as *const _ as usize },
18107        16usize,
18108        concat!(
18109            "Offset of field: ",
18110            stringify!(_php_stream),
18111            "::",
18112            stringify!(readfilters)
18113        )
18114    );
18115    assert_eq!(
18116        unsafe { &(*(::std::ptr::null::<_php_stream>())).writefilters as *const _ as usize },
18117        40usize,
18118        concat!(
18119            "Offset of field: ",
18120            stringify!(_php_stream),
18121            "::",
18122            stringify!(writefilters)
18123        )
18124    );
18125    assert_eq!(
18126        unsafe { &(*(::std::ptr::null::<_php_stream>())).wrapper as *const _ as usize },
18127        64usize,
18128        concat!(
18129            "Offset of field: ",
18130            stringify!(_php_stream),
18131            "::",
18132            stringify!(wrapper)
18133        )
18134    );
18135    assert_eq!(
18136        unsafe { &(*(::std::ptr::null::<_php_stream>())).wrapperthis as *const _ as usize },
18137        72usize,
18138        concat!(
18139            "Offset of field: ",
18140            stringify!(_php_stream),
18141            "::",
18142            stringify!(wrapperthis)
18143        )
18144    );
18145    assert_eq!(
18146        unsafe { &(*(::std::ptr::null::<_php_stream>())).wrapperdata as *const _ as usize },
18147        80usize,
18148        concat!(
18149            "Offset of field: ",
18150            stringify!(_php_stream),
18151            "::",
18152            stringify!(wrapperdata)
18153        )
18154    );
18155    assert_eq!(
18156        unsafe { &(*(::std::ptr::null::<_php_stream>())).fgetss_state as *const _ as usize },
18157        88usize,
18158        concat!(
18159            "Offset of field: ",
18160            stringify!(_php_stream),
18161            "::",
18162            stringify!(fgetss_state)
18163        )
18164    );
18165    assert_eq!(
18166        unsafe { &(*(::std::ptr::null::<_php_stream>())).is_persistent as *const _ as usize },
18167        92usize,
18168        concat!(
18169            "Offset of field: ",
18170            stringify!(_php_stream),
18171            "::",
18172            stringify!(is_persistent)
18173        )
18174    );
18175    assert_eq!(
18176        unsafe { &(*(::std::ptr::null::<_php_stream>())).mode as *const _ as usize },
18177        96usize,
18178        concat!(
18179            "Offset of field: ",
18180            stringify!(_php_stream),
18181            "::",
18182            stringify!(mode)
18183        )
18184    );
18185    assert_eq!(
18186        unsafe { &(*(::std::ptr::null::<_php_stream>())).rsrc_id as *const _ as usize },
18187        112usize,
18188        concat!(
18189            "Offset of field: ",
18190            stringify!(_php_stream),
18191            "::",
18192            stringify!(rsrc_id)
18193        )
18194    );
18195    assert_eq!(
18196        unsafe { &(*(::std::ptr::null::<_php_stream>())).in_free as *const _ as usize },
18197        116usize,
18198        concat!(
18199            "Offset of field: ",
18200            stringify!(_php_stream),
18201            "::",
18202            stringify!(in_free)
18203        )
18204    );
18205    assert_eq!(
18206        unsafe { &(*(::std::ptr::null::<_php_stream>())).fclose_stdiocast as *const _ as usize },
18207        120usize,
18208        concat!(
18209            "Offset of field: ",
18210            stringify!(_php_stream),
18211            "::",
18212            stringify!(fclose_stdiocast)
18213        )
18214    );
18215    assert_eq!(
18216        unsafe { &(*(::std::ptr::null::<_php_stream>())).stdiocast as *const _ as usize },
18217        128usize,
18218        concat!(
18219            "Offset of field: ",
18220            stringify!(_php_stream),
18221            "::",
18222            stringify!(stdiocast)
18223        )
18224    );
18225    assert_eq!(
18226        unsafe { &(*(::std::ptr::null::<_php_stream>())).orig_path as *const _ as usize },
18227        136usize,
18228        concat!(
18229            "Offset of field: ",
18230            stringify!(_php_stream),
18231            "::",
18232            stringify!(orig_path)
18233        )
18234    );
18235    assert_eq!(
18236        unsafe { &(*(::std::ptr::null::<_php_stream>())).context as *const _ as usize },
18237        144usize,
18238        concat!(
18239            "Offset of field: ",
18240            stringify!(_php_stream),
18241            "::",
18242            stringify!(context)
18243        )
18244    );
18245    assert_eq!(
18246        unsafe { &(*(::std::ptr::null::<_php_stream>())).flags as *const _ as usize },
18247        152usize,
18248        concat!(
18249            "Offset of field: ",
18250            stringify!(_php_stream),
18251            "::",
18252            stringify!(flags)
18253        )
18254    );
18255    assert_eq!(
18256        unsafe { &(*(::std::ptr::null::<_php_stream>())).position as *const _ as usize },
18257        160usize,
18258        concat!(
18259            "Offset of field: ",
18260            stringify!(_php_stream),
18261            "::",
18262            stringify!(position)
18263        )
18264    );
18265    assert_eq!(
18266        unsafe { &(*(::std::ptr::null::<_php_stream>())).readbuf as *const _ as usize },
18267        168usize,
18268        concat!(
18269            "Offset of field: ",
18270            stringify!(_php_stream),
18271            "::",
18272            stringify!(readbuf)
18273        )
18274    );
18275    assert_eq!(
18276        unsafe { &(*(::std::ptr::null::<_php_stream>())).readbuflen as *const _ as usize },
18277        176usize,
18278        concat!(
18279            "Offset of field: ",
18280            stringify!(_php_stream),
18281            "::",
18282            stringify!(readbuflen)
18283        )
18284    );
18285    assert_eq!(
18286        unsafe { &(*(::std::ptr::null::<_php_stream>())).readpos as *const _ as usize },
18287        184usize,
18288        concat!(
18289            "Offset of field: ",
18290            stringify!(_php_stream),
18291            "::",
18292            stringify!(readpos)
18293        )
18294    );
18295    assert_eq!(
18296        unsafe { &(*(::std::ptr::null::<_php_stream>())).writepos as *const _ as usize },
18297        192usize,
18298        concat!(
18299            "Offset of field: ",
18300            stringify!(_php_stream),
18301            "::",
18302            stringify!(writepos)
18303        )
18304    );
18305    assert_eq!(
18306        unsafe { &(*(::std::ptr::null::<_php_stream>())).chunk_size as *const _ as usize },
18307        200usize,
18308        concat!(
18309            "Offset of field: ",
18310            stringify!(_php_stream),
18311            "::",
18312            stringify!(chunk_size)
18313        )
18314    );
18315    assert_eq!(
18316        unsafe { &(*(::std::ptr::null::<_php_stream>())).eof as *const _ as usize },
18317        208usize,
18318        concat!(
18319            "Offset of field: ",
18320            stringify!(_php_stream),
18321            "::",
18322            stringify!(eof)
18323        )
18324    );
18325    assert_eq!(
18326        unsafe { &(*(::std::ptr::null::<_php_stream>())).enclosing_stream as *const _ as usize },
18327        216usize,
18328        concat!(
18329            "Offset of field: ",
18330            stringify!(_php_stream),
18331            "::",
18332            stringify!(enclosing_stream)
18333        )
18334    );
18335}
18336extern "C" {
18337    pub fn php_stream_encloses(
18338        enclosing: *mut php_stream,
18339        enclosed: *mut php_stream,
18340    ) -> *mut php_stream;
18341}
18342extern "C" {
18343    pub fn php_stream_from_persistent_id(
18344        persistent_id: *const ::std::os::raw::c_char,
18345        stream: *mut *mut php_stream,
18346        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18347    ) -> ::std::os::raw::c_int;
18348}
18349extern "C" {
18350    pub fn php_stream_get_record(
18351        stream: *mut php_stream,
18352        maxlen: size_t,
18353        returned_len: *mut size_t,
18354        delim: *const ::std::os::raw::c_char,
18355        delim_len: size_t,
18356        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18357    ) -> *mut ::std::os::raw::c_char;
18358}
18359extern "C" {
18360    pub fn php_stream_dirent_alphasort(
18361        a: *mut *const ::std::os::raw::c_char,
18362        b: *mut *const ::std::os::raw::c_char,
18363    ) -> ::std::os::raw::c_int;
18364}
18365extern "C" {
18366    pub fn php_stream_dirent_alphasortr(
18367        a: *mut *const ::std::os::raw::c_char,
18368        b: *mut *const ::std::os::raw::c_char,
18369    ) -> ::std::os::raw::c_int;
18370}
18371pub type php_stream_transport_factory_func = ::std::option::Option<
18372    unsafe extern "C" fn(
18373        proto: *const ::std::os::raw::c_char,
18374        protolen: size_t,
18375        resourcename: *const ::std::os::raw::c_char,
18376        resourcenamelen: size_t,
18377        persistent_id: *const ::std::os::raw::c_char,
18378        options: ::std::os::raw::c_int,
18379        flags: ::std::os::raw::c_int,
18380        timeout: *mut timeval,
18381        context: *mut php_stream_context,
18382        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18383    ) -> *mut php_stream,
18384>;
18385pub type php_stream_transport_factory = php_stream_transport_factory_func;
18386extern "C" {
18387    pub fn php_stream_xport_register(
18388        protocol: *const ::std::os::raw::c_char,
18389        factory: php_stream_transport_factory,
18390        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18391    ) -> ::std::os::raw::c_int;
18392}
18393extern "C" {
18394    pub fn php_stream_xport_unregister(
18395        protocol: *const ::std::os::raw::c_char,
18396        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18397    ) -> ::std::os::raw::c_int;
18398}
18399extern "C" {
18400    pub fn php_stream_xport_bind(
18401        stream: *mut php_stream,
18402        name: *const ::std::os::raw::c_char,
18403        namelen: size_t,
18404        error_text: *mut *mut ::std::os::raw::c_char,
18405        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18406    ) -> ::std::os::raw::c_int;
18407}
18408extern "C" {
18409    pub fn php_stream_xport_connect(
18410        stream: *mut php_stream,
18411        name: *const ::std::os::raw::c_char,
18412        namelen: size_t,
18413        asynchronous: ::std::os::raw::c_int,
18414        timeout: *mut timeval,
18415        error_text: *mut *mut ::std::os::raw::c_char,
18416        error_code: *mut ::std::os::raw::c_int,
18417        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18418    ) -> ::std::os::raw::c_int;
18419}
18420extern "C" {
18421    pub fn php_stream_xport_listen(
18422        stream: *mut php_stream,
18423        backlog: ::std::os::raw::c_int,
18424        error_text: *mut *mut ::std::os::raw::c_char,
18425        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18426    ) -> ::std::os::raw::c_int;
18427}
18428extern "C" {
18429    pub fn php_stream_xport_accept(
18430        stream: *mut php_stream,
18431        client: *mut *mut php_stream,
18432        textaddr: *mut *mut ::std::os::raw::c_char,
18433        textaddrlen: *mut ::std::os::raw::c_int,
18434        addr: *mut *mut ::std::os::raw::c_void,
18435        addrlen: *mut socklen_t,
18436        timeout: *mut timeval,
18437        error_text: *mut *mut ::std::os::raw::c_char,
18438        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18439    ) -> ::std::os::raw::c_int;
18440}
18441extern "C" {
18442    pub fn php_stream_xport_get_name(
18443        stream: *mut php_stream,
18444        want_peer: ::std::os::raw::c_int,
18445        textaddr: *mut *mut ::std::os::raw::c_char,
18446        textaddrlen: *mut ::std::os::raw::c_int,
18447        addr: *mut *mut ::std::os::raw::c_void,
18448        addrlen: *mut socklen_t,
18449        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18450    ) -> ::std::os::raw::c_int;
18451}
18452extern "C" {
18453    pub fn php_stream_xport_recvfrom(
18454        stream: *mut php_stream,
18455        buf: *mut ::std::os::raw::c_char,
18456        buflen: size_t,
18457        flags: ::std::os::raw::c_long,
18458        addr: *mut *mut ::std::os::raw::c_void,
18459        addrlen: *mut socklen_t,
18460        textaddr: *mut *mut ::std::os::raw::c_char,
18461        textaddrlen: *mut ::std::os::raw::c_int,
18462        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18463    ) -> ::std::os::raw::c_int;
18464}
18465extern "C" {
18466    pub fn php_stream_xport_sendto(
18467        stream: *mut php_stream,
18468        buf: *const ::std::os::raw::c_char,
18469        buflen: size_t,
18470        flags: ::std::os::raw::c_long,
18471        addr: *mut ::std::os::raw::c_void,
18472        addrlen: socklen_t,
18473        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18474    ) -> ::std::os::raw::c_int;
18475}
18476pub const stream_shutdown_t_STREAM_SHUT_RD: stream_shutdown_t = 0;
18477pub const stream_shutdown_t_STREAM_SHUT_WR: stream_shutdown_t = 1;
18478pub const stream_shutdown_t_STREAM_SHUT_RDWR: stream_shutdown_t = 2;
18479pub type stream_shutdown_t = ::std::os::raw::c_uint;
18480extern "C" {
18481    pub fn php_stream_xport_shutdown(
18482        stream: *mut php_stream,
18483        how: stream_shutdown_t,
18484        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18485    ) -> ::std::os::raw::c_int;
18486}
18487pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv2_CLIENT:
18488    php_stream_xport_crypt_method_t = 3;
18489pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv3_CLIENT:
18490    php_stream_xport_crypt_method_t = 5;
18491pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv23_CLIENT:
18492    php_stream_xport_crypt_method_t = 57;
18493pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_0_CLIENT:
18494    php_stream_xport_crypt_method_t = 9;
18495pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_1_CLIENT:
18496    php_stream_xport_crypt_method_t = 17;
18497pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT:
18498    php_stream_xport_crypt_method_t = 33;
18499pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLS_CLIENT:
18500    php_stream_xport_crypt_method_t = 9;
18501pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLS_ANY_CLIENT:
18502    php_stream_xport_crypt_method_t = 57;
18503pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_ANY_CLIENT:
18504    php_stream_xport_crypt_method_t = 63;
18505pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv2_SERVER:
18506    php_stream_xport_crypt_method_t = 2;
18507pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv3_SERVER:
18508    php_stream_xport_crypt_method_t = 4;
18509pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv23_SERVER:
18510    php_stream_xport_crypt_method_t = 56;
18511pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_0_SERVER:
18512    php_stream_xport_crypt_method_t = 8;
18513pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_1_SERVER:
18514    php_stream_xport_crypt_method_t = 16;
18515pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_2_SERVER:
18516    php_stream_xport_crypt_method_t = 32;
18517pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLS_SERVER:
18518    php_stream_xport_crypt_method_t = 8;
18519pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLS_ANY_SERVER:
18520    php_stream_xport_crypt_method_t = 56;
18521pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_ANY_SERVER:
18522    php_stream_xport_crypt_method_t = 62;
18523pub type php_stream_xport_crypt_method_t = ::std::os::raw::c_uint;
18524extern "C" {
18525    pub fn php_stream_xport_crypto_setup(
18526        stream: *mut php_stream,
18527        crypto_method: php_stream_xport_crypt_method_t,
18528        session_stream: *mut php_stream,
18529        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18530    ) -> ::std::os::raw::c_int;
18531}
18532extern "C" {
18533    pub fn php_stream_xport_crypto_enable(
18534        stream: *mut php_stream,
18535        activate: ::std::os::raw::c_int,
18536        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18537    ) -> ::std::os::raw::c_int;
18538}
18539extern "C" {
18540    pub fn php_stream_xport_get_hash() -> *mut HashTable;
18541}
18542extern "C" {
18543    pub fn php_stream_generic_socket_factory(
18544        proto: *const ::std::os::raw::c_char,
18545        protolen: size_t,
18546        resourcename: *const ::std::os::raw::c_char,
18547        resourcenamelen: size_t,
18548        persistent_id: *const ::std::os::raw::c_char,
18549        options: ::std::os::raw::c_int,
18550        flags: ::std::os::raw::c_int,
18551        timeout: *mut timeval,
18552        context: *mut php_stream_context,
18553        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18554    ) -> *mut php_stream;
18555}
18556extern "C" {
18557    pub static mut php_stream_stdio_ops: php_stream_ops;
18558}
18559extern "C" {
18560    pub static mut php_plain_files_wrapper: php_stream_wrapper;
18561}
18562extern "C" {
18563    pub static mut php_glob_stream_wrapper: php_stream_wrapper;
18564}
18565extern "C" {
18566    pub static mut php_glob_stream_ops: php_stream_ops;
18567}
18568extern "C" {
18569    pub static mut php_stream_userspace_ops: php_stream_ops;
18570}
18571extern "C" {
18572    pub static mut php_stream_userspace_dir_ops: php_stream_ops;
18573}
18574extern "C" {
18575    pub fn php_init_stream_wrappers(
18576        module_number: ::std::os::raw::c_int,
18577        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18578    ) -> ::std::os::raw::c_int;
18579}
18580extern "C" {
18581    pub fn php_shutdown_stream_wrappers(
18582        module_number: ::std::os::raw::c_int,
18583        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18584    ) -> ::std::os::raw::c_int;
18585}
18586extern "C" {
18587    pub fn php_shutdown_stream_hashes(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
18588}
18589extern "C" {
18590    pub fn php_register_url_stream_wrapper(
18591        protocol: *const ::std::os::raw::c_char,
18592        wrapper: *mut php_stream_wrapper,
18593        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18594    ) -> ::std::os::raw::c_int;
18595}
18596extern "C" {
18597    pub fn php_unregister_url_stream_wrapper(
18598        protocol: *const ::std::os::raw::c_char,
18599        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18600    ) -> ::std::os::raw::c_int;
18601}
18602extern "C" {
18603    pub fn php_register_url_stream_wrapper_volatile(
18604        protocol: *const ::std::os::raw::c_char,
18605        wrapper: *mut php_stream_wrapper,
18606        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18607    ) -> ::std::os::raw::c_int;
18608}
18609extern "C" {
18610    pub fn php_unregister_url_stream_wrapper_volatile(
18611        protocol: *const ::std::os::raw::c_char,
18612        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18613    ) -> ::std::os::raw::c_int;
18614}
18615extern "C" {
18616    pub fn php_stream_locate_url_wrapper(
18617        path: *const ::std::os::raw::c_char,
18618        path_for_open: *mut *const ::std::os::raw::c_char,
18619        options: ::std::os::raw::c_int,
18620        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18621    ) -> *mut php_stream_wrapper;
18622}
18623extern "C" {
18624    pub fn php_stream_locate_eol(
18625        stream: *mut php_stream,
18626        buf: *const ::std::os::raw::c_char,
18627        buf_len: size_t,
18628        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18629    ) -> *const ::std::os::raw::c_char;
18630}
18631extern "C" {
18632    pub fn php_stream_wrapper_log_error(
18633        wrapper: *mut php_stream_wrapper,
18634        options: ::std::os::raw::c_int,
18635        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18636        fmt: *const ::std::os::raw::c_char,
18637        ...
18638    );
18639}
18640extern "C" {
18641    pub fn php_stream_get_url_stream_wrappers_hash_global() -> *mut HashTable;
18642}
18643extern "C" {
18644    pub fn php_get_stream_filters_hash_global() -> *mut HashTable;
18645}
18646extern "C" {
18647    pub static mut php_stream_user_wrapper_ops: *mut php_stream_wrapper_ops;
18648}
18649extern "C" {
18650    pub static mut php_stream_memory_ops: php_stream_ops;
18651}
18652extern "C" {
18653    pub static mut php_stream_temp_ops: php_stream_ops;
18654}
18655extern "C" {
18656    pub static mut php_stream_rfc2397_ops: php_stream_ops;
18657}
18658extern "C" {
18659    pub static mut php_stream_rfc2397_wrapper: php_stream_wrapper;
18660}
18661#[repr(C)]
18662#[derive(Debug, Copy, Clone)]
18663pub struct _zend_ini_entry {
18664    pub module_number: ::std::os::raw::c_int,
18665    pub modifiable: ::std::os::raw::c_int,
18666    pub name: *mut ::std::os::raw::c_char,
18667    pub name_length: uint,
18668    pub on_modify: ::std::option::Option<
18669        unsafe extern "C" fn(
18670            entry: *mut zend_ini_entry,
18671            new_value: *mut ::std::os::raw::c_char,
18672            new_value_length: uint,
18673            mh_arg1: *mut ::std::os::raw::c_void,
18674            mh_arg2: *mut ::std::os::raw::c_void,
18675            mh_arg3: *mut ::std::os::raw::c_void,
18676            stage: ::std::os::raw::c_int,
18677            tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18678        ) -> ::std::os::raw::c_int,
18679    >,
18680    pub mh_arg1: *mut ::std::os::raw::c_void,
18681    pub mh_arg2: *mut ::std::os::raw::c_void,
18682    pub mh_arg3: *mut ::std::os::raw::c_void,
18683    pub value: *mut ::std::os::raw::c_char,
18684    pub value_length: uint,
18685    pub orig_value: *mut ::std::os::raw::c_char,
18686    pub orig_value_length: uint,
18687    pub orig_modifiable: ::std::os::raw::c_int,
18688    pub modified: ::std::os::raw::c_int,
18689    pub displayer: ::std::option::Option<
18690        unsafe extern "C" fn(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int),
18691    >,
18692}
18693#[test]
18694fn bindgen_test_layout__zend_ini_entry() {
18695    assert_eq!(
18696        ::std::mem::size_of::<_zend_ini_entry>(),
18697        104usize,
18698        concat!("Size of: ", stringify!(_zend_ini_entry))
18699    );
18700    assert_eq!(
18701        ::std::mem::align_of::<_zend_ini_entry>(),
18702        8usize,
18703        concat!("Alignment of ", stringify!(_zend_ini_entry))
18704    );
18705    assert_eq!(
18706        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).module_number as *const _ as usize },
18707        0usize,
18708        concat!(
18709            "Offset of field: ",
18710            stringify!(_zend_ini_entry),
18711            "::",
18712            stringify!(module_number)
18713        )
18714    );
18715    assert_eq!(
18716        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).modifiable as *const _ as usize },
18717        4usize,
18718        concat!(
18719            "Offset of field: ",
18720            stringify!(_zend_ini_entry),
18721            "::",
18722            stringify!(modifiable)
18723        )
18724    );
18725    assert_eq!(
18726        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).name as *const _ as usize },
18727        8usize,
18728        concat!(
18729            "Offset of field: ",
18730            stringify!(_zend_ini_entry),
18731            "::",
18732            stringify!(name)
18733        )
18734    );
18735    assert_eq!(
18736        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).name_length as *const _ as usize },
18737        16usize,
18738        concat!(
18739            "Offset of field: ",
18740            stringify!(_zend_ini_entry),
18741            "::",
18742            stringify!(name_length)
18743        )
18744    );
18745    assert_eq!(
18746        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).on_modify as *const _ as usize },
18747        24usize,
18748        concat!(
18749            "Offset of field: ",
18750            stringify!(_zend_ini_entry),
18751            "::",
18752            stringify!(on_modify)
18753        )
18754    );
18755    assert_eq!(
18756        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).mh_arg1 as *const _ as usize },
18757        32usize,
18758        concat!(
18759            "Offset of field: ",
18760            stringify!(_zend_ini_entry),
18761            "::",
18762            stringify!(mh_arg1)
18763        )
18764    );
18765    assert_eq!(
18766        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).mh_arg2 as *const _ as usize },
18767        40usize,
18768        concat!(
18769            "Offset of field: ",
18770            stringify!(_zend_ini_entry),
18771            "::",
18772            stringify!(mh_arg2)
18773        )
18774    );
18775    assert_eq!(
18776        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).mh_arg3 as *const _ as usize },
18777        48usize,
18778        concat!(
18779            "Offset of field: ",
18780            stringify!(_zend_ini_entry),
18781            "::",
18782            stringify!(mh_arg3)
18783        )
18784    );
18785    assert_eq!(
18786        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).value as *const _ as usize },
18787        56usize,
18788        concat!(
18789            "Offset of field: ",
18790            stringify!(_zend_ini_entry),
18791            "::",
18792            stringify!(value)
18793        )
18794    );
18795    assert_eq!(
18796        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).value_length as *const _ as usize },
18797        64usize,
18798        concat!(
18799            "Offset of field: ",
18800            stringify!(_zend_ini_entry),
18801            "::",
18802            stringify!(value_length)
18803        )
18804    );
18805    assert_eq!(
18806        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).orig_value as *const _ as usize },
18807        72usize,
18808        concat!(
18809            "Offset of field: ",
18810            stringify!(_zend_ini_entry),
18811            "::",
18812            stringify!(orig_value)
18813        )
18814    );
18815    assert_eq!(
18816        unsafe {
18817            &(*(::std::ptr::null::<_zend_ini_entry>())).orig_value_length as *const _ as usize
18818        },
18819        80usize,
18820        concat!(
18821            "Offset of field: ",
18822            stringify!(_zend_ini_entry),
18823            "::",
18824            stringify!(orig_value_length)
18825        )
18826    );
18827    assert_eq!(
18828        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).orig_modifiable as *const _ as usize },
18829        84usize,
18830        concat!(
18831            "Offset of field: ",
18832            stringify!(_zend_ini_entry),
18833            "::",
18834            stringify!(orig_modifiable)
18835        )
18836    );
18837    assert_eq!(
18838        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).modified as *const _ as usize },
18839        88usize,
18840        concat!(
18841            "Offset of field: ",
18842            stringify!(_zend_ini_entry),
18843            "::",
18844            stringify!(modified)
18845        )
18846    );
18847    assert_eq!(
18848        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).displayer as *const _ as usize },
18849        96usize,
18850        concat!(
18851            "Offset of field: ",
18852            stringify!(_zend_ini_entry),
18853            "::",
18854            stringify!(displayer)
18855        )
18856    );
18857}
18858extern "C" {
18859    pub fn zend_ini_startup(
18860        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18861    ) -> ::std::os::raw::c_int;
18862}
18863extern "C" {
18864    pub fn zend_ini_shutdown(
18865        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18866    ) -> ::std::os::raw::c_int;
18867}
18868extern "C" {
18869    pub fn zend_ini_global_shutdown(
18870        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18871    ) -> ::std::os::raw::c_int;
18872}
18873extern "C" {
18874    pub fn zend_ini_deactivate(
18875        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18876    ) -> ::std::os::raw::c_int;
18877}
18878extern "C" {
18879    pub fn zend_copy_ini_directives(
18880        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18881    ) -> ::std::os::raw::c_int;
18882}
18883extern "C" {
18884    pub fn zend_ini_sort_entries(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
18885}
18886extern "C" {
18887    pub fn zend_register_ini_entries(
18888        ini_entry: *const zend_ini_entry,
18889        module_number: ::std::os::raw::c_int,
18890        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18891    ) -> ::std::os::raw::c_int;
18892}
18893extern "C" {
18894    pub fn zend_unregister_ini_entries(
18895        module_number: ::std::os::raw::c_int,
18896        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18897    );
18898}
18899extern "C" {
18900    pub fn zend_ini_refresh_caches(
18901        stage: ::std::os::raw::c_int,
18902        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18903    );
18904}
18905extern "C" {
18906    pub fn zend_alter_ini_entry(
18907        name: *mut ::std::os::raw::c_char,
18908        name_length: uint,
18909        new_value: *mut ::std::os::raw::c_char,
18910        new_value_length: uint,
18911        modify_type: ::std::os::raw::c_int,
18912        stage: ::std::os::raw::c_int,
18913    ) -> ::std::os::raw::c_int;
18914}
18915extern "C" {
18916    pub fn zend_alter_ini_entry_ex(
18917        name: *mut ::std::os::raw::c_char,
18918        name_length: uint,
18919        new_value: *mut ::std::os::raw::c_char,
18920        new_value_length: uint,
18921        modify_type: ::std::os::raw::c_int,
18922        stage: ::std::os::raw::c_int,
18923        force_change: ::std::os::raw::c_int,
18924        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18925    ) -> ::std::os::raw::c_int;
18926}
18927extern "C" {
18928    pub fn zend_restore_ini_entry(
18929        name: *mut ::std::os::raw::c_char,
18930        name_length: uint,
18931        stage: ::std::os::raw::c_int,
18932    ) -> ::std::os::raw::c_int;
18933}
18934extern "C" {
18935    pub fn zend_ini_long(
18936        name: *mut ::std::os::raw::c_char,
18937        name_length: uint,
18938        orig: ::std::os::raw::c_int,
18939    ) -> ::std::os::raw::c_long;
18940}
18941extern "C" {
18942    pub fn zend_ini_double(
18943        name: *mut ::std::os::raw::c_char,
18944        name_length: uint,
18945        orig: ::std::os::raw::c_int,
18946    ) -> f64;
18947}
18948extern "C" {
18949    pub fn zend_ini_string(
18950        name: *mut ::std::os::raw::c_char,
18951        name_length: uint,
18952        orig: ::std::os::raw::c_int,
18953    ) -> *mut ::std::os::raw::c_char;
18954}
18955extern "C" {
18956    pub fn zend_ini_string_ex(
18957        name: *mut ::std::os::raw::c_char,
18958        name_length: uint,
18959        orig: ::std::os::raw::c_int,
18960        exists: *mut zend_bool,
18961    ) -> *mut ::std::os::raw::c_char;
18962}
18963extern "C" {
18964    pub fn zend_ini_register_displayer(
18965        name: *mut ::std::os::raw::c_char,
18966        name_length: uint,
18967        displayer: ::std::option::Option<
18968            unsafe extern "C" fn(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int),
18969        >,
18970    ) -> ::std::os::raw::c_int;
18971}
18972extern "C" {
18973    pub fn zend_ini_boolean_displayer_cb(
18974        ini_entry: *mut zend_ini_entry,
18975        type_: ::std::os::raw::c_int,
18976    );
18977}
18978extern "C" {
18979    pub fn zend_ini_color_displayer_cb(
18980        ini_entry: *mut zend_ini_entry,
18981        type_: ::std::os::raw::c_int,
18982    );
18983}
18984pub type zend_ini_parser_cb_t = ::std::option::Option<
18985    unsafe extern "C" fn(
18986        arg1: *mut zval,
18987        arg2: *mut zval,
18988        arg3: *mut zval,
18989        callback_type: ::std::os::raw::c_int,
18990        arg: *mut ::std::os::raw::c_void,
18991        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
18992    ),
18993>;
18994extern "C" {
18995    pub fn zend_parse_ini_file(
18996        fh: *mut zend_file_handle,
18997        unbuffered_errors: zend_bool,
18998        scanner_mode: ::std::os::raw::c_int,
18999        ini_parser_cb: zend_ini_parser_cb_t,
19000        arg: *mut ::std::os::raw::c_void,
19001        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19002    ) -> ::std::os::raw::c_int;
19003}
19004extern "C" {
19005    pub fn zend_parse_ini_string(
19006        str_: *mut ::std::os::raw::c_char,
19007        unbuffered_errors: zend_bool,
19008        scanner_mode: ::std::os::raw::c_int,
19009        ini_parser_cb: zend_ini_parser_cb_t,
19010        arg: *mut ::std::os::raw::c_void,
19011        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19012    ) -> ::std::os::raw::c_int;
19013}
19014#[repr(C)]
19015#[derive(Debug, Copy, Clone)]
19016pub struct _zend_ini_parser_param {
19017    pub ini_parser_cb: zend_ini_parser_cb_t,
19018    pub arg: *mut ::std::os::raw::c_void,
19019}
19020#[test]
19021fn bindgen_test_layout__zend_ini_parser_param() {
19022    assert_eq!(
19023        ::std::mem::size_of::<_zend_ini_parser_param>(),
19024        16usize,
19025        concat!("Size of: ", stringify!(_zend_ini_parser_param))
19026    );
19027    assert_eq!(
19028        ::std::mem::align_of::<_zend_ini_parser_param>(),
19029        8usize,
19030        concat!("Alignment of ", stringify!(_zend_ini_parser_param))
19031    );
19032    assert_eq!(
19033        unsafe {
19034            &(*(::std::ptr::null::<_zend_ini_parser_param>())).ini_parser_cb as *const _ as usize
19035        },
19036        0usize,
19037        concat!(
19038            "Offset of field: ",
19039            stringify!(_zend_ini_parser_param),
19040            "::",
19041            stringify!(ini_parser_cb)
19042        )
19043    );
19044    assert_eq!(
19045        unsafe { &(*(::std::ptr::null::<_zend_ini_parser_param>())).arg as *const _ as usize },
19046        8usize,
19047        concat!(
19048            "Offset of field: ",
19049            stringify!(_zend_ini_parser_param),
19050            "::",
19051            stringify!(arg)
19052        )
19053    );
19054}
19055pub type zend_ini_parser_param = _zend_ini_parser_param;
19056extern "C" {
19057    pub fn php_init_config(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void)
19058        -> ::std::os::raw::c_int;
19059}
19060extern "C" {
19061    pub fn php_shutdown_config() -> ::std::os::raw::c_int;
19062}
19063extern "C" {
19064    pub fn php_ini_register_extensions(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
19065}
19066extern "C" {
19067    pub fn php_parse_user_ini_file(
19068        dirname: *const ::std::os::raw::c_char,
19069        ini_filename: *mut ::std::os::raw::c_char,
19070        target_hash: *mut HashTable,
19071        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19072    ) -> ::std::os::raw::c_int;
19073}
19074extern "C" {
19075    pub fn php_ini_activate_config(
19076        source_hash: *mut HashTable,
19077        modify_type: ::std::os::raw::c_int,
19078        stage: ::std::os::raw::c_int,
19079        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19080    );
19081}
19082extern "C" {
19083    pub fn php_ini_has_per_dir_config() -> ::std::os::raw::c_int;
19084}
19085extern "C" {
19086    pub fn php_ini_has_per_host_config() -> ::std::os::raw::c_int;
19087}
19088extern "C" {
19089    pub fn php_ini_activate_per_dir_config(
19090        path: *mut ::std::os::raw::c_char,
19091        path_len: uint,
19092        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19093    );
19094}
19095extern "C" {
19096    pub fn php_ini_activate_per_host_config(
19097        host: *const ::std::os::raw::c_char,
19098        host_len: uint,
19099        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19100    );
19101}
19102extern "C" {
19103    pub fn php_ini_get_configuration_hash() -> *mut HashTable;
19104}
19105extern "C" {
19106    pub fn php_fopen_primary_script(
19107        file_handle: *mut zend_file_handle,
19108        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19109    ) -> ::std::os::raw::c_int;
19110}
19111extern "C" {
19112    pub fn php_check_open_basedir(
19113        path: *const ::std::os::raw::c_char,
19114        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19115    ) -> ::std::os::raw::c_int;
19116}
19117extern "C" {
19118    pub fn php_check_open_basedir_ex(
19119        path: *const ::std::os::raw::c_char,
19120        warn: ::std::os::raw::c_int,
19121        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19122    ) -> ::std::os::raw::c_int;
19123}
19124extern "C" {
19125    pub fn php_check_specific_open_basedir(
19126        basedir: *const ::std::os::raw::c_char,
19127        path: *const ::std::os::raw::c_char,
19128        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19129    ) -> ::std::os::raw::c_int;
19130}
19131extern "C" {
19132    pub fn php_check_safe_mode_include_dir(
19133        path: *const ::std::os::raw::c_char,
19134        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19135    ) -> ::std::os::raw::c_int;
19136}
19137extern "C" {
19138    pub fn php_resolve_path(
19139        filename: *const ::std::os::raw::c_char,
19140        filename_len: ::std::os::raw::c_int,
19141        path: *const ::std::os::raw::c_char,
19142        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19143    ) -> *mut ::std::os::raw::c_char;
19144}
19145extern "C" {
19146    pub fn php_fopen_with_path(
19147        filename: *const ::std::os::raw::c_char,
19148        mode: *const ::std::os::raw::c_char,
19149        path: *const ::std::os::raw::c_char,
19150        opened_path: *mut *mut ::std::os::raw::c_char,
19151        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19152    ) -> *mut FILE;
19153}
19154extern "C" {
19155    pub fn php_strip_url_passwd(path: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
19156}
19157#[repr(C)]
19158#[derive(Copy, Clone)]
19159pub struct _zend_constant {
19160    pub value: zval,
19161    pub flags: ::std::os::raw::c_int,
19162    pub name: *mut ::std::os::raw::c_char,
19163    pub name_len: uint,
19164    pub module_number: ::std::os::raw::c_int,
19165}
19166#[test]
19167fn bindgen_test_layout__zend_constant() {
19168    assert_eq!(
19169        ::std::mem::size_of::<_zend_constant>(),
19170        48usize,
19171        concat!("Size of: ", stringify!(_zend_constant))
19172    );
19173    assert_eq!(
19174        ::std::mem::align_of::<_zend_constant>(),
19175        8usize,
19176        concat!("Alignment of ", stringify!(_zend_constant))
19177    );
19178    assert_eq!(
19179        unsafe { &(*(::std::ptr::null::<_zend_constant>())).value as *const _ as usize },
19180        0usize,
19181        concat!(
19182            "Offset of field: ",
19183            stringify!(_zend_constant),
19184            "::",
19185            stringify!(value)
19186        )
19187    );
19188    assert_eq!(
19189        unsafe { &(*(::std::ptr::null::<_zend_constant>())).flags as *const _ as usize },
19190        24usize,
19191        concat!(
19192            "Offset of field: ",
19193            stringify!(_zend_constant),
19194            "::",
19195            stringify!(flags)
19196        )
19197    );
19198    assert_eq!(
19199        unsafe { &(*(::std::ptr::null::<_zend_constant>())).name as *const _ as usize },
19200        32usize,
19201        concat!(
19202            "Offset of field: ",
19203            stringify!(_zend_constant),
19204            "::",
19205            stringify!(name)
19206        )
19207    );
19208    assert_eq!(
19209        unsafe { &(*(::std::ptr::null::<_zend_constant>())).name_len as *const _ as usize },
19210        40usize,
19211        concat!(
19212            "Offset of field: ",
19213            stringify!(_zend_constant),
19214            "::",
19215            stringify!(name_len)
19216        )
19217    );
19218    assert_eq!(
19219        unsafe { &(*(::std::ptr::null::<_zend_constant>())).module_number as *const _ as usize },
19220        44usize,
19221        concat!(
19222            "Offset of field: ",
19223            stringify!(_zend_constant),
19224            "::",
19225            stringify!(module_number)
19226        )
19227    );
19228}
19229pub type zend_constant = _zend_constant;
19230extern "C" {
19231    pub fn zend_startup_constants(
19232        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19233    ) -> ::std::os::raw::c_int;
19234}
19235extern "C" {
19236    pub fn zend_shutdown_constants(
19237        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19238    ) -> ::std::os::raw::c_int;
19239}
19240extern "C" {
19241    pub fn zend_register_standard_constants(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
19242}
19243extern "C" {
19244    pub fn zend_get_constant(
19245        name: *const ::std::os::raw::c_char,
19246        name_len: uint,
19247        result: *mut zval,
19248        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19249    ) -> ::std::os::raw::c_int;
19250}
19251extern "C" {
19252    pub fn zend_get_constant_ex(
19253        name: *const ::std::os::raw::c_char,
19254        name_len: uint,
19255        result: *mut zval,
19256        scope: *mut zend_class_entry,
19257        flags: ulong,
19258        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19259    ) -> ::std::os::raw::c_int;
19260}
19261extern "C" {
19262    pub fn zend_register_bool_constant(
19263        name: *const ::std::os::raw::c_char,
19264        name_len: uint,
19265        bval: zend_bool,
19266        flags: ::std::os::raw::c_int,
19267        module_number: ::std::os::raw::c_int,
19268        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19269    );
19270}
19271extern "C" {
19272    pub fn zend_register_null_constant(
19273        name: *const ::std::os::raw::c_char,
19274        name_len: uint,
19275        flags: ::std::os::raw::c_int,
19276        module_number: ::std::os::raw::c_int,
19277        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19278    );
19279}
19280extern "C" {
19281    pub fn zend_register_long_constant(
19282        name: *const ::std::os::raw::c_char,
19283        name_len: uint,
19284        lval: ::std::os::raw::c_long,
19285        flags: ::std::os::raw::c_int,
19286        module_number: ::std::os::raw::c_int,
19287        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19288    );
19289}
19290extern "C" {
19291    pub fn zend_register_double_constant(
19292        name: *const ::std::os::raw::c_char,
19293        name_len: uint,
19294        dval: f64,
19295        flags: ::std::os::raw::c_int,
19296        module_number: ::std::os::raw::c_int,
19297        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19298    );
19299}
19300extern "C" {
19301    pub fn zend_register_string_constant(
19302        name: *const ::std::os::raw::c_char,
19303        name_len: uint,
19304        strval: *mut ::std::os::raw::c_char,
19305        flags: ::std::os::raw::c_int,
19306        module_number: ::std::os::raw::c_int,
19307        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19308    );
19309}
19310extern "C" {
19311    pub fn zend_register_stringl_constant(
19312        name: *const ::std::os::raw::c_char,
19313        name_len: uint,
19314        strval: *mut ::std::os::raw::c_char,
19315        strlen: uint,
19316        flags: ::std::os::raw::c_int,
19317        module_number: ::std::os::raw::c_int,
19318        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19319    );
19320}
19321extern "C" {
19322    pub fn zend_register_constant(
19323        c: *mut zend_constant,
19324        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19325    ) -> ::std::os::raw::c_int;
19326}
19327extern "C" {
19328    pub fn zend_copy_constants(target: *mut HashTable, sourc: *mut HashTable);
19329}
19330extern "C" {
19331    pub fn zend_quick_get_constant(
19332        key: *const zend_literal,
19333        flags: ulong,
19334        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19335    ) -> *mut zend_constant;
19336}
19337extern "C" {
19338    pub fn php_info_html_esc(
19339        string: *mut ::std::os::raw::c_char,
19340        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19341    ) -> *mut ::std::os::raw::c_char;
19342}
19343extern "C" {
19344    pub fn php_info_html_esc_write(
19345        string: *mut ::std::os::raw::c_char,
19346        str_len: ::std::os::raw::c_int,
19347        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19348    );
19349}
19350extern "C" {
19351    pub fn php_print_info_htmlhead(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
19352}
19353extern "C" {
19354    pub fn php_print_info(
19355        flag: ::std::os::raw::c_int,
19356        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19357    );
19358}
19359extern "C" {
19360    pub fn php_print_style();
19361}
19362extern "C" {
19363    pub fn php_info_print_style(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
19364}
19365extern "C" {
19366    pub fn php_info_print_table_colspan_header(
19367        num_cols: ::std::os::raw::c_int,
19368        header: *mut ::std::os::raw::c_char,
19369    );
19370}
19371extern "C" {
19372    pub fn php_info_print_table_header(num_cols: ::std::os::raw::c_int, ...);
19373}
19374extern "C" {
19375    pub fn php_info_print_table_row(num_cols: ::std::os::raw::c_int, ...);
19376}
19377extern "C" {
19378    pub fn php_info_print_table_row_ex(
19379        num_cols: ::std::os::raw::c_int,
19380        arg1: *const ::std::os::raw::c_char,
19381        ...
19382    );
19383}
19384extern "C" {
19385    pub fn php_info_print_table_start();
19386}
19387extern "C" {
19388    pub fn php_info_print_table_end();
19389}
19390extern "C" {
19391    pub fn php_info_print_box_start(bg: ::std::os::raw::c_int);
19392}
19393extern "C" {
19394    pub fn php_info_print_box_end();
19395}
19396extern "C" {
19397    pub fn php_info_print_hr();
19398}
19399extern "C" {
19400    pub fn php_info_print_module(
19401        module: *mut zend_module_entry,
19402        tsrm_ls: *mut *mut *mut ::std::os::raw::c_void,
19403    );
19404}
19405extern "C" {
19406    pub fn php_get_uname(mode: ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
19407}
19408#[repr(C)]
19409#[derive(Debug, Copy, Clone)]
19410pub struct _zend_extension_version_info {
19411    pub zend_extension_api_no: ::std::os::raw::c_int,
19412    pub build_id: *mut ::std::os::raw::c_char,
19413}
19414#[test]
19415fn bindgen_test_layout__zend_extension_version_info() {
19416    assert_eq!(
19417        ::std::mem::size_of::<_zend_extension_version_info>(),
19418        16usize,
19419        concat!("Size of: ", stringify!(_zend_extension_version_info))
19420    );
19421    assert_eq!(
19422        ::std::mem::align_of::<_zend_extension_version_info>(),
19423        8usize,
19424        concat!("Alignment of ", stringify!(_zend_extension_version_info))
19425    );
19426    assert_eq!(
19427        unsafe {
19428            &(*(::std::ptr::null::<_zend_extension_version_info>())).zend_extension_api_no
19429                as *const _ as usize
19430        },
19431        0usize,
19432        concat!(
19433            "Offset of field: ",
19434            stringify!(_zend_extension_version_info),
19435            "::",
19436            stringify!(zend_extension_api_no)
19437        )
19438    );
19439    assert_eq!(
19440        unsafe {
19441            &(*(::std::ptr::null::<_zend_extension_version_info>())).build_id as *const _ as usize
19442        },
19443        8usize,
19444        concat!(
19445            "Offset of field: ",
19446            stringify!(_zend_extension_version_info),
19447            "::",
19448            stringify!(build_id)
19449        )
19450    );
19451}
19452pub type zend_extension_version_info = _zend_extension_version_info;
19453pub type zend_extension = _zend_extension;
19454pub type startup_func_t = ::std::option::Option<
19455    unsafe extern "C" fn(extension: *mut zend_extension) -> ::std::os::raw::c_int,
19456>;
19457pub type shutdown_func_t =
19458    ::std::option::Option<unsafe extern "C" fn(extension: *mut zend_extension)>;
19459pub type activate_func_t = ::std::option::Option<unsafe extern "C" fn()>;
19460pub type deactivate_func_t = ::std::option::Option<unsafe extern "C" fn()>;
19461pub type message_handler_func_t = ::std::option::Option<
19462    unsafe extern "C" fn(message: ::std::os::raw::c_int, arg: *mut ::std::os::raw::c_void),
19463>;
19464pub type op_array_handler_func_t =
19465    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
19466pub type statement_handler_func_t =
19467    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
19468pub type fcall_begin_handler_func_t =
19469    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
19470pub type fcall_end_handler_func_t =
19471    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
19472pub type op_array_ctor_func_t =
19473    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
19474pub type op_array_dtor_func_t =
19475    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
19476#[repr(C)]
19477#[derive(Debug, Copy, Clone)]
19478pub struct _zend_extension {
19479    pub name: *mut ::std::os::raw::c_char,
19480    pub version: *mut ::std::os::raw::c_char,
19481    pub author: *mut ::std::os::raw::c_char,
19482    pub URL: *mut ::std::os::raw::c_char,
19483    pub copyright: *mut ::std::os::raw::c_char,
19484    pub startup: startup_func_t,
19485    pub shutdown: shutdown_func_t,
19486    pub activate: activate_func_t,
19487    pub deactivate: deactivate_func_t,
19488    pub message_handler: message_handler_func_t,
19489    pub op_array_handler: op_array_handler_func_t,
19490    pub statement_handler: statement_handler_func_t,
19491    pub fcall_begin_handler: fcall_begin_handler_func_t,
19492    pub fcall_end_handler: fcall_end_handler_func_t,
19493    pub op_array_ctor: op_array_ctor_func_t,
19494    pub op_array_dtor: op_array_dtor_func_t,
19495    pub api_no_check: ::std::option::Option<
19496        unsafe extern "C" fn(api_no: ::std::os::raw::c_int) -> ::std::os::raw::c_int,
19497    >,
19498    pub build_id_check: ::std::option::Option<
19499        unsafe extern "C" fn(build_id: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int,
19500    >,
19501    pub reserved3: *mut ::std::os::raw::c_void,
19502    pub reserved4: *mut ::std::os::raw::c_void,
19503    pub reserved5: *mut ::std::os::raw::c_void,
19504    pub reserved6: *mut ::std::os::raw::c_void,
19505    pub reserved7: *mut ::std::os::raw::c_void,
19506    pub reserved8: *mut ::std::os::raw::c_void,
19507    pub handle: *mut ::std::os::raw::c_void,
19508    pub resource_number: ::std::os::raw::c_int,
19509}
19510#[test]
19511fn bindgen_test_layout__zend_extension() {
19512    assert_eq!(
19513        ::std::mem::size_of::<_zend_extension>(),
19514        208usize,
19515        concat!("Size of: ", stringify!(_zend_extension))
19516    );
19517    assert_eq!(
19518        ::std::mem::align_of::<_zend_extension>(),
19519        8usize,
19520        concat!("Alignment of ", stringify!(_zend_extension))
19521    );
19522    assert_eq!(
19523        unsafe { &(*(::std::ptr::null::<_zend_extension>())).name as *const _ as usize },
19524        0usize,
19525        concat!(
19526            "Offset of field: ",
19527            stringify!(_zend_extension),
19528            "::",
19529            stringify!(name)
19530        )
19531    );
19532    assert_eq!(
19533        unsafe { &(*(::std::ptr::null::<_zend_extension>())).version as *const _ as usize },
19534        8usize,
19535        concat!(
19536            "Offset of field: ",
19537            stringify!(_zend_extension),
19538            "::",
19539            stringify!(version)
19540        )
19541    );
19542    assert_eq!(
19543        unsafe { &(*(::std::ptr::null::<_zend_extension>())).author as *const _ as usize },
19544        16usize,
19545        concat!(
19546            "Offset of field: ",
19547            stringify!(_zend_extension),
19548            "::",
19549            stringify!(author)
19550        )
19551    );
19552    assert_eq!(
19553        unsafe { &(*(::std::ptr::null::<_zend_extension>())).URL as *const _ as usize },
19554        24usize,
19555        concat!(
19556            "Offset of field: ",
19557            stringify!(_zend_extension),
19558            "::",
19559            stringify!(URL)
19560        )
19561    );
19562    assert_eq!(
19563        unsafe { &(*(::std::ptr::null::<_zend_extension>())).copyright as *const _ as usize },
19564        32usize,
19565        concat!(
19566            "Offset of field: ",
19567            stringify!(_zend_extension),
19568            "::",
19569            stringify!(copyright)
19570        )
19571    );
19572    assert_eq!(
19573        unsafe { &(*(::std::ptr::null::<_zend_extension>())).startup as *const _ as usize },
19574        40usize,
19575        concat!(
19576            "Offset of field: ",
19577            stringify!(_zend_extension),
19578            "::",
19579            stringify!(startup)
19580        )
19581    );
19582    assert_eq!(
19583        unsafe { &(*(::std::ptr::null::<_zend_extension>())).shutdown as *const _ as usize },
19584        48usize,
19585        concat!(
19586            "Offset of field: ",
19587            stringify!(_zend_extension),
19588            "::",
19589            stringify!(shutdown)
19590        )
19591    );
19592    assert_eq!(
19593        unsafe { &(*(::std::ptr::null::<_zend_extension>())).activate as *const _ as usize },
19594        56usize,
19595        concat!(
19596            "Offset of field: ",
19597            stringify!(_zend_extension),
19598            "::",
19599            stringify!(activate)
19600        )
19601    );
19602    assert_eq!(
19603        unsafe { &(*(::std::ptr::null::<_zend_extension>())).deactivate as *const _ as usize },
19604        64usize,
19605        concat!(
19606            "Offset of field: ",
19607            stringify!(_zend_extension),
19608            "::",
19609            stringify!(deactivate)
19610        )
19611    );
19612    assert_eq!(
19613        unsafe { &(*(::std::ptr::null::<_zend_extension>())).message_handler as *const _ as usize },
19614        72usize,
19615        concat!(
19616            "Offset of field: ",
19617            stringify!(_zend_extension),
19618            "::",
19619            stringify!(message_handler)
19620        )
19621    );
19622    assert_eq!(
19623        unsafe {
19624            &(*(::std::ptr::null::<_zend_extension>())).op_array_handler as *const _ as usize
19625        },
19626        80usize,
19627        concat!(
19628            "Offset of field: ",
19629            stringify!(_zend_extension),
19630            "::",
19631            stringify!(op_array_handler)
19632        )
19633    );
19634    assert_eq!(
19635        unsafe {
19636            &(*(::std::ptr::null::<_zend_extension>())).statement_handler as *const _ as usize
19637        },
19638        88usize,
19639        concat!(
19640            "Offset of field: ",
19641            stringify!(_zend_extension),
19642            "::",
19643            stringify!(statement_handler)
19644        )
19645    );
19646    assert_eq!(
19647        unsafe {
19648            &(*(::std::ptr::null::<_zend_extension>())).fcall_begin_handler as *const _ as usize
19649        },
19650        96usize,
19651        concat!(
19652            "Offset of field: ",
19653            stringify!(_zend_extension),
19654            "::",
19655            stringify!(fcall_begin_handler)
19656        )
19657    );
19658    assert_eq!(
19659        unsafe {
19660            &(*(::std::ptr::null::<_zend_extension>())).fcall_end_handler as *const _ as usize
19661        },
19662        104usize,
19663        concat!(
19664            "Offset of field: ",
19665            stringify!(_zend_extension),
19666            "::",
19667            stringify!(fcall_end_handler)
19668        )
19669    );
19670    assert_eq!(
19671        unsafe { &(*(::std::ptr::null::<_zend_extension>())).op_array_ctor as *const _ as usize },
19672        112usize,
19673        concat!(
19674            "Offset of field: ",
19675            stringify!(_zend_extension),
19676            "::",
19677            stringify!(op_array_ctor)
19678        )
19679    );
19680    assert_eq!(
19681        unsafe { &(*(::std::ptr::null::<_zend_extension>())).op_array_dtor as *const _ as usize },
19682        120usize,
19683        concat!(
19684            "Offset of field: ",
19685            stringify!(_zend_extension),
19686            "::",
19687            stringify!(op_array_dtor)
19688        )
19689    );
19690    assert_eq!(
19691        unsafe { &(*(::std::ptr::null::<_zend_extension>())).api_no_check as *const _ as usize },
19692        128usize,
19693        concat!(
19694            "Offset of field: ",
19695            stringify!(_zend_extension),
19696            "::",
19697            stringify!(api_no_check)
19698        )
19699    );
19700    assert_eq!(
19701        unsafe { &(*(::std::ptr::null::<_zend_extension>())).build_id_check as *const _ as usize },
19702        136usize,
19703        concat!(
19704            "Offset of field: ",
19705            stringify!(_zend_extension),
19706            "::",
19707            stringify!(build_id_check)
19708        )
19709    );
19710    assert_eq!(
19711        unsafe { &(*(::std::ptr::null::<_zend_extension>())).reserved3 as *const _ as usize },
19712        144usize,
19713        concat!(
19714            "Offset of field: ",
19715            stringify!(_zend_extension),
19716            "::",
19717            stringify!(reserved3)
19718        )
19719    );
19720    assert_eq!(
19721        unsafe { &(*(::std::ptr::null::<_zend_extension>())).reserved4 as *const _ as usize },
19722        152usize,
19723        concat!(
19724            "Offset of field: ",
19725            stringify!(_zend_extension),
19726            "::",
19727            stringify!(reserved4)
19728        )
19729    );
19730    assert_eq!(
19731        unsafe { &(*(::std::ptr::null::<_zend_extension>())).reserved5 as *const _ as usize },
19732        160usize,
19733        concat!(
19734            "Offset of field: ",
19735            stringify!(_zend_extension),
19736            "::",
19737            stringify!(reserved5)
19738        )
19739    );
19740    assert_eq!(
19741        unsafe { &(*(::std::ptr::null::<_zend_extension>())).reserved6 as *const _ as usize },
19742        168usize,
19743        concat!(
19744            "Offset of field: ",
19745            stringify!(_zend_extension),
19746            "::",
19747            stringify!(reserved6)
19748        )
19749    );
19750    assert_eq!(
19751        unsafe { &(*(::std::ptr::null::<_zend_extension>())).reserved7 as *const _ as usize },
19752        176usize,
19753        concat!(
19754            "Offset of field: ",
19755            stringify!(_zend_extension),
19756            "::",
19757            stringify!(reserved7)
19758        )
19759    );
19760    assert_eq!(
19761        unsafe { &(*(::std::ptr::null::<_zend_extension>())).reserved8 as *const _ as usize },
19762        184usize,
19763        concat!(
19764            "Offset of field: ",
19765            stringify!(_zend_extension),
19766            "::",
19767            stringify!(reserved8)
19768        )
19769    );
19770    assert_eq!(
19771        unsafe { &(*(::std::ptr::null::<_zend_extension>())).handle as *const _ as usize },
19772        192usize,
19773        concat!(
19774            "Offset of field: ",
19775            stringify!(_zend_extension),
19776            "::",
19777            stringify!(handle)
19778        )
19779    );
19780    assert_eq!(
19781        unsafe { &(*(::std::ptr::null::<_zend_extension>())).resource_number as *const _ as usize },
19782        200usize,
19783        concat!(
19784            "Offset of field: ",
19785            stringify!(_zend_extension),
19786            "::",
19787            stringify!(resource_number)
19788        )
19789    );
19790}
19791extern "C" {
19792    pub fn zend_get_resource_handle(extension: *mut zend_extension) -> ::std::os::raw::c_int;
19793}
19794extern "C" {
19795    pub fn zend_extension_dispatch_message(
19796        message: ::std::os::raw::c_int,
19797        arg: *mut ::std::os::raw::c_void,
19798    );
19799}
19800extern "C" {
19801    pub static mut zend_extensions: zend_llist;
19802}
19803extern "C" {
19804    pub fn zend_extension_dtor(extension: *mut zend_extension);
19805}
19806extern "C" {
19807    pub fn zend_append_version_info(extension: *const zend_extension);
19808}
19809extern "C" {
19810    pub fn zend_startup_extensions_mechanism() -> ::std::os::raw::c_int;
19811}
19812extern "C" {
19813    pub fn zend_startup_extensions() -> ::std::os::raw::c_int;
19814}
19815extern "C" {
19816    pub fn zend_shutdown_extensions(tsrm_ls: *mut *mut *mut ::std::os::raw::c_void);
19817}
19818extern "C" {
19819    pub fn zend_load_extension(path: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
19820}
19821extern "C" {
19822    pub fn zend_register_extension(
19823        new_extension: *mut zend_extension,
19824        handle: *mut ::std::os::raw::c_void,
19825    ) -> ::std::os::raw::c_int;
19826}
19827extern "C" {
19828    pub fn zend_get_extension(extension_name: *const ::std::os::raw::c_char)
19829        -> *mut zend_extension;
19830}
19831pub const ZEND_MODULE_BUILD_ID_: &'static [u8; 15usize] = b"API20131226,TS\0";
19832pub type __builtin_va_list = [__va_list_tag; 1usize];
19833#[repr(C)]
19834#[derive(Debug, Copy, Clone)]
19835pub struct __va_list_tag {
19836    pub gp_offset: ::std::os::raw::c_uint,
19837    pub fp_offset: ::std::os::raw::c_uint,
19838    pub overflow_arg_area: *mut ::std::os::raw::c_void,
19839    pub reg_save_area: *mut ::std::os::raw::c_void,
19840}
19841#[test]
19842fn bindgen_test_layout___va_list_tag() {
19843    assert_eq!(
19844        ::std::mem::size_of::<__va_list_tag>(),
19845        24usize,
19846        concat!("Size of: ", stringify!(__va_list_tag))
19847    );
19848    assert_eq!(
19849        ::std::mem::align_of::<__va_list_tag>(),
19850        8usize,
19851        concat!("Alignment of ", stringify!(__va_list_tag))
19852    );
19853    assert_eq!(
19854        unsafe { &(*(::std::ptr::null::<__va_list_tag>())).gp_offset as *const _ as usize },
19855        0usize,
19856        concat!(
19857            "Offset of field: ",
19858            stringify!(__va_list_tag),
19859            "::",
19860            stringify!(gp_offset)
19861        )
19862    );
19863    assert_eq!(
19864        unsafe { &(*(::std::ptr::null::<__va_list_tag>())).fp_offset as *const _ as usize },
19865        4usize,
19866        concat!(
19867            "Offset of field: ",
19868            stringify!(__va_list_tag),
19869            "::",
19870            stringify!(fp_offset)
19871        )
19872    );
19873    assert_eq!(
19874        unsafe { &(*(::std::ptr::null::<__va_list_tag>())).overflow_arg_area as *const _ as usize },
19875        8usize,
19876        concat!(
19877            "Offset of field: ",
19878            stringify!(__va_list_tag),
19879            "::",
19880            stringify!(overflow_arg_area)
19881        )
19882    );
19883    assert_eq!(
19884        unsafe { &(*(::std::ptr::null::<__va_list_tag>())).reg_save_area as *const _ as usize },
19885        16usize,
19886        concat!(
19887            "Offset of field: ",
19888            stringify!(__va_list_tag),
19889            "::",
19890            stringify!(reg_save_area)
19891        )
19892    );
19893}