php_all_sys/generated/
php72.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 = 20170718;
92pub const PHP_DEFAULT_CHARSET: &'static [u8; 6usize] = b"UTF-8\0";
93pub const PHP_BUILD_DATE: &'static [u8; 11usize] = b"2021-02-23\0";
94pub const PHP_CAN_SUPPORT_PROC_OPEN: u32 = 1;
95pub const PHP_HAVE_BUILTIN_CLZ: u32 = 1;
96pub const PHP_HAVE_BUILTIN_CTZL: u32 = 1;
97pub const PHP_HAVE_BUILTIN_CTZLL: u32 = 1;
98pub const PHP_HAVE_BUILTIN_EXPECT: u32 = 1;
99pub const PHP_HAVE_BUILTIN_SADDLL_OVERFLOW: u32 = 1;
100pub const PHP_HAVE_BUILTIN_SADDL_OVERFLOW: u32 = 1;
101pub const PHP_HAVE_BUILTIN_SMULLL_OVERFLOW: u32 = 1;
102pub const PHP_HAVE_BUILTIN_SMULL_OVERFLOW: u32 = 1;
103pub const PHP_HAVE_BUILTIN_SSUBLL_OVERFLOW: u32 = 1;
104pub const PHP_HAVE_BUILTIN_SSUBL_OVERFLOW: u32 = 1;
105pub const PHP_HAVE_STDINT_TYPES: u32 = 1;
106pub const PHP_MHASH_BC: u32 = 1;
107pub const PHP_OS: &'static [u8; 6usize] = b"Linux\0";
108pub const PHP_SIGCHILD: u32 = 0;
109pub const PHP_UNAME: &'static [u8; 6usize] = b"Linux\0";
110pub const PHP_USE_PHP_CRYPT_R: u32 = 1;
111pub const PHP_WRITE_STDOUT: u32 = 1;
112pub const ZEND_BROKEN_SPRINTF: u32 = 0;
113pub const ZEND_DEBUG: u32 = 0;
114pub const ZEND_MM_ALIGNMENT: u32 = 8;
115pub const ZEND_MM_ALIGNMENT_LOG2: u32 = 3;
116pub const ZEND_SIGNALS: u32 = 1;
117pub const PHP_MAJOR_VERSION: u32 = 7;
118pub const PHP_MINOR_VERSION: u32 = 2;
119pub const PHP_RELEASE_VERSION: u32 = 34;
120pub const PHP_EXTRA_VERSION: &'static [u8; 38usize] = b"-18+0~20210223.60+debian9~1.gbpb21322\0";
121pub const PHP_VERSION: &'static [u8; 44usize] = b"7.2.34-18+0~20210223.60+debian9~1.gbpb21322\0";
122pub const PHP_VERSION_ID: u32 = 70234;
123pub const ZEND_VERSION: &'static [u8; 6usize] = b"3.2.0\0";
124pub const ZEND_PATHS_SEPARATOR: u8 = 58u8;
125pub const ZEND_ENABLE_ZVAL_LONG64: u32 = 1;
126pub const ZEND_LTOA_BUF_LEN: u32 = 65;
127pub const ZEND_LONG_FMT: &'static [u8; 4usize] = b"%ld\0";
128pub const ZEND_ULONG_FMT: &'static [u8; 4usize] = b"%lu\0";
129pub const ZEND_XLONG_FMT: &'static [u8; 4usize] = b"%lx\0";
130pub const ZEND_LONG_FMT_SPEC: &'static [u8; 3usize] = b"ld\0";
131pub const ZEND_ULONG_FMT_SPEC: &'static [u8; 3usize] = b"lu\0";
132pub const ZEND_ADDR_FMT: &'static [u8; 9usize] = b"0x%016zx\0";
133pub const ZEND_LONG_CAN_OVFL_INT: u32 = 1;
134pub const ZEND_LONG_CAN_OVFL_UINT: u32 = 1;
135pub const ZEND_SIZE_T_CAN_OVFL_UINT: u32 = 1;
136pub const ZEND_EXTENSIONS_SUPPORT: u32 = 1;
137pub const ZEND_ALLOCA_MAX_SIZE: u32 = 32768;
138pub const ZEND_MAX_RESERVED_RESOURCES: u32 = 6;
139pub const ZEND_SIZE_MAX: i32 = -1;
140pub const IS_UNDEF: u32 = 0;
141pub const IS_NULL: u32 = 1;
142pub const IS_FALSE: u32 = 2;
143pub const IS_TRUE: u32 = 3;
144pub const IS_LONG: u32 = 4;
145pub const IS_DOUBLE: u32 = 5;
146pub const IS_STRING: u32 = 6;
147pub const IS_ARRAY: u32 = 7;
148pub const IS_OBJECT: u32 = 8;
149pub const IS_RESOURCE: u32 = 9;
150pub const IS_REFERENCE: u32 = 10;
151pub const IS_CONSTANT: u32 = 11;
152pub const IS_CONSTANT_AST: u32 = 12;
153pub const _IS_BOOL: u32 = 13;
154pub const IS_CALLABLE: u32 = 14;
155pub const IS_ITERABLE: u32 = 19;
156pub const IS_VOID: u32 = 18;
157pub const IS_INDIRECT: u32 = 15;
158pub const IS_PTR: u32 = 17;
159pub const _IS_ERROR: u32 = 20;
160pub const Z_TYPE_MASK: u32 = 255;
161pub const Z_TYPE_FLAGS_SHIFT: u32 = 8;
162pub const Z_CONST_FLAGS_SHIFT: u32 = 16;
163pub const GC_FLAGS_SHIFT: u32 = 8;
164pub const GC_INFO_SHIFT: u32 = 16;
165pub const GC_INFO_MASK: u32 = 4294901760;
166pub const GC_COLLECTABLE: u32 = 128;
167pub const GC_ARRAY: u32 = 32775;
168pub const GC_OBJECT: u32 = 32776;
169pub const IS_TYPE_CONSTANT: u32 = 1;
170pub const IS_TYPE_REFCOUNTED: u32 = 4;
171pub const IS_TYPE_COPYABLE: u32 = 16;
172pub const IS_INTERNED_STRING_EX: u32 = 6;
173pub const IS_STRING_EX: u32 = 5126;
174pub const IS_ARRAY_EX: u32 = 5127;
175pub const IS_OBJECT_EX: u32 = 1032;
176pub const IS_RESOURCE_EX: u32 = 1033;
177pub const IS_REFERENCE_EX: u32 = 1034;
178pub const IS_CONSTANT_EX: u32 = 5387;
179pub const IS_CONSTANT_AST_EX: u32 = 5388;
180pub const IS_CONSTANT_UNQUALIFIED: u32 = 16;
181pub const IS_CONSTANT_VISITED_MARK: u32 = 32;
182pub const IS_CONSTANT_CLASS: u32 = 128;
183pub const IS_CONSTANT_IN_NAMESPACE: u32 = 256;
184pub const IS_STR_PERSISTENT: u32 = 1;
185pub const IS_STR_INTERNED: u32 = 2;
186pub const IS_STR_PERMANENT: u32 = 4;
187pub const IS_STR_CONSTANT: u32 = 8;
188pub const IS_STR_CONSTANT_UNQUALIFIED: u32 = 16;
189pub const IS_ARRAY_IMMUTABLE: u32 = 2;
190pub const IS_OBJ_APPLY_COUNT: u32 = 7;
191pub const IS_OBJ_DESTRUCTOR_CALLED: u32 = 8;
192pub const IS_OBJ_FREE_CALLED: u32 = 16;
193pub const IS_OBJ_USE_GUARDS: u32 = 32;
194pub const IS_OBJ_HAS_GUARDS: u32 = 64;
195pub const ZEND_MM_OVERHEAD: u32 = 0;
196pub const ZEND_MM_CHUNK_SIZE: u32 = 2097152;
197pub const ZEND_MM_PAGE_SIZE: u32 = 4096;
198pub const ZEND_MM_PAGES: u32 = 512;
199pub const ZEND_MM_FIRST_PAGE: u32 = 1;
200pub const ZEND_MM_MIN_SMALL_SIZE: u32 = 8;
201pub const ZEND_MM_MAX_SMALL_SIZE: u32 = 3072;
202pub const ZEND_MM_MAX_LARGE_SIZE: u32 = 2093056;
203pub const ZEND_MM_CUSTOM_HEAP_NONE: u32 = 0;
204pub const ZEND_MM_CUSTOM_HEAP_STD: u32 = 1;
205pub const ZEND_MM_CUSTOM_HEAP_DEBUG: u32 = 2;
206pub const HASH_KEY_IS_STRING: u32 = 1;
207pub const HASH_KEY_IS_LONG: u32 = 2;
208pub const HASH_KEY_NON_EXISTENT: u32 = 3;
209pub const HASH_UPDATE: u32 = 1;
210pub const HASH_ADD: u32 = 2;
211pub const HASH_UPDATE_INDIRECT: u32 = 4;
212pub const HASH_ADD_NEW: u32 = 8;
213pub const HASH_ADD_NEXT: u32 = 16;
214pub const HASH_FLAG_PERSISTENT: u32 = 1;
215pub const HASH_FLAG_APPLY_PROTECTION: u32 = 2;
216pub const HASH_FLAG_PACKED: u32 = 4;
217pub const HASH_FLAG_INITIALIZED: u32 = 8;
218pub const HASH_FLAG_STATIC_KEYS: u32 = 16;
219pub const HASH_FLAG_HAS_EMPTY_IND: u32 = 32;
220pub const HASH_FLAG_ALLOW_COW_VIOLATION: u32 = 64;
221pub const ZEND_HASH_APPLY_KEEP: u32 = 0;
222pub const ZEND_HASH_APPLY_REMOVE: u32 = 1;
223pub const ZEND_HASH_APPLY_STOP: u32 = 2;
224pub const ZEND_HASH_APPLY_SHIFT: u32 = 8;
225pub const ZEND_HASH_APPLY_COUNT_MASK: u32 = 65280;
226pub const ZEND_AST_SPECIAL_SHIFT: u32 = 6;
227pub const ZEND_AST_IS_LIST_SHIFT: u32 = 7;
228pub const ZEND_AST_NUM_CHILDREN_SHIFT: u32 = 8;
229pub const GC_BENCH: u32 = 0;
230pub const GC_COLOR: u32 = 49152;
231pub const GC_BLACK: u32 = 0;
232pub const GC_WHITE: u32 = 32768;
233pub const GC_GREY: u32 = 16384;
234pub const GC_PURPLE: u32 = 49152;
235pub const ZEND_MMAP_AHEAD: u32 = 32;
236pub const ZEND_SIGNAL_QUEUE_SIZE: u32 = 64;
237pub const DEBUG_BACKTRACE_PROVIDE_OBJECT: u32 = 1;
238pub const DEBUG_BACKTRACE_IGNORE_ARGS: u32 = 2;
239pub const ZEND_USE_ABS_JMP_ADDR: u32 = 0;
240pub const ZEND_USE_ABS_CONST_ADDR: u32 = 0;
241pub const ZEND_EX_USE_LITERALS: u32 = 1;
242pub const ZEND_EX_USE_RUN_TIME_CACHE: u32 = 1;
243pub const ZEND_LIVE_TMPVAR: u32 = 0;
244pub const ZEND_LIVE_LOOP: u32 = 1;
245pub const ZEND_LIVE_SILENCE: u32 = 2;
246pub const ZEND_LIVE_ROPE: u32 = 3;
247pub const ZEND_LIVE_MASK: u32 = 3;
248pub const ZEND_ACC_STATIC: u32 = 1;
249pub const ZEND_ACC_ABSTRACT: u32 = 2;
250pub const ZEND_ACC_FINAL: u32 = 4;
251pub const ZEND_ACC_IMPLEMENTED_ABSTRACT: u32 = 8;
252pub const ZEND_ACC_PUBLIC: u32 = 256;
253pub const ZEND_ACC_PROTECTED: u32 = 512;
254pub const ZEND_ACC_PRIVATE: u32 = 1024;
255pub const ZEND_ACC_PPP_MASK: u32 = 1792;
256pub const ZEND_ACC_CHANGED: u32 = 2048;
257pub const ZEND_ACC_IMPLICIT_PUBLIC: u32 = 4096;
258pub const ZEND_ACC_CTOR: u32 = 8192;
259pub const ZEND_ACC_DTOR: u32 = 16384;
260pub const ZEND_ACC_USER_ARG_INFO: u32 = 128;
261pub const ZEND_ACC_ALLOW_STATIC: u32 = 65536;
262pub const ZEND_ACC_SHADOW: u32 = 131072;
263pub const ZEND_ACC_DEPRECATED: u32 = 262144;
264pub const ZEND_ACC_CLOSURE: u32 = 1048576;
265pub const ZEND_ACC_FAKE_CLOSURE: u32 = 64;
266pub const ZEND_ACC_GENERATOR: u32 = 8388608;
267pub const ZEND_ACC_NO_RT_ARENA: u32 = 524288;
268pub const ZEND_ACC_CALL_VIA_TRAMPOLINE: u32 = 2097152;
269pub const ZEND_ACC_CALL_VIA_HANDLER: u32 = 2097152;
270pub const ZEND_ACC_NEVER_CACHE: u32 = 4194304;
271pub const ZEND_ACC_VARIADIC: u32 = 16777216;
272pub const ZEND_ACC_RETURN_REFERENCE: u32 = 67108864;
273pub const ZEND_ACC_DONE_PASS_TWO: u32 = 134217728;
274pub const ZEND_ACC_USE_GUARDS: u32 = 16777216;
275pub const ZEND_ACC_HAS_TYPE_HINTS: u32 = 268435456;
276pub const ZEND_ACC_HAS_FINALLY_BLOCK: u32 = 536870912;
277pub const ZEND_ACC_ARENA_ALLOCATED: u32 = 536870912;
278pub const ZEND_ACC_HAS_RETURN_TYPE: u32 = 1073741824;
279pub const ZEND_ACC_STRICT_TYPES: u32 = 2147483648;
280pub const ZEND_ACC_IMPLICIT_ABSTRACT_CLASS: u32 = 16;
281pub const ZEND_ACC_EXPLICIT_ABSTRACT_CLASS: u32 = 32;
282pub const ZEND_ACC_INTERFACE: u32 = 64;
283pub const ZEND_ACC_TRAIT: u32 = 128;
284pub const ZEND_ACC_ANON_CLASS: u32 = 256;
285pub const ZEND_ACC_ANON_BOUND: u32 = 512;
286pub const ZEND_ACC_INHERITED: u32 = 1024;
287pub const ZEND_ACC_IMPLEMENT_INTERFACES: u32 = 524288;
288pub const ZEND_ACC_IMPLEMENT_TRAITS: u32 = 4194304;
289pub const ZEND_ACC_CONSTANTS_UPDATED: u32 = 1048576;
290pub const ZEND_HAS_STATIC_IN_METHODS: u32 = 8388608;
291pub const ZEND_RETURN_VALUE: u32 = 0;
292pub const ZEND_RETURN_REFERENCE: u32 = 1;
293pub const ZEND_CALL_FUNCTION: u32 = 0;
294pub const ZEND_CALL_CODE: u32 = 1;
295pub const ZEND_CALL_NESTED: u32 = 0;
296pub const ZEND_CALL_TOP: u32 = 2;
297pub const ZEND_CALL_FREE_EXTRA_ARGS: u32 = 4;
298pub const ZEND_CALL_CTOR: u32 = 8;
299pub const ZEND_CALL_HAS_SYMBOL_TABLE: u32 = 16;
300pub const ZEND_CALL_CLOSURE: u32 = 32;
301pub const ZEND_CALL_RELEASE_THIS: u32 = 64;
302pub const ZEND_CALL_ALLOCATED: u32 = 128;
303pub const ZEND_CALL_GENERATOR: u32 = 256;
304pub const ZEND_CALL_DYNAMIC: u32 = 512;
305pub const ZEND_CALL_FAKE_CLOSURE: u32 = 1024;
306pub const ZEND_CALL_INFO_SHIFT: u32 = 16;
307pub const IS_CONST: u32 = 1;
308pub const IS_TMP_VAR: u32 = 2;
309pub const IS_VAR: u32 = 4;
310pub const IS_UNUSED: u32 = 8;
311pub const IS_CV: u32 = 16;
312pub const ZEND_STACK_APPLY_TOPDOWN: u32 = 1;
313pub const ZEND_STACK_APPLY_BOTTOMUP: u32 = 2;
314pub const ZEND_PTR_STACK_NUM_ARGS: u32 = 3;
315pub const ZEND_ARENA_ALIGNMENT: u32 = 8;
316pub const ZEND_EARLY_BINDING_COMPILE_TIME: u32 = 0;
317pub const ZEND_EARLY_BINDING_DELAYED: u32 = 1;
318pub const ZEND_EARLY_BINDING_DELAYED_ALL: u32 = 2;
319pub const ZEND_VM_SPEC: u32 = 1;
320pub const ZEND_VM_LINES: u32 = 0;
321pub const ZEND_VM_KIND_CALL: u32 = 1;
322pub const ZEND_VM_KIND_SWITCH: u32 = 2;
323pub const ZEND_VM_KIND_GOTO: u32 = 3;
324pub const ZEND_VM_KIND_HYBRID: u32 = 4;
325pub const ZEND_VM_KIND: u32 = 4;
326pub const ZEND_VM_OP_SPEC: u32 = 1;
327pub const ZEND_VM_OP_CONST: u32 = 2;
328pub const ZEND_VM_OP_TMPVAR: u32 = 4;
329pub const ZEND_VM_OP_TMPVARCV: u32 = 8;
330pub const ZEND_VM_OP_MASK: u32 = 240;
331pub const ZEND_VM_OP_NUM: u32 = 16;
332pub const ZEND_VM_OP_JMP_ADDR: u32 = 32;
333pub const ZEND_VM_OP_TRY_CATCH: u32 = 48;
334pub const ZEND_VM_OP_LIVE_RANGE: u32 = 64;
335pub const ZEND_VM_OP_THIS: u32 = 80;
336pub const ZEND_VM_OP_NEXT: u32 = 96;
337pub const ZEND_VM_OP_CLASS_FETCH: u32 = 112;
338pub const ZEND_VM_OP_CONSTRUCTOR: u32 = 128;
339pub const ZEND_VM_EXT_VAR_FETCH: u32 = 65536;
340pub const ZEND_VM_EXT_ISSET: u32 = 131072;
341pub const ZEND_VM_EXT_ARG_NUM: u32 = 262144;
342pub const ZEND_VM_EXT_ARRAY_INIT: u32 = 524288;
343pub const ZEND_VM_EXT_REF: u32 = 1048576;
344pub const ZEND_VM_EXT_MASK: u32 = 251658240;
345pub const ZEND_VM_EXT_NUM: u32 = 16777216;
346pub const ZEND_VM_EXT_JMP_ADDR: u32 = 50331648;
347pub const ZEND_VM_EXT_DIM_OBJ: u32 = 67108864;
348pub const ZEND_VM_EXT_CLASS_FETCH: u32 = 83886080;
349pub const ZEND_VM_EXT_CONST_FETCH: u32 = 100663296;
350pub const ZEND_VM_EXT_TYPE: u32 = 117440512;
351pub const ZEND_VM_EXT_EVAL: u32 = 134217728;
352pub const ZEND_VM_EXT_SRC: u32 = 184549376;
353pub const ZEND_VM_NO_CONST_CONST: u32 = 1073741824;
354pub const ZEND_VM_COMMUTATIVE: u32 = 2147483648;
355pub const ZEND_NOP: u32 = 0;
356pub const ZEND_ADD: u32 = 1;
357pub const ZEND_SUB: u32 = 2;
358pub const ZEND_MUL: u32 = 3;
359pub const ZEND_DIV: u32 = 4;
360pub const ZEND_MOD: u32 = 5;
361pub const ZEND_SL: u32 = 6;
362pub const ZEND_SR: u32 = 7;
363pub const ZEND_CONCAT: u32 = 8;
364pub const ZEND_BW_OR: u32 = 9;
365pub const ZEND_BW_AND: u32 = 10;
366pub const ZEND_BW_XOR: u32 = 11;
367pub const ZEND_BW_NOT: u32 = 12;
368pub const ZEND_BOOL_NOT: u32 = 13;
369pub const ZEND_BOOL_XOR: u32 = 14;
370pub const ZEND_IS_IDENTICAL: u32 = 15;
371pub const ZEND_IS_NOT_IDENTICAL: u32 = 16;
372pub const ZEND_IS_EQUAL: u32 = 17;
373pub const ZEND_IS_NOT_EQUAL: u32 = 18;
374pub const ZEND_IS_SMALLER: u32 = 19;
375pub const ZEND_IS_SMALLER_OR_EQUAL: u32 = 20;
376pub const ZEND_CAST: u32 = 21;
377pub const ZEND_QM_ASSIGN: u32 = 22;
378pub const ZEND_ASSIGN_ADD: u32 = 23;
379pub const ZEND_ASSIGN_SUB: u32 = 24;
380pub const ZEND_ASSIGN_MUL: u32 = 25;
381pub const ZEND_ASSIGN_DIV: u32 = 26;
382pub const ZEND_ASSIGN_MOD: u32 = 27;
383pub const ZEND_ASSIGN_SL: u32 = 28;
384pub const ZEND_ASSIGN_SR: u32 = 29;
385pub const ZEND_ASSIGN_CONCAT: u32 = 30;
386pub const ZEND_ASSIGN_BW_OR: u32 = 31;
387pub const ZEND_ASSIGN_BW_AND: u32 = 32;
388pub const ZEND_ASSIGN_BW_XOR: u32 = 33;
389pub const ZEND_PRE_INC: u32 = 34;
390pub const ZEND_PRE_DEC: u32 = 35;
391pub const ZEND_POST_INC: u32 = 36;
392pub const ZEND_POST_DEC: u32 = 37;
393pub const ZEND_ASSIGN: u32 = 38;
394pub const ZEND_ASSIGN_REF: u32 = 39;
395pub const ZEND_ECHO: u32 = 40;
396pub const ZEND_GENERATOR_CREATE: u32 = 41;
397pub const ZEND_JMP: u32 = 42;
398pub const ZEND_JMPZ: u32 = 43;
399pub const ZEND_JMPNZ: u32 = 44;
400pub const ZEND_JMPZNZ: u32 = 45;
401pub const ZEND_JMPZ_EX: u32 = 46;
402pub const ZEND_JMPNZ_EX: u32 = 47;
403pub const ZEND_CASE: u32 = 48;
404pub const ZEND_CHECK_VAR: u32 = 49;
405pub const ZEND_SEND_VAR_NO_REF_EX: u32 = 50;
406pub const ZEND_MAKE_REF: u32 = 51;
407pub const ZEND_BOOL: u32 = 52;
408pub const ZEND_FAST_CONCAT: u32 = 53;
409pub const ZEND_ROPE_INIT: u32 = 54;
410pub const ZEND_ROPE_ADD: u32 = 55;
411pub const ZEND_ROPE_END: u32 = 56;
412pub const ZEND_BEGIN_SILENCE: u32 = 57;
413pub const ZEND_END_SILENCE: u32 = 58;
414pub const ZEND_INIT_FCALL_BY_NAME: u32 = 59;
415pub const ZEND_DO_FCALL: u32 = 60;
416pub const ZEND_INIT_FCALL: u32 = 61;
417pub const ZEND_RETURN: u32 = 62;
418pub const ZEND_RECV: u32 = 63;
419pub const ZEND_RECV_INIT: u32 = 64;
420pub const ZEND_SEND_VAL: u32 = 65;
421pub const ZEND_SEND_VAR_EX: u32 = 66;
422pub const ZEND_SEND_REF: u32 = 67;
423pub const ZEND_NEW: u32 = 68;
424pub const ZEND_INIT_NS_FCALL_BY_NAME: u32 = 69;
425pub const ZEND_FREE: u32 = 70;
426pub const ZEND_INIT_ARRAY: u32 = 71;
427pub const ZEND_ADD_ARRAY_ELEMENT: u32 = 72;
428pub const ZEND_INCLUDE_OR_EVAL: u32 = 73;
429pub const ZEND_UNSET_VAR: u32 = 74;
430pub const ZEND_UNSET_DIM: u32 = 75;
431pub const ZEND_UNSET_OBJ: u32 = 76;
432pub const ZEND_FE_RESET_R: u32 = 77;
433pub const ZEND_FE_FETCH_R: u32 = 78;
434pub const ZEND_EXIT: u32 = 79;
435pub const ZEND_FETCH_R: u32 = 80;
436pub const ZEND_FETCH_DIM_R: u32 = 81;
437pub const ZEND_FETCH_OBJ_R: u32 = 82;
438pub const ZEND_FETCH_W: u32 = 83;
439pub const ZEND_FETCH_DIM_W: u32 = 84;
440pub const ZEND_FETCH_OBJ_W: u32 = 85;
441pub const ZEND_FETCH_RW: u32 = 86;
442pub const ZEND_FETCH_DIM_RW: u32 = 87;
443pub const ZEND_FETCH_OBJ_RW: u32 = 88;
444pub const ZEND_FETCH_IS: u32 = 89;
445pub const ZEND_FETCH_DIM_IS: u32 = 90;
446pub const ZEND_FETCH_OBJ_IS: u32 = 91;
447pub const ZEND_FETCH_FUNC_ARG: u32 = 92;
448pub const ZEND_FETCH_DIM_FUNC_ARG: u32 = 93;
449pub const ZEND_FETCH_OBJ_FUNC_ARG: u32 = 94;
450pub const ZEND_FETCH_UNSET: u32 = 95;
451pub const ZEND_FETCH_DIM_UNSET: u32 = 96;
452pub const ZEND_FETCH_OBJ_UNSET: u32 = 97;
453pub const ZEND_FETCH_LIST: u32 = 98;
454pub const ZEND_FETCH_CONSTANT: u32 = 99;
455pub const ZEND_EXT_STMT: u32 = 101;
456pub const ZEND_EXT_FCALL_BEGIN: u32 = 102;
457pub const ZEND_EXT_FCALL_END: u32 = 103;
458pub const ZEND_EXT_NOP: u32 = 104;
459pub const ZEND_TICKS: u32 = 105;
460pub const ZEND_SEND_VAR_NO_REF: u32 = 106;
461pub const ZEND_CATCH: u32 = 107;
462pub const ZEND_THROW: u32 = 108;
463pub const ZEND_FETCH_CLASS: u32 = 109;
464pub const ZEND_CLONE: u32 = 110;
465pub const ZEND_RETURN_BY_REF: u32 = 111;
466pub const ZEND_INIT_METHOD_CALL: u32 = 112;
467pub const ZEND_INIT_STATIC_METHOD_CALL: u32 = 113;
468pub const ZEND_ISSET_ISEMPTY_VAR: u32 = 114;
469pub const ZEND_ISSET_ISEMPTY_DIM_OBJ: u32 = 115;
470pub const ZEND_SEND_VAL_EX: u32 = 116;
471pub const ZEND_SEND_VAR: u32 = 117;
472pub const ZEND_INIT_USER_CALL: u32 = 118;
473pub const ZEND_SEND_ARRAY: u32 = 119;
474pub const ZEND_SEND_USER: u32 = 120;
475pub const ZEND_STRLEN: u32 = 121;
476pub const ZEND_DEFINED: u32 = 122;
477pub const ZEND_TYPE_CHECK: u32 = 123;
478pub const ZEND_VERIFY_RETURN_TYPE: u32 = 124;
479pub const ZEND_FE_RESET_RW: u32 = 125;
480pub const ZEND_FE_FETCH_RW: u32 = 126;
481pub const ZEND_FE_FREE: u32 = 127;
482pub const ZEND_INIT_DYNAMIC_CALL: u32 = 128;
483pub const ZEND_DO_ICALL: u32 = 129;
484pub const ZEND_DO_UCALL: u32 = 130;
485pub const ZEND_DO_FCALL_BY_NAME: u32 = 131;
486pub const ZEND_PRE_INC_OBJ: u32 = 132;
487pub const ZEND_PRE_DEC_OBJ: u32 = 133;
488pub const ZEND_POST_INC_OBJ: u32 = 134;
489pub const ZEND_POST_DEC_OBJ: u32 = 135;
490pub const ZEND_ASSIGN_OBJ: u32 = 136;
491pub const ZEND_OP_DATA: u32 = 137;
492pub const ZEND_INSTANCEOF: u32 = 138;
493pub const ZEND_DECLARE_CLASS: u32 = 139;
494pub const ZEND_DECLARE_INHERITED_CLASS: u32 = 140;
495pub const ZEND_DECLARE_FUNCTION: u32 = 141;
496pub const ZEND_YIELD_FROM: u32 = 142;
497pub const ZEND_DECLARE_CONST: u32 = 143;
498pub const ZEND_ADD_INTERFACE: u32 = 144;
499pub const ZEND_DECLARE_INHERITED_CLASS_DELAYED: u32 = 145;
500pub const ZEND_VERIFY_ABSTRACT_CLASS: u32 = 146;
501pub const ZEND_ASSIGN_DIM: u32 = 147;
502pub const ZEND_ISSET_ISEMPTY_PROP_OBJ: u32 = 148;
503pub const ZEND_HANDLE_EXCEPTION: u32 = 149;
504pub const ZEND_USER_OPCODE: u32 = 150;
505pub const ZEND_ASSERT_CHECK: u32 = 151;
506pub const ZEND_JMP_SET: u32 = 152;
507pub const ZEND_DECLARE_LAMBDA_FUNCTION: u32 = 153;
508pub const ZEND_ADD_TRAIT: u32 = 154;
509pub const ZEND_BIND_TRAITS: u32 = 155;
510pub const ZEND_SEPARATE: u32 = 156;
511pub const ZEND_FETCH_CLASS_NAME: u32 = 157;
512pub const ZEND_CALL_TRAMPOLINE: u32 = 158;
513pub const ZEND_DISCARD_EXCEPTION: u32 = 159;
514pub const ZEND_YIELD: u32 = 160;
515pub const ZEND_GENERATOR_RETURN: u32 = 161;
516pub const ZEND_FAST_CALL: u32 = 162;
517pub const ZEND_FAST_RET: u32 = 163;
518pub const ZEND_RECV_VARIADIC: u32 = 164;
519pub const ZEND_SEND_UNPACK: u32 = 165;
520pub const ZEND_POW: u32 = 166;
521pub const ZEND_ASSIGN_POW: u32 = 167;
522pub const ZEND_BIND_GLOBAL: u32 = 168;
523pub const ZEND_COALESCE: u32 = 169;
524pub const ZEND_SPACESHIP: u32 = 170;
525pub const ZEND_DECLARE_ANON_CLASS: u32 = 171;
526pub const ZEND_DECLARE_ANON_INHERITED_CLASS: u32 = 172;
527pub const ZEND_FETCH_STATIC_PROP_R: u32 = 173;
528pub const ZEND_FETCH_STATIC_PROP_W: u32 = 174;
529pub const ZEND_FETCH_STATIC_PROP_RW: u32 = 175;
530pub const ZEND_FETCH_STATIC_PROP_IS: u32 = 176;
531pub const ZEND_FETCH_STATIC_PROP_FUNC_ARG: u32 = 177;
532pub const ZEND_FETCH_STATIC_PROP_UNSET: u32 = 178;
533pub const ZEND_UNSET_STATIC_PROP: u32 = 179;
534pub const ZEND_ISSET_ISEMPTY_STATIC_PROP: u32 = 180;
535pub const ZEND_FETCH_CLASS_CONSTANT: u32 = 181;
536pub const ZEND_BIND_LEXICAL: u32 = 182;
537pub const ZEND_BIND_STATIC: u32 = 183;
538pub const ZEND_FETCH_THIS: u32 = 184;
539pub const ZEND_ISSET_ISEMPTY_THIS: u32 = 186;
540pub const ZEND_SWITCH_LONG: u32 = 187;
541pub const ZEND_SWITCH_STRING: u32 = 188;
542pub const ZEND_IN_ARRAY: u32 = 189;
543pub const ZEND_COUNT: u32 = 190;
544pub const ZEND_GET_CLASS: u32 = 191;
545pub const ZEND_GET_CALLED_CLASS: u32 = 192;
546pub const ZEND_GET_TYPE: u32 = 193;
547pub const ZEND_FUNC_NUM_ARGS: u32 = 194;
548pub const ZEND_FUNC_GET_ARGS: u32 = 195;
549pub const ZEND_UNSET_CV: u32 = 196;
550pub const ZEND_ISSET_ISEMPTY_CV: u32 = 197;
551pub const ZEND_VM_LAST_OPCODE: u32 = 197;
552pub const ZEND_FETCH_CLASS_DEFAULT: u32 = 0;
553pub const ZEND_FETCH_CLASS_SELF: u32 = 1;
554pub const ZEND_FETCH_CLASS_PARENT: u32 = 2;
555pub const ZEND_FETCH_CLASS_STATIC: u32 = 3;
556pub const ZEND_FETCH_CLASS_AUTO: u32 = 4;
557pub const ZEND_FETCH_CLASS_INTERFACE: u32 = 5;
558pub const ZEND_FETCH_CLASS_TRAIT: u32 = 6;
559pub const ZEND_FETCH_CLASS_MASK: u32 = 15;
560pub const ZEND_FETCH_CLASS_NO_AUTOLOAD: u32 = 128;
561pub const ZEND_FETCH_CLASS_SILENT: u32 = 256;
562pub const ZEND_FETCH_CLASS_EXCEPTION: u32 = 512;
563pub const ZEND_PARAM_REF: u32 = 1;
564pub const ZEND_PARAM_VARIADIC: u32 = 2;
565pub const ZEND_NAME_FQ: u32 = 0;
566pub const ZEND_NAME_NOT_FQ: u32 = 1;
567pub const ZEND_NAME_RELATIVE: u32 = 2;
568pub const ZEND_TYPE_NULLABLE: u32 = 256;
569pub const ZEND_ARRAY_SYNTAX_LIST: u32 = 1;
570pub const ZEND_ARRAY_SYNTAX_LONG: u32 = 2;
571pub const ZEND_ARRAY_SYNTAX_SHORT: u32 = 3;
572pub const ZEND_INTERNAL_FUNCTION: u32 = 1;
573pub const ZEND_USER_FUNCTION: u32 = 2;
574pub const ZEND_OVERLOADED_FUNCTION: u32 = 3;
575pub const ZEND_EVAL_CODE: u32 = 4;
576pub const ZEND_OVERLOADED_FUNCTION_TEMPORARY: u32 = 5;
577pub const ZEND_INTERNAL_CLASS: u32 = 1;
578pub const ZEND_USER_CLASS: u32 = 2;
579pub const ZEND_EVAL: u32 = 1;
580pub const ZEND_INCLUDE: u32 = 2;
581pub const ZEND_INCLUDE_ONCE: u32 = 4;
582pub const ZEND_REQUIRE: u32 = 8;
583pub const ZEND_REQUIRE_ONCE: u32 = 16;
584pub const ZEND_CT: u32 = 1;
585pub const ZEND_RT: u32 = 2;
586pub const ZEND_FETCH_GLOBAL: u32 = 0;
587pub const ZEND_FETCH_LOCAL: u32 = 268435456;
588pub const ZEND_FETCH_GLOBAL_LOCK: u32 = 1073741824;
589pub const ZEND_FETCH_TYPE_MASK: u32 = 1879048192;
590pub const ZEND_FETCH_STANDARD: u32 = 0;
591pub const ZEND_ISSET: u32 = 33554432;
592pub const ZEND_ISEMPTY: u32 = 16777216;
593pub const ZEND_ISSET_ISEMPTY_MASK: u32 = 50331648;
594pub const ZEND_FETCH_ARG_MASK: u32 = 1048575;
595pub const ZEND_FREE_ON_RETURN: u32 = 1;
596pub const ZEND_SEND_BY_VAL: u32 = 0;
597pub const ZEND_SEND_BY_REF: u32 = 1;
598pub const ZEND_SEND_PREFER_REF: u32 = 2;
599pub const ZEND_DIM_IS: u32 = 1;
600pub const ZEND_RETURN_VAL: u32 = 0;
601pub const ZEND_RETURN_REF: u32 = 1;
602pub const ZEND_RETURNS_FUNCTION: u32 = 1;
603pub const ZEND_RETURNS_VALUE: u32 = 2;
604pub const ZEND_ARRAY_ELEMENT_REF: u32 = 1;
605pub const ZEND_ARRAY_NOT_PACKED: u32 = 2;
606pub const ZEND_ARRAY_SIZE_SHIFT: u32 = 2;
607pub const ZEND_SYMBOL_CLASS: u32 = 1;
608pub const ZEND_SYMBOL_FUNCTION: u32 = 2;
609pub const ZEND_SYMBOL_CONST: u32 = 4;
610pub const ZEND_GOTO: u32 = 253;
611pub const ZEND_BRK: u32 = 254;
612pub const ZEND_CONT: u32 = 255;
613pub const ZEND_CLONE_FUNC_NAME: &'static [u8; 8usize] = b"__clone\0";
614pub const ZEND_CONSTRUCTOR_FUNC_NAME: &'static [u8; 12usize] = b"__construct\0";
615pub const ZEND_DESTRUCTOR_FUNC_NAME: &'static [u8; 11usize] = b"__destruct\0";
616pub const ZEND_GET_FUNC_NAME: &'static [u8; 6usize] = b"__get\0";
617pub const ZEND_SET_FUNC_NAME: &'static [u8; 6usize] = b"__set\0";
618pub const ZEND_UNSET_FUNC_NAME: &'static [u8; 8usize] = b"__unset\0";
619pub const ZEND_ISSET_FUNC_NAME: &'static [u8; 8usize] = b"__isset\0";
620pub const ZEND_CALL_FUNC_NAME: &'static [u8; 7usize] = b"__call\0";
621pub const ZEND_CALLSTATIC_FUNC_NAME: &'static [u8; 13usize] = b"__callstatic\0";
622pub const ZEND_TOSTRING_FUNC_NAME: &'static [u8; 11usize] = b"__tostring\0";
623pub const ZEND_AUTOLOAD_FUNC_NAME: &'static [u8; 11usize] = b"__autoload\0";
624pub const ZEND_INVOKE_FUNC_NAME: &'static [u8; 9usize] = b"__invoke\0";
625pub const ZEND_DEBUGINFO_FUNC_NAME: &'static [u8; 12usize] = b"__debuginfo\0";
626pub const ZEND_COMPILE_EXTENDED_INFO: u32 = 1;
627pub const ZEND_COMPILE_HANDLE_OP_ARRAY: u32 = 2;
628pub const ZEND_COMPILE_IGNORE_INTERNAL_FUNCTIONS: u32 = 4;
629pub const ZEND_COMPILE_IGNORE_INTERNAL_CLASSES: u32 = 8;
630pub const ZEND_COMPILE_DELAYED_BINDING: u32 = 16;
631pub const ZEND_COMPILE_NO_CONSTANT_SUBSTITUTION: u32 = 32;
632pub const ZEND_COMPILE_NO_BUILTIN_STRLEN: u32 = 64;
633pub const ZEND_COMPILE_NO_PERSISTENT_CONSTANT_SUBSTITUTION: u32 = 128;
634pub const ZEND_COMPILE_IGNORE_USER_FUNCTIONS: u32 = 256;
635pub const ZEND_COMPILE_GUARDS: u32 = 512;
636pub const ZEND_COMPILE_NO_BUILTINS: u32 = 1024;
637pub const ZEND_COMPILE_NO_JUMPTABLES: u32 = 2048;
638pub const ZEND_COMPILE_DEFAULT: u32 = 2;
639pub const ZEND_COMPILE_DEFAULT_FOR_EVAL: u32 = 0;
640pub const ZEND_BUILD_TS: &'static [u8; 5usize] = b",NTS\0";
641pub const ZEND_MODULE_API_NO: u32 = 20170718;
642pub const USING_ZTS: u32 = 0;
643pub const MODULE_PERSISTENT: u32 = 1;
644pub const MODULE_TEMPORARY: u32 = 2;
645pub const MODULE_DEP_REQUIRED: u32 = 1;
646pub const MODULE_DEP_CONFLICTS: u32 = 2;
647pub const MODULE_DEP_OPTIONAL: u32 = 3;
648pub const ZEND_USER_OPCODE_CONTINUE: u32 = 0;
649pub const ZEND_USER_OPCODE_RETURN: u32 = 1;
650pub const ZEND_USER_OPCODE_DISPATCH: u32 = 2;
651pub const ZEND_USER_OPCODE_ENTER: u32 = 3;
652pub const ZEND_USER_OPCODE_LEAVE: u32 = 4;
653pub const ZEND_USER_OPCODE_DISPATCH_TO: u32 = 256;
654pub const ZEND_PARSE_PARAMS_QUIET: u32 = 2;
655pub const ZEND_PARSE_PARAMS_THROW: u32 = 4;
656pub const IS_CALLABLE_CHECK_SYNTAX_ONLY: u32 = 1;
657pub const IS_CALLABLE_CHECK_NO_ACCESS: u32 = 2;
658pub const IS_CALLABLE_CHECK_IS_STATIC: u32 = 4;
659pub const IS_CALLABLE_CHECK_SILENT: u32 = 8;
660pub const IS_CALLABLE_STRICT: u32 = 4;
661pub const PHP_OS_FAMILY: &'static [u8; 6usize] = b"Linux\0";
662pub const PHP_DEBUG: u32 = 0;
663pub const PHP_DIR_SEPARATOR: u8 = 47u8;
664pub const PHP_EOL: &'static [u8; 2usize] = b"\n\0";
665pub const PHP_ADA_INCLUDE: &'static [u8; 1usize] = b"\0";
666pub const PHP_ADA_LFLAGS: &'static [u8; 1usize] = b"\0";
667pub const PHP_ADA_LIBS: &'static [u8; 1usize] = b"\0";
668pub const PHP_APACHE_INCLUDE: &'static [u8; 1usize] = b"\0";
669pub const PHP_APACHE_TARGET: &'static [u8; 1usize] = b"\0";
670pub const PHP_FHTTPD_INCLUDE: &'static [u8; 1usize] = b"\0";
671pub const PHP_FHTTPD_LIB: &'static [u8; 1usize] = b"\0";
672pub const PHP_FHTTPD_TARGET: &'static [u8; 1usize] = b"\0";
673pub const PHP_CFLAGS: &'static [u8; 40usize] = b"$(CFLAGS_CLEAN) -prefer-non-pic -static\0";
674pub const PHP_DBASE_LIB: &'static [u8; 1usize] = b"\0";
675pub const PHP_BUILD_DEBUG: &'static [u8; 1usize] = b"\0";
676pub const PHP_GDBM_INCLUDE: &'static [u8; 1usize] = b"\0";
677pub const PHP_IBASE_INCLUDE: &'static [u8; 1usize] = b"\0";
678pub const PHP_IBASE_LFLAGS: &'static [u8; 1usize] = b"\0";
679pub const PHP_IBASE_LIBS: &'static [u8; 1usize] = b"\0";
680pub const PHP_IFX_INCLUDE: &'static [u8; 1usize] = b"\0";
681pub const PHP_IFX_LFLAGS: &'static [u8; 1usize] = b"\0";
682pub const PHP_IFX_LIBS: &'static [u8; 1usize] = b"\0";
683pub const PHP_INSTALL_IT: &'static [u8; 1usize] = b"\0";
684pub const PHP_IODBC_INCLUDE: &'static [u8; 1usize] = b"\0";
685pub const PHP_IODBC_LFLAGS: &'static [u8; 1usize] = b"\0";
686pub const PHP_IODBC_LIBS: &'static [u8; 1usize] = b"\0";
687pub const PHP_MSQL_INCLUDE: &'static [u8; 1usize] = b"\0";
688pub const PHP_MSQL_LFLAGS: &'static [u8; 1usize] = b"\0";
689pub const PHP_MSQL_LIBS: &'static [u8; 1usize] = b"\0";
690pub const PHP_MYSQL_INCLUDE: &'static [u8; 16usize] = b"@MYSQL_INCLUDE@\0";
691pub const PHP_MYSQL_LIBS: &'static [u8; 13usize] = b"@MYSQL_LIBS@\0";
692pub const PHP_MYSQL_TYPE: &'static [u8; 20usize] = b"@MYSQL_MODULE_TYPE@\0";
693pub const PHP_ODBC_INCLUDE: &'static [u8; 1usize] = b"\0";
694pub const PHP_ODBC_LFLAGS: &'static [u8; 1usize] = b"\0";
695pub const PHP_ODBC_LIBS: &'static [u8; 1usize] = b"\0";
696pub const PHP_ODBC_TYPE: &'static [u8; 1usize] = b"\0";
697pub const PHP_OCI8_SHARED_LIBADD: &'static [u8; 1usize] = b"\0";
698pub const PHP_OCI8_DIR: &'static [u8; 1usize] = b"\0";
699pub const PHP_OCI8_ORACLE_VERSION: &'static [u8; 1usize] = b"\0";
700pub const PHP_ORACLE_SHARED_LIBADD: &'static [u8; 23usize] = b"@ORACLE_SHARED_LIBADD@\0";
701pub const PHP_ORACLE_DIR: &'static [u8; 13usize] = b"@ORACLE_DIR@\0";
702pub const PHP_ORACLE_VERSION: &'static [u8; 17usize] = b"@ORACLE_VERSION@\0";
703pub const PHP_PGSQL_INCLUDE: &'static [u8; 1usize] = b"\0";
704pub const PHP_PGSQL_LFLAGS: &'static [u8; 1usize] = b"\0";
705pub const PHP_PGSQL_LIBS: &'static [u8; 1usize] = b"\0";
706pub const PHP_PROG_SENDMAIL: &'static [u8; 19usize] = b"/usr/sbin/sendmail\0";
707pub const PHP_SOLID_INCLUDE: &'static [u8; 1usize] = b"\0";
708pub const PHP_SOLID_LIBS: &'static [u8; 1usize] = b"\0";
709pub const PHP_EMPRESS_INCLUDE: &'static [u8; 1usize] = b"\0";
710pub const PHP_EMPRESS_LIBS: &'static [u8; 1usize] = b"\0";
711pub const PHP_SYBASE_INCLUDE: &'static [u8; 1usize] = b"\0";
712pub const PHP_SYBASE_LFLAGS: &'static [u8; 1usize] = b"\0";
713pub const PHP_SYBASE_LIBS: &'static [u8; 1usize] = b"\0";
714pub const PHP_DBM_TYPE: &'static [u8; 1usize] = b"\0";
715pub const PHP_DBM_LIB: &'static [u8; 1usize] = b"\0";
716pub const PHP_LDAP_LFLAGS: &'static [u8; 1usize] = b"\0";
717pub const PHP_LDAP_INCLUDE: &'static [u8; 1usize] = b"\0";
718pub const PHP_LDAP_LIBS: &'static [u8; 1usize] = b"\0";
719pub const PHP_BIRDSTEP_INCLUDE: &'static [u8; 1usize] = b"\0";
720pub const PHP_BIRDSTEP_LIBS: &'static [u8; 1usize] = b"\0";
721pub const PHP_INCLUDE_PATH: &'static [u8; 17usize] = b".:/usr/share/php\0";
722pub const PHP_EXTENSION_DIR: &'static [u8; 22usize] = b"/usr/lib/php/20170718\0";
723pub const PHP_PREFIX: &'static [u8; 5usize] = b"/usr\0";
724pub const PHP_BINDIR: &'static [u8; 9usize] = b"/usr/bin\0";
725pub const PHP_SBINDIR: &'static [u8; 10usize] = b"/usr/sbin\0";
726pub const PHP_MANDIR: &'static [u8; 15usize] = b"/usr/share/man\0";
727pub const PHP_LIBDIR: &'static [u8; 13usize] = b"/usr/lib/php\0";
728pub const PHP_DATADIR: &'static [u8; 19usize] = b"/usr/share/php/7.2\0";
729pub const PHP_SYSCONFDIR: &'static [u8; 5usize] = b"/etc\0";
730pub const PHP_LOCALSTATEDIR: &'static [u8; 5usize] = b"/var\0";
731pub const PHP_CONFIG_FILE_PATH: &'static [u8; 17usize] = b"/etc/php/7.2/cli\0";
732pub const PHP_CONFIG_FILE_SCAN_DIR: &'static [u8; 24usize] = b"/etc/php/7.2/cli/conf.d\0";
733pub const PHP_SHLIB_SUFFIX: &'static [u8; 3usize] = b"so\0";
734pub const PHP_SHLIB_EXT_PREFIX: &'static [u8; 1usize] = b"\0";
735pub const PHP_MIME_TYPE: &'static [u8; 24usize] = b"application/x-httpd-php\0";
736pub const PHP_OUTPUT_NEWAPI: u32 = 1;
737pub const PHP_OUTPUT_HANDLER_WRITE: u32 = 0;
738pub const PHP_OUTPUT_HANDLER_START: u32 = 1;
739pub const PHP_OUTPUT_HANDLER_CLEAN: u32 = 2;
740pub const PHP_OUTPUT_HANDLER_FLUSH: u32 = 4;
741pub const PHP_OUTPUT_HANDLER_FINAL: u32 = 8;
742pub const PHP_OUTPUT_HANDLER_CONT: u32 = 0;
743pub const PHP_OUTPUT_HANDLER_END: u32 = 8;
744pub const PHP_OUTPUT_HANDLER_INTERNAL: u32 = 0;
745pub const PHP_OUTPUT_HANDLER_USER: u32 = 1;
746pub const PHP_OUTPUT_HANDLER_CLEANABLE: u32 = 16;
747pub const PHP_OUTPUT_HANDLER_FLUSHABLE: u32 = 32;
748pub const PHP_OUTPUT_HANDLER_REMOVABLE: u32 = 64;
749pub const PHP_OUTPUT_HANDLER_STDFLAGS: u32 = 112;
750pub const PHP_OUTPUT_HANDLER_STARTED: u32 = 4096;
751pub const PHP_OUTPUT_HANDLER_DISABLED: u32 = 8192;
752pub const PHP_OUTPUT_HANDLER_PROCESSED: u32 = 16384;
753pub const PHP_OUTPUT_POP_TRY: u32 = 0;
754pub const PHP_OUTPUT_POP_FORCE: u32 = 1;
755pub const PHP_OUTPUT_POP_DISCARD: u32 = 16;
756pub const PHP_OUTPUT_POP_SILENT: u32 = 256;
757pub const PHP_OUTPUT_IMPLICITFLUSH: u32 = 1;
758pub const PHP_OUTPUT_DISABLED: u32 = 2;
759pub const PHP_OUTPUT_WRITTEN: u32 = 4;
760pub const PHP_OUTPUT_SENT: u32 = 8;
761pub const PHP_OUTPUT_ACTIVE: u32 = 16;
762pub const PHP_OUTPUT_LOCKED: u32 = 32;
763pub const PHP_OUTPUT_ACTIVATED: u32 = 1048576;
764pub const PHP_OUTPUT_HANDLER_ALIGNTO_SIZE: u32 = 4096;
765pub const PHP_OUTPUT_HANDLER_DEFAULT_SIZE: u32 = 16384;
766pub const PHP_STREAM_NOTIFIER_PROGRESS: u32 = 1;
767pub const PHP_STREAM_NOTIFY_RESOLVE: u32 = 1;
768pub const PHP_STREAM_NOTIFY_CONNECT: u32 = 2;
769pub const PHP_STREAM_NOTIFY_AUTH_REQUIRED: u32 = 3;
770pub const PHP_STREAM_NOTIFY_MIME_TYPE_IS: u32 = 4;
771pub const PHP_STREAM_NOTIFY_FILE_SIZE_IS: u32 = 5;
772pub const PHP_STREAM_NOTIFY_REDIRECTED: u32 = 6;
773pub const PHP_STREAM_NOTIFY_PROGRESS: u32 = 7;
774pub const PHP_STREAM_NOTIFY_COMPLETED: u32 = 8;
775pub const PHP_STREAM_NOTIFY_FAILURE: u32 = 9;
776pub const PHP_STREAM_NOTIFY_AUTH_RESULT: u32 = 10;
777pub const PHP_STREAM_NOTIFY_SEVERITY_INFO: u32 = 0;
778pub const PHP_STREAM_NOTIFY_SEVERITY_WARN: u32 = 1;
779pub const PHP_STREAM_NOTIFY_SEVERITY_ERR: u32 = 2;
780pub const PHP_STREAM_FILTER_READ: u32 = 1;
781pub const PHP_STREAM_FILTER_WRITE: u32 = 2;
782pub const PHP_STREAM_FILTER_ALL: u32 = 3;
783pub const PHP_STREAM_FLAG_NO_SEEK: u32 = 1;
784pub const PHP_STREAM_FLAG_NO_BUFFER: u32 = 2;
785pub const PHP_STREAM_FLAG_EOL_UNIX: u32 = 0;
786pub const PHP_STREAM_FLAG_DETECT_EOL: u32 = 4;
787pub const PHP_STREAM_FLAG_EOL_MAC: u32 = 8;
788pub const PHP_STREAM_FLAG_AVOID_BLOCKING: u32 = 16;
789pub const PHP_STREAM_FLAG_NO_CLOSE: u32 = 32;
790pub const PHP_STREAM_FLAG_IS_DIR: u32 = 64;
791pub const PHP_STREAM_FLAG_NO_FCLOSE: u32 = 128;
792pub const PHP_STREAM_FLAG_WAS_WRITTEN: u32 = 2147483648;
793pub const PHP_STREAM_FCLOSE_NONE: u32 = 0;
794pub const PHP_STREAM_FCLOSE_FDOPEN: u32 = 1;
795pub const PHP_STREAM_FCLOSE_FOPENCOOKIE: u32 = 2;
796pub const PHP_STREAM_PERSISTENT_SUCCESS: u32 = 0;
797pub const PHP_STREAM_PERSISTENT_FAILURE: u32 = 1;
798pub const PHP_STREAM_PERSISTENT_NOT_EXIST: u32 = 2;
799pub const PHP_STREAM_FREE_CALL_DTOR: u32 = 1;
800pub const PHP_STREAM_FREE_RELEASE_STREAM: u32 = 2;
801pub const PHP_STREAM_FREE_PRESERVE_HANDLE: u32 = 4;
802pub const PHP_STREAM_FREE_RSRC_DTOR: u32 = 8;
803pub const PHP_STREAM_FREE_PERSISTENT: u32 = 16;
804pub const PHP_STREAM_FREE_IGNORE_ENCLOSING: u32 = 32;
805pub const PHP_STREAM_FREE_KEEP_RSRC: u32 = 64;
806pub const PHP_STREAM_FREE_CLOSE: u32 = 3;
807pub const PHP_STREAM_FREE_CLOSE_CASTED: u32 = 7;
808pub const PHP_STREAM_FREE_CLOSE_PERSISTENT: u32 = 19;
809pub const PHP_STREAM_MKDIR_RECURSIVE: u32 = 1;
810pub const PHP_STREAM_URL_STAT_LINK: u32 = 1;
811pub const PHP_STREAM_URL_STAT_QUIET: u32 = 2;
812pub const PHP_STREAM_URL_STAT_NOCACHE: u32 = 4;
813pub const PHP_STREAM_OPTION_BLOCKING: u32 = 1;
814pub const PHP_STREAM_OPTION_READ_BUFFER: u32 = 2;
815pub const PHP_STREAM_OPTION_WRITE_BUFFER: u32 = 3;
816pub const PHP_STREAM_BUFFER_NONE: u32 = 0;
817pub const PHP_STREAM_BUFFER_LINE: u32 = 1;
818pub const PHP_STREAM_BUFFER_FULL: u32 = 2;
819pub const PHP_STREAM_OPTION_READ_TIMEOUT: u32 = 4;
820pub const PHP_STREAM_OPTION_SET_CHUNK_SIZE: u32 = 5;
821pub const PHP_STREAM_OPTION_LOCKING: u32 = 6;
822pub const PHP_STREAM_LOCK_SUPPORTED: u32 = 1;
823pub const PHP_STREAM_OPTION_XPORT_API: u32 = 7;
824pub const PHP_STREAM_OPTION_CRYPTO_API: u32 = 8;
825pub const PHP_STREAM_OPTION_MMAP_API: u32 = 9;
826pub const PHP_STREAM_OPTION_TRUNCATE_API: u32 = 10;
827pub const PHP_STREAM_TRUNCATE_SUPPORTED: u32 = 0;
828pub const PHP_STREAM_TRUNCATE_SET_SIZE: u32 = 1;
829pub const PHP_STREAM_OPTION_META_DATA_API: u32 = 11;
830pub const PHP_STREAM_OPTION_CHECK_LIVENESS: u32 = 12;
831pub const PHP_STREAM_OPTION_PIPE_BLOCKING: u32 = 13;
832pub const PHP_STREAM_OPTION_RETURN_OK: u32 = 0;
833pub const PHP_STREAM_OPTION_RETURN_ERR: i32 = -1;
834pub const PHP_STREAM_OPTION_RETURN_NOTIMPL: i32 = -2;
835pub const PHP_STREAM_MMAP_ALL: u32 = 0;
836pub const PHP_STREAM_AS_STDIO: u32 = 0;
837pub const PHP_STREAM_AS_FD: u32 = 1;
838pub const PHP_STREAM_AS_SOCKETD: u32 = 2;
839pub const PHP_STREAM_AS_FD_FOR_SELECT: u32 = 3;
840pub const PHP_STREAM_CAST_TRY_HARD: u32 = 2147483648;
841pub const PHP_STREAM_CAST_RELEASE: u32 = 1073741824;
842pub const PHP_STREAM_CAST_INTERNAL: u32 = 536870912;
843pub const PHP_STREAM_CAST_MASK: u32 = 3758096384;
844pub const PHP_STREAM_UNCHANGED: u32 = 0;
845pub const PHP_STREAM_RELEASED: u32 = 1;
846pub const PHP_STREAM_FAILED: u32 = 2;
847pub const PHP_STREAM_CRITICAL: u32 = 3;
848pub const PHP_STREAM_NO_PREFERENCE: u32 = 0;
849pub const PHP_STREAM_PREFER_STDIO: u32 = 1;
850pub const PHP_STREAM_FORCE_CONVERSION: u32 = 2;
851pub const PHP_STREAM_IS_URL: u32 = 1;
852pub const PHP_STREAM_META_TOUCH: u32 = 1;
853pub const PHP_STREAM_META_OWNER_NAME: u32 = 2;
854pub const PHP_STREAM_META_OWNER: u32 = 3;
855pub const PHP_STREAM_META_GROUP_NAME: u32 = 4;
856pub const PHP_STREAM_META_GROUP: u32 = 5;
857pub const PHP_STREAM_META_ACCESS: u32 = 6;
858pub const PHP_STREAM_MAX_MEM: u32 = 2097152;
859pub const PHP_DISPLAY_ERRORS_STDOUT: u32 = 1;
860pub const PHP_DISPLAY_ERRORS_STDERR: u32 = 2;
861pub const ZEND_INI_USER: u32 = 1;
862pub const ZEND_INI_PERDIR: u32 = 2;
863pub const ZEND_INI_SYSTEM: u32 = 4;
864pub const ZEND_INI_ALL: u32 = 7;
865pub const ZEND_INI_DISPLAY_ORIG: u32 = 1;
866pub const ZEND_INI_DISPLAY_ACTIVE: u32 = 2;
867pub const ZEND_INI_STAGE_STARTUP: u32 = 1;
868pub const ZEND_INI_STAGE_SHUTDOWN: u32 = 2;
869pub const ZEND_INI_STAGE_ACTIVATE: u32 = 4;
870pub const ZEND_INI_STAGE_DEACTIVATE: u32 = 8;
871pub const ZEND_INI_STAGE_RUNTIME: u32 = 16;
872pub const ZEND_INI_STAGE_HTACCESS: u32 = 32;
873pub const ZEND_INI_PARSER_ENTRY: u32 = 1;
874pub const ZEND_INI_PARSER_SECTION: u32 = 2;
875pub const ZEND_INI_PARSER_POP_ENTRY: u32 = 3;
876pub const PHP_INI_USER: u32 = 1;
877pub const PHP_INI_PERDIR: u32 = 2;
878pub const PHP_INI_SYSTEM: u32 = 4;
879pub const PHP_INI_ALL: u32 = 7;
880pub const PHP_INI_DISPLAY_ORIG: u32 = 1;
881pub const PHP_INI_DISPLAY_ACTIVE: u32 = 2;
882pub const PHP_INI_STAGE_STARTUP: u32 = 1;
883pub const PHP_INI_STAGE_SHUTDOWN: u32 = 2;
884pub const PHP_INI_STAGE_ACTIVATE: u32 = 4;
885pub const PHP_INI_STAGE_DEACTIVATE: u32 = 8;
886pub const PHP_INI_STAGE_RUNTIME: u32 = 16;
887pub const PHP_INI_STAGE_HTACCESS: u32 = 32;
888pub const PHP_CONNECTION_NORMAL: u32 = 0;
889pub const PHP_CONNECTION_ABORTED: u32 = 1;
890pub const PHP_CONNECTION_TIMEOUT: u32 = 2;
891pub const PHP_ENTRY_NAME_COLOR: &'static [u8; 5usize] = b"#ccf\0";
892pub const PHP_CONTENTS_COLOR: &'static [u8; 5usize] = b"#ccc\0";
893pub const PHP_HEADER_COLOR: &'static [u8; 5usize] = b"#99c\0";
894pub const PHP_INFO_GENERAL: u32 = 1;
895pub const PHP_INFO_CREDITS: u32 = 2;
896pub const PHP_INFO_CONFIGURATION: u32 = 4;
897pub const PHP_INFO_MODULES: u32 = 8;
898pub const PHP_INFO_ENVIRONMENT: u32 = 16;
899pub const PHP_INFO_VARIABLES: u32 = 32;
900pub const PHP_INFO_LICENSE: u32 = 64;
901pub const PHP_INFO_ALL: u32 = 4294967295;
902pub const PHP_CREDITS_GROUP: u32 = 1;
903pub const PHP_CREDITS_GENERAL: u32 = 2;
904pub const PHP_CREDITS_SAPI: u32 = 4;
905pub const PHP_CREDITS_MODULES: u32 = 8;
906pub const PHP_CREDITS_DOCS: u32 = 16;
907pub const PHP_CREDITS_FULLPAGE: u32 = 32;
908pub const PHP_CREDITS_QA: u32 = 64;
909pub const PHP_CREDITS_WEB: u32 = 128;
910pub const PHP_CREDITS_PACKAGING: u32 = 256;
911pub const PHP_CREDITS_ALL: u32 = 4294967295;
912pub 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" ;
913pub const PHP_EGG_LOGO_DATA_URI : & 'static [u8 ; 8231usize] = b"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHkAAABACAMAAAAJUSgeAAAC+lBMVEUAAACtsdVsooH18+vP0Mfr5tahp3G3toS4wricto5JTIuoq9BZXJlgY55cXptQUouqp3ZkZ6OanciBk19RakXw69tISotzc0dJS4yfpHB7frOusdZ6fbSprs5qbKfv6djv59T07t/t6NWNkMF7qY6ssIa/5Na9y6K0v8+mvJZ3e7NISow5aEZGdU9Qqpc7b0lRr51QjGg3b1F7frRatqRYimZPhFtHakVRfFU/c085fV9z1sWY2chwx7Q5p5ig28p52clWsp5yzbxnxrRjwK5Gb01fknBXiWBGopNbj2hQh2FKfFNCaUOm381OppFHg2JQgmIyakovZEbD69yU18NQknKJzblku6hQn4lCellSSjZyonxYj29Lflo4ZD7G4dI8saJYnYBpl3E6hGjM6Nq05taB3MyFyLFLiWxDb0i75th80cFfWkRUUD+p5NU3m4eC1cOAg7dbu6o4dVZBYTy53s9nm3xHRjHR4NWL3s9LtaVrrZFPk3tDknhimHNBeFKv4NCa4NDp4s54qINmnnVZlnNNeEva5d2L1cO1xaxucat2t5xYmHpokWZagls2Xj0tTy7e7eGGirs5oJBhkGphimNGdEmTzLmAr41FoIpFl4FCinGWmsWk1L9bgFNabko/Y0NMZD9DOyrT7uHK7uCV3MyL2cnK1sds08JlzLxxvqiMuZZZqJNco4k1k39SbELu7OCh49Ss2sm22MaOj3h7zLl8xKpui11lhVcvWzg7VzZfsJhiqYmhlHyBfGZvZ1MlYkidoI5Cf11We06Okr5laaRCq5s0iXKDmmdRc08mVzqhpc2yu8xxm3M0Mx6dpcPPyrWlxqOktZuMsIZIi2RpdV3c2sunqZqPhmnF09S7xdEweV2AdVjc1by40LiWnKzJwKi3tKRyfXFTwrRnuZ2YwZpwlGgiQimHi69Dua1sr5tUVpTEzLuZwKytuK54faKyqI4qcFdIXDagpbR5govMuJaSnYF9n4CkyblBRz3+/v/DqYZwXD8UFA2nO9FlAAAAKnRSTlMA/v79Iv70aP781IEnRv6VSXBf/Ovbt0rv5NG8r9jMxa+KTc/CjsSj2soo+frGAAAUlUlEQVRYw6zUbWgScRwH8BxBM9uiXkTQw4te9HDZg9mkdY0uVw6LimY641ZyzodhcGhReKws8Y5KjUrGlFIIfOjU+cLJBsN7NfRNGrbpG33hiBwMRnvTm172u0PoRTXWw1fxDoT73Pf+9/tvWDMHxB4cp/2jN26q1Vxr6A5L7d8ukeyCiMrP5pfS6Rmr7ukZs+GgRLK9q2vD/8vGQ1Wcpl0g9w70cPnWuX4sKxICsDhdDYV8qb5pe9xtKxUKgYDDsXv3tq4t/0PeBJVdLubB6NyJSwqayx89z1INUalUCodXxeB6OsZa/f1KC2VugMzTcgRBvMD/a+UDVbzDpRrWvhm5e+KRipu8cjKJVRA+iwvVkMeDd3D5oX4lhrnvhRFEDhFkr7dY3LvtX7rvE8Miq4Zlo29GTl+TXuT0r4dYNMhffHlBXMXhTzrDtfqUKEqRZQewbZqXi93d3Vu7/rKxpFOM0y61rHa1Vhu5O/joPkMMKe1nw3K5YxFgGu+g/ZlM/nwSZS1ZWwNShlTChYAD8fL0ysrOv8C37xKJVqseXpbNzdVGZT10Oh2cemw2OcvlToCNrvs0zRCT50DGYKWjryBRU9TkdNYb5UpA7vUCffjw5q1/9Ngle0SQhRDuYhjtqMwV+hLJ3TMYbBqISWNoejxGtYoG2Q+d+1AMo0ibJhaNRmMam8Zk0mgMdQEvrhyGrL+4hGdLgWWQaYbpENjHU5DLEJIkI2n8Q89NhZGXiXyqD0VRS5bMmuG2bGY+JGk22wTc4e3m7R1d63bDDgQRZE86kstFIsFgUKfTXb9+Jh6Pn/3iMY4rjhwx0owWOqeUtzGQLyfiWbirLB83FY+7SVv0Sb0BF4LivL0+V96enPRSJDcFrs5qtep08AXafT1kHB+4JJWOgwyd4d22oFiWfJpIUBRlsVDCLxzdZnj+TiiOeAV7zfXeuKftQuRf5581IwI70w7409O69Af1gKJXKlXBqDMEl7rNQmcSZDsGgdcNPiicWdy2WDQWM9VL4QBv79y6ZuG2Cyl0NpvgWq0zqVTL10r5fL6xMU6v5/DnA5ceHRscBFnNZCZPJlmUxchsIpGww4pjQoQjzFosBr1fPalXHEWovXnL7wuXHG3X8RXgb0GoC25rDMJxHOF/OHJaNt6jmDg2ODuoUqnVDKE/3q9Ek1jWbYfnDKIlYb89jbIo2BaK1Ag02OUC0g21t/1ygktQGGlnebX5bH7eOuODtq1JLsP5/QRBaGuwmfUOKE5N3Jp9/0Klksm0D/THz6MA/ZDNJkMuqAQazt38sEFg2OsVuZefsF/BpVKg7coXO8FdSvuErpkMQfiv9g4zWthF7167dWFiQnpr9uVb1zDID/XHPyfZJMiYILMW08dP795ZlSwEo7IwXhoI2M6KHOF3lp+W+DvZ9RLTRBSFAVhNTNSoCxcujDu3lFqkFbANQktNWx5teWinLRNrMdbOGB5ppwstqCHDGLRiCL4w6iQyPhYqHTRqpmMJmoAWEaUtBpFqjJtCiEbQwMJz+1CjdzHbL/+595x7B+DsDp/7BvBnBIMJajvktdUXwBgtAvlRoDynPvAoUKCVGY1pufTWzeM33HCe3UgWMII5rwJ6124IDasB2Wn6GdD/wX+O1lwq8B24BPfXaq2Li4vezk5b+U4ZwEV5JvPIo0AgMHw64pAbjYeOXXz+6dYt9a77fW63W6UqLT3oDGPk+PkBkFP08fv3G6DiELvLB5v5L72p98XQ35WGwOCu8mojvCAI/IJVJrsWMA5CZCSfPRs4E4lEtHIFkrc331Kr3UfQkIORUzdQnSCx8HTdgLuxsTHV1rDZIKOCT8J2ngL6b7j3N/yNScMXVnm9jodxYen796U4L5cFHtstRS0teeaRkZGzww6vwwFdrT90tLJEo27WNLbNhRfCsViCC3oSGBamcc+Vmpo+tG4ch9BOWHDIXzalUm/+3U69vVDqLIwq/QZufb9W+3FqKg7y93joTJU0x97a0mIygRywd/v9WpALFFVHK/M1qu2avv4JlqIwkgxxXTMYSfDhRJLD+2uUSmVKxseTnA+aayU4QGeba9sf+APKC5W2Wr1+3RkCY9nlJcg8UWCB1ZKXh+RHdptOa9M6us8U2KuO5jarVfnqvv4FPh7n40BHZygMI0EPMT4PDtmLK0AOiyLP+OCUgQKNvT5d66He7Pz4wCAXAnu9Xr/8KjvKYpiwJCxPSCBvC5LNZrNdC+0kg8wKg6HqaIlGpckvvYHTPhz30TyGJWYoSpwXQiJBxGg6meQ4n7PaycV4KCBDv0NUtt7bhoay8NzrOxcAPrnK29kuM5Kjo6PssiCIxHCKBfjpU7Pd77fpFQqtQ243tFZdys1X7W12V+DBuo7GDmeMwgTIzNO0jwuRYnR1iBBD4aTPiTvp6Pv5+PQkWKjeG1KRh3ZkB9f4HeTCG8hmk1XZH4OMTU0tE8OStGsC2QKPUZtMoXdo5Xa7ZRBkdbO6ry14Xg2vUE+MZePzFBbGa4rpMIaNnRBh7zEoPN4AHR3lGRyVGybKulTkzOhqiq3NwlBPxaCl/AuqNnb9bk8hcqHST5/mab3ttTaZUe7tVhgslsFjuSX5+aobV2brNBlZQLJnoNEpgBwVscTYvDAlMh4YpNPiOP4SUc/QTq8/N9SUuSPgJWu1rrJ64fGlk+ktrZLyx4+/Xr/rkoKbkU1yr7czJTvkCmizomOVJSUlpcWzsyqNWjUwKbDsvEBhsaCqw8djRPQ9QXA03RWd4vG2hsNzxFrnu5SGBvimc5nI3xjUSw44W3AH7ZHr7a2FhRJXmaRHKjXlSeGDNlkOBemsra09pNfpFTBZDlzKLcnNd1fM/tir0QxcSYqj1EycwsavqDt8U2Ro9RhJBCuOVHcJItdw2Bkmx52TKW4jlHsryOlNXot6SeuHPt4j37NHATB4hfDNMZmQbIbTZYU3YUqWwXak5Mrtlbc7+tf4Zmd/BJM8yxJjIoXNnVcrfSLJ30tgE0FlRQMtEMm2w3iIYJz0q0y5V2w515T9a4g4HFBnnVxvhGWXSKUuqTQn/UXLbC50LEbaZbWwZHq93ZKVVcofieiaWIwX2VFKeE+wJPNA3cYRVPiewPLBmuI2X4iYbjvMkBPB6q5U6FMgN4GMIiO4W6eDsGgV2C2tPT0SF5jSsrIyVz3IgRy5NeKQvX0LNpxAQ2FL0YHLlypz99VV3CFIjEWLXODGMJZYc1uFJ0gqsTpEjfcriz2cSDL9QZ7iPfBAeoloJDeln3trFyPdOmABNRgMEkNrocvlKiuT5pTDtwcuxvp6RSTi0OmrkNxug3MA8rFLFyufKPs/kj9//iSJj2GGo6MijNDbbqdAkVyUEKNcMOiLYSLnYQjyNRyzavzFjqycifyrDXuPabMKwwCOsKnxbtQYjfeof5BSC6MUsKUWyii1tynQkkC5altwA1kL2ot06Fi1tGWBwkqVtibzgmUgCmPdxAwUVi8TL0wdYxc0zJEpG845lyzxeb+y6XRnrFm2ZL8+7/nOe853XPlcwKWAISclZRh4MsSVyXi8XINMpvW0VlZWrk1WjivRwUqSpWkkA/b1Cc/NXItxGMfj7m7TlgPTB14Q8NHOxlqONn08PX3y5PfPNZ0te/vDpvkP7Dgp2E2fMPIayLHI3jypVAU5qSspKTc3CRxkloyHgS+hNXgrKzsReWMx3rNwShgvRmSNQuET2LfNv03H8WF0s+yiN4ZMpu6cTYMtR6cH9775HI2mN2dOvoDIv9qRuYYvx5ZFT9gayL98/+2XnXl5eLDQl5AXMsG8gQEGpg+Zm4HTilMyiGZkf48mrFEUDc3Mn0s1N5jNk5OTDbSshwU59fbqrYNbxtYfO/bhoefWz7z6wsmxpvkh+QZEdmw3fUXyPZDX/P7Nn5XePJQak9xMMAYvGAyFBgYGQkZGjroAc1WlxSmgS5XjzcUbM/2a3eGenwt+/Wu+O9VsNmdlZXVwRBxOakNDg1hQK9/69nMzb1MHP3y47IVj6z/+Gi9Hz9QMDb+14eDzkG8lGZG97rQn05kpxiDYGAQN2dgeCUH2Vq7N53JVyuIU0M3NzRnNMTlcNPQlZDMG4A5OKoeDfpoqashxVB9r+nMIKWtMQtPW1dOHTYxcMOzYVPPFTdfF3ZAIee++BbebQVdcVBey0RgKBELL+9uDvChqzeVK09DZ0FUM1GFI7tf0CU17z/6mM5eXM7KEw2ZzOGy01BxH2dj6r4XvyzH4BabqrdV2uVBYY9KNOLY/U/07jr93J6755ey+Ba87Pb0VLDqmAVNslMkAGyk0tqx23ujCWtpGsEs0ZyQ9SXpzsd6qqegvkttNpqGcE5Ans+rqYjJ+OGLsVh9+QK+Am4T8ArSTZyDLn/7A2VfE31Dz4/VxcbcyssudHsVDTaOri2QPRV5eHhhY3t8UikRdLsAqpYpWXSlqjr6q1LdV2BYL+OKffvrpREzuqFOI2Ao2cJG5wYGDrhAnUpzEIPOFckS2V5+zOHUFOBQ+Gkehj5xdcLnd6aQacknm8YKRiJHkEOCBaK7X5erkSqmtYslLVUpl82PNSn2hvkInFGSVl5efMDOypE7ClkgkbHZqKp4xh1xej4Mw6Jgs5AvLfvzV6dQ5+JgAyDcm7o0VG+Xuoo6FyEFPpD0SCYWWmwAHoojsQj8HqlQqpVJszMUodluJ3tJdwMEjXX6iPCvLzJFIOiQKkjmparU4J7s2W5AjyAaNYmPw+fayr4685xyhl2FHHIXei2JDxiPWhUmmRunx7NrVHnj1+7GmSGggwItSS0fmNKn0u2Rp8nhGCp5t1WZ9G0W+JJslEh9+EFkEWS0QCMRicUymxAX8obKDzz9/ZNuIrrugnpFv2btvJ8H0fD1mkLFYsFnBYNP3CYlnAqFQiKfN7exU0dYphYzeiaW1LiOjObnQ+QafIk+i3pBT2b4eDRIzMg0m+bvZ9Tj8InGB0ERHzyPbtqHgw9mMfNe+nb0k02a8siUGjZELCVsSl2Ygo3O6IHdyyU7G0CvHM8eLM5L36N7o6+iADBqyGHKPRMEOY0GrUzFEmG1cHdU7kBm4vewgtqmlPxvj9zhHBCRfc/VtkFFqsBfhoHH//vMHExPnA4EATyvDA+bqRCvBwNacrC+06jeWNjrf0Pnq/pEb2D4bOnl49+7dIvQyDBG6WU52PdEFfHkNIuPm4kxjYYXF2bcij/ZOdAHGSS8ma4PLF9af/zwR5SZZO7qw4OrspNT5+QxsLVQmO7uL2HV1HZJYuSfNDZyeKVuPhmRS2WymkYqzayFTZDqD0Rvdw41W0Jfk3tZWHOdT6LxF8xxsunDmPNVmJhAY0HrcC6BdXsw1RgldkukLLd06wERPTqJ3chrEHNuUTaMBrFCQjA+UXCwYdjiwquxlP77OwHGrHomvqLBcrPYoZBxuceii1wiW1rj/wrXnEzHOQDZ6DAsLO12uvLx8wPmbN5colW0W3YgErg+yhGM2Y07VYb/fpgkv7g5rNCIRZ1LBxl9CxiMWq/XFN/dV1zwc/3BM3rdz1D3RinpjmgFDXl7/Fx4wjKV5KnfQi8iUWcrloo1Kx62YKd8Okn1YwKIGtfpntVpT5bftWVxc7NdoqIUycgMyQ6bHa82l2wrYt/xLTk/Hw53CZF7Hmtly/vxVgBEa9TYaoztdXlenNy+PW7K2RKUstDjDO3bUdXQA7pCw1WLBSJ+6T1Nls1oAV1RowmEOWwIa+zXNM85iP/7y/xsakjHR1ElQbS1lDs588vrr5K7MtNE4MTrq9XrT3NySEq5ys2VRs4NkVFqBJ0k9XESXV9Yqaz9gq7WiPxwOS3wKambi7Ox6h9BuAoxbqSvIE3jCMDJYT62DLJtZAhrLvDM6EAgZta29oJFZpeLGOy3WqR09VGc2XPQNuiHsW/T7KxbxT35rxR5csfh8PoUIcg7mWW76HVfOsP4v95Lcit94oUhZx+LNX4SXzrii2CxlHg/P7cXgqvLjt+F/t2H9KCgvRyRS95E80o/ITkubHzLuk3p6/pH59nOf4vbxynIrDfA01yn/lhfcE7wVmlJzX3o5vkRZ5fdPYe3uqJNIJtkxuWikwt+/aCnR+1HttkI6DyvYqSuy6d4r3rg+AhlmV2s6Bs5DxRmQX7soe9OjvKAxFOWxtLKo29vJVWWknJ6drZqawjyjh5jN6JHDkJ1W6x5LidJvbdvcGF+IZsY08J9zBLUOedn9Dz700KpVq64gU7WfZORSKTYEyK/F7DPu3KARgxc1sDwerYyFkTKbWUVux2T5iRO4lHo3uxbV3oO0+swqNFalHpEVbIUEshrw9me2JCQM3nHH/Q88+OCD9AVo/DPPUCnxuD5ZX/zY7TffBxo4ZIN2165IJBKY4Gl3YXhYKXifggwa+yPkdx5/9kWHztmmr8rEV9JDr8J5OHY0EVNkYdnWwYTBwcHVNO7AN7j/gQce+I+clvadvrCk1HD7nXE33Er40oduuuRsb2+PBKI8GdmsjGa8OE8xobPKQeOWcZNQ16/PPH369GzmLGbCb4OMdkr3CNmP1wurB2PygenpubmW1fRrNbNLrqzndCyY/M2471MlQcYAvrSvl5GPHz8eGp3oYuHPTz2GY2cmExqpKTTJFiVuUTBOk2vzSRRYyjk5775bW/vEW3JEJrnl1CFc0xxtYUZsf76N5F53njT/pcb4xhJVbkymetw2IfPsaifZiDVvYK3DSNk4O5vJlPuS3D1OV3QMjLyaMCqNKR7ORgN7a1PN1gRGnh774dChsVOIfEmmzBO9bi93bSPdOf5LvuW2Xh5koiOQkwxY7ikU+fLM23WfHT8OmcrtJ1mBOYZcC3n7hqchrz7Q0jL3xx8f/XAoJs+tZCbZneftfCU+/rLMmIkfZjyAMSDzcnMJ3kgwZNCY6FjmdsiIjPU2ZasgWSRKFYMmuZoiH5g+enRujvk4cLmcnsdd+8qV5LGBSGRFzsWiwhkfmS+TH4f8F8FU7CmbzdofZod308k3h6q9ofqOBLIRleQ/Tp062jI39zewUaw7BOflzwAAAABJRU5ErkJggg==\0" ;
914pub 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" ;
915pub const ZEND_EXTENSION_API_NO: u32 = 320170718;
916pub const ZEND_EXTMSG_NEW_EXTENSION: u32 = 1;
917pub const ZEND_EXTENSIONS_HAVE_OP_ARRAY_CTOR: u32 = 1;
918pub const ZEND_EXTENSIONS_HAVE_OP_ARRAY_DTOR: u32 = 2;
919pub const ZEND_EXTENSIONS_HAVE_OP_ARRAY_HANDLER: u32 = 4;
920pub const ZEND_EXTENSIONS_HAVE_OP_ARRAY_PERSIST_CALC: u32 = 8;
921pub const ZEND_EXTENSIONS_HAVE_OP_ARRAY_PERSIST: u32 = 16;
922pub type size_t = ::std::os::raw::c_ulong;
923pub type __uint8_t = ::std::os::raw::c_uchar;
924pub type __uint16_t = ::std::os::raw::c_ushort;
925pub type __uint32_t = ::std::os::raw::c_uint;
926pub type __int64_t = ::std::os::raw::c_long;
927pub type __uint64_t = ::std::os::raw::c_ulong;
928pub type __dev_t = ::std::os::raw::c_ulong;
929pub type __uid_t = ::std::os::raw::c_uint;
930pub type __gid_t = ::std::os::raw::c_uint;
931pub type __ino_t = ::std::os::raw::c_ulong;
932pub type __mode_t = ::std::os::raw::c_uint;
933pub type __nlink_t = ::std::os::raw::c_ulong;
934pub type __off_t = ::std::os::raw::c_long;
935pub type __off64_t = ::std::os::raw::c_long;
936pub type __pid_t = ::std::os::raw::c_int;
937pub type __clock_t = ::std::os::raw::c_long;
938pub type __time_t = ::std::os::raw::c_long;
939pub type __suseconds_t = ::std::os::raw::c_long;
940pub type __blksize_t = ::std::os::raw::c_long;
941pub type __blkcnt_t = ::std::os::raw::c_long;
942pub type __syscall_slong_t = ::std::os::raw::c_long;
943pub type __socklen_t = ::std::os::raw::c_uint;
944pub type time_t = __time_t;
945#[repr(C)]
946#[derive(Debug, Copy, Clone)]
947pub struct __sigset_t {
948    pub __val: [::std::os::raw::c_ulong; 16usize],
949}
950#[test]
951fn bindgen_test_layout___sigset_t() {
952    assert_eq!(
953        ::std::mem::size_of::<__sigset_t>(),
954        128usize,
955        concat!("Size of: ", stringify!(__sigset_t))
956    );
957    assert_eq!(
958        ::std::mem::align_of::<__sigset_t>(),
959        8usize,
960        concat!("Alignment of ", stringify!(__sigset_t))
961    );
962    assert_eq!(
963        unsafe { &(*(::std::ptr::null::<__sigset_t>())).__val as *const _ as usize },
964        0usize,
965        concat!(
966            "Offset of field: ",
967            stringify!(__sigset_t),
968            "::",
969            stringify!(__val)
970        )
971    );
972}
973#[repr(C)]
974#[derive(Debug, Copy, Clone)]
975pub struct timeval {
976    pub tv_sec: __time_t,
977    pub tv_usec: __suseconds_t,
978}
979#[test]
980fn bindgen_test_layout_timeval() {
981    assert_eq!(
982        ::std::mem::size_of::<timeval>(),
983        16usize,
984        concat!("Size of: ", stringify!(timeval))
985    );
986    assert_eq!(
987        ::std::mem::align_of::<timeval>(),
988        8usize,
989        concat!("Alignment of ", stringify!(timeval))
990    );
991    assert_eq!(
992        unsafe { &(*(::std::ptr::null::<timeval>())).tv_sec as *const _ as usize },
993        0usize,
994        concat!(
995            "Offset of field: ",
996            stringify!(timeval),
997            "::",
998            stringify!(tv_sec)
999        )
1000    );
1001    assert_eq!(
1002        unsafe { &(*(::std::ptr::null::<timeval>())).tv_usec as *const _ as usize },
1003        8usize,
1004        concat!(
1005            "Offset of field: ",
1006            stringify!(timeval),
1007            "::",
1008            stringify!(tv_usec)
1009        )
1010    );
1011}
1012#[repr(C)]
1013#[derive(Debug, Copy, Clone)]
1014pub struct timespec {
1015    pub tv_sec: __time_t,
1016    pub tv_nsec: __syscall_slong_t,
1017}
1018#[test]
1019fn bindgen_test_layout_timespec() {
1020    assert_eq!(
1021        ::std::mem::size_of::<timespec>(),
1022        16usize,
1023        concat!("Size of: ", stringify!(timespec))
1024    );
1025    assert_eq!(
1026        ::std::mem::align_of::<timespec>(),
1027        8usize,
1028        concat!("Alignment of ", stringify!(timespec))
1029    );
1030    assert_eq!(
1031        unsafe { &(*(::std::ptr::null::<timespec>())).tv_sec as *const _ as usize },
1032        0usize,
1033        concat!(
1034            "Offset of field: ",
1035            stringify!(timespec),
1036            "::",
1037            stringify!(tv_sec)
1038        )
1039    );
1040    assert_eq!(
1041        unsafe { &(*(::std::ptr::null::<timespec>())).tv_nsec as *const _ as usize },
1042        8usize,
1043        concat!(
1044            "Offset of field: ",
1045            stringify!(timespec),
1046            "::",
1047            stringify!(tv_nsec)
1048        )
1049    );
1050}
1051pub type va_list = __builtin_va_list;
1052pub type FILE = _IO_FILE;
1053#[repr(C)]
1054#[derive(Debug, Copy, Clone)]
1055pub struct _IO_marker {
1056    _unused: [u8; 0],
1057}
1058#[repr(C)]
1059#[derive(Debug, Copy, Clone)]
1060pub struct _IO_codecvt {
1061    _unused: [u8; 0],
1062}
1063#[repr(C)]
1064#[derive(Debug, Copy, Clone)]
1065pub struct _IO_wide_data {
1066    _unused: [u8; 0],
1067}
1068pub type _IO_lock_t = ::std::os::raw::c_void;
1069#[repr(C)]
1070#[derive(Debug, Copy, Clone)]
1071pub struct _IO_FILE {
1072    pub _flags: ::std::os::raw::c_int,
1073    pub _IO_read_ptr: *mut ::std::os::raw::c_char,
1074    pub _IO_read_end: *mut ::std::os::raw::c_char,
1075    pub _IO_read_base: *mut ::std::os::raw::c_char,
1076    pub _IO_write_base: *mut ::std::os::raw::c_char,
1077    pub _IO_write_ptr: *mut ::std::os::raw::c_char,
1078    pub _IO_write_end: *mut ::std::os::raw::c_char,
1079    pub _IO_buf_base: *mut ::std::os::raw::c_char,
1080    pub _IO_buf_end: *mut ::std::os::raw::c_char,
1081    pub _IO_save_base: *mut ::std::os::raw::c_char,
1082    pub _IO_backup_base: *mut ::std::os::raw::c_char,
1083    pub _IO_save_end: *mut ::std::os::raw::c_char,
1084    pub _markers: *mut _IO_marker,
1085    pub _chain: *mut _IO_FILE,
1086    pub _fileno: ::std::os::raw::c_int,
1087    pub _flags2: ::std::os::raw::c_int,
1088    pub _old_offset: __off_t,
1089    pub _cur_column: ::std::os::raw::c_ushort,
1090    pub _vtable_offset: ::std::os::raw::c_schar,
1091    pub _shortbuf: [::std::os::raw::c_char; 1usize],
1092    pub _lock: *mut _IO_lock_t,
1093    pub _offset: __off64_t,
1094    pub _codecvt: *mut _IO_codecvt,
1095    pub _wide_data: *mut _IO_wide_data,
1096    pub _freeres_list: *mut _IO_FILE,
1097    pub _freeres_buf: *mut ::std::os::raw::c_void,
1098    pub __pad5: size_t,
1099    pub _mode: ::std::os::raw::c_int,
1100    pub _unused2: [::std::os::raw::c_char; 20usize],
1101}
1102#[test]
1103fn bindgen_test_layout__IO_FILE() {
1104    assert_eq!(
1105        ::std::mem::size_of::<_IO_FILE>(),
1106        216usize,
1107        concat!("Size of: ", stringify!(_IO_FILE))
1108    );
1109    assert_eq!(
1110        ::std::mem::align_of::<_IO_FILE>(),
1111        8usize,
1112        concat!("Alignment of ", stringify!(_IO_FILE))
1113    );
1114    assert_eq!(
1115        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._flags as *const _ as usize },
1116        0usize,
1117        concat!(
1118            "Offset of field: ",
1119            stringify!(_IO_FILE),
1120            "::",
1121            stringify!(_flags)
1122        )
1123    );
1124    assert_eq!(
1125        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_ptr as *const _ as usize },
1126        8usize,
1127        concat!(
1128            "Offset of field: ",
1129            stringify!(_IO_FILE),
1130            "::",
1131            stringify!(_IO_read_ptr)
1132        )
1133    );
1134    assert_eq!(
1135        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_end as *const _ as usize },
1136        16usize,
1137        concat!(
1138            "Offset of field: ",
1139            stringify!(_IO_FILE),
1140            "::",
1141            stringify!(_IO_read_end)
1142        )
1143    );
1144    assert_eq!(
1145        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_base as *const _ as usize },
1146        24usize,
1147        concat!(
1148            "Offset of field: ",
1149            stringify!(_IO_FILE),
1150            "::",
1151            stringify!(_IO_read_base)
1152        )
1153    );
1154    assert_eq!(
1155        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_base as *const _ as usize },
1156        32usize,
1157        concat!(
1158            "Offset of field: ",
1159            stringify!(_IO_FILE),
1160            "::",
1161            stringify!(_IO_write_base)
1162        )
1163    );
1164    assert_eq!(
1165        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_ptr as *const _ as usize },
1166        40usize,
1167        concat!(
1168            "Offset of field: ",
1169            stringify!(_IO_FILE),
1170            "::",
1171            stringify!(_IO_write_ptr)
1172        )
1173    );
1174    assert_eq!(
1175        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_end as *const _ as usize },
1176        48usize,
1177        concat!(
1178            "Offset of field: ",
1179            stringify!(_IO_FILE),
1180            "::",
1181            stringify!(_IO_write_end)
1182        )
1183    );
1184    assert_eq!(
1185        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_buf_base as *const _ as usize },
1186        56usize,
1187        concat!(
1188            "Offset of field: ",
1189            stringify!(_IO_FILE),
1190            "::",
1191            stringify!(_IO_buf_base)
1192        )
1193    );
1194    assert_eq!(
1195        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_buf_end as *const _ as usize },
1196        64usize,
1197        concat!(
1198            "Offset of field: ",
1199            stringify!(_IO_FILE),
1200            "::",
1201            stringify!(_IO_buf_end)
1202        )
1203    );
1204    assert_eq!(
1205        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_save_base as *const _ as usize },
1206        72usize,
1207        concat!(
1208            "Offset of field: ",
1209            stringify!(_IO_FILE),
1210            "::",
1211            stringify!(_IO_save_base)
1212        )
1213    );
1214    assert_eq!(
1215        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_backup_base as *const _ as usize },
1216        80usize,
1217        concat!(
1218            "Offset of field: ",
1219            stringify!(_IO_FILE),
1220            "::",
1221            stringify!(_IO_backup_base)
1222        )
1223    );
1224    assert_eq!(
1225        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_save_end as *const _ as usize },
1226        88usize,
1227        concat!(
1228            "Offset of field: ",
1229            stringify!(_IO_FILE),
1230            "::",
1231            stringify!(_IO_save_end)
1232        )
1233    );
1234    assert_eq!(
1235        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._markers as *const _ as usize },
1236        96usize,
1237        concat!(
1238            "Offset of field: ",
1239            stringify!(_IO_FILE),
1240            "::",
1241            stringify!(_markers)
1242        )
1243    );
1244    assert_eq!(
1245        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._chain as *const _ as usize },
1246        104usize,
1247        concat!(
1248            "Offset of field: ",
1249            stringify!(_IO_FILE),
1250            "::",
1251            stringify!(_chain)
1252        )
1253    );
1254    assert_eq!(
1255        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._fileno as *const _ as usize },
1256        112usize,
1257        concat!(
1258            "Offset of field: ",
1259            stringify!(_IO_FILE),
1260            "::",
1261            stringify!(_fileno)
1262        )
1263    );
1264    assert_eq!(
1265        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._flags2 as *const _ as usize },
1266        116usize,
1267        concat!(
1268            "Offset of field: ",
1269            stringify!(_IO_FILE),
1270            "::",
1271            stringify!(_flags2)
1272        )
1273    );
1274    assert_eq!(
1275        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._old_offset as *const _ as usize },
1276        120usize,
1277        concat!(
1278            "Offset of field: ",
1279            stringify!(_IO_FILE),
1280            "::",
1281            stringify!(_old_offset)
1282        )
1283    );
1284    assert_eq!(
1285        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._cur_column as *const _ as usize },
1286        128usize,
1287        concat!(
1288            "Offset of field: ",
1289            stringify!(_IO_FILE),
1290            "::",
1291            stringify!(_cur_column)
1292        )
1293    );
1294    assert_eq!(
1295        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._vtable_offset as *const _ as usize },
1296        130usize,
1297        concat!(
1298            "Offset of field: ",
1299            stringify!(_IO_FILE),
1300            "::",
1301            stringify!(_vtable_offset)
1302        )
1303    );
1304    assert_eq!(
1305        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._shortbuf as *const _ as usize },
1306        131usize,
1307        concat!(
1308            "Offset of field: ",
1309            stringify!(_IO_FILE),
1310            "::",
1311            stringify!(_shortbuf)
1312        )
1313    );
1314    assert_eq!(
1315        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._lock as *const _ as usize },
1316        136usize,
1317        concat!(
1318            "Offset of field: ",
1319            stringify!(_IO_FILE),
1320            "::",
1321            stringify!(_lock)
1322        )
1323    );
1324    assert_eq!(
1325        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._offset as *const _ as usize },
1326        144usize,
1327        concat!(
1328            "Offset of field: ",
1329            stringify!(_IO_FILE),
1330            "::",
1331            stringify!(_offset)
1332        )
1333    );
1334    assert_eq!(
1335        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._codecvt as *const _ as usize },
1336        152usize,
1337        concat!(
1338            "Offset of field: ",
1339            stringify!(_IO_FILE),
1340            "::",
1341            stringify!(_codecvt)
1342        )
1343    );
1344    assert_eq!(
1345        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._wide_data as *const _ as usize },
1346        160usize,
1347        concat!(
1348            "Offset of field: ",
1349            stringify!(_IO_FILE),
1350            "::",
1351            stringify!(_wide_data)
1352        )
1353    );
1354    assert_eq!(
1355        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._freeres_list as *const _ as usize },
1356        168usize,
1357        concat!(
1358            "Offset of field: ",
1359            stringify!(_IO_FILE),
1360            "::",
1361            stringify!(_freeres_list)
1362        )
1363    );
1364    assert_eq!(
1365        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._freeres_buf as *const _ as usize },
1366        176usize,
1367        concat!(
1368            "Offset of field: ",
1369            stringify!(_IO_FILE),
1370            "::",
1371            stringify!(_freeres_buf)
1372        )
1373    );
1374    assert_eq!(
1375        unsafe { &(*(::std::ptr::null::<_IO_FILE>())).__pad5 as *const _ as usize },
1376        184usize,
1377        concat!(
1378            "Offset of field: ",
1379            stringify!(_IO_FILE),
1380            "::",
1381            stringify!(__pad5)
1382        )
1383    );
1384    assert_eq!(
1385        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._mode as *const _ as usize },
1386        192usize,
1387        concat!(
1388            "Offset of field: ",
1389            stringify!(_IO_FILE),
1390            "::",
1391            stringify!(_mode)
1392        )
1393    );
1394    assert_eq!(
1395        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._unused2 as *const _ as usize },
1396        196usize,
1397        concat!(
1398            "Offset of field: ",
1399            stringify!(_IO_FILE),
1400            "::",
1401            stringify!(_unused2)
1402        )
1403    );
1404}
1405pub type zend_long = i64;
1406pub type zend_ulong = u64;
1407pub type zend_off_t = i64;
1408pub type zend_bool = ::std::os::raw::c_uchar;
1409pub type zend_uchar = ::std::os::raw::c_uchar;
1410pub const ZEND_RESULT_CODE_SUCCESS: ZEND_RESULT_CODE = 0;
1411pub const ZEND_RESULT_CODE_FAILURE: ZEND_RESULT_CODE = -1;
1412pub type ZEND_RESULT_CODE = ::std::os::raw::c_int;
1413pub type zend_intptr_t = isize;
1414pub type zend_uintptr_t = usize;
1415pub type zend_object_handlers = _zend_object_handlers;
1416pub type zend_class_entry = _zend_class_entry;
1417pub type zend_function = _zend_function;
1418pub type zend_execute_data = _zend_execute_data;
1419pub type zval = _zval_struct;
1420pub type zend_refcounted = _zend_refcounted;
1421pub type zend_string = _zend_string;
1422pub type zend_array = _zend_array;
1423pub type zend_object = _zend_object;
1424pub type zend_resource = _zend_resource;
1425pub type zend_reference = _zend_reference;
1426pub type zend_ast_ref = _zend_ast_ref;
1427pub type zend_ast = _zend_ast;
1428pub type compare_func_t = ::std::option::Option<
1429    unsafe extern "C" fn(
1430        arg1: *const ::std::os::raw::c_void,
1431        arg2: *const ::std::os::raw::c_void,
1432    ) -> ::std::os::raw::c_int,
1433>;
1434pub type swap_func_t = ::std::option::Option<
1435    unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void, arg2: *mut ::std::os::raw::c_void),
1436>;
1437pub type sort_func_t = ::std::option::Option<
1438    unsafe extern "C" fn(
1439        arg1: *mut ::std::os::raw::c_void,
1440        arg2: size_t,
1441        arg3: size_t,
1442        arg4: compare_func_t,
1443        arg5: swap_func_t,
1444    ),
1445>;
1446pub type dtor_func_t = ::std::option::Option<unsafe extern "C" fn(pDest: *mut zval)>;
1447pub type copy_ctor_func_t = ::std::option::Option<unsafe extern "C" fn(pElement: *mut zval)>;
1448pub type zend_type = usize;
1449#[repr(C)]
1450#[derive(Copy, Clone)]
1451pub union _zend_value {
1452    pub lval: zend_long,
1453    pub dval: f64,
1454    pub counted: *mut zend_refcounted,
1455    pub str_: *mut zend_string,
1456    pub arr: *mut zend_array,
1457    pub obj: *mut zend_object,
1458    pub res: *mut zend_resource,
1459    pub ref_: *mut zend_reference,
1460    pub ast: *mut zend_ast_ref,
1461    pub zv: *mut zval,
1462    pub ptr: *mut ::std::os::raw::c_void,
1463    pub ce: *mut zend_class_entry,
1464    pub func: *mut zend_function,
1465    pub ww: _zend_value__bindgen_ty_1,
1466    _bindgen_union_align: u64,
1467}
1468#[repr(C)]
1469#[derive(Debug, Copy, Clone)]
1470pub struct _zend_value__bindgen_ty_1 {
1471    pub w1: u32,
1472    pub w2: u32,
1473}
1474#[test]
1475fn bindgen_test_layout__zend_value__bindgen_ty_1() {
1476    assert_eq!(
1477        ::std::mem::size_of::<_zend_value__bindgen_ty_1>(),
1478        8usize,
1479        concat!("Size of: ", stringify!(_zend_value__bindgen_ty_1))
1480    );
1481    assert_eq!(
1482        ::std::mem::align_of::<_zend_value__bindgen_ty_1>(),
1483        4usize,
1484        concat!("Alignment of ", stringify!(_zend_value__bindgen_ty_1))
1485    );
1486    assert_eq!(
1487        unsafe { &(*(::std::ptr::null::<_zend_value__bindgen_ty_1>())).w1 as *const _ as usize },
1488        0usize,
1489        concat!(
1490            "Offset of field: ",
1491            stringify!(_zend_value__bindgen_ty_1),
1492            "::",
1493            stringify!(w1)
1494        )
1495    );
1496    assert_eq!(
1497        unsafe { &(*(::std::ptr::null::<_zend_value__bindgen_ty_1>())).w2 as *const _ as usize },
1498        4usize,
1499        concat!(
1500            "Offset of field: ",
1501            stringify!(_zend_value__bindgen_ty_1),
1502            "::",
1503            stringify!(w2)
1504        )
1505    );
1506}
1507#[test]
1508fn bindgen_test_layout__zend_value() {
1509    assert_eq!(
1510        ::std::mem::size_of::<_zend_value>(),
1511        8usize,
1512        concat!("Size of: ", stringify!(_zend_value))
1513    );
1514    assert_eq!(
1515        ::std::mem::align_of::<_zend_value>(),
1516        8usize,
1517        concat!("Alignment of ", stringify!(_zend_value))
1518    );
1519    assert_eq!(
1520        unsafe { &(*(::std::ptr::null::<_zend_value>())).lval as *const _ as usize },
1521        0usize,
1522        concat!(
1523            "Offset of field: ",
1524            stringify!(_zend_value),
1525            "::",
1526            stringify!(lval)
1527        )
1528    );
1529    assert_eq!(
1530        unsafe { &(*(::std::ptr::null::<_zend_value>())).dval as *const _ as usize },
1531        0usize,
1532        concat!(
1533            "Offset of field: ",
1534            stringify!(_zend_value),
1535            "::",
1536            stringify!(dval)
1537        )
1538    );
1539    assert_eq!(
1540        unsafe { &(*(::std::ptr::null::<_zend_value>())).counted as *const _ as usize },
1541        0usize,
1542        concat!(
1543            "Offset of field: ",
1544            stringify!(_zend_value),
1545            "::",
1546            stringify!(counted)
1547        )
1548    );
1549    assert_eq!(
1550        unsafe { &(*(::std::ptr::null::<_zend_value>())).str_ as *const _ as usize },
1551        0usize,
1552        concat!(
1553            "Offset of field: ",
1554            stringify!(_zend_value),
1555            "::",
1556            stringify!(str_)
1557        )
1558    );
1559    assert_eq!(
1560        unsafe { &(*(::std::ptr::null::<_zend_value>())).arr as *const _ as usize },
1561        0usize,
1562        concat!(
1563            "Offset of field: ",
1564            stringify!(_zend_value),
1565            "::",
1566            stringify!(arr)
1567        )
1568    );
1569    assert_eq!(
1570        unsafe { &(*(::std::ptr::null::<_zend_value>())).obj as *const _ as usize },
1571        0usize,
1572        concat!(
1573            "Offset of field: ",
1574            stringify!(_zend_value),
1575            "::",
1576            stringify!(obj)
1577        )
1578    );
1579    assert_eq!(
1580        unsafe { &(*(::std::ptr::null::<_zend_value>())).res as *const _ as usize },
1581        0usize,
1582        concat!(
1583            "Offset of field: ",
1584            stringify!(_zend_value),
1585            "::",
1586            stringify!(res)
1587        )
1588    );
1589    assert_eq!(
1590        unsafe { &(*(::std::ptr::null::<_zend_value>())).ref_ as *const _ as usize },
1591        0usize,
1592        concat!(
1593            "Offset of field: ",
1594            stringify!(_zend_value),
1595            "::",
1596            stringify!(ref_)
1597        )
1598    );
1599    assert_eq!(
1600        unsafe { &(*(::std::ptr::null::<_zend_value>())).ast as *const _ as usize },
1601        0usize,
1602        concat!(
1603            "Offset of field: ",
1604            stringify!(_zend_value),
1605            "::",
1606            stringify!(ast)
1607        )
1608    );
1609    assert_eq!(
1610        unsafe { &(*(::std::ptr::null::<_zend_value>())).zv as *const _ as usize },
1611        0usize,
1612        concat!(
1613            "Offset of field: ",
1614            stringify!(_zend_value),
1615            "::",
1616            stringify!(zv)
1617        )
1618    );
1619    assert_eq!(
1620        unsafe { &(*(::std::ptr::null::<_zend_value>())).ptr as *const _ as usize },
1621        0usize,
1622        concat!(
1623            "Offset of field: ",
1624            stringify!(_zend_value),
1625            "::",
1626            stringify!(ptr)
1627        )
1628    );
1629    assert_eq!(
1630        unsafe { &(*(::std::ptr::null::<_zend_value>())).ce as *const _ as usize },
1631        0usize,
1632        concat!(
1633            "Offset of field: ",
1634            stringify!(_zend_value),
1635            "::",
1636            stringify!(ce)
1637        )
1638    );
1639    assert_eq!(
1640        unsafe { &(*(::std::ptr::null::<_zend_value>())).func as *const _ as usize },
1641        0usize,
1642        concat!(
1643            "Offset of field: ",
1644            stringify!(_zend_value),
1645            "::",
1646            stringify!(func)
1647        )
1648    );
1649    assert_eq!(
1650        unsafe { &(*(::std::ptr::null::<_zend_value>())).ww as *const _ as usize },
1651        0usize,
1652        concat!(
1653            "Offset of field: ",
1654            stringify!(_zend_value),
1655            "::",
1656            stringify!(ww)
1657        )
1658    );
1659}
1660pub type zend_value = _zend_value;
1661#[repr(C)]
1662#[derive(Copy, Clone)]
1663pub struct _zval_struct {
1664    pub value: zend_value,
1665    pub u1: _zval_struct__bindgen_ty_1,
1666    pub u2: _zval_struct__bindgen_ty_2,
1667}
1668#[repr(C)]
1669#[derive(Copy, Clone)]
1670pub union _zval_struct__bindgen_ty_1 {
1671    pub v: _zval_struct__bindgen_ty_1__bindgen_ty_1,
1672    pub type_info: u32,
1673    _bindgen_union_align: u32,
1674}
1675#[repr(C)]
1676#[derive(Debug, Copy, Clone)]
1677pub struct _zval_struct__bindgen_ty_1__bindgen_ty_1 {
1678    pub type_: zend_uchar,
1679    pub type_flags: zend_uchar,
1680    pub const_flags: zend_uchar,
1681    pub reserved: zend_uchar,
1682}
1683#[test]
1684fn bindgen_test_layout__zval_struct__bindgen_ty_1__bindgen_ty_1() {
1685    assert_eq!(
1686        ::std::mem::size_of::<_zval_struct__bindgen_ty_1__bindgen_ty_1>(),
1687        4usize,
1688        concat!(
1689            "Size of: ",
1690            stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1)
1691        )
1692    );
1693    assert_eq!(
1694        ::std::mem::align_of::<_zval_struct__bindgen_ty_1__bindgen_ty_1>(),
1695        1usize,
1696        concat!(
1697            "Alignment of ",
1698            stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1)
1699        )
1700    );
1701    assert_eq!(
1702        unsafe {
1703            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_1__bindgen_ty_1>())).type_ as *const _
1704                as usize
1705        },
1706        0usize,
1707        concat!(
1708            "Offset of field: ",
1709            stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1),
1710            "::",
1711            stringify!(type_)
1712        )
1713    );
1714    assert_eq!(
1715        unsafe {
1716            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_1__bindgen_ty_1>())).type_flags
1717                as *const _ as usize
1718        },
1719        1usize,
1720        concat!(
1721            "Offset of field: ",
1722            stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1),
1723            "::",
1724            stringify!(type_flags)
1725        )
1726    );
1727    assert_eq!(
1728        unsafe {
1729            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_1__bindgen_ty_1>())).const_flags
1730                as *const _ as usize
1731        },
1732        2usize,
1733        concat!(
1734            "Offset of field: ",
1735            stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1),
1736            "::",
1737            stringify!(const_flags)
1738        )
1739    );
1740    assert_eq!(
1741        unsafe {
1742            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_1__bindgen_ty_1>())).reserved
1743                as *const _ as usize
1744        },
1745        3usize,
1746        concat!(
1747            "Offset of field: ",
1748            stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1),
1749            "::",
1750            stringify!(reserved)
1751        )
1752    );
1753}
1754#[test]
1755fn bindgen_test_layout__zval_struct__bindgen_ty_1() {
1756    assert_eq!(
1757        ::std::mem::size_of::<_zval_struct__bindgen_ty_1>(),
1758        4usize,
1759        concat!("Size of: ", stringify!(_zval_struct__bindgen_ty_1))
1760    );
1761    assert_eq!(
1762        ::std::mem::align_of::<_zval_struct__bindgen_ty_1>(),
1763        4usize,
1764        concat!("Alignment of ", stringify!(_zval_struct__bindgen_ty_1))
1765    );
1766    assert_eq!(
1767        unsafe { &(*(::std::ptr::null::<_zval_struct__bindgen_ty_1>())).v as *const _ as usize },
1768        0usize,
1769        concat!(
1770            "Offset of field: ",
1771            stringify!(_zval_struct__bindgen_ty_1),
1772            "::",
1773            stringify!(v)
1774        )
1775    );
1776    assert_eq!(
1777        unsafe {
1778            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_1>())).type_info as *const _ as usize
1779        },
1780        0usize,
1781        concat!(
1782            "Offset of field: ",
1783            stringify!(_zval_struct__bindgen_ty_1),
1784            "::",
1785            stringify!(type_info)
1786        )
1787    );
1788}
1789#[repr(C)]
1790#[derive(Copy, Clone)]
1791pub union _zval_struct__bindgen_ty_2 {
1792    pub next: u32,
1793    pub cache_slot: u32,
1794    pub lineno: u32,
1795    pub num_args: u32,
1796    pub fe_pos: u32,
1797    pub fe_iter_idx: u32,
1798    pub access_flags: u32,
1799    pub property_guard: u32,
1800    pub extra: u32,
1801    _bindgen_union_align: u32,
1802}
1803#[test]
1804fn bindgen_test_layout__zval_struct__bindgen_ty_2() {
1805    assert_eq!(
1806        ::std::mem::size_of::<_zval_struct__bindgen_ty_2>(),
1807        4usize,
1808        concat!("Size of: ", stringify!(_zval_struct__bindgen_ty_2))
1809    );
1810    assert_eq!(
1811        ::std::mem::align_of::<_zval_struct__bindgen_ty_2>(),
1812        4usize,
1813        concat!("Alignment of ", stringify!(_zval_struct__bindgen_ty_2))
1814    );
1815    assert_eq!(
1816        unsafe { &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).next as *const _ as usize },
1817        0usize,
1818        concat!(
1819            "Offset of field: ",
1820            stringify!(_zval_struct__bindgen_ty_2),
1821            "::",
1822            stringify!(next)
1823        )
1824    );
1825    assert_eq!(
1826        unsafe {
1827            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).cache_slot as *const _ as usize
1828        },
1829        0usize,
1830        concat!(
1831            "Offset of field: ",
1832            stringify!(_zval_struct__bindgen_ty_2),
1833            "::",
1834            stringify!(cache_slot)
1835        )
1836    );
1837    assert_eq!(
1838        unsafe {
1839            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).lineno as *const _ as usize
1840        },
1841        0usize,
1842        concat!(
1843            "Offset of field: ",
1844            stringify!(_zval_struct__bindgen_ty_2),
1845            "::",
1846            stringify!(lineno)
1847        )
1848    );
1849    assert_eq!(
1850        unsafe {
1851            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).num_args as *const _ as usize
1852        },
1853        0usize,
1854        concat!(
1855            "Offset of field: ",
1856            stringify!(_zval_struct__bindgen_ty_2),
1857            "::",
1858            stringify!(num_args)
1859        )
1860    );
1861    assert_eq!(
1862        unsafe {
1863            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).fe_pos as *const _ as usize
1864        },
1865        0usize,
1866        concat!(
1867            "Offset of field: ",
1868            stringify!(_zval_struct__bindgen_ty_2),
1869            "::",
1870            stringify!(fe_pos)
1871        )
1872    );
1873    assert_eq!(
1874        unsafe {
1875            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).fe_iter_idx as *const _ as usize
1876        },
1877        0usize,
1878        concat!(
1879            "Offset of field: ",
1880            stringify!(_zval_struct__bindgen_ty_2),
1881            "::",
1882            stringify!(fe_iter_idx)
1883        )
1884    );
1885    assert_eq!(
1886        unsafe {
1887            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).access_flags as *const _ as usize
1888        },
1889        0usize,
1890        concat!(
1891            "Offset of field: ",
1892            stringify!(_zval_struct__bindgen_ty_2),
1893            "::",
1894            stringify!(access_flags)
1895        )
1896    );
1897    assert_eq!(
1898        unsafe {
1899            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).property_guard as *const _
1900                as usize
1901        },
1902        0usize,
1903        concat!(
1904            "Offset of field: ",
1905            stringify!(_zval_struct__bindgen_ty_2),
1906            "::",
1907            stringify!(property_guard)
1908        )
1909    );
1910    assert_eq!(
1911        unsafe {
1912            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).extra as *const _ as usize
1913        },
1914        0usize,
1915        concat!(
1916            "Offset of field: ",
1917            stringify!(_zval_struct__bindgen_ty_2),
1918            "::",
1919            stringify!(extra)
1920        )
1921    );
1922}
1923#[test]
1924fn bindgen_test_layout__zval_struct() {
1925    assert_eq!(
1926        ::std::mem::size_of::<_zval_struct>(),
1927        16usize,
1928        concat!("Size of: ", stringify!(_zval_struct))
1929    );
1930    assert_eq!(
1931        ::std::mem::align_of::<_zval_struct>(),
1932        8usize,
1933        concat!("Alignment of ", stringify!(_zval_struct))
1934    );
1935    assert_eq!(
1936        unsafe { &(*(::std::ptr::null::<_zval_struct>())).value as *const _ as usize },
1937        0usize,
1938        concat!(
1939            "Offset of field: ",
1940            stringify!(_zval_struct),
1941            "::",
1942            stringify!(value)
1943        )
1944    );
1945    assert_eq!(
1946        unsafe { &(*(::std::ptr::null::<_zval_struct>())).u1 as *const _ as usize },
1947        8usize,
1948        concat!(
1949            "Offset of field: ",
1950            stringify!(_zval_struct),
1951            "::",
1952            stringify!(u1)
1953        )
1954    );
1955    assert_eq!(
1956        unsafe { &(*(::std::ptr::null::<_zval_struct>())).u2 as *const _ as usize },
1957        12usize,
1958        concat!(
1959            "Offset of field: ",
1960            stringify!(_zval_struct),
1961            "::",
1962            stringify!(u2)
1963        )
1964    );
1965}
1966#[repr(C)]
1967#[derive(Copy, Clone)]
1968pub struct _zend_refcounted_h {
1969    pub refcount: u32,
1970    pub u: _zend_refcounted_h__bindgen_ty_1,
1971}
1972#[repr(C)]
1973#[derive(Copy, Clone)]
1974pub union _zend_refcounted_h__bindgen_ty_1 {
1975    pub v: _zend_refcounted_h__bindgen_ty_1__bindgen_ty_1,
1976    pub type_info: u32,
1977    _bindgen_union_align: u32,
1978}
1979#[repr(C)]
1980#[derive(Debug, Copy, Clone)]
1981pub struct _zend_refcounted_h__bindgen_ty_1__bindgen_ty_1 {
1982    pub type_: zend_uchar,
1983    pub flags: zend_uchar,
1984    pub gc_info: u16,
1985}
1986#[test]
1987fn bindgen_test_layout__zend_refcounted_h__bindgen_ty_1__bindgen_ty_1() {
1988    assert_eq!(
1989        ::std::mem::size_of::<_zend_refcounted_h__bindgen_ty_1__bindgen_ty_1>(),
1990        4usize,
1991        concat!(
1992            "Size of: ",
1993            stringify!(_zend_refcounted_h__bindgen_ty_1__bindgen_ty_1)
1994        )
1995    );
1996    assert_eq!(
1997        ::std::mem::align_of::<_zend_refcounted_h__bindgen_ty_1__bindgen_ty_1>(),
1998        2usize,
1999        concat!(
2000            "Alignment of ",
2001            stringify!(_zend_refcounted_h__bindgen_ty_1__bindgen_ty_1)
2002        )
2003    );
2004    assert_eq!(
2005        unsafe {
2006            &(*(::std::ptr::null::<_zend_refcounted_h__bindgen_ty_1__bindgen_ty_1>())).type_
2007                as *const _ as usize
2008        },
2009        0usize,
2010        concat!(
2011            "Offset of field: ",
2012            stringify!(_zend_refcounted_h__bindgen_ty_1__bindgen_ty_1),
2013            "::",
2014            stringify!(type_)
2015        )
2016    );
2017    assert_eq!(
2018        unsafe {
2019            &(*(::std::ptr::null::<_zend_refcounted_h__bindgen_ty_1__bindgen_ty_1>())).flags
2020                as *const _ as usize
2021        },
2022        1usize,
2023        concat!(
2024            "Offset of field: ",
2025            stringify!(_zend_refcounted_h__bindgen_ty_1__bindgen_ty_1),
2026            "::",
2027            stringify!(flags)
2028        )
2029    );
2030    assert_eq!(
2031        unsafe {
2032            &(*(::std::ptr::null::<_zend_refcounted_h__bindgen_ty_1__bindgen_ty_1>())).gc_info
2033                as *const _ as usize
2034        },
2035        2usize,
2036        concat!(
2037            "Offset of field: ",
2038            stringify!(_zend_refcounted_h__bindgen_ty_1__bindgen_ty_1),
2039            "::",
2040            stringify!(gc_info)
2041        )
2042    );
2043}
2044#[test]
2045fn bindgen_test_layout__zend_refcounted_h__bindgen_ty_1() {
2046    assert_eq!(
2047        ::std::mem::size_of::<_zend_refcounted_h__bindgen_ty_1>(),
2048        4usize,
2049        concat!("Size of: ", stringify!(_zend_refcounted_h__bindgen_ty_1))
2050    );
2051    assert_eq!(
2052        ::std::mem::align_of::<_zend_refcounted_h__bindgen_ty_1>(),
2053        4usize,
2054        concat!(
2055            "Alignment of ",
2056            stringify!(_zend_refcounted_h__bindgen_ty_1)
2057        )
2058    );
2059    assert_eq!(
2060        unsafe {
2061            &(*(::std::ptr::null::<_zend_refcounted_h__bindgen_ty_1>())).v as *const _ as usize
2062        },
2063        0usize,
2064        concat!(
2065            "Offset of field: ",
2066            stringify!(_zend_refcounted_h__bindgen_ty_1),
2067            "::",
2068            stringify!(v)
2069        )
2070    );
2071    assert_eq!(
2072        unsafe {
2073            &(*(::std::ptr::null::<_zend_refcounted_h__bindgen_ty_1>())).type_info as *const _
2074                as usize
2075        },
2076        0usize,
2077        concat!(
2078            "Offset of field: ",
2079            stringify!(_zend_refcounted_h__bindgen_ty_1),
2080            "::",
2081            stringify!(type_info)
2082        )
2083    );
2084}
2085#[test]
2086fn bindgen_test_layout__zend_refcounted_h() {
2087    assert_eq!(
2088        ::std::mem::size_of::<_zend_refcounted_h>(),
2089        8usize,
2090        concat!("Size of: ", stringify!(_zend_refcounted_h))
2091    );
2092    assert_eq!(
2093        ::std::mem::align_of::<_zend_refcounted_h>(),
2094        4usize,
2095        concat!("Alignment of ", stringify!(_zend_refcounted_h))
2096    );
2097    assert_eq!(
2098        unsafe { &(*(::std::ptr::null::<_zend_refcounted_h>())).refcount as *const _ as usize },
2099        0usize,
2100        concat!(
2101            "Offset of field: ",
2102            stringify!(_zend_refcounted_h),
2103            "::",
2104            stringify!(refcount)
2105        )
2106    );
2107    assert_eq!(
2108        unsafe { &(*(::std::ptr::null::<_zend_refcounted_h>())).u as *const _ as usize },
2109        4usize,
2110        concat!(
2111            "Offset of field: ",
2112            stringify!(_zend_refcounted_h),
2113            "::",
2114            stringify!(u)
2115        )
2116    );
2117}
2118pub type zend_refcounted_h = _zend_refcounted_h;
2119#[repr(C)]
2120#[derive(Copy, Clone)]
2121pub struct _zend_refcounted {
2122    pub gc: zend_refcounted_h,
2123}
2124#[test]
2125fn bindgen_test_layout__zend_refcounted() {
2126    assert_eq!(
2127        ::std::mem::size_of::<_zend_refcounted>(),
2128        8usize,
2129        concat!("Size of: ", stringify!(_zend_refcounted))
2130    );
2131    assert_eq!(
2132        ::std::mem::align_of::<_zend_refcounted>(),
2133        4usize,
2134        concat!("Alignment of ", stringify!(_zend_refcounted))
2135    );
2136    assert_eq!(
2137        unsafe { &(*(::std::ptr::null::<_zend_refcounted>())).gc as *const _ as usize },
2138        0usize,
2139        concat!(
2140            "Offset of field: ",
2141            stringify!(_zend_refcounted),
2142            "::",
2143            stringify!(gc)
2144        )
2145    );
2146}
2147#[repr(C)]
2148#[derive(Copy, Clone)]
2149pub struct _zend_string {
2150    pub gc: zend_refcounted_h,
2151    pub h: zend_ulong,
2152    pub len: size_t,
2153    pub val: [::std::os::raw::c_char; 1usize],
2154}
2155#[test]
2156fn bindgen_test_layout__zend_string() {
2157    assert_eq!(
2158        ::std::mem::size_of::<_zend_string>(),
2159        32usize,
2160        concat!("Size of: ", stringify!(_zend_string))
2161    );
2162    assert_eq!(
2163        ::std::mem::align_of::<_zend_string>(),
2164        8usize,
2165        concat!("Alignment of ", stringify!(_zend_string))
2166    );
2167    assert_eq!(
2168        unsafe { &(*(::std::ptr::null::<_zend_string>())).gc as *const _ as usize },
2169        0usize,
2170        concat!(
2171            "Offset of field: ",
2172            stringify!(_zend_string),
2173            "::",
2174            stringify!(gc)
2175        )
2176    );
2177    assert_eq!(
2178        unsafe { &(*(::std::ptr::null::<_zend_string>())).h as *const _ as usize },
2179        8usize,
2180        concat!(
2181            "Offset of field: ",
2182            stringify!(_zend_string),
2183            "::",
2184            stringify!(h)
2185        )
2186    );
2187    assert_eq!(
2188        unsafe { &(*(::std::ptr::null::<_zend_string>())).len as *const _ as usize },
2189        16usize,
2190        concat!(
2191            "Offset of field: ",
2192            stringify!(_zend_string),
2193            "::",
2194            stringify!(len)
2195        )
2196    );
2197    assert_eq!(
2198        unsafe { &(*(::std::ptr::null::<_zend_string>())).val as *const _ as usize },
2199        24usize,
2200        concat!(
2201            "Offset of field: ",
2202            stringify!(_zend_string),
2203            "::",
2204            stringify!(val)
2205        )
2206    );
2207}
2208#[repr(C)]
2209#[derive(Copy, Clone)]
2210pub struct _Bucket {
2211    pub val: zval,
2212    pub h: zend_ulong,
2213    pub key: *mut zend_string,
2214}
2215#[test]
2216fn bindgen_test_layout__Bucket() {
2217    assert_eq!(
2218        ::std::mem::size_of::<_Bucket>(),
2219        32usize,
2220        concat!("Size of: ", stringify!(_Bucket))
2221    );
2222    assert_eq!(
2223        ::std::mem::align_of::<_Bucket>(),
2224        8usize,
2225        concat!("Alignment of ", stringify!(_Bucket))
2226    );
2227    assert_eq!(
2228        unsafe { &(*(::std::ptr::null::<_Bucket>())).val as *const _ as usize },
2229        0usize,
2230        concat!(
2231            "Offset of field: ",
2232            stringify!(_Bucket),
2233            "::",
2234            stringify!(val)
2235        )
2236    );
2237    assert_eq!(
2238        unsafe { &(*(::std::ptr::null::<_Bucket>())).h as *const _ as usize },
2239        16usize,
2240        concat!(
2241            "Offset of field: ",
2242            stringify!(_Bucket),
2243            "::",
2244            stringify!(h)
2245        )
2246    );
2247    assert_eq!(
2248        unsafe { &(*(::std::ptr::null::<_Bucket>())).key as *const _ as usize },
2249        24usize,
2250        concat!(
2251            "Offset of field: ",
2252            stringify!(_Bucket),
2253            "::",
2254            stringify!(key)
2255        )
2256    );
2257}
2258pub type Bucket = _Bucket;
2259pub type HashTable = _zend_array;
2260#[repr(C)]
2261#[derive(Copy, Clone)]
2262pub struct _zend_array {
2263    pub gc: zend_refcounted_h,
2264    pub u: _zend_array__bindgen_ty_1,
2265    pub nTableMask: u32,
2266    pub arData: *mut Bucket,
2267    pub nNumUsed: u32,
2268    pub nNumOfElements: u32,
2269    pub nTableSize: u32,
2270    pub nInternalPointer: u32,
2271    pub nNextFreeElement: zend_long,
2272    pub pDestructor: dtor_func_t,
2273}
2274#[repr(C)]
2275#[derive(Copy, Clone)]
2276pub union _zend_array__bindgen_ty_1 {
2277    pub v: _zend_array__bindgen_ty_1__bindgen_ty_1,
2278    pub flags: u32,
2279    _bindgen_union_align: u32,
2280}
2281#[repr(C)]
2282#[derive(Debug, Copy, Clone)]
2283pub struct _zend_array__bindgen_ty_1__bindgen_ty_1 {
2284    pub flags: zend_uchar,
2285    pub nApplyCount: zend_uchar,
2286    pub nIteratorsCount: zend_uchar,
2287    pub consistency: zend_uchar,
2288}
2289#[test]
2290fn bindgen_test_layout__zend_array__bindgen_ty_1__bindgen_ty_1() {
2291    assert_eq!(
2292        ::std::mem::size_of::<_zend_array__bindgen_ty_1__bindgen_ty_1>(),
2293        4usize,
2294        concat!(
2295            "Size of: ",
2296            stringify!(_zend_array__bindgen_ty_1__bindgen_ty_1)
2297        )
2298    );
2299    assert_eq!(
2300        ::std::mem::align_of::<_zend_array__bindgen_ty_1__bindgen_ty_1>(),
2301        1usize,
2302        concat!(
2303            "Alignment of ",
2304            stringify!(_zend_array__bindgen_ty_1__bindgen_ty_1)
2305        )
2306    );
2307    assert_eq!(
2308        unsafe {
2309            &(*(::std::ptr::null::<_zend_array__bindgen_ty_1__bindgen_ty_1>())).flags as *const _
2310                as usize
2311        },
2312        0usize,
2313        concat!(
2314            "Offset of field: ",
2315            stringify!(_zend_array__bindgen_ty_1__bindgen_ty_1),
2316            "::",
2317            stringify!(flags)
2318        )
2319    );
2320    assert_eq!(
2321        unsafe {
2322            &(*(::std::ptr::null::<_zend_array__bindgen_ty_1__bindgen_ty_1>())).nApplyCount
2323                as *const _ as usize
2324        },
2325        1usize,
2326        concat!(
2327            "Offset of field: ",
2328            stringify!(_zend_array__bindgen_ty_1__bindgen_ty_1),
2329            "::",
2330            stringify!(nApplyCount)
2331        )
2332    );
2333    assert_eq!(
2334        unsafe {
2335            &(*(::std::ptr::null::<_zend_array__bindgen_ty_1__bindgen_ty_1>())).nIteratorsCount
2336                as *const _ as usize
2337        },
2338        2usize,
2339        concat!(
2340            "Offset of field: ",
2341            stringify!(_zend_array__bindgen_ty_1__bindgen_ty_1),
2342            "::",
2343            stringify!(nIteratorsCount)
2344        )
2345    );
2346    assert_eq!(
2347        unsafe {
2348            &(*(::std::ptr::null::<_zend_array__bindgen_ty_1__bindgen_ty_1>())).consistency
2349                as *const _ as usize
2350        },
2351        3usize,
2352        concat!(
2353            "Offset of field: ",
2354            stringify!(_zend_array__bindgen_ty_1__bindgen_ty_1),
2355            "::",
2356            stringify!(consistency)
2357        )
2358    );
2359}
2360#[test]
2361fn bindgen_test_layout__zend_array__bindgen_ty_1() {
2362    assert_eq!(
2363        ::std::mem::size_of::<_zend_array__bindgen_ty_1>(),
2364        4usize,
2365        concat!("Size of: ", stringify!(_zend_array__bindgen_ty_1))
2366    );
2367    assert_eq!(
2368        ::std::mem::align_of::<_zend_array__bindgen_ty_1>(),
2369        4usize,
2370        concat!("Alignment of ", stringify!(_zend_array__bindgen_ty_1))
2371    );
2372    assert_eq!(
2373        unsafe { &(*(::std::ptr::null::<_zend_array__bindgen_ty_1>())).v as *const _ as usize },
2374        0usize,
2375        concat!(
2376            "Offset of field: ",
2377            stringify!(_zend_array__bindgen_ty_1),
2378            "::",
2379            stringify!(v)
2380        )
2381    );
2382    assert_eq!(
2383        unsafe { &(*(::std::ptr::null::<_zend_array__bindgen_ty_1>())).flags as *const _ as usize },
2384        0usize,
2385        concat!(
2386            "Offset of field: ",
2387            stringify!(_zend_array__bindgen_ty_1),
2388            "::",
2389            stringify!(flags)
2390        )
2391    );
2392}
2393#[test]
2394fn bindgen_test_layout__zend_array() {
2395    assert_eq!(
2396        ::std::mem::size_of::<_zend_array>(),
2397        56usize,
2398        concat!("Size of: ", stringify!(_zend_array))
2399    );
2400    assert_eq!(
2401        ::std::mem::align_of::<_zend_array>(),
2402        8usize,
2403        concat!("Alignment of ", stringify!(_zend_array))
2404    );
2405    assert_eq!(
2406        unsafe { &(*(::std::ptr::null::<_zend_array>())).gc as *const _ as usize },
2407        0usize,
2408        concat!(
2409            "Offset of field: ",
2410            stringify!(_zend_array),
2411            "::",
2412            stringify!(gc)
2413        )
2414    );
2415    assert_eq!(
2416        unsafe { &(*(::std::ptr::null::<_zend_array>())).u as *const _ as usize },
2417        8usize,
2418        concat!(
2419            "Offset of field: ",
2420            stringify!(_zend_array),
2421            "::",
2422            stringify!(u)
2423        )
2424    );
2425    assert_eq!(
2426        unsafe { &(*(::std::ptr::null::<_zend_array>())).nTableMask as *const _ as usize },
2427        12usize,
2428        concat!(
2429            "Offset of field: ",
2430            stringify!(_zend_array),
2431            "::",
2432            stringify!(nTableMask)
2433        )
2434    );
2435    assert_eq!(
2436        unsafe { &(*(::std::ptr::null::<_zend_array>())).arData as *const _ as usize },
2437        16usize,
2438        concat!(
2439            "Offset of field: ",
2440            stringify!(_zend_array),
2441            "::",
2442            stringify!(arData)
2443        )
2444    );
2445    assert_eq!(
2446        unsafe { &(*(::std::ptr::null::<_zend_array>())).nNumUsed as *const _ as usize },
2447        24usize,
2448        concat!(
2449            "Offset of field: ",
2450            stringify!(_zend_array),
2451            "::",
2452            stringify!(nNumUsed)
2453        )
2454    );
2455    assert_eq!(
2456        unsafe { &(*(::std::ptr::null::<_zend_array>())).nNumOfElements as *const _ as usize },
2457        28usize,
2458        concat!(
2459            "Offset of field: ",
2460            stringify!(_zend_array),
2461            "::",
2462            stringify!(nNumOfElements)
2463        )
2464    );
2465    assert_eq!(
2466        unsafe { &(*(::std::ptr::null::<_zend_array>())).nTableSize as *const _ as usize },
2467        32usize,
2468        concat!(
2469            "Offset of field: ",
2470            stringify!(_zend_array),
2471            "::",
2472            stringify!(nTableSize)
2473        )
2474    );
2475    assert_eq!(
2476        unsafe { &(*(::std::ptr::null::<_zend_array>())).nInternalPointer as *const _ as usize },
2477        36usize,
2478        concat!(
2479            "Offset of field: ",
2480            stringify!(_zend_array),
2481            "::",
2482            stringify!(nInternalPointer)
2483        )
2484    );
2485    assert_eq!(
2486        unsafe { &(*(::std::ptr::null::<_zend_array>())).nNextFreeElement as *const _ as usize },
2487        40usize,
2488        concat!(
2489            "Offset of field: ",
2490            stringify!(_zend_array),
2491            "::",
2492            stringify!(nNextFreeElement)
2493        )
2494    );
2495    assert_eq!(
2496        unsafe { &(*(::std::ptr::null::<_zend_array>())).pDestructor as *const _ as usize },
2497        48usize,
2498        concat!(
2499            "Offset of field: ",
2500            stringify!(_zend_array),
2501            "::",
2502            stringify!(pDestructor)
2503        )
2504    );
2505}
2506pub type HashPosition = u32;
2507#[repr(C)]
2508#[derive(Debug, Copy, Clone)]
2509pub struct _HashTableIterator {
2510    pub ht: *mut HashTable,
2511    pub pos: HashPosition,
2512}
2513#[test]
2514fn bindgen_test_layout__HashTableIterator() {
2515    assert_eq!(
2516        ::std::mem::size_of::<_HashTableIterator>(),
2517        16usize,
2518        concat!("Size of: ", stringify!(_HashTableIterator))
2519    );
2520    assert_eq!(
2521        ::std::mem::align_of::<_HashTableIterator>(),
2522        8usize,
2523        concat!("Alignment of ", stringify!(_HashTableIterator))
2524    );
2525    assert_eq!(
2526        unsafe { &(*(::std::ptr::null::<_HashTableIterator>())).ht as *const _ as usize },
2527        0usize,
2528        concat!(
2529            "Offset of field: ",
2530            stringify!(_HashTableIterator),
2531            "::",
2532            stringify!(ht)
2533        )
2534    );
2535    assert_eq!(
2536        unsafe { &(*(::std::ptr::null::<_HashTableIterator>())).pos as *const _ as usize },
2537        8usize,
2538        concat!(
2539            "Offset of field: ",
2540            stringify!(_HashTableIterator),
2541            "::",
2542            stringify!(pos)
2543        )
2544    );
2545}
2546pub type HashTableIterator = _HashTableIterator;
2547#[repr(C)]
2548#[derive(Copy, Clone)]
2549pub struct _zend_object {
2550    pub gc: zend_refcounted_h,
2551    pub handle: u32,
2552    pub ce: *mut zend_class_entry,
2553    pub handlers: *const zend_object_handlers,
2554    pub properties: *mut HashTable,
2555    pub properties_table: [zval; 1usize],
2556}
2557#[test]
2558fn bindgen_test_layout__zend_object() {
2559    assert_eq!(
2560        ::std::mem::size_of::<_zend_object>(),
2561        56usize,
2562        concat!("Size of: ", stringify!(_zend_object))
2563    );
2564    assert_eq!(
2565        ::std::mem::align_of::<_zend_object>(),
2566        8usize,
2567        concat!("Alignment of ", stringify!(_zend_object))
2568    );
2569    assert_eq!(
2570        unsafe { &(*(::std::ptr::null::<_zend_object>())).gc as *const _ as usize },
2571        0usize,
2572        concat!(
2573            "Offset of field: ",
2574            stringify!(_zend_object),
2575            "::",
2576            stringify!(gc)
2577        )
2578    );
2579    assert_eq!(
2580        unsafe { &(*(::std::ptr::null::<_zend_object>())).handle as *const _ as usize },
2581        8usize,
2582        concat!(
2583            "Offset of field: ",
2584            stringify!(_zend_object),
2585            "::",
2586            stringify!(handle)
2587        )
2588    );
2589    assert_eq!(
2590        unsafe { &(*(::std::ptr::null::<_zend_object>())).ce as *const _ as usize },
2591        16usize,
2592        concat!(
2593            "Offset of field: ",
2594            stringify!(_zend_object),
2595            "::",
2596            stringify!(ce)
2597        )
2598    );
2599    assert_eq!(
2600        unsafe { &(*(::std::ptr::null::<_zend_object>())).handlers as *const _ as usize },
2601        24usize,
2602        concat!(
2603            "Offset of field: ",
2604            stringify!(_zend_object),
2605            "::",
2606            stringify!(handlers)
2607        )
2608    );
2609    assert_eq!(
2610        unsafe { &(*(::std::ptr::null::<_zend_object>())).properties as *const _ as usize },
2611        32usize,
2612        concat!(
2613            "Offset of field: ",
2614            stringify!(_zend_object),
2615            "::",
2616            stringify!(properties)
2617        )
2618    );
2619    assert_eq!(
2620        unsafe { &(*(::std::ptr::null::<_zend_object>())).properties_table as *const _ as usize },
2621        40usize,
2622        concat!(
2623            "Offset of field: ",
2624            stringify!(_zend_object),
2625            "::",
2626            stringify!(properties_table)
2627        )
2628    );
2629}
2630#[repr(C)]
2631#[derive(Copy, Clone)]
2632pub struct _zend_resource {
2633    pub gc: zend_refcounted_h,
2634    pub handle: ::std::os::raw::c_int,
2635    pub type_: ::std::os::raw::c_int,
2636    pub ptr: *mut ::std::os::raw::c_void,
2637}
2638#[test]
2639fn bindgen_test_layout__zend_resource() {
2640    assert_eq!(
2641        ::std::mem::size_of::<_zend_resource>(),
2642        24usize,
2643        concat!("Size of: ", stringify!(_zend_resource))
2644    );
2645    assert_eq!(
2646        ::std::mem::align_of::<_zend_resource>(),
2647        8usize,
2648        concat!("Alignment of ", stringify!(_zend_resource))
2649    );
2650    assert_eq!(
2651        unsafe { &(*(::std::ptr::null::<_zend_resource>())).gc as *const _ as usize },
2652        0usize,
2653        concat!(
2654            "Offset of field: ",
2655            stringify!(_zend_resource),
2656            "::",
2657            stringify!(gc)
2658        )
2659    );
2660    assert_eq!(
2661        unsafe { &(*(::std::ptr::null::<_zend_resource>())).handle as *const _ as usize },
2662        8usize,
2663        concat!(
2664            "Offset of field: ",
2665            stringify!(_zend_resource),
2666            "::",
2667            stringify!(handle)
2668        )
2669    );
2670    assert_eq!(
2671        unsafe { &(*(::std::ptr::null::<_zend_resource>())).type_ as *const _ as usize },
2672        12usize,
2673        concat!(
2674            "Offset of field: ",
2675            stringify!(_zend_resource),
2676            "::",
2677            stringify!(type_)
2678        )
2679    );
2680    assert_eq!(
2681        unsafe { &(*(::std::ptr::null::<_zend_resource>())).ptr as *const _ as usize },
2682        16usize,
2683        concat!(
2684            "Offset of field: ",
2685            stringify!(_zend_resource),
2686            "::",
2687            stringify!(ptr)
2688        )
2689    );
2690}
2691#[repr(C)]
2692#[derive(Copy, Clone)]
2693pub struct _zend_reference {
2694    pub gc: zend_refcounted_h,
2695    pub val: zval,
2696}
2697#[test]
2698fn bindgen_test_layout__zend_reference() {
2699    assert_eq!(
2700        ::std::mem::size_of::<_zend_reference>(),
2701        24usize,
2702        concat!("Size of: ", stringify!(_zend_reference))
2703    );
2704    assert_eq!(
2705        ::std::mem::align_of::<_zend_reference>(),
2706        8usize,
2707        concat!("Alignment of ", stringify!(_zend_reference))
2708    );
2709    assert_eq!(
2710        unsafe { &(*(::std::ptr::null::<_zend_reference>())).gc as *const _ as usize },
2711        0usize,
2712        concat!(
2713            "Offset of field: ",
2714            stringify!(_zend_reference),
2715            "::",
2716            stringify!(gc)
2717        )
2718    );
2719    assert_eq!(
2720        unsafe { &(*(::std::ptr::null::<_zend_reference>())).val as *const _ as usize },
2721        8usize,
2722        concat!(
2723            "Offset of field: ",
2724            stringify!(_zend_reference),
2725            "::",
2726            stringify!(val)
2727        )
2728    );
2729}
2730#[repr(C)]
2731#[derive(Copy, Clone)]
2732pub struct _zend_ast_ref {
2733    pub gc: zend_refcounted_h,
2734    pub ast: *mut zend_ast,
2735}
2736#[test]
2737fn bindgen_test_layout__zend_ast_ref() {
2738    assert_eq!(
2739        ::std::mem::size_of::<_zend_ast_ref>(),
2740        16usize,
2741        concat!("Size of: ", stringify!(_zend_ast_ref))
2742    );
2743    assert_eq!(
2744        ::std::mem::align_of::<_zend_ast_ref>(),
2745        8usize,
2746        concat!("Alignment of ", stringify!(_zend_ast_ref))
2747    );
2748    assert_eq!(
2749        unsafe { &(*(::std::ptr::null::<_zend_ast_ref>())).gc as *const _ as usize },
2750        0usize,
2751        concat!(
2752            "Offset of field: ",
2753            stringify!(_zend_ast_ref),
2754            "::",
2755            stringify!(gc)
2756        )
2757    );
2758    assert_eq!(
2759        unsafe { &(*(::std::ptr::null::<_zend_ast_ref>())).ast as *const _ as usize },
2760        8usize,
2761        concat!(
2762            "Offset of field: ",
2763            stringify!(_zend_ast_ref),
2764            "::",
2765            stringify!(ast)
2766        )
2767    );
2768}
2769#[repr(C)]
2770#[derive(Debug, Copy, Clone)]
2771pub struct _zend_leak_info {
2772    pub addr: *mut ::std::os::raw::c_void,
2773    pub size: size_t,
2774    pub filename: *const ::std::os::raw::c_char,
2775    pub orig_filename: *const ::std::os::raw::c_char,
2776    pub lineno: u32,
2777    pub orig_lineno: u32,
2778}
2779#[test]
2780fn bindgen_test_layout__zend_leak_info() {
2781    assert_eq!(
2782        ::std::mem::size_of::<_zend_leak_info>(),
2783        40usize,
2784        concat!("Size of: ", stringify!(_zend_leak_info))
2785    );
2786    assert_eq!(
2787        ::std::mem::align_of::<_zend_leak_info>(),
2788        8usize,
2789        concat!("Alignment of ", stringify!(_zend_leak_info))
2790    );
2791    assert_eq!(
2792        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).addr as *const _ as usize },
2793        0usize,
2794        concat!(
2795            "Offset of field: ",
2796            stringify!(_zend_leak_info),
2797            "::",
2798            stringify!(addr)
2799        )
2800    );
2801    assert_eq!(
2802        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).size as *const _ as usize },
2803        8usize,
2804        concat!(
2805            "Offset of field: ",
2806            stringify!(_zend_leak_info),
2807            "::",
2808            stringify!(size)
2809        )
2810    );
2811    assert_eq!(
2812        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).filename as *const _ as usize },
2813        16usize,
2814        concat!(
2815            "Offset of field: ",
2816            stringify!(_zend_leak_info),
2817            "::",
2818            stringify!(filename)
2819        )
2820    );
2821    assert_eq!(
2822        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).orig_filename as *const _ as usize },
2823        24usize,
2824        concat!(
2825            "Offset of field: ",
2826            stringify!(_zend_leak_info),
2827            "::",
2828            stringify!(orig_filename)
2829        )
2830    );
2831    assert_eq!(
2832        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).lineno as *const _ as usize },
2833        32usize,
2834        concat!(
2835            "Offset of field: ",
2836            stringify!(_zend_leak_info),
2837            "::",
2838            stringify!(lineno)
2839        )
2840    );
2841    assert_eq!(
2842        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).orig_lineno as *const _ as usize },
2843        36usize,
2844        concat!(
2845            "Offset of field: ",
2846            stringify!(_zend_leak_info),
2847            "::",
2848            stringify!(orig_lineno)
2849        )
2850    );
2851}
2852pub type zend_leak_info = _zend_leak_info;
2853extern "C" {
2854    pub fn zend_strndup(
2855        s: *const ::std::os::raw::c_char,
2856        length: size_t,
2857    ) -> *mut ::std::os::raw::c_char;
2858}
2859extern "C" {
2860    pub fn _zend_mem_block_size(ptr: *mut ::std::os::raw::c_void) -> size_t;
2861}
2862extern "C" {
2863    pub fn zend_set_memory_limit(memory_limit: size_t) -> ::std::os::raw::c_int;
2864}
2865extern "C" {
2866    pub fn zend_memory_usage(real_usage: ::std::os::raw::c_int) -> size_t;
2867}
2868extern "C" {
2869    pub fn zend_memory_peak_usage(real_usage: ::std::os::raw::c_int) -> size_t;
2870}
2871#[repr(C)]
2872#[derive(Debug, Copy, Clone)]
2873pub struct _zend_mm_heap {
2874    _unused: [u8; 0],
2875}
2876pub type zend_mm_heap = _zend_mm_heap;
2877extern "C" {
2878    pub fn zend_mm_startup() -> *mut zend_mm_heap;
2879}
2880extern "C" {
2881    pub fn zend_mm_shutdown(
2882        heap: *mut zend_mm_heap,
2883        full_shutdown: ::std::os::raw::c_int,
2884        silent: ::std::os::raw::c_int,
2885    );
2886}
2887extern "C" {
2888    pub fn _zend_mm_alloc(heap: *mut zend_mm_heap, size: size_t) -> *mut ::std::os::raw::c_void;
2889}
2890extern "C" {
2891    pub fn _zend_mm_free(heap: *mut zend_mm_heap, p: *mut ::std::os::raw::c_void);
2892}
2893extern "C" {
2894    pub fn _zend_mm_realloc(
2895        heap: *mut zend_mm_heap,
2896        p: *mut ::std::os::raw::c_void,
2897        size: size_t,
2898    ) -> *mut ::std::os::raw::c_void;
2899}
2900extern "C" {
2901    pub fn _zend_mm_realloc2(
2902        heap: *mut zend_mm_heap,
2903        p: *mut ::std::os::raw::c_void,
2904        size: size_t,
2905        copy_size: size_t,
2906    ) -> *mut ::std::os::raw::c_void;
2907}
2908extern "C" {
2909    pub fn _zend_mm_block_size(heap: *mut zend_mm_heap, p: *mut ::std::os::raw::c_void) -> size_t;
2910}
2911extern "C" {
2912    pub fn zend_mm_set_heap(new_heap: *mut zend_mm_heap) -> *mut zend_mm_heap;
2913}
2914extern "C" {
2915    pub fn zend_mm_get_heap() -> *mut zend_mm_heap;
2916}
2917extern "C" {
2918    pub fn zend_mm_gc(heap: *mut zend_mm_heap) -> size_t;
2919}
2920extern "C" {
2921    pub fn zend_mm_is_custom_heap(new_heap: *mut zend_mm_heap) -> ::std::os::raw::c_int;
2922}
2923extern "C" {
2924    pub fn zend_mm_set_custom_handlers(
2925        heap: *mut zend_mm_heap,
2926        _malloc: ::std::option::Option<
2927            unsafe extern "C" fn(arg1: size_t) -> *mut ::std::os::raw::c_void,
2928        >,
2929        _free: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
2930        _realloc: ::std::option::Option<
2931            unsafe extern "C" fn(
2932                arg1: *mut ::std::os::raw::c_void,
2933                arg2: size_t,
2934            ) -> *mut ::std::os::raw::c_void,
2935        >,
2936    );
2937}
2938extern "C" {
2939    pub fn zend_mm_get_custom_handlers(
2940        heap: *mut zend_mm_heap,
2941        _malloc: *mut ::std::option::Option<
2942            unsafe extern "C" fn(arg1: size_t) -> *mut ::std::os::raw::c_void,
2943        >,
2944        _free: *mut ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
2945        _realloc: *mut ::std::option::Option<
2946            unsafe extern "C" fn(
2947                arg1: *mut ::std::os::raw::c_void,
2948                arg2: size_t,
2949            ) -> *mut ::std::os::raw::c_void,
2950        >,
2951    );
2952}
2953pub type zend_mm_storage = _zend_mm_storage;
2954pub type zend_mm_chunk_alloc_t = ::std::option::Option<
2955    unsafe extern "C" fn(
2956        storage: *mut zend_mm_storage,
2957        size: size_t,
2958        alignment: size_t,
2959    ) -> *mut ::std::os::raw::c_void,
2960>;
2961pub type zend_mm_chunk_free_t = ::std::option::Option<
2962    unsafe extern "C" fn(
2963        storage: *mut zend_mm_storage,
2964        chunk: *mut ::std::os::raw::c_void,
2965        size: size_t,
2966    ),
2967>;
2968pub type zend_mm_chunk_truncate_t = ::std::option::Option<
2969    unsafe extern "C" fn(
2970        storage: *mut zend_mm_storage,
2971        chunk: *mut ::std::os::raw::c_void,
2972        old_size: size_t,
2973        new_size: size_t,
2974    ) -> ::std::os::raw::c_int,
2975>;
2976pub type zend_mm_chunk_extend_t = ::std::option::Option<
2977    unsafe extern "C" fn(
2978        storage: *mut zend_mm_storage,
2979        chunk: *mut ::std::os::raw::c_void,
2980        old_size: size_t,
2981        new_size: size_t,
2982    ) -> ::std::os::raw::c_int,
2983>;
2984#[repr(C)]
2985#[derive(Debug, Copy, Clone)]
2986pub struct _zend_mm_handlers {
2987    pub chunk_alloc: zend_mm_chunk_alloc_t,
2988    pub chunk_free: zend_mm_chunk_free_t,
2989    pub chunk_truncate: zend_mm_chunk_truncate_t,
2990    pub chunk_extend: zend_mm_chunk_extend_t,
2991}
2992#[test]
2993fn bindgen_test_layout__zend_mm_handlers() {
2994    assert_eq!(
2995        ::std::mem::size_of::<_zend_mm_handlers>(),
2996        32usize,
2997        concat!("Size of: ", stringify!(_zend_mm_handlers))
2998    );
2999    assert_eq!(
3000        ::std::mem::align_of::<_zend_mm_handlers>(),
3001        8usize,
3002        concat!("Alignment of ", stringify!(_zend_mm_handlers))
3003    );
3004    assert_eq!(
3005        unsafe { &(*(::std::ptr::null::<_zend_mm_handlers>())).chunk_alloc as *const _ as usize },
3006        0usize,
3007        concat!(
3008            "Offset of field: ",
3009            stringify!(_zend_mm_handlers),
3010            "::",
3011            stringify!(chunk_alloc)
3012        )
3013    );
3014    assert_eq!(
3015        unsafe { &(*(::std::ptr::null::<_zend_mm_handlers>())).chunk_free as *const _ as usize },
3016        8usize,
3017        concat!(
3018            "Offset of field: ",
3019            stringify!(_zend_mm_handlers),
3020            "::",
3021            stringify!(chunk_free)
3022        )
3023    );
3024    assert_eq!(
3025        unsafe {
3026            &(*(::std::ptr::null::<_zend_mm_handlers>())).chunk_truncate as *const _ as usize
3027        },
3028        16usize,
3029        concat!(
3030            "Offset of field: ",
3031            stringify!(_zend_mm_handlers),
3032            "::",
3033            stringify!(chunk_truncate)
3034        )
3035    );
3036    assert_eq!(
3037        unsafe { &(*(::std::ptr::null::<_zend_mm_handlers>())).chunk_extend as *const _ as usize },
3038        24usize,
3039        concat!(
3040            "Offset of field: ",
3041            stringify!(_zend_mm_handlers),
3042            "::",
3043            stringify!(chunk_extend)
3044        )
3045    );
3046}
3047pub type zend_mm_handlers = _zend_mm_handlers;
3048#[repr(C)]
3049#[derive(Debug, Copy, Clone)]
3050pub struct _zend_mm_storage {
3051    pub handlers: zend_mm_handlers,
3052    pub data: *mut ::std::os::raw::c_void,
3053}
3054#[test]
3055fn bindgen_test_layout__zend_mm_storage() {
3056    assert_eq!(
3057        ::std::mem::size_of::<_zend_mm_storage>(),
3058        40usize,
3059        concat!("Size of: ", stringify!(_zend_mm_storage))
3060    );
3061    assert_eq!(
3062        ::std::mem::align_of::<_zend_mm_storage>(),
3063        8usize,
3064        concat!("Alignment of ", stringify!(_zend_mm_storage))
3065    );
3066    assert_eq!(
3067        unsafe { &(*(::std::ptr::null::<_zend_mm_storage>())).handlers as *const _ as usize },
3068        0usize,
3069        concat!(
3070            "Offset of field: ",
3071            stringify!(_zend_mm_storage),
3072            "::",
3073            stringify!(handlers)
3074        )
3075    );
3076    assert_eq!(
3077        unsafe { &(*(::std::ptr::null::<_zend_mm_storage>())).data as *const _ as usize },
3078        32usize,
3079        concat!(
3080            "Offset of field: ",
3081            stringify!(_zend_mm_storage),
3082            "::",
3083            stringify!(data)
3084        )
3085    );
3086}
3087extern "C" {
3088    pub fn zend_mm_get_storage(heap: *mut zend_mm_heap) -> *mut zend_mm_storage;
3089}
3090extern "C" {
3091    pub fn zend_mm_startup_ex(
3092        handlers: *const zend_mm_handlers,
3093        data: *mut ::std::os::raw::c_void,
3094        data_size: size_t,
3095    ) -> *mut zend_mm_heap;
3096}
3097#[repr(C)]
3098#[derive(Debug, Copy, Clone)]
3099pub struct _zend_llist_element {
3100    pub next: *mut _zend_llist_element,
3101    pub prev: *mut _zend_llist_element,
3102    pub data: [::std::os::raw::c_char; 1usize],
3103}
3104#[test]
3105fn bindgen_test_layout__zend_llist_element() {
3106    assert_eq!(
3107        ::std::mem::size_of::<_zend_llist_element>(),
3108        24usize,
3109        concat!("Size of: ", stringify!(_zend_llist_element))
3110    );
3111    assert_eq!(
3112        ::std::mem::align_of::<_zend_llist_element>(),
3113        8usize,
3114        concat!("Alignment of ", stringify!(_zend_llist_element))
3115    );
3116    assert_eq!(
3117        unsafe { &(*(::std::ptr::null::<_zend_llist_element>())).next as *const _ as usize },
3118        0usize,
3119        concat!(
3120            "Offset of field: ",
3121            stringify!(_zend_llist_element),
3122            "::",
3123            stringify!(next)
3124        )
3125    );
3126    assert_eq!(
3127        unsafe { &(*(::std::ptr::null::<_zend_llist_element>())).prev as *const _ as usize },
3128        8usize,
3129        concat!(
3130            "Offset of field: ",
3131            stringify!(_zend_llist_element),
3132            "::",
3133            stringify!(prev)
3134        )
3135    );
3136    assert_eq!(
3137        unsafe { &(*(::std::ptr::null::<_zend_llist_element>())).data as *const _ as usize },
3138        16usize,
3139        concat!(
3140            "Offset of field: ",
3141            stringify!(_zend_llist_element),
3142            "::",
3143            stringify!(data)
3144        )
3145    );
3146}
3147pub type zend_llist_element = _zend_llist_element;
3148pub type llist_dtor_func_t =
3149    ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>;
3150pub type llist_compare_func_t = ::std::option::Option<
3151    unsafe extern "C" fn(
3152        arg1: *mut *const zend_llist_element,
3153        arg2: *mut *const zend_llist_element,
3154    ) -> ::std::os::raw::c_int,
3155>;
3156pub type llist_apply_with_args_func_t = ::std::option::Option<
3157    unsafe extern "C" fn(
3158        data: *mut ::std::os::raw::c_void,
3159        num_args: ::std::os::raw::c_int,
3160        args: *mut __va_list_tag,
3161    ),
3162>;
3163pub type llist_apply_with_arg_func_t = ::std::option::Option<
3164    unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, arg: *mut ::std::os::raw::c_void),
3165>;
3166pub type llist_apply_func_t =
3167    ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>;
3168#[repr(C)]
3169#[derive(Debug, Copy, Clone)]
3170pub struct _zend_llist {
3171    pub head: *mut zend_llist_element,
3172    pub tail: *mut zend_llist_element,
3173    pub count: size_t,
3174    pub size: size_t,
3175    pub dtor: llist_dtor_func_t,
3176    pub persistent: ::std::os::raw::c_uchar,
3177    pub traverse_ptr: *mut zend_llist_element,
3178}
3179#[test]
3180fn bindgen_test_layout__zend_llist() {
3181    assert_eq!(
3182        ::std::mem::size_of::<_zend_llist>(),
3183        56usize,
3184        concat!("Size of: ", stringify!(_zend_llist))
3185    );
3186    assert_eq!(
3187        ::std::mem::align_of::<_zend_llist>(),
3188        8usize,
3189        concat!("Alignment of ", stringify!(_zend_llist))
3190    );
3191    assert_eq!(
3192        unsafe { &(*(::std::ptr::null::<_zend_llist>())).head as *const _ as usize },
3193        0usize,
3194        concat!(
3195            "Offset of field: ",
3196            stringify!(_zend_llist),
3197            "::",
3198            stringify!(head)
3199        )
3200    );
3201    assert_eq!(
3202        unsafe { &(*(::std::ptr::null::<_zend_llist>())).tail as *const _ as usize },
3203        8usize,
3204        concat!(
3205            "Offset of field: ",
3206            stringify!(_zend_llist),
3207            "::",
3208            stringify!(tail)
3209        )
3210    );
3211    assert_eq!(
3212        unsafe { &(*(::std::ptr::null::<_zend_llist>())).count as *const _ as usize },
3213        16usize,
3214        concat!(
3215            "Offset of field: ",
3216            stringify!(_zend_llist),
3217            "::",
3218            stringify!(count)
3219        )
3220    );
3221    assert_eq!(
3222        unsafe { &(*(::std::ptr::null::<_zend_llist>())).size as *const _ as usize },
3223        24usize,
3224        concat!(
3225            "Offset of field: ",
3226            stringify!(_zend_llist),
3227            "::",
3228            stringify!(size)
3229        )
3230    );
3231    assert_eq!(
3232        unsafe { &(*(::std::ptr::null::<_zend_llist>())).dtor as *const _ as usize },
3233        32usize,
3234        concat!(
3235            "Offset of field: ",
3236            stringify!(_zend_llist),
3237            "::",
3238            stringify!(dtor)
3239        )
3240    );
3241    assert_eq!(
3242        unsafe { &(*(::std::ptr::null::<_zend_llist>())).persistent as *const _ as usize },
3243        40usize,
3244        concat!(
3245            "Offset of field: ",
3246            stringify!(_zend_llist),
3247            "::",
3248            stringify!(persistent)
3249        )
3250    );
3251    assert_eq!(
3252        unsafe { &(*(::std::ptr::null::<_zend_llist>())).traverse_ptr as *const _ as usize },
3253        48usize,
3254        concat!(
3255            "Offset of field: ",
3256            stringify!(_zend_llist),
3257            "::",
3258            stringify!(traverse_ptr)
3259        )
3260    );
3261}
3262pub type zend_llist = _zend_llist;
3263pub type zend_llist_position = *mut zend_llist_element;
3264extern "C" {
3265    pub fn zend_llist_init(
3266        l: *mut zend_llist,
3267        size: size_t,
3268        dtor: llist_dtor_func_t,
3269        persistent: ::std::os::raw::c_uchar,
3270    );
3271}
3272extern "C" {
3273    pub fn zend_llist_add_element(l: *mut zend_llist, element: *mut ::std::os::raw::c_void);
3274}
3275extern "C" {
3276    pub fn zend_llist_prepend_element(l: *mut zend_llist, element: *mut ::std::os::raw::c_void);
3277}
3278extern "C" {
3279    pub fn zend_llist_del_element(
3280        l: *mut zend_llist,
3281        element: *mut ::std::os::raw::c_void,
3282        compare: ::std::option::Option<
3283            unsafe extern "C" fn(
3284                element1: *mut ::std::os::raw::c_void,
3285                element2: *mut ::std::os::raw::c_void,
3286            ) -> ::std::os::raw::c_int,
3287        >,
3288    );
3289}
3290extern "C" {
3291    pub fn zend_llist_destroy(l: *mut zend_llist);
3292}
3293extern "C" {
3294    pub fn zend_llist_clean(l: *mut zend_llist);
3295}
3296extern "C" {
3297    pub fn zend_llist_remove_tail(l: *mut zend_llist);
3298}
3299extern "C" {
3300    pub fn zend_llist_copy(dst: *mut zend_llist, src: *mut zend_llist);
3301}
3302extern "C" {
3303    pub fn zend_llist_apply(l: *mut zend_llist, func: llist_apply_func_t);
3304}
3305extern "C" {
3306    pub fn zend_llist_apply_with_del(
3307        l: *mut zend_llist,
3308        func: ::std::option::Option<
3309            unsafe extern "C" fn(data: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
3310        >,
3311    );
3312}
3313extern "C" {
3314    pub fn zend_llist_apply_with_argument(
3315        l: *mut zend_llist,
3316        func: llist_apply_with_arg_func_t,
3317        arg: *mut ::std::os::raw::c_void,
3318    );
3319}
3320extern "C" {
3321    pub fn zend_llist_apply_with_arguments(
3322        l: *mut zend_llist,
3323        func: llist_apply_with_args_func_t,
3324        num_args: ::std::os::raw::c_int,
3325        ...
3326    );
3327}
3328extern "C" {
3329    pub fn zend_llist_count(l: *mut zend_llist) -> size_t;
3330}
3331extern "C" {
3332    pub fn zend_llist_sort(l: *mut zend_llist, comp_func: llist_compare_func_t);
3333}
3334extern "C" {
3335    pub fn zend_llist_get_first_ex(
3336        l: *mut zend_llist,
3337        pos: *mut zend_llist_position,
3338    ) -> *mut ::std::os::raw::c_void;
3339}
3340extern "C" {
3341    pub fn zend_llist_get_last_ex(
3342        l: *mut zend_llist,
3343        pos: *mut zend_llist_position,
3344    ) -> *mut ::std::os::raw::c_void;
3345}
3346extern "C" {
3347    pub fn zend_llist_get_next_ex(
3348        l: *mut zend_llist,
3349        pos: *mut zend_llist_position,
3350    ) -> *mut ::std::os::raw::c_void;
3351}
3352extern "C" {
3353    pub fn zend_llist_get_prev_ex(
3354        l: *mut zend_llist,
3355        pos: *mut zend_llist_position,
3356    ) -> *mut ::std::os::raw::c_void;
3357}
3358pub type zend_string_copy_storage_func_t = ::std::option::Option<unsafe extern "C" fn()>;
3359pub type zend_new_interned_string_func_t =
3360    ::std::option::Option<unsafe extern "C" fn(str_: *mut zend_string) -> *mut zend_string>;
3361extern "C" {
3362    pub static mut zend_new_interned_string: zend_new_interned_string_func_t;
3363}
3364extern "C" {
3365    pub fn zend_hash_func(str_: *const ::std::os::raw::c_char, len: size_t) -> zend_ulong;
3366}
3367extern "C" {
3368    pub fn zend_interned_strings_init();
3369}
3370extern "C" {
3371    pub fn zend_interned_strings_dtor();
3372}
3373extern "C" {
3374    pub fn zend_interned_strings_activate();
3375}
3376extern "C" {
3377    pub fn zend_interned_strings_deactivate();
3378}
3379extern "C" {
3380    pub fn zend_interned_string_find_permanent(str_: *mut zend_string) -> *mut zend_string;
3381}
3382extern "C" {
3383    pub fn zend_interned_strings_set_request_storage_handler(
3384        handler: zend_new_interned_string_func_t,
3385    );
3386}
3387extern "C" {
3388    pub fn zend_interned_strings_set_permanent_storage_copy_handler(
3389        handler: zend_string_copy_storage_func_t,
3390    );
3391}
3392extern "C" {
3393    pub fn zend_interned_strings_switch_storage();
3394}
3395extern "C" {
3396    pub static mut zend_empty_string: *mut zend_string;
3397}
3398extern "C" {
3399    pub static mut zend_one_char_string: [*mut zend_string; 256usize];
3400}
3401extern "C" {
3402    pub static mut zend_known_strings: *mut *mut zend_string;
3403}
3404pub const _zend_known_string_id_ZEND_STR_FILE: _zend_known_string_id = 0;
3405pub const _zend_known_string_id_ZEND_STR_LINE: _zend_known_string_id = 1;
3406pub const _zend_known_string_id_ZEND_STR_FUNCTION: _zend_known_string_id = 2;
3407pub const _zend_known_string_id_ZEND_STR_CLASS: _zend_known_string_id = 3;
3408pub const _zend_known_string_id_ZEND_STR_OBJECT: _zend_known_string_id = 4;
3409pub const _zend_known_string_id_ZEND_STR_TYPE: _zend_known_string_id = 5;
3410pub const _zend_known_string_id_ZEND_STR_OBJECT_OPERATOR: _zend_known_string_id = 6;
3411pub const _zend_known_string_id_ZEND_STR_PAAMAYIM_NEKUDOTAYIM: _zend_known_string_id = 7;
3412pub const _zend_known_string_id_ZEND_STR_ARGS: _zend_known_string_id = 8;
3413pub const _zend_known_string_id_ZEND_STR_UNKNOWN: _zend_known_string_id = 9;
3414pub const _zend_known_string_id_ZEND_STR_EVAL: _zend_known_string_id = 10;
3415pub const _zend_known_string_id_ZEND_STR_INCLUDE: _zend_known_string_id = 11;
3416pub const _zend_known_string_id_ZEND_STR_REQUIRE: _zend_known_string_id = 12;
3417pub const _zend_known_string_id_ZEND_STR_INCLUDE_ONCE: _zend_known_string_id = 13;
3418pub const _zend_known_string_id_ZEND_STR_REQUIRE_ONCE: _zend_known_string_id = 14;
3419pub const _zend_known_string_id_ZEND_STR_SCALAR: _zend_known_string_id = 15;
3420pub const _zend_known_string_id_ZEND_STR_ERROR_REPORTING: _zend_known_string_id = 16;
3421pub const _zend_known_string_id_ZEND_STR_STATIC: _zend_known_string_id = 17;
3422pub const _zend_known_string_id_ZEND_STR_THIS: _zend_known_string_id = 18;
3423pub const _zend_known_string_id_ZEND_STR_VALUE: _zend_known_string_id = 19;
3424pub const _zend_known_string_id_ZEND_STR_KEY: _zend_known_string_id = 20;
3425pub const _zend_known_string_id_ZEND_STR_MAGIC_AUTOLOAD: _zend_known_string_id = 21;
3426pub const _zend_known_string_id_ZEND_STR_MAGIC_INVOKE: _zend_known_string_id = 22;
3427pub const _zend_known_string_id_ZEND_STR_PREVIOUS: _zend_known_string_id = 23;
3428pub const _zend_known_string_id_ZEND_STR_CODE: _zend_known_string_id = 24;
3429pub const _zend_known_string_id_ZEND_STR_MESSAGE: _zend_known_string_id = 25;
3430pub const _zend_known_string_id_ZEND_STR_SEVERITY: _zend_known_string_id = 26;
3431pub const _zend_known_string_id_ZEND_STR_STRING: _zend_known_string_id = 27;
3432pub const _zend_known_string_id_ZEND_STR_TRACE: _zend_known_string_id = 28;
3433pub const _zend_known_string_id_ZEND_STR_SCHEME: _zend_known_string_id = 29;
3434pub const _zend_known_string_id_ZEND_STR_HOST: _zend_known_string_id = 30;
3435pub const _zend_known_string_id_ZEND_STR_PORT: _zend_known_string_id = 31;
3436pub const _zend_known_string_id_ZEND_STR_USER: _zend_known_string_id = 32;
3437pub const _zend_known_string_id_ZEND_STR_PASS: _zend_known_string_id = 33;
3438pub const _zend_known_string_id_ZEND_STR_PATH: _zend_known_string_id = 34;
3439pub const _zend_known_string_id_ZEND_STR_QUERY: _zend_known_string_id = 35;
3440pub const _zend_known_string_id_ZEND_STR_FRAGMENT: _zend_known_string_id = 36;
3441pub const _zend_known_string_id_ZEND_STR_NULL: _zend_known_string_id = 37;
3442pub const _zend_known_string_id_ZEND_STR_BOOLEAN: _zend_known_string_id = 38;
3443pub const _zend_known_string_id_ZEND_STR_INTEGER: _zend_known_string_id = 39;
3444pub const _zend_known_string_id_ZEND_STR_DOUBLE: _zend_known_string_id = 40;
3445pub const _zend_known_string_id_ZEND_STR_ARRAY: _zend_known_string_id = 41;
3446pub const _zend_known_string_id_ZEND_STR_RESOURCE: _zend_known_string_id = 42;
3447pub const _zend_known_string_id_ZEND_STR_CLOSED_RESOURCE: _zend_known_string_id = 43;
3448pub const _zend_known_string_id_ZEND_STR_LAST_KNOWN: _zend_known_string_id = 44;
3449pub type _zend_known_string_id = ::std::os::raw::c_uint;
3450pub use self::_zend_known_string_id as zend_known_string_id;
3451#[repr(C)]
3452#[derive(Debug, Copy, Clone)]
3453pub struct _zend_hash_key {
3454    pub h: zend_ulong,
3455    pub key: *mut zend_string,
3456}
3457#[test]
3458fn bindgen_test_layout__zend_hash_key() {
3459    assert_eq!(
3460        ::std::mem::size_of::<_zend_hash_key>(),
3461        16usize,
3462        concat!("Size of: ", stringify!(_zend_hash_key))
3463    );
3464    assert_eq!(
3465        ::std::mem::align_of::<_zend_hash_key>(),
3466        8usize,
3467        concat!("Alignment of ", stringify!(_zend_hash_key))
3468    );
3469    assert_eq!(
3470        unsafe { &(*(::std::ptr::null::<_zend_hash_key>())).h as *const _ as usize },
3471        0usize,
3472        concat!(
3473            "Offset of field: ",
3474            stringify!(_zend_hash_key),
3475            "::",
3476            stringify!(h)
3477        )
3478    );
3479    assert_eq!(
3480        unsafe { &(*(::std::ptr::null::<_zend_hash_key>())).key as *const _ as usize },
3481        8usize,
3482        concat!(
3483            "Offset of field: ",
3484            stringify!(_zend_hash_key),
3485            "::",
3486            stringify!(key)
3487        )
3488    );
3489}
3490pub type zend_hash_key = _zend_hash_key;
3491pub type merge_checker_func_t = ::std::option::Option<
3492    unsafe extern "C" fn(
3493        target_ht: *mut HashTable,
3494        source_data: *mut zval,
3495        hash_key: *mut zend_hash_key,
3496        pParam: *mut ::std::os::raw::c_void,
3497    ) -> zend_bool,
3498>;
3499extern "C" {
3500    pub fn _zend_hash_init(
3501        ht: *mut HashTable,
3502        nSize: u32,
3503        pDestructor: dtor_func_t,
3504        persistent: zend_bool,
3505    );
3506}
3507extern "C" {
3508    pub fn _zend_hash_init_ex(
3509        ht: *mut HashTable,
3510        nSize: u32,
3511        pDestructor: dtor_func_t,
3512        persistent: zend_bool,
3513        bApplyProtection: zend_bool,
3514    );
3515}
3516extern "C" {
3517    pub fn zend_hash_destroy(ht: *mut HashTable);
3518}
3519extern "C" {
3520    pub fn zend_hash_clean(ht: *mut HashTable);
3521}
3522extern "C" {
3523    pub fn zend_hash_real_init(ht: *mut HashTable, packed: zend_bool);
3524}
3525extern "C" {
3526    pub fn zend_hash_packed_to_hash(ht: *mut HashTable);
3527}
3528extern "C" {
3529    pub fn zend_hash_to_packed(ht: *mut HashTable);
3530}
3531extern "C" {
3532    pub fn zend_hash_extend(ht: *mut HashTable, nSize: u32, packed: zend_bool);
3533}
3534extern "C" {
3535    pub fn _zend_hash_add_or_update(
3536        ht: *mut HashTable,
3537        key: *mut zend_string,
3538        pData: *mut zval,
3539        flag: u32,
3540    ) -> *mut zval;
3541}
3542extern "C" {
3543    pub fn _zend_hash_update(
3544        ht: *mut HashTable,
3545        key: *mut zend_string,
3546        pData: *mut zval,
3547    ) -> *mut zval;
3548}
3549extern "C" {
3550    pub fn _zend_hash_update_ind(
3551        ht: *mut HashTable,
3552        key: *mut zend_string,
3553        pData: *mut zval,
3554    ) -> *mut zval;
3555}
3556extern "C" {
3557    pub fn _zend_hash_add(ht: *mut HashTable, key: *mut zend_string, pData: *mut zval)
3558        -> *mut zval;
3559}
3560extern "C" {
3561    pub fn _zend_hash_add_new(
3562        ht: *mut HashTable,
3563        key: *mut zend_string,
3564        pData: *mut zval,
3565    ) -> *mut zval;
3566}
3567extern "C" {
3568    pub fn _zend_hash_str_add_or_update(
3569        ht: *mut HashTable,
3570        key: *const ::std::os::raw::c_char,
3571        len: size_t,
3572        pData: *mut zval,
3573        flag: u32,
3574    ) -> *mut zval;
3575}
3576extern "C" {
3577    pub fn _zend_hash_str_update(
3578        ht: *mut HashTable,
3579        key: *const ::std::os::raw::c_char,
3580        len: size_t,
3581        pData: *mut zval,
3582    ) -> *mut zval;
3583}
3584extern "C" {
3585    pub fn _zend_hash_str_update_ind(
3586        ht: *mut HashTable,
3587        key: *const ::std::os::raw::c_char,
3588        len: size_t,
3589        pData: *mut zval,
3590    ) -> *mut zval;
3591}
3592extern "C" {
3593    pub fn _zend_hash_str_add(
3594        ht: *mut HashTable,
3595        key: *const ::std::os::raw::c_char,
3596        len: size_t,
3597        pData: *mut zval,
3598    ) -> *mut zval;
3599}
3600extern "C" {
3601    pub fn _zend_hash_str_add_new(
3602        ht: *mut HashTable,
3603        key: *const ::std::os::raw::c_char,
3604        len: size_t,
3605        pData: *mut zval,
3606    ) -> *mut zval;
3607}
3608extern "C" {
3609    pub fn _zend_hash_index_add_or_update(
3610        ht: *mut HashTable,
3611        h: zend_ulong,
3612        pData: *mut zval,
3613        flag: u32,
3614    ) -> *mut zval;
3615}
3616extern "C" {
3617    pub fn _zend_hash_index_add(ht: *mut HashTable, h: zend_ulong, pData: *mut zval) -> *mut zval;
3618}
3619extern "C" {
3620    pub fn _zend_hash_index_add_new(
3621        ht: *mut HashTable,
3622        h: zend_ulong,
3623        pData: *mut zval,
3624    ) -> *mut zval;
3625}
3626extern "C" {
3627    pub fn _zend_hash_index_update(
3628        ht: *mut HashTable,
3629        h: zend_ulong,
3630        pData: *mut zval,
3631    ) -> *mut zval;
3632}
3633extern "C" {
3634    pub fn _zend_hash_next_index_insert(ht: *mut HashTable, pData: *mut zval) -> *mut zval;
3635}
3636extern "C" {
3637    pub fn _zend_hash_next_index_insert_new(ht: *mut HashTable, pData: *mut zval) -> *mut zval;
3638}
3639extern "C" {
3640    pub fn zend_hash_index_add_empty_element(ht: *mut HashTable, h: zend_ulong) -> *mut zval;
3641}
3642extern "C" {
3643    pub fn zend_hash_add_empty_element(ht: *mut HashTable, key: *mut zend_string) -> *mut zval;
3644}
3645extern "C" {
3646    pub fn zend_hash_str_add_empty_element(
3647        ht: *mut HashTable,
3648        key: *const ::std::os::raw::c_char,
3649        len: size_t,
3650    ) -> *mut zval;
3651}
3652pub type apply_func_t =
3653    ::std::option::Option<unsafe extern "C" fn(pDest: *mut zval) -> ::std::os::raw::c_int>;
3654pub type apply_func_arg_t = ::std::option::Option<
3655    unsafe extern "C" fn(
3656        pDest: *mut zval,
3657        argument: *mut ::std::os::raw::c_void,
3658    ) -> ::std::os::raw::c_int,
3659>;
3660pub type apply_func_args_t = ::std::option::Option<
3661    unsafe extern "C" fn(
3662        pDest: *mut zval,
3663        num_args: ::std::os::raw::c_int,
3664        args: *mut __va_list_tag,
3665        hash_key: *mut zend_hash_key,
3666    ) -> ::std::os::raw::c_int,
3667>;
3668extern "C" {
3669    pub fn zend_hash_graceful_destroy(ht: *mut HashTable);
3670}
3671extern "C" {
3672    pub fn zend_hash_graceful_reverse_destroy(ht: *mut HashTable);
3673}
3674extern "C" {
3675    pub fn zend_hash_apply(ht: *mut HashTable, apply_func: apply_func_t);
3676}
3677extern "C" {
3678    pub fn zend_hash_apply_with_argument(
3679        ht: *mut HashTable,
3680        apply_func: apply_func_arg_t,
3681        arg1: *mut ::std::os::raw::c_void,
3682    );
3683}
3684extern "C" {
3685    pub fn zend_hash_apply_with_arguments(
3686        ht: *mut HashTable,
3687        apply_func: apply_func_args_t,
3688        arg1: ::std::os::raw::c_int,
3689        ...
3690    );
3691}
3692extern "C" {
3693    pub fn zend_hash_reverse_apply(ht: *mut HashTable, apply_func: apply_func_t);
3694}
3695extern "C" {
3696    pub fn zend_hash_del(ht: *mut HashTable, key: *mut zend_string) -> ::std::os::raw::c_int;
3697}
3698extern "C" {
3699    pub fn zend_hash_del_ind(ht: *mut HashTable, key: *mut zend_string) -> ::std::os::raw::c_int;
3700}
3701extern "C" {
3702    pub fn zend_hash_str_del(
3703        ht: *mut HashTable,
3704        key: *const ::std::os::raw::c_char,
3705        len: size_t,
3706    ) -> ::std::os::raw::c_int;
3707}
3708extern "C" {
3709    pub fn zend_hash_str_del_ind(
3710        ht: *mut HashTable,
3711        key: *const ::std::os::raw::c_char,
3712        len: size_t,
3713    ) -> ::std::os::raw::c_int;
3714}
3715extern "C" {
3716    pub fn zend_hash_index_del(ht: *mut HashTable, h: zend_ulong) -> ::std::os::raw::c_int;
3717}
3718extern "C" {
3719    pub fn zend_hash_del_bucket(ht: *mut HashTable, p: *mut Bucket);
3720}
3721extern "C" {
3722    pub fn zend_hash_find(ht: *const HashTable, key: *mut zend_string) -> *mut zval;
3723}
3724extern "C" {
3725    pub fn zend_hash_str_find(
3726        ht: *const HashTable,
3727        key: *const ::std::os::raw::c_char,
3728        len: size_t,
3729    ) -> *mut zval;
3730}
3731extern "C" {
3732    pub fn zend_hash_index_find(ht: *const HashTable, h: zend_ulong) -> *mut zval;
3733}
3734extern "C" {
3735    pub fn _zend_hash_index_find(ht: *const HashTable, h: zend_ulong) -> *mut zval;
3736}
3737extern "C" {
3738    pub fn zend_hash_exists(ht: *const HashTable, key: *mut zend_string) -> zend_bool;
3739}
3740extern "C" {
3741    pub fn zend_hash_str_exists(
3742        ht: *const HashTable,
3743        str_: *const ::std::os::raw::c_char,
3744        len: size_t,
3745    ) -> zend_bool;
3746}
3747extern "C" {
3748    pub fn zend_hash_index_exists(ht: *const HashTable, h: zend_ulong) -> zend_bool;
3749}
3750extern "C" {
3751    pub fn zend_hash_move_forward_ex(
3752        ht: *mut HashTable,
3753        pos: *mut HashPosition,
3754    ) -> ::std::os::raw::c_int;
3755}
3756extern "C" {
3757    pub fn zend_hash_move_backwards_ex(
3758        ht: *mut HashTable,
3759        pos: *mut HashPosition,
3760    ) -> ::std::os::raw::c_int;
3761}
3762extern "C" {
3763    pub fn zend_hash_get_current_key_ex(
3764        ht: *const HashTable,
3765        str_index: *mut *mut zend_string,
3766        num_index: *mut zend_ulong,
3767        pos: *mut HashPosition,
3768    ) -> ::std::os::raw::c_int;
3769}
3770extern "C" {
3771    pub fn zend_hash_get_current_key_zval_ex(
3772        ht: *const HashTable,
3773        key: *mut zval,
3774        pos: *mut HashPosition,
3775    );
3776}
3777extern "C" {
3778    pub fn zend_hash_get_current_key_type_ex(
3779        ht: *mut HashTable,
3780        pos: *mut HashPosition,
3781    ) -> ::std::os::raw::c_int;
3782}
3783extern "C" {
3784    pub fn zend_hash_get_current_data_ex(ht: *mut HashTable, pos: *mut HashPosition) -> *mut zval;
3785}
3786extern "C" {
3787    pub fn zend_hash_internal_pointer_reset_ex(ht: *mut HashTable, pos: *mut HashPosition);
3788}
3789extern "C" {
3790    pub fn zend_hash_internal_pointer_end_ex(ht: *mut HashTable, pos: *mut HashPosition);
3791}
3792extern "C" {
3793    pub fn zend_hash_copy(
3794        target: *mut HashTable,
3795        source: *mut HashTable,
3796        pCopyConstructor: copy_ctor_func_t,
3797    );
3798}
3799extern "C" {
3800    pub fn _zend_hash_merge(
3801        target: *mut HashTable,
3802        source: *mut HashTable,
3803        pCopyConstructor: copy_ctor_func_t,
3804        overwrite: zend_bool,
3805    );
3806}
3807extern "C" {
3808    pub fn zend_hash_merge_ex(
3809        target: *mut HashTable,
3810        source: *mut HashTable,
3811        pCopyConstructor: copy_ctor_func_t,
3812        pMergeSource: merge_checker_func_t,
3813        pParam: *mut ::std::os::raw::c_void,
3814    );
3815}
3816extern "C" {
3817    pub fn zend_hash_bucket_swap(p: *mut Bucket, q: *mut Bucket);
3818}
3819extern "C" {
3820    pub fn zend_hash_bucket_renum_swap(p: *mut Bucket, q: *mut Bucket);
3821}
3822extern "C" {
3823    pub fn zend_hash_bucket_packed_swap(p: *mut Bucket, q: *mut Bucket);
3824}
3825extern "C" {
3826    pub fn zend_hash_compare(
3827        ht1: *mut HashTable,
3828        ht2: *mut HashTable,
3829        compar: compare_func_t,
3830        ordered: zend_bool,
3831    ) -> ::std::os::raw::c_int;
3832}
3833extern "C" {
3834    pub fn zend_hash_sort_ex(
3835        ht: *mut HashTable,
3836        sort_func: sort_func_t,
3837        compare_func: compare_func_t,
3838        renumber: zend_bool,
3839    ) -> ::std::os::raw::c_int;
3840}
3841extern "C" {
3842    pub fn zend_hash_minmax(ht: *const HashTable, compar: compare_func_t, flag: u32) -> *mut zval;
3843}
3844extern "C" {
3845    pub fn zend_hash_rehash(ht: *mut HashTable) -> ::std::os::raw::c_int;
3846}
3847extern "C" {
3848    pub fn zend_array_count(ht: *mut HashTable) -> u32;
3849}
3850extern "C" {
3851    pub fn zend_array_dup(source: *mut HashTable) -> *mut HashTable;
3852}
3853extern "C" {
3854    pub fn zend_array_destroy(ht: *mut HashTable);
3855}
3856extern "C" {
3857    pub fn zend_symtable_clean(ht: *mut HashTable);
3858}
3859extern "C" {
3860    pub fn zend_symtable_to_proptable(ht: *mut HashTable) -> *mut HashTable;
3861}
3862extern "C" {
3863    pub fn zend_proptable_to_symtable(
3864        ht: *mut HashTable,
3865        always_duplicate: zend_bool,
3866    ) -> *mut HashTable;
3867}
3868extern "C" {
3869    pub fn _zend_handle_numeric_str_ex(
3870        key: *const ::std::os::raw::c_char,
3871        length: size_t,
3872        idx: *mut zend_ulong,
3873    ) -> ::std::os::raw::c_int;
3874}
3875extern "C" {
3876    pub fn zend_hash_iterator_add(ht: *mut HashTable, pos: HashPosition) -> u32;
3877}
3878extern "C" {
3879    pub fn zend_hash_iterator_pos(idx: u32, ht: *mut HashTable) -> HashPosition;
3880}
3881extern "C" {
3882    pub fn zend_hash_iterator_pos_ex(idx: u32, array: *mut zval) -> HashPosition;
3883}
3884extern "C" {
3885    pub fn zend_hash_iterator_del(idx: u32);
3886}
3887extern "C" {
3888    pub fn zend_hash_iterators_lower_pos(ht: *mut HashTable, start: HashPosition) -> HashPosition;
3889}
3890extern "C" {
3891    pub fn _zend_hash_iterators_update(ht: *mut HashTable, from: HashPosition, to: HashPosition);
3892}
3893pub type zend_ast_kind = u16;
3894pub type zend_ast_attr = u16;
3895#[repr(C)]
3896#[derive(Debug, Copy, Clone)]
3897pub struct _zend_ast {
3898    pub kind: zend_ast_kind,
3899    pub attr: zend_ast_attr,
3900    pub lineno: u32,
3901    pub child: [*mut zend_ast; 1usize],
3902}
3903#[test]
3904fn bindgen_test_layout__zend_ast() {
3905    assert_eq!(
3906        ::std::mem::size_of::<_zend_ast>(),
3907        16usize,
3908        concat!("Size of: ", stringify!(_zend_ast))
3909    );
3910    assert_eq!(
3911        ::std::mem::align_of::<_zend_ast>(),
3912        8usize,
3913        concat!("Alignment of ", stringify!(_zend_ast))
3914    );
3915    assert_eq!(
3916        unsafe { &(*(::std::ptr::null::<_zend_ast>())).kind as *const _ as usize },
3917        0usize,
3918        concat!(
3919            "Offset of field: ",
3920            stringify!(_zend_ast),
3921            "::",
3922            stringify!(kind)
3923        )
3924    );
3925    assert_eq!(
3926        unsafe { &(*(::std::ptr::null::<_zend_ast>())).attr as *const _ as usize },
3927        2usize,
3928        concat!(
3929            "Offset of field: ",
3930            stringify!(_zend_ast),
3931            "::",
3932            stringify!(attr)
3933        )
3934    );
3935    assert_eq!(
3936        unsafe { &(*(::std::ptr::null::<_zend_ast>())).lineno as *const _ as usize },
3937        4usize,
3938        concat!(
3939            "Offset of field: ",
3940            stringify!(_zend_ast),
3941            "::",
3942            stringify!(lineno)
3943        )
3944    );
3945    assert_eq!(
3946        unsafe { &(*(::std::ptr::null::<_zend_ast>())).child as *const _ as usize },
3947        8usize,
3948        concat!(
3949            "Offset of field: ",
3950            stringify!(_zend_ast),
3951            "::",
3952            stringify!(child)
3953        )
3954    );
3955}
3956#[repr(C)]
3957#[derive(Debug, Copy, Clone)]
3958pub struct _zend_ast_list {
3959    pub kind: zend_ast_kind,
3960    pub attr: zend_ast_attr,
3961    pub lineno: u32,
3962    pub children: u32,
3963    pub child: [*mut zend_ast; 1usize],
3964}
3965#[test]
3966fn bindgen_test_layout__zend_ast_list() {
3967    assert_eq!(
3968        ::std::mem::size_of::<_zend_ast_list>(),
3969        24usize,
3970        concat!("Size of: ", stringify!(_zend_ast_list))
3971    );
3972    assert_eq!(
3973        ::std::mem::align_of::<_zend_ast_list>(),
3974        8usize,
3975        concat!("Alignment of ", stringify!(_zend_ast_list))
3976    );
3977    assert_eq!(
3978        unsafe { &(*(::std::ptr::null::<_zend_ast_list>())).kind as *const _ as usize },
3979        0usize,
3980        concat!(
3981            "Offset of field: ",
3982            stringify!(_zend_ast_list),
3983            "::",
3984            stringify!(kind)
3985        )
3986    );
3987    assert_eq!(
3988        unsafe { &(*(::std::ptr::null::<_zend_ast_list>())).attr as *const _ as usize },
3989        2usize,
3990        concat!(
3991            "Offset of field: ",
3992            stringify!(_zend_ast_list),
3993            "::",
3994            stringify!(attr)
3995        )
3996    );
3997    assert_eq!(
3998        unsafe { &(*(::std::ptr::null::<_zend_ast_list>())).lineno as *const _ as usize },
3999        4usize,
4000        concat!(
4001            "Offset of field: ",
4002            stringify!(_zend_ast_list),
4003            "::",
4004            stringify!(lineno)
4005        )
4006    );
4007    assert_eq!(
4008        unsafe { &(*(::std::ptr::null::<_zend_ast_list>())).children as *const _ as usize },
4009        8usize,
4010        concat!(
4011            "Offset of field: ",
4012            stringify!(_zend_ast_list),
4013            "::",
4014            stringify!(children)
4015        )
4016    );
4017    assert_eq!(
4018        unsafe { &(*(::std::ptr::null::<_zend_ast_list>())).child as *const _ as usize },
4019        16usize,
4020        concat!(
4021            "Offset of field: ",
4022            stringify!(_zend_ast_list),
4023            "::",
4024            stringify!(child)
4025        )
4026    );
4027}
4028pub type zend_ast_list = _zend_ast_list;
4029#[repr(C)]
4030#[derive(Copy, Clone)]
4031pub struct _zend_ast_zval {
4032    pub kind: zend_ast_kind,
4033    pub attr: zend_ast_attr,
4034    pub val: zval,
4035}
4036#[test]
4037fn bindgen_test_layout__zend_ast_zval() {
4038    assert_eq!(
4039        ::std::mem::size_of::<_zend_ast_zval>(),
4040        24usize,
4041        concat!("Size of: ", stringify!(_zend_ast_zval))
4042    );
4043    assert_eq!(
4044        ::std::mem::align_of::<_zend_ast_zval>(),
4045        8usize,
4046        concat!("Alignment of ", stringify!(_zend_ast_zval))
4047    );
4048    assert_eq!(
4049        unsafe { &(*(::std::ptr::null::<_zend_ast_zval>())).kind as *const _ as usize },
4050        0usize,
4051        concat!(
4052            "Offset of field: ",
4053            stringify!(_zend_ast_zval),
4054            "::",
4055            stringify!(kind)
4056        )
4057    );
4058    assert_eq!(
4059        unsafe { &(*(::std::ptr::null::<_zend_ast_zval>())).attr as *const _ as usize },
4060        2usize,
4061        concat!(
4062            "Offset of field: ",
4063            stringify!(_zend_ast_zval),
4064            "::",
4065            stringify!(attr)
4066        )
4067    );
4068    assert_eq!(
4069        unsafe { &(*(::std::ptr::null::<_zend_ast_zval>())).val as *const _ as usize },
4070        8usize,
4071        concat!(
4072            "Offset of field: ",
4073            stringify!(_zend_ast_zval),
4074            "::",
4075            stringify!(val)
4076        )
4077    );
4078}
4079pub type zend_ast_zval = _zend_ast_zval;
4080#[repr(C)]
4081#[derive(Debug, Copy, Clone)]
4082pub struct _zend_ast_decl {
4083    pub kind: zend_ast_kind,
4084    pub attr: zend_ast_attr,
4085    pub start_lineno: u32,
4086    pub end_lineno: u32,
4087    pub flags: u32,
4088    pub lex_pos: *mut ::std::os::raw::c_uchar,
4089    pub doc_comment: *mut zend_string,
4090    pub name: *mut zend_string,
4091    pub child: [*mut zend_ast; 4usize],
4092}
4093#[test]
4094fn bindgen_test_layout__zend_ast_decl() {
4095    assert_eq!(
4096        ::std::mem::size_of::<_zend_ast_decl>(),
4097        72usize,
4098        concat!("Size of: ", stringify!(_zend_ast_decl))
4099    );
4100    assert_eq!(
4101        ::std::mem::align_of::<_zend_ast_decl>(),
4102        8usize,
4103        concat!("Alignment of ", stringify!(_zend_ast_decl))
4104    );
4105    assert_eq!(
4106        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).kind as *const _ as usize },
4107        0usize,
4108        concat!(
4109            "Offset of field: ",
4110            stringify!(_zend_ast_decl),
4111            "::",
4112            stringify!(kind)
4113        )
4114    );
4115    assert_eq!(
4116        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).attr as *const _ as usize },
4117        2usize,
4118        concat!(
4119            "Offset of field: ",
4120            stringify!(_zend_ast_decl),
4121            "::",
4122            stringify!(attr)
4123        )
4124    );
4125    assert_eq!(
4126        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).start_lineno as *const _ as usize },
4127        4usize,
4128        concat!(
4129            "Offset of field: ",
4130            stringify!(_zend_ast_decl),
4131            "::",
4132            stringify!(start_lineno)
4133        )
4134    );
4135    assert_eq!(
4136        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).end_lineno as *const _ as usize },
4137        8usize,
4138        concat!(
4139            "Offset of field: ",
4140            stringify!(_zend_ast_decl),
4141            "::",
4142            stringify!(end_lineno)
4143        )
4144    );
4145    assert_eq!(
4146        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).flags as *const _ as usize },
4147        12usize,
4148        concat!(
4149            "Offset of field: ",
4150            stringify!(_zend_ast_decl),
4151            "::",
4152            stringify!(flags)
4153        )
4154    );
4155    assert_eq!(
4156        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).lex_pos as *const _ as usize },
4157        16usize,
4158        concat!(
4159            "Offset of field: ",
4160            stringify!(_zend_ast_decl),
4161            "::",
4162            stringify!(lex_pos)
4163        )
4164    );
4165    assert_eq!(
4166        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).doc_comment as *const _ as usize },
4167        24usize,
4168        concat!(
4169            "Offset of field: ",
4170            stringify!(_zend_ast_decl),
4171            "::",
4172            stringify!(doc_comment)
4173        )
4174    );
4175    assert_eq!(
4176        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).name as *const _ as usize },
4177        32usize,
4178        concat!(
4179            "Offset of field: ",
4180            stringify!(_zend_ast_decl),
4181            "::",
4182            stringify!(name)
4183        )
4184    );
4185    assert_eq!(
4186        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).child as *const _ as usize },
4187        40usize,
4188        concat!(
4189            "Offset of field: ",
4190            stringify!(_zend_ast_decl),
4191            "::",
4192            stringify!(child)
4193        )
4194    );
4195}
4196pub type zend_ast_decl = _zend_ast_decl;
4197pub type zend_ast_process_t = ::std::option::Option<unsafe extern "C" fn(ast: *mut zend_ast)>;
4198extern "C" {
4199    pub static mut zend_ast_process: zend_ast_process_t;
4200}
4201extern "C" {
4202    pub fn zend_ast_create_zval_with_lineno(
4203        zv: *mut zval,
4204        attr: zend_ast_attr,
4205        lineno: u32,
4206    ) -> *mut zend_ast;
4207}
4208extern "C" {
4209    pub fn zend_ast_create_zval_ex(zv: *mut zval, attr: zend_ast_attr) -> *mut zend_ast;
4210}
4211extern "C" {
4212    pub fn zend_ast_create_ex(kind: zend_ast_kind, attr: zend_ast_attr, ...) -> *mut zend_ast;
4213}
4214extern "C" {
4215    pub fn zend_ast_create(kind: zend_ast_kind, ...) -> *mut zend_ast;
4216}
4217extern "C" {
4218    pub fn zend_ast_create_decl(
4219        kind: zend_ast_kind,
4220        flags: u32,
4221        start_lineno: u32,
4222        doc_comment: *mut zend_string,
4223        name: *mut zend_string,
4224        child0: *mut zend_ast,
4225        child1: *mut zend_ast,
4226        child2: *mut zend_ast,
4227        child3: *mut zend_ast,
4228    ) -> *mut zend_ast;
4229}
4230extern "C" {
4231    pub fn zend_ast_create_list(init_children: u32, kind: zend_ast_kind, ...) -> *mut zend_ast;
4232}
4233extern "C" {
4234    pub fn zend_ast_list_add(list: *mut zend_ast, op: *mut zend_ast) -> *mut zend_ast;
4235}
4236extern "C" {
4237    pub fn zend_ast_evaluate(
4238        result: *mut zval,
4239        ast: *mut zend_ast,
4240        scope: *mut zend_class_entry,
4241    ) -> ::std::os::raw::c_int;
4242}
4243extern "C" {
4244    pub fn zend_ast_export(
4245        prefix: *const ::std::os::raw::c_char,
4246        ast: *mut zend_ast,
4247        suffix: *const ::std::os::raw::c_char,
4248    ) -> *mut zend_string;
4249}
4250extern "C" {
4251    pub fn zend_ast_copy(ast: *mut zend_ast) -> *mut zend_ast;
4252}
4253extern "C" {
4254    pub fn zend_ast_destroy(ast: *mut zend_ast);
4255}
4256extern "C" {
4257    pub fn zend_ast_destroy_and_free(ast: *mut zend_ast);
4258}
4259pub type zend_ast_apply_func =
4260    ::std::option::Option<unsafe extern "C" fn(ast_ptr: *mut *mut zend_ast)>;
4261extern "C" {
4262    pub fn zend_ast_apply(ast: *mut zend_ast, fn_: zend_ast_apply_func);
4263}
4264#[repr(C)]
4265#[derive(Debug, Copy, Clone)]
4266pub struct _gc_root_buffer {
4267    pub ref_: *mut zend_refcounted,
4268    pub next: *mut _gc_root_buffer,
4269    pub prev: *mut _gc_root_buffer,
4270    pub refcount: u32,
4271}
4272#[test]
4273fn bindgen_test_layout__gc_root_buffer() {
4274    assert_eq!(
4275        ::std::mem::size_of::<_gc_root_buffer>(),
4276        32usize,
4277        concat!("Size of: ", stringify!(_gc_root_buffer))
4278    );
4279    assert_eq!(
4280        ::std::mem::align_of::<_gc_root_buffer>(),
4281        8usize,
4282        concat!("Alignment of ", stringify!(_gc_root_buffer))
4283    );
4284    assert_eq!(
4285        unsafe { &(*(::std::ptr::null::<_gc_root_buffer>())).ref_ as *const _ as usize },
4286        0usize,
4287        concat!(
4288            "Offset of field: ",
4289            stringify!(_gc_root_buffer),
4290            "::",
4291            stringify!(ref_)
4292        )
4293    );
4294    assert_eq!(
4295        unsafe { &(*(::std::ptr::null::<_gc_root_buffer>())).next as *const _ as usize },
4296        8usize,
4297        concat!(
4298            "Offset of field: ",
4299            stringify!(_gc_root_buffer),
4300            "::",
4301            stringify!(next)
4302        )
4303    );
4304    assert_eq!(
4305        unsafe { &(*(::std::ptr::null::<_gc_root_buffer>())).prev as *const _ as usize },
4306        16usize,
4307        concat!(
4308            "Offset of field: ",
4309            stringify!(_gc_root_buffer),
4310            "::",
4311            stringify!(prev)
4312        )
4313    );
4314    assert_eq!(
4315        unsafe { &(*(::std::ptr::null::<_gc_root_buffer>())).refcount as *const _ as usize },
4316        24usize,
4317        concat!(
4318            "Offset of field: ",
4319            stringify!(_gc_root_buffer),
4320            "::",
4321            stringify!(refcount)
4322        )
4323    );
4324}
4325pub type gc_root_buffer = _gc_root_buffer;
4326pub type gc_additional_buffer = _gc_additional_bufer;
4327#[repr(C)]
4328#[derive(Copy, Clone)]
4329pub struct _gc_additional_bufer {
4330    pub used: u32,
4331    pub next: *mut gc_additional_buffer,
4332    pub buf: [gc_root_buffer; 127usize],
4333}
4334#[test]
4335fn bindgen_test_layout__gc_additional_bufer() {
4336    assert_eq!(
4337        ::std::mem::size_of::<_gc_additional_bufer>(),
4338        4080usize,
4339        concat!("Size of: ", stringify!(_gc_additional_bufer))
4340    );
4341    assert_eq!(
4342        ::std::mem::align_of::<_gc_additional_bufer>(),
4343        8usize,
4344        concat!("Alignment of ", stringify!(_gc_additional_bufer))
4345    );
4346    assert_eq!(
4347        unsafe { &(*(::std::ptr::null::<_gc_additional_bufer>())).used as *const _ as usize },
4348        0usize,
4349        concat!(
4350            "Offset of field: ",
4351            stringify!(_gc_additional_bufer),
4352            "::",
4353            stringify!(used)
4354        )
4355    );
4356    assert_eq!(
4357        unsafe { &(*(::std::ptr::null::<_gc_additional_bufer>())).next as *const _ as usize },
4358        8usize,
4359        concat!(
4360            "Offset of field: ",
4361            stringify!(_gc_additional_bufer),
4362            "::",
4363            stringify!(next)
4364        )
4365    );
4366    assert_eq!(
4367        unsafe { &(*(::std::ptr::null::<_gc_additional_bufer>())).buf as *const _ as usize },
4368        16usize,
4369        concat!(
4370            "Offset of field: ",
4371            stringify!(_gc_additional_bufer),
4372            "::",
4373            stringify!(buf)
4374        )
4375    );
4376}
4377#[repr(C)]
4378#[derive(Debug, Copy, Clone)]
4379pub struct _zend_gc_globals {
4380    pub gc_enabled: zend_bool,
4381    pub gc_active: zend_bool,
4382    pub gc_full: zend_bool,
4383    pub buf: *mut gc_root_buffer,
4384    pub roots: gc_root_buffer,
4385    pub unused: *mut gc_root_buffer,
4386    pub first_unused: *mut gc_root_buffer,
4387    pub last_unused: *mut gc_root_buffer,
4388    pub to_free: gc_root_buffer,
4389    pub next_to_free: *mut gc_root_buffer,
4390    pub gc_runs: u32,
4391    pub collected: u32,
4392    pub additional_buffer: *mut gc_additional_buffer,
4393}
4394#[test]
4395fn bindgen_test_layout__zend_gc_globals() {
4396    assert_eq!(
4397        ::std::mem::size_of::<_zend_gc_globals>(),
4398        128usize,
4399        concat!("Size of: ", stringify!(_zend_gc_globals))
4400    );
4401    assert_eq!(
4402        ::std::mem::align_of::<_zend_gc_globals>(),
4403        8usize,
4404        concat!("Alignment of ", stringify!(_zend_gc_globals))
4405    );
4406    assert_eq!(
4407        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).gc_enabled as *const _ as usize },
4408        0usize,
4409        concat!(
4410            "Offset of field: ",
4411            stringify!(_zend_gc_globals),
4412            "::",
4413            stringify!(gc_enabled)
4414        )
4415    );
4416    assert_eq!(
4417        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).gc_active as *const _ as usize },
4418        1usize,
4419        concat!(
4420            "Offset of field: ",
4421            stringify!(_zend_gc_globals),
4422            "::",
4423            stringify!(gc_active)
4424        )
4425    );
4426    assert_eq!(
4427        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).gc_full as *const _ as usize },
4428        2usize,
4429        concat!(
4430            "Offset of field: ",
4431            stringify!(_zend_gc_globals),
4432            "::",
4433            stringify!(gc_full)
4434        )
4435    );
4436    assert_eq!(
4437        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).buf as *const _ as usize },
4438        8usize,
4439        concat!(
4440            "Offset of field: ",
4441            stringify!(_zend_gc_globals),
4442            "::",
4443            stringify!(buf)
4444        )
4445    );
4446    assert_eq!(
4447        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).roots as *const _ as usize },
4448        16usize,
4449        concat!(
4450            "Offset of field: ",
4451            stringify!(_zend_gc_globals),
4452            "::",
4453            stringify!(roots)
4454        )
4455    );
4456    assert_eq!(
4457        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).unused as *const _ as usize },
4458        48usize,
4459        concat!(
4460            "Offset of field: ",
4461            stringify!(_zend_gc_globals),
4462            "::",
4463            stringify!(unused)
4464        )
4465    );
4466    assert_eq!(
4467        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).first_unused as *const _ as usize },
4468        56usize,
4469        concat!(
4470            "Offset of field: ",
4471            stringify!(_zend_gc_globals),
4472            "::",
4473            stringify!(first_unused)
4474        )
4475    );
4476    assert_eq!(
4477        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).last_unused as *const _ as usize },
4478        64usize,
4479        concat!(
4480            "Offset of field: ",
4481            stringify!(_zend_gc_globals),
4482            "::",
4483            stringify!(last_unused)
4484        )
4485    );
4486    assert_eq!(
4487        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).to_free as *const _ as usize },
4488        72usize,
4489        concat!(
4490            "Offset of field: ",
4491            stringify!(_zend_gc_globals),
4492            "::",
4493            stringify!(to_free)
4494        )
4495    );
4496    assert_eq!(
4497        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).next_to_free as *const _ as usize },
4498        104usize,
4499        concat!(
4500            "Offset of field: ",
4501            stringify!(_zend_gc_globals),
4502            "::",
4503            stringify!(next_to_free)
4504        )
4505    );
4506    assert_eq!(
4507        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).gc_runs as *const _ as usize },
4508        112usize,
4509        concat!(
4510            "Offset of field: ",
4511            stringify!(_zend_gc_globals),
4512            "::",
4513            stringify!(gc_runs)
4514        )
4515    );
4516    assert_eq!(
4517        unsafe { &(*(::std::ptr::null::<_zend_gc_globals>())).collected as *const _ as usize },
4518        116usize,
4519        concat!(
4520            "Offset of field: ",
4521            stringify!(_zend_gc_globals),
4522            "::",
4523            stringify!(collected)
4524        )
4525    );
4526    assert_eq!(
4527        unsafe {
4528            &(*(::std::ptr::null::<_zend_gc_globals>())).additional_buffer as *const _ as usize
4529        },
4530        120usize,
4531        concat!(
4532            "Offset of field: ",
4533            stringify!(_zend_gc_globals),
4534            "::",
4535            stringify!(additional_buffer)
4536        )
4537    );
4538}
4539pub type zend_gc_globals = _zend_gc_globals;
4540extern "C" {
4541    pub static mut gc_globals: zend_gc_globals;
4542}
4543extern "C" {
4544    pub static mut gc_collect_cycles:
4545        ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_int>;
4546}
4547extern "C" {
4548    pub fn zend_gc_collect_cycles() -> ::std::os::raw::c_int;
4549}
4550extern "C" {
4551    pub fn zend_print_variable(var: *mut zval) -> size_t;
4552}
4553pub type zend_object_iterator = _zend_object_iterator;
4554#[repr(C)]
4555#[derive(Debug, Copy, Clone)]
4556pub struct _zend_object_iterator_funcs {
4557    pub dtor: ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
4558    pub valid: ::std::option::Option<
4559        unsafe extern "C" fn(iter: *mut zend_object_iterator) -> ::std::os::raw::c_int,
4560    >,
4561    pub get_current_data:
4562        ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator) -> *mut zval>,
4563    pub get_current_key: ::std::option::Option<
4564        unsafe extern "C" fn(iter: *mut zend_object_iterator, key: *mut zval),
4565    >,
4566    pub move_forward: ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
4567    pub rewind: ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
4568    pub invalidate_current:
4569        ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
4570}
4571#[test]
4572fn bindgen_test_layout__zend_object_iterator_funcs() {
4573    assert_eq!(
4574        ::std::mem::size_of::<_zend_object_iterator_funcs>(),
4575        56usize,
4576        concat!("Size of: ", stringify!(_zend_object_iterator_funcs))
4577    );
4578    assert_eq!(
4579        ::std::mem::align_of::<_zend_object_iterator_funcs>(),
4580        8usize,
4581        concat!("Alignment of ", stringify!(_zend_object_iterator_funcs))
4582    );
4583    assert_eq!(
4584        unsafe {
4585            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).dtor as *const _ as usize
4586        },
4587        0usize,
4588        concat!(
4589            "Offset of field: ",
4590            stringify!(_zend_object_iterator_funcs),
4591            "::",
4592            stringify!(dtor)
4593        )
4594    );
4595    assert_eq!(
4596        unsafe {
4597            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).valid as *const _ as usize
4598        },
4599        8usize,
4600        concat!(
4601            "Offset of field: ",
4602            stringify!(_zend_object_iterator_funcs),
4603            "::",
4604            stringify!(valid)
4605        )
4606    );
4607    assert_eq!(
4608        unsafe {
4609            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).get_current_data as *const _
4610                as usize
4611        },
4612        16usize,
4613        concat!(
4614            "Offset of field: ",
4615            stringify!(_zend_object_iterator_funcs),
4616            "::",
4617            stringify!(get_current_data)
4618        )
4619    );
4620    assert_eq!(
4621        unsafe {
4622            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).get_current_key as *const _
4623                as usize
4624        },
4625        24usize,
4626        concat!(
4627            "Offset of field: ",
4628            stringify!(_zend_object_iterator_funcs),
4629            "::",
4630            stringify!(get_current_key)
4631        )
4632    );
4633    assert_eq!(
4634        unsafe {
4635            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).move_forward as *const _
4636                as usize
4637        },
4638        32usize,
4639        concat!(
4640            "Offset of field: ",
4641            stringify!(_zend_object_iterator_funcs),
4642            "::",
4643            stringify!(move_forward)
4644        )
4645    );
4646    assert_eq!(
4647        unsafe {
4648            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).rewind as *const _ as usize
4649        },
4650        40usize,
4651        concat!(
4652            "Offset of field: ",
4653            stringify!(_zend_object_iterator_funcs),
4654            "::",
4655            stringify!(rewind)
4656        )
4657    );
4658    assert_eq!(
4659        unsafe {
4660            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).invalidate_current as *const _
4661                as usize
4662        },
4663        48usize,
4664        concat!(
4665            "Offset of field: ",
4666            stringify!(_zend_object_iterator_funcs),
4667            "::",
4668            stringify!(invalidate_current)
4669        )
4670    );
4671}
4672pub type zend_object_iterator_funcs = _zend_object_iterator_funcs;
4673#[repr(C)]
4674#[derive(Copy, Clone)]
4675pub struct _zend_object_iterator {
4676    pub std: zend_object,
4677    pub data: zval,
4678    pub funcs: *mut zend_object_iterator_funcs,
4679    pub index: zend_ulong,
4680}
4681#[test]
4682fn bindgen_test_layout__zend_object_iterator() {
4683    assert_eq!(
4684        ::std::mem::size_of::<_zend_object_iterator>(),
4685        88usize,
4686        concat!("Size of: ", stringify!(_zend_object_iterator))
4687    );
4688    assert_eq!(
4689        ::std::mem::align_of::<_zend_object_iterator>(),
4690        8usize,
4691        concat!("Alignment of ", stringify!(_zend_object_iterator))
4692    );
4693    assert_eq!(
4694        unsafe { &(*(::std::ptr::null::<_zend_object_iterator>())).std as *const _ as usize },
4695        0usize,
4696        concat!(
4697            "Offset of field: ",
4698            stringify!(_zend_object_iterator),
4699            "::",
4700            stringify!(std)
4701        )
4702    );
4703    assert_eq!(
4704        unsafe { &(*(::std::ptr::null::<_zend_object_iterator>())).data as *const _ as usize },
4705        56usize,
4706        concat!(
4707            "Offset of field: ",
4708            stringify!(_zend_object_iterator),
4709            "::",
4710            stringify!(data)
4711        )
4712    );
4713    assert_eq!(
4714        unsafe { &(*(::std::ptr::null::<_zend_object_iterator>())).funcs as *const _ as usize },
4715        72usize,
4716        concat!(
4717            "Offset of field: ",
4718            stringify!(_zend_object_iterator),
4719            "::",
4720            stringify!(funcs)
4721        )
4722    );
4723    assert_eq!(
4724        unsafe { &(*(::std::ptr::null::<_zend_object_iterator>())).index as *const _ as usize },
4725        80usize,
4726        concat!(
4727            "Offset of field: ",
4728            stringify!(_zend_object_iterator),
4729            "::",
4730            stringify!(index)
4731        )
4732    );
4733}
4734#[repr(C)]
4735#[derive(Debug, Copy, Clone)]
4736pub struct _zend_class_iterator_funcs {
4737    pub funcs: *mut zend_object_iterator_funcs,
4738    pub zf_new_iterator: *mut _zend_function,
4739    pub zf_valid: *mut _zend_function,
4740    pub zf_current: *mut _zend_function,
4741    pub zf_key: *mut _zend_function,
4742    pub zf_next: *mut _zend_function,
4743    pub zf_rewind: *mut _zend_function,
4744}
4745#[test]
4746fn bindgen_test_layout__zend_class_iterator_funcs() {
4747    assert_eq!(
4748        ::std::mem::size_of::<_zend_class_iterator_funcs>(),
4749        56usize,
4750        concat!("Size of: ", stringify!(_zend_class_iterator_funcs))
4751    );
4752    assert_eq!(
4753        ::std::mem::align_of::<_zend_class_iterator_funcs>(),
4754        8usize,
4755        concat!("Alignment of ", stringify!(_zend_class_iterator_funcs))
4756    );
4757    assert_eq!(
4758        unsafe {
4759            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).funcs as *const _ as usize
4760        },
4761        0usize,
4762        concat!(
4763            "Offset of field: ",
4764            stringify!(_zend_class_iterator_funcs),
4765            "::",
4766            stringify!(funcs)
4767        )
4768    );
4769    assert_eq!(
4770        unsafe {
4771            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_new_iterator as *const _
4772                as usize
4773        },
4774        8usize,
4775        concat!(
4776            "Offset of field: ",
4777            stringify!(_zend_class_iterator_funcs),
4778            "::",
4779            stringify!(zf_new_iterator)
4780        )
4781    );
4782    assert_eq!(
4783        unsafe {
4784            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_valid as *const _ as usize
4785        },
4786        16usize,
4787        concat!(
4788            "Offset of field: ",
4789            stringify!(_zend_class_iterator_funcs),
4790            "::",
4791            stringify!(zf_valid)
4792        )
4793    );
4794    assert_eq!(
4795        unsafe {
4796            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_current as *const _ as usize
4797        },
4798        24usize,
4799        concat!(
4800            "Offset of field: ",
4801            stringify!(_zend_class_iterator_funcs),
4802            "::",
4803            stringify!(zf_current)
4804        )
4805    );
4806    assert_eq!(
4807        unsafe {
4808            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_key as *const _ as usize
4809        },
4810        32usize,
4811        concat!(
4812            "Offset of field: ",
4813            stringify!(_zend_class_iterator_funcs),
4814            "::",
4815            stringify!(zf_key)
4816        )
4817    );
4818    assert_eq!(
4819        unsafe {
4820            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_next as *const _ as usize
4821        },
4822        40usize,
4823        concat!(
4824            "Offset of field: ",
4825            stringify!(_zend_class_iterator_funcs),
4826            "::",
4827            stringify!(zf_next)
4828        )
4829    );
4830    assert_eq!(
4831        unsafe {
4832            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_rewind as *const _ as usize
4833        },
4834        48usize,
4835        concat!(
4836            "Offset of field: ",
4837            stringify!(_zend_class_iterator_funcs),
4838            "::",
4839            stringify!(zf_rewind)
4840        )
4841    );
4842}
4843pub type zend_class_iterator_funcs = _zend_class_iterator_funcs;
4844extern "C" {
4845    pub fn zend_iterator_unwrap(array_ptr: *mut zval) -> *mut zend_object_iterator;
4846}
4847extern "C" {
4848    pub fn zend_iterator_init(iter: *mut zend_object_iterator);
4849}
4850extern "C" {
4851    pub fn zend_iterator_dtor(iter: *mut zend_object_iterator);
4852}
4853extern "C" {
4854    pub fn zend_register_iterator_wrapper();
4855}
4856#[repr(C)]
4857#[derive(Debug, Copy, Clone)]
4858pub struct stat {
4859    pub st_dev: __dev_t,
4860    pub st_ino: __ino_t,
4861    pub st_nlink: __nlink_t,
4862    pub st_mode: __mode_t,
4863    pub st_uid: __uid_t,
4864    pub st_gid: __gid_t,
4865    pub __pad0: ::std::os::raw::c_int,
4866    pub st_rdev: __dev_t,
4867    pub st_size: __off_t,
4868    pub st_blksize: __blksize_t,
4869    pub st_blocks: __blkcnt_t,
4870    pub st_atim: timespec,
4871    pub st_mtim: timespec,
4872    pub st_ctim: timespec,
4873    pub __glibc_reserved: [__syscall_slong_t; 3usize],
4874}
4875#[test]
4876fn bindgen_test_layout_stat() {
4877    assert_eq!(
4878        ::std::mem::size_of::<stat>(),
4879        144usize,
4880        concat!("Size of: ", stringify!(stat))
4881    );
4882    assert_eq!(
4883        ::std::mem::align_of::<stat>(),
4884        8usize,
4885        concat!("Alignment of ", stringify!(stat))
4886    );
4887    assert_eq!(
4888        unsafe { &(*(::std::ptr::null::<stat>())).st_dev as *const _ as usize },
4889        0usize,
4890        concat!(
4891            "Offset of field: ",
4892            stringify!(stat),
4893            "::",
4894            stringify!(st_dev)
4895        )
4896    );
4897    assert_eq!(
4898        unsafe { &(*(::std::ptr::null::<stat>())).st_ino as *const _ as usize },
4899        8usize,
4900        concat!(
4901            "Offset of field: ",
4902            stringify!(stat),
4903            "::",
4904            stringify!(st_ino)
4905        )
4906    );
4907    assert_eq!(
4908        unsafe { &(*(::std::ptr::null::<stat>())).st_nlink as *const _ as usize },
4909        16usize,
4910        concat!(
4911            "Offset of field: ",
4912            stringify!(stat),
4913            "::",
4914            stringify!(st_nlink)
4915        )
4916    );
4917    assert_eq!(
4918        unsafe { &(*(::std::ptr::null::<stat>())).st_mode as *const _ as usize },
4919        24usize,
4920        concat!(
4921            "Offset of field: ",
4922            stringify!(stat),
4923            "::",
4924            stringify!(st_mode)
4925        )
4926    );
4927    assert_eq!(
4928        unsafe { &(*(::std::ptr::null::<stat>())).st_uid as *const _ as usize },
4929        28usize,
4930        concat!(
4931            "Offset of field: ",
4932            stringify!(stat),
4933            "::",
4934            stringify!(st_uid)
4935        )
4936    );
4937    assert_eq!(
4938        unsafe { &(*(::std::ptr::null::<stat>())).st_gid as *const _ as usize },
4939        32usize,
4940        concat!(
4941            "Offset of field: ",
4942            stringify!(stat),
4943            "::",
4944            stringify!(st_gid)
4945        )
4946    );
4947    assert_eq!(
4948        unsafe { &(*(::std::ptr::null::<stat>())).__pad0 as *const _ as usize },
4949        36usize,
4950        concat!(
4951            "Offset of field: ",
4952            stringify!(stat),
4953            "::",
4954            stringify!(__pad0)
4955        )
4956    );
4957    assert_eq!(
4958        unsafe { &(*(::std::ptr::null::<stat>())).st_rdev as *const _ as usize },
4959        40usize,
4960        concat!(
4961            "Offset of field: ",
4962            stringify!(stat),
4963            "::",
4964            stringify!(st_rdev)
4965        )
4966    );
4967    assert_eq!(
4968        unsafe { &(*(::std::ptr::null::<stat>())).st_size as *const _ as usize },
4969        48usize,
4970        concat!(
4971            "Offset of field: ",
4972            stringify!(stat),
4973            "::",
4974            stringify!(st_size)
4975        )
4976    );
4977    assert_eq!(
4978        unsafe { &(*(::std::ptr::null::<stat>())).st_blksize as *const _ as usize },
4979        56usize,
4980        concat!(
4981            "Offset of field: ",
4982            stringify!(stat),
4983            "::",
4984            stringify!(st_blksize)
4985        )
4986    );
4987    assert_eq!(
4988        unsafe { &(*(::std::ptr::null::<stat>())).st_blocks as *const _ as usize },
4989        64usize,
4990        concat!(
4991            "Offset of field: ",
4992            stringify!(stat),
4993            "::",
4994            stringify!(st_blocks)
4995        )
4996    );
4997    assert_eq!(
4998        unsafe { &(*(::std::ptr::null::<stat>())).st_atim as *const _ as usize },
4999        72usize,
5000        concat!(
5001            "Offset of field: ",
5002            stringify!(stat),
5003            "::",
5004            stringify!(st_atim)
5005        )
5006    );
5007    assert_eq!(
5008        unsafe { &(*(::std::ptr::null::<stat>())).st_mtim as *const _ as usize },
5009        88usize,
5010        concat!(
5011            "Offset of field: ",
5012            stringify!(stat),
5013            "::",
5014            stringify!(st_mtim)
5015        )
5016    );
5017    assert_eq!(
5018        unsafe { &(*(::std::ptr::null::<stat>())).st_ctim as *const _ as usize },
5019        104usize,
5020        concat!(
5021            "Offset of field: ",
5022            stringify!(stat),
5023            "::",
5024            stringify!(st_ctim)
5025        )
5026    );
5027    assert_eq!(
5028        unsafe { &(*(::std::ptr::null::<stat>())).__glibc_reserved as *const _ as usize },
5029        120usize,
5030        concat!(
5031            "Offset of field: ",
5032            stringify!(stat),
5033            "::",
5034            stringify!(__glibc_reserved)
5035        )
5036    );
5037}
5038pub type zend_stream_fsizer_t =
5039    ::std::option::Option<unsafe extern "C" fn(handle: *mut ::std::os::raw::c_void) -> size_t>;
5040pub type zend_stream_reader_t = ::std::option::Option<
5041    unsafe extern "C" fn(
5042        handle: *mut ::std::os::raw::c_void,
5043        buf: *mut ::std::os::raw::c_char,
5044        len: size_t,
5045    ) -> size_t,
5046>;
5047pub type zend_stream_closer_t =
5048    ::std::option::Option<unsafe extern "C" fn(handle: *mut ::std::os::raw::c_void)>;
5049pub const zend_stream_type_ZEND_HANDLE_FILENAME: zend_stream_type = 0;
5050pub const zend_stream_type_ZEND_HANDLE_FD: zend_stream_type = 1;
5051pub const zend_stream_type_ZEND_HANDLE_FP: zend_stream_type = 2;
5052pub const zend_stream_type_ZEND_HANDLE_STREAM: zend_stream_type = 3;
5053pub const zend_stream_type_ZEND_HANDLE_MAPPED: zend_stream_type = 4;
5054pub type zend_stream_type = ::std::os::raw::c_uint;
5055#[repr(C)]
5056#[derive(Debug, Copy, Clone)]
5057pub struct _zend_mmap {
5058    pub len: size_t,
5059    pub pos: size_t,
5060    pub map: *mut ::std::os::raw::c_void,
5061    pub buf: *mut ::std::os::raw::c_char,
5062    pub old_handle: *mut ::std::os::raw::c_void,
5063    pub old_closer: zend_stream_closer_t,
5064}
5065#[test]
5066fn bindgen_test_layout__zend_mmap() {
5067    assert_eq!(
5068        ::std::mem::size_of::<_zend_mmap>(),
5069        48usize,
5070        concat!("Size of: ", stringify!(_zend_mmap))
5071    );
5072    assert_eq!(
5073        ::std::mem::align_of::<_zend_mmap>(),
5074        8usize,
5075        concat!("Alignment of ", stringify!(_zend_mmap))
5076    );
5077    assert_eq!(
5078        unsafe { &(*(::std::ptr::null::<_zend_mmap>())).len as *const _ as usize },
5079        0usize,
5080        concat!(
5081            "Offset of field: ",
5082            stringify!(_zend_mmap),
5083            "::",
5084            stringify!(len)
5085        )
5086    );
5087    assert_eq!(
5088        unsafe { &(*(::std::ptr::null::<_zend_mmap>())).pos as *const _ as usize },
5089        8usize,
5090        concat!(
5091            "Offset of field: ",
5092            stringify!(_zend_mmap),
5093            "::",
5094            stringify!(pos)
5095        )
5096    );
5097    assert_eq!(
5098        unsafe { &(*(::std::ptr::null::<_zend_mmap>())).map as *const _ as usize },
5099        16usize,
5100        concat!(
5101            "Offset of field: ",
5102            stringify!(_zend_mmap),
5103            "::",
5104            stringify!(map)
5105        )
5106    );
5107    assert_eq!(
5108        unsafe { &(*(::std::ptr::null::<_zend_mmap>())).buf as *const _ as usize },
5109        24usize,
5110        concat!(
5111            "Offset of field: ",
5112            stringify!(_zend_mmap),
5113            "::",
5114            stringify!(buf)
5115        )
5116    );
5117    assert_eq!(
5118        unsafe { &(*(::std::ptr::null::<_zend_mmap>())).old_handle as *const _ as usize },
5119        32usize,
5120        concat!(
5121            "Offset of field: ",
5122            stringify!(_zend_mmap),
5123            "::",
5124            stringify!(old_handle)
5125        )
5126    );
5127    assert_eq!(
5128        unsafe { &(*(::std::ptr::null::<_zend_mmap>())).old_closer as *const _ as usize },
5129        40usize,
5130        concat!(
5131            "Offset of field: ",
5132            stringify!(_zend_mmap),
5133            "::",
5134            stringify!(old_closer)
5135        )
5136    );
5137}
5138pub type zend_mmap = _zend_mmap;
5139#[repr(C)]
5140#[derive(Debug, Copy, Clone)]
5141pub struct _zend_stream {
5142    pub handle: *mut ::std::os::raw::c_void,
5143    pub isatty: ::std::os::raw::c_int,
5144    pub mmap: zend_mmap,
5145    pub reader: zend_stream_reader_t,
5146    pub fsizer: zend_stream_fsizer_t,
5147    pub closer: zend_stream_closer_t,
5148}
5149#[test]
5150fn bindgen_test_layout__zend_stream() {
5151    assert_eq!(
5152        ::std::mem::size_of::<_zend_stream>(),
5153        88usize,
5154        concat!("Size of: ", stringify!(_zend_stream))
5155    );
5156    assert_eq!(
5157        ::std::mem::align_of::<_zend_stream>(),
5158        8usize,
5159        concat!("Alignment of ", stringify!(_zend_stream))
5160    );
5161    assert_eq!(
5162        unsafe { &(*(::std::ptr::null::<_zend_stream>())).handle as *const _ as usize },
5163        0usize,
5164        concat!(
5165            "Offset of field: ",
5166            stringify!(_zend_stream),
5167            "::",
5168            stringify!(handle)
5169        )
5170    );
5171    assert_eq!(
5172        unsafe { &(*(::std::ptr::null::<_zend_stream>())).isatty as *const _ as usize },
5173        8usize,
5174        concat!(
5175            "Offset of field: ",
5176            stringify!(_zend_stream),
5177            "::",
5178            stringify!(isatty)
5179        )
5180    );
5181    assert_eq!(
5182        unsafe { &(*(::std::ptr::null::<_zend_stream>())).mmap as *const _ as usize },
5183        16usize,
5184        concat!(
5185            "Offset of field: ",
5186            stringify!(_zend_stream),
5187            "::",
5188            stringify!(mmap)
5189        )
5190    );
5191    assert_eq!(
5192        unsafe { &(*(::std::ptr::null::<_zend_stream>())).reader as *const _ as usize },
5193        64usize,
5194        concat!(
5195            "Offset of field: ",
5196            stringify!(_zend_stream),
5197            "::",
5198            stringify!(reader)
5199        )
5200    );
5201    assert_eq!(
5202        unsafe { &(*(::std::ptr::null::<_zend_stream>())).fsizer as *const _ as usize },
5203        72usize,
5204        concat!(
5205            "Offset of field: ",
5206            stringify!(_zend_stream),
5207            "::",
5208            stringify!(fsizer)
5209        )
5210    );
5211    assert_eq!(
5212        unsafe { &(*(::std::ptr::null::<_zend_stream>())).closer as *const _ as usize },
5213        80usize,
5214        concat!(
5215            "Offset of field: ",
5216            stringify!(_zend_stream),
5217            "::",
5218            stringify!(closer)
5219        )
5220    );
5221}
5222pub type zend_stream = _zend_stream;
5223#[repr(C)]
5224#[derive(Copy, Clone)]
5225pub struct _zend_file_handle {
5226    pub handle: _zend_file_handle__bindgen_ty_1,
5227    pub filename: *const ::std::os::raw::c_char,
5228    pub opened_path: *mut zend_string,
5229    pub type_: zend_stream_type,
5230    pub free_filename: zend_bool,
5231}
5232#[repr(C)]
5233#[derive(Copy, Clone)]
5234pub union _zend_file_handle__bindgen_ty_1 {
5235    pub fd: ::std::os::raw::c_int,
5236    pub fp: *mut FILE,
5237    pub stream: zend_stream,
5238    _bindgen_union_align: [u64; 11usize],
5239}
5240#[test]
5241fn bindgen_test_layout__zend_file_handle__bindgen_ty_1() {
5242    assert_eq!(
5243        ::std::mem::size_of::<_zend_file_handle__bindgen_ty_1>(),
5244        88usize,
5245        concat!("Size of: ", stringify!(_zend_file_handle__bindgen_ty_1))
5246    );
5247    assert_eq!(
5248        ::std::mem::align_of::<_zend_file_handle__bindgen_ty_1>(),
5249        8usize,
5250        concat!("Alignment of ", stringify!(_zend_file_handle__bindgen_ty_1))
5251    );
5252    assert_eq!(
5253        unsafe {
5254            &(*(::std::ptr::null::<_zend_file_handle__bindgen_ty_1>())).fd as *const _ as usize
5255        },
5256        0usize,
5257        concat!(
5258            "Offset of field: ",
5259            stringify!(_zend_file_handle__bindgen_ty_1),
5260            "::",
5261            stringify!(fd)
5262        )
5263    );
5264    assert_eq!(
5265        unsafe {
5266            &(*(::std::ptr::null::<_zend_file_handle__bindgen_ty_1>())).fp as *const _ as usize
5267        },
5268        0usize,
5269        concat!(
5270            "Offset of field: ",
5271            stringify!(_zend_file_handle__bindgen_ty_1),
5272            "::",
5273            stringify!(fp)
5274        )
5275    );
5276    assert_eq!(
5277        unsafe {
5278            &(*(::std::ptr::null::<_zend_file_handle__bindgen_ty_1>())).stream as *const _ as usize
5279        },
5280        0usize,
5281        concat!(
5282            "Offset of field: ",
5283            stringify!(_zend_file_handle__bindgen_ty_1),
5284            "::",
5285            stringify!(stream)
5286        )
5287    );
5288}
5289#[test]
5290fn bindgen_test_layout__zend_file_handle() {
5291    assert_eq!(
5292        ::std::mem::size_of::<_zend_file_handle>(),
5293        112usize,
5294        concat!("Size of: ", stringify!(_zend_file_handle))
5295    );
5296    assert_eq!(
5297        ::std::mem::align_of::<_zend_file_handle>(),
5298        8usize,
5299        concat!("Alignment of ", stringify!(_zend_file_handle))
5300    );
5301    assert_eq!(
5302        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).handle as *const _ as usize },
5303        0usize,
5304        concat!(
5305            "Offset of field: ",
5306            stringify!(_zend_file_handle),
5307            "::",
5308            stringify!(handle)
5309        )
5310    );
5311    assert_eq!(
5312        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).filename as *const _ as usize },
5313        88usize,
5314        concat!(
5315            "Offset of field: ",
5316            stringify!(_zend_file_handle),
5317            "::",
5318            stringify!(filename)
5319        )
5320    );
5321    assert_eq!(
5322        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).opened_path as *const _ as usize },
5323        96usize,
5324        concat!(
5325            "Offset of field: ",
5326            stringify!(_zend_file_handle),
5327            "::",
5328            stringify!(opened_path)
5329        )
5330    );
5331    assert_eq!(
5332        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).type_ as *const _ as usize },
5333        104usize,
5334        concat!(
5335            "Offset of field: ",
5336            stringify!(_zend_file_handle),
5337            "::",
5338            stringify!(type_)
5339        )
5340    );
5341    assert_eq!(
5342        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).free_filename as *const _ as usize },
5343        108usize,
5344        concat!(
5345            "Offset of field: ",
5346            stringify!(_zend_file_handle),
5347            "::",
5348            stringify!(free_filename)
5349        )
5350    );
5351}
5352pub type zend_file_handle = _zend_file_handle;
5353extern "C" {
5354    pub fn zend_stream_open(
5355        filename: *const ::std::os::raw::c_char,
5356        handle: *mut zend_file_handle,
5357    ) -> ::std::os::raw::c_int;
5358}
5359extern "C" {
5360    pub fn zend_stream_fixup(
5361        file_handle: *mut zend_file_handle,
5362        buf: *mut *mut ::std::os::raw::c_char,
5363        len: *mut size_t,
5364    ) -> ::std::os::raw::c_int;
5365}
5366extern "C" {
5367    pub fn zend_file_handle_dtor(fh: *mut zend_file_handle);
5368}
5369extern "C" {
5370    pub fn zend_compare_file_handles(
5371        fh1: *mut zend_file_handle,
5372        fh2: *mut zend_file_handle,
5373    ) -> ::std::os::raw::c_int;
5374}
5375pub type zend_stat_t = stat;
5376#[repr(C)]
5377#[derive(Debug, Copy, Clone)]
5378pub struct smart_str {
5379    pub s: *mut zend_string,
5380    pub a: size_t,
5381}
5382#[test]
5383fn bindgen_test_layout_smart_str() {
5384    assert_eq!(
5385        ::std::mem::size_of::<smart_str>(),
5386        16usize,
5387        concat!("Size of: ", stringify!(smart_str))
5388    );
5389    assert_eq!(
5390        ::std::mem::align_of::<smart_str>(),
5391        8usize,
5392        concat!("Alignment of ", stringify!(smart_str))
5393    );
5394    assert_eq!(
5395        unsafe { &(*(::std::ptr::null::<smart_str>())).s as *const _ as usize },
5396        0usize,
5397        concat!(
5398            "Offset of field: ",
5399            stringify!(smart_str),
5400            "::",
5401            stringify!(s)
5402        )
5403    );
5404    assert_eq!(
5405        unsafe { &(*(::std::ptr::null::<smart_str>())).a as *const _ as usize },
5406        8usize,
5407        concat!(
5408            "Offset of field: ",
5409            stringify!(smart_str),
5410            "::",
5411            stringify!(a)
5412        )
5413    );
5414}
5415#[repr(C)]
5416#[derive(Debug, Copy, Clone)]
5417pub struct smart_string {
5418    pub c: *mut ::std::os::raw::c_char,
5419    pub len: size_t,
5420    pub a: size_t,
5421}
5422#[test]
5423fn bindgen_test_layout_smart_string() {
5424    assert_eq!(
5425        ::std::mem::size_of::<smart_string>(),
5426        24usize,
5427        concat!("Size of: ", stringify!(smart_string))
5428    );
5429    assert_eq!(
5430        ::std::mem::align_of::<smart_string>(),
5431        8usize,
5432        concat!("Alignment of ", stringify!(smart_string))
5433    );
5434    assert_eq!(
5435        unsafe { &(*(::std::ptr::null::<smart_string>())).c as *const _ as usize },
5436        0usize,
5437        concat!(
5438            "Offset of field: ",
5439            stringify!(smart_string),
5440            "::",
5441            stringify!(c)
5442        )
5443    );
5444    assert_eq!(
5445        unsafe { &(*(::std::ptr::null::<smart_string>())).len as *const _ as usize },
5446        8usize,
5447        concat!(
5448            "Offset of field: ",
5449            stringify!(smart_string),
5450            "::",
5451            stringify!(len)
5452        )
5453    );
5454    assert_eq!(
5455        unsafe { &(*(::std::ptr::null::<smart_string>())).a as *const _ as usize },
5456        16usize,
5457        concat!(
5458            "Offset of field: ",
5459            stringify!(smart_string),
5460            "::",
5461            stringify!(a)
5462        )
5463    );
5464}
5465#[repr(C)]
5466#[derive(Copy, Clone)]
5467pub union sigval {
5468    pub sival_int: ::std::os::raw::c_int,
5469    pub sival_ptr: *mut ::std::os::raw::c_void,
5470    _bindgen_union_align: u64,
5471}
5472#[test]
5473fn bindgen_test_layout_sigval() {
5474    assert_eq!(
5475        ::std::mem::size_of::<sigval>(),
5476        8usize,
5477        concat!("Size of: ", stringify!(sigval))
5478    );
5479    assert_eq!(
5480        ::std::mem::align_of::<sigval>(),
5481        8usize,
5482        concat!("Alignment of ", stringify!(sigval))
5483    );
5484    assert_eq!(
5485        unsafe { &(*(::std::ptr::null::<sigval>())).sival_int as *const _ as usize },
5486        0usize,
5487        concat!(
5488            "Offset of field: ",
5489            stringify!(sigval),
5490            "::",
5491            stringify!(sival_int)
5492        )
5493    );
5494    assert_eq!(
5495        unsafe { &(*(::std::ptr::null::<sigval>())).sival_ptr as *const _ as usize },
5496        0usize,
5497        concat!(
5498            "Offset of field: ",
5499            stringify!(sigval),
5500            "::",
5501            stringify!(sival_ptr)
5502        )
5503    );
5504}
5505pub type __sigval_t = sigval;
5506#[repr(C)]
5507#[derive(Copy, Clone)]
5508pub struct siginfo_t {
5509    pub si_signo: ::std::os::raw::c_int,
5510    pub si_errno: ::std::os::raw::c_int,
5511    pub si_code: ::std::os::raw::c_int,
5512    pub __pad0: ::std::os::raw::c_int,
5513    pub _sifields: siginfo_t__bindgen_ty_1,
5514}
5515#[repr(C)]
5516#[derive(Copy, Clone)]
5517pub union siginfo_t__bindgen_ty_1 {
5518    pub _pad: [::std::os::raw::c_int; 28usize],
5519    pub _kill: siginfo_t__bindgen_ty_1__bindgen_ty_1,
5520    pub _timer: siginfo_t__bindgen_ty_1__bindgen_ty_2,
5521    pub _rt: siginfo_t__bindgen_ty_1__bindgen_ty_3,
5522    pub _sigchld: siginfo_t__bindgen_ty_1__bindgen_ty_4,
5523    pub _sigfault: siginfo_t__bindgen_ty_1__bindgen_ty_5,
5524    pub _sigpoll: siginfo_t__bindgen_ty_1__bindgen_ty_6,
5525    pub _sigsys: siginfo_t__bindgen_ty_1__bindgen_ty_7,
5526    _bindgen_union_align: [u64; 14usize],
5527}
5528#[repr(C)]
5529#[derive(Debug, Copy, Clone)]
5530pub struct siginfo_t__bindgen_ty_1__bindgen_ty_1 {
5531    pub si_pid: __pid_t,
5532    pub si_uid: __uid_t,
5533}
5534#[test]
5535fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_1() {
5536    assert_eq!(
5537        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_1>(),
5538        8usize,
5539        concat!(
5540            "Size of: ",
5541            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_1)
5542        )
5543    );
5544    assert_eq!(
5545        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_1>(),
5546        4usize,
5547        concat!(
5548            "Alignment of ",
5549            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_1)
5550        )
5551    );
5552    assert_eq!(
5553        unsafe {
5554            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_1>())).si_pid as *const _
5555                as usize
5556        },
5557        0usize,
5558        concat!(
5559            "Offset of field: ",
5560            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_1),
5561            "::",
5562            stringify!(si_pid)
5563        )
5564    );
5565    assert_eq!(
5566        unsafe {
5567            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_1>())).si_uid as *const _
5568                as usize
5569        },
5570        4usize,
5571        concat!(
5572            "Offset of field: ",
5573            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_1),
5574            "::",
5575            stringify!(si_uid)
5576        )
5577    );
5578}
5579#[repr(C)]
5580#[derive(Copy, Clone)]
5581pub struct siginfo_t__bindgen_ty_1__bindgen_ty_2 {
5582    pub si_tid: ::std::os::raw::c_int,
5583    pub si_overrun: ::std::os::raw::c_int,
5584    pub si_sigval: __sigval_t,
5585}
5586#[test]
5587fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_2() {
5588    assert_eq!(
5589        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_2>(),
5590        16usize,
5591        concat!(
5592            "Size of: ",
5593            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_2)
5594        )
5595    );
5596    assert_eq!(
5597        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_2>(),
5598        8usize,
5599        concat!(
5600            "Alignment of ",
5601            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_2)
5602        )
5603    );
5604    assert_eq!(
5605        unsafe {
5606            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_2>())).si_tid as *const _
5607                as usize
5608        },
5609        0usize,
5610        concat!(
5611            "Offset of field: ",
5612            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_2),
5613            "::",
5614            stringify!(si_tid)
5615        )
5616    );
5617    assert_eq!(
5618        unsafe {
5619            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_2>())).si_overrun as *const _
5620                as usize
5621        },
5622        4usize,
5623        concat!(
5624            "Offset of field: ",
5625            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_2),
5626            "::",
5627            stringify!(si_overrun)
5628        )
5629    );
5630    assert_eq!(
5631        unsafe {
5632            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_2>())).si_sigval as *const _
5633                as usize
5634        },
5635        8usize,
5636        concat!(
5637            "Offset of field: ",
5638            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_2),
5639            "::",
5640            stringify!(si_sigval)
5641        )
5642    );
5643}
5644#[repr(C)]
5645#[derive(Copy, Clone)]
5646pub struct siginfo_t__bindgen_ty_1__bindgen_ty_3 {
5647    pub si_pid: __pid_t,
5648    pub si_uid: __uid_t,
5649    pub si_sigval: __sigval_t,
5650}
5651#[test]
5652fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_3() {
5653    assert_eq!(
5654        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_3>(),
5655        16usize,
5656        concat!(
5657            "Size of: ",
5658            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_3)
5659        )
5660    );
5661    assert_eq!(
5662        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_3>(),
5663        8usize,
5664        concat!(
5665            "Alignment of ",
5666            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_3)
5667        )
5668    );
5669    assert_eq!(
5670        unsafe {
5671            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_3>())).si_pid as *const _
5672                as usize
5673        },
5674        0usize,
5675        concat!(
5676            "Offset of field: ",
5677            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_3),
5678            "::",
5679            stringify!(si_pid)
5680        )
5681    );
5682    assert_eq!(
5683        unsafe {
5684            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_3>())).si_uid as *const _
5685                as usize
5686        },
5687        4usize,
5688        concat!(
5689            "Offset of field: ",
5690            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_3),
5691            "::",
5692            stringify!(si_uid)
5693        )
5694    );
5695    assert_eq!(
5696        unsafe {
5697            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_3>())).si_sigval as *const _
5698                as usize
5699        },
5700        8usize,
5701        concat!(
5702            "Offset of field: ",
5703            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_3),
5704            "::",
5705            stringify!(si_sigval)
5706        )
5707    );
5708}
5709#[repr(C)]
5710#[derive(Debug, Copy, Clone)]
5711pub struct siginfo_t__bindgen_ty_1__bindgen_ty_4 {
5712    pub si_pid: __pid_t,
5713    pub si_uid: __uid_t,
5714    pub si_status: ::std::os::raw::c_int,
5715    pub si_utime: __clock_t,
5716    pub si_stime: __clock_t,
5717}
5718#[test]
5719fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_4() {
5720    assert_eq!(
5721        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_4>(),
5722        32usize,
5723        concat!(
5724            "Size of: ",
5725            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4)
5726        )
5727    );
5728    assert_eq!(
5729        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_4>(),
5730        8usize,
5731        concat!(
5732            "Alignment of ",
5733            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4)
5734        )
5735    );
5736    assert_eq!(
5737        unsafe {
5738            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_4>())).si_pid as *const _
5739                as usize
5740        },
5741        0usize,
5742        concat!(
5743            "Offset of field: ",
5744            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4),
5745            "::",
5746            stringify!(si_pid)
5747        )
5748    );
5749    assert_eq!(
5750        unsafe {
5751            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_4>())).si_uid as *const _
5752                as usize
5753        },
5754        4usize,
5755        concat!(
5756            "Offset of field: ",
5757            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4),
5758            "::",
5759            stringify!(si_uid)
5760        )
5761    );
5762    assert_eq!(
5763        unsafe {
5764            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_4>())).si_status as *const _
5765                as usize
5766        },
5767        8usize,
5768        concat!(
5769            "Offset of field: ",
5770            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4),
5771            "::",
5772            stringify!(si_status)
5773        )
5774    );
5775    assert_eq!(
5776        unsafe {
5777            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_4>())).si_utime as *const _
5778                as usize
5779        },
5780        16usize,
5781        concat!(
5782            "Offset of field: ",
5783            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4),
5784            "::",
5785            stringify!(si_utime)
5786        )
5787    );
5788    assert_eq!(
5789        unsafe {
5790            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_4>())).si_stime as *const _
5791                as usize
5792        },
5793        24usize,
5794        concat!(
5795            "Offset of field: ",
5796            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4),
5797            "::",
5798            stringify!(si_stime)
5799        )
5800    );
5801}
5802#[repr(C)]
5803#[derive(Copy, Clone)]
5804pub struct siginfo_t__bindgen_ty_1__bindgen_ty_5 {
5805    pub si_addr: *mut ::std::os::raw::c_void,
5806    pub si_addr_lsb: ::std::os::raw::c_short,
5807    pub _bounds: siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1,
5808}
5809#[repr(C)]
5810#[derive(Copy, Clone)]
5811pub union siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1 {
5812    pub _addr_bnd: siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1,
5813    pub _pkey: __uint32_t,
5814    _bindgen_union_align: [u64; 2usize],
5815}
5816#[repr(C)]
5817#[derive(Debug, Copy, Clone)]
5818pub struct siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 {
5819    pub _lower: *mut ::std::os::raw::c_void,
5820    pub _upper: *mut ::std::os::raw::c_void,
5821}
5822#[test]
5823fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1() {
5824    assert_eq!(
5825        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1>(),
5826        16usize,
5827        concat!(
5828            "Size of: ",
5829            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1)
5830        )
5831    );
5832    assert_eq!(
5833        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1>(),
5834        8usize,
5835        concat!(
5836            "Alignment of ",
5837            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1)
5838        )
5839    );
5840    assert_eq!(
5841        unsafe {
5842            &(*(::std::ptr::null::<
5843                siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1,
5844            >()))
5845            ._lower as *const _ as usize
5846        },
5847        0usize,
5848        concat!(
5849            "Offset of field: ",
5850            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1),
5851            "::",
5852            stringify!(_lower)
5853        )
5854    );
5855    assert_eq!(
5856        unsafe {
5857            &(*(::std::ptr::null::<
5858                siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1,
5859            >()))
5860            ._upper as *const _ as usize
5861        },
5862        8usize,
5863        concat!(
5864            "Offset of field: ",
5865            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1),
5866            "::",
5867            stringify!(_upper)
5868        )
5869    );
5870}
5871#[test]
5872fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1() {
5873    assert_eq!(
5874        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1>(),
5875        16usize,
5876        concat!(
5877            "Size of: ",
5878            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1)
5879        )
5880    );
5881    assert_eq!(
5882        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1>(),
5883        8usize,
5884        concat!(
5885            "Alignment of ",
5886            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1)
5887        )
5888    );
5889    assert_eq!(
5890        unsafe {
5891            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1>()))
5892                ._addr_bnd as *const _ as usize
5893        },
5894        0usize,
5895        concat!(
5896            "Offset of field: ",
5897            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1),
5898            "::",
5899            stringify!(_addr_bnd)
5900        )
5901    );
5902    assert_eq!(
5903        unsafe {
5904            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1>()))._pkey
5905                as *const _ as usize
5906        },
5907        0usize,
5908        concat!(
5909            "Offset of field: ",
5910            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1),
5911            "::",
5912            stringify!(_pkey)
5913        )
5914    );
5915}
5916#[test]
5917fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_5() {
5918    assert_eq!(
5919        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5>(),
5920        32usize,
5921        concat!(
5922            "Size of: ",
5923            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5)
5924        )
5925    );
5926    assert_eq!(
5927        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5>(),
5928        8usize,
5929        concat!(
5930            "Alignment of ",
5931            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5)
5932        )
5933    );
5934    assert_eq!(
5935        unsafe {
5936            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_5>())).si_addr as *const _
5937                as usize
5938        },
5939        0usize,
5940        concat!(
5941            "Offset of field: ",
5942            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5),
5943            "::",
5944            stringify!(si_addr)
5945        )
5946    );
5947    assert_eq!(
5948        unsafe {
5949            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_5>())).si_addr_lsb
5950                as *const _ as usize
5951        },
5952        8usize,
5953        concat!(
5954            "Offset of field: ",
5955            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5),
5956            "::",
5957            stringify!(si_addr_lsb)
5958        )
5959    );
5960    assert_eq!(
5961        unsafe {
5962            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_5>()))._bounds as *const _
5963                as usize
5964        },
5965        16usize,
5966        concat!(
5967            "Offset of field: ",
5968            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5),
5969            "::",
5970            stringify!(_bounds)
5971        )
5972    );
5973}
5974#[repr(C)]
5975#[derive(Debug, Copy, Clone)]
5976pub struct siginfo_t__bindgen_ty_1__bindgen_ty_6 {
5977    pub si_band: ::std::os::raw::c_long,
5978    pub si_fd: ::std::os::raw::c_int,
5979}
5980#[test]
5981fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_6() {
5982    assert_eq!(
5983        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_6>(),
5984        16usize,
5985        concat!(
5986            "Size of: ",
5987            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_6)
5988        )
5989    );
5990    assert_eq!(
5991        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_6>(),
5992        8usize,
5993        concat!(
5994            "Alignment of ",
5995            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_6)
5996        )
5997    );
5998    assert_eq!(
5999        unsafe {
6000            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_6>())).si_band as *const _
6001                as usize
6002        },
6003        0usize,
6004        concat!(
6005            "Offset of field: ",
6006            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_6),
6007            "::",
6008            stringify!(si_band)
6009        )
6010    );
6011    assert_eq!(
6012        unsafe {
6013            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_6>())).si_fd as *const _
6014                as usize
6015        },
6016        8usize,
6017        concat!(
6018            "Offset of field: ",
6019            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_6),
6020            "::",
6021            stringify!(si_fd)
6022        )
6023    );
6024}
6025#[repr(C)]
6026#[derive(Debug, Copy, Clone)]
6027pub struct siginfo_t__bindgen_ty_1__bindgen_ty_7 {
6028    pub _call_addr: *mut ::std::os::raw::c_void,
6029    pub _syscall: ::std::os::raw::c_int,
6030    pub _arch: ::std::os::raw::c_uint,
6031}
6032#[test]
6033fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_7() {
6034    assert_eq!(
6035        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_7>(),
6036        16usize,
6037        concat!(
6038            "Size of: ",
6039            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_7)
6040        )
6041    );
6042    assert_eq!(
6043        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_7>(),
6044        8usize,
6045        concat!(
6046            "Alignment of ",
6047            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_7)
6048        )
6049    );
6050    assert_eq!(
6051        unsafe {
6052            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_7>()))._call_addr as *const _
6053                as usize
6054        },
6055        0usize,
6056        concat!(
6057            "Offset of field: ",
6058            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_7),
6059            "::",
6060            stringify!(_call_addr)
6061        )
6062    );
6063    assert_eq!(
6064        unsafe {
6065            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_7>()))._syscall as *const _
6066                as usize
6067        },
6068        8usize,
6069        concat!(
6070            "Offset of field: ",
6071            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_7),
6072            "::",
6073            stringify!(_syscall)
6074        )
6075    );
6076    assert_eq!(
6077        unsafe {
6078            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_7>()))._arch as *const _
6079                as usize
6080        },
6081        12usize,
6082        concat!(
6083            "Offset of field: ",
6084            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_7),
6085            "::",
6086            stringify!(_arch)
6087        )
6088    );
6089}
6090#[test]
6091fn bindgen_test_layout_siginfo_t__bindgen_ty_1() {
6092    assert_eq!(
6093        ::std::mem::size_of::<siginfo_t__bindgen_ty_1>(),
6094        112usize,
6095        concat!("Size of: ", stringify!(siginfo_t__bindgen_ty_1))
6096    );
6097    assert_eq!(
6098        ::std::mem::align_of::<siginfo_t__bindgen_ty_1>(),
6099        8usize,
6100        concat!("Alignment of ", stringify!(siginfo_t__bindgen_ty_1))
6101    );
6102    assert_eq!(
6103        unsafe { &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1>()))._pad as *const _ as usize },
6104        0usize,
6105        concat!(
6106            "Offset of field: ",
6107            stringify!(siginfo_t__bindgen_ty_1),
6108            "::",
6109            stringify!(_pad)
6110        )
6111    );
6112    assert_eq!(
6113        unsafe { &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1>()))._kill as *const _ as usize },
6114        0usize,
6115        concat!(
6116            "Offset of field: ",
6117            stringify!(siginfo_t__bindgen_ty_1),
6118            "::",
6119            stringify!(_kill)
6120        )
6121    );
6122    assert_eq!(
6123        unsafe { &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1>()))._timer as *const _ as usize },
6124        0usize,
6125        concat!(
6126            "Offset of field: ",
6127            stringify!(siginfo_t__bindgen_ty_1),
6128            "::",
6129            stringify!(_timer)
6130        )
6131    );
6132    assert_eq!(
6133        unsafe { &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1>()))._rt as *const _ as usize },
6134        0usize,
6135        concat!(
6136            "Offset of field: ",
6137            stringify!(siginfo_t__bindgen_ty_1),
6138            "::",
6139            stringify!(_rt)
6140        )
6141    );
6142    assert_eq!(
6143        unsafe {
6144            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1>()))._sigchld as *const _ as usize
6145        },
6146        0usize,
6147        concat!(
6148            "Offset of field: ",
6149            stringify!(siginfo_t__bindgen_ty_1),
6150            "::",
6151            stringify!(_sigchld)
6152        )
6153    );
6154    assert_eq!(
6155        unsafe {
6156            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1>()))._sigfault as *const _ as usize
6157        },
6158        0usize,
6159        concat!(
6160            "Offset of field: ",
6161            stringify!(siginfo_t__bindgen_ty_1),
6162            "::",
6163            stringify!(_sigfault)
6164        )
6165    );
6166    assert_eq!(
6167        unsafe {
6168            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1>()))._sigpoll as *const _ as usize
6169        },
6170        0usize,
6171        concat!(
6172            "Offset of field: ",
6173            stringify!(siginfo_t__bindgen_ty_1),
6174            "::",
6175            stringify!(_sigpoll)
6176        )
6177    );
6178    assert_eq!(
6179        unsafe { &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1>()))._sigsys as *const _ as usize },
6180        0usize,
6181        concat!(
6182            "Offset of field: ",
6183            stringify!(siginfo_t__bindgen_ty_1),
6184            "::",
6185            stringify!(_sigsys)
6186        )
6187    );
6188}
6189#[test]
6190fn bindgen_test_layout_siginfo_t() {
6191    assert_eq!(
6192        ::std::mem::size_of::<siginfo_t>(),
6193        128usize,
6194        concat!("Size of: ", stringify!(siginfo_t))
6195    );
6196    assert_eq!(
6197        ::std::mem::align_of::<siginfo_t>(),
6198        8usize,
6199        concat!("Alignment of ", stringify!(siginfo_t))
6200    );
6201    assert_eq!(
6202        unsafe { &(*(::std::ptr::null::<siginfo_t>())).si_signo as *const _ as usize },
6203        0usize,
6204        concat!(
6205            "Offset of field: ",
6206            stringify!(siginfo_t),
6207            "::",
6208            stringify!(si_signo)
6209        )
6210    );
6211    assert_eq!(
6212        unsafe { &(*(::std::ptr::null::<siginfo_t>())).si_errno as *const _ as usize },
6213        4usize,
6214        concat!(
6215            "Offset of field: ",
6216            stringify!(siginfo_t),
6217            "::",
6218            stringify!(si_errno)
6219        )
6220    );
6221    assert_eq!(
6222        unsafe { &(*(::std::ptr::null::<siginfo_t>())).si_code as *const _ as usize },
6223        8usize,
6224        concat!(
6225            "Offset of field: ",
6226            stringify!(siginfo_t),
6227            "::",
6228            stringify!(si_code)
6229        )
6230    );
6231    assert_eq!(
6232        unsafe { &(*(::std::ptr::null::<siginfo_t>())).__pad0 as *const _ as usize },
6233        12usize,
6234        concat!(
6235            "Offset of field: ",
6236            stringify!(siginfo_t),
6237            "::",
6238            stringify!(__pad0)
6239        )
6240    );
6241    assert_eq!(
6242        unsafe { &(*(::std::ptr::null::<siginfo_t>()))._sifields as *const _ as usize },
6243        16usize,
6244        concat!(
6245            "Offset of field: ",
6246            stringify!(siginfo_t),
6247            "::",
6248            stringify!(_sifields)
6249        )
6250    );
6251}
6252pub type __sighandler_t = ::std::option::Option<unsafe extern "C" fn(arg1: ::std::os::raw::c_int)>;
6253#[repr(C)]
6254#[derive(Copy, Clone)]
6255pub struct sigaction {
6256    pub __sigaction_handler: sigaction__bindgen_ty_1,
6257    pub sa_mask: __sigset_t,
6258    pub sa_flags: ::std::os::raw::c_int,
6259    pub sa_restorer: ::std::option::Option<unsafe extern "C" fn()>,
6260}
6261#[repr(C)]
6262#[derive(Copy, Clone)]
6263pub union sigaction__bindgen_ty_1 {
6264    pub sa_handler: __sighandler_t,
6265    pub sa_sigaction: ::std::option::Option<
6266        unsafe extern "C" fn(
6267            arg1: ::std::os::raw::c_int,
6268            arg2: *mut siginfo_t,
6269            arg3: *mut ::std::os::raw::c_void,
6270        ),
6271    >,
6272    _bindgen_union_align: u64,
6273}
6274#[test]
6275fn bindgen_test_layout_sigaction__bindgen_ty_1() {
6276    assert_eq!(
6277        ::std::mem::size_of::<sigaction__bindgen_ty_1>(),
6278        8usize,
6279        concat!("Size of: ", stringify!(sigaction__bindgen_ty_1))
6280    );
6281    assert_eq!(
6282        ::std::mem::align_of::<sigaction__bindgen_ty_1>(),
6283        8usize,
6284        concat!("Alignment of ", stringify!(sigaction__bindgen_ty_1))
6285    );
6286    assert_eq!(
6287        unsafe {
6288            &(*(::std::ptr::null::<sigaction__bindgen_ty_1>())).sa_handler as *const _ as usize
6289        },
6290        0usize,
6291        concat!(
6292            "Offset of field: ",
6293            stringify!(sigaction__bindgen_ty_1),
6294            "::",
6295            stringify!(sa_handler)
6296        )
6297    );
6298    assert_eq!(
6299        unsafe {
6300            &(*(::std::ptr::null::<sigaction__bindgen_ty_1>())).sa_sigaction as *const _ as usize
6301        },
6302        0usize,
6303        concat!(
6304            "Offset of field: ",
6305            stringify!(sigaction__bindgen_ty_1),
6306            "::",
6307            stringify!(sa_sigaction)
6308        )
6309    );
6310}
6311#[test]
6312fn bindgen_test_layout_sigaction() {
6313    assert_eq!(
6314        ::std::mem::size_of::<sigaction>(),
6315        152usize,
6316        concat!("Size of: ", stringify!(sigaction))
6317    );
6318    assert_eq!(
6319        ::std::mem::align_of::<sigaction>(),
6320        8usize,
6321        concat!("Alignment of ", stringify!(sigaction))
6322    );
6323    assert_eq!(
6324        unsafe { &(*(::std::ptr::null::<sigaction>())).__sigaction_handler as *const _ as usize },
6325        0usize,
6326        concat!(
6327            "Offset of field: ",
6328            stringify!(sigaction),
6329            "::",
6330            stringify!(__sigaction_handler)
6331        )
6332    );
6333    assert_eq!(
6334        unsafe { &(*(::std::ptr::null::<sigaction>())).sa_mask as *const _ as usize },
6335        8usize,
6336        concat!(
6337            "Offset of field: ",
6338            stringify!(sigaction),
6339            "::",
6340            stringify!(sa_mask)
6341        )
6342    );
6343    assert_eq!(
6344        unsafe { &(*(::std::ptr::null::<sigaction>())).sa_flags as *const _ as usize },
6345        136usize,
6346        concat!(
6347            "Offset of field: ",
6348            stringify!(sigaction),
6349            "::",
6350            stringify!(sa_flags)
6351        )
6352    );
6353    assert_eq!(
6354        unsafe { &(*(::std::ptr::null::<sigaction>())).sa_restorer as *const _ as usize },
6355        144usize,
6356        concat!(
6357            "Offset of field: ",
6358            stringify!(sigaction),
6359            "::",
6360            stringify!(sa_restorer)
6361        )
6362    );
6363}
6364#[repr(C)]
6365#[derive(Debug, Copy, Clone)]
6366pub struct _zend_signal_entry_t {
6367    pub flags: ::std::os::raw::c_int,
6368    pub handler: *mut ::std::os::raw::c_void,
6369}
6370#[test]
6371fn bindgen_test_layout__zend_signal_entry_t() {
6372    assert_eq!(
6373        ::std::mem::size_of::<_zend_signal_entry_t>(),
6374        16usize,
6375        concat!("Size of: ", stringify!(_zend_signal_entry_t))
6376    );
6377    assert_eq!(
6378        ::std::mem::align_of::<_zend_signal_entry_t>(),
6379        8usize,
6380        concat!("Alignment of ", stringify!(_zend_signal_entry_t))
6381    );
6382    assert_eq!(
6383        unsafe { &(*(::std::ptr::null::<_zend_signal_entry_t>())).flags as *const _ as usize },
6384        0usize,
6385        concat!(
6386            "Offset of field: ",
6387            stringify!(_zend_signal_entry_t),
6388            "::",
6389            stringify!(flags)
6390        )
6391    );
6392    assert_eq!(
6393        unsafe { &(*(::std::ptr::null::<_zend_signal_entry_t>())).handler as *const _ as usize },
6394        8usize,
6395        concat!(
6396            "Offset of field: ",
6397            stringify!(_zend_signal_entry_t),
6398            "::",
6399            stringify!(handler)
6400        )
6401    );
6402}
6403pub type zend_signal_entry_t = _zend_signal_entry_t;
6404#[repr(C)]
6405#[derive(Debug, Copy, Clone)]
6406pub struct _zend_signal_t {
6407    pub signo: ::std::os::raw::c_int,
6408    pub siginfo: *mut siginfo_t,
6409    pub context: *mut ::std::os::raw::c_void,
6410}
6411#[test]
6412fn bindgen_test_layout__zend_signal_t() {
6413    assert_eq!(
6414        ::std::mem::size_of::<_zend_signal_t>(),
6415        24usize,
6416        concat!("Size of: ", stringify!(_zend_signal_t))
6417    );
6418    assert_eq!(
6419        ::std::mem::align_of::<_zend_signal_t>(),
6420        8usize,
6421        concat!("Alignment of ", stringify!(_zend_signal_t))
6422    );
6423    assert_eq!(
6424        unsafe { &(*(::std::ptr::null::<_zend_signal_t>())).signo as *const _ as usize },
6425        0usize,
6426        concat!(
6427            "Offset of field: ",
6428            stringify!(_zend_signal_t),
6429            "::",
6430            stringify!(signo)
6431        )
6432    );
6433    assert_eq!(
6434        unsafe { &(*(::std::ptr::null::<_zend_signal_t>())).siginfo as *const _ as usize },
6435        8usize,
6436        concat!(
6437            "Offset of field: ",
6438            stringify!(_zend_signal_t),
6439            "::",
6440            stringify!(siginfo)
6441        )
6442    );
6443    assert_eq!(
6444        unsafe { &(*(::std::ptr::null::<_zend_signal_t>())).context as *const _ as usize },
6445        16usize,
6446        concat!(
6447            "Offset of field: ",
6448            stringify!(_zend_signal_t),
6449            "::",
6450            stringify!(context)
6451        )
6452    );
6453}
6454pub type zend_signal_t = _zend_signal_t;
6455#[repr(C)]
6456#[derive(Debug, Copy, Clone)]
6457pub struct _zend_signal_queue_t {
6458    pub zend_signal: zend_signal_t,
6459    pub next: *mut _zend_signal_queue_t,
6460}
6461#[test]
6462fn bindgen_test_layout__zend_signal_queue_t() {
6463    assert_eq!(
6464        ::std::mem::size_of::<_zend_signal_queue_t>(),
6465        32usize,
6466        concat!("Size of: ", stringify!(_zend_signal_queue_t))
6467    );
6468    assert_eq!(
6469        ::std::mem::align_of::<_zend_signal_queue_t>(),
6470        8usize,
6471        concat!("Alignment of ", stringify!(_zend_signal_queue_t))
6472    );
6473    assert_eq!(
6474        unsafe {
6475            &(*(::std::ptr::null::<_zend_signal_queue_t>())).zend_signal as *const _ as usize
6476        },
6477        0usize,
6478        concat!(
6479            "Offset of field: ",
6480            stringify!(_zend_signal_queue_t),
6481            "::",
6482            stringify!(zend_signal)
6483        )
6484    );
6485    assert_eq!(
6486        unsafe { &(*(::std::ptr::null::<_zend_signal_queue_t>())).next as *const _ as usize },
6487        24usize,
6488        concat!(
6489            "Offset of field: ",
6490            stringify!(_zend_signal_queue_t),
6491            "::",
6492            stringify!(next)
6493        )
6494    );
6495}
6496pub type zend_signal_queue_t = _zend_signal_queue_t;
6497#[repr(C)]
6498#[derive(Copy, Clone)]
6499pub struct _zend_signal_globals_t {
6500    pub depth: ::std::os::raw::c_int,
6501    pub blocked: ::std::os::raw::c_int,
6502    pub running: ::std::os::raw::c_int,
6503    pub active: ::std::os::raw::c_int,
6504    pub check: zend_bool,
6505    pub handlers: [zend_signal_entry_t; 65usize],
6506    pub pstorage: [zend_signal_queue_t; 64usize],
6507    pub phead: *mut zend_signal_queue_t,
6508    pub ptail: *mut zend_signal_queue_t,
6509    pub pavail: *mut zend_signal_queue_t,
6510}
6511#[test]
6512fn bindgen_test_layout__zend_signal_globals_t() {
6513    assert_eq!(
6514        ::std::mem::size_of::<_zend_signal_globals_t>(),
6515        3136usize,
6516        concat!("Size of: ", stringify!(_zend_signal_globals_t))
6517    );
6518    assert_eq!(
6519        ::std::mem::align_of::<_zend_signal_globals_t>(),
6520        8usize,
6521        concat!("Alignment of ", stringify!(_zend_signal_globals_t))
6522    );
6523    assert_eq!(
6524        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).depth as *const _ as usize },
6525        0usize,
6526        concat!(
6527            "Offset of field: ",
6528            stringify!(_zend_signal_globals_t),
6529            "::",
6530            stringify!(depth)
6531        )
6532    );
6533    assert_eq!(
6534        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).blocked as *const _ as usize },
6535        4usize,
6536        concat!(
6537            "Offset of field: ",
6538            stringify!(_zend_signal_globals_t),
6539            "::",
6540            stringify!(blocked)
6541        )
6542    );
6543    assert_eq!(
6544        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).running as *const _ as usize },
6545        8usize,
6546        concat!(
6547            "Offset of field: ",
6548            stringify!(_zend_signal_globals_t),
6549            "::",
6550            stringify!(running)
6551        )
6552    );
6553    assert_eq!(
6554        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).active as *const _ as usize },
6555        12usize,
6556        concat!(
6557            "Offset of field: ",
6558            stringify!(_zend_signal_globals_t),
6559            "::",
6560            stringify!(active)
6561        )
6562    );
6563    assert_eq!(
6564        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).check as *const _ as usize },
6565        16usize,
6566        concat!(
6567            "Offset of field: ",
6568            stringify!(_zend_signal_globals_t),
6569            "::",
6570            stringify!(check)
6571        )
6572    );
6573    assert_eq!(
6574        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).handlers as *const _ as usize },
6575        24usize,
6576        concat!(
6577            "Offset of field: ",
6578            stringify!(_zend_signal_globals_t),
6579            "::",
6580            stringify!(handlers)
6581        )
6582    );
6583    assert_eq!(
6584        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).pstorage as *const _ as usize },
6585        1064usize,
6586        concat!(
6587            "Offset of field: ",
6588            stringify!(_zend_signal_globals_t),
6589            "::",
6590            stringify!(pstorage)
6591        )
6592    );
6593    assert_eq!(
6594        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).phead as *const _ as usize },
6595        3112usize,
6596        concat!(
6597            "Offset of field: ",
6598            stringify!(_zend_signal_globals_t),
6599            "::",
6600            stringify!(phead)
6601        )
6602    );
6603    assert_eq!(
6604        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).ptail as *const _ as usize },
6605        3120usize,
6606        concat!(
6607            "Offset of field: ",
6608            stringify!(_zend_signal_globals_t),
6609            "::",
6610            stringify!(ptail)
6611        )
6612    );
6613    assert_eq!(
6614        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).pavail as *const _ as usize },
6615        3128usize,
6616        concat!(
6617            "Offset of field: ",
6618            stringify!(_zend_signal_globals_t),
6619            "::",
6620            stringify!(pavail)
6621        )
6622    );
6623}
6624pub type zend_signal_globals_t = _zend_signal_globals_t;
6625extern "C" {
6626    pub static mut zend_signal_globals: zend_signal_globals_t;
6627}
6628extern "C" {
6629    pub fn zend_signal_handler_unblock();
6630}
6631extern "C" {
6632    pub fn zend_signal_activate();
6633}
6634extern "C" {
6635    pub fn zend_signal_deactivate();
6636}
6637extern "C" {
6638    pub fn zend_signal_startup();
6639}
6640extern "C" {
6641    pub fn zend_signal_init();
6642}
6643extern "C" {
6644    pub fn zend_signal(
6645        signo: ::std::os::raw::c_int,
6646        handler: ::std::option::Option<unsafe extern "C" fn(arg1: ::std::os::raw::c_int)>,
6647    ) -> ::std::os::raw::c_int;
6648}
6649extern "C" {
6650    pub fn zend_sigaction(
6651        signo: ::std::os::raw::c_int,
6652        act: *const sigaction,
6653        oldact: *mut sigaction,
6654    ) -> ::std::os::raw::c_int;
6655}
6656extern "C" {
6657    pub fn zend_error_noreturn(
6658        type_: ::std::os::raw::c_int,
6659        format: *const ::std::os::raw::c_char,
6660        ...
6661    );
6662}
6663#[repr(C)]
6664#[derive(Debug, Copy, Clone)]
6665pub struct _zend_serialize_data {
6666    _unused: [u8; 0],
6667}
6668#[repr(C)]
6669#[derive(Debug, Copy, Clone)]
6670pub struct _zend_unserialize_data {
6671    _unused: [u8; 0],
6672}
6673pub type zend_serialize_data = _zend_serialize_data;
6674pub type zend_unserialize_data = _zend_unserialize_data;
6675#[repr(C)]
6676#[derive(Debug, Copy, Clone)]
6677pub struct _zend_trait_method_reference {
6678    pub method_name: *mut zend_string,
6679    pub ce: *mut zend_class_entry,
6680    pub class_name: *mut zend_string,
6681}
6682#[test]
6683fn bindgen_test_layout__zend_trait_method_reference() {
6684    assert_eq!(
6685        ::std::mem::size_of::<_zend_trait_method_reference>(),
6686        24usize,
6687        concat!("Size of: ", stringify!(_zend_trait_method_reference))
6688    );
6689    assert_eq!(
6690        ::std::mem::align_of::<_zend_trait_method_reference>(),
6691        8usize,
6692        concat!("Alignment of ", stringify!(_zend_trait_method_reference))
6693    );
6694    assert_eq!(
6695        unsafe {
6696            &(*(::std::ptr::null::<_zend_trait_method_reference>())).method_name as *const _
6697                as usize
6698        },
6699        0usize,
6700        concat!(
6701            "Offset of field: ",
6702            stringify!(_zend_trait_method_reference),
6703            "::",
6704            stringify!(method_name)
6705        )
6706    );
6707    assert_eq!(
6708        unsafe { &(*(::std::ptr::null::<_zend_trait_method_reference>())).ce as *const _ as usize },
6709        8usize,
6710        concat!(
6711            "Offset of field: ",
6712            stringify!(_zend_trait_method_reference),
6713            "::",
6714            stringify!(ce)
6715        )
6716    );
6717    assert_eq!(
6718        unsafe {
6719            &(*(::std::ptr::null::<_zend_trait_method_reference>())).class_name as *const _ as usize
6720        },
6721        16usize,
6722        concat!(
6723            "Offset of field: ",
6724            stringify!(_zend_trait_method_reference),
6725            "::",
6726            stringify!(class_name)
6727        )
6728    );
6729}
6730pub type zend_trait_method_reference = _zend_trait_method_reference;
6731#[repr(C)]
6732#[derive(Debug, Copy, Clone)]
6733pub struct _zend_trait_precedence {
6734    pub trait_method: *mut zend_trait_method_reference,
6735    pub exclude_from_classes: *mut _zend_trait_precedence__bindgen_ty_1,
6736}
6737#[repr(C)]
6738#[derive(Copy, Clone)]
6739pub union _zend_trait_precedence__bindgen_ty_1 {
6740    pub ce: *mut zend_class_entry,
6741    pub class_name: *mut zend_string,
6742    _bindgen_union_align: u64,
6743}
6744#[test]
6745fn bindgen_test_layout__zend_trait_precedence__bindgen_ty_1() {
6746    assert_eq!(
6747        ::std::mem::size_of::<_zend_trait_precedence__bindgen_ty_1>(),
6748        8usize,
6749        concat!(
6750            "Size of: ",
6751            stringify!(_zend_trait_precedence__bindgen_ty_1)
6752        )
6753    );
6754    assert_eq!(
6755        ::std::mem::align_of::<_zend_trait_precedence__bindgen_ty_1>(),
6756        8usize,
6757        concat!(
6758            "Alignment of ",
6759            stringify!(_zend_trait_precedence__bindgen_ty_1)
6760        )
6761    );
6762    assert_eq!(
6763        unsafe {
6764            &(*(::std::ptr::null::<_zend_trait_precedence__bindgen_ty_1>())).ce as *const _ as usize
6765        },
6766        0usize,
6767        concat!(
6768            "Offset of field: ",
6769            stringify!(_zend_trait_precedence__bindgen_ty_1),
6770            "::",
6771            stringify!(ce)
6772        )
6773    );
6774    assert_eq!(
6775        unsafe {
6776            &(*(::std::ptr::null::<_zend_trait_precedence__bindgen_ty_1>())).class_name as *const _
6777                as usize
6778        },
6779        0usize,
6780        concat!(
6781            "Offset of field: ",
6782            stringify!(_zend_trait_precedence__bindgen_ty_1),
6783            "::",
6784            stringify!(class_name)
6785        )
6786    );
6787}
6788#[test]
6789fn bindgen_test_layout__zend_trait_precedence() {
6790    assert_eq!(
6791        ::std::mem::size_of::<_zend_trait_precedence>(),
6792        16usize,
6793        concat!("Size of: ", stringify!(_zend_trait_precedence))
6794    );
6795    assert_eq!(
6796        ::std::mem::align_of::<_zend_trait_precedence>(),
6797        8usize,
6798        concat!("Alignment of ", stringify!(_zend_trait_precedence))
6799    );
6800    assert_eq!(
6801        unsafe {
6802            &(*(::std::ptr::null::<_zend_trait_precedence>())).trait_method as *const _ as usize
6803        },
6804        0usize,
6805        concat!(
6806            "Offset of field: ",
6807            stringify!(_zend_trait_precedence),
6808            "::",
6809            stringify!(trait_method)
6810        )
6811    );
6812    assert_eq!(
6813        unsafe {
6814            &(*(::std::ptr::null::<_zend_trait_precedence>())).exclude_from_classes as *const _
6815                as usize
6816        },
6817        8usize,
6818        concat!(
6819            "Offset of field: ",
6820            stringify!(_zend_trait_precedence),
6821            "::",
6822            stringify!(exclude_from_classes)
6823        )
6824    );
6825}
6826pub type zend_trait_precedence = _zend_trait_precedence;
6827#[repr(C)]
6828#[derive(Debug, Copy, Clone)]
6829pub struct _zend_trait_alias {
6830    pub trait_method: *mut zend_trait_method_reference,
6831    #[doc = " name for method to be added"]
6832    pub alias: *mut zend_string,
6833    #[doc = " modifiers to be set on trait method"]
6834    pub modifiers: u32,
6835}
6836#[test]
6837fn bindgen_test_layout__zend_trait_alias() {
6838    assert_eq!(
6839        ::std::mem::size_of::<_zend_trait_alias>(),
6840        24usize,
6841        concat!("Size of: ", stringify!(_zend_trait_alias))
6842    );
6843    assert_eq!(
6844        ::std::mem::align_of::<_zend_trait_alias>(),
6845        8usize,
6846        concat!("Alignment of ", stringify!(_zend_trait_alias))
6847    );
6848    assert_eq!(
6849        unsafe { &(*(::std::ptr::null::<_zend_trait_alias>())).trait_method as *const _ as usize },
6850        0usize,
6851        concat!(
6852            "Offset of field: ",
6853            stringify!(_zend_trait_alias),
6854            "::",
6855            stringify!(trait_method)
6856        )
6857    );
6858    assert_eq!(
6859        unsafe { &(*(::std::ptr::null::<_zend_trait_alias>())).alias as *const _ as usize },
6860        8usize,
6861        concat!(
6862            "Offset of field: ",
6863            stringify!(_zend_trait_alias),
6864            "::",
6865            stringify!(alias)
6866        )
6867    );
6868    assert_eq!(
6869        unsafe { &(*(::std::ptr::null::<_zend_trait_alias>())).modifiers as *const _ as usize },
6870        16usize,
6871        concat!(
6872            "Offset of field: ",
6873            stringify!(_zend_trait_alias),
6874            "::",
6875            stringify!(modifiers)
6876        )
6877    );
6878}
6879pub type zend_trait_alias = _zend_trait_alias;
6880#[repr(C)]
6881#[derive(Copy, Clone)]
6882pub struct _zend_class_entry {
6883    pub type_: ::std::os::raw::c_char,
6884    pub name: *mut zend_string,
6885    pub parent: *mut _zend_class_entry,
6886    pub refcount: ::std::os::raw::c_int,
6887    pub ce_flags: u32,
6888    pub default_properties_count: ::std::os::raw::c_int,
6889    pub default_static_members_count: ::std::os::raw::c_int,
6890    pub default_properties_table: *mut zval,
6891    pub default_static_members_table: *mut zval,
6892    pub static_members_table: *mut zval,
6893    pub function_table: HashTable,
6894    pub properties_info: HashTable,
6895    pub constants_table: HashTable,
6896    pub constructor: *mut _zend_function,
6897    pub destructor: *mut _zend_function,
6898    pub clone: *mut _zend_function,
6899    pub __get: *mut _zend_function,
6900    pub __set: *mut _zend_function,
6901    pub __unset: *mut _zend_function,
6902    pub __isset: *mut _zend_function,
6903    pub __call: *mut _zend_function,
6904    pub __callstatic: *mut _zend_function,
6905    pub __tostring: *mut _zend_function,
6906    pub __debugInfo: *mut _zend_function,
6907    pub serialize_func: *mut _zend_function,
6908    pub unserialize_func: *mut _zend_function,
6909    pub iterator_funcs: zend_class_iterator_funcs,
6910    pub create_object: ::std::option::Option<
6911        unsafe extern "C" fn(class_type: *mut zend_class_entry) -> *mut zend_object,
6912    >,
6913    pub get_iterator: ::std::option::Option<
6914        unsafe extern "C" fn(
6915            ce: *mut zend_class_entry,
6916            object: *mut zval,
6917            by_ref: ::std::os::raw::c_int,
6918        ) -> *mut zend_object_iterator,
6919    >,
6920    pub interface_gets_implemented: ::std::option::Option<
6921        unsafe extern "C" fn(
6922            iface: *mut zend_class_entry,
6923            class_type: *mut zend_class_entry,
6924        ) -> ::std::os::raw::c_int,
6925    >,
6926    pub get_static_method: ::std::option::Option<
6927        unsafe extern "C" fn(
6928            ce: *mut zend_class_entry,
6929            method: *mut zend_string,
6930        ) -> *mut _zend_function,
6931    >,
6932    pub serialize: ::std::option::Option<
6933        unsafe extern "C" fn(
6934            object: *mut zval,
6935            buffer: *mut *mut ::std::os::raw::c_uchar,
6936            buf_len: *mut size_t,
6937            data: *mut zend_serialize_data,
6938        ) -> ::std::os::raw::c_int,
6939    >,
6940    pub unserialize: ::std::option::Option<
6941        unsafe extern "C" fn(
6942            object: *mut zval,
6943            ce: *mut zend_class_entry,
6944            buf: *const ::std::os::raw::c_uchar,
6945            buf_len: size_t,
6946            data: *mut zend_unserialize_data,
6947        ) -> ::std::os::raw::c_int,
6948    >,
6949    pub num_interfaces: u32,
6950    pub num_traits: u32,
6951    pub interfaces: *mut *mut zend_class_entry,
6952    pub traits: *mut *mut zend_class_entry,
6953    pub trait_aliases: *mut *mut zend_trait_alias,
6954    pub trait_precedences: *mut *mut zend_trait_precedence,
6955    pub info: _zend_class_entry__bindgen_ty_1,
6956}
6957#[repr(C)]
6958#[derive(Copy, Clone)]
6959pub union _zend_class_entry__bindgen_ty_1 {
6960    pub user: _zend_class_entry__bindgen_ty_1__bindgen_ty_1,
6961    pub internal: _zend_class_entry__bindgen_ty_1__bindgen_ty_2,
6962    _bindgen_union_align: [u64; 3usize],
6963}
6964#[repr(C)]
6965#[derive(Debug, Copy, Clone)]
6966pub struct _zend_class_entry__bindgen_ty_1__bindgen_ty_1 {
6967    pub filename: *mut zend_string,
6968    pub line_start: u32,
6969    pub line_end: u32,
6970    pub doc_comment: *mut zend_string,
6971}
6972#[test]
6973fn bindgen_test_layout__zend_class_entry__bindgen_ty_1__bindgen_ty_1() {
6974    assert_eq!(
6975        ::std::mem::size_of::<_zend_class_entry__bindgen_ty_1__bindgen_ty_1>(),
6976        24usize,
6977        concat!(
6978            "Size of: ",
6979            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_1)
6980        )
6981    );
6982    assert_eq!(
6983        ::std::mem::align_of::<_zend_class_entry__bindgen_ty_1__bindgen_ty_1>(),
6984        8usize,
6985        concat!(
6986            "Alignment of ",
6987            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_1)
6988        )
6989    );
6990    assert_eq!(
6991        unsafe {
6992            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1__bindgen_ty_1>())).filename
6993                as *const _ as usize
6994        },
6995        0usize,
6996        concat!(
6997            "Offset of field: ",
6998            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_1),
6999            "::",
7000            stringify!(filename)
7001        )
7002    );
7003    assert_eq!(
7004        unsafe {
7005            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1__bindgen_ty_1>())).line_start
7006                as *const _ as usize
7007        },
7008        8usize,
7009        concat!(
7010            "Offset of field: ",
7011            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_1),
7012            "::",
7013            stringify!(line_start)
7014        )
7015    );
7016    assert_eq!(
7017        unsafe {
7018            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1__bindgen_ty_1>())).line_end
7019                as *const _ as usize
7020        },
7021        12usize,
7022        concat!(
7023            "Offset of field: ",
7024            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_1),
7025            "::",
7026            stringify!(line_end)
7027        )
7028    );
7029    assert_eq!(
7030        unsafe {
7031            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1__bindgen_ty_1>())).doc_comment
7032                as *const _ as usize
7033        },
7034        16usize,
7035        concat!(
7036            "Offset of field: ",
7037            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_1),
7038            "::",
7039            stringify!(doc_comment)
7040        )
7041    );
7042}
7043#[repr(C)]
7044#[derive(Debug, Copy, Clone)]
7045pub struct _zend_class_entry__bindgen_ty_1__bindgen_ty_2 {
7046    pub builtin_functions: *const _zend_function_entry,
7047    pub module: *mut _zend_module_entry,
7048}
7049#[test]
7050fn bindgen_test_layout__zend_class_entry__bindgen_ty_1__bindgen_ty_2() {
7051    assert_eq!(
7052        ::std::mem::size_of::<_zend_class_entry__bindgen_ty_1__bindgen_ty_2>(),
7053        16usize,
7054        concat!(
7055            "Size of: ",
7056            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_2)
7057        )
7058    );
7059    assert_eq!(
7060        ::std::mem::align_of::<_zend_class_entry__bindgen_ty_1__bindgen_ty_2>(),
7061        8usize,
7062        concat!(
7063            "Alignment of ",
7064            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_2)
7065        )
7066    );
7067    assert_eq!(
7068        unsafe {
7069            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1__bindgen_ty_2>()))
7070                .builtin_functions as *const _ as usize
7071        },
7072        0usize,
7073        concat!(
7074            "Offset of field: ",
7075            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_2),
7076            "::",
7077            stringify!(builtin_functions)
7078        )
7079    );
7080    assert_eq!(
7081        unsafe {
7082            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1__bindgen_ty_2>())).module
7083                as *const _ as usize
7084        },
7085        8usize,
7086        concat!(
7087            "Offset of field: ",
7088            stringify!(_zend_class_entry__bindgen_ty_1__bindgen_ty_2),
7089            "::",
7090            stringify!(module)
7091        )
7092    );
7093}
7094#[test]
7095fn bindgen_test_layout__zend_class_entry__bindgen_ty_1() {
7096    assert_eq!(
7097        ::std::mem::size_of::<_zend_class_entry__bindgen_ty_1>(),
7098        24usize,
7099        concat!("Size of: ", stringify!(_zend_class_entry__bindgen_ty_1))
7100    );
7101    assert_eq!(
7102        ::std::mem::align_of::<_zend_class_entry__bindgen_ty_1>(),
7103        8usize,
7104        concat!("Alignment of ", stringify!(_zend_class_entry__bindgen_ty_1))
7105    );
7106    assert_eq!(
7107        unsafe {
7108            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1>())).user as *const _ as usize
7109        },
7110        0usize,
7111        concat!(
7112            "Offset of field: ",
7113            stringify!(_zend_class_entry__bindgen_ty_1),
7114            "::",
7115            stringify!(user)
7116        )
7117    );
7118    assert_eq!(
7119        unsafe {
7120            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1>())).internal as *const _
7121                as usize
7122        },
7123        0usize,
7124        concat!(
7125            "Offset of field: ",
7126            stringify!(_zend_class_entry__bindgen_ty_1),
7127            "::",
7128            stringify!(internal)
7129        )
7130    );
7131}
7132#[test]
7133fn bindgen_test_layout__zend_class_entry() {
7134    assert_eq!(
7135        ::std::mem::size_of::<_zend_class_entry>(),
7136        504usize,
7137        concat!("Size of: ", stringify!(_zend_class_entry))
7138    );
7139    assert_eq!(
7140        ::std::mem::align_of::<_zend_class_entry>(),
7141        8usize,
7142        concat!("Alignment of ", stringify!(_zend_class_entry))
7143    );
7144    assert_eq!(
7145        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).type_ as *const _ as usize },
7146        0usize,
7147        concat!(
7148            "Offset of field: ",
7149            stringify!(_zend_class_entry),
7150            "::",
7151            stringify!(type_)
7152        )
7153    );
7154    assert_eq!(
7155        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).name as *const _ as usize },
7156        8usize,
7157        concat!(
7158            "Offset of field: ",
7159            stringify!(_zend_class_entry),
7160            "::",
7161            stringify!(name)
7162        )
7163    );
7164    assert_eq!(
7165        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).parent as *const _ as usize },
7166        16usize,
7167        concat!(
7168            "Offset of field: ",
7169            stringify!(_zend_class_entry),
7170            "::",
7171            stringify!(parent)
7172        )
7173    );
7174    assert_eq!(
7175        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).refcount as *const _ as usize },
7176        24usize,
7177        concat!(
7178            "Offset of field: ",
7179            stringify!(_zend_class_entry),
7180            "::",
7181            stringify!(refcount)
7182        )
7183    );
7184    assert_eq!(
7185        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).ce_flags as *const _ as usize },
7186        28usize,
7187        concat!(
7188            "Offset of field: ",
7189            stringify!(_zend_class_entry),
7190            "::",
7191            stringify!(ce_flags)
7192        )
7193    );
7194    assert_eq!(
7195        unsafe {
7196            &(*(::std::ptr::null::<_zend_class_entry>())).default_properties_count as *const _
7197                as usize
7198        },
7199        32usize,
7200        concat!(
7201            "Offset of field: ",
7202            stringify!(_zend_class_entry),
7203            "::",
7204            stringify!(default_properties_count)
7205        )
7206    );
7207    assert_eq!(
7208        unsafe {
7209            &(*(::std::ptr::null::<_zend_class_entry>())).default_static_members_count as *const _
7210                as usize
7211        },
7212        36usize,
7213        concat!(
7214            "Offset of field: ",
7215            stringify!(_zend_class_entry),
7216            "::",
7217            stringify!(default_static_members_count)
7218        )
7219    );
7220    assert_eq!(
7221        unsafe {
7222            &(*(::std::ptr::null::<_zend_class_entry>())).default_properties_table as *const _
7223                as usize
7224        },
7225        40usize,
7226        concat!(
7227            "Offset of field: ",
7228            stringify!(_zend_class_entry),
7229            "::",
7230            stringify!(default_properties_table)
7231        )
7232    );
7233    assert_eq!(
7234        unsafe {
7235            &(*(::std::ptr::null::<_zend_class_entry>())).default_static_members_table as *const _
7236                as usize
7237        },
7238        48usize,
7239        concat!(
7240            "Offset of field: ",
7241            stringify!(_zend_class_entry),
7242            "::",
7243            stringify!(default_static_members_table)
7244        )
7245    );
7246    assert_eq!(
7247        unsafe {
7248            &(*(::std::ptr::null::<_zend_class_entry>())).static_members_table as *const _ as usize
7249        },
7250        56usize,
7251        concat!(
7252            "Offset of field: ",
7253            stringify!(_zend_class_entry),
7254            "::",
7255            stringify!(static_members_table)
7256        )
7257    );
7258    assert_eq!(
7259        unsafe {
7260            &(*(::std::ptr::null::<_zend_class_entry>())).function_table as *const _ as usize
7261        },
7262        64usize,
7263        concat!(
7264            "Offset of field: ",
7265            stringify!(_zend_class_entry),
7266            "::",
7267            stringify!(function_table)
7268        )
7269    );
7270    assert_eq!(
7271        unsafe {
7272            &(*(::std::ptr::null::<_zend_class_entry>())).properties_info as *const _ as usize
7273        },
7274        120usize,
7275        concat!(
7276            "Offset of field: ",
7277            stringify!(_zend_class_entry),
7278            "::",
7279            stringify!(properties_info)
7280        )
7281    );
7282    assert_eq!(
7283        unsafe {
7284            &(*(::std::ptr::null::<_zend_class_entry>())).constants_table as *const _ as usize
7285        },
7286        176usize,
7287        concat!(
7288            "Offset of field: ",
7289            stringify!(_zend_class_entry),
7290            "::",
7291            stringify!(constants_table)
7292        )
7293    );
7294    assert_eq!(
7295        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).constructor as *const _ as usize },
7296        232usize,
7297        concat!(
7298            "Offset of field: ",
7299            stringify!(_zend_class_entry),
7300            "::",
7301            stringify!(constructor)
7302        )
7303    );
7304    assert_eq!(
7305        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).destructor as *const _ as usize },
7306        240usize,
7307        concat!(
7308            "Offset of field: ",
7309            stringify!(_zend_class_entry),
7310            "::",
7311            stringify!(destructor)
7312        )
7313    );
7314    assert_eq!(
7315        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).clone as *const _ as usize },
7316        248usize,
7317        concat!(
7318            "Offset of field: ",
7319            stringify!(_zend_class_entry),
7320            "::",
7321            stringify!(clone)
7322        )
7323    );
7324    assert_eq!(
7325        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__get as *const _ as usize },
7326        256usize,
7327        concat!(
7328            "Offset of field: ",
7329            stringify!(_zend_class_entry),
7330            "::",
7331            stringify!(__get)
7332        )
7333    );
7334    assert_eq!(
7335        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__set as *const _ as usize },
7336        264usize,
7337        concat!(
7338            "Offset of field: ",
7339            stringify!(_zend_class_entry),
7340            "::",
7341            stringify!(__set)
7342        )
7343    );
7344    assert_eq!(
7345        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__unset as *const _ as usize },
7346        272usize,
7347        concat!(
7348            "Offset of field: ",
7349            stringify!(_zend_class_entry),
7350            "::",
7351            stringify!(__unset)
7352        )
7353    );
7354    assert_eq!(
7355        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__isset as *const _ as usize },
7356        280usize,
7357        concat!(
7358            "Offset of field: ",
7359            stringify!(_zend_class_entry),
7360            "::",
7361            stringify!(__isset)
7362        )
7363    );
7364    assert_eq!(
7365        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__call as *const _ as usize },
7366        288usize,
7367        concat!(
7368            "Offset of field: ",
7369            stringify!(_zend_class_entry),
7370            "::",
7371            stringify!(__call)
7372        )
7373    );
7374    assert_eq!(
7375        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__callstatic as *const _ as usize },
7376        296usize,
7377        concat!(
7378            "Offset of field: ",
7379            stringify!(_zend_class_entry),
7380            "::",
7381            stringify!(__callstatic)
7382        )
7383    );
7384    assert_eq!(
7385        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__tostring as *const _ as usize },
7386        304usize,
7387        concat!(
7388            "Offset of field: ",
7389            stringify!(_zend_class_entry),
7390            "::",
7391            stringify!(__tostring)
7392        )
7393    );
7394    assert_eq!(
7395        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__debugInfo as *const _ as usize },
7396        312usize,
7397        concat!(
7398            "Offset of field: ",
7399            stringify!(_zend_class_entry),
7400            "::",
7401            stringify!(__debugInfo)
7402        )
7403    );
7404    assert_eq!(
7405        unsafe {
7406            &(*(::std::ptr::null::<_zend_class_entry>())).serialize_func as *const _ as usize
7407        },
7408        320usize,
7409        concat!(
7410            "Offset of field: ",
7411            stringify!(_zend_class_entry),
7412            "::",
7413            stringify!(serialize_func)
7414        )
7415    );
7416    assert_eq!(
7417        unsafe {
7418            &(*(::std::ptr::null::<_zend_class_entry>())).unserialize_func as *const _ as usize
7419        },
7420        328usize,
7421        concat!(
7422            "Offset of field: ",
7423            stringify!(_zend_class_entry),
7424            "::",
7425            stringify!(unserialize_func)
7426        )
7427    );
7428    assert_eq!(
7429        unsafe {
7430            &(*(::std::ptr::null::<_zend_class_entry>())).iterator_funcs as *const _ as usize
7431        },
7432        336usize,
7433        concat!(
7434            "Offset of field: ",
7435            stringify!(_zend_class_entry),
7436            "::",
7437            stringify!(iterator_funcs)
7438        )
7439    );
7440    assert_eq!(
7441        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).create_object as *const _ as usize },
7442        392usize,
7443        concat!(
7444            "Offset of field: ",
7445            stringify!(_zend_class_entry),
7446            "::",
7447            stringify!(create_object)
7448        )
7449    );
7450    assert_eq!(
7451        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).get_iterator as *const _ as usize },
7452        400usize,
7453        concat!(
7454            "Offset of field: ",
7455            stringify!(_zend_class_entry),
7456            "::",
7457            stringify!(get_iterator)
7458        )
7459    );
7460    assert_eq!(
7461        unsafe {
7462            &(*(::std::ptr::null::<_zend_class_entry>())).interface_gets_implemented as *const _
7463                as usize
7464        },
7465        408usize,
7466        concat!(
7467            "Offset of field: ",
7468            stringify!(_zend_class_entry),
7469            "::",
7470            stringify!(interface_gets_implemented)
7471        )
7472    );
7473    assert_eq!(
7474        unsafe {
7475            &(*(::std::ptr::null::<_zend_class_entry>())).get_static_method as *const _ as usize
7476        },
7477        416usize,
7478        concat!(
7479            "Offset of field: ",
7480            stringify!(_zend_class_entry),
7481            "::",
7482            stringify!(get_static_method)
7483        )
7484    );
7485    assert_eq!(
7486        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).serialize as *const _ as usize },
7487        424usize,
7488        concat!(
7489            "Offset of field: ",
7490            stringify!(_zend_class_entry),
7491            "::",
7492            stringify!(serialize)
7493        )
7494    );
7495    assert_eq!(
7496        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).unserialize as *const _ as usize },
7497        432usize,
7498        concat!(
7499            "Offset of field: ",
7500            stringify!(_zend_class_entry),
7501            "::",
7502            stringify!(unserialize)
7503        )
7504    );
7505    assert_eq!(
7506        unsafe {
7507            &(*(::std::ptr::null::<_zend_class_entry>())).num_interfaces as *const _ as usize
7508        },
7509        440usize,
7510        concat!(
7511            "Offset of field: ",
7512            stringify!(_zend_class_entry),
7513            "::",
7514            stringify!(num_interfaces)
7515        )
7516    );
7517    assert_eq!(
7518        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).num_traits as *const _ as usize },
7519        444usize,
7520        concat!(
7521            "Offset of field: ",
7522            stringify!(_zend_class_entry),
7523            "::",
7524            stringify!(num_traits)
7525        )
7526    );
7527    assert_eq!(
7528        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).interfaces as *const _ as usize },
7529        448usize,
7530        concat!(
7531            "Offset of field: ",
7532            stringify!(_zend_class_entry),
7533            "::",
7534            stringify!(interfaces)
7535        )
7536    );
7537    assert_eq!(
7538        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).traits as *const _ as usize },
7539        456usize,
7540        concat!(
7541            "Offset of field: ",
7542            stringify!(_zend_class_entry),
7543            "::",
7544            stringify!(traits)
7545        )
7546    );
7547    assert_eq!(
7548        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).trait_aliases as *const _ as usize },
7549        464usize,
7550        concat!(
7551            "Offset of field: ",
7552            stringify!(_zend_class_entry),
7553            "::",
7554            stringify!(trait_aliases)
7555        )
7556    );
7557    assert_eq!(
7558        unsafe {
7559            &(*(::std::ptr::null::<_zend_class_entry>())).trait_precedences as *const _ as usize
7560        },
7561        472usize,
7562        concat!(
7563            "Offset of field: ",
7564            stringify!(_zend_class_entry),
7565            "::",
7566            stringify!(trait_precedences)
7567        )
7568    );
7569    assert_eq!(
7570        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).info as *const _ as usize },
7571        480usize,
7572        concat!(
7573            "Offset of field: ",
7574            stringify!(_zend_class_entry),
7575            "::",
7576            stringify!(info)
7577        )
7578    );
7579}
7580#[repr(C)]
7581#[derive(Debug, Copy, Clone)]
7582pub struct _zend_utility_functions {
7583    pub error_function: ::std::option::Option<
7584        unsafe extern "C" fn(
7585            type_: ::std::os::raw::c_int,
7586            error_filename: *const ::std::os::raw::c_char,
7587            error_lineno: u32,
7588            format: *const ::std::os::raw::c_char,
7589            args: *mut __va_list_tag,
7590        ),
7591    >,
7592    pub printf_function: ::std::option::Option<
7593        unsafe extern "C" fn(format: *const ::std::os::raw::c_char, ...) -> size_t,
7594    >,
7595    pub write_function: ::std::option::Option<
7596        unsafe extern "C" fn(str_: *const ::std::os::raw::c_char, str_length: size_t) -> size_t,
7597    >,
7598    pub fopen_function: ::std::option::Option<
7599        unsafe extern "C" fn(
7600            filename: *const ::std::os::raw::c_char,
7601            opened_path: *mut *mut zend_string,
7602        ) -> *mut FILE,
7603    >,
7604    pub message_handler: ::std::option::Option<
7605        unsafe extern "C" fn(message: zend_long, data: *const ::std::os::raw::c_void),
7606    >,
7607    pub get_configuration_directive:
7608        ::std::option::Option<unsafe extern "C" fn(name: *mut zend_string) -> *mut zval>,
7609    pub ticks_function: ::std::option::Option<unsafe extern "C" fn(ticks: ::std::os::raw::c_int)>,
7610    pub on_timeout: ::std::option::Option<unsafe extern "C" fn(seconds: ::std::os::raw::c_int)>,
7611    pub stream_open_function: ::std::option::Option<
7612        unsafe extern "C" fn(
7613            filename: *const ::std::os::raw::c_char,
7614            handle: *mut zend_file_handle,
7615        ) -> ::std::os::raw::c_int,
7616    >,
7617    pub printf_to_smart_string_function: ::std::option::Option<
7618        unsafe extern "C" fn(
7619            buf: *mut smart_string,
7620            format: *const ::std::os::raw::c_char,
7621            ap: *mut __va_list_tag,
7622        ),
7623    >,
7624    pub printf_to_smart_str_function: ::std::option::Option<
7625        unsafe extern "C" fn(
7626            buf: *mut smart_str,
7627            format: *const ::std::os::raw::c_char,
7628            ap: *mut __va_list_tag,
7629        ),
7630    >,
7631    pub getenv_function: ::std::option::Option<
7632        unsafe extern "C" fn(
7633            name: *mut ::std::os::raw::c_char,
7634            name_len: size_t,
7635        ) -> *mut ::std::os::raw::c_char,
7636    >,
7637    pub resolve_path_function: ::std::option::Option<
7638        unsafe extern "C" fn(
7639            filename: *const ::std::os::raw::c_char,
7640            filename_len: ::std::os::raw::c_int,
7641        ) -> *mut zend_string,
7642    >,
7643}
7644#[test]
7645fn bindgen_test_layout__zend_utility_functions() {
7646    assert_eq!(
7647        ::std::mem::size_of::<_zend_utility_functions>(),
7648        104usize,
7649        concat!("Size of: ", stringify!(_zend_utility_functions))
7650    );
7651    assert_eq!(
7652        ::std::mem::align_of::<_zend_utility_functions>(),
7653        8usize,
7654        concat!("Alignment of ", stringify!(_zend_utility_functions))
7655    );
7656    assert_eq!(
7657        unsafe {
7658            &(*(::std::ptr::null::<_zend_utility_functions>())).error_function as *const _ as usize
7659        },
7660        0usize,
7661        concat!(
7662            "Offset of field: ",
7663            stringify!(_zend_utility_functions),
7664            "::",
7665            stringify!(error_function)
7666        )
7667    );
7668    assert_eq!(
7669        unsafe {
7670            &(*(::std::ptr::null::<_zend_utility_functions>())).printf_function as *const _ as usize
7671        },
7672        8usize,
7673        concat!(
7674            "Offset of field: ",
7675            stringify!(_zend_utility_functions),
7676            "::",
7677            stringify!(printf_function)
7678        )
7679    );
7680    assert_eq!(
7681        unsafe {
7682            &(*(::std::ptr::null::<_zend_utility_functions>())).write_function as *const _ as usize
7683        },
7684        16usize,
7685        concat!(
7686            "Offset of field: ",
7687            stringify!(_zend_utility_functions),
7688            "::",
7689            stringify!(write_function)
7690        )
7691    );
7692    assert_eq!(
7693        unsafe {
7694            &(*(::std::ptr::null::<_zend_utility_functions>())).fopen_function as *const _ as usize
7695        },
7696        24usize,
7697        concat!(
7698            "Offset of field: ",
7699            stringify!(_zend_utility_functions),
7700            "::",
7701            stringify!(fopen_function)
7702        )
7703    );
7704    assert_eq!(
7705        unsafe {
7706            &(*(::std::ptr::null::<_zend_utility_functions>())).message_handler as *const _ as usize
7707        },
7708        32usize,
7709        concat!(
7710            "Offset of field: ",
7711            stringify!(_zend_utility_functions),
7712            "::",
7713            stringify!(message_handler)
7714        )
7715    );
7716    assert_eq!(
7717        unsafe {
7718            &(*(::std::ptr::null::<_zend_utility_functions>())).get_configuration_directive
7719                as *const _ as usize
7720        },
7721        40usize,
7722        concat!(
7723            "Offset of field: ",
7724            stringify!(_zend_utility_functions),
7725            "::",
7726            stringify!(get_configuration_directive)
7727        )
7728    );
7729    assert_eq!(
7730        unsafe {
7731            &(*(::std::ptr::null::<_zend_utility_functions>())).ticks_function as *const _ as usize
7732        },
7733        48usize,
7734        concat!(
7735            "Offset of field: ",
7736            stringify!(_zend_utility_functions),
7737            "::",
7738            stringify!(ticks_function)
7739        )
7740    );
7741    assert_eq!(
7742        unsafe {
7743            &(*(::std::ptr::null::<_zend_utility_functions>())).on_timeout as *const _ as usize
7744        },
7745        56usize,
7746        concat!(
7747            "Offset of field: ",
7748            stringify!(_zend_utility_functions),
7749            "::",
7750            stringify!(on_timeout)
7751        )
7752    );
7753    assert_eq!(
7754        unsafe {
7755            &(*(::std::ptr::null::<_zend_utility_functions>())).stream_open_function as *const _
7756                as usize
7757        },
7758        64usize,
7759        concat!(
7760            "Offset of field: ",
7761            stringify!(_zend_utility_functions),
7762            "::",
7763            stringify!(stream_open_function)
7764        )
7765    );
7766    assert_eq!(
7767        unsafe {
7768            &(*(::std::ptr::null::<_zend_utility_functions>())).printf_to_smart_string_function
7769                as *const _ as usize
7770        },
7771        72usize,
7772        concat!(
7773            "Offset of field: ",
7774            stringify!(_zend_utility_functions),
7775            "::",
7776            stringify!(printf_to_smart_string_function)
7777        )
7778    );
7779    assert_eq!(
7780        unsafe {
7781            &(*(::std::ptr::null::<_zend_utility_functions>())).printf_to_smart_str_function
7782                as *const _ as usize
7783        },
7784        80usize,
7785        concat!(
7786            "Offset of field: ",
7787            stringify!(_zend_utility_functions),
7788            "::",
7789            stringify!(printf_to_smart_str_function)
7790        )
7791    );
7792    assert_eq!(
7793        unsafe {
7794            &(*(::std::ptr::null::<_zend_utility_functions>())).getenv_function as *const _ as usize
7795        },
7796        88usize,
7797        concat!(
7798            "Offset of field: ",
7799            stringify!(_zend_utility_functions),
7800            "::",
7801            stringify!(getenv_function)
7802        )
7803    );
7804    assert_eq!(
7805        unsafe {
7806            &(*(::std::ptr::null::<_zend_utility_functions>())).resolve_path_function as *const _
7807                as usize
7808        },
7809        96usize,
7810        concat!(
7811            "Offset of field: ",
7812            stringify!(_zend_utility_functions),
7813            "::",
7814            stringify!(resolve_path_function)
7815        )
7816    );
7817}
7818pub type zend_utility_functions = _zend_utility_functions;
7819#[repr(C)]
7820#[derive(Debug, Copy, Clone)]
7821pub struct _zend_utility_values {
7822    pub import_use_extension: *mut ::std::os::raw::c_char,
7823    pub import_use_extension_length: u32,
7824    pub html_errors: zend_bool,
7825}
7826#[test]
7827fn bindgen_test_layout__zend_utility_values() {
7828    assert_eq!(
7829        ::std::mem::size_of::<_zend_utility_values>(),
7830        16usize,
7831        concat!("Size of: ", stringify!(_zend_utility_values))
7832    );
7833    assert_eq!(
7834        ::std::mem::align_of::<_zend_utility_values>(),
7835        8usize,
7836        concat!("Alignment of ", stringify!(_zend_utility_values))
7837    );
7838    assert_eq!(
7839        unsafe {
7840            &(*(::std::ptr::null::<_zend_utility_values>())).import_use_extension as *const _
7841                as usize
7842        },
7843        0usize,
7844        concat!(
7845            "Offset of field: ",
7846            stringify!(_zend_utility_values),
7847            "::",
7848            stringify!(import_use_extension)
7849        )
7850    );
7851    assert_eq!(
7852        unsafe {
7853            &(*(::std::ptr::null::<_zend_utility_values>())).import_use_extension_length as *const _
7854                as usize
7855        },
7856        8usize,
7857        concat!(
7858            "Offset of field: ",
7859            stringify!(_zend_utility_values),
7860            "::",
7861            stringify!(import_use_extension_length)
7862        )
7863    );
7864    assert_eq!(
7865        unsafe {
7866            &(*(::std::ptr::null::<_zend_utility_values>())).html_errors as *const _ as usize
7867        },
7868        12usize,
7869        concat!(
7870            "Offset of field: ",
7871            stringify!(_zend_utility_values),
7872            "::",
7873            stringify!(html_errors)
7874        )
7875    );
7876}
7877pub type zend_utility_values = _zend_utility_values;
7878pub type zend_write_func_t = ::std::option::Option<
7879    unsafe extern "C" fn(
7880        str_: *const ::std::os::raw::c_char,
7881        str_length: size_t,
7882    ) -> ::std::os::raw::c_int,
7883>;
7884extern "C" {
7885    pub fn zend_startup(
7886        utility_functions: *mut zend_utility_functions,
7887        extensions: *mut *mut ::std::os::raw::c_char,
7888    ) -> ::std::os::raw::c_int;
7889}
7890extern "C" {
7891    pub fn zend_shutdown();
7892}
7893extern "C" {
7894    pub fn zend_register_standard_ini_entries();
7895}
7896extern "C" {
7897    pub fn zend_post_startup();
7898}
7899extern "C" {
7900    pub fn zend_set_utility_values(utility_values: *mut zend_utility_values);
7901}
7902extern "C" {
7903    pub fn _zend_bailout(filename: *const ::std::os::raw::c_char, lineno: u32);
7904}
7905extern "C" {
7906    pub fn zend_vspprintf(
7907        pbuf: *mut *mut ::std::os::raw::c_char,
7908        max_len: size_t,
7909        format: *const ::std::os::raw::c_char,
7910        ap: *mut __va_list_tag,
7911    ) -> size_t;
7912}
7913extern "C" {
7914    pub fn zend_spprintf(
7915        message: *mut *mut ::std::os::raw::c_char,
7916        max_len: size_t,
7917        format: *const ::std::os::raw::c_char,
7918        ...
7919    ) -> size_t;
7920}
7921extern "C" {
7922    pub fn zend_vstrpprintf(
7923        max_len: size_t,
7924        format: *const ::std::os::raw::c_char,
7925        ap: *mut __va_list_tag,
7926    ) -> *mut zend_string;
7927}
7928extern "C" {
7929    pub fn zend_strpprintf(
7930        max_len: size_t,
7931        format: *const ::std::os::raw::c_char,
7932        ...
7933    ) -> *mut zend_string;
7934}
7935extern "C" {
7936    pub fn zend_make_printable_zval(expr: *mut zval, expr_copy: *mut zval)
7937        -> ::std::os::raw::c_int;
7938}
7939extern "C" {
7940    pub fn zend_print_zval(expr: *mut zval, indent: ::std::os::raw::c_int) -> size_t;
7941}
7942extern "C" {
7943    pub fn zend_print_zval_r(expr: *mut zval, indent: ::std::os::raw::c_int);
7944}
7945extern "C" {
7946    pub fn zend_print_zval_r_to_str(
7947        expr: *mut zval,
7948        indent: ::std::os::raw::c_int,
7949    ) -> *mut zend_string;
7950}
7951extern "C" {
7952    pub fn zend_print_flat_zval_r(expr: *mut zval);
7953}
7954extern "C" {
7955    pub fn zend_output_debug_string(
7956        trigger_break: zend_bool,
7957        format: *const ::std::os::raw::c_char,
7958        ...
7959    );
7960}
7961extern "C" {
7962    pub fn zend_activate();
7963}
7964extern "C" {
7965    pub fn zend_deactivate();
7966}
7967extern "C" {
7968    pub fn zend_call_destructors();
7969}
7970extern "C" {
7971    pub fn zend_activate_modules();
7972}
7973extern "C" {
7974    pub fn zend_deactivate_modules();
7975}
7976extern "C" {
7977    pub fn zend_post_deactivate_modules();
7978}
7979extern "C" {
7980    pub static mut zend_printf: ::std::option::Option<
7981        unsafe extern "C" fn(format: *const ::std::os::raw::c_char, ...) -> size_t,
7982    >;
7983}
7984extern "C" {
7985    pub static mut zend_write: zend_write_func_t;
7986}
7987extern "C" {
7988    pub static mut zend_fopen: ::std::option::Option<
7989        unsafe extern "C" fn(
7990            filename: *const ::std::os::raw::c_char,
7991            opened_path: *mut *mut zend_string,
7992        ) -> *mut FILE,
7993    >;
7994}
7995extern "C" {
7996    pub static mut zend_ticks_function:
7997        ::std::option::Option<unsafe extern "C" fn(ticks: ::std::os::raw::c_int)>;
7998}
7999extern "C" {
8000    pub static mut zend_interrupt_function:
8001        ::std::option::Option<unsafe extern "C" fn(execute_data: *mut zend_execute_data)>;
8002}
8003extern "C" {
8004    pub static mut zend_error_cb: ::std::option::Option<
8005        unsafe extern "C" fn(
8006            type_: ::std::os::raw::c_int,
8007            error_filename: *const ::std::os::raw::c_char,
8008            error_lineno: u32,
8009            format: *const ::std::os::raw::c_char,
8010            args: *mut __va_list_tag,
8011        ),
8012    >;
8013}
8014extern "C" {
8015    pub static mut zend_on_timeout:
8016        ::std::option::Option<unsafe extern "C" fn(seconds: ::std::os::raw::c_int)>;
8017}
8018extern "C" {
8019    pub static mut zend_stream_open_function: ::std::option::Option<
8020        unsafe extern "C" fn(
8021            filename: *const ::std::os::raw::c_char,
8022            handle: *mut zend_file_handle,
8023        ) -> ::std::os::raw::c_int,
8024    >;
8025}
8026extern "C" {
8027    pub static mut zend_printf_to_smart_string: ::std::option::Option<
8028        unsafe extern "C" fn(
8029            buf: *mut smart_string,
8030            format: *const ::std::os::raw::c_char,
8031            ap: *mut __va_list_tag,
8032        ),
8033    >;
8034}
8035extern "C" {
8036    pub static mut zend_printf_to_smart_str: ::std::option::Option<
8037        unsafe extern "C" fn(
8038            buf: *mut smart_str,
8039            format: *const ::std::os::raw::c_char,
8040            ap: *mut __va_list_tag,
8041        ),
8042    >;
8043}
8044extern "C" {
8045    pub static mut zend_getenv: ::std::option::Option<
8046        unsafe extern "C" fn(
8047            name: *mut ::std::os::raw::c_char,
8048            name_len: size_t,
8049        ) -> *mut ::std::os::raw::c_char,
8050    >;
8051}
8052extern "C" {
8053    pub static mut zend_resolve_path: ::std::option::Option<
8054        unsafe extern "C" fn(
8055            filename: *const ::std::os::raw::c_char,
8056            filename_len: ::std::os::raw::c_int,
8057        ) -> *mut zend_string,
8058    >;
8059}
8060extern "C" {
8061    pub fn zend_error(type_: ::std::os::raw::c_int, format: *const ::std::os::raw::c_char, ...);
8062}
8063extern "C" {
8064    pub fn zend_throw_error(
8065        exception_ce: *mut zend_class_entry,
8066        format: *const ::std::os::raw::c_char,
8067        ...
8068    );
8069}
8070extern "C" {
8071    pub fn zend_type_error(format: *const ::std::os::raw::c_char, ...);
8072}
8073extern "C" {
8074    pub fn zend_internal_type_error(
8075        throw_exception: zend_bool,
8076        format: *const ::std::os::raw::c_char,
8077        ...
8078    );
8079}
8080extern "C" {
8081    pub fn zend_internal_argument_count_error(
8082        throw_exception: zend_bool,
8083        format: *const ::std::os::raw::c_char,
8084        ...
8085    );
8086}
8087extern "C" {
8088    pub fn zenderror(error: *const ::std::os::raw::c_char);
8089}
8090extern "C" {
8091    pub static mut zend_standard_class_def: *mut zend_class_entry;
8092}
8093extern "C" {
8094    pub static mut zend_uv: zend_utility_values;
8095}
8096extern "C" {
8097    pub static mut zend_dtrace_enabled: zend_bool;
8098}
8099extern "C" {
8100    pub fn zend_message_dispatcher(message: zend_long, data: *const ::std::os::raw::c_void);
8101}
8102extern "C" {
8103    pub fn zend_get_configuration_directive(name: *mut zend_string) -> *mut zval;
8104}
8105pub const zend_error_handling_t_EH_NORMAL: zend_error_handling_t = 0;
8106pub const zend_error_handling_t_EH_SUPPRESS: zend_error_handling_t = 1;
8107pub const zend_error_handling_t_EH_THROW: zend_error_handling_t = 2;
8108pub type zend_error_handling_t = ::std::os::raw::c_uint;
8109#[repr(C)]
8110#[derive(Copy, Clone)]
8111pub struct zend_error_handling {
8112    pub handling: zend_error_handling_t,
8113    pub exception: *mut zend_class_entry,
8114    pub user_handler: zval,
8115}
8116#[test]
8117fn bindgen_test_layout_zend_error_handling() {
8118    assert_eq!(
8119        ::std::mem::size_of::<zend_error_handling>(),
8120        32usize,
8121        concat!("Size of: ", stringify!(zend_error_handling))
8122    );
8123    assert_eq!(
8124        ::std::mem::align_of::<zend_error_handling>(),
8125        8usize,
8126        concat!("Alignment of ", stringify!(zend_error_handling))
8127    );
8128    assert_eq!(
8129        unsafe { &(*(::std::ptr::null::<zend_error_handling>())).handling as *const _ as usize },
8130        0usize,
8131        concat!(
8132            "Offset of field: ",
8133            stringify!(zend_error_handling),
8134            "::",
8135            stringify!(handling)
8136        )
8137    );
8138    assert_eq!(
8139        unsafe { &(*(::std::ptr::null::<zend_error_handling>())).exception as *const _ as usize },
8140        8usize,
8141        concat!(
8142            "Offset of field: ",
8143            stringify!(zend_error_handling),
8144            "::",
8145            stringify!(exception)
8146        )
8147    );
8148    assert_eq!(
8149        unsafe {
8150            &(*(::std::ptr::null::<zend_error_handling>())).user_handler as *const _ as usize
8151        },
8152        16usize,
8153        concat!(
8154            "Offset of field: ",
8155            stringify!(zend_error_handling),
8156            "::",
8157            stringify!(user_handler)
8158        )
8159    );
8160}
8161extern "C" {
8162    pub fn zend_save_error_handling(current: *mut zend_error_handling);
8163}
8164extern "C" {
8165    pub fn zend_replace_error_handling(
8166        error_handling: zend_error_handling_t,
8167        exception_class: *mut zend_class_entry,
8168        current: *mut zend_error_handling,
8169    );
8170}
8171extern "C" {
8172    pub fn zend_restore_error_handling(saved: *mut zend_error_handling);
8173}
8174pub type zend_object_read_property_t = ::std::option::Option<
8175    unsafe extern "C" fn(
8176        object: *mut zval,
8177        member: *mut zval,
8178        type_: ::std::os::raw::c_int,
8179        cache_slot: *mut *mut ::std::os::raw::c_void,
8180        rv: *mut zval,
8181    ) -> *mut zval,
8182>;
8183pub type zend_object_read_dimension_t = ::std::option::Option<
8184    unsafe extern "C" fn(
8185        object: *mut zval,
8186        offset: *mut zval,
8187        type_: ::std::os::raw::c_int,
8188        rv: *mut zval,
8189    ) -> *mut zval,
8190>;
8191pub type zend_object_write_property_t = ::std::option::Option<
8192    unsafe extern "C" fn(
8193        object: *mut zval,
8194        member: *mut zval,
8195        value: *mut zval,
8196        cache_slot: *mut *mut ::std::os::raw::c_void,
8197    ),
8198>;
8199pub type zend_object_write_dimension_t = ::std::option::Option<
8200    unsafe extern "C" fn(object: *mut zval, offset: *mut zval, value: *mut zval),
8201>;
8202pub type zend_object_get_property_ptr_ptr_t = ::std::option::Option<
8203    unsafe extern "C" fn(
8204        object: *mut zval,
8205        member: *mut zval,
8206        type_: ::std::os::raw::c_int,
8207        cache_slot: *mut *mut ::std::os::raw::c_void,
8208    ) -> *mut zval,
8209>;
8210pub type zend_object_set_t =
8211    ::std::option::Option<unsafe extern "C" fn(object: *mut zval, value: *mut zval)>;
8212pub type zend_object_get_t =
8213    ::std::option::Option<unsafe extern "C" fn(object: *mut zval, rv: *mut zval) -> *mut zval>;
8214pub type zend_object_has_property_t = ::std::option::Option<
8215    unsafe extern "C" fn(
8216        object: *mut zval,
8217        member: *mut zval,
8218        has_set_exists: ::std::os::raw::c_int,
8219        cache_slot: *mut *mut ::std::os::raw::c_void,
8220    ) -> ::std::os::raw::c_int,
8221>;
8222pub type zend_object_has_dimension_t = ::std::option::Option<
8223    unsafe extern "C" fn(
8224        object: *mut zval,
8225        member: *mut zval,
8226        check_empty: ::std::os::raw::c_int,
8227    ) -> ::std::os::raw::c_int,
8228>;
8229pub type zend_object_unset_property_t = ::std::option::Option<
8230    unsafe extern "C" fn(
8231        object: *mut zval,
8232        member: *mut zval,
8233        cache_slot: *mut *mut ::std::os::raw::c_void,
8234    ),
8235>;
8236pub type zend_object_unset_dimension_t =
8237    ::std::option::Option<unsafe extern "C" fn(object: *mut zval, offset: *mut zval)>;
8238pub type zend_object_get_properties_t =
8239    ::std::option::Option<unsafe extern "C" fn(object: *mut zval) -> *mut HashTable>;
8240pub type zend_object_get_debug_info_t = ::std::option::Option<
8241    unsafe extern "C" fn(object: *mut zval, is_temp: *mut ::std::os::raw::c_int) -> *mut HashTable,
8242>;
8243pub type zend_object_call_method_t = ::std::option::Option<
8244    unsafe extern "C" fn(
8245        method: *mut zend_string,
8246        object: *mut zend_object,
8247        execute_data: *mut zend_execute_data,
8248        return_value: *mut zval,
8249    ) -> ::std::os::raw::c_int,
8250>;
8251pub type zend_object_get_method_t = ::std::option::Option<
8252    unsafe extern "C" fn(
8253        object: *mut *mut zend_object,
8254        method: *mut zend_string,
8255        key: *const zval,
8256    ) -> *mut _zend_function,
8257>;
8258pub type zend_object_get_constructor_t =
8259    ::std::option::Option<unsafe extern "C" fn(object: *mut zend_object) -> *mut _zend_function>;
8260pub type zend_object_dtor_obj_t =
8261    ::std::option::Option<unsafe extern "C" fn(object: *mut zend_object)>;
8262pub type zend_object_free_obj_t =
8263    ::std::option::Option<unsafe extern "C" fn(object: *mut zend_object)>;
8264pub type zend_object_clone_obj_t =
8265    ::std::option::Option<unsafe extern "C" fn(object: *mut zval) -> *mut zend_object>;
8266pub type zend_object_get_class_name_t =
8267    ::std::option::Option<unsafe extern "C" fn(object: *const zend_object) -> *mut zend_string>;
8268pub type zend_object_compare_t = ::std::option::Option<
8269    unsafe extern "C" fn(object1: *mut zval, object2: *mut zval) -> ::std::os::raw::c_int,
8270>;
8271pub type zend_object_compare_zvals_t = ::std::option::Option<
8272    unsafe extern "C" fn(resul: *mut zval, op1: *mut zval, op2: *mut zval) -> ::std::os::raw::c_int,
8273>;
8274pub type zend_object_cast_t = ::std::option::Option<
8275    unsafe extern "C" fn(
8276        readobj: *mut zval,
8277        retval: *mut zval,
8278        type_: ::std::os::raw::c_int,
8279    ) -> ::std::os::raw::c_int,
8280>;
8281pub type zend_object_count_elements_t = ::std::option::Option<
8282    unsafe extern "C" fn(object: *mut zval, count: *mut zend_long) -> ::std::os::raw::c_int,
8283>;
8284pub type zend_object_get_closure_t = ::std::option::Option<
8285    unsafe extern "C" fn(
8286        obj: *mut zval,
8287        ce_ptr: *mut *mut zend_class_entry,
8288        fptr_ptr: *mut *mut _zend_function,
8289        obj_ptr: *mut *mut zend_object,
8290    ) -> ::std::os::raw::c_int,
8291>;
8292pub type zend_object_get_gc_t = ::std::option::Option<
8293    unsafe extern "C" fn(
8294        object: *mut zval,
8295        table: *mut *mut zval,
8296        n: *mut ::std::os::raw::c_int,
8297    ) -> *mut HashTable,
8298>;
8299pub type zend_object_do_operation_t = ::std::option::Option<
8300    unsafe extern "C" fn(
8301        opcode: zend_uchar,
8302        result: *mut zval,
8303        op1: *mut zval,
8304        op2: *mut zval,
8305    ) -> ::std::os::raw::c_int,
8306>;
8307#[repr(C)]
8308#[derive(Debug, Copy, Clone)]
8309pub struct _zend_object_handlers {
8310    pub offset: ::std::os::raw::c_int,
8311    pub free_obj: zend_object_free_obj_t,
8312    pub dtor_obj: zend_object_dtor_obj_t,
8313    pub clone_obj: zend_object_clone_obj_t,
8314    pub read_property: zend_object_read_property_t,
8315    pub write_property: zend_object_write_property_t,
8316    pub read_dimension: zend_object_read_dimension_t,
8317    pub write_dimension: zend_object_write_dimension_t,
8318    pub get_property_ptr_ptr: zend_object_get_property_ptr_ptr_t,
8319    pub get: zend_object_get_t,
8320    pub set: zend_object_set_t,
8321    pub has_property: zend_object_has_property_t,
8322    pub unset_property: zend_object_unset_property_t,
8323    pub has_dimension: zend_object_has_dimension_t,
8324    pub unset_dimension: zend_object_unset_dimension_t,
8325    pub get_properties: zend_object_get_properties_t,
8326    pub get_method: zend_object_get_method_t,
8327    pub call_method: zend_object_call_method_t,
8328    pub get_constructor: zend_object_get_constructor_t,
8329    pub get_class_name: zend_object_get_class_name_t,
8330    pub compare_objects: zend_object_compare_t,
8331    pub cast_object: zend_object_cast_t,
8332    pub count_elements: zend_object_count_elements_t,
8333    pub get_debug_info: zend_object_get_debug_info_t,
8334    pub get_closure: zend_object_get_closure_t,
8335    pub get_gc: zend_object_get_gc_t,
8336    pub do_operation: zend_object_do_operation_t,
8337    pub compare: zend_object_compare_zvals_t,
8338}
8339#[test]
8340fn bindgen_test_layout__zend_object_handlers() {
8341    assert_eq!(
8342        ::std::mem::size_of::<_zend_object_handlers>(),
8343        224usize,
8344        concat!("Size of: ", stringify!(_zend_object_handlers))
8345    );
8346    assert_eq!(
8347        ::std::mem::align_of::<_zend_object_handlers>(),
8348        8usize,
8349        concat!("Alignment of ", stringify!(_zend_object_handlers))
8350    );
8351    assert_eq!(
8352        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).offset as *const _ as usize },
8353        0usize,
8354        concat!(
8355            "Offset of field: ",
8356            stringify!(_zend_object_handlers),
8357            "::",
8358            stringify!(offset)
8359        )
8360    );
8361    assert_eq!(
8362        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).free_obj as *const _ as usize },
8363        8usize,
8364        concat!(
8365            "Offset of field: ",
8366            stringify!(_zend_object_handlers),
8367            "::",
8368            stringify!(free_obj)
8369        )
8370    );
8371    assert_eq!(
8372        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).dtor_obj as *const _ as usize },
8373        16usize,
8374        concat!(
8375            "Offset of field: ",
8376            stringify!(_zend_object_handlers),
8377            "::",
8378            stringify!(dtor_obj)
8379        )
8380    );
8381    assert_eq!(
8382        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).clone_obj as *const _ as usize },
8383        24usize,
8384        concat!(
8385            "Offset of field: ",
8386            stringify!(_zend_object_handlers),
8387            "::",
8388            stringify!(clone_obj)
8389        )
8390    );
8391    assert_eq!(
8392        unsafe {
8393            &(*(::std::ptr::null::<_zend_object_handlers>())).read_property as *const _ as usize
8394        },
8395        32usize,
8396        concat!(
8397            "Offset of field: ",
8398            stringify!(_zend_object_handlers),
8399            "::",
8400            stringify!(read_property)
8401        )
8402    );
8403    assert_eq!(
8404        unsafe {
8405            &(*(::std::ptr::null::<_zend_object_handlers>())).write_property as *const _ as usize
8406        },
8407        40usize,
8408        concat!(
8409            "Offset of field: ",
8410            stringify!(_zend_object_handlers),
8411            "::",
8412            stringify!(write_property)
8413        )
8414    );
8415    assert_eq!(
8416        unsafe {
8417            &(*(::std::ptr::null::<_zend_object_handlers>())).read_dimension as *const _ as usize
8418        },
8419        48usize,
8420        concat!(
8421            "Offset of field: ",
8422            stringify!(_zend_object_handlers),
8423            "::",
8424            stringify!(read_dimension)
8425        )
8426    );
8427    assert_eq!(
8428        unsafe {
8429            &(*(::std::ptr::null::<_zend_object_handlers>())).write_dimension as *const _ as usize
8430        },
8431        56usize,
8432        concat!(
8433            "Offset of field: ",
8434            stringify!(_zend_object_handlers),
8435            "::",
8436            stringify!(write_dimension)
8437        )
8438    );
8439    assert_eq!(
8440        unsafe {
8441            &(*(::std::ptr::null::<_zend_object_handlers>())).get_property_ptr_ptr as *const _
8442                as usize
8443        },
8444        64usize,
8445        concat!(
8446            "Offset of field: ",
8447            stringify!(_zend_object_handlers),
8448            "::",
8449            stringify!(get_property_ptr_ptr)
8450        )
8451    );
8452    assert_eq!(
8453        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).get as *const _ as usize },
8454        72usize,
8455        concat!(
8456            "Offset of field: ",
8457            stringify!(_zend_object_handlers),
8458            "::",
8459            stringify!(get)
8460        )
8461    );
8462    assert_eq!(
8463        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).set as *const _ as usize },
8464        80usize,
8465        concat!(
8466            "Offset of field: ",
8467            stringify!(_zend_object_handlers),
8468            "::",
8469            stringify!(set)
8470        )
8471    );
8472    assert_eq!(
8473        unsafe {
8474            &(*(::std::ptr::null::<_zend_object_handlers>())).has_property as *const _ as usize
8475        },
8476        88usize,
8477        concat!(
8478            "Offset of field: ",
8479            stringify!(_zend_object_handlers),
8480            "::",
8481            stringify!(has_property)
8482        )
8483    );
8484    assert_eq!(
8485        unsafe {
8486            &(*(::std::ptr::null::<_zend_object_handlers>())).unset_property as *const _ as usize
8487        },
8488        96usize,
8489        concat!(
8490            "Offset of field: ",
8491            stringify!(_zend_object_handlers),
8492            "::",
8493            stringify!(unset_property)
8494        )
8495    );
8496    assert_eq!(
8497        unsafe {
8498            &(*(::std::ptr::null::<_zend_object_handlers>())).has_dimension as *const _ as usize
8499        },
8500        104usize,
8501        concat!(
8502            "Offset of field: ",
8503            stringify!(_zend_object_handlers),
8504            "::",
8505            stringify!(has_dimension)
8506        )
8507    );
8508    assert_eq!(
8509        unsafe {
8510            &(*(::std::ptr::null::<_zend_object_handlers>())).unset_dimension as *const _ as usize
8511        },
8512        112usize,
8513        concat!(
8514            "Offset of field: ",
8515            stringify!(_zend_object_handlers),
8516            "::",
8517            stringify!(unset_dimension)
8518        )
8519    );
8520    assert_eq!(
8521        unsafe {
8522            &(*(::std::ptr::null::<_zend_object_handlers>())).get_properties as *const _ as usize
8523        },
8524        120usize,
8525        concat!(
8526            "Offset of field: ",
8527            stringify!(_zend_object_handlers),
8528            "::",
8529            stringify!(get_properties)
8530        )
8531    );
8532    assert_eq!(
8533        unsafe {
8534            &(*(::std::ptr::null::<_zend_object_handlers>())).get_method as *const _ as usize
8535        },
8536        128usize,
8537        concat!(
8538            "Offset of field: ",
8539            stringify!(_zend_object_handlers),
8540            "::",
8541            stringify!(get_method)
8542        )
8543    );
8544    assert_eq!(
8545        unsafe {
8546            &(*(::std::ptr::null::<_zend_object_handlers>())).call_method as *const _ as usize
8547        },
8548        136usize,
8549        concat!(
8550            "Offset of field: ",
8551            stringify!(_zend_object_handlers),
8552            "::",
8553            stringify!(call_method)
8554        )
8555    );
8556    assert_eq!(
8557        unsafe {
8558            &(*(::std::ptr::null::<_zend_object_handlers>())).get_constructor as *const _ as usize
8559        },
8560        144usize,
8561        concat!(
8562            "Offset of field: ",
8563            stringify!(_zend_object_handlers),
8564            "::",
8565            stringify!(get_constructor)
8566        )
8567    );
8568    assert_eq!(
8569        unsafe {
8570            &(*(::std::ptr::null::<_zend_object_handlers>())).get_class_name as *const _ as usize
8571        },
8572        152usize,
8573        concat!(
8574            "Offset of field: ",
8575            stringify!(_zend_object_handlers),
8576            "::",
8577            stringify!(get_class_name)
8578        )
8579    );
8580    assert_eq!(
8581        unsafe {
8582            &(*(::std::ptr::null::<_zend_object_handlers>())).compare_objects as *const _ as usize
8583        },
8584        160usize,
8585        concat!(
8586            "Offset of field: ",
8587            stringify!(_zend_object_handlers),
8588            "::",
8589            stringify!(compare_objects)
8590        )
8591    );
8592    assert_eq!(
8593        unsafe {
8594            &(*(::std::ptr::null::<_zend_object_handlers>())).cast_object as *const _ as usize
8595        },
8596        168usize,
8597        concat!(
8598            "Offset of field: ",
8599            stringify!(_zend_object_handlers),
8600            "::",
8601            stringify!(cast_object)
8602        )
8603    );
8604    assert_eq!(
8605        unsafe {
8606            &(*(::std::ptr::null::<_zend_object_handlers>())).count_elements as *const _ as usize
8607        },
8608        176usize,
8609        concat!(
8610            "Offset of field: ",
8611            stringify!(_zend_object_handlers),
8612            "::",
8613            stringify!(count_elements)
8614        )
8615    );
8616    assert_eq!(
8617        unsafe {
8618            &(*(::std::ptr::null::<_zend_object_handlers>())).get_debug_info as *const _ as usize
8619        },
8620        184usize,
8621        concat!(
8622            "Offset of field: ",
8623            stringify!(_zend_object_handlers),
8624            "::",
8625            stringify!(get_debug_info)
8626        )
8627    );
8628    assert_eq!(
8629        unsafe {
8630            &(*(::std::ptr::null::<_zend_object_handlers>())).get_closure as *const _ as usize
8631        },
8632        192usize,
8633        concat!(
8634            "Offset of field: ",
8635            stringify!(_zend_object_handlers),
8636            "::",
8637            stringify!(get_closure)
8638        )
8639    );
8640    assert_eq!(
8641        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).get_gc as *const _ as usize },
8642        200usize,
8643        concat!(
8644            "Offset of field: ",
8645            stringify!(_zend_object_handlers),
8646            "::",
8647            stringify!(get_gc)
8648        )
8649    );
8650    assert_eq!(
8651        unsafe {
8652            &(*(::std::ptr::null::<_zend_object_handlers>())).do_operation as *const _ as usize
8653        },
8654        208usize,
8655        concat!(
8656            "Offset of field: ",
8657            stringify!(_zend_object_handlers),
8658            "::",
8659            stringify!(do_operation)
8660        )
8661    );
8662    assert_eq!(
8663        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).compare as *const _ as usize },
8664        216usize,
8665        concat!(
8666            "Offset of field: ",
8667            stringify!(_zend_object_handlers),
8668            "::",
8669            stringify!(compare)
8670        )
8671    );
8672}
8673extern "C" {
8674    pub static mut std_object_handlers: zend_object_handlers;
8675}
8676extern "C" {
8677    pub fn zend_std_get_static_method(
8678        ce: *mut zend_class_entry,
8679        function_name_strval: *mut zend_string,
8680        key: *const zval,
8681    ) -> *mut _zend_function;
8682}
8683extern "C" {
8684    pub fn zend_std_get_static_property(
8685        ce: *mut zend_class_entry,
8686        property_name: *mut zend_string,
8687        silent: zend_bool,
8688    ) -> *mut zval;
8689}
8690extern "C" {
8691    pub fn zend_std_unset_static_property(
8692        ce: *mut zend_class_entry,
8693        property_name: *mut zend_string,
8694    ) -> zend_bool;
8695}
8696extern "C" {
8697    pub fn zend_std_get_constructor(object: *mut zend_object) -> *mut _zend_function;
8698}
8699extern "C" {
8700    pub fn zend_get_property_info(
8701        ce: *mut zend_class_entry,
8702        member: *mut zend_string,
8703        silent: ::std::os::raw::c_int,
8704    ) -> *mut _zend_property_info;
8705}
8706extern "C" {
8707    pub fn zend_std_get_properties(object: *mut zval) -> *mut HashTable;
8708}
8709extern "C" {
8710    pub fn zend_std_get_debug_info(
8711        object: *mut zval,
8712        is_temp: *mut ::std::os::raw::c_int,
8713    ) -> *mut HashTable;
8714}
8715extern "C" {
8716    pub fn zend_std_cast_object_tostring(
8717        readobj: *mut zval,
8718        writeobj: *mut zval,
8719        type_: ::std::os::raw::c_int,
8720    ) -> ::std::os::raw::c_int;
8721}
8722extern "C" {
8723    pub fn zend_std_write_property(
8724        object: *mut zval,
8725        member: *mut zval,
8726        value: *mut zval,
8727        cache_slot: *mut *mut ::std::os::raw::c_void,
8728    );
8729}
8730extern "C" {
8731    pub fn zend_check_private(
8732        fbc: *mut _zend_function,
8733        ce: *mut zend_class_entry,
8734        function_name: *mut zend_string,
8735    ) -> ::std::os::raw::c_int;
8736}
8737extern "C" {
8738    pub fn zend_check_protected(
8739        ce: *mut zend_class_entry,
8740        scope: *mut zend_class_entry,
8741    ) -> ::std::os::raw::c_int;
8742}
8743extern "C" {
8744    pub fn zend_check_property_access(
8745        zobj: *mut zend_object,
8746        prop_info_name: *mut zend_string,
8747    ) -> ::std::os::raw::c_int;
8748}
8749extern "C" {
8750    pub fn zend_get_call_trampoline_func(
8751        ce: *mut zend_class_entry,
8752        method_name: *mut zend_string,
8753        is_static: ::std::os::raw::c_int,
8754    ) -> *mut zend_function;
8755}
8756extern "C" {
8757    pub fn zend_get_property_guard(zobj: *mut zend_object, member: *mut zend_string) -> *mut u32;
8758}
8759extern "C" {
8760    pub fn zend_freedtoa(s: *mut ::std::os::raw::c_char);
8761}
8762extern "C" {
8763    pub fn zend_dtoa(
8764        _d: f64,
8765        mode: ::std::os::raw::c_int,
8766        ndigits: ::std::os::raw::c_int,
8767        decpt: *mut ::std::os::raw::c_int,
8768        sign: *mut ::std::os::raw::c_int,
8769        rve: *mut *mut ::std::os::raw::c_char,
8770    ) -> *mut ::std::os::raw::c_char;
8771}
8772extern "C" {
8773    pub fn zend_strtod(
8774        s00: *const ::std::os::raw::c_char,
8775        se: *mut *const ::std::os::raw::c_char,
8776    ) -> f64;
8777}
8778extern "C" {
8779    pub fn zend_hex_strtod(
8780        str_: *const ::std::os::raw::c_char,
8781        endptr: *mut *const ::std::os::raw::c_char,
8782    ) -> f64;
8783}
8784extern "C" {
8785    pub fn zend_oct_strtod(
8786        str_: *const ::std::os::raw::c_char,
8787        endptr: *mut *const ::std::os::raw::c_char,
8788    ) -> f64;
8789}
8790extern "C" {
8791    pub fn zend_bin_strtod(
8792        str_: *const ::std::os::raw::c_char,
8793        endptr: *mut *const ::std::os::raw::c_char,
8794    ) -> f64;
8795}
8796extern "C" {
8797    pub fn zend_startup_strtod() -> ::std::os::raw::c_int;
8798}
8799extern "C" {
8800    pub fn zend_shutdown_strtod() -> ::std::os::raw::c_int;
8801}
8802extern "C" {
8803    pub fn zend_is_identical(op1: *mut zval, op2: *mut zval) -> ::std::os::raw::c_int;
8804}
8805extern "C" {
8806    pub fn zend_memnstr_ex(
8807        haystack: *const ::std::os::raw::c_char,
8808        needle: *const ::std::os::raw::c_char,
8809        needle_len: size_t,
8810        end: *const ::std::os::raw::c_char,
8811    ) -> *const ::std::os::raw::c_char;
8812}
8813extern "C" {
8814    pub fn zend_memnrstr_ex(
8815        haystack: *const ::std::os::raw::c_char,
8816        needle: *const ::std::os::raw::c_char,
8817        needle_len: size_t,
8818        end: *const ::std::os::raw::c_char,
8819    ) -> *const ::std::os::raw::c_char;
8820}
8821extern "C" {
8822    pub fn zend_dval_to_lval_slow(d: f64) -> zend_long;
8823}
8824extern "C" {
8825    pub fn zend_is_true(op: *mut zval) -> ::std::os::raw::c_int;
8826}
8827extern "C" {
8828    pub fn zend_object_is_true(op: *mut zval) -> ::std::os::raw::c_int;
8829}
8830extern "C" {
8831    pub fn zend_str_tolower(str_: *mut ::std::os::raw::c_char, length: size_t);
8832}
8833extern "C" {
8834    pub fn zend_str_tolower_copy(
8835        dest: *mut ::std::os::raw::c_char,
8836        source: *const ::std::os::raw::c_char,
8837        length: size_t,
8838    ) -> *mut ::std::os::raw::c_char;
8839}
8840extern "C" {
8841    pub fn zend_str_tolower_dup(
8842        source: *const ::std::os::raw::c_char,
8843        length: size_t,
8844    ) -> *mut ::std::os::raw::c_char;
8845}
8846extern "C" {
8847    pub fn zend_str_tolower_dup_ex(
8848        source: *const ::std::os::raw::c_char,
8849        length: size_t,
8850    ) -> *mut ::std::os::raw::c_char;
8851}
8852extern "C" {
8853    pub fn zend_string_tolower(str_: *mut zend_string) -> *mut zend_string;
8854}
8855extern "C" {
8856    pub fn zend_binary_zval_strcmp(s1: *mut zval, s2: *mut zval) -> ::std::os::raw::c_int;
8857}
8858extern "C" {
8859    pub fn zend_binary_zval_strncmp(
8860        s1: *mut zval,
8861        s2: *mut zval,
8862        s3: *mut zval,
8863    ) -> ::std::os::raw::c_int;
8864}
8865extern "C" {
8866    pub fn zend_binary_zval_strcasecmp(s1: *mut zval, s2: *mut zval) -> ::std::os::raw::c_int;
8867}
8868extern "C" {
8869    pub fn zend_binary_zval_strncasecmp(
8870        s1: *mut zval,
8871        s2: *mut zval,
8872        s3: *mut zval,
8873    ) -> ::std::os::raw::c_int;
8874}
8875extern "C" {
8876    pub fn zend_binary_strcmp(
8877        s1: *const ::std::os::raw::c_char,
8878        len1: size_t,
8879        s2: *const ::std::os::raw::c_char,
8880        len2: size_t,
8881    ) -> ::std::os::raw::c_int;
8882}
8883extern "C" {
8884    pub fn zend_binary_strncmp(
8885        s1: *const ::std::os::raw::c_char,
8886        len1: size_t,
8887        s2: *const ::std::os::raw::c_char,
8888        len2: size_t,
8889        length: size_t,
8890    ) -> ::std::os::raw::c_int;
8891}
8892extern "C" {
8893    pub fn zend_binary_strcasecmp(
8894        s1: *const ::std::os::raw::c_char,
8895        len1: size_t,
8896        s2: *const ::std::os::raw::c_char,
8897        len2: size_t,
8898    ) -> ::std::os::raw::c_int;
8899}
8900extern "C" {
8901    pub fn zend_binary_strncasecmp(
8902        s1: *const ::std::os::raw::c_char,
8903        len1: size_t,
8904        s2: *const ::std::os::raw::c_char,
8905        len2: size_t,
8906        length: size_t,
8907    ) -> ::std::os::raw::c_int;
8908}
8909extern "C" {
8910    pub fn zend_binary_strcasecmp_l(
8911        s1: *const ::std::os::raw::c_char,
8912        len1: size_t,
8913        s2: *const ::std::os::raw::c_char,
8914        len2: size_t,
8915    ) -> ::std::os::raw::c_int;
8916}
8917extern "C" {
8918    pub fn zend_binary_strncasecmp_l(
8919        s1: *const ::std::os::raw::c_char,
8920        len1: size_t,
8921        s2: *const ::std::os::raw::c_char,
8922        len2: size_t,
8923        length: size_t,
8924    ) -> ::std::os::raw::c_int;
8925}
8926extern "C" {
8927    pub fn zendi_smart_strcmp(s1: *mut zend_string, s2: *mut zend_string) -> zend_long;
8928}
8929extern "C" {
8930    pub fn zend_compare_symbol_tables(
8931        ht1: *mut HashTable,
8932        ht2: *mut HashTable,
8933    ) -> ::std::os::raw::c_int;
8934}
8935extern "C" {
8936    pub fn zend_compare_arrays(a1: *mut zval, a2: *mut zval) -> ::std::os::raw::c_int;
8937}
8938extern "C" {
8939    pub fn zend_compare_objects(o1: *mut zval, o2: *mut zval) -> ::std::os::raw::c_int;
8940}
8941extern "C" {
8942    pub fn zend_atoi(
8943        str_: *const ::std::os::raw::c_char,
8944        str_len: ::std::os::raw::c_int,
8945    ) -> ::std::os::raw::c_int;
8946}
8947extern "C" {
8948    pub fn zend_atol(
8949        str_: *const ::std::os::raw::c_char,
8950        str_len: ::std::os::raw::c_int,
8951    ) -> zend_long;
8952}
8953extern "C" {
8954    pub fn zend_locale_sprintf_double(op: *mut zval);
8955}
8956extern "C" {
8957    pub fn zend_long_to_str(num: zend_long) -> *mut zend_string;
8958}
8959extern "C" {
8960    pub fn zend_qsort(
8961        base: *mut ::std::os::raw::c_void,
8962        nmemb: size_t,
8963        siz: size_t,
8964        cmp: compare_func_t,
8965        swp: swap_func_t,
8966    );
8967}
8968extern "C" {
8969    pub fn zend_sort(
8970        base: *mut ::std::os::raw::c_void,
8971        nmemb: size_t,
8972        siz: size_t,
8973        cmp: compare_func_t,
8974        swp: swap_func_t,
8975    );
8976}
8977extern "C" {
8978    pub fn zend_insert_sort(
8979        base: *mut ::std::os::raw::c_void,
8980        nmemb: size_t,
8981        siz: size_t,
8982        cmp: compare_func_t,
8983        swp: swap_func_t,
8984    );
8985}
8986pub type zend_op_array = _zend_op_array;
8987pub type zend_op = _zend_op;
8988#[repr(C)]
8989#[derive(Copy, Clone)]
8990pub union _znode_op {
8991    pub constant: u32,
8992    pub var: u32,
8993    pub num: u32,
8994    pub opline_num: u32,
8995    pub jmp_offset: u32,
8996    _bindgen_union_align: u32,
8997}
8998#[test]
8999fn bindgen_test_layout__znode_op() {
9000    assert_eq!(
9001        ::std::mem::size_of::<_znode_op>(),
9002        4usize,
9003        concat!("Size of: ", stringify!(_znode_op))
9004    );
9005    assert_eq!(
9006        ::std::mem::align_of::<_znode_op>(),
9007        4usize,
9008        concat!("Alignment of ", stringify!(_znode_op))
9009    );
9010    assert_eq!(
9011        unsafe { &(*(::std::ptr::null::<_znode_op>())).constant as *const _ as usize },
9012        0usize,
9013        concat!(
9014            "Offset of field: ",
9015            stringify!(_znode_op),
9016            "::",
9017            stringify!(constant)
9018        )
9019    );
9020    assert_eq!(
9021        unsafe { &(*(::std::ptr::null::<_znode_op>())).var as *const _ as usize },
9022        0usize,
9023        concat!(
9024            "Offset of field: ",
9025            stringify!(_znode_op),
9026            "::",
9027            stringify!(var)
9028        )
9029    );
9030    assert_eq!(
9031        unsafe { &(*(::std::ptr::null::<_znode_op>())).num as *const _ as usize },
9032        0usize,
9033        concat!(
9034            "Offset of field: ",
9035            stringify!(_znode_op),
9036            "::",
9037            stringify!(num)
9038        )
9039    );
9040    assert_eq!(
9041        unsafe { &(*(::std::ptr::null::<_znode_op>())).opline_num as *const _ as usize },
9042        0usize,
9043        concat!(
9044            "Offset of field: ",
9045            stringify!(_znode_op),
9046            "::",
9047            stringify!(opline_num)
9048        )
9049    );
9050    assert_eq!(
9051        unsafe { &(*(::std::ptr::null::<_znode_op>())).jmp_offset as *const _ as usize },
9052        0usize,
9053        concat!(
9054            "Offset of field: ",
9055            stringify!(_znode_op),
9056            "::",
9057            stringify!(jmp_offset)
9058        )
9059    );
9060}
9061pub type znode_op = _znode_op;
9062#[repr(C)]
9063#[derive(Copy, Clone)]
9064pub struct _znode {
9065    pub op_type: zend_uchar,
9066    pub flag: zend_uchar,
9067    pub u: _znode__bindgen_ty_1,
9068}
9069#[repr(C)]
9070#[derive(Copy, Clone)]
9071pub union _znode__bindgen_ty_1 {
9072    pub op: znode_op,
9073    pub constant: zval,
9074    _bindgen_union_align: [u64; 2usize],
9075}
9076#[test]
9077fn bindgen_test_layout__znode__bindgen_ty_1() {
9078    assert_eq!(
9079        ::std::mem::size_of::<_znode__bindgen_ty_1>(),
9080        16usize,
9081        concat!("Size of: ", stringify!(_znode__bindgen_ty_1))
9082    );
9083    assert_eq!(
9084        ::std::mem::align_of::<_znode__bindgen_ty_1>(),
9085        8usize,
9086        concat!("Alignment of ", stringify!(_znode__bindgen_ty_1))
9087    );
9088    assert_eq!(
9089        unsafe { &(*(::std::ptr::null::<_znode__bindgen_ty_1>())).op as *const _ as usize },
9090        0usize,
9091        concat!(
9092            "Offset of field: ",
9093            stringify!(_znode__bindgen_ty_1),
9094            "::",
9095            stringify!(op)
9096        )
9097    );
9098    assert_eq!(
9099        unsafe { &(*(::std::ptr::null::<_znode__bindgen_ty_1>())).constant as *const _ as usize },
9100        0usize,
9101        concat!(
9102            "Offset of field: ",
9103            stringify!(_znode__bindgen_ty_1),
9104            "::",
9105            stringify!(constant)
9106        )
9107    );
9108}
9109#[test]
9110fn bindgen_test_layout__znode() {
9111    assert_eq!(
9112        ::std::mem::size_of::<_znode>(),
9113        24usize,
9114        concat!("Size of: ", stringify!(_znode))
9115    );
9116    assert_eq!(
9117        ::std::mem::align_of::<_znode>(),
9118        8usize,
9119        concat!("Alignment of ", stringify!(_znode))
9120    );
9121    assert_eq!(
9122        unsafe { &(*(::std::ptr::null::<_znode>())).op_type as *const _ as usize },
9123        0usize,
9124        concat!(
9125            "Offset of field: ",
9126            stringify!(_znode),
9127            "::",
9128            stringify!(op_type)
9129        )
9130    );
9131    assert_eq!(
9132        unsafe { &(*(::std::ptr::null::<_znode>())).flag as *const _ as usize },
9133        1usize,
9134        concat!(
9135            "Offset of field: ",
9136            stringify!(_znode),
9137            "::",
9138            stringify!(flag)
9139        )
9140    );
9141    assert_eq!(
9142        unsafe { &(*(::std::ptr::null::<_znode>())).u as *const _ as usize },
9143        8usize,
9144        concat!("Offset of field: ", stringify!(_znode), "::", stringify!(u))
9145    );
9146}
9147pub type znode = _znode;
9148#[repr(C)]
9149#[derive(Copy, Clone)]
9150pub struct _zend_ast_znode {
9151    pub kind: zend_ast_kind,
9152    pub attr: zend_ast_attr,
9153    pub lineno: u32,
9154    pub node: znode,
9155}
9156#[test]
9157fn bindgen_test_layout__zend_ast_znode() {
9158    assert_eq!(
9159        ::std::mem::size_of::<_zend_ast_znode>(),
9160        32usize,
9161        concat!("Size of: ", stringify!(_zend_ast_znode))
9162    );
9163    assert_eq!(
9164        ::std::mem::align_of::<_zend_ast_znode>(),
9165        8usize,
9166        concat!("Alignment of ", stringify!(_zend_ast_znode))
9167    );
9168    assert_eq!(
9169        unsafe { &(*(::std::ptr::null::<_zend_ast_znode>())).kind as *const _ as usize },
9170        0usize,
9171        concat!(
9172            "Offset of field: ",
9173            stringify!(_zend_ast_znode),
9174            "::",
9175            stringify!(kind)
9176        )
9177    );
9178    assert_eq!(
9179        unsafe { &(*(::std::ptr::null::<_zend_ast_znode>())).attr as *const _ as usize },
9180        2usize,
9181        concat!(
9182            "Offset of field: ",
9183            stringify!(_zend_ast_znode),
9184            "::",
9185            stringify!(attr)
9186        )
9187    );
9188    assert_eq!(
9189        unsafe { &(*(::std::ptr::null::<_zend_ast_znode>())).lineno as *const _ as usize },
9190        4usize,
9191        concat!(
9192            "Offset of field: ",
9193            stringify!(_zend_ast_znode),
9194            "::",
9195            stringify!(lineno)
9196        )
9197    );
9198    assert_eq!(
9199        unsafe { &(*(::std::ptr::null::<_zend_ast_znode>())).node as *const _ as usize },
9200        8usize,
9201        concat!(
9202            "Offset of field: ",
9203            stringify!(_zend_ast_znode),
9204            "::",
9205            stringify!(node)
9206        )
9207    );
9208}
9209pub type zend_ast_znode = _zend_ast_znode;
9210extern "C" {
9211    pub fn zend_ast_create_znode(node: *mut znode) -> *mut zend_ast;
9212}
9213#[repr(C)]
9214#[derive(Debug, Copy, Clone)]
9215pub struct _zend_declarables {
9216    pub ticks: zend_long,
9217}
9218#[test]
9219fn bindgen_test_layout__zend_declarables() {
9220    assert_eq!(
9221        ::std::mem::size_of::<_zend_declarables>(),
9222        8usize,
9223        concat!("Size of: ", stringify!(_zend_declarables))
9224    );
9225    assert_eq!(
9226        ::std::mem::align_of::<_zend_declarables>(),
9227        8usize,
9228        concat!("Alignment of ", stringify!(_zend_declarables))
9229    );
9230    assert_eq!(
9231        unsafe { &(*(::std::ptr::null::<_zend_declarables>())).ticks as *const _ as usize },
9232        0usize,
9233        concat!(
9234            "Offset of field: ",
9235            stringify!(_zend_declarables),
9236            "::",
9237            stringify!(ticks)
9238        )
9239    );
9240}
9241pub type zend_declarables = _zend_declarables;
9242#[repr(C)]
9243#[derive(Copy, Clone)]
9244pub struct _zend_file_context {
9245    pub declarables: zend_declarables,
9246    pub implementing_class: znode,
9247    pub current_namespace: *mut zend_string,
9248    pub in_namespace: zend_bool,
9249    pub has_bracketed_namespaces: zend_bool,
9250    pub imports: *mut HashTable,
9251    pub imports_function: *mut HashTable,
9252    pub imports_const: *mut HashTable,
9253    pub seen_symbols: HashTable,
9254}
9255#[test]
9256fn bindgen_test_layout__zend_file_context() {
9257    assert_eq!(
9258        ::std::mem::size_of::<_zend_file_context>(),
9259        128usize,
9260        concat!("Size of: ", stringify!(_zend_file_context))
9261    );
9262    assert_eq!(
9263        ::std::mem::align_of::<_zend_file_context>(),
9264        8usize,
9265        concat!("Alignment of ", stringify!(_zend_file_context))
9266    );
9267    assert_eq!(
9268        unsafe { &(*(::std::ptr::null::<_zend_file_context>())).declarables as *const _ as usize },
9269        0usize,
9270        concat!(
9271            "Offset of field: ",
9272            stringify!(_zend_file_context),
9273            "::",
9274            stringify!(declarables)
9275        )
9276    );
9277    assert_eq!(
9278        unsafe {
9279            &(*(::std::ptr::null::<_zend_file_context>())).implementing_class as *const _ as usize
9280        },
9281        8usize,
9282        concat!(
9283            "Offset of field: ",
9284            stringify!(_zend_file_context),
9285            "::",
9286            stringify!(implementing_class)
9287        )
9288    );
9289    assert_eq!(
9290        unsafe {
9291            &(*(::std::ptr::null::<_zend_file_context>())).current_namespace as *const _ as usize
9292        },
9293        32usize,
9294        concat!(
9295            "Offset of field: ",
9296            stringify!(_zend_file_context),
9297            "::",
9298            stringify!(current_namespace)
9299        )
9300    );
9301    assert_eq!(
9302        unsafe { &(*(::std::ptr::null::<_zend_file_context>())).in_namespace as *const _ as usize },
9303        40usize,
9304        concat!(
9305            "Offset of field: ",
9306            stringify!(_zend_file_context),
9307            "::",
9308            stringify!(in_namespace)
9309        )
9310    );
9311    assert_eq!(
9312        unsafe {
9313            &(*(::std::ptr::null::<_zend_file_context>())).has_bracketed_namespaces as *const _
9314                as usize
9315        },
9316        41usize,
9317        concat!(
9318            "Offset of field: ",
9319            stringify!(_zend_file_context),
9320            "::",
9321            stringify!(has_bracketed_namespaces)
9322        )
9323    );
9324    assert_eq!(
9325        unsafe { &(*(::std::ptr::null::<_zend_file_context>())).imports as *const _ as usize },
9326        48usize,
9327        concat!(
9328            "Offset of field: ",
9329            stringify!(_zend_file_context),
9330            "::",
9331            stringify!(imports)
9332        )
9333    );
9334    assert_eq!(
9335        unsafe {
9336            &(*(::std::ptr::null::<_zend_file_context>())).imports_function as *const _ as usize
9337        },
9338        56usize,
9339        concat!(
9340            "Offset of field: ",
9341            stringify!(_zend_file_context),
9342            "::",
9343            stringify!(imports_function)
9344        )
9345    );
9346    assert_eq!(
9347        unsafe {
9348            &(*(::std::ptr::null::<_zend_file_context>())).imports_const as *const _ as usize
9349        },
9350        64usize,
9351        concat!(
9352            "Offset of field: ",
9353            stringify!(_zend_file_context),
9354            "::",
9355            stringify!(imports_const)
9356        )
9357    );
9358    assert_eq!(
9359        unsafe { &(*(::std::ptr::null::<_zend_file_context>())).seen_symbols as *const _ as usize },
9360        72usize,
9361        concat!(
9362            "Offset of field: ",
9363            stringify!(_zend_file_context),
9364            "::",
9365            stringify!(seen_symbols)
9366        )
9367    );
9368}
9369pub type zend_file_context = _zend_file_context;
9370#[repr(C)]
9371#[derive(Copy, Clone)]
9372pub union _zend_parser_stack_elem {
9373    pub ast: *mut zend_ast,
9374    pub str_: *mut zend_string,
9375    pub num: zend_ulong,
9376    _bindgen_union_align: u64,
9377}
9378#[test]
9379fn bindgen_test_layout__zend_parser_stack_elem() {
9380    assert_eq!(
9381        ::std::mem::size_of::<_zend_parser_stack_elem>(),
9382        8usize,
9383        concat!("Size of: ", stringify!(_zend_parser_stack_elem))
9384    );
9385    assert_eq!(
9386        ::std::mem::align_of::<_zend_parser_stack_elem>(),
9387        8usize,
9388        concat!("Alignment of ", stringify!(_zend_parser_stack_elem))
9389    );
9390    assert_eq!(
9391        unsafe { &(*(::std::ptr::null::<_zend_parser_stack_elem>())).ast as *const _ as usize },
9392        0usize,
9393        concat!(
9394            "Offset of field: ",
9395            stringify!(_zend_parser_stack_elem),
9396            "::",
9397            stringify!(ast)
9398        )
9399    );
9400    assert_eq!(
9401        unsafe { &(*(::std::ptr::null::<_zend_parser_stack_elem>())).str_ as *const _ as usize },
9402        0usize,
9403        concat!(
9404            "Offset of field: ",
9405            stringify!(_zend_parser_stack_elem),
9406            "::",
9407            stringify!(str_)
9408        )
9409    );
9410    assert_eq!(
9411        unsafe { &(*(::std::ptr::null::<_zend_parser_stack_elem>())).num as *const _ as usize },
9412        0usize,
9413        concat!(
9414            "Offset of field: ",
9415            stringify!(_zend_parser_stack_elem),
9416            "::",
9417            stringify!(num)
9418        )
9419    );
9420}
9421pub type zend_parser_stack_elem = _zend_parser_stack_elem;
9422extern "C" {
9423    pub fn zend_compile_top_stmt(ast: *mut zend_ast);
9424}
9425extern "C" {
9426    pub fn zend_compile_stmt(ast: *mut zend_ast);
9427}
9428extern "C" {
9429    pub fn zend_compile_expr(node: *mut znode, ast: *mut zend_ast);
9430}
9431extern "C" {
9432    pub fn zend_compile_var(node: *mut znode, ast: *mut zend_ast, type_: u32);
9433}
9434extern "C" {
9435    pub fn zend_eval_const_expr(ast_ptr: *mut *mut zend_ast);
9436}
9437extern "C" {
9438    pub fn zend_const_expr_to_zval(result: *mut zval, ast: *mut zend_ast);
9439}
9440pub type user_opcode_handler_t = ::std::option::Option<
9441    unsafe extern "C" fn(execute_data: *mut zend_execute_data) -> ::std::os::raw::c_int,
9442>;
9443#[repr(C)]
9444#[derive(Copy, Clone)]
9445pub struct _zend_op {
9446    pub handler: *const ::std::os::raw::c_void,
9447    pub op1: znode_op,
9448    pub op2: znode_op,
9449    pub result: znode_op,
9450    pub extended_value: u32,
9451    pub lineno: u32,
9452    pub opcode: zend_uchar,
9453    pub op1_type: zend_uchar,
9454    pub op2_type: zend_uchar,
9455    pub result_type: zend_uchar,
9456}
9457#[test]
9458fn bindgen_test_layout__zend_op() {
9459    assert_eq!(
9460        ::std::mem::size_of::<_zend_op>(),
9461        32usize,
9462        concat!("Size of: ", stringify!(_zend_op))
9463    );
9464    assert_eq!(
9465        ::std::mem::align_of::<_zend_op>(),
9466        8usize,
9467        concat!("Alignment of ", stringify!(_zend_op))
9468    );
9469    assert_eq!(
9470        unsafe { &(*(::std::ptr::null::<_zend_op>())).handler as *const _ as usize },
9471        0usize,
9472        concat!(
9473            "Offset of field: ",
9474            stringify!(_zend_op),
9475            "::",
9476            stringify!(handler)
9477        )
9478    );
9479    assert_eq!(
9480        unsafe { &(*(::std::ptr::null::<_zend_op>())).op1 as *const _ as usize },
9481        8usize,
9482        concat!(
9483            "Offset of field: ",
9484            stringify!(_zend_op),
9485            "::",
9486            stringify!(op1)
9487        )
9488    );
9489    assert_eq!(
9490        unsafe { &(*(::std::ptr::null::<_zend_op>())).op2 as *const _ as usize },
9491        12usize,
9492        concat!(
9493            "Offset of field: ",
9494            stringify!(_zend_op),
9495            "::",
9496            stringify!(op2)
9497        )
9498    );
9499    assert_eq!(
9500        unsafe { &(*(::std::ptr::null::<_zend_op>())).result as *const _ as usize },
9501        16usize,
9502        concat!(
9503            "Offset of field: ",
9504            stringify!(_zend_op),
9505            "::",
9506            stringify!(result)
9507        )
9508    );
9509    assert_eq!(
9510        unsafe { &(*(::std::ptr::null::<_zend_op>())).extended_value as *const _ as usize },
9511        20usize,
9512        concat!(
9513            "Offset of field: ",
9514            stringify!(_zend_op),
9515            "::",
9516            stringify!(extended_value)
9517        )
9518    );
9519    assert_eq!(
9520        unsafe { &(*(::std::ptr::null::<_zend_op>())).lineno as *const _ as usize },
9521        24usize,
9522        concat!(
9523            "Offset of field: ",
9524            stringify!(_zend_op),
9525            "::",
9526            stringify!(lineno)
9527        )
9528    );
9529    assert_eq!(
9530        unsafe { &(*(::std::ptr::null::<_zend_op>())).opcode as *const _ as usize },
9531        28usize,
9532        concat!(
9533            "Offset of field: ",
9534            stringify!(_zend_op),
9535            "::",
9536            stringify!(opcode)
9537        )
9538    );
9539    assert_eq!(
9540        unsafe { &(*(::std::ptr::null::<_zend_op>())).op1_type as *const _ as usize },
9541        29usize,
9542        concat!(
9543            "Offset of field: ",
9544            stringify!(_zend_op),
9545            "::",
9546            stringify!(op1_type)
9547        )
9548    );
9549    assert_eq!(
9550        unsafe { &(*(::std::ptr::null::<_zend_op>())).op2_type as *const _ as usize },
9551        30usize,
9552        concat!(
9553            "Offset of field: ",
9554            stringify!(_zend_op),
9555            "::",
9556            stringify!(op2_type)
9557        )
9558    );
9559    assert_eq!(
9560        unsafe { &(*(::std::ptr::null::<_zend_op>())).result_type as *const _ as usize },
9561        31usize,
9562        concat!(
9563            "Offset of field: ",
9564            stringify!(_zend_op),
9565            "::",
9566            stringify!(result_type)
9567        )
9568    );
9569}
9570#[repr(C)]
9571#[derive(Debug, Copy, Clone)]
9572pub struct _zend_brk_cont_element {
9573    pub start: ::std::os::raw::c_int,
9574    pub cont: ::std::os::raw::c_int,
9575    pub brk: ::std::os::raw::c_int,
9576    pub parent: ::std::os::raw::c_int,
9577}
9578#[test]
9579fn bindgen_test_layout__zend_brk_cont_element() {
9580    assert_eq!(
9581        ::std::mem::size_of::<_zend_brk_cont_element>(),
9582        16usize,
9583        concat!("Size of: ", stringify!(_zend_brk_cont_element))
9584    );
9585    assert_eq!(
9586        ::std::mem::align_of::<_zend_brk_cont_element>(),
9587        4usize,
9588        concat!("Alignment of ", stringify!(_zend_brk_cont_element))
9589    );
9590    assert_eq!(
9591        unsafe { &(*(::std::ptr::null::<_zend_brk_cont_element>())).start as *const _ as usize },
9592        0usize,
9593        concat!(
9594            "Offset of field: ",
9595            stringify!(_zend_brk_cont_element),
9596            "::",
9597            stringify!(start)
9598        )
9599    );
9600    assert_eq!(
9601        unsafe { &(*(::std::ptr::null::<_zend_brk_cont_element>())).cont as *const _ as usize },
9602        4usize,
9603        concat!(
9604            "Offset of field: ",
9605            stringify!(_zend_brk_cont_element),
9606            "::",
9607            stringify!(cont)
9608        )
9609    );
9610    assert_eq!(
9611        unsafe { &(*(::std::ptr::null::<_zend_brk_cont_element>())).brk as *const _ as usize },
9612        8usize,
9613        concat!(
9614            "Offset of field: ",
9615            stringify!(_zend_brk_cont_element),
9616            "::",
9617            stringify!(brk)
9618        )
9619    );
9620    assert_eq!(
9621        unsafe { &(*(::std::ptr::null::<_zend_brk_cont_element>())).parent as *const _ as usize },
9622        12usize,
9623        concat!(
9624            "Offset of field: ",
9625            stringify!(_zend_brk_cont_element),
9626            "::",
9627            stringify!(parent)
9628        )
9629    );
9630}
9631pub type zend_brk_cont_element = _zend_brk_cont_element;
9632#[repr(C)]
9633#[derive(Debug, Copy, Clone)]
9634pub struct _zend_label {
9635    pub brk_cont: ::std::os::raw::c_int,
9636    pub opline_num: u32,
9637}
9638#[test]
9639fn bindgen_test_layout__zend_label() {
9640    assert_eq!(
9641        ::std::mem::size_of::<_zend_label>(),
9642        8usize,
9643        concat!("Size of: ", stringify!(_zend_label))
9644    );
9645    assert_eq!(
9646        ::std::mem::align_of::<_zend_label>(),
9647        4usize,
9648        concat!("Alignment of ", stringify!(_zend_label))
9649    );
9650    assert_eq!(
9651        unsafe { &(*(::std::ptr::null::<_zend_label>())).brk_cont as *const _ as usize },
9652        0usize,
9653        concat!(
9654            "Offset of field: ",
9655            stringify!(_zend_label),
9656            "::",
9657            stringify!(brk_cont)
9658        )
9659    );
9660    assert_eq!(
9661        unsafe { &(*(::std::ptr::null::<_zend_label>())).opline_num as *const _ as usize },
9662        4usize,
9663        concat!(
9664            "Offset of field: ",
9665            stringify!(_zend_label),
9666            "::",
9667            stringify!(opline_num)
9668        )
9669    );
9670}
9671pub type zend_label = _zend_label;
9672#[repr(C)]
9673#[derive(Debug, Copy, Clone)]
9674pub struct _zend_try_catch_element {
9675    pub try_op: u32,
9676    pub catch_op: u32,
9677    pub finally_op: u32,
9678    pub finally_end: u32,
9679}
9680#[test]
9681fn bindgen_test_layout__zend_try_catch_element() {
9682    assert_eq!(
9683        ::std::mem::size_of::<_zend_try_catch_element>(),
9684        16usize,
9685        concat!("Size of: ", stringify!(_zend_try_catch_element))
9686    );
9687    assert_eq!(
9688        ::std::mem::align_of::<_zend_try_catch_element>(),
9689        4usize,
9690        concat!("Alignment of ", stringify!(_zend_try_catch_element))
9691    );
9692    assert_eq!(
9693        unsafe { &(*(::std::ptr::null::<_zend_try_catch_element>())).try_op as *const _ as usize },
9694        0usize,
9695        concat!(
9696            "Offset of field: ",
9697            stringify!(_zend_try_catch_element),
9698            "::",
9699            stringify!(try_op)
9700        )
9701    );
9702    assert_eq!(
9703        unsafe {
9704            &(*(::std::ptr::null::<_zend_try_catch_element>())).catch_op as *const _ as usize
9705        },
9706        4usize,
9707        concat!(
9708            "Offset of field: ",
9709            stringify!(_zend_try_catch_element),
9710            "::",
9711            stringify!(catch_op)
9712        )
9713    );
9714    assert_eq!(
9715        unsafe {
9716            &(*(::std::ptr::null::<_zend_try_catch_element>())).finally_op as *const _ as usize
9717        },
9718        8usize,
9719        concat!(
9720            "Offset of field: ",
9721            stringify!(_zend_try_catch_element),
9722            "::",
9723            stringify!(finally_op)
9724        )
9725    );
9726    assert_eq!(
9727        unsafe {
9728            &(*(::std::ptr::null::<_zend_try_catch_element>())).finally_end as *const _ as usize
9729        },
9730        12usize,
9731        concat!(
9732            "Offset of field: ",
9733            stringify!(_zend_try_catch_element),
9734            "::",
9735            stringify!(finally_end)
9736        )
9737    );
9738}
9739pub type zend_try_catch_element = _zend_try_catch_element;
9740#[repr(C)]
9741#[derive(Debug, Copy, Clone)]
9742pub struct _zend_live_range {
9743    pub var: u32,
9744    pub start: u32,
9745    pub end: u32,
9746}
9747#[test]
9748fn bindgen_test_layout__zend_live_range() {
9749    assert_eq!(
9750        ::std::mem::size_of::<_zend_live_range>(),
9751        12usize,
9752        concat!("Size of: ", stringify!(_zend_live_range))
9753    );
9754    assert_eq!(
9755        ::std::mem::align_of::<_zend_live_range>(),
9756        4usize,
9757        concat!("Alignment of ", stringify!(_zend_live_range))
9758    );
9759    assert_eq!(
9760        unsafe { &(*(::std::ptr::null::<_zend_live_range>())).var as *const _ as usize },
9761        0usize,
9762        concat!(
9763            "Offset of field: ",
9764            stringify!(_zend_live_range),
9765            "::",
9766            stringify!(var)
9767        )
9768    );
9769    assert_eq!(
9770        unsafe { &(*(::std::ptr::null::<_zend_live_range>())).start as *const _ as usize },
9771        4usize,
9772        concat!(
9773            "Offset of field: ",
9774            stringify!(_zend_live_range),
9775            "::",
9776            stringify!(start)
9777        )
9778    );
9779    assert_eq!(
9780        unsafe { &(*(::std::ptr::null::<_zend_live_range>())).end as *const _ as usize },
9781        8usize,
9782        concat!(
9783            "Offset of field: ",
9784            stringify!(_zend_live_range),
9785            "::",
9786            stringify!(end)
9787        )
9788    );
9789}
9790pub type zend_live_range = _zend_live_range;
9791#[repr(C)]
9792#[derive(Debug, Copy, Clone)]
9793pub struct _zend_oparray_context {
9794    pub opcodes_size: u32,
9795    pub vars_size: ::std::os::raw::c_int,
9796    pub literals_size: ::std::os::raw::c_int,
9797    pub backpatch_count: ::std::os::raw::c_int,
9798    pub fast_call_var: u32,
9799    pub try_catch_offset: u32,
9800    pub current_brk_cont: ::std::os::raw::c_int,
9801    pub last_brk_cont: ::std::os::raw::c_int,
9802    pub brk_cont_array: *mut zend_brk_cont_element,
9803    pub labels: *mut HashTable,
9804}
9805#[test]
9806fn bindgen_test_layout__zend_oparray_context() {
9807    assert_eq!(
9808        ::std::mem::size_of::<_zend_oparray_context>(),
9809        48usize,
9810        concat!("Size of: ", stringify!(_zend_oparray_context))
9811    );
9812    assert_eq!(
9813        ::std::mem::align_of::<_zend_oparray_context>(),
9814        8usize,
9815        concat!("Alignment of ", stringify!(_zend_oparray_context))
9816    );
9817    assert_eq!(
9818        unsafe {
9819            &(*(::std::ptr::null::<_zend_oparray_context>())).opcodes_size as *const _ as usize
9820        },
9821        0usize,
9822        concat!(
9823            "Offset of field: ",
9824            stringify!(_zend_oparray_context),
9825            "::",
9826            stringify!(opcodes_size)
9827        )
9828    );
9829    assert_eq!(
9830        unsafe { &(*(::std::ptr::null::<_zend_oparray_context>())).vars_size as *const _ as usize },
9831        4usize,
9832        concat!(
9833            "Offset of field: ",
9834            stringify!(_zend_oparray_context),
9835            "::",
9836            stringify!(vars_size)
9837        )
9838    );
9839    assert_eq!(
9840        unsafe {
9841            &(*(::std::ptr::null::<_zend_oparray_context>())).literals_size as *const _ as usize
9842        },
9843        8usize,
9844        concat!(
9845            "Offset of field: ",
9846            stringify!(_zend_oparray_context),
9847            "::",
9848            stringify!(literals_size)
9849        )
9850    );
9851    assert_eq!(
9852        unsafe {
9853            &(*(::std::ptr::null::<_zend_oparray_context>())).backpatch_count as *const _ as usize
9854        },
9855        12usize,
9856        concat!(
9857            "Offset of field: ",
9858            stringify!(_zend_oparray_context),
9859            "::",
9860            stringify!(backpatch_count)
9861        )
9862    );
9863    assert_eq!(
9864        unsafe {
9865            &(*(::std::ptr::null::<_zend_oparray_context>())).fast_call_var as *const _ as usize
9866        },
9867        16usize,
9868        concat!(
9869            "Offset of field: ",
9870            stringify!(_zend_oparray_context),
9871            "::",
9872            stringify!(fast_call_var)
9873        )
9874    );
9875    assert_eq!(
9876        unsafe {
9877            &(*(::std::ptr::null::<_zend_oparray_context>())).try_catch_offset as *const _ as usize
9878        },
9879        20usize,
9880        concat!(
9881            "Offset of field: ",
9882            stringify!(_zend_oparray_context),
9883            "::",
9884            stringify!(try_catch_offset)
9885        )
9886    );
9887    assert_eq!(
9888        unsafe {
9889            &(*(::std::ptr::null::<_zend_oparray_context>())).current_brk_cont as *const _ as usize
9890        },
9891        24usize,
9892        concat!(
9893            "Offset of field: ",
9894            stringify!(_zend_oparray_context),
9895            "::",
9896            stringify!(current_brk_cont)
9897        )
9898    );
9899    assert_eq!(
9900        unsafe {
9901            &(*(::std::ptr::null::<_zend_oparray_context>())).last_brk_cont as *const _ as usize
9902        },
9903        28usize,
9904        concat!(
9905            "Offset of field: ",
9906            stringify!(_zend_oparray_context),
9907            "::",
9908            stringify!(last_brk_cont)
9909        )
9910    );
9911    assert_eq!(
9912        unsafe {
9913            &(*(::std::ptr::null::<_zend_oparray_context>())).brk_cont_array as *const _ as usize
9914        },
9915        32usize,
9916        concat!(
9917            "Offset of field: ",
9918            stringify!(_zend_oparray_context),
9919            "::",
9920            stringify!(brk_cont_array)
9921        )
9922    );
9923    assert_eq!(
9924        unsafe { &(*(::std::ptr::null::<_zend_oparray_context>())).labels as *const _ as usize },
9925        40usize,
9926        concat!(
9927            "Offset of field: ",
9928            stringify!(_zend_oparray_context),
9929            "::",
9930            stringify!(labels)
9931        )
9932    );
9933}
9934pub type zend_oparray_context = _zend_oparray_context;
9935extern "C" {
9936    pub fn zend_visibility_string(fn_flags: u32) -> *mut ::std::os::raw::c_char;
9937}
9938#[repr(C)]
9939#[derive(Debug, Copy, Clone)]
9940pub struct _zend_property_info {
9941    pub offset: u32,
9942    pub flags: u32,
9943    pub name: *mut zend_string,
9944    pub doc_comment: *mut zend_string,
9945    pub ce: *mut zend_class_entry,
9946}
9947#[test]
9948fn bindgen_test_layout__zend_property_info() {
9949    assert_eq!(
9950        ::std::mem::size_of::<_zend_property_info>(),
9951        32usize,
9952        concat!("Size of: ", stringify!(_zend_property_info))
9953    );
9954    assert_eq!(
9955        ::std::mem::align_of::<_zend_property_info>(),
9956        8usize,
9957        concat!("Alignment of ", stringify!(_zend_property_info))
9958    );
9959    assert_eq!(
9960        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).offset as *const _ as usize },
9961        0usize,
9962        concat!(
9963            "Offset of field: ",
9964            stringify!(_zend_property_info),
9965            "::",
9966            stringify!(offset)
9967        )
9968    );
9969    assert_eq!(
9970        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).flags as *const _ as usize },
9971        4usize,
9972        concat!(
9973            "Offset of field: ",
9974            stringify!(_zend_property_info),
9975            "::",
9976            stringify!(flags)
9977        )
9978    );
9979    assert_eq!(
9980        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).name as *const _ as usize },
9981        8usize,
9982        concat!(
9983            "Offset of field: ",
9984            stringify!(_zend_property_info),
9985            "::",
9986            stringify!(name)
9987        )
9988    );
9989    assert_eq!(
9990        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).doc_comment as *const _ as usize },
9991        16usize,
9992        concat!(
9993            "Offset of field: ",
9994            stringify!(_zend_property_info),
9995            "::",
9996            stringify!(doc_comment)
9997        )
9998    );
9999    assert_eq!(
10000        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).ce as *const _ as usize },
10001        24usize,
10002        concat!(
10003            "Offset of field: ",
10004            stringify!(_zend_property_info),
10005            "::",
10006            stringify!(ce)
10007        )
10008    );
10009}
10010pub type zend_property_info = _zend_property_info;
10011#[repr(C)]
10012#[derive(Copy, Clone)]
10013pub struct _zend_class_constant {
10014    pub value: zval,
10015    pub doc_comment: *mut zend_string,
10016    pub ce: *mut zend_class_entry,
10017}
10018#[test]
10019fn bindgen_test_layout__zend_class_constant() {
10020    assert_eq!(
10021        ::std::mem::size_of::<_zend_class_constant>(),
10022        32usize,
10023        concat!("Size of: ", stringify!(_zend_class_constant))
10024    );
10025    assert_eq!(
10026        ::std::mem::align_of::<_zend_class_constant>(),
10027        8usize,
10028        concat!("Alignment of ", stringify!(_zend_class_constant))
10029    );
10030    assert_eq!(
10031        unsafe { &(*(::std::ptr::null::<_zend_class_constant>())).value as *const _ as usize },
10032        0usize,
10033        concat!(
10034            "Offset of field: ",
10035            stringify!(_zend_class_constant),
10036            "::",
10037            stringify!(value)
10038        )
10039    );
10040    assert_eq!(
10041        unsafe {
10042            &(*(::std::ptr::null::<_zend_class_constant>())).doc_comment as *const _ as usize
10043        },
10044        16usize,
10045        concat!(
10046            "Offset of field: ",
10047            stringify!(_zend_class_constant),
10048            "::",
10049            stringify!(doc_comment)
10050        )
10051    );
10052    assert_eq!(
10053        unsafe { &(*(::std::ptr::null::<_zend_class_constant>())).ce as *const _ as usize },
10054        24usize,
10055        concat!(
10056            "Offset of field: ",
10057            stringify!(_zend_class_constant),
10058            "::",
10059            stringify!(ce)
10060        )
10061    );
10062}
10063pub type zend_class_constant = _zend_class_constant;
10064#[repr(C)]
10065#[derive(Debug, Copy, Clone)]
10066pub struct _zend_internal_arg_info {
10067    pub name: *const ::std::os::raw::c_char,
10068    pub type_: zend_type,
10069    pub pass_by_reference: zend_uchar,
10070    pub is_variadic: zend_bool,
10071}
10072#[test]
10073fn bindgen_test_layout__zend_internal_arg_info() {
10074    assert_eq!(
10075        ::std::mem::size_of::<_zend_internal_arg_info>(),
10076        24usize,
10077        concat!("Size of: ", stringify!(_zend_internal_arg_info))
10078    );
10079    assert_eq!(
10080        ::std::mem::align_of::<_zend_internal_arg_info>(),
10081        8usize,
10082        concat!("Alignment of ", stringify!(_zend_internal_arg_info))
10083    );
10084    assert_eq!(
10085        unsafe { &(*(::std::ptr::null::<_zend_internal_arg_info>())).name as *const _ as usize },
10086        0usize,
10087        concat!(
10088            "Offset of field: ",
10089            stringify!(_zend_internal_arg_info),
10090            "::",
10091            stringify!(name)
10092        )
10093    );
10094    assert_eq!(
10095        unsafe { &(*(::std::ptr::null::<_zend_internal_arg_info>())).type_ as *const _ as usize },
10096        8usize,
10097        concat!(
10098            "Offset of field: ",
10099            stringify!(_zend_internal_arg_info),
10100            "::",
10101            stringify!(type_)
10102        )
10103    );
10104    assert_eq!(
10105        unsafe {
10106            &(*(::std::ptr::null::<_zend_internal_arg_info>())).pass_by_reference as *const _
10107                as usize
10108        },
10109        16usize,
10110        concat!(
10111            "Offset of field: ",
10112            stringify!(_zend_internal_arg_info),
10113            "::",
10114            stringify!(pass_by_reference)
10115        )
10116    );
10117    assert_eq!(
10118        unsafe {
10119            &(*(::std::ptr::null::<_zend_internal_arg_info>())).is_variadic as *const _ as usize
10120        },
10121        17usize,
10122        concat!(
10123            "Offset of field: ",
10124            stringify!(_zend_internal_arg_info),
10125            "::",
10126            stringify!(is_variadic)
10127        )
10128    );
10129}
10130pub type zend_internal_arg_info = _zend_internal_arg_info;
10131#[repr(C)]
10132#[derive(Debug, Copy, Clone)]
10133pub struct _zend_arg_info {
10134    pub name: *mut zend_string,
10135    pub type_: zend_type,
10136    pub pass_by_reference: zend_uchar,
10137    pub is_variadic: zend_bool,
10138}
10139#[test]
10140fn bindgen_test_layout__zend_arg_info() {
10141    assert_eq!(
10142        ::std::mem::size_of::<_zend_arg_info>(),
10143        24usize,
10144        concat!("Size of: ", stringify!(_zend_arg_info))
10145    );
10146    assert_eq!(
10147        ::std::mem::align_of::<_zend_arg_info>(),
10148        8usize,
10149        concat!("Alignment of ", stringify!(_zend_arg_info))
10150    );
10151    assert_eq!(
10152        unsafe { &(*(::std::ptr::null::<_zend_arg_info>())).name as *const _ as usize },
10153        0usize,
10154        concat!(
10155            "Offset of field: ",
10156            stringify!(_zend_arg_info),
10157            "::",
10158            stringify!(name)
10159        )
10160    );
10161    assert_eq!(
10162        unsafe { &(*(::std::ptr::null::<_zend_arg_info>())).type_ as *const _ as usize },
10163        8usize,
10164        concat!(
10165            "Offset of field: ",
10166            stringify!(_zend_arg_info),
10167            "::",
10168            stringify!(type_)
10169        )
10170    );
10171    assert_eq!(
10172        unsafe {
10173            &(*(::std::ptr::null::<_zend_arg_info>())).pass_by_reference as *const _ as usize
10174        },
10175        16usize,
10176        concat!(
10177            "Offset of field: ",
10178            stringify!(_zend_arg_info),
10179            "::",
10180            stringify!(pass_by_reference)
10181        )
10182    );
10183    assert_eq!(
10184        unsafe { &(*(::std::ptr::null::<_zend_arg_info>())).is_variadic as *const _ as usize },
10185        17usize,
10186        concat!(
10187            "Offset of field: ",
10188            stringify!(_zend_arg_info),
10189            "::",
10190            stringify!(is_variadic)
10191        )
10192    );
10193}
10194pub type zend_arg_info = _zend_arg_info;
10195#[repr(C)]
10196#[derive(Debug, Copy, Clone)]
10197pub struct _zend_internal_function_info {
10198    pub required_num_args: zend_uintptr_t,
10199    pub type_: zend_type,
10200    pub return_reference: zend_bool,
10201    pub _is_variadic: zend_bool,
10202}
10203#[test]
10204fn bindgen_test_layout__zend_internal_function_info() {
10205    assert_eq!(
10206        ::std::mem::size_of::<_zend_internal_function_info>(),
10207        24usize,
10208        concat!("Size of: ", stringify!(_zend_internal_function_info))
10209    );
10210    assert_eq!(
10211        ::std::mem::align_of::<_zend_internal_function_info>(),
10212        8usize,
10213        concat!("Alignment of ", stringify!(_zend_internal_function_info))
10214    );
10215    assert_eq!(
10216        unsafe {
10217            &(*(::std::ptr::null::<_zend_internal_function_info>())).required_num_args as *const _
10218                as usize
10219        },
10220        0usize,
10221        concat!(
10222            "Offset of field: ",
10223            stringify!(_zend_internal_function_info),
10224            "::",
10225            stringify!(required_num_args)
10226        )
10227    );
10228    assert_eq!(
10229        unsafe {
10230            &(*(::std::ptr::null::<_zend_internal_function_info>())).type_ as *const _ as usize
10231        },
10232        8usize,
10233        concat!(
10234            "Offset of field: ",
10235            stringify!(_zend_internal_function_info),
10236            "::",
10237            stringify!(type_)
10238        )
10239    );
10240    assert_eq!(
10241        unsafe {
10242            &(*(::std::ptr::null::<_zend_internal_function_info>())).return_reference as *const _
10243                as usize
10244        },
10245        16usize,
10246        concat!(
10247            "Offset of field: ",
10248            stringify!(_zend_internal_function_info),
10249            "::",
10250            stringify!(return_reference)
10251        )
10252    );
10253    assert_eq!(
10254        unsafe {
10255            &(*(::std::ptr::null::<_zend_internal_function_info>()))._is_variadic as *const _
10256                as usize
10257        },
10258        17usize,
10259        concat!(
10260            "Offset of field: ",
10261            stringify!(_zend_internal_function_info),
10262            "::",
10263            stringify!(_is_variadic)
10264        )
10265    );
10266}
10267pub type zend_internal_function_info = _zend_internal_function_info;
10268#[repr(C)]
10269#[derive(Debug, Copy, Clone)]
10270pub struct _zend_op_array {
10271    pub type_: zend_uchar,
10272    pub arg_flags: [zend_uchar; 3usize],
10273    pub fn_flags: u32,
10274    pub function_name: *mut zend_string,
10275    pub scope: *mut zend_class_entry,
10276    pub prototype: *mut zend_function,
10277    pub num_args: u32,
10278    pub required_num_args: u32,
10279    pub arg_info: *mut zend_arg_info,
10280    pub refcount: *mut u32,
10281    pub last: u32,
10282    pub opcodes: *mut zend_op,
10283    pub last_var: ::std::os::raw::c_int,
10284    pub T: u32,
10285    pub vars: *mut *mut zend_string,
10286    pub last_live_range: ::std::os::raw::c_int,
10287    pub last_try_catch: ::std::os::raw::c_int,
10288    pub live_range: *mut zend_live_range,
10289    pub try_catch_array: *mut zend_try_catch_element,
10290    pub static_variables: *mut HashTable,
10291    pub filename: *mut zend_string,
10292    pub line_start: u32,
10293    pub line_end: u32,
10294    pub doc_comment: *mut zend_string,
10295    pub early_binding: u32,
10296    pub last_literal: ::std::os::raw::c_int,
10297    pub literals: *mut zval,
10298    pub cache_size: ::std::os::raw::c_int,
10299    pub run_time_cache: *mut *mut ::std::os::raw::c_void,
10300    pub reserved: [*mut ::std::os::raw::c_void; 6usize],
10301}
10302#[test]
10303fn bindgen_test_layout__zend_op_array() {
10304    assert_eq!(
10305        ::std::mem::size_of::<_zend_op_array>(),
10306        224usize,
10307        concat!("Size of: ", stringify!(_zend_op_array))
10308    );
10309    assert_eq!(
10310        ::std::mem::align_of::<_zend_op_array>(),
10311        8usize,
10312        concat!("Alignment of ", stringify!(_zend_op_array))
10313    );
10314    assert_eq!(
10315        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).type_ as *const _ as usize },
10316        0usize,
10317        concat!(
10318            "Offset of field: ",
10319            stringify!(_zend_op_array),
10320            "::",
10321            stringify!(type_)
10322        )
10323    );
10324    assert_eq!(
10325        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).arg_flags as *const _ as usize },
10326        1usize,
10327        concat!(
10328            "Offset of field: ",
10329            stringify!(_zend_op_array),
10330            "::",
10331            stringify!(arg_flags)
10332        )
10333    );
10334    assert_eq!(
10335        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).fn_flags as *const _ as usize },
10336        4usize,
10337        concat!(
10338            "Offset of field: ",
10339            stringify!(_zend_op_array),
10340            "::",
10341            stringify!(fn_flags)
10342        )
10343    );
10344    assert_eq!(
10345        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).function_name as *const _ as usize },
10346        8usize,
10347        concat!(
10348            "Offset of field: ",
10349            stringify!(_zend_op_array),
10350            "::",
10351            stringify!(function_name)
10352        )
10353    );
10354    assert_eq!(
10355        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).scope as *const _ as usize },
10356        16usize,
10357        concat!(
10358            "Offset of field: ",
10359            stringify!(_zend_op_array),
10360            "::",
10361            stringify!(scope)
10362        )
10363    );
10364    assert_eq!(
10365        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).prototype as *const _ as usize },
10366        24usize,
10367        concat!(
10368            "Offset of field: ",
10369            stringify!(_zend_op_array),
10370            "::",
10371            stringify!(prototype)
10372        )
10373    );
10374    assert_eq!(
10375        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).num_args as *const _ as usize },
10376        32usize,
10377        concat!(
10378            "Offset of field: ",
10379            stringify!(_zend_op_array),
10380            "::",
10381            stringify!(num_args)
10382        )
10383    );
10384    assert_eq!(
10385        unsafe {
10386            &(*(::std::ptr::null::<_zend_op_array>())).required_num_args as *const _ as usize
10387        },
10388        36usize,
10389        concat!(
10390            "Offset of field: ",
10391            stringify!(_zend_op_array),
10392            "::",
10393            stringify!(required_num_args)
10394        )
10395    );
10396    assert_eq!(
10397        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).arg_info as *const _ as usize },
10398        40usize,
10399        concat!(
10400            "Offset of field: ",
10401            stringify!(_zend_op_array),
10402            "::",
10403            stringify!(arg_info)
10404        )
10405    );
10406    assert_eq!(
10407        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).refcount as *const _ as usize },
10408        48usize,
10409        concat!(
10410            "Offset of field: ",
10411            stringify!(_zend_op_array),
10412            "::",
10413            stringify!(refcount)
10414        )
10415    );
10416    assert_eq!(
10417        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last as *const _ as usize },
10418        56usize,
10419        concat!(
10420            "Offset of field: ",
10421            stringify!(_zend_op_array),
10422            "::",
10423            stringify!(last)
10424        )
10425    );
10426    assert_eq!(
10427        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).opcodes as *const _ as usize },
10428        64usize,
10429        concat!(
10430            "Offset of field: ",
10431            stringify!(_zend_op_array),
10432            "::",
10433            stringify!(opcodes)
10434        )
10435    );
10436    assert_eq!(
10437        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last_var as *const _ as usize },
10438        72usize,
10439        concat!(
10440            "Offset of field: ",
10441            stringify!(_zend_op_array),
10442            "::",
10443            stringify!(last_var)
10444        )
10445    );
10446    assert_eq!(
10447        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).T as *const _ as usize },
10448        76usize,
10449        concat!(
10450            "Offset of field: ",
10451            stringify!(_zend_op_array),
10452            "::",
10453            stringify!(T)
10454        )
10455    );
10456    assert_eq!(
10457        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).vars as *const _ as usize },
10458        80usize,
10459        concat!(
10460            "Offset of field: ",
10461            stringify!(_zend_op_array),
10462            "::",
10463            stringify!(vars)
10464        )
10465    );
10466    assert_eq!(
10467        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last_live_range as *const _ as usize },
10468        88usize,
10469        concat!(
10470            "Offset of field: ",
10471            stringify!(_zend_op_array),
10472            "::",
10473            stringify!(last_live_range)
10474        )
10475    );
10476    assert_eq!(
10477        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last_try_catch as *const _ as usize },
10478        92usize,
10479        concat!(
10480            "Offset of field: ",
10481            stringify!(_zend_op_array),
10482            "::",
10483            stringify!(last_try_catch)
10484        )
10485    );
10486    assert_eq!(
10487        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).live_range as *const _ as usize },
10488        96usize,
10489        concat!(
10490            "Offset of field: ",
10491            stringify!(_zend_op_array),
10492            "::",
10493            stringify!(live_range)
10494        )
10495    );
10496    assert_eq!(
10497        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).try_catch_array as *const _ as usize },
10498        104usize,
10499        concat!(
10500            "Offset of field: ",
10501            stringify!(_zend_op_array),
10502            "::",
10503            stringify!(try_catch_array)
10504        )
10505    );
10506    assert_eq!(
10507        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).static_variables as *const _ as usize },
10508        112usize,
10509        concat!(
10510            "Offset of field: ",
10511            stringify!(_zend_op_array),
10512            "::",
10513            stringify!(static_variables)
10514        )
10515    );
10516    assert_eq!(
10517        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).filename as *const _ as usize },
10518        120usize,
10519        concat!(
10520            "Offset of field: ",
10521            stringify!(_zend_op_array),
10522            "::",
10523            stringify!(filename)
10524        )
10525    );
10526    assert_eq!(
10527        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).line_start as *const _ as usize },
10528        128usize,
10529        concat!(
10530            "Offset of field: ",
10531            stringify!(_zend_op_array),
10532            "::",
10533            stringify!(line_start)
10534        )
10535    );
10536    assert_eq!(
10537        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).line_end as *const _ as usize },
10538        132usize,
10539        concat!(
10540            "Offset of field: ",
10541            stringify!(_zend_op_array),
10542            "::",
10543            stringify!(line_end)
10544        )
10545    );
10546    assert_eq!(
10547        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).doc_comment as *const _ as usize },
10548        136usize,
10549        concat!(
10550            "Offset of field: ",
10551            stringify!(_zend_op_array),
10552            "::",
10553            stringify!(doc_comment)
10554        )
10555    );
10556    assert_eq!(
10557        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).early_binding as *const _ as usize },
10558        144usize,
10559        concat!(
10560            "Offset of field: ",
10561            stringify!(_zend_op_array),
10562            "::",
10563            stringify!(early_binding)
10564        )
10565    );
10566    assert_eq!(
10567        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last_literal as *const _ as usize },
10568        148usize,
10569        concat!(
10570            "Offset of field: ",
10571            stringify!(_zend_op_array),
10572            "::",
10573            stringify!(last_literal)
10574        )
10575    );
10576    assert_eq!(
10577        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).literals as *const _ as usize },
10578        152usize,
10579        concat!(
10580            "Offset of field: ",
10581            stringify!(_zend_op_array),
10582            "::",
10583            stringify!(literals)
10584        )
10585    );
10586    assert_eq!(
10587        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).cache_size as *const _ as usize },
10588        160usize,
10589        concat!(
10590            "Offset of field: ",
10591            stringify!(_zend_op_array),
10592            "::",
10593            stringify!(cache_size)
10594        )
10595    );
10596    assert_eq!(
10597        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).run_time_cache as *const _ as usize },
10598        168usize,
10599        concat!(
10600            "Offset of field: ",
10601            stringify!(_zend_op_array),
10602            "::",
10603            stringify!(run_time_cache)
10604        )
10605    );
10606    assert_eq!(
10607        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).reserved as *const _ as usize },
10608        176usize,
10609        concat!(
10610            "Offset of field: ",
10611            stringify!(_zend_op_array),
10612            "::",
10613            stringify!(reserved)
10614        )
10615    );
10616}
10617pub type zif_handler = ::std::option::Option<
10618    unsafe extern "C" fn(execute_data: *mut zend_execute_data, return_value: *mut zval),
10619>;
10620#[repr(C)]
10621#[derive(Debug, Copy, Clone)]
10622pub struct _zend_internal_function {
10623    pub type_: zend_uchar,
10624    pub arg_flags: [zend_uchar; 3usize],
10625    pub fn_flags: u32,
10626    pub function_name: *mut zend_string,
10627    pub scope: *mut zend_class_entry,
10628    pub prototype: *mut zend_function,
10629    pub num_args: u32,
10630    pub required_num_args: u32,
10631    pub arg_info: *mut zend_internal_arg_info,
10632    pub handler: zif_handler,
10633    pub module: *mut _zend_module_entry,
10634    pub reserved: [*mut ::std::os::raw::c_void; 6usize],
10635}
10636#[test]
10637fn bindgen_test_layout__zend_internal_function() {
10638    assert_eq!(
10639        ::std::mem::size_of::<_zend_internal_function>(),
10640        112usize,
10641        concat!("Size of: ", stringify!(_zend_internal_function))
10642    );
10643    assert_eq!(
10644        ::std::mem::align_of::<_zend_internal_function>(),
10645        8usize,
10646        concat!("Alignment of ", stringify!(_zend_internal_function))
10647    );
10648    assert_eq!(
10649        unsafe { &(*(::std::ptr::null::<_zend_internal_function>())).type_ as *const _ as usize },
10650        0usize,
10651        concat!(
10652            "Offset of field: ",
10653            stringify!(_zend_internal_function),
10654            "::",
10655            stringify!(type_)
10656        )
10657    );
10658    assert_eq!(
10659        unsafe {
10660            &(*(::std::ptr::null::<_zend_internal_function>())).arg_flags as *const _ as usize
10661        },
10662        1usize,
10663        concat!(
10664            "Offset of field: ",
10665            stringify!(_zend_internal_function),
10666            "::",
10667            stringify!(arg_flags)
10668        )
10669    );
10670    assert_eq!(
10671        unsafe {
10672            &(*(::std::ptr::null::<_zend_internal_function>())).fn_flags as *const _ as usize
10673        },
10674        4usize,
10675        concat!(
10676            "Offset of field: ",
10677            stringify!(_zend_internal_function),
10678            "::",
10679            stringify!(fn_flags)
10680        )
10681    );
10682    assert_eq!(
10683        unsafe {
10684            &(*(::std::ptr::null::<_zend_internal_function>())).function_name as *const _ as usize
10685        },
10686        8usize,
10687        concat!(
10688            "Offset of field: ",
10689            stringify!(_zend_internal_function),
10690            "::",
10691            stringify!(function_name)
10692        )
10693    );
10694    assert_eq!(
10695        unsafe { &(*(::std::ptr::null::<_zend_internal_function>())).scope as *const _ as usize },
10696        16usize,
10697        concat!(
10698            "Offset of field: ",
10699            stringify!(_zend_internal_function),
10700            "::",
10701            stringify!(scope)
10702        )
10703    );
10704    assert_eq!(
10705        unsafe {
10706            &(*(::std::ptr::null::<_zend_internal_function>())).prototype as *const _ as usize
10707        },
10708        24usize,
10709        concat!(
10710            "Offset of field: ",
10711            stringify!(_zend_internal_function),
10712            "::",
10713            stringify!(prototype)
10714        )
10715    );
10716    assert_eq!(
10717        unsafe {
10718            &(*(::std::ptr::null::<_zend_internal_function>())).num_args as *const _ as usize
10719        },
10720        32usize,
10721        concat!(
10722            "Offset of field: ",
10723            stringify!(_zend_internal_function),
10724            "::",
10725            stringify!(num_args)
10726        )
10727    );
10728    assert_eq!(
10729        unsafe {
10730            &(*(::std::ptr::null::<_zend_internal_function>())).required_num_args as *const _
10731                as usize
10732        },
10733        36usize,
10734        concat!(
10735            "Offset of field: ",
10736            stringify!(_zend_internal_function),
10737            "::",
10738            stringify!(required_num_args)
10739        )
10740    );
10741    assert_eq!(
10742        unsafe {
10743            &(*(::std::ptr::null::<_zend_internal_function>())).arg_info as *const _ as usize
10744        },
10745        40usize,
10746        concat!(
10747            "Offset of field: ",
10748            stringify!(_zend_internal_function),
10749            "::",
10750            stringify!(arg_info)
10751        )
10752    );
10753    assert_eq!(
10754        unsafe { &(*(::std::ptr::null::<_zend_internal_function>())).handler as *const _ as usize },
10755        48usize,
10756        concat!(
10757            "Offset of field: ",
10758            stringify!(_zend_internal_function),
10759            "::",
10760            stringify!(handler)
10761        )
10762    );
10763    assert_eq!(
10764        unsafe { &(*(::std::ptr::null::<_zend_internal_function>())).module as *const _ as usize },
10765        56usize,
10766        concat!(
10767            "Offset of field: ",
10768            stringify!(_zend_internal_function),
10769            "::",
10770            stringify!(module)
10771        )
10772    );
10773    assert_eq!(
10774        unsafe {
10775            &(*(::std::ptr::null::<_zend_internal_function>())).reserved as *const _ as usize
10776        },
10777        64usize,
10778        concat!(
10779            "Offset of field: ",
10780            stringify!(_zend_internal_function),
10781            "::",
10782            stringify!(reserved)
10783        )
10784    );
10785}
10786pub type zend_internal_function = _zend_internal_function;
10787#[repr(C)]
10788#[derive(Copy, Clone)]
10789pub union _zend_function {
10790    pub type_: zend_uchar,
10791    pub quick_arg_flags: u32,
10792    pub common: _zend_function__bindgen_ty_1,
10793    pub op_array: zend_op_array,
10794    pub internal_function: zend_internal_function,
10795    _bindgen_union_align: [u64; 28usize],
10796}
10797#[repr(C)]
10798#[derive(Debug, Copy, Clone)]
10799pub struct _zend_function__bindgen_ty_1 {
10800    pub type_: zend_uchar,
10801    pub arg_flags: [zend_uchar; 3usize],
10802    pub fn_flags: u32,
10803    pub function_name: *mut zend_string,
10804    pub scope: *mut zend_class_entry,
10805    pub prototype: *mut _zend_function,
10806    pub num_args: u32,
10807    pub required_num_args: u32,
10808    pub arg_info: *mut zend_arg_info,
10809}
10810#[test]
10811fn bindgen_test_layout__zend_function__bindgen_ty_1() {
10812    assert_eq!(
10813        ::std::mem::size_of::<_zend_function__bindgen_ty_1>(),
10814        48usize,
10815        concat!("Size of: ", stringify!(_zend_function__bindgen_ty_1))
10816    );
10817    assert_eq!(
10818        ::std::mem::align_of::<_zend_function__bindgen_ty_1>(),
10819        8usize,
10820        concat!("Alignment of ", stringify!(_zend_function__bindgen_ty_1))
10821    );
10822    assert_eq!(
10823        unsafe {
10824            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).type_ as *const _ as usize
10825        },
10826        0usize,
10827        concat!(
10828            "Offset of field: ",
10829            stringify!(_zend_function__bindgen_ty_1),
10830            "::",
10831            stringify!(type_)
10832        )
10833    );
10834    assert_eq!(
10835        unsafe {
10836            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).arg_flags as *const _ as usize
10837        },
10838        1usize,
10839        concat!(
10840            "Offset of field: ",
10841            stringify!(_zend_function__bindgen_ty_1),
10842            "::",
10843            stringify!(arg_flags)
10844        )
10845    );
10846    assert_eq!(
10847        unsafe {
10848            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).fn_flags as *const _ as usize
10849        },
10850        4usize,
10851        concat!(
10852            "Offset of field: ",
10853            stringify!(_zend_function__bindgen_ty_1),
10854            "::",
10855            stringify!(fn_flags)
10856        )
10857    );
10858    assert_eq!(
10859        unsafe {
10860            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).function_name as *const _
10861                as usize
10862        },
10863        8usize,
10864        concat!(
10865            "Offset of field: ",
10866            stringify!(_zend_function__bindgen_ty_1),
10867            "::",
10868            stringify!(function_name)
10869        )
10870    );
10871    assert_eq!(
10872        unsafe {
10873            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).scope as *const _ as usize
10874        },
10875        16usize,
10876        concat!(
10877            "Offset of field: ",
10878            stringify!(_zend_function__bindgen_ty_1),
10879            "::",
10880            stringify!(scope)
10881        )
10882    );
10883    assert_eq!(
10884        unsafe {
10885            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).prototype as *const _ as usize
10886        },
10887        24usize,
10888        concat!(
10889            "Offset of field: ",
10890            stringify!(_zend_function__bindgen_ty_1),
10891            "::",
10892            stringify!(prototype)
10893        )
10894    );
10895    assert_eq!(
10896        unsafe {
10897            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).num_args as *const _ as usize
10898        },
10899        32usize,
10900        concat!(
10901            "Offset of field: ",
10902            stringify!(_zend_function__bindgen_ty_1),
10903            "::",
10904            stringify!(num_args)
10905        )
10906    );
10907    assert_eq!(
10908        unsafe {
10909            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).required_num_args as *const _
10910                as usize
10911        },
10912        36usize,
10913        concat!(
10914            "Offset of field: ",
10915            stringify!(_zend_function__bindgen_ty_1),
10916            "::",
10917            stringify!(required_num_args)
10918        )
10919    );
10920    assert_eq!(
10921        unsafe {
10922            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).arg_info as *const _ as usize
10923        },
10924        40usize,
10925        concat!(
10926            "Offset of field: ",
10927            stringify!(_zend_function__bindgen_ty_1),
10928            "::",
10929            stringify!(arg_info)
10930        )
10931    );
10932}
10933#[test]
10934fn bindgen_test_layout__zend_function() {
10935    assert_eq!(
10936        ::std::mem::size_of::<_zend_function>(),
10937        224usize,
10938        concat!("Size of: ", stringify!(_zend_function))
10939    );
10940    assert_eq!(
10941        ::std::mem::align_of::<_zend_function>(),
10942        8usize,
10943        concat!("Alignment of ", stringify!(_zend_function))
10944    );
10945    assert_eq!(
10946        unsafe { &(*(::std::ptr::null::<_zend_function>())).type_ as *const _ as usize },
10947        0usize,
10948        concat!(
10949            "Offset of field: ",
10950            stringify!(_zend_function),
10951            "::",
10952            stringify!(type_)
10953        )
10954    );
10955    assert_eq!(
10956        unsafe { &(*(::std::ptr::null::<_zend_function>())).quick_arg_flags as *const _ as usize },
10957        0usize,
10958        concat!(
10959            "Offset of field: ",
10960            stringify!(_zend_function),
10961            "::",
10962            stringify!(quick_arg_flags)
10963        )
10964    );
10965    assert_eq!(
10966        unsafe { &(*(::std::ptr::null::<_zend_function>())).common as *const _ as usize },
10967        0usize,
10968        concat!(
10969            "Offset of field: ",
10970            stringify!(_zend_function),
10971            "::",
10972            stringify!(common)
10973        )
10974    );
10975    assert_eq!(
10976        unsafe { &(*(::std::ptr::null::<_zend_function>())).op_array as *const _ as usize },
10977        0usize,
10978        concat!(
10979            "Offset of field: ",
10980            stringify!(_zend_function),
10981            "::",
10982            stringify!(op_array)
10983        )
10984    );
10985    assert_eq!(
10986        unsafe {
10987            &(*(::std::ptr::null::<_zend_function>())).internal_function as *const _ as usize
10988        },
10989        0usize,
10990        concat!(
10991            "Offset of field: ",
10992            stringify!(_zend_function),
10993            "::",
10994            stringify!(internal_function)
10995        )
10996    );
10997}
10998pub const _zend_call_kind_ZEND_CALL_NESTED_FUNCTION: _zend_call_kind = 0;
10999pub const _zend_call_kind_ZEND_CALL_NESTED_CODE: _zend_call_kind = 1;
11000pub const _zend_call_kind_ZEND_CALL_TOP_FUNCTION: _zend_call_kind = 2;
11001pub const _zend_call_kind_ZEND_CALL_TOP_CODE: _zend_call_kind = 3;
11002pub type _zend_call_kind = ::std::os::raw::c_uint;
11003pub use self::_zend_call_kind as zend_call_kind;
11004#[repr(C)]
11005#[derive(Copy, Clone)]
11006pub struct _zend_execute_data {
11007    pub opline: *const zend_op,
11008    pub call: *mut zend_execute_data,
11009    pub return_value: *mut zval,
11010    pub func: *mut zend_function,
11011    pub This: zval,
11012    pub prev_execute_data: *mut zend_execute_data,
11013    pub symbol_table: *mut zend_array,
11014    pub run_time_cache: *mut *mut ::std::os::raw::c_void,
11015    pub literals: *mut zval,
11016}
11017#[test]
11018fn bindgen_test_layout__zend_execute_data() {
11019    assert_eq!(
11020        ::std::mem::size_of::<_zend_execute_data>(),
11021        80usize,
11022        concat!("Size of: ", stringify!(_zend_execute_data))
11023    );
11024    assert_eq!(
11025        ::std::mem::align_of::<_zend_execute_data>(),
11026        8usize,
11027        concat!("Alignment of ", stringify!(_zend_execute_data))
11028    );
11029    assert_eq!(
11030        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).opline as *const _ as usize },
11031        0usize,
11032        concat!(
11033            "Offset of field: ",
11034            stringify!(_zend_execute_data),
11035            "::",
11036            stringify!(opline)
11037        )
11038    );
11039    assert_eq!(
11040        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).call as *const _ as usize },
11041        8usize,
11042        concat!(
11043            "Offset of field: ",
11044            stringify!(_zend_execute_data),
11045            "::",
11046            stringify!(call)
11047        )
11048    );
11049    assert_eq!(
11050        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).return_value as *const _ as usize },
11051        16usize,
11052        concat!(
11053            "Offset of field: ",
11054            stringify!(_zend_execute_data),
11055            "::",
11056            stringify!(return_value)
11057        )
11058    );
11059    assert_eq!(
11060        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).func as *const _ as usize },
11061        24usize,
11062        concat!(
11063            "Offset of field: ",
11064            stringify!(_zend_execute_data),
11065            "::",
11066            stringify!(func)
11067        )
11068    );
11069    assert_eq!(
11070        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).This as *const _ as usize },
11071        32usize,
11072        concat!(
11073            "Offset of field: ",
11074            stringify!(_zend_execute_data),
11075            "::",
11076            stringify!(This)
11077        )
11078    );
11079    assert_eq!(
11080        unsafe {
11081            &(*(::std::ptr::null::<_zend_execute_data>())).prev_execute_data as *const _ as usize
11082        },
11083        48usize,
11084        concat!(
11085            "Offset of field: ",
11086            stringify!(_zend_execute_data),
11087            "::",
11088            stringify!(prev_execute_data)
11089        )
11090    );
11091    assert_eq!(
11092        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).symbol_table as *const _ as usize },
11093        56usize,
11094        concat!(
11095            "Offset of field: ",
11096            stringify!(_zend_execute_data),
11097            "::",
11098            stringify!(symbol_table)
11099        )
11100    );
11101    assert_eq!(
11102        unsafe {
11103            &(*(::std::ptr::null::<_zend_execute_data>())).run_time_cache as *const _ as usize
11104        },
11105        64usize,
11106        concat!(
11107            "Offset of field: ",
11108            stringify!(_zend_execute_data),
11109            "::",
11110            stringify!(run_time_cache)
11111        )
11112    );
11113    assert_eq!(
11114        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).literals as *const _ as usize },
11115        72usize,
11116        concat!(
11117            "Offset of field: ",
11118            stringify!(_zend_execute_data),
11119            "::",
11120            stringify!(literals)
11121        )
11122    );
11123}
11124pub type __jmp_buf = [::std::os::raw::c_long; 8usize];
11125#[repr(C)]
11126#[derive(Debug, Copy, Clone)]
11127pub struct __jmp_buf_tag {
11128    pub __jmpbuf: __jmp_buf,
11129    pub __mask_was_saved: ::std::os::raw::c_int,
11130    pub __saved_mask: __sigset_t,
11131}
11132#[test]
11133fn bindgen_test_layout___jmp_buf_tag() {
11134    assert_eq!(
11135        ::std::mem::size_of::<__jmp_buf_tag>(),
11136        200usize,
11137        concat!("Size of: ", stringify!(__jmp_buf_tag))
11138    );
11139    assert_eq!(
11140        ::std::mem::align_of::<__jmp_buf_tag>(),
11141        8usize,
11142        concat!("Alignment of ", stringify!(__jmp_buf_tag))
11143    );
11144    assert_eq!(
11145        unsafe { &(*(::std::ptr::null::<__jmp_buf_tag>())).__jmpbuf as *const _ as usize },
11146        0usize,
11147        concat!(
11148            "Offset of field: ",
11149            stringify!(__jmp_buf_tag),
11150            "::",
11151            stringify!(__jmpbuf)
11152        )
11153    );
11154    assert_eq!(
11155        unsafe { &(*(::std::ptr::null::<__jmp_buf_tag>())).__mask_was_saved as *const _ as usize },
11156        64usize,
11157        concat!(
11158            "Offset of field: ",
11159            stringify!(__jmp_buf_tag),
11160            "::",
11161            stringify!(__mask_was_saved)
11162        )
11163    );
11164    assert_eq!(
11165        unsafe { &(*(::std::ptr::null::<__jmp_buf_tag>())).__saved_mask as *const _ as usize },
11166        72usize,
11167        concat!(
11168            "Offset of field: ",
11169            stringify!(__jmp_buf_tag),
11170            "::",
11171            stringify!(__saved_mask)
11172        )
11173    );
11174}
11175pub type jmp_buf = [__jmp_buf_tag; 1usize];
11176pub type zend_compiler_globals = _zend_compiler_globals;
11177pub type zend_executor_globals = _zend_executor_globals;
11178pub type zend_php_scanner_globals = _zend_php_scanner_globals;
11179pub type zend_ini_scanner_globals = _zend_ini_scanner_globals;
11180#[repr(C)]
11181#[derive(Copy, Clone)]
11182pub struct _zend_compiler_globals {
11183    pub loop_var_stack: zend_stack,
11184    pub active_class_entry: *mut zend_class_entry,
11185    pub compiled_filename: *mut zend_string,
11186    pub zend_lineno: ::std::os::raw::c_int,
11187    pub active_op_array: *mut zend_op_array,
11188    pub function_table: *mut HashTable,
11189    pub class_table: *mut HashTable,
11190    pub filenames_table: HashTable,
11191    pub auto_globals: *mut HashTable,
11192    pub parse_error: zend_bool,
11193    pub in_compilation: zend_bool,
11194    pub short_tags: zend_bool,
11195    pub unclean_shutdown: zend_bool,
11196    pub ini_parser_unbuffered_errors: zend_bool,
11197    pub open_files: zend_llist,
11198    pub ini_parser_param: *mut _zend_ini_parser_param,
11199    pub start_lineno: u32,
11200    pub increment_lineno: zend_bool,
11201    pub doc_comment: *mut zend_string,
11202    pub extra_fn_flags: u32,
11203    pub compiler_options: u32,
11204    pub context: zend_oparray_context,
11205    pub file_context: zend_file_context,
11206    pub arena: *mut zend_arena,
11207    pub interned_strings: HashTable,
11208    pub script_encoding_list: *mut *const zend_encoding,
11209    pub script_encoding_list_size: size_t,
11210    pub multibyte: zend_bool,
11211    pub detect_unicode: zend_bool,
11212    pub encoding_declared: zend_bool,
11213    pub ast: *mut zend_ast,
11214    pub ast_arena: *mut zend_arena,
11215    pub delayed_oplines_stack: zend_stack,
11216}
11217#[test]
11218fn bindgen_test_layout__zend_compiler_globals() {
11219    assert_eq!(
11220        ::std::mem::size_of::<_zend_compiler_globals>(),
11221        536usize,
11222        concat!("Size of: ", stringify!(_zend_compiler_globals))
11223    );
11224    assert_eq!(
11225        ::std::mem::align_of::<_zend_compiler_globals>(),
11226        8usize,
11227        concat!("Alignment of ", stringify!(_zend_compiler_globals))
11228    );
11229    assert_eq!(
11230        unsafe {
11231            &(*(::std::ptr::null::<_zend_compiler_globals>())).loop_var_stack as *const _ as usize
11232        },
11233        0usize,
11234        concat!(
11235            "Offset of field: ",
11236            stringify!(_zend_compiler_globals),
11237            "::",
11238            stringify!(loop_var_stack)
11239        )
11240    );
11241    assert_eq!(
11242        unsafe {
11243            &(*(::std::ptr::null::<_zend_compiler_globals>())).active_class_entry as *const _
11244                as usize
11245        },
11246        24usize,
11247        concat!(
11248            "Offset of field: ",
11249            stringify!(_zend_compiler_globals),
11250            "::",
11251            stringify!(active_class_entry)
11252        )
11253    );
11254    assert_eq!(
11255        unsafe {
11256            &(*(::std::ptr::null::<_zend_compiler_globals>())).compiled_filename as *const _
11257                as usize
11258        },
11259        32usize,
11260        concat!(
11261            "Offset of field: ",
11262            stringify!(_zend_compiler_globals),
11263            "::",
11264            stringify!(compiled_filename)
11265        )
11266    );
11267    assert_eq!(
11268        unsafe {
11269            &(*(::std::ptr::null::<_zend_compiler_globals>())).zend_lineno as *const _ as usize
11270        },
11271        40usize,
11272        concat!(
11273            "Offset of field: ",
11274            stringify!(_zend_compiler_globals),
11275            "::",
11276            stringify!(zend_lineno)
11277        )
11278    );
11279    assert_eq!(
11280        unsafe {
11281            &(*(::std::ptr::null::<_zend_compiler_globals>())).active_op_array as *const _ as usize
11282        },
11283        48usize,
11284        concat!(
11285            "Offset of field: ",
11286            stringify!(_zend_compiler_globals),
11287            "::",
11288            stringify!(active_op_array)
11289        )
11290    );
11291    assert_eq!(
11292        unsafe {
11293            &(*(::std::ptr::null::<_zend_compiler_globals>())).function_table as *const _ as usize
11294        },
11295        56usize,
11296        concat!(
11297            "Offset of field: ",
11298            stringify!(_zend_compiler_globals),
11299            "::",
11300            stringify!(function_table)
11301        )
11302    );
11303    assert_eq!(
11304        unsafe {
11305            &(*(::std::ptr::null::<_zend_compiler_globals>())).class_table as *const _ as usize
11306        },
11307        64usize,
11308        concat!(
11309            "Offset of field: ",
11310            stringify!(_zend_compiler_globals),
11311            "::",
11312            stringify!(class_table)
11313        )
11314    );
11315    assert_eq!(
11316        unsafe {
11317            &(*(::std::ptr::null::<_zend_compiler_globals>())).filenames_table as *const _ as usize
11318        },
11319        72usize,
11320        concat!(
11321            "Offset of field: ",
11322            stringify!(_zend_compiler_globals),
11323            "::",
11324            stringify!(filenames_table)
11325        )
11326    );
11327    assert_eq!(
11328        unsafe {
11329            &(*(::std::ptr::null::<_zend_compiler_globals>())).auto_globals as *const _ as usize
11330        },
11331        128usize,
11332        concat!(
11333            "Offset of field: ",
11334            stringify!(_zend_compiler_globals),
11335            "::",
11336            stringify!(auto_globals)
11337        )
11338    );
11339    assert_eq!(
11340        unsafe {
11341            &(*(::std::ptr::null::<_zend_compiler_globals>())).parse_error as *const _ as usize
11342        },
11343        136usize,
11344        concat!(
11345            "Offset of field: ",
11346            stringify!(_zend_compiler_globals),
11347            "::",
11348            stringify!(parse_error)
11349        )
11350    );
11351    assert_eq!(
11352        unsafe {
11353            &(*(::std::ptr::null::<_zend_compiler_globals>())).in_compilation as *const _ as usize
11354        },
11355        137usize,
11356        concat!(
11357            "Offset of field: ",
11358            stringify!(_zend_compiler_globals),
11359            "::",
11360            stringify!(in_compilation)
11361        )
11362    );
11363    assert_eq!(
11364        unsafe {
11365            &(*(::std::ptr::null::<_zend_compiler_globals>())).short_tags as *const _ as usize
11366        },
11367        138usize,
11368        concat!(
11369            "Offset of field: ",
11370            stringify!(_zend_compiler_globals),
11371            "::",
11372            stringify!(short_tags)
11373        )
11374    );
11375    assert_eq!(
11376        unsafe {
11377            &(*(::std::ptr::null::<_zend_compiler_globals>())).unclean_shutdown as *const _ as usize
11378        },
11379        139usize,
11380        concat!(
11381            "Offset of field: ",
11382            stringify!(_zend_compiler_globals),
11383            "::",
11384            stringify!(unclean_shutdown)
11385        )
11386    );
11387    assert_eq!(
11388        unsafe {
11389            &(*(::std::ptr::null::<_zend_compiler_globals>())).ini_parser_unbuffered_errors
11390                as *const _ as usize
11391        },
11392        140usize,
11393        concat!(
11394            "Offset of field: ",
11395            stringify!(_zend_compiler_globals),
11396            "::",
11397            stringify!(ini_parser_unbuffered_errors)
11398        )
11399    );
11400    assert_eq!(
11401        unsafe {
11402            &(*(::std::ptr::null::<_zend_compiler_globals>())).open_files as *const _ as usize
11403        },
11404        144usize,
11405        concat!(
11406            "Offset of field: ",
11407            stringify!(_zend_compiler_globals),
11408            "::",
11409            stringify!(open_files)
11410        )
11411    );
11412    assert_eq!(
11413        unsafe {
11414            &(*(::std::ptr::null::<_zend_compiler_globals>())).ini_parser_param as *const _ as usize
11415        },
11416        200usize,
11417        concat!(
11418            "Offset of field: ",
11419            stringify!(_zend_compiler_globals),
11420            "::",
11421            stringify!(ini_parser_param)
11422        )
11423    );
11424    assert_eq!(
11425        unsafe {
11426            &(*(::std::ptr::null::<_zend_compiler_globals>())).start_lineno as *const _ as usize
11427        },
11428        208usize,
11429        concat!(
11430            "Offset of field: ",
11431            stringify!(_zend_compiler_globals),
11432            "::",
11433            stringify!(start_lineno)
11434        )
11435    );
11436    assert_eq!(
11437        unsafe {
11438            &(*(::std::ptr::null::<_zend_compiler_globals>())).increment_lineno as *const _ as usize
11439        },
11440        212usize,
11441        concat!(
11442            "Offset of field: ",
11443            stringify!(_zend_compiler_globals),
11444            "::",
11445            stringify!(increment_lineno)
11446        )
11447    );
11448    assert_eq!(
11449        unsafe {
11450            &(*(::std::ptr::null::<_zend_compiler_globals>())).doc_comment as *const _ as usize
11451        },
11452        216usize,
11453        concat!(
11454            "Offset of field: ",
11455            stringify!(_zend_compiler_globals),
11456            "::",
11457            stringify!(doc_comment)
11458        )
11459    );
11460    assert_eq!(
11461        unsafe {
11462            &(*(::std::ptr::null::<_zend_compiler_globals>())).extra_fn_flags as *const _ as usize
11463        },
11464        224usize,
11465        concat!(
11466            "Offset of field: ",
11467            stringify!(_zend_compiler_globals),
11468            "::",
11469            stringify!(extra_fn_flags)
11470        )
11471    );
11472    assert_eq!(
11473        unsafe {
11474            &(*(::std::ptr::null::<_zend_compiler_globals>())).compiler_options as *const _ as usize
11475        },
11476        228usize,
11477        concat!(
11478            "Offset of field: ",
11479            stringify!(_zend_compiler_globals),
11480            "::",
11481            stringify!(compiler_options)
11482        )
11483    );
11484    assert_eq!(
11485        unsafe { &(*(::std::ptr::null::<_zend_compiler_globals>())).context as *const _ as usize },
11486        232usize,
11487        concat!(
11488            "Offset of field: ",
11489            stringify!(_zend_compiler_globals),
11490            "::",
11491            stringify!(context)
11492        )
11493    );
11494    assert_eq!(
11495        unsafe {
11496            &(*(::std::ptr::null::<_zend_compiler_globals>())).file_context as *const _ as usize
11497        },
11498        280usize,
11499        concat!(
11500            "Offset of field: ",
11501            stringify!(_zend_compiler_globals),
11502            "::",
11503            stringify!(file_context)
11504        )
11505    );
11506    assert_eq!(
11507        unsafe { &(*(::std::ptr::null::<_zend_compiler_globals>())).arena as *const _ as usize },
11508        408usize,
11509        concat!(
11510            "Offset of field: ",
11511            stringify!(_zend_compiler_globals),
11512            "::",
11513            stringify!(arena)
11514        )
11515    );
11516    assert_eq!(
11517        unsafe {
11518            &(*(::std::ptr::null::<_zend_compiler_globals>())).interned_strings as *const _ as usize
11519        },
11520        416usize,
11521        concat!(
11522            "Offset of field: ",
11523            stringify!(_zend_compiler_globals),
11524            "::",
11525            stringify!(interned_strings)
11526        )
11527    );
11528    assert_eq!(
11529        unsafe {
11530            &(*(::std::ptr::null::<_zend_compiler_globals>())).script_encoding_list as *const _
11531                as usize
11532        },
11533        472usize,
11534        concat!(
11535            "Offset of field: ",
11536            stringify!(_zend_compiler_globals),
11537            "::",
11538            stringify!(script_encoding_list)
11539        )
11540    );
11541    assert_eq!(
11542        unsafe {
11543            &(*(::std::ptr::null::<_zend_compiler_globals>())).script_encoding_list_size as *const _
11544                as usize
11545        },
11546        480usize,
11547        concat!(
11548            "Offset of field: ",
11549            stringify!(_zend_compiler_globals),
11550            "::",
11551            stringify!(script_encoding_list_size)
11552        )
11553    );
11554    assert_eq!(
11555        unsafe {
11556            &(*(::std::ptr::null::<_zend_compiler_globals>())).multibyte as *const _ as usize
11557        },
11558        488usize,
11559        concat!(
11560            "Offset of field: ",
11561            stringify!(_zend_compiler_globals),
11562            "::",
11563            stringify!(multibyte)
11564        )
11565    );
11566    assert_eq!(
11567        unsafe {
11568            &(*(::std::ptr::null::<_zend_compiler_globals>())).detect_unicode as *const _ as usize
11569        },
11570        489usize,
11571        concat!(
11572            "Offset of field: ",
11573            stringify!(_zend_compiler_globals),
11574            "::",
11575            stringify!(detect_unicode)
11576        )
11577    );
11578    assert_eq!(
11579        unsafe {
11580            &(*(::std::ptr::null::<_zend_compiler_globals>())).encoding_declared as *const _
11581                as usize
11582        },
11583        490usize,
11584        concat!(
11585            "Offset of field: ",
11586            stringify!(_zend_compiler_globals),
11587            "::",
11588            stringify!(encoding_declared)
11589        )
11590    );
11591    assert_eq!(
11592        unsafe { &(*(::std::ptr::null::<_zend_compiler_globals>())).ast as *const _ as usize },
11593        496usize,
11594        concat!(
11595            "Offset of field: ",
11596            stringify!(_zend_compiler_globals),
11597            "::",
11598            stringify!(ast)
11599        )
11600    );
11601    assert_eq!(
11602        unsafe {
11603            &(*(::std::ptr::null::<_zend_compiler_globals>())).ast_arena as *const _ as usize
11604        },
11605        504usize,
11606        concat!(
11607            "Offset of field: ",
11608            stringify!(_zend_compiler_globals),
11609            "::",
11610            stringify!(ast_arena)
11611        )
11612    );
11613    assert_eq!(
11614        unsafe {
11615            &(*(::std::ptr::null::<_zend_compiler_globals>())).delayed_oplines_stack as *const _
11616                as usize
11617        },
11618        512usize,
11619        concat!(
11620            "Offset of field: ",
11621            stringify!(_zend_compiler_globals),
11622            "::",
11623            stringify!(delayed_oplines_stack)
11624        )
11625    );
11626}
11627extern "C" {
11628    pub static mut compiler_globals: _zend_compiler_globals;
11629}
11630extern "C" {
11631    pub fn zendparse() -> ::std::os::raw::c_int;
11632}
11633extern "C" {
11634    pub static mut executor_globals: zend_executor_globals;
11635}
11636extern "C" {
11637    pub static mut language_scanner_globals: zend_php_scanner_globals;
11638}
11639extern "C" {
11640    pub static mut ini_scanner_globals: zend_ini_scanner_globals;
11641}
11642#[repr(C)]
11643#[derive(Debug, Copy, Clone)]
11644pub struct _zend_stack {
11645    pub size: ::std::os::raw::c_int,
11646    pub top: ::std::os::raw::c_int,
11647    pub max: ::std::os::raw::c_int,
11648    pub elements: *mut ::std::os::raw::c_void,
11649}
11650#[test]
11651fn bindgen_test_layout__zend_stack() {
11652    assert_eq!(
11653        ::std::mem::size_of::<_zend_stack>(),
11654        24usize,
11655        concat!("Size of: ", stringify!(_zend_stack))
11656    );
11657    assert_eq!(
11658        ::std::mem::align_of::<_zend_stack>(),
11659        8usize,
11660        concat!("Alignment of ", stringify!(_zend_stack))
11661    );
11662    assert_eq!(
11663        unsafe { &(*(::std::ptr::null::<_zend_stack>())).size as *const _ as usize },
11664        0usize,
11665        concat!(
11666            "Offset of field: ",
11667            stringify!(_zend_stack),
11668            "::",
11669            stringify!(size)
11670        )
11671    );
11672    assert_eq!(
11673        unsafe { &(*(::std::ptr::null::<_zend_stack>())).top as *const _ as usize },
11674        4usize,
11675        concat!(
11676            "Offset of field: ",
11677            stringify!(_zend_stack),
11678            "::",
11679            stringify!(top)
11680        )
11681    );
11682    assert_eq!(
11683        unsafe { &(*(::std::ptr::null::<_zend_stack>())).max as *const _ as usize },
11684        8usize,
11685        concat!(
11686            "Offset of field: ",
11687            stringify!(_zend_stack),
11688            "::",
11689            stringify!(max)
11690        )
11691    );
11692    assert_eq!(
11693        unsafe { &(*(::std::ptr::null::<_zend_stack>())).elements as *const _ as usize },
11694        16usize,
11695        concat!(
11696            "Offset of field: ",
11697            stringify!(_zend_stack),
11698            "::",
11699            stringify!(elements)
11700        )
11701    );
11702}
11703pub type zend_stack = _zend_stack;
11704extern "C" {
11705    pub fn zend_stack_init(
11706        stack: *mut zend_stack,
11707        size: ::std::os::raw::c_int,
11708    ) -> ::std::os::raw::c_int;
11709}
11710extern "C" {
11711    pub fn zend_stack_push(
11712        stack: *mut zend_stack,
11713        element: *const ::std::os::raw::c_void,
11714    ) -> ::std::os::raw::c_int;
11715}
11716extern "C" {
11717    pub fn zend_stack_top(stack: *const zend_stack) -> *mut ::std::os::raw::c_void;
11718}
11719extern "C" {
11720    pub fn zend_stack_del_top(stack: *mut zend_stack) -> ::std::os::raw::c_int;
11721}
11722extern "C" {
11723    pub fn zend_stack_int_top(stack: *const zend_stack) -> ::std::os::raw::c_int;
11724}
11725extern "C" {
11726    pub fn zend_stack_is_empty(stack: *const zend_stack) -> ::std::os::raw::c_int;
11727}
11728extern "C" {
11729    pub fn zend_stack_destroy(stack: *mut zend_stack) -> ::std::os::raw::c_int;
11730}
11731extern "C" {
11732    pub fn zend_stack_base(stack: *const zend_stack) -> *mut ::std::os::raw::c_void;
11733}
11734extern "C" {
11735    pub fn zend_stack_count(stack: *const zend_stack) -> ::std::os::raw::c_int;
11736}
11737extern "C" {
11738    pub fn zend_stack_apply(
11739        stack: *mut zend_stack,
11740        type_: ::std::os::raw::c_int,
11741        apply_function: ::std::option::Option<
11742            unsafe extern "C" fn(element: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
11743        >,
11744    );
11745}
11746extern "C" {
11747    pub fn zend_stack_apply_with_argument(
11748        stack: *mut zend_stack,
11749        type_: ::std::os::raw::c_int,
11750        apply_function: ::std::option::Option<
11751            unsafe extern "C" fn(
11752                element: *mut ::std::os::raw::c_void,
11753                arg: *mut ::std::os::raw::c_void,
11754            ) -> ::std::os::raw::c_int,
11755        >,
11756        arg: *mut ::std::os::raw::c_void,
11757    );
11758}
11759extern "C" {
11760    pub fn zend_stack_clean(
11761        stack: *mut zend_stack,
11762        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
11763        free_elements: zend_bool,
11764    );
11765}
11766#[repr(C)]
11767#[derive(Debug, Copy, Clone)]
11768pub struct _zend_ptr_stack {
11769    pub top: ::std::os::raw::c_int,
11770    pub max: ::std::os::raw::c_int,
11771    pub elements: *mut *mut ::std::os::raw::c_void,
11772    pub top_element: *mut *mut ::std::os::raw::c_void,
11773    pub persistent: zend_bool,
11774}
11775#[test]
11776fn bindgen_test_layout__zend_ptr_stack() {
11777    assert_eq!(
11778        ::std::mem::size_of::<_zend_ptr_stack>(),
11779        32usize,
11780        concat!("Size of: ", stringify!(_zend_ptr_stack))
11781    );
11782    assert_eq!(
11783        ::std::mem::align_of::<_zend_ptr_stack>(),
11784        8usize,
11785        concat!("Alignment of ", stringify!(_zend_ptr_stack))
11786    );
11787    assert_eq!(
11788        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).top as *const _ as usize },
11789        0usize,
11790        concat!(
11791            "Offset of field: ",
11792            stringify!(_zend_ptr_stack),
11793            "::",
11794            stringify!(top)
11795        )
11796    );
11797    assert_eq!(
11798        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).max as *const _ as usize },
11799        4usize,
11800        concat!(
11801            "Offset of field: ",
11802            stringify!(_zend_ptr_stack),
11803            "::",
11804            stringify!(max)
11805        )
11806    );
11807    assert_eq!(
11808        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).elements as *const _ as usize },
11809        8usize,
11810        concat!(
11811            "Offset of field: ",
11812            stringify!(_zend_ptr_stack),
11813            "::",
11814            stringify!(elements)
11815        )
11816    );
11817    assert_eq!(
11818        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).top_element as *const _ as usize },
11819        16usize,
11820        concat!(
11821            "Offset of field: ",
11822            stringify!(_zend_ptr_stack),
11823            "::",
11824            stringify!(top_element)
11825        )
11826    );
11827    assert_eq!(
11828        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).persistent as *const _ as usize },
11829        24usize,
11830        concat!(
11831            "Offset of field: ",
11832            stringify!(_zend_ptr_stack),
11833            "::",
11834            stringify!(persistent)
11835        )
11836    );
11837}
11838pub type zend_ptr_stack = _zend_ptr_stack;
11839extern "C" {
11840    pub fn zend_ptr_stack_init(stack: *mut zend_ptr_stack);
11841}
11842extern "C" {
11843    pub fn zend_ptr_stack_init_ex(stack: *mut zend_ptr_stack, persistent: zend_bool);
11844}
11845extern "C" {
11846    pub fn zend_ptr_stack_n_push(stack: *mut zend_ptr_stack, count: ::std::os::raw::c_int, ...);
11847}
11848extern "C" {
11849    pub fn zend_ptr_stack_n_pop(stack: *mut zend_ptr_stack, count: ::std::os::raw::c_int, ...);
11850}
11851extern "C" {
11852    pub fn zend_ptr_stack_destroy(stack: *mut zend_ptr_stack);
11853}
11854extern "C" {
11855    pub fn zend_ptr_stack_apply(
11856        stack: *mut zend_ptr_stack,
11857        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
11858    );
11859}
11860extern "C" {
11861    pub fn zend_ptr_stack_clean(
11862        stack: *mut zend_ptr_stack,
11863        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
11864        free_elements: zend_bool,
11865    );
11866}
11867extern "C" {
11868    pub fn zend_ptr_stack_num_elements(stack: *mut zend_ptr_stack) -> ::std::os::raw::c_int;
11869}
11870extern "C" {
11871    pub fn zend_object_std_init(object: *mut zend_object, ce: *mut zend_class_entry);
11872}
11873extern "C" {
11874    pub fn zend_object_std_dtor(object: *mut zend_object);
11875}
11876extern "C" {
11877    pub fn zend_objects_new(ce: *mut zend_class_entry) -> *mut zend_object;
11878}
11879extern "C" {
11880    pub fn zend_objects_destroy_object(object: *mut zend_object);
11881}
11882extern "C" {
11883    pub fn zend_objects_clone_members(new_object: *mut zend_object, old_object: *mut zend_object);
11884}
11885extern "C" {
11886    pub fn zend_objects_clone_obj(object: *mut zval) -> *mut zend_object;
11887}
11888#[repr(C)]
11889#[derive(Debug, Copy, Clone)]
11890pub struct _zend_objects_store {
11891    pub object_buckets: *mut *mut zend_object,
11892    pub top: u32,
11893    pub size: u32,
11894    pub free_list_head: ::std::os::raw::c_int,
11895}
11896#[test]
11897fn bindgen_test_layout__zend_objects_store() {
11898    assert_eq!(
11899        ::std::mem::size_of::<_zend_objects_store>(),
11900        24usize,
11901        concat!("Size of: ", stringify!(_zend_objects_store))
11902    );
11903    assert_eq!(
11904        ::std::mem::align_of::<_zend_objects_store>(),
11905        8usize,
11906        concat!("Alignment of ", stringify!(_zend_objects_store))
11907    );
11908    assert_eq!(
11909        unsafe {
11910            &(*(::std::ptr::null::<_zend_objects_store>())).object_buckets as *const _ as usize
11911        },
11912        0usize,
11913        concat!(
11914            "Offset of field: ",
11915            stringify!(_zend_objects_store),
11916            "::",
11917            stringify!(object_buckets)
11918        )
11919    );
11920    assert_eq!(
11921        unsafe { &(*(::std::ptr::null::<_zend_objects_store>())).top as *const _ as usize },
11922        8usize,
11923        concat!(
11924            "Offset of field: ",
11925            stringify!(_zend_objects_store),
11926            "::",
11927            stringify!(top)
11928        )
11929    );
11930    assert_eq!(
11931        unsafe { &(*(::std::ptr::null::<_zend_objects_store>())).size as *const _ as usize },
11932        12usize,
11933        concat!(
11934            "Offset of field: ",
11935            stringify!(_zend_objects_store),
11936            "::",
11937            stringify!(size)
11938        )
11939    );
11940    assert_eq!(
11941        unsafe {
11942            &(*(::std::ptr::null::<_zend_objects_store>())).free_list_head as *const _ as usize
11943        },
11944        16usize,
11945        concat!(
11946            "Offset of field: ",
11947            stringify!(_zend_objects_store),
11948            "::",
11949            stringify!(free_list_head)
11950        )
11951    );
11952}
11953pub type zend_objects_store = _zend_objects_store;
11954extern "C" {
11955    pub fn zend_objects_store_init(objects: *mut zend_objects_store, init_size: u32);
11956}
11957extern "C" {
11958    pub fn zend_objects_store_call_destructors(objects: *mut zend_objects_store);
11959}
11960extern "C" {
11961    pub fn zend_objects_store_mark_destructed(objects: *mut zend_objects_store);
11962}
11963extern "C" {
11964    pub fn zend_objects_store_free_object_storage(
11965        objects: *mut zend_objects_store,
11966        fast_shutdown: zend_bool,
11967    );
11968}
11969extern "C" {
11970    pub fn zend_objects_store_destroy(objects: *mut zend_objects_store);
11971}
11972extern "C" {
11973    pub fn zend_objects_store_put(object: *mut zend_object);
11974}
11975extern "C" {
11976    pub fn zend_objects_store_del(object: *mut zend_object);
11977}
11978extern "C" {
11979    pub fn zend_get_std_object_handlers() -> *mut zend_object_handlers;
11980}
11981extern "C" {
11982    pub fn zend_init_fpu();
11983}
11984extern "C" {
11985    pub fn zend_shutdown_fpu();
11986}
11987extern "C" {
11988    pub fn zend_ensure_fpu_mode();
11989}
11990pub type fpu_control_t = ::std::os::raw::c_ushort;
11991#[repr(C)]
11992#[derive(Debug, Copy, Clone)]
11993pub struct _zend_encoding {
11994    _unused: [u8; 0],
11995}
11996pub type zend_encoding = _zend_encoding;
11997pub type zend_encoding_filter = ::std::option::Option<
11998    unsafe extern "C" fn(
11999        str_: *mut *mut ::std::os::raw::c_uchar,
12000        str_length: *mut size_t,
12001        buf: *const ::std::os::raw::c_uchar,
12002        length: size_t,
12003    ) -> size_t,
12004>;
12005pub type zend_encoding_fetcher = ::std::option::Option<
12006    unsafe extern "C" fn(encoding_name: *const ::std::os::raw::c_char) -> *const zend_encoding,
12007>;
12008pub type zend_encoding_name_getter = ::std::option::Option<
12009    unsafe extern "C" fn(encoding: *const zend_encoding) -> *const ::std::os::raw::c_char,
12010>;
12011pub type zend_encoding_lexer_compatibility_checker = ::std::option::Option<
12012    unsafe extern "C" fn(encoding: *const zend_encoding) -> ::std::os::raw::c_int,
12013>;
12014pub type zend_encoding_detector = ::std::option::Option<
12015    unsafe extern "C" fn(
12016        string: *const ::std::os::raw::c_uchar,
12017        length: size_t,
12018        list: *mut *const zend_encoding,
12019        list_size: size_t,
12020    ) -> *const zend_encoding,
12021>;
12022pub type zend_encoding_converter = ::std::option::Option<
12023    unsafe extern "C" fn(
12024        to: *mut *mut ::std::os::raw::c_uchar,
12025        to_length: *mut size_t,
12026        from: *const ::std::os::raw::c_uchar,
12027        from_length: size_t,
12028        encoding_to: *const zend_encoding,
12029        encoding_from: *const zend_encoding,
12030    ) -> size_t,
12031>;
12032pub type zend_encoding_list_parser = ::std::option::Option<
12033    unsafe extern "C" fn(
12034        encoding_list: *const ::std::os::raw::c_char,
12035        encoding_list_len: size_t,
12036        return_list: *mut *mut *const zend_encoding,
12037        return_size: *mut size_t,
12038        persistent: ::std::os::raw::c_int,
12039    ) -> ::std::os::raw::c_int,
12040>;
12041pub type zend_encoding_internal_encoding_getter =
12042    ::std::option::Option<unsafe extern "C" fn() -> *const zend_encoding>;
12043pub type zend_encoding_internal_encoding_setter = ::std::option::Option<
12044    unsafe extern "C" fn(encoding: *const zend_encoding) -> ::std::os::raw::c_int,
12045>;
12046#[repr(C)]
12047#[derive(Debug, Copy, Clone)]
12048pub struct _zend_multibyte_functions {
12049    pub provider_name: *const ::std::os::raw::c_char,
12050    pub encoding_fetcher: zend_encoding_fetcher,
12051    pub encoding_name_getter: zend_encoding_name_getter,
12052    pub lexer_compatibility_checker: zend_encoding_lexer_compatibility_checker,
12053    pub encoding_detector: zend_encoding_detector,
12054    pub encoding_converter: zend_encoding_converter,
12055    pub encoding_list_parser: zend_encoding_list_parser,
12056    pub internal_encoding_getter: zend_encoding_internal_encoding_getter,
12057    pub internal_encoding_setter: zend_encoding_internal_encoding_setter,
12058}
12059#[test]
12060fn bindgen_test_layout__zend_multibyte_functions() {
12061    assert_eq!(
12062        ::std::mem::size_of::<_zend_multibyte_functions>(),
12063        72usize,
12064        concat!("Size of: ", stringify!(_zend_multibyte_functions))
12065    );
12066    assert_eq!(
12067        ::std::mem::align_of::<_zend_multibyte_functions>(),
12068        8usize,
12069        concat!("Alignment of ", stringify!(_zend_multibyte_functions))
12070    );
12071    assert_eq!(
12072        unsafe {
12073            &(*(::std::ptr::null::<_zend_multibyte_functions>())).provider_name as *const _ as usize
12074        },
12075        0usize,
12076        concat!(
12077            "Offset of field: ",
12078            stringify!(_zend_multibyte_functions),
12079            "::",
12080            stringify!(provider_name)
12081        )
12082    );
12083    assert_eq!(
12084        unsafe {
12085            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_fetcher as *const _
12086                as usize
12087        },
12088        8usize,
12089        concat!(
12090            "Offset of field: ",
12091            stringify!(_zend_multibyte_functions),
12092            "::",
12093            stringify!(encoding_fetcher)
12094        )
12095    );
12096    assert_eq!(
12097        unsafe {
12098            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_name_getter as *const _
12099                as usize
12100        },
12101        16usize,
12102        concat!(
12103            "Offset of field: ",
12104            stringify!(_zend_multibyte_functions),
12105            "::",
12106            stringify!(encoding_name_getter)
12107        )
12108    );
12109    assert_eq!(
12110        unsafe {
12111            &(*(::std::ptr::null::<_zend_multibyte_functions>())).lexer_compatibility_checker
12112                as *const _ as usize
12113        },
12114        24usize,
12115        concat!(
12116            "Offset of field: ",
12117            stringify!(_zend_multibyte_functions),
12118            "::",
12119            stringify!(lexer_compatibility_checker)
12120        )
12121    );
12122    assert_eq!(
12123        unsafe {
12124            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_detector as *const _
12125                as usize
12126        },
12127        32usize,
12128        concat!(
12129            "Offset of field: ",
12130            stringify!(_zend_multibyte_functions),
12131            "::",
12132            stringify!(encoding_detector)
12133        )
12134    );
12135    assert_eq!(
12136        unsafe {
12137            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_converter as *const _
12138                as usize
12139        },
12140        40usize,
12141        concat!(
12142            "Offset of field: ",
12143            stringify!(_zend_multibyte_functions),
12144            "::",
12145            stringify!(encoding_converter)
12146        )
12147    );
12148    assert_eq!(
12149        unsafe {
12150            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_list_parser as *const _
12151                as usize
12152        },
12153        48usize,
12154        concat!(
12155            "Offset of field: ",
12156            stringify!(_zend_multibyte_functions),
12157            "::",
12158            stringify!(encoding_list_parser)
12159        )
12160    );
12161    assert_eq!(
12162        unsafe {
12163            &(*(::std::ptr::null::<_zend_multibyte_functions>())).internal_encoding_getter
12164                as *const _ as usize
12165        },
12166        56usize,
12167        concat!(
12168            "Offset of field: ",
12169            stringify!(_zend_multibyte_functions),
12170            "::",
12171            stringify!(internal_encoding_getter)
12172        )
12173    );
12174    assert_eq!(
12175        unsafe {
12176            &(*(::std::ptr::null::<_zend_multibyte_functions>())).internal_encoding_setter
12177                as *const _ as usize
12178        },
12179        64usize,
12180        concat!(
12181            "Offset of field: ",
12182            stringify!(_zend_multibyte_functions),
12183            "::",
12184            stringify!(internal_encoding_setter)
12185        )
12186    );
12187}
12188pub type zend_multibyte_functions = _zend_multibyte_functions;
12189extern "C" {
12190    pub static mut zend_multibyte_encoding_utf32be: *const zend_encoding;
12191}
12192extern "C" {
12193    pub static mut zend_multibyte_encoding_utf32le: *const zend_encoding;
12194}
12195extern "C" {
12196    pub static mut zend_multibyte_encoding_utf16be: *const zend_encoding;
12197}
12198extern "C" {
12199    pub static mut zend_multibyte_encoding_utf16le: *const zend_encoding;
12200}
12201extern "C" {
12202    pub static mut zend_multibyte_encoding_utf8: *const zend_encoding;
12203}
12204extern "C" {
12205    pub fn zend_multibyte_set_functions(
12206        functions: *const zend_multibyte_functions,
12207    ) -> ::std::os::raw::c_int;
12208}
12209extern "C" {
12210    pub fn zend_multibyte_restore_functions();
12211}
12212extern "C" {
12213    pub fn zend_multibyte_get_functions() -> *const zend_multibyte_functions;
12214}
12215extern "C" {
12216    pub fn zend_multibyte_fetch_encoding(
12217        name: *const ::std::os::raw::c_char,
12218    ) -> *const zend_encoding;
12219}
12220extern "C" {
12221    pub fn zend_multibyte_get_encoding_name(
12222        encoding: *const zend_encoding,
12223    ) -> *const ::std::os::raw::c_char;
12224}
12225extern "C" {
12226    pub fn zend_multibyte_check_lexer_compatibility(
12227        encoding: *const zend_encoding,
12228    ) -> ::std::os::raw::c_int;
12229}
12230extern "C" {
12231    pub fn zend_multibyte_encoding_detector(
12232        string: *const ::std::os::raw::c_uchar,
12233        length: size_t,
12234        list: *mut *const zend_encoding,
12235        list_size: size_t,
12236    ) -> *const zend_encoding;
12237}
12238extern "C" {
12239    pub fn zend_multibyte_encoding_converter(
12240        to: *mut *mut ::std::os::raw::c_uchar,
12241        to_length: *mut size_t,
12242        from: *const ::std::os::raw::c_uchar,
12243        from_length: size_t,
12244        encoding_to: *const zend_encoding,
12245        encoding_from: *const zend_encoding,
12246    ) -> size_t;
12247}
12248extern "C" {
12249    pub fn zend_multibyte_parse_encoding_list(
12250        encoding_list: *const ::std::os::raw::c_char,
12251        encoding_list_len: size_t,
12252        return_list: *mut *mut *const zend_encoding,
12253        return_size: *mut size_t,
12254        persistent: ::std::os::raw::c_int,
12255    ) -> ::std::os::raw::c_int;
12256}
12257extern "C" {
12258    pub fn zend_multibyte_get_internal_encoding() -> *const zend_encoding;
12259}
12260extern "C" {
12261    pub fn zend_multibyte_get_script_encoding() -> *const zend_encoding;
12262}
12263extern "C" {
12264    pub fn zend_multibyte_set_script_encoding(
12265        encoding_list: *mut *const zend_encoding,
12266        encoding_list_size: size_t,
12267    ) -> ::std::os::raw::c_int;
12268}
12269extern "C" {
12270    pub fn zend_multibyte_set_internal_encoding(
12271        encoding: *const zend_encoding,
12272    ) -> ::std::os::raw::c_int;
12273}
12274extern "C" {
12275    pub fn zend_multibyte_set_script_encoding_by_string(
12276        new_value: *const ::std::os::raw::c_char,
12277        new_value_length: size_t,
12278    ) -> ::std::os::raw::c_int;
12279}
12280pub type zend_arena = _zend_arena;
12281#[repr(C)]
12282#[derive(Debug, Copy, Clone)]
12283pub struct _zend_arena {
12284    pub ptr: *mut ::std::os::raw::c_char,
12285    pub end: *mut ::std::os::raw::c_char,
12286    pub prev: *mut zend_arena,
12287}
12288#[test]
12289fn bindgen_test_layout__zend_arena() {
12290    assert_eq!(
12291        ::std::mem::size_of::<_zend_arena>(),
12292        24usize,
12293        concat!("Size of: ", stringify!(_zend_arena))
12294    );
12295    assert_eq!(
12296        ::std::mem::align_of::<_zend_arena>(),
12297        8usize,
12298        concat!("Alignment of ", stringify!(_zend_arena))
12299    );
12300    assert_eq!(
12301        unsafe { &(*(::std::ptr::null::<_zend_arena>())).ptr as *const _ as usize },
12302        0usize,
12303        concat!(
12304            "Offset of field: ",
12305            stringify!(_zend_arena),
12306            "::",
12307            stringify!(ptr)
12308        )
12309    );
12310    assert_eq!(
12311        unsafe { &(*(::std::ptr::null::<_zend_arena>())).end as *const _ as usize },
12312        8usize,
12313        concat!(
12314            "Offset of field: ",
12315            stringify!(_zend_arena),
12316            "::",
12317            stringify!(end)
12318        )
12319    );
12320    assert_eq!(
12321        unsafe { &(*(::std::ptr::null::<_zend_arena>())).prev as *const _ as usize },
12322        16usize,
12323        concat!(
12324            "Offset of field: ",
12325            stringify!(_zend_arena),
12326            "::",
12327            stringify!(prev)
12328        )
12329    );
12330}
12331pub type zend_vm_stack = *mut _zend_vm_stack;
12332pub type zend_ini_entry = _zend_ini_entry;
12333#[repr(C)]
12334#[derive(Copy, Clone)]
12335pub struct _zend_executor_globals {
12336    pub uninitialized_zval: zval,
12337    pub error_zval: zval,
12338    pub symtable_cache: [*mut zend_array; 32usize],
12339    pub symtable_cache_limit: *mut *mut zend_array,
12340    pub symtable_cache_ptr: *mut *mut zend_array,
12341    pub symbol_table: zend_array,
12342    pub included_files: HashTable,
12343    pub bailout: *mut jmp_buf,
12344    pub error_reporting: ::std::os::raw::c_int,
12345    pub exit_status: ::std::os::raw::c_int,
12346    pub function_table: *mut HashTable,
12347    pub class_table: *mut HashTable,
12348    pub zend_constants: *mut HashTable,
12349    pub vm_stack_top: *mut zval,
12350    pub vm_stack_end: *mut zval,
12351    pub vm_stack: zend_vm_stack,
12352    pub current_execute_data: *mut _zend_execute_data,
12353    pub fake_scope: *mut zend_class_entry,
12354    pub precision: zend_long,
12355    pub ticks_count: ::std::os::raw::c_int,
12356    pub in_autoload: *mut HashTable,
12357    pub autoload_func: *mut zend_function,
12358    pub full_tables_cleanup: zend_bool,
12359    pub no_extensions: zend_bool,
12360    pub vm_interrupt: zend_bool,
12361    pub timed_out: zend_bool,
12362    pub hard_timeout: zend_long,
12363    pub regular_list: HashTable,
12364    pub persistent_list: HashTable,
12365    pub user_error_handler_error_reporting: ::std::os::raw::c_int,
12366    pub user_error_handler: zval,
12367    pub user_exception_handler: zval,
12368    pub user_error_handlers_error_reporting: zend_stack,
12369    pub user_error_handlers: zend_stack,
12370    pub user_exception_handlers: zend_stack,
12371    pub error_handling: zend_error_handling_t,
12372    pub exception_class: *mut zend_class_entry,
12373    pub timeout_seconds: zend_long,
12374    pub lambda_count: ::std::os::raw::c_int,
12375    pub ini_directives: *mut HashTable,
12376    pub modified_ini_directives: *mut HashTable,
12377    pub error_reporting_ini_entry: *mut zend_ini_entry,
12378    pub objects_store: zend_objects_store,
12379    pub exception: *mut zend_object,
12380    pub prev_exception: *mut zend_object,
12381    pub opline_before_exception: *const zend_op,
12382    pub exception_op: [zend_op; 3usize],
12383    pub current_module: *mut _zend_module_entry,
12384    pub active: zend_bool,
12385    pub flags: zend_uchar,
12386    pub assertions: zend_long,
12387    pub ht_iterators_count: u32,
12388    pub ht_iterators_used: u32,
12389    pub ht_iterators: *mut HashTableIterator,
12390    pub ht_iterators_slots: [HashTableIterator; 16usize],
12391    pub saved_fpu_cw_ptr: *mut ::std::os::raw::c_void,
12392    pub saved_fpu_cw: fpu_control_t,
12393    pub trampoline: zend_function,
12394    pub call_trampoline_op: zend_op,
12395    pub each_deprecation_thrown: zend_bool,
12396    pub reserved: [*mut ::std::os::raw::c_void; 6usize],
12397}
12398#[test]
12399fn bindgen_test_layout__zend_executor_globals() {
12400    assert_eq!(
12401        ::std::mem::size_of::<_zend_executor_globals>(),
12402        1592usize,
12403        concat!("Size of: ", stringify!(_zend_executor_globals))
12404    );
12405    assert_eq!(
12406        ::std::mem::align_of::<_zend_executor_globals>(),
12407        8usize,
12408        concat!("Alignment of ", stringify!(_zend_executor_globals))
12409    );
12410    assert_eq!(
12411        unsafe {
12412            &(*(::std::ptr::null::<_zend_executor_globals>())).uninitialized_zval as *const _
12413                as usize
12414        },
12415        0usize,
12416        concat!(
12417            "Offset of field: ",
12418            stringify!(_zend_executor_globals),
12419            "::",
12420            stringify!(uninitialized_zval)
12421        )
12422    );
12423    assert_eq!(
12424        unsafe {
12425            &(*(::std::ptr::null::<_zend_executor_globals>())).error_zval as *const _ as usize
12426        },
12427        16usize,
12428        concat!(
12429            "Offset of field: ",
12430            stringify!(_zend_executor_globals),
12431            "::",
12432            stringify!(error_zval)
12433        )
12434    );
12435    assert_eq!(
12436        unsafe {
12437            &(*(::std::ptr::null::<_zend_executor_globals>())).symtable_cache as *const _ as usize
12438        },
12439        32usize,
12440        concat!(
12441            "Offset of field: ",
12442            stringify!(_zend_executor_globals),
12443            "::",
12444            stringify!(symtable_cache)
12445        )
12446    );
12447    assert_eq!(
12448        unsafe {
12449            &(*(::std::ptr::null::<_zend_executor_globals>())).symtable_cache_limit as *const _
12450                as usize
12451        },
12452        288usize,
12453        concat!(
12454            "Offset of field: ",
12455            stringify!(_zend_executor_globals),
12456            "::",
12457            stringify!(symtable_cache_limit)
12458        )
12459    );
12460    assert_eq!(
12461        unsafe {
12462            &(*(::std::ptr::null::<_zend_executor_globals>())).symtable_cache_ptr as *const _
12463                as usize
12464        },
12465        296usize,
12466        concat!(
12467            "Offset of field: ",
12468            stringify!(_zend_executor_globals),
12469            "::",
12470            stringify!(symtable_cache_ptr)
12471        )
12472    );
12473    assert_eq!(
12474        unsafe {
12475            &(*(::std::ptr::null::<_zend_executor_globals>())).symbol_table as *const _ as usize
12476        },
12477        304usize,
12478        concat!(
12479            "Offset of field: ",
12480            stringify!(_zend_executor_globals),
12481            "::",
12482            stringify!(symbol_table)
12483        )
12484    );
12485    assert_eq!(
12486        unsafe {
12487            &(*(::std::ptr::null::<_zend_executor_globals>())).included_files as *const _ as usize
12488        },
12489        360usize,
12490        concat!(
12491            "Offset of field: ",
12492            stringify!(_zend_executor_globals),
12493            "::",
12494            stringify!(included_files)
12495        )
12496    );
12497    assert_eq!(
12498        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).bailout as *const _ as usize },
12499        416usize,
12500        concat!(
12501            "Offset of field: ",
12502            stringify!(_zend_executor_globals),
12503            "::",
12504            stringify!(bailout)
12505        )
12506    );
12507    assert_eq!(
12508        unsafe {
12509            &(*(::std::ptr::null::<_zend_executor_globals>())).error_reporting as *const _ as usize
12510        },
12511        424usize,
12512        concat!(
12513            "Offset of field: ",
12514            stringify!(_zend_executor_globals),
12515            "::",
12516            stringify!(error_reporting)
12517        )
12518    );
12519    assert_eq!(
12520        unsafe {
12521            &(*(::std::ptr::null::<_zend_executor_globals>())).exit_status as *const _ as usize
12522        },
12523        428usize,
12524        concat!(
12525            "Offset of field: ",
12526            stringify!(_zend_executor_globals),
12527            "::",
12528            stringify!(exit_status)
12529        )
12530    );
12531    assert_eq!(
12532        unsafe {
12533            &(*(::std::ptr::null::<_zend_executor_globals>())).function_table as *const _ as usize
12534        },
12535        432usize,
12536        concat!(
12537            "Offset of field: ",
12538            stringify!(_zend_executor_globals),
12539            "::",
12540            stringify!(function_table)
12541        )
12542    );
12543    assert_eq!(
12544        unsafe {
12545            &(*(::std::ptr::null::<_zend_executor_globals>())).class_table as *const _ as usize
12546        },
12547        440usize,
12548        concat!(
12549            "Offset of field: ",
12550            stringify!(_zend_executor_globals),
12551            "::",
12552            stringify!(class_table)
12553        )
12554    );
12555    assert_eq!(
12556        unsafe {
12557            &(*(::std::ptr::null::<_zend_executor_globals>())).zend_constants as *const _ as usize
12558        },
12559        448usize,
12560        concat!(
12561            "Offset of field: ",
12562            stringify!(_zend_executor_globals),
12563            "::",
12564            stringify!(zend_constants)
12565        )
12566    );
12567    assert_eq!(
12568        unsafe {
12569            &(*(::std::ptr::null::<_zend_executor_globals>())).vm_stack_top as *const _ as usize
12570        },
12571        456usize,
12572        concat!(
12573            "Offset of field: ",
12574            stringify!(_zend_executor_globals),
12575            "::",
12576            stringify!(vm_stack_top)
12577        )
12578    );
12579    assert_eq!(
12580        unsafe {
12581            &(*(::std::ptr::null::<_zend_executor_globals>())).vm_stack_end as *const _ as usize
12582        },
12583        464usize,
12584        concat!(
12585            "Offset of field: ",
12586            stringify!(_zend_executor_globals),
12587            "::",
12588            stringify!(vm_stack_end)
12589        )
12590    );
12591    assert_eq!(
12592        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).vm_stack as *const _ as usize },
12593        472usize,
12594        concat!(
12595            "Offset of field: ",
12596            stringify!(_zend_executor_globals),
12597            "::",
12598            stringify!(vm_stack)
12599        )
12600    );
12601    assert_eq!(
12602        unsafe {
12603            &(*(::std::ptr::null::<_zend_executor_globals>())).current_execute_data as *const _
12604                as usize
12605        },
12606        480usize,
12607        concat!(
12608            "Offset of field: ",
12609            stringify!(_zend_executor_globals),
12610            "::",
12611            stringify!(current_execute_data)
12612        )
12613    );
12614    assert_eq!(
12615        unsafe {
12616            &(*(::std::ptr::null::<_zend_executor_globals>())).fake_scope as *const _ as usize
12617        },
12618        488usize,
12619        concat!(
12620            "Offset of field: ",
12621            stringify!(_zend_executor_globals),
12622            "::",
12623            stringify!(fake_scope)
12624        )
12625    );
12626    assert_eq!(
12627        unsafe {
12628            &(*(::std::ptr::null::<_zend_executor_globals>())).precision as *const _ as usize
12629        },
12630        496usize,
12631        concat!(
12632            "Offset of field: ",
12633            stringify!(_zend_executor_globals),
12634            "::",
12635            stringify!(precision)
12636        )
12637    );
12638    assert_eq!(
12639        unsafe {
12640            &(*(::std::ptr::null::<_zend_executor_globals>())).ticks_count as *const _ as usize
12641        },
12642        504usize,
12643        concat!(
12644            "Offset of field: ",
12645            stringify!(_zend_executor_globals),
12646            "::",
12647            stringify!(ticks_count)
12648        )
12649    );
12650    assert_eq!(
12651        unsafe {
12652            &(*(::std::ptr::null::<_zend_executor_globals>())).in_autoload as *const _ as usize
12653        },
12654        512usize,
12655        concat!(
12656            "Offset of field: ",
12657            stringify!(_zend_executor_globals),
12658            "::",
12659            stringify!(in_autoload)
12660        )
12661    );
12662    assert_eq!(
12663        unsafe {
12664            &(*(::std::ptr::null::<_zend_executor_globals>())).autoload_func as *const _ as usize
12665        },
12666        520usize,
12667        concat!(
12668            "Offset of field: ",
12669            stringify!(_zend_executor_globals),
12670            "::",
12671            stringify!(autoload_func)
12672        )
12673    );
12674    assert_eq!(
12675        unsafe {
12676            &(*(::std::ptr::null::<_zend_executor_globals>())).full_tables_cleanup as *const _
12677                as usize
12678        },
12679        528usize,
12680        concat!(
12681            "Offset of field: ",
12682            stringify!(_zend_executor_globals),
12683            "::",
12684            stringify!(full_tables_cleanup)
12685        )
12686    );
12687    assert_eq!(
12688        unsafe {
12689            &(*(::std::ptr::null::<_zend_executor_globals>())).no_extensions as *const _ as usize
12690        },
12691        529usize,
12692        concat!(
12693            "Offset of field: ",
12694            stringify!(_zend_executor_globals),
12695            "::",
12696            stringify!(no_extensions)
12697        )
12698    );
12699    assert_eq!(
12700        unsafe {
12701            &(*(::std::ptr::null::<_zend_executor_globals>())).vm_interrupt as *const _ as usize
12702        },
12703        530usize,
12704        concat!(
12705            "Offset of field: ",
12706            stringify!(_zend_executor_globals),
12707            "::",
12708            stringify!(vm_interrupt)
12709        )
12710    );
12711    assert_eq!(
12712        unsafe {
12713            &(*(::std::ptr::null::<_zend_executor_globals>())).timed_out as *const _ as usize
12714        },
12715        531usize,
12716        concat!(
12717            "Offset of field: ",
12718            stringify!(_zend_executor_globals),
12719            "::",
12720            stringify!(timed_out)
12721        )
12722    );
12723    assert_eq!(
12724        unsafe {
12725            &(*(::std::ptr::null::<_zend_executor_globals>())).hard_timeout as *const _ as usize
12726        },
12727        536usize,
12728        concat!(
12729            "Offset of field: ",
12730            stringify!(_zend_executor_globals),
12731            "::",
12732            stringify!(hard_timeout)
12733        )
12734    );
12735    assert_eq!(
12736        unsafe {
12737            &(*(::std::ptr::null::<_zend_executor_globals>())).regular_list as *const _ as usize
12738        },
12739        544usize,
12740        concat!(
12741            "Offset of field: ",
12742            stringify!(_zend_executor_globals),
12743            "::",
12744            stringify!(regular_list)
12745        )
12746    );
12747    assert_eq!(
12748        unsafe {
12749            &(*(::std::ptr::null::<_zend_executor_globals>())).persistent_list as *const _ as usize
12750        },
12751        600usize,
12752        concat!(
12753            "Offset of field: ",
12754            stringify!(_zend_executor_globals),
12755            "::",
12756            stringify!(persistent_list)
12757        )
12758    );
12759    assert_eq!(
12760        unsafe {
12761            &(*(::std::ptr::null::<_zend_executor_globals>())).user_error_handler_error_reporting
12762                as *const _ as usize
12763        },
12764        656usize,
12765        concat!(
12766            "Offset of field: ",
12767            stringify!(_zend_executor_globals),
12768            "::",
12769            stringify!(user_error_handler_error_reporting)
12770        )
12771    );
12772    assert_eq!(
12773        unsafe {
12774            &(*(::std::ptr::null::<_zend_executor_globals>())).user_error_handler as *const _
12775                as usize
12776        },
12777        664usize,
12778        concat!(
12779            "Offset of field: ",
12780            stringify!(_zend_executor_globals),
12781            "::",
12782            stringify!(user_error_handler)
12783        )
12784    );
12785    assert_eq!(
12786        unsafe {
12787            &(*(::std::ptr::null::<_zend_executor_globals>())).user_exception_handler as *const _
12788                as usize
12789        },
12790        680usize,
12791        concat!(
12792            "Offset of field: ",
12793            stringify!(_zend_executor_globals),
12794            "::",
12795            stringify!(user_exception_handler)
12796        )
12797    );
12798    assert_eq!(
12799        unsafe {
12800            &(*(::std::ptr::null::<_zend_executor_globals>())).user_error_handlers_error_reporting
12801                as *const _ as usize
12802        },
12803        696usize,
12804        concat!(
12805            "Offset of field: ",
12806            stringify!(_zend_executor_globals),
12807            "::",
12808            stringify!(user_error_handlers_error_reporting)
12809        )
12810    );
12811    assert_eq!(
12812        unsafe {
12813            &(*(::std::ptr::null::<_zend_executor_globals>())).user_error_handlers as *const _
12814                as usize
12815        },
12816        720usize,
12817        concat!(
12818            "Offset of field: ",
12819            stringify!(_zend_executor_globals),
12820            "::",
12821            stringify!(user_error_handlers)
12822        )
12823    );
12824    assert_eq!(
12825        unsafe {
12826            &(*(::std::ptr::null::<_zend_executor_globals>())).user_exception_handlers as *const _
12827                as usize
12828        },
12829        744usize,
12830        concat!(
12831            "Offset of field: ",
12832            stringify!(_zend_executor_globals),
12833            "::",
12834            stringify!(user_exception_handlers)
12835        )
12836    );
12837    assert_eq!(
12838        unsafe {
12839            &(*(::std::ptr::null::<_zend_executor_globals>())).error_handling as *const _ as usize
12840        },
12841        768usize,
12842        concat!(
12843            "Offset of field: ",
12844            stringify!(_zend_executor_globals),
12845            "::",
12846            stringify!(error_handling)
12847        )
12848    );
12849    assert_eq!(
12850        unsafe {
12851            &(*(::std::ptr::null::<_zend_executor_globals>())).exception_class as *const _ as usize
12852        },
12853        776usize,
12854        concat!(
12855            "Offset of field: ",
12856            stringify!(_zend_executor_globals),
12857            "::",
12858            stringify!(exception_class)
12859        )
12860    );
12861    assert_eq!(
12862        unsafe {
12863            &(*(::std::ptr::null::<_zend_executor_globals>())).timeout_seconds as *const _ as usize
12864        },
12865        784usize,
12866        concat!(
12867            "Offset of field: ",
12868            stringify!(_zend_executor_globals),
12869            "::",
12870            stringify!(timeout_seconds)
12871        )
12872    );
12873    assert_eq!(
12874        unsafe {
12875            &(*(::std::ptr::null::<_zend_executor_globals>())).lambda_count as *const _ as usize
12876        },
12877        792usize,
12878        concat!(
12879            "Offset of field: ",
12880            stringify!(_zend_executor_globals),
12881            "::",
12882            stringify!(lambda_count)
12883        )
12884    );
12885    assert_eq!(
12886        unsafe {
12887            &(*(::std::ptr::null::<_zend_executor_globals>())).ini_directives as *const _ as usize
12888        },
12889        800usize,
12890        concat!(
12891            "Offset of field: ",
12892            stringify!(_zend_executor_globals),
12893            "::",
12894            stringify!(ini_directives)
12895        )
12896    );
12897    assert_eq!(
12898        unsafe {
12899            &(*(::std::ptr::null::<_zend_executor_globals>())).modified_ini_directives as *const _
12900                as usize
12901        },
12902        808usize,
12903        concat!(
12904            "Offset of field: ",
12905            stringify!(_zend_executor_globals),
12906            "::",
12907            stringify!(modified_ini_directives)
12908        )
12909    );
12910    assert_eq!(
12911        unsafe {
12912            &(*(::std::ptr::null::<_zend_executor_globals>())).error_reporting_ini_entry as *const _
12913                as usize
12914        },
12915        816usize,
12916        concat!(
12917            "Offset of field: ",
12918            stringify!(_zend_executor_globals),
12919            "::",
12920            stringify!(error_reporting_ini_entry)
12921        )
12922    );
12923    assert_eq!(
12924        unsafe {
12925            &(*(::std::ptr::null::<_zend_executor_globals>())).objects_store as *const _ as usize
12926        },
12927        824usize,
12928        concat!(
12929            "Offset of field: ",
12930            stringify!(_zend_executor_globals),
12931            "::",
12932            stringify!(objects_store)
12933        )
12934    );
12935    assert_eq!(
12936        unsafe {
12937            &(*(::std::ptr::null::<_zend_executor_globals>())).exception as *const _ as usize
12938        },
12939        848usize,
12940        concat!(
12941            "Offset of field: ",
12942            stringify!(_zend_executor_globals),
12943            "::",
12944            stringify!(exception)
12945        )
12946    );
12947    assert_eq!(
12948        unsafe {
12949            &(*(::std::ptr::null::<_zend_executor_globals>())).prev_exception as *const _ as usize
12950        },
12951        856usize,
12952        concat!(
12953            "Offset of field: ",
12954            stringify!(_zend_executor_globals),
12955            "::",
12956            stringify!(prev_exception)
12957        )
12958    );
12959    assert_eq!(
12960        unsafe {
12961            &(*(::std::ptr::null::<_zend_executor_globals>())).opline_before_exception as *const _
12962                as usize
12963        },
12964        864usize,
12965        concat!(
12966            "Offset of field: ",
12967            stringify!(_zend_executor_globals),
12968            "::",
12969            stringify!(opline_before_exception)
12970        )
12971    );
12972    assert_eq!(
12973        unsafe {
12974            &(*(::std::ptr::null::<_zend_executor_globals>())).exception_op as *const _ as usize
12975        },
12976        872usize,
12977        concat!(
12978            "Offset of field: ",
12979            stringify!(_zend_executor_globals),
12980            "::",
12981            stringify!(exception_op)
12982        )
12983    );
12984    assert_eq!(
12985        unsafe {
12986            &(*(::std::ptr::null::<_zend_executor_globals>())).current_module as *const _ as usize
12987        },
12988        968usize,
12989        concat!(
12990            "Offset of field: ",
12991            stringify!(_zend_executor_globals),
12992            "::",
12993            stringify!(current_module)
12994        )
12995    );
12996    assert_eq!(
12997        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).active as *const _ as usize },
12998        976usize,
12999        concat!(
13000            "Offset of field: ",
13001            stringify!(_zend_executor_globals),
13002            "::",
13003            stringify!(active)
13004        )
13005    );
13006    assert_eq!(
13007        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).flags as *const _ as usize },
13008        977usize,
13009        concat!(
13010            "Offset of field: ",
13011            stringify!(_zend_executor_globals),
13012            "::",
13013            stringify!(flags)
13014        )
13015    );
13016    assert_eq!(
13017        unsafe {
13018            &(*(::std::ptr::null::<_zend_executor_globals>())).assertions as *const _ as usize
13019        },
13020        984usize,
13021        concat!(
13022            "Offset of field: ",
13023            stringify!(_zend_executor_globals),
13024            "::",
13025            stringify!(assertions)
13026        )
13027    );
13028    assert_eq!(
13029        unsafe {
13030            &(*(::std::ptr::null::<_zend_executor_globals>())).ht_iterators_count as *const _
13031                as usize
13032        },
13033        992usize,
13034        concat!(
13035            "Offset of field: ",
13036            stringify!(_zend_executor_globals),
13037            "::",
13038            stringify!(ht_iterators_count)
13039        )
13040    );
13041    assert_eq!(
13042        unsafe {
13043            &(*(::std::ptr::null::<_zend_executor_globals>())).ht_iterators_used as *const _
13044                as usize
13045        },
13046        996usize,
13047        concat!(
13048            "Offset of field: ",
13049            stringify!(_zend_executor_globals),
13050            "::",
13051            stringify!(ht_iterators_used)
13052        )
13053    );
13054    assert_eq!(
13055        unsafe {
13056            &(*(::std::ptr::null::<_zend_executor_globals>())).ht_iterators as *const _ as usize
13057        },
13058        1000usize,
13059        concat!(
13060            "Offset of field: ",
13061            stringify!(_zend_executor_globals),
13062            "::",
13063            stringify!(ht_iterators)
13064        )
13065    );
13066    assert_eq!(
13067        unsafe {
13068            &(*(::std::ptr::null::<_zend_executor_globals>())).ht_iterators_slots as *const _
13069                as usize
13070        },
13071        1008usize,
13072        concat!(
13073            "Offset of field: ",
13074            stringify!(_zend_executor_globals),
13075            "::",
13076            stringify!(ht_iterators_slots)
13077        )
13078    );
13079    assert_eq!(
13080        unsafe {
13081            &(*(::std::ptr::null::<_zend_executor_globals>())).saved_fpu_cw_ptr as *const _ as usize
13082        },
13083        1264usize,
13084        concat!(
13085            "Offset of field: ",
13086            stringify!(_zend_executor_globals),
13087            "::",
13088            stringify!(saved_fpu_cw_ptr)
13089        )
13090    );
13091    assert_eq!(
13092        unsafe {
13093            &(*(::std::ptr::null::<_zend_executor_globals>())).saved_fpu_cw as *const _ as usize
13094        },
13095        1272usize,
13096        concat!(
13097            "Offset of field: ",
13098            stringify!(_zend_executor_globals),
13099            "::",
13100            stringify!(saved_fpu_cw)
13101        )
13102    );
13103    assert_eq!(
13104        unsafe {
13105            &(*(::std::ptr::null::<_zend_executor_globals>())).trampoline as *const _ as usize
13106        },
13107        1280usize,
13108        concat!(
13109            "Offset of field: ",
13110            stringify!(_zend_executor_globals),
13111            "::",
13112            stringify!(trampoline)
13113        )
13114    );
13115    assert_eq!(
13116        unsafe {
13117            &(*(::std::ptr::null::<_zend_executor_globals>())).call_trampoline_op as *const _
13118                as usize
13119        },
13120        1504usize,
13121        concat!(
13122            "Offset of field: ",
13123            stringify!(_zend_executor_globals),
13124            "::",
13125            stringify!(call_trampoline_op)
13126        )
13127    );
13128    assert_eq!(
13129        unsafe {
13130            &(*(::std::ptr::null::<_zend_executor_globals>())).each_deprecation_thrown as *const _
13131                as usize
13132        },
13133        1536usize,
13134        concat!(
13135            "Offset of field: ",
13136            stringify!(_zend_executor_globals),
13137            "::",
13138            stringify!(each_deprecation_thrown)
13139        )
13140    );
13141    assert_eq!(
13142        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).reserved as *const _ as usize },
13143        1544usize,
13144        concat!(
13145            "Offset of field: ",
13146            stringify!(_zend_executor_globals),
13147            "::",
13148            stringify!(reserved)
13149        )
13150    );
13151}
13152#[repr(C)]
13153#[derive(Debug, Copy, Clone)]
13154pub struct _zend_ini_scanner_globals {
13155    pub yy_in: *mut zend_file_handle,
13156    pub yy_out: *mut zend_file_handle,
13157    pub yy_leng: ::std::os::raw::c_uint,
13158    pub yy_start: *mut ::std::os::raw::c_uchar,
13159    pub yy_text: *mut ::std::os::raw::c_uchar,
13160    pub yy_cursor: *mut ::std::os::raw::c_uchar,
13161    pub yy_marker: *mut ::std::os::raw::c_uchar,
13162    pub yy_limit: *mut ::std::os::raw::c_uchar,
13163    pub yy_state: ::std::os::raw::c_int,
13164    pub state_stack: zend_stack,
13165    pub filename: *mut ::std::os::raw::c_char,
13166    pub lineno: ::std::os::raw::c_int,
13167    pub scanner_mode: ::std::os::raw::c_int,
13168}
13169#[test]
13170fn bindgen_test_layout__zend_ini_scanner_globals() {
13171    assert_eq!(
13172        ::std::mem::size_of::<_zend_ini_scanner_globals>(),
13173        112usize,
13174        concat!("Size of: ", stringify!(_zend_ini_scanner_globals))
13175    );
13176    assert_eq!(
13177        ::std::mem::align_of::<_zend_ini_scanner_globals>(),
13178        8usize,
13179        concat!("Alignment of ", stringify!(_zend_ini_scanner_globals))
13180    );
13181    assert_eq!(
13182        unsafe { &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_in as *const _ as usize },
13183        0usize,
13184        concat!(
13185            "Offset of field: ",
13186            stringify!(_zend_ini_scanner_globals),
13187            "::",
13188            stringify!(yy_in)
13189        )
13190    );
13191    assert_eq!(
13192        unsafe {
13193            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_out as *const _ as usize
13194        },
13195        8usize,
13196        concat!(
13197            "Offset of field: ",
13198            stringify!(_zend_ini_scanner_globals),
13199            "::",
13200            stringify!(yy_out)
13201        )
13202    );
13203    assert_eq!(
13204        unsafe {
13205            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_leng as *const _ as usize
13206        },
13207        16usize,
13208        concat!(
13209            "Offset of field: ",
13210            stringify!(_zend_ini_scanner_globals),
13211            "::",
13212            stringify!(yy_leng)
13213        )
13214    );
13215    assert_eq!(
13216        unsafe {
13217            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_start as *const _ as usize
13218        },
13219        24usize,
13220        concat!(
13221            "Offset of field: ",
13222            stringify!(_zend_ini_scanner_globals),
13223            "::",
13224            stringify!(yy_start)
13225        )
13226    );
13227    assert_eq!(
13228        unsafe {
13229            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_text as *const _ as usize
13230        },
13231        32usize,
13232        concat!(
13233            "Offset of field: ",
13234            stringify!(_zend_ini_scanner_globals),
13235            "::",
13236            stringify!(yy_text)
13237        )
13238    );
13239    assert_eq!(
13240        unsafe {
13241            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_cursor as *const _ as usize
13242        },
13243        40usize,
13244        concat!(
13245            "Offset of field: ",
13246            stringify!(_zend_ini_scanner_globals),
13247            "::",
13248            stringify!(yy_cursor)
13249        )
13250    );
13251    assert_eq!(
13252        unsafe {
13253            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_marker as *const _ as usize
13254        },
13255        48usize,
13256        concat!(
13257            "Offset of field: ",
13258            stringify!(_zend_ini_scanner_globals),
13259            "::",
13260            stringify!(yy_marker)
13261        )
13262    );
13263    assert_eq!(
13264        unsafe {
13265            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_limit as *const _ as usize
13266        },
13267        56usize,
13268        concat!(
13269            "Offset of field: ",
13270            stringify!(_zend_ini_scanner_globals),
13271            "::",
13272            stringify!(yy_limit)
13273        )
13274    );
13275    assert_eq!(
13276        unsafe {
13277            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_state as *const _ as usize
13278        },
13279        64usize,
13280        concat!(
13281            "Offset of field: ",
13282            stringify!(_zend_ini_scanner_globals),
13283            "::",
13284            stringify!(yy_state)
13285        )
13286    );
13287    assert_eq!(
13288        unsafe {
13289            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).state_stack as *const _ as usize
13290        },
13291        72usize,
13292        concat!(
13293            "Offset of field: ",
13294            stringify!(_zend_ini_scanner_globals),
13295            "::",
13296            stringify!(state_stack)
13297        )
13298    );
13299    assert_eq!(
13300        unsafe {
13301            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).filename as *const _ as usize
13302        },
13303        96usize,
13304        concat!(
13305            "Offset of field: ",
13306            stringify!(_zend_ini_scanner_globals),
13307            "::",
13308            stringify!(filename)
13309        )
13310    );
13311    assert_eq!(
13312        unsafe {
13313            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).lineno as *const _ as usize
13314        },
13315        104usize,
13316        concat!(
13317            "Offset of field: ",
13318            stringify!(_zend_ini_scanner_globals),
13319            "::",
13320            stringify!(lineno)
13321        )
13322    );
13323    assert_eq!(
13324        unsafe {
13325            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).scanner_mode as *const _ as usize
13326        },
13327        108usize,
13328        concat!(
13329            "Offset of field: ",
13330            stringify!(_zend_ini_scanner_globals),
13331            "::",
13332            stringify!(scanner_mode)
13333        )
13334    );
13335}
13336pub const zend_php_scanner_event_ON_TOKEN: zend_php_scanner_event = 0;
13337pub const zend_php_scanner_event_ON_FEEDBACK: zend_php_scanner_event = 1;
13338pub const zend_php_scanner_event_ON_STOP: zend_php_scanner_event = 2;
13339pub type zend_php_scanner_event = ::std::os::raw::c_uint;
13340#[repr(C)]
13341#[derive(Debug, Copy, Clone)]
13342pub struct _zend_php_scanner_globals {
13343    pub yy_in: *mut zend_file_handle,
13344    pub yy_out: *mut zend_file_handle,
13345    pub yy_leng: ::std::os::raw::c_uint,
13346    pub yy_start: *mut ::std::os::raw::c_uchar,
13347    pub yy_text: *mut ::std::os::raw::c_uchar,
13348    pub yy_cursor: *mut ::std::os::raw::c_uchar,
13349    pub yy_marker: *mut ::std::os::raw::c_uchar,
13350    pub yy_limit: *mut ::std::os::raw::c_uchar,
13351    pub yy_state: ::std::os::raw::c_int,
13352    pub state_stack: zend_stack,
13353    pub heredoc_label_stack: zend_ptr_stack,
13354    pub script_org: *mut ::std::os::raw::c_uchar,
13355    pub script_org_size: size_t,
13356    pub script_filtered: *mut ::std::os::raw::c_uchar,
13357    pub script_filtered_size: size_t,
13358    pub input_filter: zend_encoding_filter,
13359    pub output_filter: zend_encoding_filter,
13360    pub script_encoding: *const zend_encoding,
13361    pub scanned_string_len: ::std::os::raw::c_int,
13362    pub on_event: ::std::option::Option<
13363        unsafe extern "C" fn(
13364            event: zend_php_scanner_event,
13365            token: ::std::os::raw::c_int,
13366            line: ::std::os::raw::c_int,
13367            context: *mut ::std::os::raw::c_void,
13368        ),
13369    >,
13370    pub on_event_context: *mut ::std::os::raw::c_void,
13371}
13372#[test]
13373fn bindgen_test_layout__zend_php_scanner_globals() {
13374    assert_eq!(
13375        ::std::mem::size_of::<_zend_php_scanner_globals>(),
13376        208usize,
13377        concat!("Size of: ", stringify!(_zend_php_scanner_globals))
13378    );
13379    assert_eq!(
13380        ::std::mem::align_of::<_zend_php_scanner_globals>(),
13381        8usize,
13382        concat!("Alignment of ", stringify!(_zend_php_scanner_globals))
13383    );
13384    assert_eq!(
13385        unsafe { &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_in as *const _ as usize },
13386        0usize,
13387        concat!(
13388            "Offset of field: ",
13389            stringify!(_zend_php_scanner_globals),
13390            "::",
13391            stringify!(yy_in)
13392        )
13393    );
13394    assert_eq!(
13395        unsafe {
13396            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_out as *const _ as usize
13397        },
13398        8usize,
13399        concat!(
13400            "Offset of field: ",
13401            stringify!(_zend_php_scanner_globals),
13402            "::",
13403            stringify!(yy_out)
13404        )
13405    );
13406    assert_eq!(
13407        unsafe {
13408            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_leng as *const _ as usize
13409        },
13410        16usize,
13411        concat!(
13412            "Offset of field: ",
13413            stringify!(_zend_php_scanner_globals),
13414            "::",
13415            stringify!(yy_leng)
13416        )
13417    );
13418    assert_eq!(
13419        unsafe {
13420            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_start as *const _ as usize
13421        },
13422        24usize,
13423        concat!(
13424            "Offset of field: ",
13425            stringify!(_zend_php_scanner_globals),
13426            "::",
13427            stringify!(yy_start)
13428        )
13429    );
13430    assert_eq!(
13431        unsafe {
13432            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_text as *const _ as usize
13433        },
13434        32usize,
13435        concat!(
13436            "Offset of field: ",
13437            stringify!(_zend_php_scanner_globals),
13438            "::",
13439            stringify!(yy_text)
13440        )
13441    );
13442    assert_eq!(
13443        unsafe {
13444            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_cursor as *const _ as usize
13445        },
13446        40usize,
13447        concat!(
13448            "Offset of field: ",
13449            stringify!(_zend_php_scanner_globals),
13450            "::",
13451            stringify!(yy_cursor)
13452        )
13453    );
13454    assert_eq!(
13455        unsafe {
13456            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_marker as *const _ as usize
13457        },
13458        48usize,
13459        concat!(
13460            "Offset of field: ",
13461            stringify!(_zend_php_scanner_globals),
13462            "::",
13463            stringify!(yy_marker)
13464        )
13465    );
13466    assert_eq!(
13467        unsafe {
13468            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_limit as *const _ as usize
13469        },
13470        56usize,
13471        concat!(
13472            "Offset of field: ",
13473            stringify!(_zend_php_scanner_globals),
13474            "::",
13475            stringify!(yy_limit)
13476        )
13477    );
13478    assert_eq!(
13479        unsafe {
13480            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_state as *const _ as usize
13481        },
13482        64usize,
13483        concat!(
13484            "Offset of field: ",
13485            stringify!(_zend_php_scanner_globals),
13486            "::",
13487            stringify!(yy_state)
13488        )
13489    );
13490    assert_eq!(
13491        unsafe {
13492            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).state_stack as *const _ as usize
13493        },
13494        72usize,
13495        concat!(
13496            "Offset of field: ",
13497            stringify!(_zend_php_scanner_globals),
13498            "::",
13499            stringify!(state_stack)
13500        )
13501    );
13502    assert_eq!(
13503        unsafe {
13504            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).heredoc_label_stack as *const _
13505                as usize
13506        },
13507        96usize,
13508        concat!(
13509            "Offset of field: ",
13510            stringify!(_zend_php_scanner_globals),
13511            "::",
13512            stringify!(heredoc_label_stack)
13513        )
13514    );
13515    assert_eq!(
13516        unsafe {
13517            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_org as *const _ as usize
13518        },
13519        128usize,
13520        concat!(
13521            "Offset of field: ",
13522            stringify!(_zend_php_scanner_globals),
13523            "::",
13524            stringify!(script_org)
13525        )
13526    );
13527    assert_eq!(
13528        unsafe {
13529            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_org_size as *const _
13530                as usize
13531        },
13532        136usize,
13533        concat!(
13534            "Offset of field: ",
13535            stringify!(_zend_php_scanner_globals),
13536            "::",
13537            stringify!(script_org_size)
13538        )
13539    );
13540    assert_eq!(
13541        unsafe {
13542            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_filtered as *const _
13543                as usize
13544        },
13545        144usize,
13546        concat!(
13547            "Offset of field: ",
13548            stringify!(_zend_php_scanner_globals),
13549            "::",
13550            stringify!(script_filtered)
13551        )
13552    );
13553    assert_eq!(
13554        unsafe {
13555            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_filtered_size as *const _
13556                as usize
13557        },
13558        152usize,
13559        concat!(
13560            "Offset of field: ",
13561            stringify!(_zend_php_scanner_globals),
13562            "::",
13563            stringify!(script_filtered_size)
13564        )
13565    );
13566    assert_eq!(
13567        unsafe {
13568            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).input_filter as *const _ as usize
13569        },
13570        160usize,
13571        concat!(
13572            "Offset of field: ",
13573            stringify!(_zend_php_scanner_globals),
13574            "::",
13575            stringify!(input_filter)
13576        )
13577    );
13578    assert_eq!(
13579        unsafe {
13580            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).output_filter as *const _ as usize
13581        },
13582        168usize,
13583        concat!(
13584            "Offset of field: ",
13585            stringify!(_zend_php_scanner_globals),
13586            "::",
13587            stringify!(output_filter)
13588        )
13589    );
13590    assert_eq!(
13591        unsafe {
13592            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_encoding as *const _
13593                as usize
13594        },
13595        176usize,
13596        concat!(
13597            "Offset of field: ",
13598            stringify!(_zend_php_scanner_globals),
13599            "::",
13600            stringify!(script_encoding)
13601        )
13602    );
13603    assert_eq!(
13604        unsafe {
13605            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).scanned_string_len as *const _
13606                as usize
13607        },
13608        184usize,
13609        concat!(
13610            "Offset of field: ",
13611            stringify!(_zend_php_scanner_globals),
13612            "::",
13613            stringify!(scanned_string_len)
13614        )
13615    );
13616    assert_eq!(
13617        unsafe {
13618            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).on_event as *const _ as usize
13619        },
13620        192usize,
13621        concat!(
13622            "Offset of field: ",
13623            stringify!(_zend_php_scanner_globals),
13624            "::",
13625            stringify!(on_event)
13626        )
13627    );
13628    assert_eq!(
13629        unsafe {
13630            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).on_event_context as *const _
13631                as usize
13632        },
13633        200usize,
13634        concat!(
13635            "Offset of field: ",
13636            stringify!(_zend_php_scanner_globals),
13637            "::",
13638            stringify!(on_event_context)
13639        )
13640    );
13641}
13642extern "C" {
13643    pub fn zend_init_compiler_data_structures();
13644}
13645extern "C" {
13646    pub fn zend_oparray_context_begin(prev_context: *mut zend_oparray_context);
13647}
13648extern "C" {
13649    pub fn zend_oparray_context_end(prev_context: *mut zend_oparray_context);
13650}
13651extern "C" {
13652    pub fn zend_file_context_begin(prev_context: *mut zend_file_context);
13653}
13654extern "C" {
13655    pub fn zend_file_context_end(prev_context: *mut zend_file_context);
13656}
13657extern "C" {
13658    pub static mut zend_compile_file: ::std::option::Option<
13659        unsafe extern "C" fn(
13660            file_handle: *mut zend_file_handle,
13661            type_: ::std::os::raw::c_int,
13662        ) -> *mut zend_op_array,
13663    >;
13664}
13665extern "C" {
13666    pub static mut zend_compile_string: ::std::option::Option<
13667        unsafe extern "C" fn(
13668            source_string: *mut zval,
13669            filename: *mut ::std::os::raw::c_char,
13670        ) -> *mut zend_op_array,
13671    >;
13672}
13673extern "C" {
13674    pub fn zend_set_compiled_filename(new_compiled_filename: *mut zend_string) -> *mut zend_string;
13675}
13676extern "C" {
13677    pub fn zend_restore_compiled_filename(original_compiled_filename: *mut zend_string);
13678}
13679extern "C" {
13680    pub fn zend_get_compiled_filename() -> *mut zend_string;
13681}
13682extern "C" {
13683    pub fn zend_get_compiled_lineno() -> ::std::os::raw::c_int;
13684}
13685extern "C" {
13686    pub fn zend_get_scanned_file_offset() -> size_t;
13687}
13688extern "C" {
13689    pub fn zend_get_compiled_variable_name(
13690        op_array: *const zend_op_array,
13691        var: u32,
13692    ) -> *mut zend_string;
13693}
13694extern "C" {
13695    pub fn zend_stop_lexing();
13696}
13697extern "C" {
13698    pub fn zend_emit_final_return(return_one: ::std::os::raw::c_int);
13699}
13700extern "C" {
13701    pub fn zend_ast_append_str(left: *mut zend_ast, right: *mut zend_ast) -> *mut zend_ast;
13702}
13703extern "C" {
13704    pub fn zend_negate_num_string(ast: *mut zend_ast) -> *mut zend_ast;
13705}
13706extern "C" {
13707    pub fn zend_add_class_modifier(flags: u32, new_flag: u32) -> u32;
13708}
13709extern "C" {
13710    pub fn zend_add_member_modifier(flags: u32, new_flag: u32) -> u32;
13711}
13712extern "C" {
13713    pub fn zend_handle_encoding_declaration(ast: *mut zend_ast);
13714}
13715extern "C" {
13716    pub fn zend_do_free(op1: *mut znode);
13717}
13718extern "C" {
13719    pub fn zend_do_delayed_early_binding(op_array: *const zend_op_array);
13720}
13721extern "C" {
13722    pub fn zend_do_extended_info();
13723}
13724extern "C" {
13725    pub fn zend_do_extended_fcall_begin();
13726}
13727extern "C" {
13728    pub fn zend_do_extended_fcall_end();
13729}
13730extern "C" {
13731    pub fn zend_verify_namespace();
13732}
13733extern "C" {
13734    pub fn zend_resolve_goto_label(op_array: *mut zend_op_array, opline: *mut zend_op);
13735}
13736extern "C" {
13737    pub fn zend_try_exception_handler();
13738}
13739extern "C" {
13740    pub fn zend_execute_scripts(
13741        type_: ::std::os::raw::c_int,
13742        retval: *mut zval,
13743        file_count: ::std::os::raw::c_int,
13744        ...
13745    ) -> ::std::os::raw::c_int;
13746}
13747extern "C" {
13748    pub fn zend_destroy_file_handle(file_handle: *mut zend_file_handle);
13749}
13750extern "C" {
13751    pub fn zend_cleanup_internal_class_data(ce: *mut zend_class_entry);
13752}
13753extern "C" {
13754    pub fn zend_cleanup_internal_classes();
13755}
13756extern "C" {
13757    pub fn zend_function_dtor(zv: *mut zval);
13758}
13759extern "C" {
13760    pub fn zend_class_add_ref(zv: *mut zval);
13761}
13762extern "C" {
13763    pub fn zend_mangle_property_name(
13764        src1: *const ::std::os::raw::c_char,
13765        src1_length: size_t,
13766        src2: *const ::std::os::raw::c_char,
13767        src2_length: size_t,
13768        internal: ::std::os::raw::c_int,
13769    ) -> *mut zend_string;
13770}
13771extern "C" {
13772    pub fn zend_unmangle_property_name_ex(
13773        name: *const zend_string,
13774        class_name: *mut *const ::std::os::raw::c_char,
13775        prop_name: *mut *const ::std::os::raw::c_char,
13776        prop_len: *mut size_t,
13777    ) -> ::std::os::raw::c_int;
13778}
13779extern "C" {
13780    pub fn zend_is_compiling() -> zend_bool;
13781}
13782extern "C" {
13783    pub fn zend_make_compiled_string_description(
13784        name: *const ::std::os::raw::c_char,
13785    ) -> *mut ::std::os::raw::c_char;
13786}
13787extern "C" {
13788    pub fn zend_initialize_class_data(ce: *mut zend_class_entry, nullify_handlers: zend_bool);
13789}
13790extern "C" {
13791    pub fn zend_get_class_fetch_type(name: *mut zend_string) -> u32;
13792}
13793extern "C" {
13794    pub fn zend_get_call_op(init_op: *const zend_op, fbc: *mut zend_function) -> zend_uchar;
13795}
13796extern "C" {
13797    pub fn zend_is_smart_branch(opline: *mut zend_op) -> ::std::os::raw::c_int;
13798}
13799pub type zend_auto_global_callback =
13800    ::std::option::Option<unsafe extern "C" fn(name: *mut zend_string) -> zend_bool>;
13801#[repr(C)]
13802#[derive(Debug, Copy, Clone)]
13803pub struct _zend_auto_global {
13804    pub name: *mut zend_string,
13805    pub auto_global_callback: zend_auto_global_callback,
13806    pub jit: zend_bool,
13807    pub armed: zend_bool,
13808}
13809#[test]
13810fn bindgen_test_layout__zend_auto_global() {
13811    assert_eq!(
13812        ::std::mem::size_of::<_zend_auto_global>(),
13813        24usize,
13814        concat!("Size of: ", stringify!(_zend_auto_global))
13815    );
13816    assert_eq!(
13817        ::std::mem::align_of::<_zend_auto_global>(),
13818        8usize,
13819        concat!("Alignment of ", stringify!(_zend_auto_global))
13820    );
13821    assert_eq!(
13822        unsafe { &(*(::std::ptr::null::<_zend_auto_global>())).name as *const _ as usize },
13823        0usize,
13824        concat!(
13825            "Offset of field: ",
13826            stringify!(_zend_auto_global),
13827            "::",
13828            stringify!(name)
13829        )
13830    );
13831    assert_eq!(
13832        unsafe {
13833            &(*(::std::ptr::null::<_zend_auto_global>())).auto_global_callback as *const _ as usize
13834        },
13835        8usize,
13836        concat!(
13837            "Offset of field: ",
13838            stringify!(_zend_auto_global),
13839            "::",
13840            stringify!(auto_global_callback)
13841        )
13842    );
13843    assert_eq!(
13844        unsafe { &(*(::std::ptr::null::<_zend_auto_global>())).jit as *const _ as usize },
13845        16usize,
13846        concat!(
13847            "Offset of field: ",
13848            stringify!(_zend_auto_global),
13849            "::",
13850            stringify!(jit)
13851        )
13852    );
13853    assert_eq!(
13854        unsafe { &(*(::std::ptr::null::<_zend_auto_global>())).armed as *const _ as usize },
13855        17usize,
13856        concat!(
13857            "Offset of field: ",
13858            stringify!(_zend_auto_global),
13859            "::",
13860            stringify!(armed)
13861        )
13862    );
13863}
13864pub type zend_auto_global = _zend_auto_global;
13865extern "C" {
13866    pub fn zend_register_auto_global(
13867        name: *mut zend_string,
13868        jit: zend_bool,
13869        auto_global_callback: zend_auto_global_callback,
13870    ) -> ::std::os::raw::c_int;
13871}
13872extern "C" {
13873    pub fn zend_activate_auto_globals();
13874}
13875extern "C" {
13876    pub fn zend_is_auto_global(name: *mut zend_string) -> zend_bool;
13877}
13878extern "C" {
13879    pub fn zend_is_auto_global_str(name: *mut ::std::os::raw::c_char, len: size_t) -> zend_bool;
13880}
13881extern "C" {
13882    pub fn zend_dirname(path: *mut ::std::os::raw::c_char, len: size_t) -> size_t;
13883}
13884extern "C" {
13885    pub fn zend_set_function_arg_flags(func: *mut zend_function);
13886}
13887extern "C" {
13888    pub fn zendlex(elem: *mut zend_parser_stack_elem) -> ::std::os::raw::c_int;
13889}
13890extern "C" {
13891    pub fn zend_add_literal(op_array: *mut zend_op_array, zv: *mut zval) -> ::std::os::raw::c_int;
13892}
13893extern "C" {
13894    pub fn zend_assert_valid_class_name(const_name: *const zend_string);
13895}
13896extern "C" {
13897    pub fn zend_get_opcode_name(opcode: zend_uchar) -> *const ::std::os::raw::c_char;
13898}
13899extern "C" {
13900    pub fn zend_get_opcode_flags(opcode: zend_uchar) -> u32;
13901}
13902extern "C" {
13903    pub fn zend_binary_op_produces_numeric_string_error(
13904        opcode: u32,
13905        op1: *mut zval,
13906        op2: *mut zval,
13907    ) -> zend_bool;
13908}
13909pub type zend_module_entry = _zend_module_entry;
13910pub type zend_module_dep = _zend_module_dep;
13911#[repr(C)]
13912#[derive(Debug, Copy, Clone)]
13913pub struct _zend_module_entry {
13914    pub size: ::std::os::raw::c_ushort,
13915    pub zend_api: ::std::os::raw::c_uint,
13916    pub zend_debug: ::std::os::raw::c_uchar,
13917    pub zts: ::std::os::raw::c_uchar,
13918    pub ini_entry: *const _zend_ini_entry,
13919    pub deps: *const _zend_module_dep,
13920    pub name: *const ::std::os::raw::c_char,
13921    pub functions: *const _zend_function_entry,
13922    pub module_startup_func: ::std::option::Option<
13923        unsafe extern "C" fn(
13924            type_: ::std::os::raw::c_int,
13925            module_number: ::std::os::raw::c_int,
13926        ) -> ::std::os::raw::c_int,
13927    >,
13928    pub module_shutdown_func: ::std::option::Option<
13929        unsafe extern "C" fn(
13930            type_: ::std::os::raw::c_int,
13931            module_number: ::std::os::raw::c_int,
13932        ) -> ::std::os::raw::c_int,
13933    >,
13934    pub request_startup_func: ::std::option::Option<
13935        unsafe extern "C" fn(
13936            type_: ::std::os::raw::c_int,
13937            module_number: ::std::os::raw::c_int,
13938        ) -> ::std::os::raw::c_int,
13939    >,
13940    pub request_shutdown_func: ::std::option::Option<
13941        unsafe extern "C" fn(
13942            type_: ::std::os::raw::c_int,
13943            module_number: ::std::os::raw::c_int,
13944        ) -> ::std::os::raw::c_int,
13945    >,
13946    pub info_func: ::std::option::Option<unsafe extern "C" fn(zend_module: *mut zend_module_entry)>,
13947    pub version: *const ::std::os::raw::c_char,
13948    pub globals_size: size_t,
13949    pub globals_ptr: *mut ::std::os::raw::c_void,
13950    pub globals_ctor:
13951        ::std::option::Option<unsafe extern "C" fn(global: *mut ::std::os::raw::c_void)>,
13952    pub globals_dtor:
13953        ::std::option::Option<unsafe extern "C" fn(global: *mut ::std::os::raw::c_void)>,
13954    pub post_deactivate_func:
13955        ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_int>,
13956    pub module_started: ::std::os::raw::c_int,
13957    pub type_: ::std::os::raw::c_uchar,
13958    pub handle: *mut ::std::os::raw::c_void,
13959    pub module_number: ::std::os::raw::c_int,
13960    pub build_id: *const ::std::os::raw::c_char,
13961}
13962#[test]
13963fn bindgen_test_layout__zend_module_entry() {
13964    assert_eq!(
13965        ::std::mem::size_of::<_zend_module_entry>(),
13966        168usize,
13967        concat!("Size of: ", stringify!(_zend_module_entry))
13968    );
13969    assert_eq!(
13970        ::std::mem::align_of::<_zend_module_entry>(),
13971        8usize,
13972        concat!("Alignment of ", stringify!(_zend_module_entry))
13973    );
13974    assert_eq!(
13975        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).size as *const _ as usize },
13976        0usize,
13977        concat!(
13978            "Offset of field: ",
13979            stringify!(_zend_module_entry),
13980            "::",
13981            stringify!(size)
13982        )
13983    );
13984    assert_eq!(
13985        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).zend_api as *const _ as usize },
13986        4usize,
13987        concat!(
13988            "Offset of field: ",
13989            stringify!(_zend_module_entry),
13990            "::",
13991            stringify!(zend_api)
13992        )
13993    );
13994    assert_eq!(
13995        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).zend_debug as *const _ as usize },
13996        8usize,
13997        concat!(
13998            "Offset of field: ",
13999            stringify!(_zend_module_entry),
14000            "::",
14001            stringify!(zend_debug)
14002        )
14003    );
14004    assert_eq!(
14005        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).zts as *const _ as usize },
14006        9usize,
14007        concat!(
14008            "Offset of field: ",
14009            stringify!(_zend_module_entry),
14010            "::",
14011            stringify!(zts)
14012        )
14013    );
14014    assert_eq!(
14015        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).ini_entry as *const _ as usize },
14016        16usize,
14017        concat!(
14018            "Offset of field: ",
14019            stringify!(_zend_module_entry),
14020            "::",
14021            stringify!(ini_entry)
14022        )
14023    );
14024    assert_eq!(
14025        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).deps as *const _ as usize },
14026        24usize,
14027        concat!(
14028            "Offset of field: ",
14029            stringify!(_zend_module_entry),
14030            "::",
14031            stringify!(deps)
14032        )
14033    );
14034    assert_eq!(
14035        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).name as *const _ as usize },
14036        32usize,
14037        concat!(
14038            "Offset of field: ",
14039            stringify!(_zend_module_entry),
14040            "::",
14041            stringify!(name)
14042        )
14043    );
14044    assert_eq!(
14045        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).functions as *const _ as usize },
14046        40usize,
14047        concat!(
14048            "Offset of field: ",
14049            stringify!(_zend_module_entry),
14050            "::",
14051            stringify!(functions)
14052        )
14053    );
14054    assert_eq!(
14055        unsafe {
14056            &(*(::std::ptr::null::<_zend_module_entry>())).module_startup_func as *const _ as usize
14057        },
14058        48usize,
14059        concat!(
14060            "Offset of field: ",
14061            stringify!(_zend_module_entry),
14062            "::",
14063            stringify!(module_startup_func)
14064        )
14065    );
14066    assert_eq!(
14067        unsafe {
14068            &(*(::std::ptr::null::<_zend_module_entry>())).module_shutdown_func as *const _ as usize
14069        },
14070        56usize,
14071        concat!(
14072            "Offset of field: ",
14073            stringify!(_zend_module_entry),
14074            "::",
14075            stringify!(module_shutdown_func)
14076        )
14077    );
14078    assert_eq!(
14079        unsafe {
14080            &(*(::std::ptr::null::<_zend_module_entry>())).request_startup_func as *const _ as usize
14081        },
14082        64usize,
14083        concat!(
14084            "Offset of field: ",
14085            stringify!(_zend_module_entry),
14086            "::",
14087            stringify!(request_startup_func)
14088        )
14089    );
14090    assert_eq!(
14091        unsafe {
14092            &(*(::std::ptr::null::<_zend_module_entry>())).request_shutdown_func as *const _
14093                as usize
14094        },
14095        72usize,
14096        concat!(
14097            "Offset of field: ",
14098            stringify!(_zend_module_entry),
14099            "::",
14100            stringify!(request_shutdown_func)
14101        )
14102    );
14103    assert_eq!(
14104        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).info_func as *const _ as usize },
14105        80usize,
14106        concat!(
14107            "Offset of field: ",
14108            stringify!(_zend_module_entry),
14109            "::",
14110            stringify!(info_func)
14111        )
14112    );
14113    assert_eq!(
14114        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).version as *const _ as usize },
14115        88usize,
14116        concat!(
14117            "Offset of field: ",
14118            stringify!(_zend_module_entry),
14119            "::",
14120            stringify!(version)
14121        )
14122    );
14123    assert_eq!(
14124        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).globals_size as *const _ as usize },
14125        96usize,
14126        concat!(
14127            "Offset of field: ",
14128            stringify!(_zend_module_entry),
14129            "::",
14130            stringify!(globals_size)
14131        )
14132    );
14133    assert_eq!(
14134        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).globals_ptr as *const _ as usize },
14135        104usize,
14136        concat!(
14137            "Offset of field: ",
14138            stringify!(_zend_module_entry),
14139            "::",
14140            stringify!(globals_ptr)
14141        )
14142    );
14143    assert_eq!(
14144        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).globals_ctor as *const _ as usize },
14145        112usize,
14146        concat!(
14147            "Offset of field: ",
14148            stringify!(_zend_module_entry),
14149            "::",
14150            stringify!(globals_ctor)
14151        )
14152    );
14153    assert_eq!(
14154        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).globals_dtor as *const _ as usize },
14155        120usize,
14156        concat!(
14157            "Offset of field: ",
14158            stringify!(_zend_module_entry),
14159            "::",
14160            stringify!(globals_dtor)
14161        )
14162    );
14163    assert_eq!(
14164        unsafe {
14165            &(*(::std::ptr::null::<_zend_module_entry>())).post_deactivate_func as *const _ as usize
14166        },
14167        128usize,
14168        concat!(
14169            "Offset of field: ",
14170            stringify!(_zend_module_entry),
14171            "::",
14172            stringify!(post_deactivate_func)
14173        )
14174    );
14175    assert_eq!(
14176        unsafe {
14177            &(*(::std::ptr::null::<_zend_module_entry>())).module_started as *const _ as usize
14178        },
14179        136usize,
14180        concat!(
14181            "Offset of field: ",
14182            stringify!(_zend_module_entry),
14183            "::",
14184            stringify!(module_started)
14185        )
14186    );
14187    assert_eq!(
14188        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).type_ as *const _ as usize },
14189        140usize,
14190        concat!(
14191            "Offset of field: ",
14192            stringify!(_zend_module_entry),
14193            "::",
14194            stringify!(type_)
14195        )
14196    );
14197    assert_eq!(
14198        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).handle as *const _ as usize },
14199        144usize,
14200        concat!(
14201            "Offset of field: ",
14202            stringify!(_zend_module_entry),
14203            "::",
14204            stringify!(handle)
14205        )
14206    );
14207    assert_eq!(
14208        unsafe {
14209            &(*(::std::ptr::null::<_zend_module_entry>())).module_number as *const _ as usize
14210        },
14211        152usize,
14212        concat!(
14213            "Offset of field: ",
14214            stringify!(_zend_module_entry),
14215            "::",
14216            stringify!(module_number)
14217        )
14218    );
14219    assert_eq!(
14220        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).build_id as *const _ as usize },
14221        160usize,
14222        concat!(
14223            "Offset of field: ",
14224            stringify!(_zend_module_entry),
14225            "::",
14226            stringify!(build_id)
14227        )
14228    );
14229}
14230#[repr(C)]
14231#[derive(Debug, Copy, Clone)]
14232pub struct _zend_module_dep {
14233    pub name: *const ::std::os::raw::c_char,
14234    pub rel: *const ::std::os::raw::c_char,
14235    pub version: *const ::std::os::raw::c_char,
14236    pub type_: ::std::os::raw::c_uchar,
14237}
14238#[test]
14239fn bindgen_test_layout__zend_module_dep() {
14240    assert_eq!(
14241        ::std::mem::size_of::<_zend_module_dep>(),
14242        32usize,
14243        concat!("Size of: ", stringify!(_zend_module_dep))
14244    );
14245    assert_eq!(
14246        ::std::mem::align_of::<_zend_module_dep>(),
14247        8usize,
14248        concat!("Alignment of ", stringify!(_zend_module_dep))
14249    );
14250    assert_eq!(
14251        unsafe { &(*(::std::ptr::null::<_zend_module_dep>())).name as *const _ as usize },
14252        0usize,
14253        concat!(
14254            "Offset of field: ",
14255            stringify!(_zend_module_dep),
14256            "::",
14257            stringify!(name)
14258        )
14259    );
14260    assert_eq!(
14261        unsafe { &(*(::std::ptr::null::<_zend_module_dep>())).rel as *const _ as usize },
14262        8usize,
14263        concat!(
14264            "Offset of field: ",
14265            stringify!(_zend_module_dep),
14266            "::",
14267            stringify!(rel)
14268        )
14269    );
14270    assert_eq!(
14271        unsafe { &(*(::std::ptr::null::<_zend_module_dep>())).version as *const _ as usize },
14272        16usize,
14273        concat!(
14274            "Offset of field: ",
14275            stringify!(_zend_module_dep),
14276            "::",
14277            stringify!(version)
14278        )
14279    );
14280    assert_eq!(
14281        unsafe { &(*(::std::ptr::null::<_zend_module_dep>())).type_ as *const _ as usize },
14282        24usize,
14283        concat!(
14284            "Offset of field: ",
14285            stringify!(_zend_module_dep),
14286            "::",
14287            stringify!(type_)
14288        )
14289    );
14290}
14291extern "C" {
14292    pub static mut module_registry: HashTable;
14293}
14294pub type rsrc_dtor_func_t = ::std::option::Option<unsafe extern "C" fn(res: *mut zend_resource)>;
14295#[repr(C)]
14296#[derive(Debug, Copy, Clone)]
14297pub struct _zend_rsrc_list_dtors_entry {
14298    pub list_dtor_ex: rsrc_dtor_func_t,
14299    pub plist_dtor_ex: rsrc_dtor_func_t,
14300    pub type_name: *const ::std::os::raw::c_char,
14301    pub module_number: ::std::os::raw::c_int,
14302    pub resource_id: ::std::os::raw::c_int,
14303}
14304#[test]
14305fn bindgen_test_layout__zend_rsrc_list_dtors_entry() {
14306    assert_eq!(
14307        ::std::mem::size_of::<_zend_rsrc_list_dtors_entry>(),
14308        32usize,
14309        concat!("Size of: ", stringify!(_zend_rsrc_list_dtors_entry))
14310    );
14311    assert_eq!(
14312        ::std::mem::align_of::<_zend_rsrc_list_dtors_entry>(),
14313        8usize,
14314        concat!("Alignment of ", stringify!(_zend_rsrc_list_dtors_entry))
14315    );
14316    assert_eq!(
14317        unsafe {
14318            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).list_dtor_ex as *const _
14319                as usize
14320        },
14321        0usize,
14322        concat!(
14323            "Offset of field: ",
14324            stringify!(_zend_rsrc_list_dtors_entry),
14325            "::",
14326            stringify!(list_dtor_ex)
14327        )
14328    );
14329    assert_eq!(
14330        unsafe {
14331            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).plist_dtor_ex as *const _
14332                as usize
14333        },
14334        8usize,
14335        concat!(
14336            "Offset of field: ",
14337            stringify!(_zend_rsrc_list_dtors_entry),
14338            "::",
14339            stringify!(plist_dtor_ex)
14340        )
14341    );
14342    assert_eq!(
14343        unsafe {
14344            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).type_name as *const _ as usize
14345        },
14346        16usize,
14347        concat!(
14348            "Offset of field: ",
14349            stringify!(_zend_rsrc_list_dtors_entry),
14350            "::",
14351            stringify!(type_name)
14352        )
14353    );
14354    assert_eq!(
14355        unsafe {
14356            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).module_number as *const _
14357                as usize
14358        },
14359        24usize,
14360        concat!(
14361            "Offset of field: ",
14362            stringify!(_zend_rsrc_list_dtors_entry),
14363            "::",
14364            stringify!(module_number)
14365        )
14366    );
14367    assert_eq!(
14368        unsafe {
14369            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).resource_id as *const _ as usize
14370        },
14371        28usize,
14372        concat!(
14373            "Offset of field: ",
14374            stringify!(_zend_rsrc_list_dtors_entry),
14375            "::",
14376            stringify!(resource_id)
14377        )
14378    );
14379}
14380pub type zend_rsrc_list_dtors_entry = _zend_rsrc_list_dtors_entry;
14381extern "C" {
14382    pub fn zend_register_list_destructors_ex(
14383        ld: rsrc_dtor_func_t,
14384        pld: rsrc_dtor_func_t,
14385        type_name: *const ::std::os::raw::c_char,
14386        module_number: ::std::os::raw::c_int,
14387    ) -> ::std::os::raw::c_int;
14388}
14389extern "C" {
14390    pub fn zend_clean_module_rsrc_dtors(module_number: ::std::os::raw::c_int);
14391}
14392extern "C" {
14393    pub fn zend_init_rsrc_list() -> ::std::os::raw::c_int;
14394}
14395extern "C" {
14396    pub fn zend_init_rsrc_plist() -> ::std::os::raw::c_int;
14397}
14398extern "C" {
14399    pub fn zend_close_rsrc_list(ht: *mut HashTable);
14400}
14401extern "C" {
14402    pub fn zend_destroy_rsrc_list(ht: *mut HashTable);
14403}
14404extern "C" {
14405    pub fn zend_init_rsrc_list_dtors() -> ::std::os::raw::c_int;
14406}
14407extern "C" {
14408    pub fn zend_destroy_rsrc_list_dtors();
14409}
14410extern "C" {
14411    pub fn zend_list_insert(
14412        ptr: *mut ::std::os::raw::c_void,
14413        type_: ::std::os::raw::c_int,
14414    ) -> *mut zval;
14415}
14416extern "C" {
14417    pub fn zend_list_free(res: *mut zend_resource) -> ::std::os::raw::c_int;
14418}
14419extern "C" {
14420    pub fn zend_list_delete(res: *mut zend_resource) -> ::std::os::raw::c_int;
14421}
14422extern "C" {
14423    pub fn zend_list_close(res: *mut zend_resource) -> ::std::os::raw::c_int;
14424}
14425extern "C" {
14426    pub fn zend_register_resource(
14427        rsrc_pointer: *mut ::std::os::raw::c_void,
14428        rsrc_type: ::std::os::raw::c_int,
14429    ) -> *mut zend_resource;
14430}
14431extern "C" {
14432    pub fn zend_fetch_resource(
14433        res: *mut zend_resource,
14434        resource_type_name: *const ::std::os::raw::c_char,
14435        resource_type: ::std::os::raw::c_int,
14436    ) -> *mut ::std::os::raw::c_void;
14437}
14438extern "C" {
14439    pub fn zend_fetch_resource2(
14440        res: *mut zend_resource,
14441        resource_type_name: *const ::std::os::raw::c_char,
14442        resource_type: ::std::os::raw::c_int,
14443        resource_type2: ::std::os::raw::c_int,
14444    ) -> *mut ::std::os::raw::c_void;
14445}
14446extern "C" {
14447    pub fn zend_fetch_resource_ex(
14448        res: *mut zval,
14449        resource_type_name: *const ::std::os::raw::c_char,
14450        resource_type: ::std::os::raw::c_int,
14451    ) -> *mut ::std::os::raw::c_void;
14452}
14453extern "C" {
14454    pub fn zend_fetch_resource2_ex(
14455        res: *mut zval,
14456        resource_type_name: *const ::std::os::raw::c_char,
14457        resource_type: ::std::os::raw::c_int,
14458        resource_type2: ::std::os::raw::c_int,
14459    ) -> *mut ::std::os::raw::c_void;
14460}
14461extern "C" {
14462    pub fn zend_rsrc_list_get_rsrc_type(res: *mut zend_resource) -> *const ::std::os::raw::c_char;
14463}
14464extern "C" {
14465    pub fn zend_fetch_list_dtor_id(
14466        type_name: *const ::std::os::raw::c_char,
14467    ) -> ::std::os::raw::c_int;
14468}
14469extern "C" {
14470    pub static mut zend_execute_ex:
14471        ::std::option::Option<unsafe extern "C" fn(execute_data: *mut zend_execute_data)>;
14472}
14473extern "C" {
14474    pub static mut zend_execute_internal: ::std::option::Option<
14475        unsafe extern "C" fn(execute_data: *mut zend_execute_data, return_value: *mut zval),
14476    >;
14477}
14478extern "C" {
14479    pub fn zend_init_execute_data(
14480        execute_data: *mut zend_execute_data,
14481        op_array: *mut zend_op_array,
14482        return_value: *mut zval,
14483    );
14484}
14485extern "C" {
14486    pub fn zend_init_func_execute_data(
14487        execute_data: *mut zend_execute_data,
14488        op_array: *mut zend_op_array,
14489        return_value: *mut zval,
14490    );
14491}
14492extern "C" {
14493    pub fn zend_init_code_execute_data(
14494        execute_data: *mut zend_execute_data,
14495        op_array: *mut zend_op_array,
14496        return_value: *mut zval,
14497    );
14498}
14499extern "C" {
14500    pub fn zend_execute(op_array: *mut zend_op_array, return_value: *mut zval);
14501}
14502extern "C" {
14503    pub fn zend_lookup_class(name: *mut zend_string) -> *mut zend_class_entry;
14504}
14505extern "C" {
14506    pub fn zend_lookup_class_ex(
14507        name: *mut zend_string,
14508        key: *const zval,
14509        use_autoload: ::std::os::raw::c_int,
14510    ) -> *mut zend_class_entry;
14511}
14512extern "C" {
14513    pub fn zend_get_called_scope(ex: *mut zend_execute_data) -> *mut zend_class_entry;
14514}
14515extern "C" {
14516    pub fn zend_get_this_object(ex: *mut zend_execute_data) -> *mut zend_object;
14517}
14518extern "C" {
14519    pub fn zend_eval_string(
14520        str_: *mut ::std::os::raw::c_char,
14521        retval_ptr: *mut zval,
14522        string_name: *mut ::std::os::raw::c_char,
14523    ) -> ::std::os::raw::c_int;
14524}
14525extern "C" {
14526    pub fn zend_eval_stringl(
14527        str_: *mut ::std::os::raw::c_char,
14528        str_len: size_t,
14529        retval_ptr: *mut zval,
14530        string_name: *mut ::std::os::raw::c_char,
14531    ) -> ::std::os::raw::c_int;
14532}
14533extern "C" {
14534    pub fn zend_eval_string_ex(
14535        str_: *mut ::std::os::raw::c_char,
14536        retval_ptr: *mut zval,
14537        string_name: *mut ::std::os::raw::c_char,
14538        handle_exceptions: ::std::os::raw::c_int,
14539    ) -> ::std::os::raw::c_int;
14540}
14541extern "C" {
14542    pub fn zend_eval_stringl_ex(
14543        str_: *mut ::std::os::raw::c_char,
14544        str_len: size_t,
14545        retval_ptr: *mut zval,
14546        string_name: *mut ::std::os::raw::c_char,
14547        handle_exceptions: ::std::os::raw::c_int,
14548    ) -> ::std::os::raw::c_int;
14549}
14550extern "C" {
14551    pub static zend_pass_function: zend_internal_function;
14552}
14553extern "C" {
14554    pub fn zend_check_internal_arg_type(zf: *mut zend_function, arg_num: u32, arg: *mut zval);
14555}
14556extern "C" {
14557    pub fn zend_check_arg_type(
14558        zf: *mut zend_function,
14559        arg_num: u32,
14560        arg: *mut zval,
14561        default_value: *mut zval,
14562        cache_slot: *mut *mut ::std::os::raw::c_void,
14563    ) -> ::std::os::raw::c_int;
14564}
14565extern "C" {
14566    pub fn zend_missing_arg_error(execute_data: *mut zend_execute_data);
14567}
14568#[repr(C)]
14569#[derive(Debug, Copy, Clone)]
14570pub struct _zend_vm_stack {
14571    pub top: *mut zval,
14572    pub end: *mut zval,
14573    pub prev: zend_vm_stack,
14574}
14575#[test]
14576fn bindgen_test_layout__zend_vm_stack() {
14577    assert_eq!(
14578        ::std::mem::size_of::<_zend_vm_stack>(),
14579        24usize,
14580        concat!("Size of: ", stringify!(_zend_vm_stack))
14581    );
14582    assert_eq!(
14583        ::std::mem::align_of::<_zend_vm_stack>(),
14584        8usize,
14585        concat!("Alignment of ", stringify!(_zend_vm_stack))
14586    );
14587    assert_eq!(
14588        unsafe { &(*(::std::ptr::null::<_zend_vm_stack>())).top as *const _ as usize },
14589        0usize,
14590        concat!(
14591            "Offset of field: ",
14592            stringify!(_zend_vm_stack),
14593            "::",
14594            stringify!(top)
14595        )
14596    );
14597    assert_eq!(
14598        unsafe { &(*(::std::ptr::null::<_zend_vm_stack>())).end as *const _ as usize },
14599        8usize,
14600        concat!(
14601            "Offset of field: ",
14602            stringify!(_zend_vm_stack),
14603            "::",
14604            stringify!(end)
14605        )
14606    );
14607    assert_eq!(
14608        unsafe { &(*(::std::ptr::null::<_zend_vm_stack>())).prev as *const _ as usize },
14609        16usize,
14610        concat!(
14611            "Offset of field: ",
14612            stringify!(_zend_vm_stack),
14613            "::",
14614            stringify!(prev)
14615        )
14616    );
14617}
14618extern "C" {
14619    pub fn zend_vm_stack_init();
14620}
14621extern "C" {
14622    pub fn zend_vm_stack_destroy();
14623}
14624extern "C" {
14625    pub fn zend_vm_stack_extend(size: size_t) -> *mut ::std::os::raw::c_void;
14626}
14627extern "C" {
14628    pub fn zend_get_executed_filename() -> *const ::std::os::raw::c_char;
14629}
14630extern "C" {
14631    pub fn zend_get_executed_filename_ex() -> *mut zend_string;
14632}
14633extern "C" {
14634    pub fn zend_get_executed_lineno() -> u32;
14635}
14636extern "C" {
14637    pub fn zend_get_executed_scope() -> *mut zend_class_entry;
14638}
14639extern "C" {
14640    pub fn zend_is_executing() -> zend_bool;
14641}
14642extern "C" {
14643    pub fn zend_set_timeout(seconds: zend_long, reset_signals: ::std::os::raw::c_int);
14644}
14645extern "C" {
14646    pub fn zend_unset_timeout();
14647}
14648extern "C" {
14649    pub fn zend_timeout(dummy: ::std::os::raw::c_int);
14650}
14651extern "C" {
14652    pub fn zend_fetch_class(
14653        class_name: *mut zend_string,
14654        fetch_type: ::std::os::raw::c_int,
14655    ) -> *mut zend_class_entry;
14656}
14657extern "C" {
14658    pub fn zend_fetch_class_by_name(
14659        class_name: *mut zend_string,
14660        key: *const zval,
14661        fetch_type: ::std::os::raw::c_int,
14662    ) -> *mut zend_class_entry;
14663}
14664extern "C" {
14665    pub fn zend_verify_abstract_class(ce: *mut zend_class_entry);
14666}
14667extern "C" {
14668    pub fn zend_fetch_dimension_const(
14669        result: *mut zval,
14670        container: *mut zval,
14671        dim: *mut zval,
14672        type_: ::std::os::raw::c_int,
14673    );
14674}
14675extern "C" {
14676    pub fn zend_get_compiled_variable_value(
14677        execute_data_ptr: *const zend_execute_data,
14678        var: u32,
14679    ) -> *mut zval;
14680}
14681extern "C" {
14682    pub fn zend_set_user_opcode_handler(
14683        opcode: zend_uchar,
14684        handler: user_opcode_handler_t,
14685    ) -> ::std::os::raw::c_int;
14686}
14687extern "C" {
14688    pub fn zend_get_user_opcode_handler(opcode: zend_uchar) -> user_opcode_handler_t;
14689}
14690pub type zend_free_op = *mut zval;
14691extern "C" {
14692    pub fn zend_get_zval_ptr(
14693        op_type: ::std::os::raw::c_int,
14694        node: *const znode_op,
14695        execute_data: *const zend_execute_data,
14696        should_free: *mut zend_free_op,
14697        type_: ::std::os::raw::c_int,
14698    ) -> *mut zval;
14699}
14700extern "C" {
14701    pub fn zend_clean_and_cache_symbol_table(symbol_table: *mut zend_array);
14702}
14703extern "C" {
14704    pub fn zend_free_compiled_variables(execute_data: *mut zend_execute_data);
14705}
14706extern "C" {
14707    pub fn zend_cleanup_unfinished_execution(
14708        execute_data: *mut zend_execute_data,
14709        op_num: u32,
14710        catch_op_num: u32,
14711    );
14712}
14713extern "C" {
14714    pub fn zend_do_fcall_overloaded(
14715        call: *mut zend_execute_data,
14716        ret: *mut zval,
14717    ) -> ::std::os::raw::c_int;
14718}
14719#[repr(C)]
14720#[derive(Debug, Copy, Clone)]
14721pub struct _zend_function_entry {
14722    pub fname: *const ::std::os::raw::c_char,
14723    pub handler: zif_handler,
14724    pub arg_info: *const _zend_internal_arg_info,
14725    pub num_args: u32,
14726    pub flags: u32,
14727}
14728#[test]
14729fn bindgen_test_layout__zend_function_entry() {
14730    assert_eq!(
14731        ::std::mem::size_of::<_zend_function_entry>(),
14732        32usize,
14733        concat!("Size of: ", stringify!(_zend_function_entry))
14734    );
14735    assert_eq!(
14736        ::std::mem::align_of::<_zend_function_entry>(),
14737        8usize,
14738        concat!("Alignment of ", stringify!(_zend_function_entry))
14739    );
14740    assert_eq!(
14741        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).fname as *const _ as usize },
14742        0usize,
14743        concat!(
14744            "Offset of field: ",
14745            stringify!(_zend_function_entry),
14746            "::",
14747            stringify!(fname)
14748        )
14749    );
14750    assert_eq!(
14751        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).handler as *const _ as usize },
14752        8usize,
14753        concat!(
14754            "Offset of field: ",
14755            stringify!(_zend_function_entry),
14756            "::",
14757            stringify!(handler)
14758        )
14759    );
14760    assert_eq!(
14761        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).arg_info as *const _ as usize },
14762        16usize,
14763        concat!(
14764            "Offset of field: ",
14765            stringify!(_zend_function_entry),
14766            "::",
14767            stringify!(arg_info)
14768        )
14769    );
14770    assert_eq!(
14771        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).num_args as *const _ as usize },
14772        24usize,
14773        concat!(
14774            "Offset of field: ",
14775            stringify!(_zend_function_entry),
14776            "::",
14777            stringify!(num_args)
14778        )
14779    );
14780    assert_eq!(
14781        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).flags as *const _ as usize },
14782        28usize,
14783        concat!(
14784            "Offset of field: ",
14785            stringify!(_zend_function_entry),
14786            "::",
14787            stringify!(flags)
14788        )
14789    );
14790}
14791pub type zend_function_entry = _zend_function_entry;
14792#[repr(C)]
14793#[derive(Copy, Clone)]
14794pub struct _zend_fcall_info {
14795    pub size: size_t,
14796    pub function_name: zval,
14797    pub retval: *mut zval,
14798    pub params: *mut zval,
14799    pub object: *mut zend_object,
14800    pub no_separation: zend_bool,
14801    pub param_count: u32,
14802}
14803#[test]
14804fn bindgen_test_layout__zend_fcall_info() {
14805    assert_eq!(
14806        ::std::mem::size_of::<_zend_fcall_info>(),
14807        56usize,
14808        concat!("Size of: ", stringify!(_zend_fcall_info))
14809    );
14810    assert_eq!(
14811        ::std::mem::align_of::<_zend_fcall_info>(),
14812        8usize,
14813        concat!("Alignment of ", stringify!(_zend_fcall_info))
14814    );
14815    assert_eq!(
14816        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).size as *const _ as usize },
14817        0usize,
14818        concat!(
14819            "Offset of field: ",
14820            stringify!(_zend_fcall_info),
14821            "::",
14822            stringify!(size)
14823        )
14824    );
14825    assert_eq!(
14826        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).function_name as *const _ as usize },
14827        8usize,
14828        concat!(
14829            "Offset of field: ",
14830            stringify!(_zend_fcall_info),
14831            "::",
14832            stringify!(function_name)
14833        )
14834    );
14835    assert_eq!(
14836        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).retval as *const _ as usize },
14837        24usize,
14838        concat!(
14839            "Offset of field: ",
14840            stringify!(_zend_fcall_info),
14841            "::",
14842            stringify!(retval)
14843        )
14844    );
14845    assert_eq!(
14846        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).params as *const _ as usize },
14847        32usize,
14848        concat!(
14849            "Offset of field: ",
14850            stringify!(_zend_fcall_info),
14851            "::",
14852            stringify!(params)
14853        )
14854    );
14855    assert_eq!(
14856        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).object as *const _ as usize },
14857        40usize,
14858        concat!(
14859            "Offset of field: ",
14860            stringify!(_zend_fcall_info),
14861            "::",
14862            stringify!(object)
14863        )
14864    );
14865    assert_eq!(
14866        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).no_separation as *const _ as usize },
14867        48usize,
14868        concat!(
14869            "Offset of field: ",
14870            stringify!(_zend_fcall_info),
14871            "::",
14872            stringify!(no_separation)
14873        )
14874    );
14875    assert_eq!(
14876        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).param_count as *const _ as usize },
14877        52usize,
14878        concat!(
14879            "Offset of field: ",
14880            stringify!(_zend_fcall_info),
14881            "::",
14882            stringify!(param_count)
14883        )
14884    );
14885}
14886pub type zend_fcall_info = _zend_fcall_info;
14887#[repr(C)]
14888#[derive(Debug, Copy, Clone)]
14889pub struct _zend_fcall_info_cache {
14890    pub initialized: zend_bool,
14891    pub function_handler: *mut zend_function,
14892    pub calling_scope: *mut zend_class_entry,
14893    pub called_scope: *mut zend_class_entry,
14894    pub object: *mut zend_object,
14895}
14896#[test]
14897fn bindgen_test_layout__zend_fcall_info_cache() {
14898    assert_eq!(
14899        ::std::mem::size_of::<_zend_fcall_info_cache>(),
14900        40usize,
14901        concat!("Size of: ", stringify!(_zend_fcall_info_cache))
14902    );
14903    assert_eq!(
14904        ::std::mem::align_of::<_zend_fcall_info_cache>(),
14905        8usize,
14906        concat!("Alignment of ", stringify!(_zend_fcall_info_cache))
14907    );
14908    assert_eq!(
14909        unsafe {
14910            &(*(::std::ptr::null::<_zend_fcall_info_cache>())).initialized as *const _ as usize
14911        },
14912        0usize,
14913        concat!(
14914            "Offset of field: ",
14915            stringify!(_zend_fcall_info_cache),
14916            "::",
14917            stringify!(initialized)
14918        )
14919    );
14920    assert_eq!(
14921        unsafe {
14922            &(*(::std::ptr::null::<_zend_fcall_info_cache>())).function_handler as *const _ as usize
14923        },
14924        8usize,
14925        concat!(
14926            "Offset of field: ",
14927            stringify!(_zend_fcall_info_cache),
14928            "::",
14929            stringify!(function_handler)
14930        )
14931    );
14932    assert_eq!(
14933        unsafe {
14934            &(*(::std::ptr::null::<_zend_fcall_info_cache>())).calling_scope as *const _ as usize
14935        },
14936        16usize,
14937        concat!(
14938            "Offset of field: ",
14939            stringify!(_zend_fcall_info_cache),
14940            "::",
14941            stringify!(calling_scope)
14942        )
14943    );
14944    assert_eq!(
14945        unsafe {
14946            &(*(::std::ptr::null::<_zend_fcall_info_cache>())).called_scope as *const _ as usize
14947        },
14948        24usize,
14949        concat!(
14950            "Offset of field: ",
14951            stringify!(_zend_fcall_info_cache),
14952            "::",
14953            stringify!(called_scope)
14954        )
14955    );
14956    assert_eq!(
14957        unsafe { &(*(::std::ptr::null::<_zend_fcall_info_cache>())).object as *const _ as usize },
14958        32usize,
14959        concat!(
14960            "Offset of field: ",
14961            stringify!(_zend_fcall_info_cache),
14962            "::",
14963            stringify!(object)
14964        )
14965    );
14966}
14967pub type zend_fcall_info_cache = _zend_fcall_info_cache;
14968extern "C" {
14969    pub fn zend_next_free_module() -> ::std::os::raw::c_int;
14970}
14971extern "C" {
14972    pub fn zend_get_parameters(
14973        ht: ::std::os::raw::c_int,
14974        param_count: ::std::os::raw::c_int,
14975        ...
14976    ) -> ::std::os::raw::c_int;
14977}
14978extern "C" {
14979    pub fn zend_get_parameters_ex(param_count: ::std::os::raw::c_int, ...)
14980        -> ::std::os::raw::c_int;
14981}
14982extern "C" {
14983    pub fn _zend_get_parameters_array_ex(
14984        param_count: ::std::os::raw::c_int,
14985        argument_array: *mut zval,
14986    ) -> ::std::os::raw::c_int;
14987}
14988extern "C" {
14989    pub fn zend_copy_parameters_array(
14990        param_count: ::std::os::raw::c_int,
14991        argument_array: *mut zval,
14992    ) -> ::std::os::raw::c_int;
14993}
14994extern "C" {
14995    pub fn zend_parse_parameters(
14996        num_args: ::std::os::raw::c_int,
14997        type_spec: *const ::std::os::raw::c_char,
14998        ...
14999    ) -> ::std::os::raw::c_int;
15000}
15001extern "C" {
15002    pub fn zend_parse_parameters_ex(
15003        flags: ::std::os::raw::c_int,
15004        num_args: ::std::os::raw::c_int,
15005        type_spec: *const ::std::os::raw::c_char,
15006        ...
15007    ) -> ::std::os::raw::c_int;
15008}
15009extern "C" {
15010    pub fn zend_parse_parameters_throw(
15011        num_args: ::std::os::raw::c_int,
15012        type_spec: *const ::std::os::raw::c_char,
15013        ...
15014    ) -> ::std::os::raw::c_int;
15015}
15016extern "C" {
15017    pub fn zend_zval_type_name(arg: *const zval) -> *mut ::std::os::raw::c_char;
15018}
15019extern "C" {
15020    pub fn zend_zval_get_type(arg: *const zval) -> *mut zend_string;
15021}
15022extern "C" {
15023    pub fn zend_parse_method_parameters(
15024        num_args: ::std::os::raw::c_int,
15025        this_ptr: *mut zval,
15026        type_spec: *const ::std::os::raw::c_char,
15027        ...
15028    ) -> ::std::os::raw::c_int;
15029}
15030extern "C" {
15031    pub fn zend_parse_method_parameters_ex(
15032        flags: ::std::os::raw::c_int,
15033        num_args: ::std::os::raw::c_int,
15034        this_ptr: *mut zval,
15035        type_spec: *const ::std::os::raw::c_char,
15036        ...
15037    ) -> ::std::os::raw::c_int;
15038}
15039extern "C" {
15040    pub fn zend_parse_parameter(
15041        flags: ::std::os::raw::c_int,
15042        arg_num: ::std::os::raw::c_int,
15043        arg: *mut zval,
15044        spec: *const ::std::os::raw::c_char,
15045        ...
15046    ) -> ::std::os::raw::c_int;
15047}
15048extern "C" {
15049    pub fn zend_register_functions(
15050        scope: *mut zend_class_entry,
15051        functions: *const zend_function_entry,
15052        function_table: *mut HashTable,
15053        type_: ::std::os::raw::c_int,
15054    ) -> ::std::os::raw::c_int;
15055}
15056extern "C" {
15057    pub fn zend_unregister_functions(
15058        functions: *const zend_function_entry,
15059        count: ::std::os::raw::c_int,
15060        function_table: *mut HashTable,
15061    );
15062}
15063extern "C" {
15064    pub fn zend_startup_module(module_entry: *mut zend_module_entry) -> ::std::os::raw::c_int;
15065}
15066extern "C" {
15067    pub fn zend_register_internal_module(
15068        module_entry: *mut zend_module_entry,
15069    ) -> *mut zend_module_entry;
15070}
15071extern "C" {
15072    pub fn zend_register_module_ex(module: *mut zend_module_entry) -> *mut zend_module_entry;
15073}
15074extern "C" {
15075    pub fn zend_startup_module_ex(module: *mut zend_module_entry) -> ::std::os::raw::c_int;
15076}
15077extern "C" {
15078    pub fn zend_startup_modules() -> ::std::os::raw::c_int;
15079}
15080extern "C" {
15081    pub fn zend_collect_module_handlers();
15082}
15083extern "C" {
15084    pub fn zend_destroy_modules();
15085}
15086extern "C" {
15087    pub fn zend_check_magic_method_implementation(
15088        ce: *const zend_class_entry,
15089        fptr: *const zend_function,
15090        error_type: ::std::os::raw::c_int,
15091    );
15092}
15093extern "C" {
15094    pub fn zend_register_internal_class(
15095        class_entry: *mut zend_class_entry,
15096    ) -> *mut zend_class_entry;
15097}
15098extern "C" {
15099    pub fn zend_register_internal_class_ex(
15100        class_entry: *mut zend_class_entry,
15101        parent_ce: *mut zend_class_entry,
15102    ) -> *mut zend_class_entry;
15103}
15104extern "C" {
15105    pub fn zend_register_internal_interface(
15106        orig_class_entry: *mut zend_class_entry,
15107    ) -> *mut zend_class_entry;
15108}
15109extern "C" {
15110    pub fn zend_class_implements(
15111        class_entry: *mut zend_class_entry,
15112        num_interfaces: ::std::os::raw::c_int,
15113        ...
15114    );
15115}
15116extern "C" {
15117    pub fn zend_register_class_alias_ex(
15118        name: *const ::std::os::raw::c_char,
15119        name_len: size_t,
15120        ce: *mut zend_class_entry,
15121    ) -> ::std::os::raw::c_int;
15122}
15123extern "C" {
15124    pub fn zend_disable_function(
15125        function_name: *mut ::std::os::raw::c_char,
15126        function_name_length: size_t,
15127    ) -> ::std::os::raw::c_int;
15128}
15129extern "C" {
15130    pub fn zend_disable_class(
15131        class_name: *mut ::std::os::raw::c_char,
15132        class_name_length: size_t,
15133    ) -> ::std::os::raw::c_int;
15134}
15135extern "C" {
15136    pub fn zend_wrong_param_count();
15137}
15138extern "C" {
15139    pub fn zend_get_callable_name_ex(
15140        callable: *mut zval,
15141        object: *mut zend_object,
15142    ) -> *mut zend_string;
15143}
15144extern "C" {
15145    pub fn zend_get_callable_name(callable: *mut zval) -> *mut zend_string;
15146}
15147extern "C" {
15148    pub fn zend_is_callable_ex(
15149        callable: *mut zval,
15150        object: *mut zend_object,
15151        check_flags: u32,
15152        callable_name: *mut *mut zend_string,
15153        fcc: *mut zend_fcall_info_cache,
15154        error: *mut *mut ::std::os::raw::c_char,
15155    ) -> zend_bool;
15156}
15157extern "C" {
15158    pub fn zend_is_callable(
15159        callable: *mut zval,
15160        check_flags: u32,
15161        callable_name: *mut *mut zend_string,
15162    ) -> zend_bool;
15163}
15164extern "C" {
15165    pub fn zend_make_callable(
15166        callable: *mut zval,
15167        callable_name: *mut *mut zend_string,
15168    ) -> zend_bool;
15169}
15170extern "C" {
15171    pub fn zend_get_module_version(
15172        module_name: *const ::std::os::raw::c_char,
15173    ) -> *const ::std::os::raw::c_char;
15174}
15175extern "C" {
15176    pub fn zend_get_module_started(
15177        module_name: *const ::std::os::raw::c_char,
15178    ) -> ::std::os::raw::c_int;
15179}
15180extern "C" {
15181    pub fn zend_declare_property_ex(
15182        ce: *mut zend_class_entry,
15183        name: *mut zend_string,
15184        property: *mut zval,
15185        access_type: ::std::os::raw::c_int,
15186        doc_comment: *mut zend_string,
15187    ) -> ::std::os::raw::c_int;
15188}
15189extern "C" {
15190    pub fn zend_declare_property(
15191        ce: *mut zend_class_entry,
15192        name: *const ::std::os::raw::c_char,
15193        name_length: size_t,
15194        property: *mut zval,
15195        access_type: ::std::os::raw::c_int,
15196    ) -> ::std::os::raw::c_int;
15197}
15198extern "C" {
15199    pub fn zend_declare_property_null(
15200        ce: *mut zend_class_entry,
15201        name: *const ::std::os::raw::c_char,
15202        name_length: size_t,
15203        access_type: ::std::os::raw::c_int,
15204    ) -> ::std::os::raw::c_int;
15205}
15206extern "C" {
15207    pub fn zend_declare_property_bool(
15208        ce: *mut zend_class_entry,
15209        name: *const ::std::os::raw::c_char,
15210        name_length: size_t,
15211        value: zend_long,
15212        access_type: ::std::os::raw::c_int,
15213    ) -> ::std::os::raw::c_int;
15214}
15215extern "C" {
15216    pub fn zend_declare_property_long(
15217        ce: *mut zend_class_entry,
15218        name: *const ::std::os::raw::c_char,
15219        name_length: size_t,
15220        value: zend_long,
15221        access_type: ::std::os::raw::c_int,
15222    ) -> ::std::os::raw::c_int;
15223}
15224extern "C" {
15225    pub fn zend_declare_property_double(
15226        ce: *mut zend_class_entry,
15227        name: *const ::std::os::raw::c_char,
15228        name_length: size_t,
15229        value: f64,
15230        access_type: ::std::os::raw::c_int,
15231    ) -> ::std::os::raw::c_int;
15232}
15233extern "C" {
15234    pub fn zend_declare_property_string(
15235        ce: *mut zend_class_entry,
15236        name: *const ::std::os::raw::c_char,
15237        name_length: size_t,
15238        value: *const ::std::os::raw::c_char,
15239        access_type: ::std::os::raw::c_int,
15240    ) -> ::std::os::raw::c_int;
15241}
15242extern "C" {
15243    pub fn zend_declare_property_stringl(
15244        ce: *mut zend_class_entry,
15245        name: *const ::std::os::raw::c_char,
15246        name_length: size_t,
15247        value: *const ::std::os::raw::c_char,
15248        value_len: size_t,
15249        access_type: ::std::os::raw::c_int,
15250    ) -> ::std::os::raw::c_int;
15251}
15252extern "C" {
15253    pub fn zend_declare_class_constant_ex(
15254        ce: *mut zend_class_entry,
15255        name: *mut zend_string,
15256        value: *mut zval,
15257        access_type: ::std::os::raw::c_int,
15258        doc_comment: *mut zend_string,
15259    ) -> ::std::os::raw::c_int;
15260}
15261extern "C" {
15262    pub fn zend_declare_class_constant(
15263        ce: *mut zend_class_entry,
15264        name: *const ::std::os::raw::c_char,
15265        name_length: size_t,
15266        value: *mut zval,
15267    ) -> ::std::os::raw::c_int;
15268}
15269extern "C" {
15270    pub fn zend_declare_class_constant_null(
15271        ce: *mut zend_class_entry,
15272        name: *const ::std::os::raw::c_char,
15273        name_length: size_t,
15274    ) -> ::std::os::raw::c_int;
15275}
15276extern "C" {
15277    pub fn zend_declare_class_constant_long(
15278        ce: *mut zend_class_entry,
15279        name: *const ::std::os::raw::c_char,
15280        name_length: size_t,
15281        value: zend_long,
15282    ) -> ::std::os::raw::c_int;
15283}
15284extern "C" {
15285    pub fn zend_declare_class_constant_bool(
15286        ce: *mut zend_class_entry,
15287        name: *const ::std::os::raw::c_char,
15288        name_length: size_t,
15289        value: zend_bool,
15290    ) -> ::std::os::raw::c_int;
15291}
15292extern "C" {
15293    pub fn zend_declare_class_constant_double(
15294        ce: *mut zend_class_entry,
15295        name: *const ::std::os::raw::c_char,
15296        name_length: size_t,
15297        value: f64,
15298    ) -> ::std::os::raw::c_int;
15299}
15300extern "C" {
15301    pub fn zend_declare_class_constant_stringl(
15302        ce: *mut zend_class_entry,
15303        name: *const ::std::os::raw::c_char,
15304        name_length: size_t,
15305        value: *const ::std::os::raw::c_char,
15306        value_length: size_t,
15307    ) -> ::std::os::raw::c_int;
15308}
15309extern "C" {
15310    pub fn zend_declare_class_constant_string(
15311        ce: *mut zend_class_entry,
15312        name: *const ::std::os::raw::c_char,
15313        name_length: size_t,
15314        value: *const ::std::os::raw::c_char,
15315    ) -> ::std::os::raw::c_int;
15316}
15317extern "C" {
15318    pub fn zend_update_class_constants(class_type: *mut zend_class_entry) -> ::std::os::raw::c_int;
15319}
15320extern "C" {
15321    pub fn zend_update_property_ex(
15322        scope: *mut zend_class_entry,
15323        object: *mut zval,
15324        name: *mut zend_string,
15325        value: *mut zval,
15326    );
15327}
15328extern "C" {
15329    pub fn zend_update_property(
15330        scope: *mut zend_class_entry,
15331        object: *mut zval,
15332        name: *const ::std::os::raw::c_char,
15333        name_length: size_t,
15334        value: *mut zval,
15335    );
15336}
15337extern "C" {
15338    pub fn zend_update_property_null(
15339        scope: *mut zend_class_entry,
15340        object: *mut zval,
15341        name: *const ::std::os::raw::c_char,
15342        name_length: size_t,
15343    );
15344}
15345extern "C" {
15346    pub fn zend_update_property_bool(
15347        scope: *mut zend_class_entry,
15348        object: *mut zval,
15349        name: *const ::std::os::raw::c_char,
15350        name_length: size_t,
15351        value: zend_long,
15352    );
15353}
15354extern "C" {
15355    pub fn zend_update_property_long(
15356        scope: *mut zend_class_entry,
15357        object: *mut zval,
15358        name: *const ::std::os::raw::c_char,
15359        name_length: size_t,
15360        value: zend_long,
15361    );
15362}
15363extern "C" {
15364    pub fn zend_update_property_double(
15365        scope: *mut zend_class_entry,
15366        object: *mut zval,
15367        name: *const ::std::os::raw::c_char,
15368        name_length: size_t,
15369        value: f64,
15370    );
15371}
15372extern "C" {
15373    pub fn zend_update_property_str(
15374        scope: *mut zend_class_entry,
15375        object: *mut zval,
15376        name: *const ::std::os::raw::c_char,
15377        name_length: size_t,
15378        value: *mut zend_string,
15379    );
15380}
15381extern "C" {
15382    pub fn zend_update_property_string(
15383        scope: *mut zend_class_entry,
15384        object: *mut zval,
15385        name: *const ::std::os::raw::c_char,
15386        name_length: size_t,
15387        value: *const ::std::os::raw::c_char,
15388    );
15389}
15390extern "C" {
15391    pub fn zend_update_property_stringl(
15392        scope: *mut zend_class_entry,
15393        object: *mut zval,
15394        name: *const ::std::os::raw::c_char,
15395        name_length: size_t,
15396        value: *const ::std::os::raw::c_char,
15397        value_length: size_t,
15398    );
15399}
15400extern "C" {
15401    pub fn zend_unset_property(
15402        scope: *mut zend_class_entry,
15403        object: *mut zval,
15404        name: *const ::std::os::raw::c_char,
15405        name_length: size_t,
15406    );
15407}
15408extern "C" {
15409    pub fn zend_update_static_property(
15410        scope: *mut zend_class_entry,
15411        name: *const ::std::os::raw::c_char,
15412        name_length: size_t,
15413        value: *mut zval,
15414    ) -> ::std::os::raw::c_int;
15415}
15416extern "C" {
15417    pub fn zend_update_static_property_null(
15418        scope: *mut zend_class_entry,
15419        name: *const ::std::os::raw::c_char,
15420        name_length: size_t,
15421    ) -> ::std::os::raw::c_int;
15422}
15423extern "C" {
15424    pub fn zend_update_static_property_bool(
15425        scope: *mut zend_class_entry,
15426        name: *const ::std::os::raw::c_char,
15427        name_length: size_t,
15428        value: zend_long,
15429    ) -> ::std::os::raw::c_int;
15430}
15431extern "C" {
15432    pub fn zend_update_static_property_long(
15433        scope: *mut zend_class_entry,
15434        name: *const ::std::os::raw::c_char,
15435        name_length: size_t,
15436        value: zend_long,
15437    ) -> ::std::os::raw::c_int;
15438}
15439extern "C" {
15440    pub fn zend_update_static_property_double(
15441        scope: *mut zend_class_entry,
15442        name: *const ::std::os::raw::c_char,
15443        name_length: size_t,
15444        value: f64,
15445    ) -> ::std::os::raw::c_int;
15446}
15447extern "C" {
15448    pub fn zend_update_static_property_string(
15449        scope: *mut zend_class_entry,
15450        name: *const ::std::os::raw::c_char,
15451        name_length: size_t,
15452        value: *const ::std::os::raw::c_char,
15453    ) -> ::std::os::raw::c_int;
15454}
15455extern "C" {
15456    pub fn zend_update_static_property_stringl(
15457        scope: *mut zend_class_entry,
15458        name: *const ::std::os::raw::c_char,
15459        name_length: size_t,
15460        value: *const ::std::os::raw::c_char,
15461        value_length: size_t,
15462    ) -> ::std::os::raw::c_int;
15463}
15464extern "C" {
15465    pub fn zend_read_property_ex(
15466        scope: *mut zend_class_entry,
15467        object: *mut zval,
15468        name: *mut zend_string,
15469        silent: zend_bool,
15470        rv: *mut zval,
15471    ) -> *mut zval;
15472}
15473extern "C" {
15474    pub fn zend_read_property(
15475        scope: *mut zend_class_entry,
15476        object: *mut zval,
15477        name: *const ::std::os::raw::c_char,
15478        name_length: size_t,
15479        silent: zend_bool,
15480        rv: *mut zval,
15481    ) -> *mut zval;
15482}
15483extern "C" {
15484    pub fn zend_read_static_property(
15485        scope: *mut zend_class_entry,
15486        name: *const ::std::os::raw::c_char,
15487        name_length: size_t,
15488        silent: zend_bool,
15489    ) -> *mut zval;
15490}
15491extern "C" {
15492    pub fn zend_get_type_by_const(type_: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char;
15493}
15494extern "C" {
15495    pub fn zend_merge_properties(obj: *mut zval, properties: *mut HashTable);
15496}
15497extern "C" {
15498    pub static empty_fcall_info: zend_fcall_info;
15499}
15500extern "C" {
15501    pub static empty_fcall_info_cache: zend_fcall_info_cache;
15502}
15503extern "C" {
15504    #[doc = " Build zend_call_info/cache from a zval*"]
15505    #[doc = ""]
15506    #[doc = " Caller is responsible to provide a return value (fci->retval), otherwise the we will crash."]
15507    #[doc = " In order to pass parameters the following members need to be set:"]
15508    #[doc = " fci->param_count = 0;"]
15509    #[doc = " fci->params = NULL;"]
15510    #[doc = " The callable_name argument may be NULL."]
15511    #[doc = " Set check_flags to IS_CALLABLE_STRICT for every new usage!"]
15512    pub fn zend_fcall_info_init(
15513        callable: *mut zval,
15514        check_flags: u32,
15515        fci: *mut zend_fcall_info,
15516        fcc: *mut zend_fcall_info_cache,
15517        callable_name: *mut *mut zend_string,
15518        error: *mut *mut ::std::os::raw::c_char,
15519    ) -> ::std::os::raw::c_int;
15520}
15521extern "C" {
15522    #[doc = " Clear arguments connected with zend_fcall_info *fci"]
15523    #[doc = " If free_mem is not zero then the params array gets free'd as well"]
15524    pub fn zend_fcall_info_args_clear(fci: *mut zend_fcall_info, free_mem: ::std::os::raw::c_int);
15525}
15526extern "C" {
15527    #[doc = " Save current arguments from zend_fcall_info *fci"]
15528    #[doc = " params array will be set to NULL"]
15529    pub fn zend_fcall_info_args_save(
15530        fci: *mut zend_fcall_info,
15531        param_count: *mut ::std::os::raw::c_int,
15532        params: *mut *mut zval,
15533    );
15534}
15535extern "C" {
15536    #[doc = " Free arguments connected with zend_fcall_info *fci andset back saved ones."]
15537    pub fn zend_fcall_info_args_restore(
15538        fci: *mut zend_fcall_info,
15539        param_count: ::std::os::raw::c_int,
15540        params: *mut zval,
15541    );
15542}
15543extern "C" {
15544    #[doc = " Set or clear the arguments in the zend_call_info struct taking care of"]
15545    #[doc = " refcount. If args is NULL and arguments are set then those are cleared."]
15546    pub fn zend_fcall_info_args(
15547        fci: *mut zend_fcall_info,
15548        args: *mut zval,
15549    ) -> ::std::os::raw::c_int;
15550}
15551extern "C" {
15552    pub fn zend_fcall_info_args_ex(
15553        fci: *mut zend_fcall_info,
15554        func: *mut zend_function,
15555        args: *mut zval,
15556    ) -> ::std::os::raw::c_int;
15557}
15558extern "C" {
15559    #[doc = " Set arguments in the zend_fcall_info struct taking care of refcount."]
15560    #[doc = " If argc is 0 the arguments which are set will be cleared, else pass"]
15561    #[doc = " a variable amount of zval** arguments."]
15562    pub fn zend_fcall_info_argp(
15563        fci: *mut zend_fcall_info,
15564        argc: ::std::os::raw::c_int,
15565        argv: *mut zval,
15566    ) -> ::std::os::raw::c_int;
15567}
15568extern "C" {
15569    #[doc = " Set arguments in the zend_fcall_info struct taking care of refcount."]
15570    #[doc = " If argc is 0 the arguments which are set will be cleared, else pass"]
15571    #[doc = " a variable amount of zval** arguments."]
15572    pub fn zend_fcall_info_argv(
15573        fci: *mut zend_fcall_info,
15574        argc: ::std::os::raw::c_int,
15575        argv: *mut va_list,
15576    ) -> ::std::os::raw::c_int;
15577}
15578extern "C" {
15579    #[doc = " Set arguments in the zend_fcall_info struct taking care of refcount."]
15580    #[doc = " If argc is 0 the arguments which are set will be cleared, else pass"]
15581    #[doc = " a variable amount of zval** arguments."]
15582    pub fn zend_fcall_info_argn(
15583        fci: *mut zend_fcall_info,
15584        argc: ::std::os::raw::c_int,
15585        ...
15586    ) -> ::std::os::raw::c_int;
15587}
15588extern "C" {
15589    #[doc = " Call a function using information created by zend_fcall_info_init()/args()."]
15590    #[doc = " If args is given then those replace the argument info in fci is temporarily."]
15591    pub fn zend_fcall_info_call(
15592        fci: *mut zend_fcall_info,
15593        fcc: *mut zend_fcall_info_cache,
15594        retval: *mut zval,
15595        args: *mut zval,
15596    ) -> ::std::os::raw::c_int;
15597}
15598extern "C" {
15599    pub fn zend_call_function(
15600        fci: *mut zend_fcall_info,
15601        fci_cache: *mut zend_fcall_info_cache,
15602    ) -> ::std::os::raw::c_int;
15603}
15604extern "C" {
15605    pub fn zend_set_hash_symbol(
15606        symbol: *mut zval,
15607        name: *const ::std::os::raw::c_char,
15608        name_length: ::std::os::raw::c_int,
15609        is_ref: zend_bool,
15610        num_symbol_tables: ::std::os::raw::c_int,
15611        ...
15612    ) -> ::std::os::raw::c_int;
15613}
15614extern "C" {
15615    pub fn zend_delete_global_variable(name: *mut zend_string) -> ::std::os::raw::c_int;
15616}
15617extern "C" {
15618    pub fn zend_rebuild_symbol_table() -> *mut zend_array;
15619}
15620extern "C" {
15621    pub fn zend_attach_symbol_table(execute_data: *mut zend_execute_data);
15622}
15623extern "C" {
15624    pub fn zend_detach_symbol_table(execute_data: *mut zend_execute_data);
15625}
15626extern "C" {
15627    pub fn zend_set_local_var(
15628        name: *mut zend_string,
15629        value: *mut zval,
15630        force: ::std::os::raw::c_int,
15631    ) -> ::std::os::raw::c_int;
15632}
15633extern "C" {
15634    pub fn zend_set_local_var_str(
15635        name: *const ::std::os::raw::c_char,
15636        len: size_t,
15637        value: *mut zval,
15638        force: ::std::os::raw::c_int,
15639    ) -> ::std::os::raw::c_int;
15640}
15641extern "C" {
15642    pub fn zend_forbid_dynamic_call(
15643        func_name: *const ::std::os::raw::c_char,
15644    ) -> ::std::os::raw::c_int;
15645}
15646extern "C" {
15647    pub fn zend_find_alias_name(
15648        ce: *mut zend_class_entry,
15649        name: *mut zend_string,
15650    ) -> *mut zend_string;
15651}
15652extern "C" {
15653    pub fn zend_resolve_method_name(
15654        ce: *mut zend_class_entry,
15655        f: *mut zend_function,
15656    ) -> *mut zend_string;
15657}
15658extern "C" {
15659    pub fn zend_get_object_type(ce: *const zend_class_entry) -> *const ::std::os::raw::c_char;
15660}
15661extern "C" {
15662    pub fn zend_is_iterable(iterable: *mut zval) -> zend_bool;
15663}
15664pub const _zend_expected_type_Z_EXPECTED_LONG: _zend_expected_type = 0;
15665pub const _zend_expected_type_Z_EXPECTED_BOOL: _zend_expected_type = 1;
15666pub const _zend_expected_type_Z_EXPECTED_STRING: _zend_expected_type = 2;
15667pub const _zend_expected_type_Z_EXPECTED_ARRAY: _zend_expected_type = 3;
15668pub const _zend_expected_type_Z_EXPECTED_FUNC: _zend_expected_type = 4;
15669pub const _zend_expected_type_Z_EXPECTED_RESOURCE: _zend_expected_type = 5;
15670pub const _zend_expected_type_Z_EXPECTED_PATH: _zend_expected_type = 6;
15671pub const _zend_expected_type_Z_EXPECTED_OBJECT: _zend_expected_type = 7;
15672pub const _zend_expected_type_Z_EXPECTED_DOUBLE: _zend_expected_type = 8;
15673pub const _zend_expected_type_Z_EXPECTED_LAST: _zend_expected_type = 9;
15674pub type _zend_expected_type = ::std::os::raw::c_uint;
15675pub use self::_zend_expected_type as zend_expected_type;
15676extern "C" {
15677    pub fn zend_wrong_parameters_count_error(
15678        throw_: zend_bool,
15679        num_args: ::std::os::raw::c_int,
15680        min_num_args: ::std::os::raw::c_int,
15681        max_num_args: ::std::os::raw::c_int,
15682    );
15683}
15684extern "C" {
15685    pub fn zend_wrong_parameter_type_error(
15686        throw_: zend_bool,
15687        num: ::std::os::raw::c_int,
15688        expected_type: zend_expected_type,
15689        arg: *mut zval,
15690    );
15691}
15692extern "C" {
15693    pub fn zend_wrong_parameter_class_error(
15694        throw_: zend_bool,
15695        num: ::std::os::raw::c_int,
15696        name: *mut ::std::os::raw::c_char,
15697        arg: *mut zval,
15698    );
15699}
15700extern "C" {
15701    pub fn zend_wrong_callback_error(
15702        throw_: zend_bool,
15703        severity: ::std::os::raw::c_int,
15704        num: ::std::os::raw::c_int,
15705        error: *mut ::std::os::raw::c_char,
15706    );
15707}
15708extern "C" {
15709    pub fn zend_parse_arg_class(
15710        arg: *mut zval,
15711        pce: *mut *mut zend_class_entry,
15712        num: ::std::os::raw::c_int,
15713        check_null: ::std::os::raw::c_int,
15714    ) -> ::std::os::raw::c_int;
15715}
15716extern "C" {
15717    pub fn zend_parse_arg_bool_slow(arg: *mut zval, dest: *mut zend_bool) -> ::std::os::raw::c_int;
15718}
15719extern "C" {
15720    pub fn zend_parse_arg_bool_weak(arg: *mut zval, dest: *mut zend_bool) -> ::std::os::raw::c_int;
15721}
15722extern "C" {
15723    pub fn zend_parse_arg_long_slow(arg: *mut zval, dest: *mut zend_long) -> ::std::os::raw::c_int;
15724}
15725extern "C" {
15726    pub fn zend_parse_arg_long_weak(arg: *mut zval, dest: *mut zend_long) -> ::std::os::raw::c_int;
15727}
15728extern "C" {
15729    pub fn zend_parse_arg_long_cap_slow(
15730        arg: *mut zval,
15731        dest: *mut zend_long,
15732    ) -> ::std::os::raw::c_int;
15733}
15734extern "C" {
15735    pub fn zend_parse_arg_long_cap_weak(
15736        arg: *mut zval,
15737        dest: *mut zend_long,
15738    ) -> ::std::os::raw::c_int;
15739}
15740extern "C" {
15741    pub fn zend_parse_arg_double_slow(arg: *mut zval, dest: *mut f64) -> ::std::os::raw::c_int;
15742}
15743extern "C" {
15744    pub fn zend_parse_arg_double_weak(arg: *mut zval, dest: *mut f64) -> ::std::os::raw::c_int;
15745}
15746extern "C" {
15747    pub fn zend_parse_arg_str_slow(
15748        arg: *mut zval,
15749        dest: *mut *mut zend_string,
15750    ) -> ::std::os::raw::c_int;
15751}
15752extern "C" {
15753    pub fn zend_parse_arg_str_weak(
15754        arg: *mut zval,
15755        dest: *mut *mut zend_string,
15756    ) -> ::std::os::raw::c_int;
15757}
15758extern "C" {
15759    pub fn php_strlcpy(
15760        dst: *mut ::std::os::raw::c_char,
15761        src: *const ::std::os::raw::c_char,
15762        siz: size_t,
15763    ) -> size_t;
15764}
15765extern "C" {
15766    pub fn php_strlcat(
15767        dst: *mut ::std::os::raw::c_char,
15768        src: *const ::std::os::raw::c_char,
15769        siz: size_t,
15770    ) -> size_t;
15771}
15772extern "C" {
15773    pub fn php_explicit_bzero(dst: *mut ::std::os::raw::c_void, siz: size_t);
15774}
15775pub type socklen_t = __socklen_t;
15776pub type bool_int = ::std::os::raw::c_int;
15777pub const boolean_e_NO: boolean_e = 0;
15778pub const boolean_e_YES: boolean_e = 1;
15779pub type boolean_e = ::std::os::raw::c_uint;
15780extern "C" {
15781    pub fn php_sprintf(
15782        s: *mut ::std::os::raw::c_char,
15783        format: *const ::std::os::raw::c_char,
15784        ...
15785    ) -> ::std::os::raw::c_int;
15786}
15787extern "C" {
15788    pub fn php_gcvt(
15789        value: f64,
15790        ndigit: ::std::os::raw::c_int,
15791        dec_point: ::std::os::raw::c_char,
15792        exponent: ::std::os::raw::c_char,
15793        buf: *mut ::std::os::raw::c_char,
15794    ) -> *mut ::std::os::raw::c_char;
15795}
15796extern "C" {
15797    pub fn php_0cvt(
15798        value: f64,
15799        ndigit: ::std::os::raw::c_int,
15800        dec_point: ::std::os::raw::c_char,
15801        exponent: ::std::os::raw::c_char,
15802        buf: *mut ::std::os::raw::c_char,
15803    ) -> *mut ::std::os::raw::c_char;
15804}
15805extern "C" {
15806    pub fn php_conv_fp(
15807        format: ::std::os::raw::c_char,
15808        num: f64,
15809        add_dp: boolean_e,
15810        precision: ::std::os::raw::c_int,
15811        dec_point: ::std::os::raw::c_char,
15812        is_negative: *mut bool_int,
15813        buf: *mut ::std::os::raw::c_char,
15814        len: *mut size_t,
15815    ) -> *mut ::std::os::raw::c_char;
15816}
15817extern "C" {
15818    pub fn php_printf_to_smart_string(
15819        buf: *mut smart_string,
15820        format: *const ::std::os::raw::c_char,
15821        ap: *mut __va_list_tag,
15822    );
15823}
15824extern "C" {
15825    pub fn php_printf_to_smart_str(
15826        buf: *mut smart_str,
15827        format: *const ::std::os::raw::c_char,
15828        ap: *mut __va_list_tag,
15829    );
15830}
15831extern "C" {
15832    pub fn php_write(buf: *mut ::std::os::raw::c_void, size: size_t) -> size_t;
15833}
15834extern "C" {
15835    pub fn php_printf(format: *const ::std::os::raw::c_char, ...) -> size_t;
15836}
15837extern "C" {
15838    pub fn php_get_module_initialized() -> ::std::os::raw::c_int;
15839}
15840extern "C" {
15841    pub fn php_log_err_with_severity(
15842        log_message: *mut ::std::os::raw::c_char,
15843        syslog_type_int: ::std::os::raw::c_int,
15844    );
15845}
15846extern "C" {
15847    pub fn php_verror(
15848        docref: *const ::std::os::raw::c_char,
15849        params: *const ::std::os::raw::c_char,
15850        type_: ::std::os::raw::c_int,
15851        format: *const ::std::os::raw::c_char,
15852        args: *mut __va_list_tag,
15853    );
15854}
15855extern "C" {
15856    pub fn php_error_docref0(
15857        docref: *const ::std::os::raw::c_char,
15858        type_: ::std::os::raw::c_int,
15859        format: *const ::std::os::raw::c_char,
15860        ...
15861    );
15862}
15863extern "C" {
15864    pub fn php_error_docref1(
15865        docref: *const ::std::os::raw::c_char,
15866        param1: *const ::std::os::raw::c_char,
15867        type_: ::std::os::raw::c_int,
15868        format: *const ::std::os::raw::c_char,
15869        ...
15870    );
15871}
15872extern "C" {
15873    pub fn php_error_docref2(
15874        docref: *const ::std::os::raw::c_char,
15875        param1: *const ::std::os::raw::c_char,
15876        param2: *const ::std::os::raw::c_char,
15877        type_: ::std::os::raw::c_int,
15878        format: *const ::std::os::raw::c_char,
15879        ...
15880    );
15881}
15882extern "C" {
15883    pub static mut php_register_internal_extensions_func:
15884        ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_int>;
15885}
15886extern "C" {
15887    pub fn php_register_internal_extensions() -> ::std::os::raw::c_int;
15888}
15889extern "C" {
15890    pub fn php_mergesort(
15891        base: *mut ::std::os::raw::c_void,
15892        nmemb: size_t,
15893        size: size_t,
15894        cmp: ::std::option::Option<
15895            unsafe extern "C" fn(
15896                arg1: *const ::std::os::raw::c_void,
15897                arg2: *const ::std::os::raw::c_void,
15898            ) -> ::std::os::raw::c_int,
15899        >,
15900    ) -> ::std::os::raw::c_int;
15901}
15902extern "C" {
15903    pub fn php_register_pre_request_shutdown(
15904        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
15905        userdata: *mut ::std::os::raw::c_void,
15906    );
15907}
15908extern "C" {
15909    pub fn php_com_initialize();
15910}
15911extern "C" {
15912    pub fn php_get_current_user() -> *mut ::std::os::raw::c_char;
15913}
15914pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_GET_OPAQ: _php_output_handler_hook_t =
15915    0;
15916pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_GET_FLAGS: _php_output_handler_hook_t =
15917    1;
15918pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_GET_LEVEL: _php_output_handler_hook_t =
15919    2;
15920pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_IMMUTABLE: _php_output_handler_hook_t =
15921    3;
15922pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_DISABLE: _php_output_handler_hook_t =
15923    4;
15924pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_LAST: _php_output_handler_hook_t = 5;
15925pub type _php_output_handler_hook_t = ::std::os::raw::c_uint;
15926pub use self::_php_output_handler_hook_t as php_output_handler_hook_t;
15927#[repr(C)]
15928#[derive(Debug, Copy, Clone)]
15929pub struct _php_output_buffer {
15930    pub data: *mut ::std::os::raw::c_char,
15931    pub size: size_t,
15932    pub used: size_t,
15933    pub _bitfield_align_1: [u32; 0],
15934    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
15935    pub __bindgen_padding_0: u32,
15936}
15937#[test]
15938fn bindgen_test_layout__php_output_buffer() {
15939    assert_eq!(
15940        ::std::mem::size_of::<_php_output_buffer>(),
15941        32usize,
15942        concat!("Size of: ", stringify!(_php_output_buffer))
15943    );
15944    assert_eq!(
15945        ::std::mem::align_of::<_php_output_buffer>(),
15946        8usize,
15947        concat!("Alignment of ", stringify!(_php_output_buffer))
15948    );
15949    assert_eq!(
15950        unsafe { &(*(::std::ptr::null::<_php_output_buffer>())).data as *const _ as usize },
15951        0usize,
15952        concat!(
15953            "Offset of field: ",
15954            stringify!(_php_output_buffer),
15955            "::",
15956            stringify!(data)
15957        )
15958    );
15959    assert_eq!(
15960        unsafe { &(*(::std::ptr::null::<_php_output_buffer>())).size as *const _ as usize },
15961        8usize,
15962        concat!(
15963            "Offset of field: ",
15964            stringify!(_php_output_buffer),
15965            "::",
15966            stringify!(size)
15967        )
15968    );
15969    assert_eq!(
15970        unsafe { &(*(::std::ptr::null::<_php_output_buffer>())).used as *const _ as usize },
15971        16usize,
15972        concat!(
15973            "Offset of field: ",
15974            stringify!(_php_output_buffer),
15975            "::",
15976            stringify!(used)
15977        )
15978    );
15979}
15980impl _php_output_buffer {
15981    #[inline]
15982    pub fn free(&self) -> u32 {
15983        unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
15984    }
15985    #[inline]
15986    pub fn set_free(&mut self, val: u32) {
15987        unsafe {
15988            let val: u32 = ::std::mem::transmute(val);
15989            self._bitfield_1.set(0usize, 1u8, val as u64)
15990        }
15991    }
15992    #[inline]
15993    pub fn _reserved(&self) -> u32 {
15994        unsafe { ::std::mem::transmute(self._bitfield_1.get(1usize, 31u8) as u32) }
15995    }
15996    #[inline]
15997    pub fn set__reserved(&mut self, val: u32) {
15998        unsafe {
15999            let val: u32 = ::std::mem::transmute(val);
16000            self._bitfield_1.set(1usize, 31u8, val as u64)
16001        }
16002    }
16003    #[inline]
16004    pub fn new_bitfield_1(free: u32, _reserved: u32) -> __BindgenBitfieldUnit<[u8; 4usize]> {
16005        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
16006        __bindgen_bitfield_unit.set(0usize, 1u8, {
16007            let free: u32 = unsafe { ::std::mem::transmute(free) };
16008            free as u64
16009        });
16010        __bindgen_bitfield_unit.set(1usize, 31u8, {
16011            let _reserved: u32 = unsafe { ::std::mem::transmute(_reserved) };
16012            _reserved as u64
16013        });
16014        __bindgen_bitfield_unit
16015    }
16016}
16017pub type php_output_buffer = _php_output_buffer;
16018#[repr(C)]
16019#[derive(Debug, Copy, Clone)]
16020pub struct _php_output_context {
16021    pub op: ::std::os::raw::c_int,
16022    pub in_: php_output_buffer,
16023    pub out: php_output_buffer,
16024}
16025#[test]
16026fn bindgen_test_layout__php_output_context() {
16027    assert_eq!(
16028        ::std::mem::size_of::<_php_output_context>(),
16029        72usize,
16030        concat!("Size of: ", stringify!(_php_output_context))
16031    );
16032    assert_eq!(
16033        ::std::mem::align_of::<_php_output_context>(),
16034        8usize,
16035        concat!("Alignment of ", stringify!(_php_output_context))
16036    );
16037    assert_eq!(
16038        unsafe { &(*(::std::ptr::null::<_php_output_context>())).op as *const _ as usize },
16039        0usize,
16040        concat!(
16041            "Offset of field: ",
16042            stringify!(_php_output_context),
16043            "::",
16044            stringify!(op)
16045        )
16046    );
16047    assert_eq!(
16048        unsafe { &(*(::std::ptr::null::<_php_output_context>())).in_ as *const _ as usize },
16049        8usize,
16050        concat!(
16051            "Offset of field: ",
16052            stringify!(_php_output_context),
16053            "::",
16054            stringify!(in_)
16055        )
16056    );
16057    assert_eq!(
16058        unsafe { &(*(::std::ptr::null::<_php_output_context>())).out as *const _ as usize },
16059        40usize,
16060        concat!(
16061            "Offset of field: ",
16062            stringify!(_php_output_context),
16063            "::",
16064            stringify!(out)
16065        )
16066    );
16067}
16068pub type php_output_context = _php_output_context;
16069pub type php_output_handler_func_t = ::std::option::Option<
16070    unsafe extern "C" fn(
16071        output: *mut ::std::os::raw::c_char,
16072        output_len: size_t,
16073        handled_output: *mut *mut ::std::os::raw::c_char,
16074        handled_output_len: *mut size_t,
16075        mode: ::std::os::raw::c_int,
16076    ),
16077>;
16078pub type php_output_handler_context_func_t = ::std::option::Option<
16079    unsafe extern "C" fn(
16080        handler_context: *mut *mut ::std::os::raw::c_void,
16081        output_context: *mut php_output_context,
16082    ) -> ::std::os::raw::c_int,
16083>;
16084pub type php_output_handler_conflict_check_t = ::std::option::Option<
16085    unsafe extern "C" fn(
16086        handler_name: *const ::std::os::raw::c_char,
16087        handler_name_len: size_t,
16088    ) -> ::std::os::raw::c_int,
16089>;
16090pub type php_output_handler_alias_ctor_t = ::std::option::Option<
16091    unsafe extern "C" fn(
16092        handler_name: *const ::std::os::raw::c_char,
16093        handler_name_len: size_t,
16094        chunk_size: size_t,
16095        flags: ::std::os::raw::c_int,
16096    ) -> *mut _php_output_handler,
16097>;
16098#[repr(C)]
16099#[derive(Copy, Clone)]
16100pub struct _php_output_handler_user_func_t {
16101    pub fci: zend_fcall_info,
16102    pub fcc: zend_fcall_info_cache,
16103    pub zoh: zval,
16104}
16105#[test]
16106fn bindgen_test_layout__php_output_handler_user_func_t() {
16107    assert_eq!(
16108        ::std::mem::size_of::<_php_output_handler_user_func_t>(),
16109        112usize,
16110        concat!("Size of: ", stringify!(_php_output_handler_user_func_t))
16111    );
16112    assert_eq!(
16113        ::std::mem::align_of::<_php_output_handler_user_func_t>(),
16114        8usize,
16115        concat!("Alignment of ", stringify!(_php_output_handler_user_func_t))
16116    );
16117    assert_eq!(
16118        unsafe {
16119            &(*(::std::ptr::null::<_php_output_handler_user_func_t>())).fci as *const _ as usize
16120        },
16121        0usize,
16122        concat!(
16123            "Offset of field: ",
16124            stringify!(_php_output_handler_user_func_t),
16125            "::",
16126            stringify!(fci)
16127        )
16128    );
16129    assert_eq!(
16130        unsafe {
16131            &(*(::std::ptr::null::<_php_output_handler_user_func_t>())).fcc as *const _ as usize
16132        },
16133        56usize,
16134        concat!(
16135            "Offset of field: ",
16136            stringify!(_php_output_handler_user_func_t),
16137            "::",
16138            stringify!(fcc)
16139        )
16140    );
16141    assert_eq!(
16142        unsafe {
16143            &(*(::std::ptr::null::<_php_output_handler_user_func_t>())).zoh as *const _ as usize
16144        },
16145        96usize,
16146        concat!(
16147            "Offset of field: ",
16148            stringify!(_php_output_handler_user_func_t),
16149            "::",
16150            stringify!(zoh)
16151        )
16152    );
16153}
16154pub type php_output_handler_user_func_t = _php_output_handler_user_func_t;
16155#[repr(C)]
16156#[derive(Copy, Clone)]
16157pub struct _php_output_handler {
16158    pub name: *mut zend_string,
16159    pub flags: ::std::os::raw::c_int,
16160    pub level: ::std::os::raw::c_int,
16161    pub size: size_t,
16162    pub buffer: php_output_buffer,
16163    pub opaq: *mut ::std::os::raw::c_void,
16164    pub dtor: ::std::option::Option<unsafe extern "C" fn(opaq: *mut ::std::os::raw::c_void)>,
16165    pub func: _php_output_handler__bindgen_ty_1,
16166}
16167#[repr(C)]
16168#[derive(Copy, Clone)]
16169pub union _php_output_handler__bindgen_ty_1 {
16170    pub user: *mut php_output_handler_user_func_t,
16171    pub internal: php_output_handler_context_func_t,
16172    _bindgen_union_align: u64,
16173}
16174#[test]
16175fn bindgen_test_layout__php_output_handler__bindgen_ty_1() {
16176    assert_eq!(
16177        ::std::mem::size_of::<_php_output_handler__bindgen_ty_1>(),
16178        8usize,
16179        concat!("Size of: ", stringify!(_php_output_handler__bindgen_ty_1))
16180    );
16181    assert_eq!(
16182        ::std::mem::align_of::<_php_output_handler__bindgen_ty_1>(),
16183        8usize,
16184        concat!(
16185            "Alignment of ",
16186            stringify!(_php_output_handler__bindgen_ty_1)
16187        )
16188    );
16189    assert_eq!(
16190        unsafe {
16191            &(*(::std::ptr::null::<_php_output_handler__bindgen_ty_1>())).user as *const _ as usize
16192        },
16193        0usize,
16194        concat!(
16195            "Offset of field: ",
16196            stringify!(_php_output_handler__bindgen_ty_1),
16197            "::",
16198            stringify!(user)
16199        )
16200    );
16201    assert_eq!(
16202        unsafe {
16203            &(*(::std::ptr::null::<_php_output_handler__bindgen_ty_1>())).internal as *const _
16204                as usize
16205        },
16206        0usize,
16207        concat!(
16208            "Offset of field: ",
16209            stringify!(_php_output_handler__bindgen_ty_1),
16210            "::",
16211            stringify!(internal)
16212        )
16213    );
16214}
16215#[test]
16216fn bindgen_test_layout__php_output_handler() {
16217    assert_eq!(
16218        ::std::mem::size_of::<_php_output_handler>(),
16219        80usize,
16220        concat!("Size of: ", stringify!(_php_output_handler))
16221    );
16222    assert_eq!(
16223        ::std::mem::align_of::<_php_output_handler>(),
16224        8usize,
16225        concat!("Alignment of ", stringify!(_php_output_handler))
16226    );
16227    assert_eq!(
16228        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).name as *const _ as usize },
16229        0usize,
16230        concat!(
16231            "Offset of field: ",
16232            stringify!(_php_output_handler),
16233            "::",
16234            stringify!(name)
16235        )
16236    );
16237    assert_eq!(
16238        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).flags as *const _ as usize },
16239        8usize,
16240        concat!(
16241            "Offset of field: ",
16242            stringify!(_php_output_handler),
16243            "::",
16244            stringify!(flags)
16245        )
16246    );
16247    assert_eq!(
16248        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).level as *const _ as usize },
16249        12usize,
16250        concat!(
16251            "Offset of field: ",
16252            stringify!(_php_output_handler),
16253            "::",
16254            stringify!(level)
16255        )
16256    );
16257    assert_eq!(
16258        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).size as *const _ as usize },
16259        16usize,
16260        concat!(
16261            "Offset of field: ",
16262            stringify!(_php_output_handler),
16263            "::",
16264            stringify!(size)
16265        )
16266    );
16267    assert_eq!(
16268        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).buffer as *const _ as usize },
16269        24usize,
16270        concat!(
16271            "Offset of field: ",
16272            stringify!(_php_output_handler),
16273            "::",
16274            stringify!(buffer)
16275        )
16276    );
16277    assert_eq!(
16278        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).opaq as *const _ as usize },
16279        56usize,
16280        concat!(
16281            "Offset of field: ",
16282            stringify!(_php_output_handler),
16283            "::",
16284            stringify!(opaq)
16285        )
16286    );
16287    assert_eq!(
16288        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).dtor as *const _ as usize },
16289        64usize,
16290        concat!(
16291            "Offset of field: ",
16292            stringify!(_php_output_handler),
16293            "::",
16294            stringify!(dtor)
16295        )
16296    );
16297    assert_eq!(
16298        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).func as *const _ as usize },
16299        72usize,
16300        concat!(
16301            "Offset of field: ",
16302            stringify!(_php_output_handler),
16303            "::",
16304            stringify!(func)
16305        )
16306    );
16307}
16308pub type php_output_handler = _php_output_handler;
16309#[repr(C)]
16310#[derive(Debug, Copy, Clone)]
16311pub struct _zend_output_globals {
16312    pub handlers: zend_stack,
16313    pub active: *mut php_output_handler,
16314    pub running: *mut php_output_handler,
16315    pub output_start_filename: *const ::std::os::raw::c_char,
16316    pub output_start_lineno: ::std::os::raw::c_int,
16317    pub flags: ::std::os::raw::c_int,
16318}
16319#[test]
16320fn bindgen_test_layout__zend_output_globals() {
16321    assert_eq!(
16322        ::std::mem::size_of::<_zend_output_globals>(),
16323        56usize,
16324        concat!("Size of: ", stringify!(_zend_output_globals))
16325    );
16326    assert_eq!(
16327        ::std::mem::align_of::<_zend_output_globals>(),
16328        8usize,
16329        concat!("Alignment of ", stringify!(_zend_output_globals))
16330    );
16331    assert_eq!(
16332        unsafe { &(*(::std::ptr::null::<_zend_output_globals>())).handlers as *const _ as usize },
16333        0usize,
16334        concat!(
16335            "Offset of field: ",
16336            stringify!(_zend_output_globals),
16337            "::",
16338            stringify!(handlers)
16339        )
16340    );
16341    assert_eq!(
16342        unsafe { &(*(::std::ptr::null::<_zend_output_globals>())).active as *const _ as usize },
16343        24usize,
16344        concat!(
16345            "Offset of field: ",
16346            stringify!(_zend_output_globals),
16347            "::",
16348            stringify!(active)
16349        )
16350    );
16351    assert_eq!(
16352        unsafe { &(*(::std::ptr::null::<_zend_output_globals>())).running as *const _ as usize },
16353        32usize,
16354        concat!(
16355            "Offset of field: ",
16356            stringify!(_zend_output_globals),
16357            "::",
16358            stringify!(running)
16359        )
16360    );
16361    assert_eq!(
16362        unsafe {
16363            &(*(::std::ptr::null::<_zend_output_globals>())).output_start_filename as *const _
16364                as usize
16365        },
16366        40usize,
16367        concat!(
16368            "Offset of field: ",
16369            stringify!(_zend_output_globals),
16370            "::",
16371            stringify!(output_start_filename)
16372        )
16373    );
16374    assert_eq!(
16375        unsafe {
16376            &(*(::std::ptr::null::<_zend_output_globals>())).output_start_lineno as *const _
16377                as usize
16378        },
16379        48usize,
16380        concat!(
16381            "Offset of field: ",
16382            stringify!(_zend_output_globals),
16383            "::",
16384            stringify!(output_start_lineno)
16385        )
16386    );
16387    assert_eq!(
16388        unsafe { &(*(::std::ptr::null::<_zend_output_globals>())).flags as *const _ as usize },
16389        52usize,
16390        concat!(
16391            "Offset of field: ",
16392            stringify!(_zend_output_globals),
16393            "::",
16394            stringify!(flags)
16395        )
16396    );
16397}
16398pub type zend_output_globals = _zend_output_globals;
16399extern "C" {
16400    pub static mut output_globals: zend_output_globals;
16401}
16402extern "C" {
16403    pub static php_output_default_handler_name: [::std::os::raw::c_char; 23usize];
16404}
16405extern "C" {
16406    pub static php_output_devnull_handler_name: [::std::os::raw::c_char; 20usize];
16407}
16408extern "C" {
16409    pub fn php_output_startup();
16410}
16411extern "C" {
16412    pub fn php_output_shutdown();
16413}
16414extern "C" {
16415    pub fn php_output_register_constants();
16416}
16417extern "C" {
16418    pub fn php_output_activate() -> ::std::os::raw::c_int;
16419}
16420extern "C" {
16421    pub fn php_output_deactivate();
16422}
16423extern "C" {
16424    pub fn php_output_set_status(status: ::std::os::raw::c_int);
16425}
16426extern "C" {
16427    pub fn php_output_get_status() -> ::std::os::raw::c_int;
16428}
16429extern "C" {
16430    pub fn php_output_set_implicit_flush(flush: ::std::os::raw::c_int);
16431}
16432extern "C" {
16433    pub fn php_output_get_start_filename() -> *const ::std::os::raw::c_char;
16434}
16435extern "C" {
16436    pub fn php_output_get_start_lineno() -> ::std::os::raw::c_int;
16437}
16438extern "C" {
16439    pub fn php_output_write_unbuffered(str_: *const ::std::os::raw::c_char, len: size_t) -> size_t;
16440}
16441extern "C" {
16442    pub fn php_output_write(str_: *const ::std::os::raw::c_char, len: size_t) -> size_t;
16443}
16444extern "C" {
16445    pub fn php_output_flush() -> ::std::os::raw::c_int;
16446}
16447extern "C" {
16448    pub fn php_output_flush_all();
16449}
16450extern "C" {
16451    pub fn php_output_clean() -> ::std::os::raw::c_int;
16452}
16453extern "C" {
16454    pub fn php_output_clean_all();
16455}
16456extern "C" {
16457    pub fn php_output_end() -> ::std::os::raw::c_int;
16458}
16459extern "C" {
16460    pub fn php_output_end_all();
16461}
16462extern "C" {
16463    pub fn php_output_discard() -> ::std::os::raw::c_int;
16464}
16465extern "C" {
16466    pub fn php_output_discard_all();
16467}
16468extern "C" {
16469    pub fn php_output_get_contents(p: *mut zval) -> ::std::os::raw::c_int;
16470}
16471extern "C" {
16472    pub fn php_output_get_length(p: *mut zval) -> ::std::os::raw::c_int;
16473}
16474extern "C" {
16475    pub fn php_output_get_level() -> ::std::os::raw::c_int;
16476}
16477extern "C" {
16478    pub fn php_output_get_active_handler() -> *mut php_output_handler;
16479}
16480extern "C" {
16481    pub fn php_output_start_default() -> ::std::os::raw::c_int;
16482}
16483extern "C" {
16484    pub fn php_output_start_devnull() -> ::std::os::raw::c_int;
16485}
16486extern "C" {
16487    pub fn php_output_start_user(
16488        output_handler: *mut zval,
16489        chunk_size: size_t,
16490        flags: ::std::os::raw::c_int,
16491    ) -> ::std::os::raw::c_int;
16492}
16493extern "C" {
16494    pub fn php_output_start_internal(
16495        name: *const ::std::os::raw::c_char,
16496        name_len: size_t,
16497        output_handler: php_output_handler_func_t,
16498        chunk_size: size_t,
16499        flags: ::std::os::raw::c_int,
16500    ) -> ::std::os::raw::c_int;
16501}
16502extern "C" {
16503    pub fn php_output_handler_create_user(
16504        handler: *mut zval,
16505        chunk_size: size_t,
16506        flags: ::std::os::raw::c_int,
16507    ) -> *mut php_output_handler;
16508}
16509extern "C" {
16510    pub fn php_output_handler_create_internal(
16511        name: *const ::std::os::raw::c_char,
16512        name_len: size_t,
16513        handler: php_output_handler_context_func_t,
16514        chunk_size: size_t,
16515        flags: ::std::os::raw::c_int,
16516    ) -> *mut php_output_handler;
16517}
16518extern "C" {
16519    pub fn php_output_handler_set_context(
16520        handler: *mut php_output_handler,
16521        opaq: *mut ::std::os::raw::c_void,
16522        dtor: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
16523    );
16524}
16525extern "C" {
16526    pub fn php_output_handler_start(handler: *mut php_output_handler) -> ::std::os::raw::c_int;
16527}
16528extern "C" {
16529    pub fn php_output_handler_started(
16530        name: *const ::std::os::raw::c_char,
16531        name_len: size_t,
16532    ) -> ::std::os::raw::c_int;
16533}
16534extern "C" {
16535    pub fn php_output_handler_hook(
16536        type_: php_output_handler_hook_t,
16537        arg: *mut ::std::os::raw::c_void,
16538    ) -> ::std::os::raw::c_int;
16539}
16540extern "C" {
16541    pub fn php_output_handler_dtor(handler: *mut php_output_handler);
16542}
16543extern "C" {
16544    pub fn php_output_handler_free(handler: *mut *mut php_output_handler);
16545}
16546extern "C" {
16547    pub fn php_output_handler_conflict(
16548        handler_new: *const ::std::os::raw::c_char,
16549        handler_new_len: size_t,
16550        handler_set: *const ::std::os::raw::c_char,
16551        handler_set_len: size_t,
16552    ) -> ::std::os::raw::c_int;
16553}
16554extern "C" {
16555    pub fn php_output_handler_conflict_register(
16556        handler_name: *const ::std::os::raw::c_char,
16557        handler_name_len: size_t,
16558        check_func: php_output_handler_conflict_check_t,
16559    ) -> ::std::os::raw::c_int;
16560}
16561extern "C" {
16562    pub fn php_output_handler_reverse_conflict_register(
16563        handler_name: *const ::std::os::raw::c_char,
16564        handler_name_len: size_t,
16565        check_func: php_output_handler_conflict_check_t,
16566    ) -> ::std::os::raw::c_int;
16567}
16568extern "C" {
16569    pub fn php_output_handler_alias(
16570        handler_name: *const ::std::os::raw::c_char,
16571        handler_name_len: size_t,
16572    ) -> php_output_handler_alias_ctor_t;
16573}
16574extern "C" {
16575    pub fn php_output_handler_alias_register(
16576        handler_name: *const ::std::os::raw::c_char,
16577        handler_name_len: size_t,
16578        func: php_output_handler_alias_ctor_t,
16579    ) -> ::std::os::raw::c_int;
16580}
16581extern "C" {
16582    pub fn php_file_le_stream() -> ::std::os::raw::c_int;
16583}
16584extern "C" {
16585    pub fn php_file_le_pstream() -> ::std::os::raw::c_int;
16586}
16587extern "C" {
16588    pub fn php_file_le_stream_filter() -> ::std::os::raw::c_int;
16589}
16590pub type php_stream = _php_stream;
16591pub type php_stream_wrapper = _php_stream_wrapper;
16592pub type php_stream_context = _php_stream_context;
16593pub type php_stream_filter = _php_stream_filter;
16594pub type php_stream_notification_func = ::std::option::Option<
16595    unsafe extern "C" fn(
16596        context: *mut php_stream_context,
16597        notifycode: ::std::os::raw::c_int,
16598        severity: ::std::os::raw::c_int,
16599        xmsg: *mut ::std::os::raw::c_char,
16600        xcode: ::std::os::raw::c_int,
16601        bytes_sofar: size_t,
16602        bytes_max: size_t,
16603        ptr: *mut ::std::os::raw::c_void,
16604    ),
16605>;
16606pub type php_stream_notifier = _php_stream_notifier;
16607#[repr(C)]
16608#[derive(Copy, Clone)]
16609pub struct _php_stream_notifier {
16610    pub func: php_stream_notification_func,
16611    pub dtor: ::std::option::Option<unsafe extern "C" fn(notifier: *mut php_stream_notifier)>,
16612    pub ptr: zval,
16613    pub mask: ::std::os::raw::c_int,
16614    pub progress: size_t,
16615    pub progress_max: size_t,
16616}
16617#[test]
16618fn bindgen_test_layout__php_stream_notifier() {
16619    assert_eq!(
16620        ::std::mem::size_of::<_php_stream_notifier>(),
16621        56usize,
16622        concat!("Size of: ", stringify!(_php_stream_notifier))
16623    );
16624    assert_eq!(
16625        ::std::mem::align_of::<_php_stream_notifier>(),
16626        8usize,
16627        concat!("Alignment of ", stringify!(_php_stream_notifier))
16628    );
16629    assert_eq!(
16630        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).func as *const _ as usize },
16631        0usize,
16632        concat!(
16633            "Offset of field: ",
16634            stringify!(_php_stream_notifier),
16635            "::",
16636            stringify!(func)
16637        )
16638    );
16639    assert_eq!(
16640        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).dtor as *const _ as usize },
16641        8usize,
16642        concat!(
16643            "Offset of field: ",
16644            stringify!(_php_stream_notifier),
16645            "::",
16646            stringify!(dtor)
16647        )
16648    );
16649    assert_eq!(
16650        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).ptr as *const _ as usize },
16651        16usize,
16652        concat!(
16653            "Offset of field: ",
16654            stringify!(_php_stream_notifier),
16655            "::",
16656            stringify!(ptr)
16657        )
16658    );
16659    assert_eq!(
16660        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).mask as *const _ as usize },
16661        32usize,
16662        concat!(
16663            "Offset of field: ",
16664            stringify!(_php_stream_notifier),
16665            "::",
16666            stringify!(mask)
16667        )
16668    );
16669    assert_eq!(
16670        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).progress as *const _ as usize },
16671        40usize,
16672        concat!(
16673            "Offset of field: ",
16674            stringify!(_php_stream_notifier),
16675            "::",
16676            stringify!(progress)
16677        )
16678    );
16679    assert_eq!(
16680        unsafe {
16681            &(*(::std::ptr::null::<_php_stream_notifier>())).progress_max as *const _ as usize
16682        },
16683        48usize,
16684        concat!(
16685            "Offset of field: ",
16686            stringify!(_php_stream_notifier),
16687            "::",
16688            stringify!(progress_max)
16689        )
16690    );
16691}
16692#[repr(C)]
16693#[derive(Copy, Clone)]
16694pub struct _php_stream_context {
16695    pub notifier: *mut php_stream_notifier,
16696    pub options: zval,
16697    pub res: *mut zend_resource,
16698}
16699#[test]
16700fn bindgen_test_layout__php_stream_context() {
16701    assert_eq!(
16702        ::std::mem::size_of::<_php_stream_context>(),
16703        32usize,
16704        concat!("Size of: ", stringify!(_php_stream_context))
16705    );
16706    assert_eq!(
16707        ::std::mem::align_of::<_php_stream_context>(),
16708        8usize,
16709        concat!("Alignment of ", stringify!(_php_stream_context))
16710    );
16711    assert_eq!(
16712        unsafe { &(*(::std::ptr::null::<_php_stream_context>())).notifier as *const _ as usize },
16713        0usize,
16714        concat!(
16715            "Offset of field: ",
16716            stringify!(_php_stream_context),
16717            "::",
16718            stringify!(notifier)
16719        )
16720    );
16721    assert_eq!(
16722        unsafe { &(*(::std::ptr::null::<_php_stream_context>())).options as *const _ as usize },
16723        8usize,
16724        concat!(
16725            "Offset of field: ",
16726            stringify!(_php_stream_context),
16727            "::",
16728            stringify!(options)
16729        )
16730    );
16731    assert_eq!(
16732        unsafe { &(*(::std::ptr::null::<_php_stream_context>())).res as *const _ as usize },
16733        24usize,
16734        concat!(
16735            "Offset of field: ",
16736            stringify!(_php_stream_context),
16737            "::",
16738            stringify!(res)
16739        )
16740    );
16741}
16742extern "C" {
16743    pub fn php_stream_context_free(context: *mut php_stream_context);
16744}
16745extern "C" {
16746    pub fn php_stream_context_alloc() -> *mut php_stream_context;
16747}
16748extern "C" {
16749    pub fn php_stream_context_get_option(
16750        context: *mut php_stream_context,
16751        wrappername: *const ::std::os::raw::c_char,
16752        optionname: *const ::std::os::raw::c_char,
16753    ) -> *mut zval;
16754}
16755extern "C" {
16756    pub fn php_stream_context_set_option(
16757        context: *mut php_stream_context,
16758        wrappername: *const ::std::os::raw::c_char,
16759        optionname: *const ::std::os::raw::c_char,
16760        optionvalue: *mut zval,
16761    ) -> ::std::os::raw::c_int;
16762}
16763extern "C" {
16764    pub fn php_stream_notification_alloc() -> *mut php_stream_notifier;
16765}
16766extern "C" {
16767    pub fn php_stream_notification_free(notifier: *mut php_stream_notifier);
16768}
16769extern "C" {
16770    pub fn php_stream_notification_notify(
16771        context: *mut php_stream_context,
16772        notifycode: ::std::os::raw::c_int,
16773        severity: ::std::os::raw::c_int,
16774        xmsg: *mut ::std::os::raw::c_char,
16775        xcode: ::std::os::raw::c_int,
16776        bytes_sofar: size_t,
16777        bytes_max: size_t,
16778        ptr: *mut ::std::os::raw::c_void,
16779    );
16780}
16781extern "C" {
16782    pub fn php_stream_context_set(
16783        stream: *mut php_stream,
16784        context: *mut php_stream_context,
16785    ) -> *mut php_stream_context;
16786}
16787pub type php_stream_bucket = _php_stream_bucket;
16788pub type php_stream_bucket_brigade = _php_stream_bucket_brigade;
16789#[repr(C)]
16790#[derive(Debug, Copy, Clone)]
16791pub struct _php_stream_bucket {
16792    pub next: *mut php_stream_bucket,
16793    pub prev: *mut php_stream_bucket,
16794    pub brigade: *mut php_stream_bucket_brigade,
16795    pub buf: *mut ::std::os::raw::c_char,
16796    pub buflen: size_t,
16797    pub own_buf: u8,
16798    pub is_persistent: u8,
16799    pub refcount: ::std::os::raw::c_int,
16800}
16801#[test]
16802fn bindgen_test_layout__php_stream_bucket() {
16803    assert_eq!(
16804        ::std::mem::size_of::<_php_stream_bucket>(),
16805        48usize,
16806        concat!("Size of: ", stringify!(_php_stream_bucket))
16807    );
16808    assert_eq!(
16809        ::std::mem::align_of::<_php_stream_bucket>(),
16810        8usize,
16811        concat!("Alignment of ", stringify!(_php_stream_bucket))
16812    );
16813    assert_eq!(
16814        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).next as *const _ as usize },
16815        0usize,
16816        concat!(
16817            "Offset of field: ",
16818            stringify!(_php_stream_bucket),
16819            "::",
16820            stringify!(next)
16821        )
16822    );
16823    assert_eq!(
16824        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).prev as *const _ as usize },
16825        8usize,
16826        concat!(
16827            "Offset of field: ",
16828            stringify!(_php_stream_bucket),
16829            "::",
16830            stringify!(prev)
16831        )
16832    );
16833    assert_eq!(
16834        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).brigade as *const _ as usize },
16835        16usize,
16836        concat!(
16837            "Offset of field: ",
16838            stringify!(_php_stream_bucket),
16839            "::",
16840            stringify!(brigade)
16841        )
16842    );
16843    assert_eq!(
16844        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).buf as *const _ as usize },
16845        24usize,
16846        concat!(
16847            "Offset of field: ",
16848            stringify!(_php_stream_bucket),
16849            "::",
16850            stringify!(buf)
16851        )
16852    );
16853    assert_eq!(
16854        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).buflen as *const _ as usize },
16855        32usize,
16856        concat!(
16857            "Offset of field: ",
16858            stringify!(_php_stream_bucket),
16859            "::",
16860            stringify!(buflen)
16861        )
16862    );
16863    assert_eq!(
16864        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).own_buf as *const _ as usize },
16865        40usize,
16866        concat!(
16867            "Offset of field: ",
16868            stringify!(_php_stream_bucket),
16869            "::",
16870            stringify!(own_buf)
16871        )
16872    );
16873    assert_eq!(
16874        unsafe {
16875            &(*(::std::ptr::null::<_php_stream_bucket>())).is_persistent as *const _ as usize
16876        },
16877        41usize,
16878        concat!(
16879            "Offset of field: ",
16880            stringify!(_php_stream_bucket),
16881            "::",
16882            stringify!(is_persistent)
16883        )
16884    );
16885    assert_eq!(
16886        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).refcount as *const _ as usize },
16887        44usize,
16888        concat!(
16889            "Offset of field: ",
16890            stringify!(_php_stream_bucket),
16891            "::",
16892            stringify!(refcount)
16893        )
16894    );
16895}
16896#[repr(C)]
16897#[derive(Debug, Copy, Clone)]
16898pub struct _php_stream_bucket_brigade {
16899    pub head: *mut php_stream_bucket,
16900    pub tail: *mut php_stream_bucket,
16901}
16902#[test]
16903fn bindgen_test_layout__php_stream_bucket_brigade() {
16904    assert_eq!(
16905        ::std::mem::size_of::<_php_stream_bucket_brigade>(),
16906        16usize,
16907        concat!("Size of: ", stringify!(_php_stream_bucket_brigade))
16908    );
16909    assert_eq!(
16910        ::std::mem::align_of::<_php_stream_bucket_brigade>(),
16911        8usize,
16912        concat!("Alignment of ", stringify!(_php_stream_bucket_brigade))
16913    );
16914    assert_eq!(
16915        unsafe { &(*(::std::ptr::null::<_php_stream_bucket_brigade>())).head as *const _ as usize },
16916        0usize,
16917        concat!(
16918            "Offset of field: ",
16919            stringify!(_php_stream_bucket_brigade),
16920            "::",
16921            stringify!(head)
16922        )
16923    );
16924    assert_eq!(
16925        unsafe { &(*(::std::ptr::null::<_php_stream_bucket_brigade>())).tail as *const _ as usize },
16926        8usize,
16927        concat!(
16928            "Offset of field: ",
16929            stringify!(_php_stream_bucket_brigade),
16930            "::",
16931            stringify!(tail)
16932        )
16933    );
16934}
16935pub const php_stream_filter_status_t_PSFS_ERR_FATAL: php_stream_filter_status_t = 0;
16936pub const php_stream_filter_status_t_PSFS_FEED_ME: php_stream_filter_status_t = 1;
16937pub const php_stream_filter_status_t_PSFS_PASS_ON: php_stream_filter_status_t = 2;
16938pub type php_stream_filter_status_t = ::std::os::raw::c_uint;
16939extern "C" {
16940    pub fn php_stream_bucket_new(
16941        stream: *mut php_stream,
16942        buf: *mut ::std::os::raw::c_char,
16943        buflen: size_t,
16944        own_buf: u8,
16945        buf_persistent: u8,
16946    ) -> *mut php_stream_bucket;
16947}
16948extern "C" {
16949    pub fn php_stream_bucket_split(
16950        in_: *mut php_stream_bucket,
16951        left: *mut *mut php_stream_bucket,
16952        right: *mut *mut php_stream_bucket,
16953        length: size_t,
16954    ) -> ::std::os::raw::c_int;
16955}
16956extern "C" {
16957    pub fn php_stream_bucket_delref(bucket: *mut php_stream_bucket);
16958}
16959extern "C" {
16960    pub fn php_stream_bucket_prepend(
16961        brigade: *mut php_stream_bucket_brigade,
16962        bucket: *mut php_stream_bucket,
16963    );
16964}
16965extern "C" {
16966    pub fn php_stream_bucket_append(
16967        brigade: *mut php_stream_bucket_brigade,
16968        bucket: *mut php_stream_bucket,
16969    );
16970}
16971extern "C" {
16972    pub fn php_stream_bucket_unlink(bucket: *mut php_stream_bucket);
16973}
16974extern "C" {
16975    pub fn php_stream_bucket_make_writeable(
16976        bucket: *mut php_stream_bucket,
16977    ) -> *mut php_stream_bucket;
16978}
16979#[repr(C)]
16980#[derive(Debug, Copy, Clone)]
16981pub struct _php_stream_filter_ops {
16982    pub filter: ::std::option::Option<
16983        unsafe extern "C" fn(
16984            stream: *mut php_stream,
16985            thisfilter: *mut php_stream_filter,
16986            buckets_in: *mut php_stream_bucket_brigade,
16987            buckets_out: *mut php_stream_bucket_brigade,
16988            bytes_consumed: *mut size_t,
16989            flags: ::std::os::raw::c_int,
16990        ) -> php_stream_filter_status_t,
16991    >,
16992    pub dtor: ::std::option::Option<unsafe extern "C" fn(thisfilter: *mut php_stream_filter)>,
16993    pub label: *const ::std::os::raw::c_char,
16994}
16995#[test]
16996fn bindgen_test_layout__php_stream_filter_ops() {
16997    assert_eq!(
16998        ::std::mem::size_of::<_php_stream_filter_ops>(),
16999        24usize,
17000        concat!("Size of: ", stringify!(_php_stream_filter_ops))
17001    );
17002    assert_eq!(
17003        ::std::mem::align_of::<_php_stream_filter_ops>(),
17004        8usize,
17005        concat!("Alignment of ", stringify!(_php_stream_filter_ops))
17006    );
17007    assert_eq!(
17008        unsafe { &(*(::std::ptr::null::<_php_stream_filter_ops>())).filter as *const _ as usize },
17009        0usize,
17010        concat!(
17011            "Offset of field: ",
17012            stringify!(_php_stream_filter_ops),
17013            "::",
17014            stringify!(filter)
17015        )
17016    );
17017    assert_eq!(
17018        unsafe { &(*(::std::ptr::null::<_php_stream_filter_ops>())).dtor as *const _ as usize },
17019        8usize,
17020        concat!(
17021            "Offset of field: ",
17022            stringify!(_php_stream_filter_ops),
17023            "::",
17024            stringify!(dtor)
17025        )
17026    );
17027    assert_eq!(
17028        unsafe { &(*(::std::ptr::null::<_php_stream_filter_ops>())).label as *const _ as usize },
17029        16usize,
17030        concat!(
17031            "Offset of field: ",
17032            stringify!(_php_stream_filter_ops),
17033            "::",
17034            stringify!(label)
17035        )
17036    );
17037}
17038pub type php_stream_filter_ops = _php_stream_filter_ops;
17039#[repr(C)]
17040#[derive(Debug, Copy, Clone)]
17041pub struct _php_stream_filter_chain {
17042    pub head: *mut php_stream_filter,
17043    pub tail: *mut php_stream_filter,
17044    pub stream: *mut php_stream,
17045}
17046#[test]
17047fn bindgen_test_layout__php_stream_filter_chain() {
17048    assert_eq!(
17049        ::std::mem::size_of::<_php_stream_filter_chain>(),
17050        24usize,
17051        concat!("Size of: ", stringify!(_php_stream_filter_chain))
17052    );
17053    assert_eq!(
17054        ::std::mem::align_of::<_php_stream_filter_chain>(),
17055        8usize,
17056        concat!("Alignment of ", stringify!(_php_stream_filter_chain))
17057    );
17058    assert_eq!(
17059        unsafe { &(*(::std::ptr::null::<_php_stream_filter_chain>())).head as *const _ as usize },
17060        0usize,
17061        concat!(
17062            "Offset of field: ",
17063            stringify!(_php_stream_filter_chain),
17064            "::",
17065            stringify!(head)
17066        )
17067    );
17068    assert_eq!(
17069        unsafe { &(*(::std::ptr::null::<_php_stream_filter_chain>())).tail as *const _ as usize },
17070        8usize,
17071        concat!(
17072            "Offset of field: ",
17073            stringify!(_php_stream_filter_chain),
17074            "::",
17075            stringify!(tail)
17076        )
17077    );
17078    assert_eq!(
17079        unsafe { &(*(::std::ptr::null::<_php_stream_filter_chain>())).stream as *const _ as usize },
17080        16usize,
17081        concat!(
17082            "Offset of field: ",
17083            stringify!(_php_stream_filter_chain),
17084            "::",
17085            stringify!(stream)
17086        )
17087    );
17088}
17089pub type php_stream_filter_chain = _php_stream_filter_chain;
17090#[repr(C)]
17091#[derive(Copy, Clone)]
17092pub struct _php_stream_filter {
17093    pub fops: *mut php_stream_filter_ops,
17094    pub abstract_: zval,
17095    pub next: *mut php_stream_filter,
17096    pub prev: *mut php_stream_filter,
17097    pub is_persistent: ::std::os::raw::c_int,
17098    pub chain: *mut php_stream_filter_chain,
17099    pub buffer: php_stream_bucket_brigade,
17100    pub res: *mut zend_resource,
17101}
17102#[test]
17103fn bindgen_test_layout__php_stream_filter() {
17104    assert_eq!(
17105        ::std::mem::size_of::<_php_stream_filter>(),
17106        80usize,
17107        concat!("Size of: ", stringify!(_php_stream_filter))
17108    );
17109    assert_eq!(
17110        ::std::mem::align_of::<_php_stream_filter>(),
17111        8usize,
17112        concat!("Alignment of ", stringify!(_php_stream_filter))
17113    );
17114    assert_eq!(
17115        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).fops as *const _ as usize },
17116        0usize,
17117        concat!(
17118            "Offset of field: ",
17119            stringify!(_php_stream_filter),
17120            "::",
17121            stringify!(fops)
17122        )
17123    );
17124    assert_eq!(
17125        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).abstract_ as *const _ as usize },
17126        8usize,
17127        concat!(
17128            "Offset of field: ",
17129            stringify!(_php_stream_filter),
17130            "::",
17131            stringify!(abstract_)
17132        )
17133    );
17134    assert_eq!(
17135        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).next as *const _ as usize },
17136        24usize,
17137        concat!(
17138            "Offset of field: ",
17139            stringify!(_php_stream_filter),
17140            "::",
17141            stringify!(next)
17142        )
17143    );
17144    assert_eq!(
17145        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).prev as *const _ as usize },
17146        32usize,
17147        concat!(
17148            "Offset of field: ",
17149            stringify!(_php_stream_filter),
17150            "::",
17151            stringify!(prev)
17152        )
17153    );
17154    assert_eq!(
17155        unsafe {
17156            &(*(::std::ptr::null::<_php_stream_filter>())).is_persistent as *const _ as usize
17157        },
17158        40usize,
17159        concat!(
17160            "Offset of field: ",
17161            stringify!(_php_stream_filter),
17162            "::",
17163            stringify!(is_persistent)
17164        )
17165    );
17166    assert_eq!(
17167        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).chain as *const _ as usize },
17168        48usize,
17169        concat!(
17170            "Offset of field: ",
17171            stringify!(_php_stream_filter),
17172            "::",
17173            stringify!(chain)
17174        )
17175    );
17176    assert_eq!(
17177        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).buffer as *const _ as usize },
17178        56usize,
17179        concat!(
17180            "Offset of field: ",
17181            stringify!(_php_stream_filter),
17182            "::",
17183            stringify!(buffer)
17184        )
17185    );
17186    assert_eq!(
17187        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).res as *const _ as usize },
17188        72usize,
17189        concat!(
17190            "Offset of field: ",
17191            stringify!(_php_stream_filter),
17192            "::",
17193            stringify!(res)
17194        )
17195    );
17196}
17197extern "C" {
17198    pub fn php_stream_filter_prepend_ex(
17199        chain: *mut php_stream_filter_chain,
17200        filter: *mut php_stream_filter,
17201    ) -> ::std::os::raw::c_int;
17202}
17203extern "C" {
17204    pub fn php_stream_filter_append_ex(
17205        chain: *mut php_stream_filter_chain,
17206        filter: *mut php_stream_filter,
17207    ) -> ::std::os::raw::c_int;
17208}
17209extern "C" {
17210    pub fn php_stream_filter_remove(
17211        filter: *mut php_stream_filter,
17212        call_dtor: ::std::os::raw::c_int,
17213    ) -> *mut php_stream_filter;
17214}
17215extern "C" {
17216    pub fn php_stream_filter_free(filter: *mut php_stream_filter);
17217}
17218#[repr(C)]
17219#[derive(Debug, Copy, Clone)]
17220pub struct _php_stream_filter_factory {
17221    pub create_filter: ::std::option::Option<
17222        unsafe extern "C" fn(
17223            filtername: *const ::std::os::raw::c_char,
17224            filterparams: *mut zval,
17225            persistent: u8,
17226        ) -> *mut php_stream_filter,
17227    >,
17228}
17229#[test]
17230fn bindgen_test_layout__php_stream_filter_factory() {
17231    assert_eq!(
17232        ::std::mem::size_of::<_php_stream_filter_factory>(),
17233        8usize,
17234        concat!("Size of: ", stringify!(_php_stream_filter_factory))
17235    );
17236    assert_eq!(
17237        ::std::mem::align_of::<_php_stream_filter_factory>(),
17238        8usize,
17239        concat!("Alignment of ", stringify!(_php_stream_filter_factory))
17240    );
17241    assert_eq!(
17242        unsafe {
17243            &(*(::std::ptr::null::<_php_stream_filter_factory>())).create_filter as *const _
17244                as usize
17245        },
17246        0usize,
17247        concat!(
17248            "Offset of field: ",
17249            stringify!(_php_stream_filter_factory),
17250            "::",
17251            stringify!(create_filter)
17252        )
17253    );
17254}
17255pub type php_stream_filter_factory = _php_stream_filter_factory;
17256extern "C" {
17257    pub fn php_stream_filter_register_factory(
17258        filterpattern: *const ::std::os::raw::c_char,
17259        factory: *mut php_stream_filter_factory,
17260    ) -> ::std::os::raw::c_int;
17261}
17262extern "C" {
17263    pub fn php_stream_filter_unregister_factory(
17264        filterpattern: *const ::std::os::raw::c_char,
17265    ) -> ::std::os::raw::c_int;
17266}
17267extern "C" {
17268    pub fn php_stream_filter_register_factory_volatile(
17269        filterpattern: *const ::std::os::raw::c_char,
17270        factory: *mut php_stream_filter_factory,
17271    ) -> ::std::os::raw::c_int;
17272}
17273extern "C" {
17274    pub fn php_stream_filter_create(
17275        filtername: *const ::std::os::raw::c_char,
17276        filterparams: *mut zval,
17277        persistent: u8,
17278    ) -> *mut php_stream_filter;
17279}
17280#[repr(C)]
17281#[derive(Debug, Copy, Clone)]
17282pub struct _php_stream_statbuf {
17283    pub sb: zend_stat_t,
17284}
17285#[test]
17286fn bindgen_test_layout__php_stream_statbuf() {
17287    assert_eq!(
17288        ::std::mem::size_of::<_php_stream_statbuf>(),
17289        144usize,
17290        concat!("Size of: ", stringify!(_php_stream_statbuf))
17291    );
17292    assert_eq!(
17293        ::std::mem::align_of::<_php_stream_statbuf>(),
17294        8usize,
17295        concat!("Alignment of ", stringify!(_php_stream_statbuf))
17296    );
17297    assert_eq!(
17298        unsafe { &(*(::std::ptr::null::<_php_stream_statbuf>())).sb as *const _ as usize },
17299        0usize,
17300        concat!(
17301            "Offset of field: ",
17302            stringify!(_php_stream_statbuf),
17303            "::",
17304            stringify!(sb)
17305        )
17306    );
17307}
17308pub type php_stream_statbuf = _php_stream_statbuf;
17309#[repr(C)]
17310#[derive(Debug, Copy, Clone)]
17311pub struct _php_stream_ops {
17312    pub write: ::std::option::Option<
17313        unsafe extern "C" fn(
17314            stream: *mut php_stream,
17315            buf: *const ::std::os::raw::c_char,
17316            count: size_t,
17317        ) -> size_t,
17318    >,
17319    pub read: ::std::option::Option<
17320        unsafe extern "C" fn(
17321            stream: *mut php_stream,
17322            buf: *mut ::std::os::raw::c_char,
17323            count: size_t,
17324        ) -> size_t,
17325    >,
17326    pub close: ::std::option::Option<
17327        unsafe extern "C" fn(
17328            stream: *mut php_stream,
17329            close_handle: ::std::os::raw::c_int,
17330        ) -> ::std::os::raw::c_int,
17331    >,
17332    pub flush: ::std::option::Option<
17333        unsafe extern "C" fn(stream: *mut php_stream) -> ::std::os::raw::c_int,
17334    >,
17335    pub label: *const ::std::os::raw::c_char,
17336    pub seek: ::std::option::Option<
17337        unsafe extern "C" fn(
17338            stream: *mut php_stream,
17339            offset: zend_off_t,
17340            whence: ::std::os::raw::c_int,
17341            newoffset: *mut zend_off_t,
17342        ) -> ::std::os::raw::c_int,
17343    >,
17344    pub cast: ::std::option::Option<
17345        unsafe extern "C" fn(
17346            stream: *mut php_stream,
17347            castas: ::std::os::raw::c_int,
17348            ret: *mut *mut ::std::os::raw::c_void,
17349        ) -> ::std::os::raw::c_int,
17350    >,
17351    pub stat: ::std::option::Option<
17352        unsafe extern "C" fn(
17353            stream: *mut php_stream,
17354            ssb: *mut php_stream_statbuf,
17355        ) -> ::std::os::raw::c_int,
17356    >,
17357    pub set_option: ::std::option::Option<
17358        unsafe extern "C" fn(
17359            stream: *mut php_stream,
17360            option: ::std::os::raw::c_int,
17361            value: ::std::os::raw::c_int,
17362            ptrparam: *mut ::std::os::raw::c_void,
17363        ) -> ::std::os::raw::c_int,
17364    >,
17365}
17366#[test]
17367fn bindgen_test_layout__php_stream_ops() {
17368    assert_eq!(
17369        ::std::mem::size_of::<_php_stream_ops>(),
17370        72usize,
17371        concat!("Size of: ", stringify!(_php_stream_ops))
17372    );
17373    assert_eq!(
17374        ::std::mem::align_of::<_php_stream_ops>(),
17375        8usize,
17376        concat!("Alignment of ", stringify!(_php_stream_ops))
17377    );
17378    assert_eq!(
17379        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).write as *const _ as usize },
17380        0usize,
17381        concat!(
17382            "Offset of field: ",
17383            stringify!(_php_stream_ops),
17384            "::",
17385            stringify!(write)
17386        )
17387    );
17388    assert_eq!(
17389        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).read as *const _ as usize },
17390        8usize,
17391        concat!(
17392            "Offset of field: ",
17393            stringify!(_php_stream_ops),
17394            "::",
17395            stringify!(read)
17396        )
17397    );
17398    assert_eq!(
17399        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).close as *const _ as usize },
17400        16usize,
17401        concat!(
17402            "Offset of field: ",
17403            stringify!(_php_stream_ops),
17404            "::",
17405            stringify!(close)
17406        )
17407    );
17408    assert_eq!(
17409        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).flush as *const _ as usize },
17410        24usize,
17411        concat!(
17412            "Offset of field: ",
17413            stringify!(_php_stream_ops),
17414            "::",
17415            stringify!(flush)
17416        )
17417    );
17418    assert_eq!(
17419        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).label as *const _ as usize },
17420        32usize,
17421        concat!(
17422            "Offset of field: ",
17423            stringify!(_php_stream_ops),
17424            "::",
17425            stringify!(label)
17426        )
17427    );
17428    assert_eq!(
17429        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).seek as *const _ as usize },
17430        40usize,
17431        concat!(
17432            "Offset of field: ",
17433            stringify!(_php_stream_ops),
17434            "::",
17435            stringify!(seek)
17436        )
17437    );
17438    assert_eq!(
17439        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).cast as *const _ as usize },
17440        48usize,
17441        concat!(
17442            "Offset of field: ",
17443            stringify!(_php_stream_ops),
17444            "::",
17445            stringify!(cast)
17446        )
17447    );
17448    assert_eq!(
17449        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).stat as *const _ as usize },
17450        56usize,
17451        concat!(
17452            "Offset of field: ",
17453            stringify!(_php_stream_ops),
17454            "::",
17455            stringify!(stat)
17456        )
17457    );
17458    assert_eq!(
17459        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).set_option as *const _ as usize },
17460        64usize,
17461        concat!(
17462            "Offset of field: ",
17463            stringify!(_php_stream_ops),
17464            "::",
17465            stringify!(set_option)
17466        )
17467    );
17468}
17469pub type php_stream_ops = _php_stream_ops;
17470#[repr(C)]
17471#[derive(Debug, Copy, Clone)]
17472pub struct _php_stream_wrapper_ops {
17473    pub stream_opener: ::std::option::Option<
17474        unsafe extern "C" fn(
17475            wrapper: *mut php_stream_wrapper,
17476            filename: *const ::std::os::raw::c_char,
17477            mode: *const ::std::os::raw::c_char,
17478            options: ::std::os::raw::c_int,
17479            opened_path: *mut *mut zend_string,
17480            context: *mut php_stream_context,
17481        ) -> *mut php_stream,
17482    >,
17483    pub stream_closer: ::std::option::Option<
17484        unsafe extern "C" fn(
17485            wrapper: *mut php_stream_wrapper,
17486            stream: *mut php_stream,
17487        ) -> ::std::os::raw::c_int,
17488    >,
17489    pub stream_stat: ::std::option::Option<
17490        unsafe extern "C" fn(
17491            wrapper: *mut php_stream_wrapper,
17492            stream: *mut php_stream,
17493            ssb: *mut php_stream_statbuf,
17494        ) -> ::std::os::raw::c_int,
17495    >,
17496    pub url_stat: ::std::option::Option<
17497        unsafe extern "C" fn(
17498            wrapper: *mut php_stream_wrapper,
17499            url: *const ::std::os::raw::c_char,
17500            flags: ::std::os::raw::c_int,
17501            ssb: *mut php_stream_statbuf,
17502            context: *mut php_stream_context,
17503        ) -> ::std::os::raw::c_int,
17504    >,
17505    pub dir_opener: ::std::option::Option<
17506        unsafe extern "C" fn(
17507            wrapper: *mut php_stream_wrapper,
17508            filename: *const ::std::os::raw::c_char,
17509            mode: *const ::std::os::raw::c_char,
17510            options: ::std::os::raw::c_int,
17511            opened_path: *mut *mut zend_string,
17512            context: *mut php_stream_context,
17513        ) -> *mut php_stream,
17514    >,
17515    pub label: *const ::std::os::raw::c_char,
17516    pub unlink: ::std::option::Option<
17517        unsafe extern "C" fn(
17518            wrapper: *mut php_stream_wrapper,
17519            url: *const ::std::os::raw::c_char,
17520            options: ::std::os::raw::c_int,
17521            context: *mut php_stream_context,
17522        ) -> ::std::os::raw::c_int,
17523    >,
17524    pub rename: ::std::option::Option<
17525        unsafe extern "C" fn(
17526            wrapper: *mut php_stream_wrapper,
17527            url_from: *const ::std::os::raw::c_char,
17528            url_to: *const ::std::os::raw::c_char,
17529            options: ::std::os::raw::c_int,
17530            context: *mut php_stream_context,
17531        ) -> ::std::os::raw::c_int,
17532    >,
17533    pub stream_mkdir: ::std::option::Option<
17534        unsafe extern "C" fn(
17535            wrapper: *mut php_stream_wrapper,
17536            url: *const ::std::os::raw::c_char,
17537            mode: ::std::os::raw::c_int,
17538            options: ::std::os::raw::c_int,
17539            context: *mut php_stream_context,
17540        ) -> ::std::os::raw::c_int,
17541    >,
17542    pub stream_rmdir: ::std::option::Option<
17543        unsafe extern "C" fn(
17544            wrapper: *mut php_stream_wrapper,
17545            url: *const ::std::os::raw::c_char,
17546            options: ::std::os::raw::c_int,
17547            context: *mut php_stream_context,
17548        ) -> ::std::os::raw::c_int,
17549    >,
17550    pub stream_metadata: ::std::option::Option<
17551        unsafe extern "C" fn(
17552            wrapper: *mut php_stream_wrapper,
17553            url: *const ::std::os::raw::c_char,
17554            options: ::std::os::raw::c_int,
17555            value: *mut ::std::os::raw::c_void,
17556            context: *mut php_stream_context,
17557        ) -> ::std::os::raw::c_int,
17558    >,
17559}
17560#[test]
17561fn bindgen_test_layout__php_stream_wrapper_ops() {
17562    assert_eq!(
17563        ::std::mem::size_of::<_php_stream_wrapper_ops>(),
17564        88usize,
17565        concat!("Size of: ", stringify!(_php_stream_wrapper_ops))
17566    );
17567    assert_eq!(
17568        ::std::mem::align_of::<_php_stream_wrapper_ops>(),
17569        8usize,
17570        concat!("Alignment of ", stringify!(_php_stream_wrapper_ops))
17571    );
17572    assert_eq!(
17573        unsafe {
17574            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_opener as *const _ as usize
17575        },
17576        0usize,
17577        concat!(
17578            "Offset of field: ",
17579            stringify!(_php_stream_wrapper_ops),
17580            "::",
17581            stringify!(stream_opener)
17582        )
17583    );
17584    assert_eq!(
17585        unsafe {
17586            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_closer as *const _ as usize
17587        },
17588        8usize,
17589        concat!(
17590            "Offset of field: ",
17591            stringify!(_php_stream_wrapper_ops),
17592            "::",
17593            stringify!(stream_closer)
17594        )
17595    );
17596    assert_eq!(
17597        unsafe {
17598            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_stat as *const _ as usize
17599        },
17600        16usize,
17601        concat!(
17602            "Offset of field: ",
17603            stringify!(_php_stream_wrapper_ops),
17604            "::",
17605            stringify!(stream_stat)
17606        )
17607    );
17608    assert_eq!(
17609        unsafe {
17610            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).url_stat as *const _ as usize
17611        },
17612        24usize,
17613        concat!(
17614            "Offset of field: ",
17615            stringify!(_php_stream_wrapper_ops),
17616            "::",
17617            stringify!(url_stat)
17618        )
17619    );
17620    assert_eq!(
17621        unsafe {
17622            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).dir_opener as *const _ as usize
17623        },
17624        32usize,
17625        concat!(
17626            "Offset of field: ",
17627            stringify!(_php_stream_wrapper_ops),
17628            "::",
17629            stringify!(dir_opener)
17630        )
17631    );
17632    assert_eq!(
17633        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).label as *const _ as usize },
17634        40usize,
17635        concat!(
17636            "Offset of field: ",
17637            stringify!(_php_stream_wrapper_ops),
17638            "::",
17639            stringify!(label)
17640        )
17641    );
17642    assert_eq!(
17643        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).unlink as *const _ as usize },
17644        48usize,
17645        concat!(
17646            "Offset of field: ",
17647            stringify!(_php_stream_wrapper_ops),
17648            "::",
17649            stringify!(unlink)
17650        )
17651    );
17652    assert_eq!(
17653        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).rename as *const _ as usize },
17654        56usize,
17655        concat!(
17656            "Offset of field: ",
17657            stringify!(_php_stream_wrapper_ops),
17658            "::",
17659            stringify!(rename)
17660        )
17661    );
17662    assert_eq!(
17663        unsafe {
17664            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_mkdir as *const _ as usize
17665        },
17666        64usize,
17667        concat!(
17668            "Offset of field: ",
17669            stringify!(_php_stream_wrapper_ops),
17670            "::",
17671            stringify!(stream_mkdir)
17672        )
17673    );
17674    assert_eq!(
17675        unsafe {
17676            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_rmdir as *const _ as usize
17677        },
17678        72usize,
17679        concat!(
17680            "Offset of field: ",
17681            stringify!(_php_stream_wrapper_ops),
17682            "::",
17683            stringify!(stream_rmdir)
17684        )
17685    );
17686    assert_eq!(
17687        unsafe {
17688            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_metadata as *const _ as usize
17689        },
17690        80usize,
17691        concat!(
17692            "Offset of field: ",
17693            stringify!(_php_stream_wrapper_ops),
17694            "::",
17695            stringify!(stream_metadata)
17696        )
17697    );
17698}
17699pub type php_stream_wrapper_ops = _php_stream_wrapper_ops;
17700#[repr(C)]
17701#[derive(Debug, Copy, Clone)]
17702pub struct _php_stream_wrapper {
17703    pub wops: *mut php_stream_wrapper_ops,
17704    pub abstract_: *mut ::std::os::raw::c_void,
17705    pub is_url: ::std::os::raw::c_int,
17706}
17707#[test]
17708fn bindgen_test_layout__php_stream_wrapper() {
17709    assert_eq!(
17710        ::std::mem::size_of::<_php_stream_wrapper>(),
17711        24usize,
17712        concat!("Size of: ", stringify!(_php_stream_wrapper))
17713    );
17714    assert_eq!(
17715        ::std::mem::align_of::<_php_stream_wrapper>(),
17716        8usize,
17717        concat!("Alignment of ", stringify!(_php_stream_wrapper))
17718    );
17719    assert_eq!(
17720        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper>())).wops as *const _ as usize },
17721        0usize,
17722        concat!(
17723            "Offset of field: ",
17724            stringify!(_php_stream_wrapper),
17725            "::",
17726            stringify!(wops)
17727        )
17728    );
17729    assert_eq!(
17730        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper>())).abstract_ as *const _ as usize },
17731        8usize,
17732        concat!(
17733            "Offset of field: ",
17734            stringify!(_php_stream_wrapper),
17735            "::",
17736            stringify!(abstract_)
17737        )
17738    );
17739    assert_eq!(
17740        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper>())).is_url as *const _ as usize },
17741        16usize,
17742        concat!(
17743            "Offset of field: ",
17744            stringify!(_php_stream_wrapper),
17745            "::",
17746            stringify!(is_url)
17747        )
17748    );
17749}
17750#[repr(C)]
17751#[derive(Copy, Clone)]
17752pub struct _php_stream {
17753    pub ops: *mut php_stream_ops,
17754    pub abstract_: *mut ::std::os::raw::c_void,
17755    pub readfilters: php_stream_filter_chain,
17756    pub writefilters: php_stream_filter_chain,
17757    pub wrapper: *mut php_stream_wrapper,
17758    pub wrapperthis: *mut ::std::os::raw::c_void,
17759    pub wrapperdata: zval,
17760    pub _bitfield_align_1: [u8; 0],
17761    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
17762    pub fgetss_state: u8,
17763    pub mode: [::std::os::raw::c_char; 16usize],
17764    pub flags: u32,
17765    pub res: *mut zend_resource,
17766    pub stdiocast: *mut FILE,
17767    pub orig_path: *mut ::std::os::raw::c_char,
17768    pub ctx: *mut zend_resource,
17769    pub position: zend_off_t,
17770    pub readbuf: *mut ::std::os::raw::c_uchar,
17771    pub readbuflen: size_t,
17772    pub readpos: zend_off_t,
17773    pub writepos: zend_off_t,
17774    pub chunk_size: size_t,
17775    pub enclosing_stream: *mut _php_stream,
17776}
17777#[test]
17778fn bindgen_test_layout__php_stream() {
17779    assert_eq!(
17780        ::std::mem::size_of::<_php_stream>(),
17781        208usize,
17782        concat!("Size of: ", stringify!(_php_stream))
17783    );
17784    assert_eq!(
17785        ::std::mem::align_of::<_php_stream>(),
17786        8usize,
17787        concat!("Alignment of ", stringify!(_php_stream))
17788    );
17789    assert_eq!(
17790        unsafe { &(*(::std::ptr::null::<_php_stream>())).ops as *const _ as usize },
17791        0usize,
17792        concat!(
17793            "Offset of field: ",
17794            stringify!(_php_stream),
17795            "::",
17796            stringify!(ops)
17797        )
17798    );
17799    assert_eq!(
17800        unsafe { &(*(::std::ptr::null::<_php_stream>())).abstract_ as *const _ as usize },
17801        8usize,
17802        concat!(
17803            "Offset of field: ",
17804            stringify!(_php_stream),
17805            "::",
17806            stringify!(abstract_)
17807        )
17808    );
17809    assert_eq!(
17810        unsafe { &(*(::std::ptr::null::<_php_stream>())).readfilters as *const _ as usize },
17811        16usize,
17812        concat!(
17813            "Offset of field: ",
17814            stringify!(_php_stream),
17815            "::",
17816            stringify!(readfilters)
17817        )
17818    );
17819    assert_eq!(
17820        unsafe { &(*(::std::ptr::null::<_php_stream>())).writefilters as *const _ as usize },
17821        40usize,
17822        concat!(
17823            "Offset of field: ",
17824            stringify!(_php_stream),
17825            "::",
17826            stringify!(writefilters)
17827        )
17828    );
17829    assert_eq!(
17830        unsafe { &(*(::std::ptr::null::<_php_stream>())).wrapper as *const _ as usize },
17831        64usize,
17832        concat!(
17833            "Offset of field: ",
17834            stringify!(_php_stream),
17835            "::",
17836            stringify!(wrapper)
17837        )
17838    );
17839    assert_eq!(
17840        unsafe { &(*(::std::ptr::null::<_php_stream>())).wrapperthis as *const _ as usize },
17841        72usize,
17842        concat!(
17843            "Offset of field: ",
17844            stringify!(_php_stream),
17845            "::",
17846            stringify!(wrapperthis)
17847        )
17848    );
17849    assert_eq!(
17850        unsafe { &(*(::std::ptr::null::<_php_stream>())).wrapperdata as *const _ as usize },
17851        80usize,
17852        concat!(
17853            "Offset of field: ",
17854            stringify!(_php_stream),
17855            "::",
17856            stringify!(wrapperdata)
17857        )
17858    );
17859    assert_eq!(
17860        unsafe { &(*(::std::ptr::null::<_php_stream>())).fgetss_state as *const _ as usize },
17861        97usize,
17862        concat!(
17863            "Offset of field: ",
17864            stringify!(_php_stream),
17865            "::",
17866            stringify!(fgetss_state)
17867        )
17868    );
17869    assert_eq!(
17870        unsafe { &(*(::std::ptr::null::<_php_stream>())).mode as *const _ as usize },
17871        98usize,
17872        concat!(
17873            "Offset of field: ",
17874            stringify!(_php_stream),
17875            "::",
17876            stringify!(mode)
17877        )
17878    );
17879    assert_eq!(
17880        unsafe { &(*(::std::ptr::null::<_php_stream>())).flags as *const _ as usize },
17881        116usize,
17882        concat!(
17883            "Offset of field: ",
17884            stringify!(_php_stream),
17885            "::",
17886            stringify!(flags)
17887        )
17888    );
17889    assert_eq!(
17890        unsafe { &(*(::std::ptr::null::<_php_stream>())).res as *const _ as usize },
17891        120usize,
17892        concat!(
17893            "Offset of field: ",
17894            stringify!(_php_stream),
17895            "::",
17896            stringify!(res)
17897        )
17898    );
17899    assert_eq!(
17900        unsafe { &(*(::std::ptr::null::<_php_stream>())).stdiocast as *const _ as usize },
17901        128usize,
17902        concat!(
17903            "Offset of field: ",
17904            stringify!(_php_stream),
17905            "::",
17906            stringify!(stdiocast)
17907        )
17908    );
17909    assert_eq!(
17910        unsafe { &(*(::std::ptr::null::<_php_stream>())).orig_path as *const _ as usize },
17911        136usize,
17912        concat!(
17913            "Offset of field: ",
17914            stringify!(_php_stream),
17915            "::",
17916            stringify!(orig_path)
17917        )
17918    );
17919    assert_eq!(
17920        unsafe { &(*(::std::ptr::null::<_php_stream>())).ctx as *const _ as usize },
17921        144usize,
17922        concat!(
17923            "Offset of field: ",
17924            stringify!(_php_stream),
17925            "::",
17926            stringify!(ctx)
17927        )
17928    );
17929    assert_eq!(
17930        unsafe { &(*(::std::ptr::null::<_php_stream>())).position as *const _ as usize },
17931        152usize,
17932        concat!(
17933            "Offset of field: ",
17934            stringify!(_php_stream),
17935            "::",
17936            stringify!(position)
17937        )
17938    );
17939    assert_eq!(
17940        unsafe { &(*(::std::ptr::null::<_php_stream>())).readbuf as *const _ as usize },
17941        160usize,
17942        concat!(
17943            "Offset of field: ",
17944            stringify!(_php_stream),
17945            "::",
17946            stringify!(readbuf)
17947        )
17948    );
17949    assert_eq!(
17950        unsafe { &(*(::std::ptr::null::<_php_stream>())).readbuflen as *const _ as usize },
17951        168usize,
17952        concat!(
17953            "Offset of field: ",
17954            stringify!(_php_stream),
17955            "::",
17956            stringify!(readbuflen)
17957        )
17958    );
17959    assert_eq!(
17960        unsafe { &(*(::std::ptr::null::<_php_stream>())).readpos as *const _ as usize },
17961        176usize,
17962        concat!(
17963            "Offset of field: ",
17964            stringify!(_php_stream),
17965            "::",
17966            stringify!(readpos)
17967        )
17968    );
17969    assert_eq!(
17970        unsafe { &(*(::std::ptr::null::<_php_stream>())).writepos as *const _ as usize },
17971        184usize,
17972        concat!(
17973            "Offset of field: ",
17974            stringify!(_php_stream),
17975            "::",
17976            stringify!(writepos)
17977        )
17978    );
17979    assert_eq!(
17980        unsafe { &(*(::std::ptr::null::<_php_stream>())).chunk_size as *const _ as usize },
17981        192usize,
17982        concat!(
17983            "Offset of field: ",
17984            stringify!(_php_stream),
17985            "::",
17986            stringify!(chunk_size)
17987        )
17988    );
17989    assert_eq!(
17990        unsafe { &(*(::std::ptr::null::<_php_stream>())).enclosing_stream as *const _ as usize },
17991        200usize,
17992        concat!(
17993            "Offset of field: ",
17994            stringify!(_php_stream),
17995            "::",
17996            stringify!(enclosing_stream)
17997        )
17998    );
17999}
18000impl _php_stream {
18001    #[inline]
18002    pub fn is_persistent(&self) -> u8 {
18003        unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) }
18004    }
18005    #[inline]
18006    pub fn set_is_persistent(&mut self, val: u8) {
18007        unsafe {
18008            let val: u8 = ::std::mem::transmute(val);
18009            self._bitfield_1.set(0usize, 1u8, val as u64)
18010        }
18011    }
18012    #[inline]
18013    pub fn in_free(&self) -> u8 {
18014        unsafe { ::std::mem::transmute(self._bitfield_1.get(1usize, 2u8) as u8) }
18015    }
18016    #[inline]
18017    pub fn set_in_free(&mut self, val: u8) {
18018        unsafe {
18019            let val: u8 = ::std::mem::transmute(val);
18020            self._bitfield_1.set(1usize, 2u8, val as u64)
18021        }
18022    }
18023    #[inline]
18024    pub fn eof(&self) -> u8 {
18025        unsafe { ::std::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u8) }
18026    }
18027    #[inline]
18028    pub fn set_eof(&mut self, val: u8) {
18029        unsafe {
18030            let val: u8 = ::std::mem::transmute(val);
18031            self._bitfield_1.set(3usize, 1u8, val as u64)
18032        }
18033    }
18034    #[inline]
18035    pub fn __exposed(&self) -> u8 {
18036        unsafe { ::std::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u8) }
18037    }
18038    #[inline]
18039    pub fn set___exposed(&mut self, val: u8) {
18040        unsafe {
18041            let val: u8 = ::std::mem::transmute(val);
18042            self._bitfield_1.set(4usize, 1u8, val as u64)
18043        }
18044    }
18045    #[inline]
18046    pub fn fclose_stdiocast(&self) -> u8 {
18047        unsafe { ::std::mem::transmute(self._bitfield_1.get(5usize, 2u8) as u8) }
18048    }
18049    #[inline]
18050    pub fn set_fclose_stdiocast(&mut self, val: u8) {
18051        unsafe {
18052            let val: u8 = ::std::mem::transmute(val);
18053            self._bitfield_1.set(5usize, 2u8, val as u64)
18054        }
18055    }
18056    #[inline]
18057    pub fn new_bitfield_1(
18058        is_persistent: u8,
18059        in_free: u8,
18060        eof: u8,
18061        __exposed: u8,
18062        fclose_stdiocast: u8,
18063    ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
18064        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
18065        __bindgen_bitfield_unit.set(0usize, 1u8, {
18066            let is_persistent: u8 = unsafe { ::std::mem::transmute(is_persistent) };
18067            is_persistent as u64
18068        });
18069        __bindgen_bitfield_unit.set(1usize, 2u8, {
18070            let in_free: u8 = unsafe { ::std::mem::transmute(in_free) };
18071            in_free as u64
18072        });
18073        __bindgen_bitfield_unit.set(3usize, 1u8, {
18074            let eof: u8 = unsafe { ::std::mem::transmute(eof) };
18075            eof as u64
18076        });
18077        __bindgen_bitfield_unit.set(4usize, 1u8, {
18078            let __exposed: u8 = unsafe { ::std::mem::transmute(__exposed) };
18079            __exposed as u64
18080        });
18081        __bindgen_bitfield_unit.set(5usize, 2u8, {
18082            let fclose_stdiocast: u8 = unsafe { ::std::mem::transmute(fclose_stdiocast) };
18083            fclose_stdiocast as u64
18084        });
18085        __bindgen_bitfield_unit
18086    }
18087}
18088extern "C" {
18089    pub fn php_stream_encloses(
18090        enclosing: *mut php_stream,
18091        enclosed: *mut php_stream,
18092    ) -> *mut php_stream;
18093}
18094extern "C" {
18095    pub fn php_stream_from_persistent_id(
18096        persistent_id: *const ::std::os::raw::c_char,
18097        stream: *mut *mut php_stream,
18098    ) -> ::std::os::raw::c_int;
18099}
18100extern "C" {
18101    pub fn php_stream_get_record(
18102        stream: *mut php_stream,
18103        maxlen: size_t,
18104        delim: *const ::std::os::raw::c_char,
18105        delim_len: size_t,
18106    ) -> *mut zend_string;
18107}
18108extern "C" {
18109    pub fn php_stream_dirent_alphasort(
18110        a: *mut *const zend_string,
18111        b: *mut *const zend_string,
18112    ) -> ::std::os::raw::c_int;
18113}
18114extern "C" {
18115    pub fn php_stream_dirent_alphasortr(
18116        a: *mut *const zend_string,
18117        b: *mut *const zend_string,
18118    ) -> ::std::os::raw::c_int;
18119}
18120pub type php_stream_transport_factory_func = ::std::option::Option<
18121    unsafe extern "C" fn(
18122        proto: *const ::std::os::raw::c_char,
18123        protolen: size_t,
18124        resourcename: *const ::std::os::raw::c_char,
18125        resourcenamelen: size_t,
18126        persistent_id: *const ::std::os::raw::c_char,
18127        options: ::std::os::raw::c_int,
18128        flags: ::std::os::raw::c_int,
18129        timeout: *mut timeval,
18130        context: *mut php_stream_context,
18131    ) -> *mut php_stream,
18132>;
18133pub type php_stream_transport_factory = php_stream_transport_factory_func;
18134extern "C" {
18135    pub fn php_stream_xport_register(
18136        protocol: *const ::std::os::raw::c_char,
18137        factory: php_stream_transport_factory,
18138    ) -> ::std::os::raw::c_int;
18139}
18140extern "C" {
18141    pub fn php_stream_xport_unregister(
18142        protocol: *const ::std::os::raw::c_char,
18143    ) -> ::std::os::raw::c_int;
18144}
18145extern "C" {
18146    pub fn php_stream_xport_bind(
18147        stream: *mut php_stream,
18148        name: *const ::std::os::raw::c_char,
18149        namelen: size_t,
18150        error_text: *mut *mut zend_string,
18151    ) -> ::std::os::raw::c_int;
18152}
18153extern "C" {
18154    pub fn php_stream_xport_connect(
18155        stream: *mut php_stream,
18156        name: *const ::std::os::raw::c_char,
18157        namelen: size_t,
18158        asynchronous: ::std::os::raw::c_int,
18159        timeout: *mut timeval,
18160        error_text: *mut *mut zend_string,
18161        error_code: *mut ::std::os::raw::c_int,
18162    ) -> ::std::os::raw::c_int;
18163}
18164extern "C" {
18165    pub fn php_stream_xport_listen(
18166        stream: *mut php_stream,
18167        backlog: ::std::os::raw::c_int,
18168        error_text: *mut *mut zend_string,
18169    ) -> ::std::os::raw::c_int;
18170}
18171extern "C" {
18172    pub fn php_stream_xport_accept(
18173        stream: *mut php_stream,
18174        client: *mut *mut php_stream,
18175        textaddr: *mut *mut zend_string,
18176        addr: *mut *mut ::std::os::raw::c_void,
18177        addrlen: *mut socklen_t,
18178        timeout: *mut timeval,
18179        error_text: *mut *mut zend_string,
18180    ) -> ::std::os::raw::c_int;
18181}
18182extern "C" {
18183    pub fn php_stream_xport_get_name(
18184        stream: *mut php_stream,
18185        want_peer: ::std::os::raw::c_int,
18186        textaddr: *mut *mut zend_string,
18187        addr: *mut *mut ::std::os::raw::c_void,
18188        addrlen: *mut socklen_t,
18189    ) -> ::std::os::raw::c_int;
18190}
18191extern "C" {
18192    pub fn php_stream_xport_recvfrom(
18193        stream: *mut php_stream,
18194        buf: *mut ::std::os::raw::c_char,
18195        buflen: size_t,
18196        flags: ::std::os::raw::c_int,
18197        addr: *mut *mut ::std::os::raw::c_void,
18198        addrlen: *mut socklen_t,
18199        textaddr: *mut *mut zend_string,
18200    ) -> ::std::os::raw::c_int;
18201}
18202extern "C" {
18203    pub fn php_stream_xport_sendto(
18204        stream: *mut php_stream,
18205        buf: *const ::std::os::raw::c_char,
18206        buflen: size_t,
18207        flags: ::std::os::raw::c_int,
18208        addr: *mut ::std::os::raw::c_void,
18209        addrlen: socklen_t,
18210    ) -> ::std::os::raw::c_int;
18211}
18212pub const stream_shutdown_t_STREAM_SHUT_RD: stream_shutdown_t = 0;
18213pub const stream_shutdown_t_STREAM_SHUT_WR: stream_shutdown_t = 1;
18214pub const stream_shutdown_t_STREAM_SHUT_RDWR: stream_shutdown_t = 2;
18215pub type stream_shutdown_t = ::std::os::raw::c_uint;
18216extern "C" {
18217    pub fn php_stream_xport_shutdown(
18218        stream: *mut php_stream,
18219        how: stream_shutdown_t,
18220    ) -> ::std::os::raw::c_int;
18221}
18222pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv2_CLIENT:
18223    php_stream_xport_crypt_method_t = 3;
18224pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv3_CLIENT:
18225    php_stream_xport_crypt_method_t = 5;
18226pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv23_CLIENT:
18227    php_stream_xport_crypt_method_t = 57;
18228pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_0_CLIENT:
18229    php_stream_xport_crypt_method_t = 9;
18230pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_1_CLIENT:
18231    php_stream_xport_crypt_method_t = 17;
18232pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT:
18233    php_stream_xport_crypt_method_t = 33;
18234pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLS_CLIENT:
18235    php_stream_xport_crypt_method_t = 57;
18236pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLS_ANY_CLIENT:
18237    php_stream_xport_crypt_method_t = 57;
18238pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_ANY_CLIENT:
18239    php_stream_xport_crypt_method_t = 63;
18240pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv2_SERVER:
18241    php_stream_xport_crypt_method_t = 2;
18242pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv3_SERVER:
18243    php_stream_xport_crypt_method_t = 4;
18244pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv23_SERVER:
18245    php_stream_xport_crypt_method_t = 56;
18246pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_0_SERVER:
18247    php_stream_xport_crypt_method_t = 8;
18248pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_1_SERVER:
18249    php_stream_xport_crypt_method_t = 16;
18250pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_2_SERVER:
18251    php_stream_xport_crypt_method_t = 32;
18252pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLS_SERVER:
18253    php_stream_xport_crypt_method_t = 56;
18254pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLS_ANY_SERVER:
18255    php_stream_xport_crypt_method_t = 56;
18256pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_ANY_SERVER:
18257    php_stream_xport_crypt_method_t = 62;
18258pub type php_stream_xport_crypt_method_t = ::std::os::raw::c_uint;
18259extern "C" {
18260    pub fn php_stream_xport_crypto_setup(
18261        stream: *mut php_stream,
18262        crypto_method: php_stream_xport_crypt_method_t,
18263        session_stream: *mut php_stream,
18264    ) -> ::std::os::raw::c_int;
18265}
18266extern "C" {
18267    pub fn php_stream_xport_crypto_enable(
18268        stream: *mut php_stream,
18269        activate: ::std::os::raw::c_int,
18270    ) -> ::std::os::raw::c_int;
18271}
18272extern "C" {
18273    pub fn php_stream_xport_get_hash() -> *mut HashTable;
18274}
18275extern "C" {
18276    pub fn php_stream_generic_socket_factory(
18277        proto: *const ::std::os::raw::c_char,
18278        protolen: size_t,
18279        resourcename: *const ::std::os::raw::c_char,
18280        resourcenamelen: size_t,
18281        persistent_id: *const ::std::os::raw::c_char,
18282        options: ::std::os::raw::c_int,
18283        flags: ::std::os::raw::c_int,
18284        timeout: *mut timeval,
18285        context: *mut php_stream_context,
18286    ) -> *mut php_stream;
18287}
18288extern "C" {
18289    pub static mut php_stream_stdio_ops: php_stream_ops;
18290}
18291extern "C" {
18292    pub static mut php_plain_files_wrapper: php_stream_wrapper;
18293}
18294extern "C" {
18295    pub static mut php_glob_stream_wrapper: php_stream_wrapper;
18296}
18297extern "C" {
18298    pub static mut php_glob_stream_ops: php_stream_ops;
18299}
18300extern "C" {
18301    pub static mut php_stream_userspace_ops: php_stream_ops;
18302}
18303extern "C" {
18304    pub static mut php_stream_userspace_dir_ops: php_stream_ops;
18305}
18306extern "C" {
18307    pub fn php_init_stream_wrappers(module_number: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
18308}
18309extern "C" {
18310    pub fn php_shutdown_stream_wrappers(
18311        module_number: ::std::os::raw::c_int,
18312    ) -> ::std::os::raw::c_int;
18313}
18314extern "C" {
18315    pub fn php_shutdown_stream_hashes();
18316}
18317extern "C" {
18318    pub fn php_register_url_stream_wrapper(
18319        protocol: *const ::std::os::raw::c_char,
18320        wrapper: *mut php_stream_wrapper,
18321    ) -> ::std::os::raw::c_int;
18322}
18323extern "C" {
18324    pub fn php_unregister_url_stream_wrapper(
18325        protocol: *const ::std::os::raw::c_char,
18326    ) -> ::std::os::raw::c_int;
18327}
18328extern "C" {
18329    pub fn php_register_url_stream_wrapper_volatile(
18330        protocol: *const ::std::os::raw::c_char,
18331        wrapper: *mut php_stream_wrapper,
18332    ) -> ::std::os::raw::c_int;
18333}
18334extern "C" {
18335    pub fn php_unregister_url_stream_wrapper_volatile(
18336        protocol: *const ::std::os::raw::c_char,
18337    ) -> ::std::os::raw::c_int;
18338}
18339extern "C" {
18340    pub fn php_stream_locate_url_wrapper(
18341        path: *const ::std::os::raw::c_char,
18342        path_for_open: *mut *const ::std::os::raw::c_char,
18343        options: ::std::os::raw::c_int,
18344    ) -> *mut php_stream_wrapper;
18345}
18346extern "C" {
18347    pub fn php_stream_locate_eol(
18348        stream: *mut php_stream,
18349        buf: *mut zend_string,
18350    ) -> *const ::std::os::raw::c_char;
18351}
18352extern "C" {
18353    pub fn php_stream_wrapper_log_error(
18354        wrapper: *mut php_stream_wrapper,
18355        options: ::std::os::raw::c_int,
18356        fmt: *const ::std::os::raw::c_char,
18357        ...
18358    );
18359}
18360extern "C" {
18361    pub fn php_stream_get_url_stream_wrappers_hash_global() -> *mut HashTable;
18362}
18363extern "C" {
18364    pub fn php_get_stream_filters_hash_global() -> *mut HashTable;
18365}
18366extern "C" {
18367    pub static mut php_stream_user_wrapper_ops: *mut php_stream_wrapper_ops;
18368}
18369extern "C" {
18370    pub static mut php_stream_memory_ops: php_stream_ops;
18371}
18372extern "C" {
18373    pub static mut php_stream_temp_ops: php_stream_ops;
18374}
18375extern "C" {
18376    pub static mut php_stream_rfc2397_ops: php_stream_ops;
18377}
18378extern "C" {
18379    pub static mut php_stream_rfc2397_wrapper: php_stream_wrapper;
18380}
18381#[repr(C)]
18382#[derive(Copy, Clone)]
18383pub struct _php_core_globals {
18384    pub implicit_flush: zend_bool,
18385    pub output_buffering: zend_long,
18386    pub enable_dl: zend_bool,
18387    pub output_handler: *mut ::std::os::raw::c_char,
18388    pub unserialize_callback_func: *mut ::std::os::raw::c_char,
18389    pub serialize_precision: zend_long,
18390    pub memory_limit: zend_long,
18391    pub max_input_time: zend_long,
18392    pub track_errors: zend_bool,
18393    pub display_errors: zend_bool,
18394    pub display_startup_errors: zend_bool,
18395    pub log_errors: zend_bool,
18396    pub log_errors_max_len: zend_long,
18397    pub ignore_repeated_errors: zend_bool,
18398    pub ignore_repeated_source: zend_bool,
18399    pub report_memleaks: zend_bool,
18400    pub error_log: *mut ::std::os::raw::c_char,
18401    pub doc_root: *mut ::std::os::raw::c_char,
18402    pub user_dir: *mut ::std::os::raw::c_char,
18403    pub include_path: *mut ::std::os::raw::c_char,
18404    pub open_basedir: *mut ::std::os::raw::c_char,
18405    pub extension_dir: *mut ::std::os::raw::c_char,
18406    pub php_binary: *mut ::std::os::raw::c_char,
18407    pub sys_temp_dir: *mut ::std::os::raw::c_char,
18408    pub upload_tmp_dir: *mut ::std::os::raw::c_char,
18409    pub upload_max_filesize: zend_long,
18410    pub error_append_string: *mut ::std::os::raw::c_char,
18411    pub error_prepend_string: *mut ::std::os::raw::c_char,
18412    pub auto_prepend_file: *mut ::std::os::raw::c_char,
18413    pub auto_append_file: *mut ::std::os::raw::c_char,
18414    pub input_encoding: *mut ::std::os::raw::c_char,
18415    pub internal_encoding: *mut ::std::os::raw::c_char,
18416    pub output_encoding: *mut ::std::os::raw::c_char,
18417    pub arg_separator: arg_separators,
18418    pub variables_order: *mut ::std::os::raw::c_char,
18419    pub rfc1867_protected_variables: HashTable,
18420    pub connection_status: ::std::os::raw::c_short,
18421    pub ignore_user_abort: zend_bool,
18422    pub ignore_user_abort_reserved_padding: ::std::os::raw::c_char,
18423    pub header_is_being_sent: ::std::os::raw::c_uchar,
18424    pub tick_functions: zend_llist,
18425    pub http_globals: [zval; 6usize],
18426    pub expose_php: zend_bool,
18427    pub register_argc_argv: zend_bool,
18428    pub auto_globals_jit: zend_bool,
18429    pub docref_root: *mut ::std::os::raw::c_char,
18430    pub docref_ext: *mut ::std::os::raw::c_char,
18431    pub html_errors: zend_bool,
18432    pub xmlrpc_errors: zend_bool,
18433    pub xmlrpc_error_number: zend_long,
18434    pub activated_auto_globals: [zend_bool; 8usize],
18435    pub modules_activated: zend_bool,
18436    pub file_uploads: zend_bool,
18437    pub during_request_startup: zend_bool,
18438    pub allow_url_fopen: zend_bool,
18439    pub enable_post_data_reading: zend_bool,
18440    pub report_zend_debug: zend_bool,
18441    pub last_error_type: ::std::os::raw::c_int,
18442    pub last_error_message: *mut ::std::os::raw::c_char,
18443    pub last_error_file: *mut ::std::os::raw::c_char,
18444    pub last_error_lineno: ::std::os::raw::c_int,
18445    pub php_sys_temp_dir: *mut ::std::os::raw::c_char,
18446    pub disable_functions: *mut ::std::os::raw::c_char,
18447    pub disable_classes: *mut ::std::os::raw::c_char,
18448    pub allow_url_include: zend_bool,
18449    pub max_input_nesting_level: zend_long,
18450    pub max_input_vars: zend_long,
18451    pub in_user_include: zend_bool,
18452    pub user_ini_filename: *mut ::std::os::raw::c_char,
18453    pub user_ini_cache_ttl: zend_long,
18454    pub request_order: *mut ::std::os::raw::c_char,
18455    pub mail_x_header: zend_bool,
18456    pub mail_log: *mut ::std::os::raw::c_char,
18457    pub in_error_log: zend_bool,
18458}
18459#[test]
18460fn bindgen_test_layout__php_core_globals() {
18461    assert_eq!(
18462        ::std::mem::size_of::<_php_core_globals>(),
18463        656usize,
18464        concat!("Size of: ", stringify!(_php_core_globals))
18465    );
18466    assert_eq!(
18467        ::std::mem::align_of::<_php_core_globals>(),
18468        8usize,
18469        concat!("Alignment of ", stringify!(_php_core_globals))
18470    );
18471    assert_eq!(
18472        unsafe {
18473            &(*(::std::ptr::null::<_php_core_globals>())).implicit_flush as *const _ as usize
18474        },
18475        0usize,
18476        concat!(
18477            "Offset of field: ",
18478            stringify!(_php_core_globals),
18479            "::",
18480            stringify!(implicit_flush)
18481        )
18482    );
18483    assert_eq!(
18484        unsafe {
18485            &(*(::std::ptr::null::<_php_core_globals>())).output_buffering as *const _ as usize
18486        },
18487        8usize,
18488        concat!(
18489            "Offset of field: ",
18490            stringify!(_php_core_globals),
18491            "::",
18492            stringify!(output_buffering)
18493        )
18494    );
18495    assert_eq!(
18496        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).enable_dl as *const _ as usize },
18497        16usize,
18498        concat!(
18499            "Offset of field: ",
18500            stringify!(_php_core_globals),
18501            "::",
18502            stringify!(enable_dl)
18503        )
18504    );
18505    assert_eq!(
18506        unsafe {
18507            &(*(::std::ptr::null::<_php_core_globals>())).output_handler as *const _ as usize
18508        },
18509        24usize,
18510        concat!(
18511            "Offset of field: ",
18512            stringify!(_php_core_globals),
18513            "::",
18514            stringify!(output_handler)
18515        )
18516    );
18517    assert_eq!(
18518        unsafe {
18519            &(*(::std::ptr::null::<_php_core_globals>())).unserialize_callback_func as *const _
18520                as usize
18521        },
18522        32usize,
18523        concat!(
18524            "Offset of field: ",
18525            stringify!(_php_core_globals),
18526            "::",
18527            stringify!(unserialize_callback_func)
18528        )
18529    );
18530    assert_eq!(
18531        unsafe {
18532            &(*(::std::ptr::null::<_php_core_globals>())).serialize_precision as *const _ as usize
18533        },
18534        40usize,
18535        concat!(
18536            "Offset of field: ",
18537            stringify!(_php_core_globals),
18538            "::",
18539            stringify!(serialize_precision)
18540        )
18541    );
18542    assert_eq!(
18543        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).memory_limit as *const _ as usize },
18544        48usize,
18545        concat!(
18546            "Offset of field: ",
18547            stringify!(_php_core_globals),
18548            "::",
18549            stringify!(memory_limit)
18550        )
18551    );
18552    assert_eq!(
18553        unsafe {
18554            &(*(::std::ptr::null::<_php_core_globals>())).max_input_time as *const _ as usize
18555        },
18556        56usize,
18557        concat!(
18558            "Offset of field: ",
18559            stringify!(_php_core_globals),
18560            "::",
18561            stringify!(max_input_time)
18562        )
18563    );
18564    assert_eq!(
18565        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).track_errors as *const _ as usize },
18566        64usize,
18567        concat!(
18568            "Offset of field: ",
18569            stringify!(_php_core_globals),
18570            "::",
18571            stringify!(track_errors)
18572        )
18573    );
18574    assert_eq!(
18575        unsafe {
18576            &(*(::std::ptr::null::<_php_core_globals>())).display_errors as *const _ as usize
18577        },
18578        65usize,
18579        concat!(
18580            "Offset of field: ",
18581            stringify!(_php_core_globals),
18582            "::",
18583            stringify!(display_errors)
18584        )
18585    );
18586    assert_eq!(
18587        unsafe {
18588            &(*(::std::ptr::null::<_php_core_globals>())).display_startup_errors as *const _
18589                as usize
18590        },
18591        66usize,
18592        concat!(
18593            "Offset of field: ",
18594            stringify!(_php_core_globals),
18595            "::",
18596            stringify!(display_startup_errors)
18597        )
18598    );
18599    assert_eq!(
18600        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).log_errors as *const _ as usize },
18601        67usize,
18602        concat!(
18603            "Offset of field: ",
18604            stringify!(_php_core_globals),
18605            "::",
18606            stringify!(log_errors)
18607        )
18608    );
18609    assert_eq!(
18610        unsafe {
18611            &(*(::std::ptr::null::<_php_core_globals>())).log_errors_max_len as *const _ as usize
18612        },
18613        72usize,
18614        concat!(
18615            "Offset of field: ",
18616            stringify!(_php_core_globals),
18617            "::",
18618            stringify!(log_errors_max_len)
18619        )
18620    );
18621    assert_eq!(
18622        unsafe {
18623            &(*(::std::ptr::null::<_php_core_globals>())).ignore_repeated_errors as *const _
18624                as usize
18625        },
18626        80usize,
18627        concat!(
18628            "Offset of field: ",
18629            stringify!(_php_core_globals),
18630            "::",
18631            stringify!(ignore_repeated_errors)
18632        )
18633    );
18634    assert_eq!(
18635        unsafe {
18636            &(*(::std::ptr::null::<_php_core_globals>())).ignore_repeated_source as *const _
18637                as usize
18638        },
18639        81usize,
18640        concat!(
18641            "Offset of field: ",
18642            stringify!(_php_core_globals),
18643            "::",
18644            stringify!(ignore_repeated_source)
18645        )
18646    );
18647    assert_eq!(
18648        unsafe {
18649            &(*(::std::ptr::null::<_php_core_globals>())).report_memleaks as *const _ as usize
18650        },
18651        82usize,
18652        concat!(
18653            "Offset of field: ",
18654            stringify!(_php_core_globals),
18655            "::",
18656            stringify!(report_memleaks)
18657        )
18658    );
18659    assert_eq!(
18660        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).error_log as *const _ as usize },
18661        88usize,
18662        concat!(
18663            "Offset of field: ",
18664            stringify!(_php_core_globals),
18665            "::",
18666            stringify!(error_log)
18667        )
18668    );
18669    assert_eq!(
18670        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).doc_root as *const _ as usize },
18671        96usize,
18672        concat!(
18673            "Offset of field: ",
18674            stringify!(_php_core_globals),
18675            "::",
18676            stringify!(doc_root)
18677        )
18678    );
18679    assert_eq!(
18680        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).user_dir as *const _ as usize },
18681        104usize,
18682        concat!(
18683            "Offset of field: ",
18684            stringify!(_php_core_globals),
18685            "::",
18686            stringify!(user_dir)
18687        )
18688    );
18689    assert_eq!(
18690        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).include_path as *const _ as usize },
18691        112usize,
18692        concat!(
18693            "Offset of field: ",
18694            stringify!(_php_core_globals),
18695            "::",
18696            stringify!(include_path)
18697        )
18698    );
18699    assert_eq!(
18700        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).open_basedir as *const _ as usize },
18701        120usize,
18702        concat!(
18703            "Offset of field: ",
18704            stringify!(_php_core_globals),
18705            "::",
18706            stringify!(open_basedir)
18707        )
18708    );
18709    assert_eq!(
18710        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).extension_dir as *const _ as usize },
18711        128usize,
18712        concat!(
18713            "Offset of field: ",
18714            stringify!(_php_core_globals),
18715            "::",
18716            stringify!(extension_dir)
18717        )
18718    );
18719    assert_eq!(
18720        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).php_binary as *const _ as usize },
18721        136usize,
18722        concat!(
18723            "Offset of field: ",
18724            stringify!(_php_core_globals),
18725            "::",
18726            stringify!(php_binary)
18727        )
18728    );
18729    assert_eq!(
18730        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).sys_temp_dir as *const _ as usize },
18731        144usize,
18732        concat!(
18733            "Offset of field: ",
18734            stringify!(_php_core_globals),
18735            "::",
18736            stringify!(sys_temp_dir)
18737        )
18738    );
18739    assert_eq!(
18740        unsafe {
18741            &(*(::std::ptr::null::<_php_core_globals>())).upload_tmp_dir as *const _ as usize
18742        },
18743        152usize,
18744        concat!(
18745            "Offset of field: ",
18746            stringify!(_php_core_globals),
18747            "::",
18748            stringify!(upload_tmp_dir)
18749        )
18750    );
18751    assert_eq!(
18752        unsafe {
18753            &(*(::std::ptr::null::<_php_core_globals>())).upload_max_filesize as *const _ as usize
18754        },
18755        160usize,
18756        concat!(
18757            "Offset of field: ",
18758            stringify!(_php_core_globals),
18759            "::",
18760            stringify!(upload_max_filesize)
18761        )
18762    );
18763    assert_eq!(
18764        unsafe {
18765            &(*(::std::ptr::null::<_php_core_globals>())).error_append_string as *const _ as usize
18766        },
18767        168usize,
18768        concat!(
18769            "Offset of field: ",
18770            stringify!(_php_core_globals),
18771            "::",
18772            stringify!(error_append_string)
18773        )
18774    );
18775    assert_eq!(
18776        unsafe {
18777            &(*(::std::ptr::null::<_php_core_globals>())).error_prepend_string as *const _ as usize
18778        },
18779        176usize,
18780        concat!(
18781            "Offset of field: ",
18782            stringify!(_php_core_globals),
18783            "::",
18784            stringify!(error_prepend_string)
18785        )
18786    );
18787    assert_eq!(
18788        unsafe {
18789            &(*(::std::ptr::null::<_php_core_globals>())).auto_prepend_file as *const _ as usize
18790        },
18791        184usize,
18792        concat!(
18793            "Offset of field: ",
18794            stringify!(_php_core_globals),
18795            "::",
18796            stringify!(auto_prepend_file)
18797        )
18798    );
18799    assert_eq!(
18800        unsafe {
18801            &(*(::std::ptr::null::<_php_core_globals>())).auto_append_file as *const _ as usize
18802        },
18803        192usize,
18804        concat!(
18805            "Offset of field: ",
18806            stringify!(_php_core_globals),
18807            "::",
18808            stringify!(auto_append_file)
18809        )
18810    );
18811    assert_eq!(
18812        unsafe {
18813            &(*(::std::ptr::null::<_php_core_globals>())).input_encoding as *const _ as usize
18814        },
18815        200usize,
18816        concat!(
18817            "Offset of field: ",
18818            stringify!(_php_core_globals),
18819            "::",
18820            stringify!(input_encoding)
18821        )
18822    );
18823    assert_eq!(
18824        unsafe {
18825            &(*(::std::ptr::null::<_php_core_globals>())).internal_encoding as *const _ as usize
18826        },
18827        208usize,
18828        concat!(
18829            "Offset of field: ",
18830            stringify!(_php_core_globals),
18831            "::",
18832            stringify!(internal_encoding)
18833        )
18834    );
18835    assert_eq!(
18836        unsafe {
18837            &(*(::std::ptr::null::<_php_core_globals>())).output_encoding as *const _ as usize
18838        },
18839        216usize,
18840        concat!(
18841            "Offset of field: ",
18842            stringify!(_php_core_globals),
18843            "::",
18844            stringify!(output_encoding)
18845        )
18846    );
18847    assert_eq!(
18848        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).arg_separator as *const _ as usize },
18849        224usize,
18850        concat!(
18851            "Offset of field: ",
18852            stringify!(_php_core_globals),
18853            "::",
18854            stringify!(arg_separator)
18855        )
18856    );
18857    assert_eq!(
18858        unsafe {
18859            &(*(::std::ptr::null::<_php_core_globals>())).variables_order as *const _ as usize
18860        },
18861        240usize,
18862        concat!(
18863            "Offset of field: ",
18864            stringify!(_php_core_globals),
18865            "::",
18866            stringify!(variables_order)
18867        )
18868    );
18869    assert_eq!(
18870        unsafe {
18871            &(*(::std::ptr::null::<_php_core_globals>())).rfc1867_protected_variables as *const _
18872                as usize
18873        },
18874        248usize,
18875        concat!(
18876            "Offset of field: ",
18877            stringify!(_php_core_globals),
18878            "::",
18879            stringify!(rfc1867_protected_variables)
18880        )
18881    );
18882    assert_eq!(
18883        unsafe {
18884            &(*(::std::ptr::null::<_php_core_globals>())).connection_status as *const _ as usize
18885        },
18886        304usize,
18887        concat!(
18888            "Offset of field: ",
18889            stringify!(_php_core_globals),
18890            "::",
18891            stringify!(connection_status)
18892        )
18893    );
18894    assert_eq!(
18895        unsafe {
18896            &(*(::std::ptr::null::<_php_core_globals>())).ignore_user_abort as *const _ as usize
18897        },
18898        306usize,
18899        concat!(
18900            "Offset of field: ",
18901            stringify!(_php_core_globals),
18902            "::",
18903            stringify!(ignore_user_abort)
18904        )
18905    );
18906    assert_eq!(
18907        unsafe {
18908            &(*(::std::ptr::null::<_php_core_globals>())).ignore_user_abort_reserved_padding
18909                as *const _ as usize
18910        },
18911        307usize,
18912        concat!(
18913            "Offset of field: ",
18914            stringify!(_php_core_globals),
18915            "::",
18916            stringify!(ignore_user_abort_reserved_padding)
18917        )
18918    );
18919    assert_eq!(
18920        unsafe {
18921            &(*(::std::ptr::null::<_php_core_globals>())).header_is_being_sent as *const _ as usize
18922        },
18923        308usize,
18924        concat!(
18925            "Offset of field: ",
18926            stringify!(_php_core_globals),
18927            "::",
18928            stringify!(header_is_being_sent)
18929        )
18930    );
18931    assert_eq!(
18932        unsafe {
18933            &(*(::std::ptr::null::<_php_core_globals>())).tick_functions as *const _ as usize
18934        },
18935        312usize,
18936        concat!(
18937            "Offset of field: ",
18938            stringify!(_php_core_globals),
18939            "::",
18940            stringify!(tick_functions)
18941        )
18942    );
18943    assert_eq!(
18944        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).http_globals as *const _ as usize },
18945        368usize,
18946        concat!(
18947            "Offset of field: ",
18948            stringify!(_php_core_globals),
18949            "::",
18950            stringify!(http_globals)
18951        )
18952    );
18953    assert_eq!(
18954        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).expose_php as *const _ as usize },
18955        464usize,
18956        concat!(
18957            "Offset of field: ",
18958            stringify!(_php_core_globals),
18959            "::",
18960            stringify!(expose_php)
18961        )
18962    );
18963    assert_eq!(
18964        unsafe {
18965            &(*(::std::ptr::null::<_php_core_globals>())).register_argc_argv as *const _ as usize
18966        },
18967        465usize,
18968        concat!(
18969            "Offset of field: ",
18970            stringify!(_php_core_globals),
18971            "::",
18972            stringify!(register_argc_argv)
18973        )
18974    );
18975    assert_eq!(
18976        unsafe {
18977            &(*(::std::ptr::null::<_php_core_globals>())).auto_globals_jit as *const _ as usize
18978        },
18979        466usize,
18980        concat!(
18981            "Offset of field: ",
18982            stringify!(_php_core_globals),
18983            "::",
18984            stringify!(auto_globals_jit)
18985        )
18986    );
18987    assert_eq!(
18988        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).docref_root as *const _ as usize },
18989        472usize,
18990        concat!(
18991            "Offset of field: ",
18992            stringify!(_php_core_globals),
18993            "::",
18994            stringify!(docref_root)
18995        )
18996    );
18997    assert_eq!(
18998        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).docref_ext as *const _ as usize },
18999        480usize,
19000        concat!(
19001            "Offset of field: ",
19002            stringify!(_php_core_globals),
19003            "::",
19004            stringify!(docref_ext)
19005        )
19006    );
19007    assert_eq!(
19008        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).html_errors as *const _ as usize },
19009        488usize,
19010        concat!(
19011            "Offset of field: ",
19012            stringify!(_php_core_globals),
19013            "::",
19014            stringify!(html_errors)
19015        )
19016    );
19017    assert_eq!(
19018        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).xmlrpc_errors as *const _ as usize },
19019        489usize,
19020        concat!(
19021            "Offset of field: ",
19022            stringify!(_php_core_globals),
19023            "::",
19024            stringify!(xmlrpc_errors)
19025        )
19026    );
19027    assert_eq!(
19028        unsafe {
19029            &(*(::std::ptr::null::<_php_core_globals>())).xmlrpc_error_number as *const _ as usize
19030        },
19031        496usize,
19032        concat!(
19033            "Offset of field: ",
19034            stringify!(_php_core_globals),
19035            "::",
19036            stringify!(xmlrpc_error_number)
19037        )
19038    );
19039    assert_eq!(
19040        unsafe {
19041            &(*(::std::ptr::null::<_php_core_globals>())).activated_auto_globals as *const _
19042                as usize
19043        },
19044        504usize,
19045        concat!(
19046            "Offset of field: ",
19047            stringify!(_php_core_globals),
19048            "::",
19049            stringify!(activated_auto_globals)
19050        )
19051    );
19052    assert_eq!(
19053        unsafe {
19054            &(*(::std::ptr::null::<_php_core_globals>())).modules_activated as *const _ as usize
19055        },
19056        512usize,
19057        concat!(
19058            "Offset of field: ",
19059            stringify!(_php_core_globals),
19060            "::",
19061            stringify!(modules_activated)
19062        )
19063    );
19064    assert_eq!(
19065        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).file_uploads as *const _ as usize },
19066        513usize,
19067        concat!(
19068            "Offset of field: ",
19069            stringify!(_php_core_globals),
19070            "::",
19071            stringify!(file_uploads)
19072        )
19073    );
19074    assert_eq!(
19075        unsafe {
19076            &(*(::std::ptr::null::<_php_core_globals>())).during_request_startup as *const _
19077                as usize
19078        },
19079        514usize,
19080        concat!(
19081            "Offset of field: ",
19082            stringify!(_php_core_globals),
19083            "::",
19084            stringify!(during_request_startup)
19085        )
19086    );
19087    assert_eq!(
19088        unsafe {
19089            &(*(::std::ptr::null::<_php_core_globals>())).allow_url_fopen as *const _ as usize
19090        },
19091        515usize,
19092        concat!(
19093            "Offset of field: ",
19094            stringify!(_php_core_globals),
19095            "::",
19096            stringify!(allow_url_fopen)
19097        )
19098    );
19099    assert_eq!(
19100        unsafe {
19101            &(*(::std::ptr::null::<_php_core_globals>())).enable_post_data_reading as *const _
19102                as usize
19103        },
19104        516usize,
19105        concat!(
19106            "Offset of field: ",
19107            stringify!(_php_core_globals),
19108            "::",
19109            stringify!(enable_post_data_reading)
19110        )
19111    );
19112    assert_eq!(
19113        unsafe {
19114            &(*(::std::ptr::null::<_php_core_globals>())).report_zend_debug as *const _ as usize
19115        },
19116        517usize,
19117        concat!(
19118            "Offset of field: ",
19119            stringify!(_php_core_globals),
19120            "::",
19121            stringify!(report_zend_debug)
19122        )
19123    );
19124    assert_eq!(
19125        unsafe {
19126            &(*(::std::ptr::null::<_php_core_globals>())).last_error_type as *const _ as usize
19127        },
19128        520usize,
19129        concat!(
19130            "Offset of field: ",
19131            stringify!(_php_core_globals),
19132            "::",
19133            stringify!(last_error_type)
19134        )
19135    );
19136    assert_eq!(
19137        unsafe {
19138            &(*(::std::ptr::null::<_php_core_globals>())).last_error_message as *const _ as usize
19139        },
19140        528usize,
19141        concat!(
19142            "Offset of field: ",
19143            stringify!(_php_core_globals),
19144            "::",
19145            stringify!(last_error_message)
19146        )
19147    );
19148    assert_eq!(
19149        unsafe {
19150            &(*(::std::ptr::null::<_php_core_globals>())).last_error_file as *const _ as usize
19151        },
19152        536usize,
19153        concat!(
19154            "Offset of field: ",
19155            stringify!(_php_core_globals),
19156            "::",
19157            stringify!(last_error_file)
19158        )
19159    );
19160    assert_eq!(
19161        unsafe {
19162            &(*(::std::ptr::null::<_php_core_globals>())).last_error_lineno as *const _ as usize
19163        },
19164        544usize,
19165        concat!(
19166            "Offset of field: ",
19167            stringify!(_php_core_globals),
19168            "::",
19169            stringify!(last_error_lineno)
19170        )
19171    );
19172    assert_eq!(
19173        unsafe {
19174            &(*(::std::ptr::null::<_php_core_globals>())).php_sys_temp_dir as *const _ as usize
19175        },
19176        552usize,
19177        concat!(
19178            "Offset of field: ",
19179            stringify!(_php_core_globals),
19180            "::",
19181            stringify!(php_sys_temp_dir)
19182        )
19183    );
19184    assert_eq!(
19185        unsafe {
19186            &(*(::std::ptr::null::<_php_core_globals>())).disable_functions as *const _ as usize
19187        },
19188        560usize,
19189        concat!(
19190            "Offset of field: ",
19191            stringify!(_php_core_globals),
19192            "::",
19193            stringify!(disable_functions)
19194        )
19195    );
19196    assert_eq!(
19197        unsafe {
19198            &(*(::std::ptr::null::<_php_core_globals>())).disable_classes as *const _ as usize
19199        },
19200        568usize,
19201        concat!(
19202            "Offset of field: ",
19203            stringify!(_php_core_globals),
19204            "::",
19205            stringify!(disable_classes)
19206        )
19207    );
19208    assert_eq!(
19209        unsafe {
19210            &(*(::std::ptr::null::<_php_core_globals>())).allow_url_include as *const _ as usize
19211        },
19212        576usize,
19213        concat!(
19214            "Offset of field: ",
19215            stringify!(_php_core_globals),
19216            "::",
19217            stringify!(allow_url_include)
19218        )
19219    );
19220    assert_eq!(
19221        unsafe {
19222            &(*(::std::ptr::null::<_php_core_globals>())).max_input_nesting_level as *const _
19223                as usize
19224        },
19225        584usize,
19226        concat!(
19227            "Offset of field: ",
19228            stringify!(_php_core_globals),
19229            "::",
19230            stringify!(max_input_nesting_level)
19231        )
19232    );
19233    assert_eq!(
19234        unsafe {
19235            &(*(::std::ptr::null::<_php_core_globals>())).max_input_vars as *const _ as usize
19236        },
19237        592usize,
19238        concat!(
19239            "Offset of field: ",
19240            stringify!(_php_core_globals),
19241            "::",
19242            stringify!(max_input_vars)
19243        )
19244    );
19245    assert_eq!(
19246        unsafe {
19247            &(*(::std::ptr::null::<_php_core_globals>())).in_user_include as *const _ as usize
19248        },
19249        600usize,
19250        concat!(
19251            "Offset of field: ",
19252            stringify!(_php_core_globals),
19253            "::",
19254            stringify!(in_user_include)
19255        )
19256    );
19257    assert_eq!(
19258        unsafe {
19259            &(*(::std::ptr::null::<_php_core_globals>())).user_ini_filename as *const _ as usize
19260        },
19261        608usize,
19262        concat!(
19263            "Offset of field: ",
19264            stringify!(_php_core_globals),
19265            "::",
19266            stringify!(user_ini_filename)
19267        )
19268    );
19269    assert_eq!(
19270        unsafe {
19271            &(*(::std::ptr::null::<_php_core_globals>())).user_ini_cache_ttl as *const _ as usize
19272        },
19273        616usize,
19274        concat!(
19275            "Offset of field: ",
19276            stringify!(_php_core_globals),
19277            "::",
19278            stringify!(user_ini_cache_ttl)
19279        )
19280    );
19281    assert_eq!(
19282        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).request_order as *const _ as usize },
19283        624usize,
19284        concat!(
19285            "Offset of field: ",
19286            stringify!(_php_core_globals),
19287            "::",
19288            stringify!(request_order)
19289        )
19290    );
19291    assert_eq!(
19292        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).mail_x_header as *const _ as usize },
19293        632usize,
19294        concat!(
19295            "Offset of field: ",
19296            stringify!(_php_core_globals),
19297            "::",
19298            stringify!(mail_x_header)
19299        )
19300    );
19301    assert_eq!(
19302        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).mail_log as *const _ as usize },
19303        640usize,
19304        concat!(
19305            "Offset of field: ",
19306            stringify!(_php_core_globals),
19307            "::",
19308            stringify!(mail_log)
19309        )
19310    );
19311    assert_eq!(
19312        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).in_error_log as *const _ as usize },
19313        648usize,
19314        concat!(
19315            "Offset of field: ",
19316            stringify!(_php_core_globals),
19317            "::",
19318            stringify!(in_error_log)
19319        )
19320    );
19321}
19322extern "C" {
19323    pub static mut core_globals: _php_core_globals;
19324}
19325#[repr(C)]
19326#[derive(Debug, Copy, Clone)]
19327pub struct _arg_separators {
19328    pub output: *mut ::std::os::raw::c_char,
19329    pub input: *mut ::std::os::raw::c_char,
19330}
19331#[test]
19332fn bindgen_test_layout__arg_separators() {
19333    assert_eq!(
19334        ::std::mem::size_of::<_arg_separators>(),
19335        16usize,
19336        concat!("Size of: ", stringify!(_arg_separators))
19337    );
19338    assert_eq!(
19339        ::std::mem::align_of::<_arg_separators>(),
19340        8usize,
19341        concat!("Alignment of ", stringify!(_arg_separators))
19342    );
19343    assert_eq!(
19344        unsafe { &(*(::std::ptr::null::<_arg_separators>())).output as *const _ as usize },
19345        0usize,
19346        concat!(
19347            "Offset of field: ",
19348            stringify!(_arg_separators),
19349            "::",
19350            stringify!(output)
19351        )
19352    );
19353    assert_eq!(
19354        unsafe { &(*(::std::ptr::null::<_arg_separators>())).input as *const _ as usize },
19355        8usize,
19356        concat!(
19357            "Offset of field: ",
19358            stringify!(_arg_separators),
19359            "::",
19360            stringify!(input)
19361        )
19362    );
19363}
19364pub type arg_separators = _arg_separators;
19365#[repr(C)]
19366#[derive(Debug, Copy, Clone)]
19367pub struct _zend_ini_entry_def {
19368    pub name: *const ::std::os::raw::c_char,
19369    pub on_modify: ::std::option::Option<
19370        unsafe extern "C" fn(
19371            entry: *mut zend_ini_entry,
19372            new_value: *mut zend_string,
19373            mh_arg1: *mut ::std::os::raw::c_void,
19374            mh_arg2: *mut ::std::os::raw::c_void,
19375            mh_arg3: *mut ::std::os::raw::c_void,
19376            stage: ::std::os::raw::c_int,
19377        ) -> ::std::os::raw::c_int,
19378    >,
19379    pub mh_arg1: *mut ::std::os::raw::c_void,
19380    pub mh_arg2: *mut ::std::os::raw::c_void,
19381    pub mh_arg3: *mut ::std::os::raw::c_void,
19382    pub value: *const ::std::os::raw::c_char,
19383    pub displayer: ::std::option::Option<
19384        unsafe extern "C" fn(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int),
19385    >,
19386    pub modifiable: ::std::os::raw::c_int,
19387    pub name_length: u32,
19388    pub value_length: u32,
19389}
19390#[test]
19391fn bindgen_test_layout__zend_ini_entry_def() {
19392    assert_eq!(
19393        ::std::mem::size_of::<_zend_ini_entry_def>(),
19394        72usize,
19395        concat!("Size of: ", stringify!(_zend_ini_entry_def))
19396    );
19397    assert_eq!(
19398        ::std::mem::align_of::<_zend_ini_entry_def>(),
19399        8usize,
19400        concat!("Alignment of ", stringify!(_zend_ini_entry_def))
19401    );
19402    assert_eq!(
19403        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).name as *const _ as usize },
19404        0usize,
19405        concat!(
19406            "Offset of field: ",
19407            stringify!(_zend_ini_entry_def),
19408            "::",
19409            stringify!(name)
19410        )
19411    );
19412    assert_eq!(
19413        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).on_modify as *const _ as usize },
19414        8usize,
19415        concat!(
19416            "Offset of field: ",
19417            stringify!(_zend_ini_entry_def),
19418            "::",
19419            stringify!(on_modify)
19420        )
19421    );
19422    assert_eq!(
19423        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).mh_arg1 as *const _ as usize },
19424        16usize,
19425        concat!(
19426            "Offset of field: ",
19427            stringify!(_zend_ini_entry_def),
19428            "::",
19429            stringify!(mh_arg1)
19430        )
19431    );
19432    assert_eq!(
19433        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).mh_arg2 as *const _ as usize },
19434        24usize,
19435        concat!(
19436            "Offset of field: ",
19437            stringify!(_zend_ini_entry_def),
19438            "::",
19439            stringify!(mh_arg2)
19440        )
19441    );
19442    assert_eq!(
19443        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).mh_arg3 as *const _ as usize },
19444        32usize,
19445        concat!(
19446            "Offset of field: ",
19447            stringify!(_zend_ini_entry_def),
19448            "::",
19449            stringify!(mh_arg3)
19450        )
19451    );
19452    assert_eq!(
19453        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).value as *const _ as usize },
19454        40usize,
19455        concat!(
19456            "Offset of field: ",
19457            stringify!(_zend_ini_entry_def),
19458            "::",
19459            stringify!(value)
19460        )
19461    );
19462    assert_eq!(
19463        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).displayer as *const _ as usize },
19464        48usize,
19465        concat!(
19466            "Offset of field: ",
19467            stringify!(_zend_ini_entry_def),
19468            "::",
19469            stringify!(displayer)
19470        )
19471    );
19472    assert_eq!(
19473        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).modifiable as *const _ as usize },
19474        56usize,
19475        concat!(
19476            "Offset of field: ",
19477            stringify!(_zend_ini_entry_def),
19478            "::",
19479            stringify!(modifiable)
19480        )
19481    );
19482    assert_eq!(
19483        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).name_length as *const _ as usize },
19484        60usize,
19485        concat!(
19486            "Offset of field: ",
19487            stringify!(_zend_ini_entry_def),
19488            "::",
19489            stringify!(name_length)
19490        )
19491    );
19492    assert_eq!(
19493        unsafe {
19494            &(*(::std::ptr::null::<_zend_ini_entry_def>())).value_length as *const _ as usize
19495        },
19496        64usize,
19497        concat!(
19498            "Offset of field: ",
19499            stringify!(_zend_ini_entry_def),
19500            "::",
19501            stringify!(value_length)
19502        )
19503    );
19504}
19505pub type zend_ini_entry_def = _zend_ini_entry_def;
19506#[repr(C)]
19507#[derive(Debug, Copy, Clone)]
19508pub struct _zend_ini_entry {
19509    pub name: *mut zend_string,
19510    pub on_modify: ::std::option::Option<
19511        unsafe extern "C" fn(
19512            entry: *mut zend_ini_entry,
19513            new_value: *mut zend_string,
19514            mh_arg1: *mut ::std::os::raw::c_void,
19515            mh_arg2: *mut ::std::os::raw::c_void,
19516            mh_arg3: *mut ::std::os::raw::c_void,
19517            stage: ::std::os::raw::c_int,
19518        ) -> ::std::os::raw::c_int,
19519    >,
19520    pub mh_arg1: *mut ::std::os::raw::c_void,
19521    pub mh_arg2: *mut ::std::os::raw::c_void,
19522    pub mh_arg3: *mut ::std::os::raw::c_void,
19523    pub value: *mut zend_string,
19524    pub orig_value: *mut zend_string,
19525    pub displayer: ::std::option::Option<
19526        unsafe extern "C" fn(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int),
19527    >,
19528    pub modifiable: ::std::os::raw::c_int,
19529    pub orig_modifiable: ::std::os::raw::c_int,
19530    pub modified: ::std::os::raw::c_int,
19531    pub module_number: ::std::os::raw::c_int,
19532}
19533#[test]
19534fn bindgen_test_layout__zend_ini_entry() {
19535    assert_eq!(
19536        ::std::mem::size_of::<_zend_ini_entry>(),
19537        80usize,
19538        concat!("Size of: ", stringify!(_zend_ini_entry))
19539    );
19540    assert_eq!(
19541        ::std::mem::align_of::<_zend_ini_entry>(),
19542        8usize,
19543        concat!("Alignment of ", stringify!(_zend_ini_entry))
19544    );
19545    assert_eq!(
19546        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).name as *const _ as usize },
19547        0usize,
19548        concat!(
19549            "Offset of field: ",
19550            stringify!(_zend_ini_entry),
19551            "::",
19552            stringify!(name)
19553        )
19554    );
19555    assert_eq!(
19556        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).on_modify as *const _ as usize },
19557        8usize,
19558        concat!(
19559            "Offset of field: ",
19560            stringify!(_zend_ini_entry),
19561            "::",
19562            stringify!(on_modify)
19563        )
19564    );
19565    assert_eq!(
19566        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).mh_arg1 as *const _ as usize },
19567        16usize,
19568        concat!(
19569            "Offset of field: ",
19570            stringify!(_zend_ini_entry),
19571            "::",
19572            stringify!(mh_arg1)
19573        )
19574    );
19575    assert_eq!(
19576        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).mh_arg2 as *const _ as usize },
19577        24usize,
19578        concat!(
19579            "Offset of field: ",
19580            stringify!(_zend_ini_entry),
19581            "::",
19582            stringify!(mh_arg2)
19583        )
19584    );
19585    assert_eq!(
19586        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).mh_arg3 as *const _ as usize },
19587        32usize,
19588        concat!(
19589            "Offset of field: ",
19590            stringify!(_zend_ini_entry),
19591            "::",
19592            stringify!(mh_arg3)
19593        )
19594    );
19595    assert_eq!(
19596        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).value as *const _ as usize },
19597        40usize,
19598        concat!(
19599            "Offset of field: ",
19600            stringify!(_zend_ini_entry),
19601            "::",
19602            stringify!(value)
19603        )
19604    );
19605    assert_eq!(
19606        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).orig_value as *const _ as usize },
19607        48usize,
19608        concat!(
19609            "Offset of field: ",
19610            stringify!(_zend_ini_entry),
19611            "::",
19612            stringify!(orig_value)
19613        )
19614    );
19615    assert_eq!(
19616        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).displayer as *const _ as usize },
19617        56usize,
19618        concat!(
19619            "Offset of field: ",
19620            stringify!(_zend_ini_entry),
19621            "::",
19622            stringify!(displayer)
19623        )
19624    );
19625    assert_eq!(
19626        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).modifiable as *const _ as usize },
19627        64usize,
19628        concat!(
19629            "Offset of field: ",
19630            stringify!(_zend_ini_entry),
19631            "::",
19632            stringify!(modifiable)
19633        )
19634    );
19635    assert_eq!(
19636        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).orig_modifiable as *const _ as usize },
19637        68usize,
19638        concat!(
19639            "Offset of field: ",
19640            stringify!(_zend_ini_entry),
19641            "::",
19642            stringify!(orig_modifiable)
19643        )
19644    );
19645    assert_eq!(
19646        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).modified as *const _ as usize },
19647        72usize,
19648        concat!(
19649            "Offset of field: ",
19650            stringify!(_zend_ini_entry),
19651            "::",
19652            stringify!(modified)
19653        )
19654    );
19655    assert_eq!(
19656        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).module_number as *const _ as usize },
19657        76usize,
19658        concat!(
19659            "Offset of field: ",
19660            stringify!(_zend_ini_entry),
19661            "::",
19662            stringify!(module_number)
19663        )
19664    );
19665}
19666extern "C" {
19667    pub fn zend_ini_startup() -> ::std::os::raw::c_int;
19668}
19669extern "C" {
19670    pub fn zend_ini_shutdown() -> ::std::os::raw::c_int;
19671}
19672extern "C" {
19673    pub fn zend_ini_global_shutdown() -> ::std::os::raw::c_int;
19674}
19675extern "C" {
19676    pub fn zend_ini_deactivate() -> ::std::os::raw::c_int;
19677}
19678extern "C" {
19679    pub fn zend_ini_dtor(ini_directives: *mut HashTable);
19680}
19681extern "C" {
19682    pub fn zend_copy_ini_directives() -> ::std::os::raw::c_int;
19683}
19684extern "C" {
19685    pub fn zend_ini_sort_entries();
19686}
19687extern "C" {
19688    pub fn zend_register_ini_entries(
19689        ini_entry: *const zend_ini_entry_def,
19690        module_number: ::std::os::raw::c_int,
19691    ) -> ::std::os::raw::c_int;
19692}
19693extern "C" {
19694    pub fn zend_unregister_ini_entries(module_number: ::std::os::raw::c_int);
19695}
19696extern "C" {
19697    pub fn zend_ini_refresh_caches(stage: ::std::os::raw::c_int);
19698}
19699extern "C" {
19700    pub fn zend_alter_ini_entry(
19701        name: *mut zend_string,
19702        new_value: *mut zend_string,
19703        modify_type: ::std::os::raw::c_int,
19704        stage: ::std::os::raw::c_int,
19705    ) -> ::std::os::raw::c_int;
19706}
19707extern "C" {
19708    pub fn zend_alter_ini_entry_ex(
19709        name: *mut zend_string,
19710        new_value: *mut zend_string,
19711        modify_type: ::std::os::raw::c_int,
19712        stage: ::std::os::raw::c_int,
19713        force_change: ::std::os::raw::c_int,
19714    ) -> ::std::os::raw::c_int;
19715}
19716extern "C" {
19717    pub fn zend_alter_ini_entry_chars(
19718        name: *mut zend_string,
19719        value: *const ::std::os::raw::c_char,
19720        value_length: size_t,
19721        modify_type: ::std::os::raw::c_int,
19722        stage: ::std::os::raw::c_int,
19723    ) -> ::std::os::raw::c_int;
19724}
19725extern "C" {
19726    pub fn zend_alter_ini_entry_chars_ex(
19727        name: *mut zend_string,
19728        value: *const ::std::os::raw::c_char,
19729        value_length: size_t,
19730        modify_type: ::std::os::raw::c_int,
19731        stage: ::std::os::raw::c_int,
19732        force_change: ::std::os::raw::c_int,
19733    ) -> ::std::os::raw::c_int;
19734}
19735extern "C" {
19736    pub fn zend_restore_ini_entry(
19737        name: *mut zend_string,
19738        stage: ::std::os::raw::c_int,
19739    ) -> ::std::os::raw::c_int;
19740}
19741extern "C" {
19742    pub fn zend_ini_long(
19743        name: *mut ::std::os::raw::c_char,
19744        name_length: u32,
19745        orig: ::std::os::raw::c_int,
19746    ) -> zend_long;
19747}
19748extern "C" {
19749    pub fn zend_ini_double(
19750        name: *mut ::std::os::raw::c_char,
19751        name_length: u32,
19752        orig: ::std::os::raw::c_int,
19753    ) -> f64;
19754}
19755extern "C" {
19756    pub fn zend_ini_string(
19757        name: *mut ::std::os::raw::c_char,
19758        name_length: u32,
19759        orig: ::std::os::raw::c_int,
19760    ) -> *mut ::std::os::raw::c_char;
19761}
19762extern "C" {
19763    pub fn zend_ini_string_ex(
19764        name: *mut ::std::os::raw::c_char,
19765        name_length: u32,
19766        orig: ::std::os::raw::c_int,
19767        exists: *mut zend_bool,
19768    ) -> *mut ::std::os::raw::c_char;
19769}
19770extern "C" {
19771    pub fn zend_ini_register_displayer(
19772        name: *mut ::std::os::raw::c_char,
19773        name_length: u32,
19774        displayer: ::std::option::Option<
19775            unsafe extern "C" fn(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int),
19776        >,
19777    ) -> ::std::os::raw::c_int;
19778}
19779extern "C" {
19780    pub fn zend_ini_boolean_displayer_cb(
19781        ini_entry: *mut zend_ini_entry,
19782        type_: ::std::os::raw::c_int,
19783    );
19784}
19785extern "C" {
19786    pub fn zend_ini_color_displayer_cb(
19787        ini_entry: *mut zend_ini_entry,
19788        type_: ::std::os::raw::c_int,
19789    );
19790}
19791pub type zend_ini_parser_cb_t = ::std::option::Option<
19792    unsafe extern "C" fn(
19793        arg1: *mut zval,
19794        arg2: *mut zval,
19795        arg3: *mut zval,
19796        callback_type: ::std::os::raw::c_int,
19797        arg: *mut ::std::os::raw::c_void,
19798    ),
19799>;
19800extern "C" {
19801    pub fn zend_parse_ini_file(
19802        fh: *mut zend_file_handle,
19803        unbuffered_errors: zend_bool,
19804        scanner_mode: ::std::os::raw::c_int,
19805        ini_parser_cb: zend_ini_parser_cb_t,
19806        arg: *mut ::std::os::raw::c_void,
19807    ) -> ::std::os::raw::c_int;
19808}
19809extern "C" {
19810    pub fn zend_parse_ini_string(
19811        str_: *mut ::std::os::raw::c_char,
19812        unbuffered_errors: zend_bool,
19813        scanner_mode: ::std::os::raw::c_int,
19814        ini_parser_cb: zend_ini_parser_cb_t,
19815        arg: *mut ::std::os::raw::c_void,
19816    ) -> ::std::os::raw::c_int;
19817}
19818#[repr(C)]
19819#[derive(Debug, Copy, Clone)]
19820pub struct _zend_ini_parser_param {
19821    pub ini_parser_cb: zend_ini_parser_cb_t,
19822    pub arg: *mut ::std::os::raw::c_void,
19823}
19824#[test]
19825fn bindgen_test_layout__zend_ini_parser_param() {
19826    assert_eq!(
19827        ::std::mem::size_of::<_zend_ini_parser_param>(),
19828        16usize,
19829        concat!("Size of: ", stringify!(_zend_ini_parser_param))
19830    );
19831    assert_eq!(
19832        ::std::mem::align_of::<_zend_ini_parser_param>(),
19833        8usize,
19834        concat!("Alignment of ", stringify!(_zend_ini_parser_param))
19835    );
19836    assert_eq!(
19837        unsafe {
19838            &(*(::std::ptr::null::<_zend_ini_parser_param>())).ini_parser_cb as *const _ as usize
19839        },
19840        0usize,
19841        concat!(
19842            "Offset of field: ",
19843            stringify!(_zend_ini_parser_param),
19844            "::",
19845            stringify!(ini_parser_cb)
19846        )
19847    );
19848    assert_eq!(
19849        unsafe { &(*(::std::ptr::null::<_zend_ini_parser_param>())).arg as *const _ as usize },
19850        8usize,
19851        concat!(
19852            "Offset of field: ",
19853            stringify!(_zend_ini_parser_param),
19854            "::",
19855            stringify!(arg)
19856        )
19857    );
19858}
19859pub type zend_ini_parser_param = _zend_ini_parser_param;
19860extern "C" {
19861    pub fn php_init_config() -> ::std::os::raw::c_int;
19862}
19863extern "C" {
19864    pub fn php_shutdown_config() -> ::std::os::raw::c_int;
19865}
19866extern "C" {
19867    pub fn php_ini_register_extensions();
19868}
19869extern "C" {
19870    pub fn php_parse_user_ini_file(
19871        dirname: *const ::std::os::raw::c_char,
19872        ini_filename: *mut ::std::os::raw::c_char,
19873        target_hash: *mut HashTable,
19874    ) -> ::std::os::raw::c_int;
19875}
19876extern "C" {
19877    pub fn php_ini_activate_config(
19878        source_hash: *mut HashTable,
19879        modify_type: ::std::os::raw::c_int,
19880        stage: ::std::os::raw::c_int,
19881    );
19882}
19883extern "C" {
19884    pub fn php_ini_has_per_dir_config() -> ::std::os::raw::c_int;
19885}
19886extern "C" {
19887    pub fn php_ini_has_per_host_config() -> ::std::os::raw::c_int;
19888}
19889extern "C" {
19890    pub fn php_ini_activate_per_dir_config(path: *mut ::std::os::raw::c_char, path_len: size_t);
19891}
19892extern "C" {
19893    pub fn php_ini_activate_per_host_config(host: *const ::std::os::raw::c_char, host_len: size_t);
19894}
19895extern "C" {
19896    pub fn php_ini_get_configuration_hash() -> *mut HashTable;
19897}
19898extern "C" {
19899    pub fn php_fopen_primary_script(file_handle: *mut zend_file_handle) -> ::std::os::raw::c_int;
19900}
19901extern "C" {
19902    pub fn php_check_open_basedir(path: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
19903}
19904extern "C" {
19905    pub fn php_check_open_basedir_ex(
19906        path: *const ::std::os::raw::c_char,
19907        warn: ::std::os::raw::c_int,
19908    ) -> ::std::os::raw::c_int;
19909}
19910extern "C" {
19911    pub fn php_check_specific_open_basedir(
19912        basedir: *const ::std::os::raw::c_char,
19913        path: *const ::std::os::raw::c_char,
19914    ) -> ::std::os::raw::c_int;
19915}
19916extern "C" {
19917    pub fn php_check_safe_mode_include_dir(
19918        path: *const ::std::os::raw::c_char,
19919    ) -> ::std::os::raw::c_int;
19920}
19921extern "C" {
19922    pub fn php_resolve_path(
19923        filename: *const ::std::os::raw::c_char,
19924        filename_len: ::std::os::raw::c_int,
19925        path: *const ::std::os::raw::c_char,
19926    ) -> *mut zend_string;
19927}
19928extern "C" {
19929    pub fn php_fopen_with_path(
19930        filename: *const ::std::os::raw::c_char,
19931        mode: *const ::std::os::raw::c_char,
19932        path: *const ::std::os::raw::c_char,
19933        opened_path: *mut *mut zend_string,
19934    ) -> *mut FILE;
19935}
19936extern "C" {
19937    pub fn php_strip_url_passwd(path: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
19938}
19939#[repr(C)]
19940#[derive(Debug, Copy, Clone)]
19941pub struct _cwd_state {
19942    pub cwd: *mut ::std::os::raw::c_char,
19943    pub cwd_length: ::std::os::raw::c_int,
19944}
19945#[test]
19946fn bindgen_test_layout__cwd_state() {
19947    assert_eq!(
19948        ::std::mem::size_of::<_cwd_state>(),
19949        16usize,
19950        concat!("Size of: ", stringify!(_cwd_state))
19951    );
19952    assert_eq!(
19953        ::std::mem::align_of::<_cwd_state>(),
19954        8usize,
19955        concat!("Alignment of ", stringify!(_cwd_state))
19956    );
19957    assert_eq!(
19958        unsafe { &(*(::std::ptr::null::<_cwd_state>())).cwd as *const _ as usize },
19959        0usize,
19960        concat!(
19961            "Offset of field: ",
19962            stringify!(_cwd_state),
19963            "::",
19964            stringify!(cwd)
19965        )
19966    );
19967    assert_eq!(
19968        unsafe { &(*(::std::ptr::null::<_cwd_state>())).cwd_length as *const _ as usize },
19969        8usize,
19970        concat!(
19971            "Offset of field: ",
19972            stringify!(_cwd_state),
19973            "::",
19974            stringify!(cwd_length)
19975        )
19976    );
19977}
19978pub type cwd_state = _cwd_state;
19979#[repr(C)]
19980#[derive(Debug, Copy, Clone)]
19981pub struct _realpath_cache_bucket {
19982    pub key: zend_ulong,
19983    pub path: *mut ::std::os::raw::c_char,
19984    pub realpath: *mut ::std::os::raw::c_char,
19985    pub next: *mut _realpath_cache_bucket,
19986    pub expires: time_t,
19987    pub path_len: u16,
19988    pub realpath_len: u16,
19989    pub _bitfield_align_1: [u8; 0],
19990    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
19991    pub __bindgen_padding_0: [u8; 3usize],
19992}
19993#[test]
19994fn bindgen_test_layout__realpath_cache_bucket() {
19995    assert_eq!(
19996        ::std::mem::size_of::<_realpath_cache_bucket>(),
19997        48usize,
19998        concat!("Size of: ", stringify!(_realpath_cache_bucket))
19999    );
20000    assert_eq!(
20001        ::std::mem::align_of::<_realpath_cache_bucket>(),
20002        8usize,
20003        concat!("Alignment of ", stringify!(_realpath_cache_bucket))
20004    );
20005    assert_eq!(
20006        unsafe { &(*(::std::ptr::null::<_realpath_cache_bucket>())).key as *const _ as usize },
20007        0usize,
20008        concat!(
20009            "Offset of field: ",
20010            stringify!(_realpath_cache_bucket),
20011            "::",
20012            stringify!(key)
20013        )
20014    );
20015    assert_eq!(
20016        unsafe { &(*(::std::ptr::null::<_realpath_cache_bucket>())).path as *const _ as usize },
20017        8usize,
20018        concat!(
20019            "Offset of field: ",
20020            stringify!(_realpath_cache_bucket),
20021            "::",
20022            stringify!(path)
20023        )
20024    );
20025    assert_eq!(
20026        unsafe { &(*(::std::ptr::null::<_realpath_cache_bucket>())).realpath as *const _ as usize },
20027        16usize,
20028        concat!(
20029            "Offset of field: ",
20030            stringify!(_realpath_cache_bucket),
20031            "::",
20032            stringify!(realpath)
20033        )
20034    );
20035    assert_eq!(
20036        unsafe { &(*(::std::ptr::null::<_realpath_cache_bucket>())).next as *const _ as usize },
20037        24usize,
20038        concat!(
20039            "Offset of field: ",
20040            stringify!(_realpath_cache_bucket),
20041            "::",
20042            stringify!(next)
20043        )
20044    );
20045    assert_eq!(
20046        unsafe { &(*(::std::ptr::null::<_realpath_cache_bucket>())).expires as *const _ as usize },
20047        32usize,
20048        concat!(
20049            "Offset of field: ",
20050            stringify!(_realpath_cache_bucket),
20051            "::",
20052            stringify!(expires)
20053        )
20054    );
20055    assert_eq!(
20056        unsafe { &(*(::std::ptr::null::<_realpath_cache_bucket>())).path_len as *const _ as usize },
20057        40usize,
20058        concat!(
20059            "Offset of field: ",
20060            stringify!(_realpath_cache_bucket),
20061            "::",
20062            stringify!(path_len)
20063        )
20064    );
20065    assert_eq!(
20066        unsafe {
20067            &(*(::std::ptr::null::<_realpath_cache_bucket>())).realpath_len as *const _ as usize
20068        },
20069        42usize,
20070        concat!(
20071            "Offset of field: ",
20072            stringify!(_realpath_cache_bucket),
20073            "::",
20074            stringify!(realpath_len)
20075        )
20076    );
20077}
20078impl _realpath_cache_bucket {
20079    #[inline]
20080    pub fn is_dir(&self) -> u8 {
20081        unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) }
20082    }
20083    #[inline]
20084    pub fn set_is_dir(&mut self, val: u8) {
20085        unsafe {
20086            let val: u8 = ::std::mem::transmute(val);
20087            self._bitfield_1.set(0usize, 1u8, val as u64)
20088        }
20089    }
20090    #[inline]
20091    pub fn new_bitfield_1(is_dir: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
20092        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
20093        __bindgen_bitfield_unit.set(0usize, 1u8, {
20094            let is_dir: u8 = unsafe { ::std::mem::transmute(is_dir) };
20095            is_dir as u64
20096        });
20097        __bindgen_bitfield_unit
20098    }
20099}
20100pub type realpath_cache_bucket = _realpath_cache_bucket;
20101#[repr(C)]
20102#[derive(Copy, Clone)]
20103pub struct _virtual_cwd_globals {
20104    pub cwd: cwd_state,
20105    pub realpath_cache_size: zend_long,
20106    pub realpath_cache_size_limit: zend_long,
20107    pub realpath_cache_ttl: zend_long,
20108    pub realpath_cache: [*mut realpath_cache_bucket; 1024usize],
20109}
20110#[test]
20111fn bindgen_test_layout__virtual_cwd_globals() {
20112    assert_eq!(
20113        ::std::mem::size_of::<_virtual_cwd_globals>(),
20114        8232usize,
20115        concat!("Size of: ", stringify!(_virtual_cwd_globals))
20116    );
20117    assert_eq!(
20118        ::std::mem::align_of::<_virtual_cwd_globals>(),
20119        8usize,
20120        concat!("Alignment of ", stringify!(_virtual_cwd_globals))
20121    );
20122    assert_eq!(
20123        unsafe { &(*(::std::ptr::null::<_virtual_cwd_globals>())).cwd as *const _ as usize },
20124        0usize,
20125        concat!(
20126            "Offset of field: ",
20127            stringify!(_virtual_cwd_globals),
20128            "::",
20129            stringify!(cwd)
20130        )
20131    );
20132    assert_eq!(
20133        unsafe {
20134            &(*(::std::ptr::null::<_virtual_cwd_globals>())).realpath_cache_size as *const _
20135                as usize
20136        },
20137        16usize,
20138        concat!(
20139            "Offset of field: ",
20140            stringify!(_virtual_cwd_globals),
20141            "::",
20142            stringify!(realpath_cache_size)
20143        )
20144    );
20145    assert_eq!(
20146        unsafe {
20147            &(*(::std::ptr::null::<_virtual_cwd_globals>())).realpath_cache_size_limit as *const _
20148                as usize
20149        },
20150        24usize,
20151        concat!(
20152            "Offset of field: ",
20153            stringify!(_virtual_cwd_globals),
20154            "::",
20155            stringify!(realpath_cache_size_limit)
20156        )
20157    );
20158    assert_eq!(
20159        unsafe {
20160            &(*(::std::ptr::null::<_virtual_cwd_globals>())).realpath_cache_ttl as *const _ as usize
20161        },
20162        32usize,
20163        concat!(
20164            "Offset of field: ",
20165            stringify!(_virtual_cwd_globals),
20166            "::",
20167            stringify!(realpath_cache_ttl)
20168        )
20169    );
20170    assert_eq!(
20171        unsafe {
20172            &(*(::std::ptr::null::<_virtual_cwd_globals>())).realpath_cache as *const _ as usize
20173        },
20174        40usize,
20175        concat!(
20176            "Offset of field: ",
20177            stringify!(_virtual_cwd_globals),
20178            "::",
20179            stringify!(realpath_cache)
20180        )
20181    );
20182}
20183pub type virtual_cwd_globals = _virtual_cwd_globals;
20184extern "C" {
20185    pub static mut cwd_globals: virtual_cwd_globals;
20186}
20187#[repr(C)]
20188#[derive(Copy, Clone)]
20189pub struct _zend_constant {
20190    pub value: zval,
20191    pub name: *mut zend_string,
20192    pub flags: ::std::os::raw::c_int,
20193    pub module_number: ::std::os::raw::c_int,
20194}
20195#[test]
20196fn bindgen_test_layout__zend_constant() {
20197    assert_eq!(
20198        ::std::mem::size_of::<_zend_constant>(),
20199        32usize,
20200        concat!("Size of: ", stringify!(_zend_constant))
20201    );
20202    assert_eq!(
20203        ::std::mem::align_of::<_zend_constant>(),
20204        8usize,
20205        concat!("Alignment of ", stringify!(_zend_constant))
20206    );
20207    assert_eq!(
20208        unsafe { &(*(::std::ptr::null::<_zend_constant>())).value as *const _ as usize },
20209        0usize,
20210        concat!(
20211            "Offset of field: ",
20212            stringify!(_zend_constant),
20213            "::",
20214            stringify!(value)
20215        )
20216    );
20217    assert_eq!(
20218        unsafe { &(*(::std::ptr::null::<_zend_constant>())).name as *const _ as usize },
20219        16usize,
20220        concat!(
20221            "Offset of field: ",
20222            stringify!(_zend_constant),
20223            "::",
20224            stringify!(name)
20225        )
20226    );
20227    assert_eq!(
20228        unsafe { &(*(::std::ptr::null::<_zend_constant>())).flags as *const _ as usize },
20229        24usize,
20230        concat!(
20231            "Offset of field: ",
20232            stringify!(_zend_constant),
20233            "::",
20234            stringify!(flags)
20235        )
20236    );
20237    assert_eq!(
20238        unsafe { &(*(::std::ptr::null::<_zend_constant>())).module_number as *const _ as usize },
20239        28usize,
20240        concat!(
20241            "Offset of field: ",
20242            stringify!(_zend_constant),
20243            "::",
20244            stringify!(module_number)
20245        )
20246    );
20247}
20248pub type zend_constant = _zend_constant;
20249extern "C" {
20250    pub fn zend_startup_constants() -> ::std::os::raw::c_int;
20251}
20252extern "C" {
20253    pub fn zend_shutdown_constants() -> ::std::os::raw::c_int;
20254}
20255extern "C" {
20256    pub fn zend_register_standard_constants();
20257}
20258extern "C" {
20259    pub fn zend_verify_const_access(
20260        c: *mut zend_class_constant,
20261        ce: *mut zend_class_entry,
20262    ) -> ::std::os::raw::c_int;
20263}
20264extern "C" {
20265    pub fn zend_get_constant(name: *mut zend_string) -> *mut zval;
20266}
20267extern "C" {
20268    pub fn zend_get_constant_str(
20269        name: *const ::std::os::raw::c_char,
20270        name_len: size_t,
20271    ) -> *mut zval;
20272}
20273extern "C" {
20274    pub fn zend_get_constant_ex(
20275        name: *mut zend_string,
20276        scope: *mut zend_class_entry,
20277        flags: u32,
20278    ) -> *mut zval;
20279}
20280extern "C" {
20281    pub fn zend_register_bool_constant(
20282        name: *const ::std::os::raw::c_char,
20283        name_len: size_t,
20284        bval: zend_bool,
20285        flags: ::std::os::raw::c_int,
20286        module_number: ::std::os::raw::c_int,
20287    );
20288}
20289extern "C" {
20290    pub fn zend_register_null_constant(
20291        name: *const ::std::os::raw::c_char,
20292        name_len: size_t,
20293        flags: ::std::os::raw::c_int,
20294        module_number: ::std::os::raw::c_int,
20295    );
20296}
20297extern "C" {
20298    pub fn zend_register_long_constant(
20299        name: *const ::std::os::raw::c_char,
20300        name_len: size_t,
20301        lval: zend_long,
20302        flags: ::std::os::raw::c_int,
20303        module_number: ::std::os::raw::c_int,
20304    );
20305}
20306extern "C" {
20307    pub fn zend_register_double_constant(
20308        name: *const ::std::os::raw::c_char,
20309        name_len: size_t,
20310        dval: f64,
20311        flags: ::std::os::raw::c_int,
20312        module_number: ::std::os::raw::c_int,
20313    );
20314}
20315extern "C" {
20316    pub fn zend_register_string_constant(
20317        name: *const ::std::os::raw::c_char,
20318        name_len: size_t,
20319        strval: *mut ::std::os::raw::c_char,
20320        flags: ::std::os::raw::c_int,
20321        module_number: ::std::os::raw::c_int,
20322    );
20323}
20324extern "C" {
20325    pub fn zend_register_stringl_constant(
20326        name: *const ::std::os::raw::c_char,
20327        name_len: size_t,
20328        strval: *mut ::std::os::raw::c_char,
20329        strlen: size_t,
20330        flags: ::std::os::raw::c_int,
20331        module_number: ::std::os::raw::c_int,
20332    );
20333}
20334extern "C" {
20335    pub fn zend_register_constant(c: *mut zend_constant) -> ::std::os::raw::c_int;
20336}
20337extern "C" {
20338    pub fn zend_copy_constants(target: *mut HashTable, sourc: *mut HashTable);
20339}
20340extern "C" {
20341    pub fn zend_quick_get_constant(key: *const zval, flags: u32) -> *mut zend_constant;
20342}
20343extern "C" {
20344    pub fn php_info_html_esc(string: *mut ::std::os::raw::c_char) -> *mut zend_string;
20345}
20346extern "C" {
20347    pub fn php_info_html_esc_write(
20348        string: *mut ::std::os::raw::c_char,
20349        str_len: ::std::os::raw::c_int,
20350    );
20351}
20352extern "C" {
20353    pub fn php_print_info_htmlhead();
20354}
20355extern "C" {
20356    pub fn php_print_info(flag: ::std::os::raw::c_int);
20357}
20358extern "C" {
20359    pub fn php_print_style();
20360}
20361extern "C" {
20362    pub fn php_info_print_style();
20363}
20364extern "C" {
20365    pub fn php_info_print_table_colspan_header(
20366        num_cols: ::std::os::raw::c_int,
20367        header: *mut ::std::os::raw::c_char,
20368    );
20369}
20370extern "C" {
20371    pub fn php_info_print_table_header(num_cols: ::std::os::raw::c_int, ...);
20372}
20373extern "C" {
20374    pub fn php_info_print_table_row(num_cols: ::std::os::raw::c_int, ...);
20375}
20376extern "C" {
20377    pub fn php_info_print_table_row_ex(
20378        num_cols: ::std::os::raw::c_int,
20379        arg1: *const ::std::os::raw::c_char,
20380        ...
20381    );
20382}
20383extern "C" {
20384    pub fn php_info_print_table_start();
20385}
20386extern "C" {
20387    pub fn php_info_print_table_end();
20388}
20389extern "C" {
20390    pub fn php_info_print_box_start(bg: ::std::os::raw::c_int);
20391}
20392extern "C" {
20393    pub fn php_info_print_box_end();
20394}
20395extern "C" {
20396    pub fn php_info_print_hr();
20397}
20398extern "C" {
20399    pub fn php_info_print_module(module: *mut zend_module_entry);
20400}
20401extern "C" {
20402    pub fn php_get_uname(mode: ::std::os::raw::c_char) -> *mut zend_string;
20403}
20404#[repr(C)]
20405#[derive(Debug, Copy, Clone)]
20406pub struct _zend_extension_version_info {
20407    pub zend_extension_api_no: ::std::os::raw::c_int,
20408    pub build_id: *mut ::std::os::raw::c_char,
20409}
20410#[test]
20411fn bindgen_test_layout__zend_extension_version_info() {
20412    assert_eq!(
20413        ::std::mem::size_of::<_zend_extension_version_info>(),
20414        16usize,
20415        concat!("Size of: ", stringify!(_zend_extension_version_info))
20416    );
20417    assert_eq!(
20418        ::std::mem::align_of::<_zend_extension_version_info>(),
20419        8usize,
20420        concat!("Alignment of ", stringify!(_zend_extension_version_info))
20421    );
20422    assert_eq!(
20423        unsafe {
20424            &(*(::std::ptr::null::<_zend_extension_version_info>())).zend_extension_api_no
20425                as *const _ as usize
20426        },
20427        0usize,
20428        concat!(
20429            "Offset of field: ",
20430            stringify!(_zend_extension_version_info),
20431            "::",
20432            stringify!(zend_extension_api_no)
20433        )
20434    );
20435    assert_eq!(
20436        unsafe {
20437            &(*(::std::ptr::null::<_zend_extension_version_info>())).build_id as *const _ as usize
20438        },
20439        8usize,
20440        concat!(
20441            "Offset of field: ",
20442            stringify!(_zend_extension_version_info),
20443            "::",
20444            stringify!(build_id)
20445        )
20446    );
20447}
20448pub type zend_extension_version_info = _zend_extension_version_info;
20449pub type zend_extension = _zend_extension;
20450pub type startup_func_t = ::std::option::Option<
20451    unsafe extern "C" fn(extension: *mut zend_extension) -> ::std::os::raw::c_int,
20452>;
20453pub type shutdown_func_t =
20454    ::std::option::Option<unsafe extern "C" fn(extension: *mut zend_extension)>;
20455pub type activate_func_t = ::std::option::Option<unsafe extern "C" fn()>;
20456pub type deactivate_func_t = ::std::option::Option<unsafe extern "C" fn()>;
20457pub type message_handler_func_t = ::std::option::Option<
20458    unsafe extern "C" fn(message: ::std::os::raw::c_int, arg: *mut ::std::os::raw::c_void),
20459>;
20460pub type op_array_handler_func_t =
20461    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
20462pub type statement_handler_func_t =
20463    ::std::option::Option<unsafe extern "C" fn(frame: *mut zend_execute_data)>;
20464pub type fcall_begin_handler_func_t =
20465    ::std::option::Option<unsafe extern "C" fn(frame: *mut zend_execute_data)>;
20466pub type fcall_end_handler_func_t =
20467    ::std::option::Option<unsafe extern "C" fn(frame: *mut zend_execute_data)>;
20468pub type op_array_ctor_func_t =
20469    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
20470pub type op_array_dtor_func_t =
20471    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
20472pub type op_array_persist_calc_func_t =
20473    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array) -> size_t>;
20474pub type op_array_persist_func_t = ::std::option::Option<
20475    unsafe extern "C" fn(op_array: *mut zend_op_array, mem: *mut ::std::os::raw::c_void) -> size_t,
20476>;
20477#[repr(C)]
20478#[derive(Debug, Copy, Clone)]
20479pub struct _zend_extension {
20480    pub name: *mut ::std::os::raw::c_char,
20481    pub version: *mut ::std::os::raw::c_char,
20482    pub author: *mut ::std::os::raw::c_char,
20483    pub URL: *mut ::std::os::raw::c_char,
20484    pub copyright: *mut ::std::os::raw::c_char,
20485    pub startup: startup_func_t,
20486    pub shutdown: shutdown_func_t,
20487    pub activate: activate_func_t,
20488    pub deactivate: deactivate_func_t,
20489    pub message_handler: message_handler_func_t,
20490    pub op_array_handler: op_array_handler_func_t,
20491    pub statement_handler: statement_handler_func_t,
20492    pub fcall_begin_handler: fcall_begin_handler_func_t,
20493    pub fcall_end_handler: fcall_end_handler_func_t,
20494    pub op_array_ctor: op_array_ctor_func_t,
20495    pub op_array_dtor: op_array_dtor_func_t,
20496    pub api_no_check: ::std::option::Option<
20497        unsafe extern "C" fn(api_no: ::std::os::raw::c_int) -> ::std::os::raw::c_int,
20498    >,
20499    pub build_id_check: ::std::option::Option<
20500        unsafe extern "C" fn(build_id: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int,
20501    >,
20502    pub op_array_persist_calc: op_array_persist_calc_func_t,
20503    pub op_array_persist: op_array_persist_func_t,
20504    pub reserved5: *mut ::std::os::raw::c_void,
20505    pub reserved6: *mut ::std::os::raw::c_void,
20506    pub reserved7: *mut ::std::os::raw::c_void,
20507    pub reserved8: *mut ::std::os::raw::c_void,
20508    pub handle: *mut ::std::os::raw::c_void,
20509    pub resource_number: ::std::os::raw::c_int,
20510}
20511#[test]
20512fn bindgen_test_layout__zend_extension() {
20513    assert_eq!(
20514        ::std::mem::size_of::<_zend_extension>(),
20515        208usize,
20516        concat!("Size of: ", stringify!(_zend_extension))
20517    );
20518    assert_eq!(
20519        ::std::mem::align_of::<_zend_extension>(),
20520        8usize,
20521        concat!("Alignment of ", stringify!(_zend_extension))
20522    );
20523    assert_eq!(
20524        unsafe { &(*(::std::ptr::null::<_zend_extension>())).name as *const _ as usize },
20525        0usize,
20526        concat!(
20527            "Offset of field: ",
20528            stringify!(_zend_extension),
20529            "::",
20530            stringify!(name)
20531        )
20532    );
20533    assert_eq!(
20534        unsafe { &(*(::std::ptr::null::<_zend_extension>())).version as *const _ as usize },
20535        8usize,
20536        concat!(
20537            "Offset of field: ",
20538            stringify!(_zend_extension),
20539            "::",
20540            stringify!(version)
20541        )
20542    );
20543    assert_eq!(
20544        unsafe { &(*(::std::ptr::null::<_zend_extension>())).author as *const _ as usize },
20545        16usize,
20546        concat!(
20547            "Offset of field: ",
20548            stringify!(_zend_extension),
20549            "::",
20550            stringify!(author)
20551        )
20552    );
20553    assert_eq!(
20554        unsafe { &(*(::std::ptr::null::<_zend_extension>())).URL as *const _ as usize },
20555        24usize,
20556        concat!(
20557            "Offset of field: ",
20558            stringify!(_zend_extension),
20559            "::",
20560            stringify!(URL)
20561        )
20562    );
20563    assert_eq!(
20564        unsafe { &(*(::std::ptr::null::<_zend_extension>())).copyright as *const _ as usize },
20565        32usize,
20566        concat!(
20567            "Offset of field: ",
20568            stringify!(_zend_extension),
20569            "::",
20570            stringify!(copyright)
20571        )
20572    );
20573    assert_eq!(
20574        unsafe { &(*(::std::ptr::null::<_zend_extension>())).startup as *const _ as usize },
20575        40usize,
20576        concat!(
20577            "Offset of field: ",
20578            stringify!(_zend_extension),
20579            "::",
20580            stringify!(startup)
20581        )
20582    );
20583    assert_eq!(
20584        unsafe { &(*(::std::ptr::null::<_zend_extension>())).shutdown as *const _ as usize },
20585        48usize,
20586        concat!(
20587            "Offset of field: ",
20588            stringify!(_zend_extension),
20589            "::",
20590            stringify!(shutdown)
20591        )
20592    );
20593    assert_eq!(
20594        unsafe { &(*(::std::ptr::null::<_zend_extension>())).activate as *const _ as usize },
20595        56usize,
20596        concat!(
20597            "Offset of field: ",
20598            stringify!(_zend_extension),
20599            "::",
20600            stringify!(activate)
20601        )
20602    );
20603    assert_eq!(
20604        unsafe { &(*(::std::ptr::null::<_zend_extension>())).deactivate as *const _ as usize },
20605        64usize,
20606        concat!(
20607            "Offset of field: ",
20608            stringify!(_zend_extension),
20609            "::",
20610            stringify!(deactivate)
20611        )
20612    );
20613    assert_eq!(
20614        unsafe { &(*(::std::ptr::null::<_zend_extension>())).message_handler as *const _ as usize },
20615        72usize,
20616        concat!(
20617            "Offset of field: ",
20618            stringify!(_zend_extension),
20619            "::",
20620            stringify!(message_handler)
20621        )
20622    );
20623    assert_eq!(
20624        unsafe {
20625            &(*(::std::ptr::null::<_zend_extension>())).op_array_handler as *const _ as usize
20626        },
20627        80usize,
20628        concat!(
20629            "Offset of field: ",
20630            stringify!(_zend_extension),
20631            "::",
20632            stringify!(op_array_handler)
20633        )
20634    );
20635    assert_eq!(
20636        unsafe {
20637            &(*(::std::ptr::null::<_zend_extension>())).statement_handler as *const _ as usize
20638        },
20639        88usize,
20640        concat!(
20641            "Offset of field: ",
20642            stringify!(_zend_extension),
20643            "::",
20644            stringify!(statement_handler)
20645        )
20646    );
20647    assert_eq!(
20648        unsafe {
20649            &(*(::std::ptr::null::<_zend_extension>())).fcall_begin_handler as *const _ as usize
20650        },
20651        96usize,
20652        concat!(
20653            "Offset of field: ",
20654            stringify!(_zend_extension),
20655            "::",
20656            stringify!(fcall_begin_handler)
20657        )
20658    );
20659    assert_eq!(
20660        unsafe {
20661            &(*(::std::ptr::null::<_zend_extension>())).fcall_end_handler as *const _ as usize
20662        },
20663        104usize,
20664        concat!(
20665            "Offset of field: ",
20666            stringify!(_zend_extension),
20667            "::",
20668            stringify!(fcall_end_handler)
20669        )
20670    );
20671    assert_eq!(
20672        unsafe { &(*(::std::ptr::null::<_zend_extension>())).op_array_ctor as *const _ as usize },
20673        112usize,
20674        concat!(
20675            "Offset of field: ",
20676            stringify!(_zend_extension),
20677            "::",
20678            stringify!(op_array_ctor)
20679        )
20680    );
20681    assert_eq!(
20682        unsafe { &(*(::std::ptr::null::<_zend_extension>())).op_array_dtor as *const _ as usize },
20683        120usize,
20684        concat!(
20685            "Offset of field: ",
20686            stringify!(_zend_extension),
20687            "::",
20688            stringify!(op_array_dtor)
20689        )
20690    );
20691    assert_eq!(
20692        unsafe { &(*(::std::ptr::null::<_zend_extension>())).api_no_check as *const _ as usize },
20693        128usize,
20694        concat!(
20695            "Offset of field: ",
20696            stringify!(_zend_extension),
20697            "::",
20698            stringify!(api_no_check)
20699        )
20700    );
20701    assert_eq!(
20702        unsafe { &(*(::std::ptr::null::<_zend_extension>())).build_id_check as *const _ as usize },
20703        136usize,
20704        concat!(
20705            "Offset of field: ",
20706            stringify!(_zend_extension),
20707            "::",
20708            stringify!(build_id_check)
20709        )
20710    );
20711    assert_eq!(
20712        unsafe {
20713            &(*(::std::ptr::null::<_zend_extension>())).op_array_persist_calc as *const _ as usize
20714        },
20715        144usize,
20716        concat!(
20717            "Offset of field: ",
20718            stringify!(_zend_extension),
20719            "::",
20720            stringify!(op_array_persist_calc)
20721        )
20722    );
20723    assert_eq!(
20724        unsafe {
20725            &(*(::std::ptr::null::<_zend_extension>())).op_array_persist as *const _ as usize
20726        },
20727        152usize,
20728        concat!(
20729            "Offset of field: ",
20730            stringify!(_zend_extension),
20731            "::",
20732            stringify!(op_array_persist)
20733        )
20734    );
20735    assert_eq!(
20736        unsafe { &(*(::std::ptr::null::<_zend_extension>())).reserved5 as *const _ as usize },
20737        160usize,
20738        concat!(
20739            "Offset of field: ",
20740            stringify!(_zend_extension),
20741            "::",
20742            stringify!(reserved5)
20743        )
20744    );
20745    assert_eq!(
20746        unsafe { &(*(::std::ptr::null::<_zend_extension>())).reserved6 as *const _ as usize },
20747        168usize,
20748        concat!(
20749            "Offset of field: ",
20750            stringify!(_zend_extension),
20751            "::",
20752            stringify!(reserved6)
20753        )
20754    );
20755    assert_eq!(
20756        unsafe { &(*(::std::ptr::null::<_zend_extension>())).reserved7 as *const _ as usize },
20757        176usize,
20758        concat!(
20759            "Offset of field: ",
20760            stringify!(_zend_extension),
20761            "::",
20762            stringify!(reserved7)
20763        )
20764    );
20765    assert_eq!(
20766        unsafe { &(*(::std::ptr::null::<_zend_extension>())).reserved8 as *const _ as usize },
20767        184usize,
20768        concat!(
20769            "Offset of field: ",
20770            stringify!(_zend_extension),
20771            "::",
20772            stringify!(reserved8)
20773        )
20774    );
20775    assert_eq!(
20776        unsafe { &(*(::std::ptr::null::<_zend_extension>())).handle as *const _ as usize },
20777        192usize,
20778        concat!(
20779            "Offset of field: ",
20780            stringify!(_zend_extension),
20781            "::",
20782            stringify!(handle)
20783        )
20784    );
20785    assert_eq!(
20786        unsafe { &(*(::std::ptr::null::<_zend_extension>())).resource_number as *const _ as usize },
20787        200usize,
20788        concat!(
20789            "Offset of field: ",
20790            stringify!(_zend_extension),
20791            "::",
20792            stringify!(resource_number)
20793        )
20794    );
20795}
20796extern "C" {
20797    pub fn zend_get_resource_handle(extension: *mut zend_extension) -> ::std::os::raw::c_int;
20798}
20799extern "C" {
20800    pub fn zend_extension_dispatch_message(
20801        message: ::std::os::raw::c_int,
20802        arg: *mut ::std::os::raw::c_void,
20803    );
20804}
20805extern "C" {
20806    pub static mut zend_extensions: zend_llist;
20807}
20808extern "C" {
20809    pub static mut zend_extension_flags: u32;
20810}
20811extern "C" {
20812    pub fn zend_extension_dtor(extension: *mut zend_extension);
20813}
20814extern "C" {
20815    pub fn zend_append_version_info(extension: *const zend_extension);
20816}
20817extern "C" {
20818    pub fn zend_startup_extensions_mechanism() -> ::std::os::raw::c_int;
20819}
20820extern "C" {
20821    pub fn zend_startup_extensions() -> ::std::os::raw::c_int;
20822}
20823extern "C" {
20824    pub fn zend_shutdown_extensions();
20825}
20826extern "C" {
20827    pub fn zend_load_extension(path: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
20828}
20829extern "C" {
20830    pub fn zend_load_extension_handle(
20831        handle: *mut ::std::os::raw::c_void,
20832        path: *const ::std::os::raw::c_char,
20833    ) -> ::std::os::raw::c_int;
20834}
20835extern "C" {
20836    pub fn zend_register_extension(
20837        new_extension: *mut zend_extension,
20838        handle: *mut ::std::os::raw::c_void,
20839    ) -> ::std::os::raw::c_int;
20840}
20841extern "C" {
20842    pub fn zend_get_extension(extension_name: *const ::std::os::raw::c_char)
20843        -> *mut zend_extension;
20844}
20845extern "C" {
20846    pub fn zend_extensions_op_array_persist_calc(op_array: *mut zend_op_array) -> size_t;
20847}
20848extern "C" {
20849    pub fn zend_extensions_op_array_persist(
20850        op_array: *mut zend_op_array,
20851        mem: *mut ::std::os::raw::c_void,
20852    ) -> size_t;
20853}
20854pub const ZEND_MODULE_BUILD_ID_: &'static [u8; 16usize] = b"API20170718,NTS\0";
20855pub type __builtin_va_list = [__va_list_tag; 1usize];
20856#[repr(C)]
20857#[derive(Debug, Copy, Clone)]
20858pub struct __va_list_tag {
20859    pub gp_offset: ::std::os::raw::c_uint,
20860    pub fp_offset: ::std::os::raw::c_uint,
20861    pub overflow_arg_area: *mut ::std::os::raw::c_void,
20862    pub reg_save_area: *mut ::std::os::raw::c_void,
20863}
20864#[test]
20865fn bindgen_test_layout___va_list_tag() {
20866    assert_eq!(
20867        ::std::mem::size_of::<__va_list_tag>(),
20868        24usize,
20869        concat!("Size of: ", stringify!(__va_list_tag))
20870    );
20871    assert_eq!(
20872        ::std::mem::align_of::<__va_list_tag>(),
20873        8usize,
20874        concat!("Alignment of ", stringify!(__va_list_tag))
20875    );
20876    assert_eq!(
20877        unsafe { &(*(::std::ptr::null::<__va_list_tag>())).gp_offset as *const _ as usize },
20878        0usize,
20879        concat!(
20880            "Offset of field: ",
20881            stringify!(__va_list_tag),
20882            "::",
20883            stringify!(gp_offset)
20884        )
20885    );
20886    assert_eq!(
20887        unsafe { &(*(::std::ptr::null::<__va_list_tag>())).fp_offset as *const _ as usize },
20888        4usize,
20889        concat!(
20890            "Offset of field: ",
20891            stringify!(__va_list_tag),
20892            "::",
20893            stringify!(fp_offset)
20894        )
20895    );
20896    assert_eq!(
20897        unsafe { &(*(::std::ptr::null::<__va_list_tag>())).overflow_arg_area as *const _ as usize },
20898        8usize,
20899        concat!(
20900            "Offset of field: ",
20901            stringify!(__va_list_tag),
20902            "::",
20903            stringify!(overflow_arg_area)
20904        )
20905    );
20906    assert_eq!(
20907        unsafe { &(*(::std::ptr::null::<__va_list_tag>())).reg_save_area as *const _ as usize },
20908        16usize,
20909        concat!(
20910            "Offset of field: ",
20911            stringify!(__va_list_tag),
20912            "::",
20913            stringify!(reg_save_area)
20914        )
20915    );
20916}