php_all_sys/generated/
php74.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 = 20190902;
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_AVX2_INSTRUCTIONS: u32 = 1;
96pub const PHP_HAVE_AVX_INSTRUCTIONS: u32 = 1;
97pub const PHP_HAVE_BUILTIN_CLZ: u32 = 1;
98pub const PHP_HAVE_BUILTIN_CPU_INIT: u32 = 1;
99pub const PHP_HAVE_BUILTIN_CPU_SUPPORTS: u32 = 1;
100pub const PHP_HAVE_BUILTIN_CTZL: u32 = 1;
101pub const PHP_HAVE_BUILTIN_CTZLL: u32 = 1;
102pub const PHP_HAVE_BUILTIN_EXPECT: u32 = 1;
103pub const PHP_HAVE_BUILTIN_SADDLL_OVERFLOW: u32 = 1;
104pub const PHP_HAVE_BUILTIN_SADDL_OVERFLOW: u32 = 1;
105pub const PHP_HAVE_BUILTIN_SMULLL_OVERFLOW: u32 = 1;
106pub const PHP_HAVE_BUILTIN_SMULL_OVERFLOW: u32 = 1;
107pub const PHP_HAVE_BUILTIN_SSUBLL_OVERFLOW: u32 = 1;
108pub const PHP_HAVE_BUILTIN_SSUBL_OVERFLOW: u32 = 1;
109pub const PHP_HAVE_SSE4_2_INSTRUCTIONS: u32 = 1;
110pub const PHP_HAVE_SSSE3_INSTRUCTIONS: u32 = 1;
111pub const PHP_MHASH_BC: u32 = 1;
112pub const PHP_OS: &'static [u8; 6usize] = b"Linux\0";
113pub const PHP_SIGCHILD: u32 = 0;
114pub const PHP_UNAME: &'static [u8; 6usize] = b"Linux\0";
115pub const PHP_USE_PHP_CRYPT_R: u32 = 1;
116pub const PHP_WRITE_STDOUT: u32 = 1;
117pub const ZEND_DEBUG: u32 = 0;
118pub const ZEND_MM_ALIGNMENT: u32 = 8;
119pub const ZEND_MM_ALIGNMENT_LOG2: u32 = 3;
120pub const ZEND_SIGNALS: u32 = 1;
121pub const PHP_MAJOR_VERSION: u32 = 7;
122pub const PHP_MINOR_VERSION: u32 = 4;
123pub const PHP_RELEASE_VERSION: u32 = 15;
124pub const PHP_EXTRA_VERSION: &'static [u8; 1usize] = b"\0";
125pub const PHP_VERSION: &'static [u8; 7usize] = b"7.4.15\0";
126pub const PHP_VERSION_ID: u32 = 70415;
127pub const ZEND_VERSION: &'static [u8; 6usize] = b"3.4.0\0";
128pub const ZEND_PATHS_SEPARATOR: u8 = 58u8;
129pub const ZEND_ENABLE_ZVAL_LONG64: u32 = 1;
130pub const ZEND_LTOA_BUF_LEN: u32 = 65;
131pub const ZEND_LONG_FMT: &'static [u8; 4usize] = b"%ld\0";
132pub const ZEND_ULONG_FMT: &'static [u8; 4usize] = b"%lu\0";
133pub const ZEND_XLONG_FMT: &'static [u8; 4usize] = b"%lx\0";
134pub const ZEND_LONG_FMT_SPEC: &'static [u8; 3usize] = b"ld\0";
135pub const ZEND_ULONG_FMT_SPEC: &'static [u8; 3usize] = b"lu\0";
136pub const ZEND_ADDR_FMT: &'static [u8; 9usize] = b"0x%016zx\0";
137pub const ZEND_LONG_CAN_OVFL_INT: u32 = 1;
138pub const ZEND_LONG_CAN_OVFL_UINT: u32 = 1;
139pub const ZEND_SIZE_T_CAN_OVFL_UINT: u32 = 1;
140pub const PHP_RTLD_MODE: u32 = 1;
141pub const ZEND_EXTENSIONS_SUPPORT: u32 = 1;
142pub const ZEND_ALLOCA_MAX_SIZE: u32 = 32768;
143pub const ZEND_MAX_RESERVED_RESOURCES: u32 = 6;
144pub const ZEND_SIZE_MAX: i32 = -1;
145pub const IS_UNDEF: u32 = 0;
146pub const IS_NULL: u32 = 1;
147pub const IS_FALSE: u32 = 2;
148pub const IS_TRUE: u32 = 3;
149pub const IS_LONG: u32 = 4;
150pub const IS_DOUBLE: u32 = 5;
151pub const IS_STRING: u32 = 6;
152pub const IS_ARRAY: u32 = 7;
153pub const IS_OBJECT: u32 = 8;
154pub const IS_RESOURCE: u32 = 9;
155pub const IS_REFERENCE: u32 = 10;
156pub const IS_CONSTANT_AST: u32 = 11;
157pub const IS_INDIRECT: u32 = 13;
158pub const IS_PTR: u32 = 14;
159pub const IS_ALIAS_PTR: u32 = 15;
160pub const _IS_ERROR: u32 = 15;
161pub const _IS_BOOL: u32 = 16;
162pub const IS_CALLABLE: u32 = 17;
163pub const IS_ITERABLE: u32 = 18;
164pub const IS_VOID: u32 = 19;
165pub const _IS_NUMBER: u32 = 20;
166pub const Z_TYPE_MASK: u32 = 255;
167pub const Z_TYPE_FLAGS_MASK: u32 = 65280;
168pub const Z_TYPE_FLAGS_SHIFT: u32 = 8;
169pub const GC_TYPE_MASK: u32 = 15;
170pub const GC_FLAGS_MASK: u32 = 1008;
171pub const GC_INFO_MASK: u32 = 4294966272;
172pub const GC_FLAGS_SHIFT: u32 = 0;
173pub const GC_INFO_SHIFT: u32 = 10;
174pub const GC_COLLECTABLE: u32 = 16;
175pub const GC_PROTECTED: u32 = 32;
176pub const GC_IMMUTABLE: u32 = 64;
177pub const GC_PERSISTENT: u32 = 128;
178pub const GC_PERSISTENT_LOCAL: u32 = 256;
179pub const GC_ARRAY: u32 = 23;
180pub const GC_OBJECT: u32 = 24;
181pub const IS_TYPE_REFCOUNTED: u32 = 1;
182pub const IS_TYPE_COLLECTABLE: u32 = 2;
183pub const IS_INTERNED_STRING_EX: u32 = 6;
184pub const IS_STRING_EX: u32 = 262;
185pub const IS_ARRAY_EX: u32 = 775;
186pub const IS_OBJECT_EX: u32 = 776;
187pub const IS_RESOURCE_EX: u32 = 265;
188pub const IS_REFERENCE_EX: u32 = 266;
189pub const IS_CONSTANT_AST_EX: u32 = 267;
190pub const IS_STR_INTERNED: u32 = 64;
191pub const IS_STR_PERSISTENT: u32 = 128;
192pub const IS_STR_PERMANENT: u32 = 256;
193pub const IS_STR_VALID_UTF8: u32 = 512;
194pub const IS_ARRAY_IMMUTABLE: u32 = 64;
195pub const IS_ARRAY_PERSISTENT: u32 = 128;
196pub const IS_OBJ_WEAKLY_REFERENCED: u32 = 128;
197pub const IS_OBJ_DESTRUCTOR_CALLED: u32 = 256;
198pub const IS_OBJ_FREE_CALLED: u32 = 512;
199pub const ZEND_RC_DEBUG: u32 = 0;
200pub const IS_PROP_UNINIT: u32 = 1;
201pub const ZEND_MAP_PTR_KIND_PTR: u32 = 0;
202pub const ZEND_MAP_PTR_KIND_PTR_OR_OFFSET: u32 = 1;
203pub const ZEND_MAP_PTR_KIND: u32 = 1;
204pub const ZEND_MM_ALIGNMENT_MASK: i32 = -8;
205pub const ZEND_MM_OVERHEAD: u32 = 0;
206pub const ZEND_MM_CHUNK_SIZE: u32 = 2097152;
207pub const ZEND_MM_PAGE_SIZE: u32 = 4096;
208pub const ZEND_MM_PAGES: u32 = 512;
209pub const ZEND_MM_FIRST_PAGE: u32 = 1;
210pub const ZEND_MM_MIN_SMALL_SIZE: u32 = 8;
211pub const ZEND_MM_MAX_SMALL_SIZE: u32 = 3072;
212pub const ZEND_MM_MAX_LARGE_SIZE: u32 = 2093056;
213pub const ZEND_MM_CUSTOM_HEAP_NONE: u32 = 0;
214pub const ZEND_MM_CUSTOM_HEAP_STD: u32 = 1;
215pub const ZEND_MM_CUSTOM_HEAP_DEBUG: u32 = 2;
216pub const HASH_KEY_IS_STRING: u32 = 1;
217pub const HASH_KEY_IS_LONG: u32 = 2;
218pub const HASH_KEY_NON_EXISTENT: u32 = 3;
219pub const HASH_UPDATE: u32 = 1;
220pub const HASH_ADD: u32 = 2;
221pub const HASH_UPDATE_INDIRECT: u32 = 4;
222pub const HASH_ADD_NEW: u32 = 8;
223pub const HASH_ADD_NEXT: u32 = 16;
224pub const HASH_FLAG_CONSISTENCY: u32 = 3;
225pub const HASH_FLAG_PACKED: u32 = 4;
226pub const HASH_FLAG_UNINITIALIZED: u32 = 8;
227pub const HASH_FLAG_STATIC_KEYS: u32 = 16;
228pub const HASH_FLAG_HAS_EMPTY_IND: u32 = 32;
229pub const HASH_FLAG_ALLOW_COW_VIOLATION: u32 = 64;
230pub const HASH_FLAG_MASK: u32 = 255;
231pub const ZEND_HASH_APPLY_KEEP: u32 = 0;
232pub const ZEND_HASH_APPLY_REMOVE: u32 = 1;
233pub const ZEND_HASH_APPLY_STOP: u32 = 2;
234pub const ZEND_AST_SPEC: u32 = 1;
235pub const ZEND_AST_SPECIAL_SHIFT: u32 = 6;
236pub const ZEND_AST_IS_LIST_SHIFT: u32 = 7;
237pub const ZEND_AST_NUM_CHILDREN_SHIFT: u32 = 8;
238pub const ZEND_MMAP_AHEAD: u32 = 32;
239pub const ZEND_SIGNAL_QUEUE_SIZE: u32 = 64;
240pub const DEBUG_BACKTRACE_PROVIDE_OBJECT: u32 = 1;
241pub const DEBUG_BACKTRACE_IGNORE_ARGS: u32 = 2;
242pub const ZEND_PROPERTY_ISSET: u32 = 0;
243pub const ZEND_PROPERTY_EXISTS: u32 = 2;
244pub const ZEND_USE_ASM_ARITHMETIC: u32 = 1;
245pub const ZEND_USE_ABS_JMP_ADDR: u32 = 0;
246pub const ZEND_USE_ABS_CONST_ADDR: u32 = 0;
247pub const ZEND_LIVE_TMPVAR: u32 = 0;
248pub const ZEND_LIVE_LOOP: u32 = 1;
249pub const ZEND_LIVE_SILENCE: u32 = 2;
250pub const ZEND_LIVE_ROPE: u32 = 3;
251pub const ZEND_LIVE_NEW: u32 = 4;
252pub const ZEND_LIVE_MASK: u32 = 7;
253pub const ZEND_ACC_PUBLIC: u32 = 1;
254pub const ZEND_ACC_PROTECTED: u32 = 2;
255pub const ZEND_ACC_PRIVATE: u32 = 4;
256pub const ZEND_ACC_CHANGED: u32 = 8;
257pub const ZEND_ACC_STATIC: u32 = 16;
258pub const ZEND_ACC_FINAL: u32 = 32;
259pub const ZEND_ACC_ABSTRACT: u32 = 64;
260pub const ZEND_ACC_EXPLICIT_ABSTRACT_CLASS: u32 = 64;
261pub const ZEND_ACC_IMMUTABLE: u32 = 128;
262pub const ZEND_ACC_HAS_TYPE_HINTS: u32 = 256;
263pub const ZEND_ACC_TOP_LEVEL: u32 = 512;
264pub const ZEND_ACC_PRELOADED: u32 = 1024;
265pub const ZEND_ACC_INTERFACE: u32 = 1;
266pub const ZEND_ACC_TRAIT: u32 = 2;
267pub const ZEND_ACC_ANON_CLASS: u32 = 4;
268pub const ZEND_ACC_LINKED: u32 = 8;
269pub const ZEND_ACC_IMPLICIT_ABSTRACT_CLASS: u32 = 16;
270pub const ZEND_ACC_USE_GUARDS: u32 = 2048;
271pub const ZEND_ACC_CONSTANTS_UPDATED: u32 = 4096;
272pub const ZEND_ACC_INHERITED: u32 = 8192;
273pub const ZEND_ACC_IMPLEMENT_INTERFACES: u32 = 16384;
274pub const ZEND_ACC_IMPLEMENT_TRAITS: u32 = 32768;
275pub const ZEND_HAS_STATIC_IN_METHODS: u32 = 65536;
276pub const ZEND_ACC_PROPERTY_TYPES_RESOLVED: u32 = 131072;
277pub const ZEND_ACC_REUSE_GET_ITERATOR: u32 = 262144;
278pub const ZEND_ACC_RESOLVED_PARENT: u32 = 524288;
279pub const ZEND_ACC_RESOLVED_INTERFACES: u32 = 1048576;
280pub const ZEND_ACC_UNRESOLVED_VARIANCE: u32 = 2097152;
281pub const ZEND_ACC_NEARLY_LINKED: u32 = 4194304;
282pub const ZEND_ACC_HAS_UNLINKED_USES: u32 = 8388608;
283pub const ZEND_ACC_DEPRECATED: u32 = 2048;
284pub const ZEND_ACC_RETURN_REFERENCE: u32 = 4096;
285pub const ZEND_ACC_HAS_RETURN_TYPE: u32 = 8192;
286pub const ZEND_ACC_VARIADIC: u32 = 16384;
287pub const ZEND_ACC_HAS_FINALLY_BLOCK: u32 = 32768;
288pub const ZEND_ACC_EARLY_BINDING: u32 = 65536;
289pub const ZEND_ACC_ALLOW_STATIC: u32 = 131072;
290pub const ZEND_ACC_CALL_VIA_TRAMPOLINE: u32 = 262144;
291pub const ZEND_ACC_NEVER_CACHE: u32 = 524288;
292pub const ZEND_ACC_CLOSURE: u32 = 1048576;
293pub const ZEND_ACC_FAKE_CLOSURE: u32 = 2097152;
294pub const ZEND_ACC_HEAP_RT_CACHE: u32 = 4194304;
295pub const ZEND_ACC_USER_ARG_INFO: u32 = 4194304;
296pub const ZEND_ACC_GENERATOR: u32 = 16777216;
297pub const ZEND_ACC_DONE_PASS_TWO: u32 = 33554432;
298pub const ZEND_ACC_ARENA_ALLOCATED: u32 = 33554432;
299pub const ZEND_ACC_TRAIT_CLONE: u32 = 134217728;
300pub const ZEND_ACC_CTOR: u32 = 268435456;
301pub const ZEND_ACC_DTOR: u32 = 536870912;
302pub const ZEND_ACC_USES_THIS: u32 = 1073741824;
303pub const ZEND_ACC_STRICT_TYPES: u32 = 2147483648;
304pub const ZEND_ACC_PPP_MASK: u32 = 7;
305pub const ZEND_ACC_CALL_VIA_HANDLER: u32 = 262144;
306pub const ZEND_RETURN_VALUE: u32 = 0;
307pub const ZEND_RETURN_REFERENCE: u32 = 1;
308pub const ZEND_CALL_HAS_THIS: u32 = 776;
309pub const ZEND_CALL_FUNCTION: u32 = 0;
310pub const ZEND_CALL_CODE: u32 = 65536;
311pub const ZEND_CALL_NESTED: u32 = 0;
312pub const ZEND_CALL_TOP: u32 = 131072;
313pub const ZEND_CALL_ALLOCATED: u32 = 262144;
314pub const ZEND_CALL_FREE_EXTRA_ARGS: u32 = 524288;
315pub const ZEND_CALL_HAS_SYMBOL_TABLE: u32 = 1048576;
316pub const ZEND_CALL_RELEASE_THIS: u32 = 2097152;
317pub const ZEND_CALL_CLOSURE: u32 = 4194304;
318pub const ZEND_CALL_FAKE_CLOSURE: u32 = 8388608;
319pub const ZEND_CALL_GENERATOR: u32 = 16777216;
320pub const ZEND_CALL_DYNAMIC: u32 = 33554432;
321pub const ZEND_CALL_SEND_ARG_BY_REF: u32 = 2147483648;
322pub const ZEND_CALL_NESTED_FUNCTION: u32 = 0;
323pub const ZEND_CALL_NESTED_CODE: u32 = 65536;
324pub const ZEND_CALL_TOP_FUNCTION: u32 = 131072;
325pub const ZEND_CALL_TOP_CODE: u32 = 196608;
326pub const IS_UNUSED: u32 = 0;
327pub const IS_CONST: u32 = 1;
328pub const IS_TMP_VAR: u32 = 2;
329pub const IS_VAR: u32 = 4;
330pub const IS_CV: u32 = 8;
331pub const ZEND_EXTRA_VALUE: u32 = 1;
332pub const ZEND_STACK_APPLY_TOPDOWN: u32 = 1;
333pub const ZEND_STACK_APPLY_BOTTOMUP: u32 = 2;
334pub const ZEND_PTR_STACK_NUM_ARGS: u32 = 3;
335pub const ZEND_VM_SPEC: u32 = 1;
336pub const ZEND_VM_LINES: u32 = 0;
337pub const ZEND_VM_KIND_CALL: u32 = 1;
338pub const ZEND_VM_KIND_SWITCH: u32 = 2;
339pub const ZEND_VM_KIND_GOTO: u32 = 3;
340pub const ZEND_VM_KIND_HYBRID: u32 = 4;
341pub const ZEND_VM_KIND: u32 = 4;
342pub const ZEND_VM_OP_SPEC: u32 = 1;
343pub const ZEND_VM_OP_CONST: u32 = 2;
344pub const ZEND_VM_OP_TMPVAR: u32 = 4;
345pub const ZEND_VM_OP_TMPVARCV: u32 = 8;
346pub const ZEND_VM_OP_MASK: u32 = 240;
347pub const ZEND_VM_OP_NUM: u32 = 16;
348pub const ZEND_VM_OP_JMP_ADDR: u32 = 32;
349pub const ZEND_VM_OP_TRY_CATCH: u32 = 48;
350pub const ZEND_VM_OP_THIS: u32 = 80;
351pub const ZEND_VM_OP_NEXT: u32 = 96;
352pub const ZEND_VM_OP_CLASS_FETCH: u32 = 112;
353pub const ZEND_VM_OP_CONSTRUCTOR: u32 = 128;
354pub const ZEND_VM_OP_CONST_FETCH: u32 = 144;
355pub const ZEND_VM_OP_CACHE_SLOT: u32 = 160;
356pub const ZEND_VM_EXT_VAR_FETCH: u32 = 65536;
357pub const ZEND_VM_EXT_ISSET: u32 = 131072;
358pub const ZEND_VM_EXT_CACHE_SLOT: u32 = 262144;
359pub const ZEND_VM_EXT_ARRAY_INIT: u32 = 524288;
360pub const ZEND_VM_EXT_REF: u32 = 1048576;
361pub const ZEND_VM_EXT_FETCH_REF: u32 = 2097152;
362pub const ZEND_VM_EXT_DIM_OBJ_WRITE: u32 = 4194304;
363pub const ZEND_VM_EXT_MASK: u32 = 251658240;
364pub const ZEND_VM_EXT_NUM: u32 = 16777216;
365pub const ZEND_VM_EXT_LAST_CATCH: u32 = 33554432;
366pub const ZEND_VM_EXT_JMP_ADDR: u32 = 50331648;
367pub const ZEND_VM_EXT_OP: u32 = 67108864;
368pub const ZEND_VM_EXT_TYPE: u32 = 117440512;
369pub const ZEND_VM_EXT_EVAL: u32 = 134217728;
370pub const ZEND_VM_EXT_TYPE_MASK: u32 = 150994944;
371pub const ZEND_VM_EXT_SRC: u32 = 184549376;
372pub const ZEND_VM_NO_CONST_CONST: u32 = 1073741824;
373pub const ZEND_VM_COMMUTATIVE: u32 = 2147483648;
374pub const ZEND_NOP: u32 = 0;
375pub const ZEND_ADD: u32 = 1;
376pub const ZEND_SUB: u32 = 2;
377pub const ZEND_MUL: u32 = 3;
378pub const ZEND_DIV: u32 = 4;
379pub const ZEND_MOD: u32 = 5;
380pub const ZEND_SL: u32 = 6;
381pub const ZEND_SR: u32 = 7;
382pub const ZEND_CONCAT: u32 = 8;
383pub const ZEND_BW_OR: u32 = 9;
384pub const ZEND_BW_AND: u32 = 10;
385pub const ZEND_BW_XOR: u32 = 11;
386pub const ZEND_POW: u32 = 12;
387pub const ZEND_BW_NOT: u32 = 13;
388pub const ZEND_BOOL_NOT: u32 = 14;
389pub const ZEND_BOOL_XOR: u32 = 15;
390pub const ZEND_IS_IDENTICAL: u32 = 16;
391pub const ZEND_IS_NOT_IDENTICAL: u32 = 17;
392pub const ZEND_IS_EQUAL: u32 = 18;
393pub const ZEND_IS_NOT_EQUAL: u32 = 19;
394pub const ZEND_IS_SMALLER: u32 = 20;
395pub const ZEND_IS_SMALLER_OR_EQUAL: u32 = 21;
396pub const ZEND_ASSIGN: u32 = 22;
397pub const ZEND_ASSIGN_DIM: u32 = 23;
398pub const ZEND_ASSIGN_OBJ: u32 = 24;
399pub const ZEND_ASSIGN_STATIC_PROP: u32 = 25;
400pub const ZEND_ASSIGN_OP: u32 = 26;
401pub const ZEND_ASSIGN_DIM_OP: u32 = 27;
402pub const ZEND_ASSIGN_OBJ_OP: u32 = 28;
403pub const ZEND_ASSIGN_STATIC_PROP_OP: u32 = 29;
404pub const ZEND_ASSIGN_REF: u32 = 30;
405pub const ZEND_QM_ASSIGN: u32 = 31;
406pub const ZEND_ASSIGN_OBJ_REF: u32 = 32;
407pub const ZEND_ASSIGN_STATIC_PROP_REF: u32 = 33;
408pub const ZEND_PRE_INC: u32 = 34;
409pub const ZEND_PRE_DEC: u32 = 35;
410pub const ZEND_POST_INC: u32 = 36;
411pub const ZEND_POST_DEC: u32 = 37;
412pub const ZEND_PRE_INC_STATIC_PROP: u32 = 38;
413pub const ZEND_PRE_DEC_STATIC_PROP: u32 = 39;
414pub const ZEND_POST_INC_STATIC_PROP: u32 = 40;
415pub const ZEND_POST_DEC_STATIC_PROP: u32 = 41;
416pub const ZEND_JMP: u32 = 42;
417pub const ZEND_JMPZ: u32 = 43;
418pub const ZEND_JMPNZ: u32 = 44;
419pub const ZEND_JMPZNZ: u32 = 45;
420pub const ZEND_JMPZ_EX: u32 = 46;
421pub const ZEND_JMPNZ_EX: u32 = 47;
422pub const ZEND_CASE: u32 = 48;
423pub const ZEND_CHECK_VAR: u32 = 49;
424pub const ZEND_SEND_VAR_NO_REF_EX: u32 = 50;
425pub const ZEND_CAST: u32 = 51;
426pub const ZEND_BOOL: u32 = 52;
427pub const ZEND_FAST_CONCAT: u32 = 53;
428pub const ZEND_ROPE_INIT: u32 = 54;
429pub const ZEND_ROPE_ADD: u32 = 55;
430pub const ZEND_ROPE_END: u32 = 56;
431pub const ZEND_BEGIN_SILENCE: u32 = 57;
432pub const ZEND_END_SILENCE: u32 = 58;
433pub const ZEND_INIT_FCALL_BY_NAME: u32 = 59;
434pub const ZEND_DO_FCALL: u32 = 60;
435pub const ZEND_INIT_FCALL: u32 = 61;
436pub const ZEND_RETURN: u32 = 62;
437pub const ZEND_RECV: u32 = 63;
438pub const ZEND_RECV_INIT: u32 = 64;
439pub const ZEND_SEND_VAL: u32 = 65;
440pub const ZEND_SEND_VAR_EX: u32 = 66;
441pub const ZEND_SEND_REF: u32 = 67;
442pub const ZEND_NEW: u32 = 68;
443pub const ZEND_INIT_NS_FCALL_BY_NAME: u32 = 69;
444pub const ZEND_FREE: u32 = 70;
445pub const ZEND_INIT_ARRAY: u32 = 71;
446pub const ZEND_ADD_ARRAY_ELEMENT: u32 = 72;
447pub const ZEND_INCLUDE_OR_EVAL: u32 = 73;
448pub const ZEND_UNSET_VAR: u32 = 74;
449pub const ZEND_UNSET_DIM: u32 = 75;
450pub const ZEND_UNSET_OBJ: u32 = 76;
451pub const ZEND_FE_RESET_R: u32 = 77;
452pub const ZEND_FE_FETCH_R: u32 = 78;
453pub const ZEND_EXIT: u32 = 79;
454pub const ZEND_FETCH_R: u32 = 80;
455pub const ZEND_FETCH_DIM_R: u32 = 81;
456pub const ZEND_FETCH_OBJ_R: u32 = 82;
457pub const ZEND_FETCH_W: u32 = 83;
458pub const ZEND_FETCH_DIM_W: u32 = 84;
459pub const ZEND_FETCH_OBJ_W: u32 = 85;
460pub const ZEND_FETCH_RW: u32 = 86;
461pub const ZEND_FETCH_DIM_RW: u32 = 87;
462pub const ZEND_FETCH_OBJ_RW: u32 = 88;
463pub const ZEND_FETCH_IS: u32 = 89;
464pub const ZEND_FETCH_DIM_IS: u32 = 90;
465pub const ZEND_FETCH_OBJ_IS: u32 = 91;
466pub const ZEND_FETCH_FUNC_ARG: u32 = 92;
467pub const ZEND_FETCH_DIM_FUNC_ARG: u32 = 93;
468pub const ZEND_FETCH_OBJ_FUNC_ARG: u32 = 94;
469pub const ZEND_FETCH_UNSET: u32 = 95;
470pub const ZEND_FETCH_DIM_UNSET: u32 = 96;
471pub const ZEND_FETCH_OBJ_UNSET: u32 = 97;
472pub const ZEND_FETCH_LIST_R: u32 = 98;
473pub const ZEND_FETCH_CONSTANT: u32 = 99;
474pub const ZEND_CHECK_FUNC_ARG: u32 = 100;
475pub const ZEND_EXT_STMT: u32 = 101;
476pub const ZEND_EXT_FCALL_BEGIN: u32 = 102;
477pub const ZEND_EXT_FCALL_END: u32 = 103;
478pub const ZEND_EXT_NOP: u32 = 104;
479pub const ZEND_TICKS: u32 = 105;
480pub const ZEND_SEND_VAR_NO_REF: u32 = 106;
481pub const ZEND_CATCH: u32 = 107;
482pub const ZEND_THROW: u32 = 108;
483pub const ZEND_FETCH_CLASS: u32 = 109;
484pub const ZEND_CLONE: u32 = 110;
485pub const ZEND_RETURN_BY_REF: u32 = 111;
486pub const ZEND_INIT_METHOD_CALL: u32 = 112;
487pub const ZEND_INIT_STATIC_METHOD_CALL: u32 = 113;
488pub const ZEND_ISSET_ISEMPTY_VAR: u32 = 114;
489pub const ZEND_ISSET_ISEMPTY_DIM_OBJ: u32 = 115;
490pub const ZEND_SEND_VAL_EX: u32 = 116;
491pub const ZEND_SEND_VAR: u32 = 117;
492pub const ZEND_INIT_USER_CALL: u32 = 118;
493pub const ZEND_SEND_ARRAY: u32 = 119;
494pub const ZEND_SEND_USER: u32 = 120;
495pub const ZEND_STRLEN: u32 = 121;
496pub const ZEND_DEFINED: u32 = 122;
497pub const ZEND_TYPE_CHECK: u32 = 123;
498pub const ZEND_VERIFY_RETURN_TYPE: u32 = 124;
499pub const ZEND_FE_RESET_RW: u32 = 125;
500pub const ZEND_FE_FETCH_RW: u32 = 126;
501pub const ZEND_FE_FREE: u32 = 127;
502pub const ZEND_INIT_DYNAMIC_CALL: u32 = 128;
503pub const ZEND_DO_ICALL: u32 = 129;
504pub const ZEND_DO_UCALL: u32 = 130;
505pub const ZEND_DO_FCALL_BY_NAME: u32 = 131;
506pub const ZEND_PRE_INC_OBJ: u32 = 132;
507pub const ZEND_PRE_DEC_OBJ: u32 = 133;
508pub const ZEND_POST_INC_OBJ: u32 = 134;
509pub const ZEND_POST_DEC_OBJ: u32 = 135;
510pub const ZEND_ECHO: u32 = 136;
511pub const ZEND_OP_DATA: u32 = 137;
512pub const ZEND_INSTANCEOF: u32 = 138;
513pub const ZEND_GENERATOR_CREATE: u32 = 139;
514pub const ZEND_MAKE_REF: u32 = 140;
515pub const ZEND_DECLARE_FUNCTION: u32 = 141;
516pub const ZEND_DECLARE_LAMBDA_FUNCTION: u32 = 142;
517pub const ZEND_DECLARE_CONST: u32 = 143;
518pub const ZEND_DECLARE_CLASS: u32 = 144;
519pub const ZEND_DECLARE_CLASS_DELAYED: u32 = 145;
520pub const ZEND_DECLARE_ANON_CLASS: u32 = 146;
521pub const ZEND_ADD_ARRAY_UNPACK: u32 = 147;
522pub const ZEND_ISSET_ISEMPTY_PROP_OBJ: u32 = 148;
523pub const ZEND_HANDLE_EXCEPTION: u32 = 149;
524pub const ZEND_USER_OPCODE: u32 = 150;
525pub const ZEND_ASSERT_CHECK: u32 = 151;
526pub const ZEND_JMP_SET: u32 = 152;
527pub const ZEND_UNSET_CV: u32 = 153;
528pub const ZEND_ISSET_ISEMPTY_CV: u32 = 154;
529pub const ZEND_FETCH_LIST_W: u32 = 155;
530pub const ZEND_SEPARATE: u32 = 156;
531pub const ZEND_FETCH_CLASS_NAME: u32 = 157;
532pub const ZEND_CALL_TRAMPOLINE: u32 = 158;
533pub const ZEND_DISCARD_EXCEPTION: u32 = 159;
534pub const ZEND_YIELD: u32 = 160;
535pub const ZEND_GENERATOR_RETURN: u32 = 161;
536pub const ZEND_FAST_CALL: u32 = 162;
537pub const ZEND_FAST_RET: u32 = 163;
538pub const ZEND_RECV_VARIADIC: u32 = 164;
539pub const ZEND_SEND_UNPACK: u32 = 165;
540pub const ZEND_YIELD_FROM: u32 = 166;
541pub const ZEND_COPY_TMP: u32 = 167;
542pub const ZEND_BIND_GLOBAL: u32 = 168;
543pub const ZEND_COALESCE: u32 = 169;
544pub const ZEND_SPACESHIP: u32 = 170;
545pub const ZEND_FUNC_NUM_ARGS: u32 = 171;
546pub const ZEND_FUNC_GET_ARGS: u32 = 172;
547pub const ZEND_FETCH_STATIC_PROP_R: u32 = 173;
548pub const ZEND_FETCH_STATIC_PROP_W: u32 = 174;
549pub const ZEND_FETCH_STATIC_PROP_RW: u32 = 175;
550pub const ZEND_FETCH_STATIC_PROP_IS: u32 = 176;
551pub const ZEND_FETCH_STATIC_PROP_FUNC_ARG: u32 = 177;
552pub const ZEND_FETCH_STATIC_PROP_UNSET: u32 = 178;
553pub const ZEND_UNSET_STATIC_PROP: u32 = 179;
554pub const ZEND_ISSET_ISEMPTY_STATIC_PROP: u32 = 180;
555pub const ZEND_FETCH_CLASS_CONSTANT: u32 = 181;
556pub const ZEND_BIND_LEXICAL: u32 = 182;
557pub const ZEND_BIND_STATIC: u32 = 183;
558pub const ZEND_FETCH_THIS: u32 = 184;
559pub const ZEND_SEND_FUNC_ARG: u32 = 185;
560pub const ZEND_ISSET_ISEMPTY_THIS: u32 = 186;
561pub const ZEND_SWITCH_LONG: u32 = 187;
562pub const ZEND_SWITCH_STRING: u32 = 188;
563pub const ZEND_IN_ARRAY: u32 = 189;
564pub const ZEND_COUNT: u32 = 190;
565pub const ZEND_GET_CLASS: u32 = 191;
566pub const ZEND_GET_CALLED_CLASS: u32 = 192;
567pub const ZEND_GET_TYPE: u32 = 193;
568pub const ZEND_ARRAY_KEY_EXISTS: u32 = 194;
569pub const ZEND_VM_LAST_OPCODE: u32 = 194;
570pub const ZEND_FETCH_CLASS_DEFAULT: u32 = 0;
571pub const ZEND_FETCH_CLASS_SELF: u32 = 1;
572pub const ZEND_FETCH_CLASS_PARENT: u32 = 2;
573pub const ZEND_FETCH_CLASS_STATIC: u32 = 3;
574pub const ZEND_FETCH_CLASS_AUTO: u32 = 4;
575pub const ZEND_FETCH_CLASS_INTERFACE: u32 = 5;
576pub const ZEND_FETCH_CLASS_TRAIT: u32 = 6;
577pub const ZEND_FETCH_CLASS_MASK: u32 = 15;
578pub const ZEND_FETCH_CLASS_NO_AUTOLOAD: u32 = 128;
579pub const ZEND_FETCH_CLASS_SILENT: u32 = 256;
580pub const ZEND_FETCH_CLASS_EXCEPTION: u32 = 512;
581pub const ZEND_FETCH_CLASS_ALLOW_UNLINKED: u32 = 1024;
582pub const ZEND_FETCH_CLASS_ALLOW_NEARLY_LINKED: u32 = 2048;
583pub const ZEND_PARAM_REF: u32 = 1;
584pub const ZEND_PARAM_VARIADIC: u32 = 2;
585pub const ZEND_NAME_FQ: u32 = 0;
586pub const ZEND_NAME_NOT_FQ: u32 = 1;
587pub const ZEND_NAME_RELATIVE: u32 = 2;
588pub const ZEND_TYPE_NULLABLE: u32 = 256;
589pub const ZEND_ARRAY_SYNTAX_LIST: u32 = 1;
590pub const ZEND_ARRAY_SYNTAX_LONG: u32 = 2;
591pub const ZEND_ARRAY_SYNTAX_SHORT: u32 = 3;
592pub const ZEND_INTERNAL_FUNCTION: u32 = 1;
593pub const ZEND_USER_FUNCTION: u32 = 2;
594pub const ZEND_OVERLOADED_FUNCTION: u32 = 3;
595pub const ZEND_EVAL_CODE: u32 = 4;
596pub const ZEND_OVERLOADED_FUNCTION_TEMPORARY: u32 = 5;
597pub const ZEND_INTERNAL_CLASS: u32 = 1;
598pub const ZEND_USER_CLASS: u32 = 2;
599pub const ZEND_EVAL: u32 = 1;
600pub const ZEND_INCLUDE: u32 = 2;
601pub const ZEND_INCLUDE_ONCE: u32 = 4;
602pub const ZEND_REQUIRE: u32 = 8;
603pub const ZEND_REQUIRE_ONCE: u32 = 16;
604pub const ZEND_FETCH_GLOBAL: u32 = 2;
605pub const ZEND_FETCH_LOCAL: u32 = 4;
606pub const ZEND_FETCH_GLOBAL_LOCK: u32 = 8;
607pub const ZEND_FETCH_TYPE_MASK: u32 = 14;
608pub const ZEND_FETCH_REF: u32 = 1;
609pub const ZEND_FETCH_DIM_WRITE: u32 = 2;
610pub const ZEND_FETCH_OBJ_WRITE: u32 = 3;
611pub const ZEND_FETCH_OBJ_FLAGS: u32 = 3;
612pub const ZEND_ISEMPTY: u32 = 1;
613pub const ZEND_LAST_CATCH: u32 = 1;
614pub const ZEND_FREE_ON_RETURN: u32 = 1;
615pub const ZEND_FREE_SWITCH: u32 = 2;
616pub const ZEND_SEND_BY_VAL: u32 = 0;
617pub const ZEND_SEND_BY_REF: u32 = 1;
618pub const ZEND_SEND_PREFER_REF: u32 = 2;
619pub const ZEND_DIM_IS: u32 = 1;
620pub const ZEND_DIM_ALTERNATIVE_SYNTAX: u32 = 2;
621pub const IS_CONSTANT_UNQUALIFIED: u32 = 16;
622pub const IS_CONSTANT_CLASS: u32 = 128;
623pub const IS_CONSTANT_IN_NAMESPACE: u32 = 256;
624pub const ZEND_RETURN_VAL: u32 = 0;
625pub const ZEND_RETURN_REF: u32 = 1;
626pub const ZEND_BIND_VAL: u32 = 0;
627pub const ZEND_BIND_REF: u32 = 1;
628pub const ZEND_BIND_IMPLICIT: u32 = 2;
629pub const ZEND_RETURNS_FUNCTION: u32 = 1;
630pub const ZEND_RETURNS_VALUE: u32 = 2;
631pub const ZEND_ARRAY_ELEMENT_REF: u32 = 1;
632pub const ZEND_ARRAY_NOT_PACKED: u32 = 2;
633pub const ZEND_ARRAY_SIZE_SHIFT: u32 = 2;
634pub const ZEND_PARENTHESIZED_CONDITIONAL: u32 = 1;
635pub const ZEND_SYMBOL_CLASS: u32 = 1;
636pub const ZEND_SYMBOL_FUNCTION: u32 = 2;
637pub const ZEND_SYMBOL_CONST: u32 = 4;
638pub const ZEND_PARENTHESIZED_CONCAT: u32 = 252;
639pub const ZEND_GOTO: u32 = 253;
640pub const ZEND_BRK: u32 = 254;
641pub const ZEND_CONT: u32 = 255;
642pub const ZEND_CLONE_FUNC_NAME: &'static [u8; 8usize] = b"__clone\0";
643pub const ZEND_CONSTRUCTOR_FUNC_NAME: &'static [u8; 12usize] = b"__construct\0";
644pub const ZEND_DESTRUCTOR_FUNC_NAME: &'static [u8; 11usize] = b"__destruct\0";
645pub const ZEND_GET_FUNC_NAME: &'static [u8; 6usize] = b"__get\0";
646pub const ZEND_SET_FUNC_NAME: &'static [u8; 6usize] = b"__set\0";
647pub const ZEND_UNSET_FUNC_NAME: &'static [u8; 8usize] = b"__unset\0";
648pub const ZEND_ISSET_FUNC_NAME: &'static [u8; 8usize] = b"__isset\0";
649pub const ZEND_CALL_FUNC_NAME: &'static [u8; 7usize] = b"__call\0";
650pub const ZEND_CALLSTATIC_FUNC_NAME: &'static [u8; 13usize] = b"__callstatic\0";
651pub const ZEND_TOSTRING_FUNC_NAME: &'static [u8; 11usize] = b"__tostring\0";
652pub const ZEND_AUTOLOAD_FUNC_NAME: &'static [u8; 11usize] = b"__autoload\0";
653pub const ZEND_INVOKE_FUNC_NAME: &'static [u8; 9usize] = b"__invoke\0";
654pub const ZEND_DEBUGINFO_FUNC_NAME: &'static [u8; 12usize] = b"__debuginfo\0";
655pub const ZEND_COMPILE_EXTENDED_STMT: u32 = 1;
656pub const ZEND_COMPILE_EXTENDED_FCALL: u32 = 2;
657pub const ZEND_COMPILE_EXTENDED_INFO: u32 = 3;
658pub const ZEND_COMPILE_HANDLE_OP_ARRAY: u32 = 4;
659pub const ZEND_COMPILE_IGNORE_INTERNAL_FUNCTIONS: u32 = 8;
660pub const ZEND_COMPILE_IGNORE_INTERNAL_CLASSES: u32 = 16;
661pub const ZEND_COMPILE_DELAYED_BINDING: u32 = 32;
662pub const ZEND_COMPILE_NO_CONSTANT_SUBSTITUTION: u32 = 64;
663pub const ZEND_COMPILE_NO_BUILTIN_STRLEN: u32 = 128;
664pub const ZEND_COMPILE_NO_PERSISTENT_CONSTANT_SUBSTITUTION: u32 = 256;
665pub const ZEND_COMPILE_IGNORE_USER_FUNCTIONS: u32 = 512;
666pub const ZEND_COMPILE_GUARDS: u32 = 1024;
667pub const ZEND_COMPILE_NO_BUILTINS: u32 = 2048;
668pub const ZEND_COMPILE_WITH_FILE_CACHE: u32 = 4096;
669pub const ZEND_COMPILE_IGNORE_OTHER_FILES: u32 = 8192;
670pub const ZEND_COMPILE_WITHOUT_EXECUTION: u32 = 16384;
671pub const ZEND_COMPILE_PRELOAD: u32 = 32768;
672pub const ZEND_COMPILE_NO_JUMPTABLES: u32 = 65536;
673pub const ZEND_COMPILE_PRELOAD_IN_CHILD: u32 = 131072;
674pub const ZEND_COMPILE_DEFAULT: u32 = 4;
675pub const ZEND_COMPILE_DEFAULT_FOR_EVAL: u32 = 0;
676pub const ZEND_BUILD_TS: &'static [u8; 5usize] = b",NTS\0";
677pub const ZEND_MODULE_API_NO: u32 = 20190902;
678pub const USING_ZTS: u32 = 0;
679pub const MODULE_PERSISTENT: u32 = 1;
680pub const MODULE_TEMPORARY: u32 = 2;
681pub const MODULE_DEP_REQUIRED: u32 = 1;
682pub const MODULE_DEP_CONFLICTS: u32 = 2;
683pub const MODULE_DEP_OPTIONAL: u32 = 3;
684pub const ZEND_USER_OPCODE_CONTINUE: u32 = 0;
685pub const ZEND_USER_OPCODE_RETURN: u32 = 1;
686pub const ZEND_USER_OPCODE_DISPATCH: u32 = 2;
687pub const ZEND_USER_OPCODE_ENTER: u32 = 3;
688pub const ZEND_USER_OPCODE_LEAVE: u32 = 4;
689pub const ZEND_USER_OPCODE_DISPATCH_TO: u32 = 256;
690pub const ZEND_PARSE_PARAMS_QUIET: u32 = 2;
691pub const ZEND_PARSE_PARAMS_THROW: u32 = 4;
692pub const IS_CALLABLE_CHECK_SYNTAX_ONLY: u32 = 1;
693pub const IS_CALLABLE_CHECK_NO_ACCESS: u32 = 2;
694pub const IS_CALLABLE_CHECK_IS_STATIC: u32 = 4;
695pub const IS_CALLABLE_CHECK_SILENT: u32 = 8;
696pub const IS_CALLABLE_STRICT: u32 = 4;
697pub const PHP_OS_FAMILY: &'static [u8; 6usize] = b"Linux\0";
698pub const PHP_DEBUG: u32 = 0;
699pub const PHP_DIR_SEPARATOR: u8 = 47u8;
700pub const PHP_EOL: &'static [u8; 2usize] = b"\n\0";
701pub const PHP_ODBC_CFLAGS: &'static [u8; 1usize] = b"\0";
702pub const PHP_ODBC_LFLAGS: &'static [u8; 1usize] = b"\0";
703pub const PHP_ODBC_LIBS: &'static [u8; 1usize] = b"\0";
704pub const PHP_ODBC_TYPE: &'static [u8; 1usize] = b"\0";
705pub const PHP_OCI8_DIR: &'static [u8; 1usize] = b"\0";
706pub const PHP_OCI8_ORACLE_VERSION: &'static [u8; 1usize] = b"\0";
707pub const PHP_PROG_SENDMAIL: &'static [u8; 19usize] = b"/usr/sbin/sendmail\0";
708pub const PHP_INCLUDE_PATH: &'static [u8; 17usize] = b".:/usr/share/php\0";
709pub const PHP_EXTENSION_DIR: &'static [u8; 22usize] = b"/usr/lib/php/20190902\0";
710pub const PHP_PREFIX: &'static [u8; 5usize] = b"/usr\0";
711pub const PHP_BINDIR: &'static [u8; 9usize] = b"/usr/bin\0";
712pub const PHP_SBINDIR: &'static [u8; 10usize] = b"/usr/sbin\0";
713pub const PHP_MANDIR: &'static [u8; 15usize] = b"/usr/share/man\0";
714pub const PHP_LIBDIR: &'static [u8; 13usize] = b"/usr/lib/php\0";
715pub const PHP_DATADIR: &'static [u8; 19usize] = b"/usr/share/php/7.4\0";
716pub const PHP_SYSCONFDIR: &'static [u8; 5usize] = b"/etc\0";
717pub const PHP_LOCALSTATEDIR: &'static [u8; 5usize] = b"/var\0";
718pub const PHP_CONFIG_FILE_PATH: &'static [u8; 17usize] = b"/etc/php/7.4/cli\0";
719pub const PHP_CONFIG_FILE_SCAN_DIR: &'static [u8; 24usize] = b"/etc/php/7.4/cli/conf.d\0";
720pub const PHP_SHLIB_SUFFIX: &'static [u8; 3usize] = b"so\0";
721pub const PHP_SHLIB_EXT_PREFIX: &'static [u8; 1usize] = b"\0";
722pub const PHP_MIME_TYPE: &'static [u8; 24usize] = b"application/x-httpd-php\0";
723pub const PHP_SYSLOG_FILTER_ALL: u32 = 0;
724pub const PHP_SYSLOG_FILTER_NO_CTRL: u32 = 1;
725pub const PHP_SYSLOG_FILTER_ASCII: u32 = 2;
726pub const PHP_SYSLOG_FILTER_RAW: u32 = 3;
727pub const PHP_OUTPUT_NEWAPI: u32 = 1;
728pub const PHP_OUTPUT_HANDLER_WRITE: u32 = 0;
729pub const PHP_OUTPUT_HANDLER_START: u32 = 1;
730pub const PHP_OUTPUT_HANDLER_CLEAN: u32 = 2;
731pub const PHP_OUTPUT_HANDLER_FLUSH: u32 = 4;
732pub const PHP_OUTPUT_HANDLER_FINAL: u32 = 8;
733pub const PHP_OUTPUT_HANDLER_CONT: u32 = 0;
734pub const PHP_OUTPUT_HANDLER_END: u32 = 8;
735pub const PHP_OUTPUT_HANDLER_INTERNAL: u32 = 0;
736pub const PHP_OUTPUT_HANDLER_USER: u32 = 1;
737pub const PHP_OUTPUT_HANDLER_CLEANABLE: u32 = 16;
738pub const PHP_OUTPUT_HANDLER_FLUSHABLE: u32 = 32;
739pub const PHP_OUTPUT_HANDLER_REMOVABLE: u32 = 64;
740pub const PHP_OUTPUT_HANDLER_STDFLAGS: u32 = 112;
741pub const PHP_OUTPUT_HANDLER_STARTED: u32 = 4096;
742pub const PHP_OUTPUT_HANDLER_DISABLED: u32 = 8192;
743pub const PHP_OUTPUT_HANDLER_PROCESSED: u32 = 16384;
744pub const PHP_OUTPUT_POP_TRY: u32 = 0;
745pub const PHP_OUTPUT_POP_FORCE: u32 = 1;
746pub const PHP_OUTPUT_POP_DISCARD: u32 = 16;
747pub const PHP_OUTPUT_POP_SILENT: u32 = 256;
748pub const PHP_OUTPUT_IMPLICITFLUSH: u32 = 1;
749pub const PHP_OUTPUT_DISABLED: u32 = 2;
750pub const PHP_OUTPUT_WRITTEN: u32 = 4;
751pub const PHP_OUTPUT_SENT: u32 = 8;
752pub const PHP_OUTPUT_ACTIVE: u32 = 16;
753pub const PHP_OUTPUT_LOCKED: u32 = 32;
754pub const PHP_OUTPUT_ACTIVATED: u32 = 1048576;
755pub const PHP_OUTPUT_HANDLER_ALIGNTO_SIZE: u32 = 4096;
756pub const PHP_OUTPUT_HANDLER_DEFAULT_SIZE: u32 = 16384;
757pub const PHP_STREAM_NOTIFIER_PROGRESS: u32 = 1;
758pub const PHP_STREAM_NOTIFY_RESOLVE: u32 = 1;
759pub const PHP_STREAM_NOTIFY_CONNECT: u32 = 2;
760pub const PHP_STREAM_NOTIFY_AUTH_REQUIRED: u32 = 3;
761pub const PHP_STREAM_NOTIFY_MIME_TYPE_IS: u32 = 4;
762pub const PHP_STREAM_NOTIFY_FILE_SIZE_IS: u32 = 5;
763pub const PHP_STREAM_NOTIFY_REDIRECTED: u32 = 6;
764pub const PHP_STREAM_NOTIFY_PROGRESS: u32 = 7;
765pub const PHP_STREAM_NOTIFY_COMPLETED: u32 = 8;
766pub const PHP_STREAM_NOTIFY_FAILURE: u32 = 9;
767pub const PHP_STREAM_NOTIFY_AUTH_RESULT: u32 = 10;
768pub const PHP_STREAM_NOTIFY_SEVERITY_INFO: u32 = 0;
769pub const PHP_STREAM_NOTIFY_SEVERITY_WARN: u32 = 1;
770pub const PHP_STREAM_NOTIFY_SEVERITY_ERR: u32 = 2;
771pub const PHP_STREAM_FILTER_READ: u32 = 1;
772pub const PHP_STREAM_FILTER_WRITE: u32 = 2;
773pub const PHP_STREAM_FILTER_ALL: u32 = 3;
774pub const PHP_STREAM_FLAG_NO_SEEK: u32 = 1;
775pub const PHP_STREAM_FLAG_NO_BUFFER: u32 = 2;
776pub const PHP_STREAM_FLAG_EOL_UNIX: u32 = 0;
777pub const PHP_STREAM_FLAG_DETECT_EOL: u32 = 4;
778pub const PHP_STREAM_FLAG_EOL_MAC: u32 = 8;
779pub const PHP_STREAM_FLAG_AVOID_BLOCKING: u32 = 16;
780pub const PHP_STREAM_FLAG_NO_CLOSE: u32 = 32;
781pub const PHP_STREAM_FLAG_IS_DIR: u32 = 64;
782pub const PHP_STREAM_FLAG_NO_FCLOSE: u32 = 128;
783pub const PHP_STREAM_FLAG_WAS_WRITTEN: u32 = 2147483648;
784pub const PHP_STREAM_FCLOSE_NONE: u32 = 0;
785pub const PHP_STREAM_FCLOSE_FDOPEN: u32 = 1;
786pub const PHP_STREAM_FCLOSE_FOPENCOOKIE: u32 = 2;
787pub const PHP_STREAM_PERSISTENT_SUCCESS: u32 = 0;
788pub const PHP_STREAM_PERSISTENT_FAILURE: u32 = 1;
789pub const PHP_STREAM_PERSISTENT_NOT_EXIST: u32 = 2;
790pub const PHP_STREAM_FREE_CALL_DTOR: u32 = 1;
791pub const PHP_STREAM_FREE_RELEASE_STREAM: u32 = 2;
792pub const PHP_STREAM_FREE_PRESERVE_HANDLE: u32 = 4;
793pub const PHP_STREAM_FREE_RSRC_DTOR: u32 = 8;
794pub const PHP_STREAM_FREE_PERSISTENT: u32 = 16;
795pub const PHP_STREAM_FREE_IGNORE_ENCLOSING: u32 = 32;
796pub const PHP_STREAM_FREE_KEEP_RSRC: u32 = 64;
797pub const PHP_STREAM_FREE_CLOSE: u32 = 3;
798pub const PHP_STREAM_FREE_CLOSE_CASTED: u32 = 7;
799pub const PHP_STREAM_FREE_CLOSE_PERSISTENT: u32 = 19;
800pub const PHP_STREAM_MKDIR_RECURSIVE: u32 = 1;
801pub const PHP_STREAM_URL_STAT_LINK: u32 = 1;
802pub const PHP_STREAM_URL_STAT_QUIET: u32 = 2;
803pub const PHP_STREAM_URL_STAT_NOCACHE: u32 = 4;
804pub const PHP_STREAM_OPTION_BLOCKING: u32 = 1;
805pub const PHP_STREAM_OPTION_READ_BUFFER: u32 = 2;
806pub const PHP_STREAM_OPTION_WRITE_BUFFER: u32 = 3;
807pub const PHP_STREAM_BUFFER_NONE: u32 = 0;
808pub const PHP_STREAM_BUFFER_LINE: u32 = 1;
809pub const PHP_STREAM_BUFFER_FULL: u32 = 2;
810pub const PHP_STREAM_OPTION_READ_TIMEOUT: u32 = 4;
811pub const PHP_STREAM_OPTION_SET_CHUNK_SIZE: u32 = 5;
812pub const PHP_STREAM_OPTION_LOCKING: u32 = 6;
813pub const PHP_STREAM_LOCK_SUPPORTED: u32 = 1;
814pub const PHP_STREAM_OPTION_XPORT_API: u32 = 7;
815pub const PHP_STREAM_OPTION_CRYPTO_API: u32 = 8;
816pub const PHP_STREAM_OPTION_MMAP_API: u32 = 9;
817pub const PHP_STREAM_OPTION_TRUNCATE_API: u32 = 10;
818pub const PHP_STREAM_TRUNCATE_SUPPORTED: u32 = 0;
819pub const PHP_STREAM_TRUNCATE_SET_SIZE: u32 = 1;
820pub const PHP_STREAM_OPTION_META_DATA_API: u32 = 11;
821pub const PHP_STREAM_OPTION_CHECK_LIVENESS: u32 = 12;
822pub const PHP_STREAM_OPTION_PIPE_BLOCKING: u32 = 13;
823pub const PHP_STREAM_OPTION_RETURN_OK: u32 = 0;
824pub const PHP_STREAM_OPTION_RETURN_ERR: i32 = -1;
825pub const PHP_STREAM_OPTION_RETURN_NOTIMPL: i32 = -2;
826pub const PHP_STREAM_MMAP_ALL: u32 = 0;
827pub const PHP_STREAM_MMAP_MAX: u32 = 536870912;
828pub const PHP_STREAM_AS_STDIO: u32 = 0;
829pub const PHP_STREAM_AS_FD: u32 = 1;
830pub const PHP_STREAM_AS_SOCKETD: u32 = 2;
831pub const PHP_STREAM_AS_FD_FOR_SELECT: u32 = 3;
832pub const PHP_STREAM_CAST_TRY_HARD: u32 = 2147483648;
833pub const PHP_STREAM_CAST_RELEASE: u32 = 1073741824;
834pub const PHP_STREAM_CAST_INTERNAL: u32 = 536870912;
835pub const PHP_STREAM_CAST_MASK: u32 = 3758096384;
836pub const PHP_STREAM_UNCHANGED: u32 = 0;
837pub const PHP_STREAM_RELEASED: u32 = 1;
838pub const PHP_STREAM_FAILED: u32 = 2;
839pub const PHP_STREAM_CRITICAL: u32 = 3;
840pub const PHP_STREAM_NO_PREFERENCE: u32 = 0;
841pub const PHP_STREAM_PREFER_STDIO: u32 = 1;
842pub const PHP_STREAM_FORCE_CONVERSION: u32 = 2;
843pub const PHP_STREAM_IS_URL: u32 = 1;
844pub const PHP_STREAM_META_TOUCH: u32 = 1;
845pub const PHP_STREAM_META_OWNER_NAME: u32 = 2;
846pub const PHP_STREAM_META_OWNER: u32 = 3;
847pub const PHP_STREAM_META_GROUP_NAME: u32 = 4;
848pub const PHP_STREAM_META_GROUP: u32 = 5;
849pub const PHP_STREAM_META_ACCESS: u32 = 6;
850pub const PHP_STREAM_MAX_MEM: u32 = 2097152;
851pub const PHP_DISPLAY_ERRORS_STDOUT: u32 = 1;
852pub const PHP_DISPLAY_ERRORS_STDERR: u32 = 2;
853pub const ZEND_INI_USER: u32 = 1;
854pub const ZEND_INI_PERDIR: u32 = 2;
855pub const ZEND_INI_SYSTEM: u32 = 4;
856pub const ZEND_INI_ALL: u32 = 7;
857pub const ZEND_INI_DISPLAY_ORIG: u32 = 1;
858pub const ZEND_INI_DISPLAY_ACTIVE: u32 = 2;
859pub const ZEND_INI_STAGE_STARTUP: u32 = 1;
860pub const ZEND_INI_STAGE_SHUTDOWN: u32 = 2;
861pub const ZEND_INI_STAGE_ACTIVATE: u32 = 4;
862pub const ZEND_INI_STAGE_DEACTIVATE: u32 = 8;
863pub const ZEND_INI_STAGE_RUNTIME: u32 = 16;
864pub const ZEND_INI_STAGE_HTACCESS: u32 = 32;
865pub const ZEND_INI_STAGE_IN_REQUEST: u32 = 60;
866pub const ZEND_INI_PARSER_ENTRY: u32 = 1;
867pub const ZEND_INI_PARSER_SECTION: u32 = 2;
868pub const ZEND_INI_PARSER_POP_ENTRY: u32 = 3;
869pub const PHP_INI_USER: u32 = 1;
870pub const PHP_INI_PERDIR: u32 = 2;
871pub const PHP_INI_SYSTEM: u32 = 4;
872pub const PHP_INI_ALL: u32 = 7;
873pub const PHP_INI_DISPLAY_ORIG: u32 = 1;
874pub const PHP_INI_DISPLAY_ACTIVE: u32 = 2;
875pub const PHP_INI_STAGE_STARTUP: u32 = 1;
876pub const PHP_INI_STAGE_SHUTDOWN: u32 = 2;
877pub const PHP_INI_STAGE_ACTIVATE: u32 = 4;
878pub const PHP_INI_STAGE_DEACTIVATE: u32 = 8;
879pub const PHP_INI_STAGE_RUNTIME: u32 = 16;
880pub const PHP_INI_STAGE_HTACCESS: u32 = 32;
881pub const PHP_USER_CONSTANT: u32 = 8388607;
882pub const ZEND_GET_CONSTANT_NO_DEPRECATION_CHECK: u32 = 4096;
883pub const PHP_CONNECTION_NORMAL: u32 = 0;
884pub const PHP_CONNECTION_ABORTED: u32 = 1;
885pub const PHP_CONNECTION_TIMEOUT: u32 = 2;
886pub const PHP_ENTRY_NAME_COLOR: &'static [u8; 5usize] = b"#ccf\0";
887pub const PHP_CONTENTS_COLOR: &'static [u8; 5usize] = b"#ccc\0";
888pub const PHP_HEADER_COLOR: &'static [u8; 5usize] = b"#99c\0";
889pub const PHP_INFO_GENERAL: u32 = 1;
890pub const PHP_INFO_CREDITS: u32 = 2;
891pub const PHP_INFO_CONFIGURATION: u32 = 4;
892pub const PHP_INFO_MODULES: u32 = 8;
893pub const PHP_INFO_ENVIRONMENT: u32 = 16;
894pub const PHP_INFO_VARIABLES: u32 = 32;
895pub const PHP_INFO_LICENSE: u32 = 64;
896pub const PHP_INFO_ALL: u32 = 4294967295;
897pub const PHP_CREDITS_GROUP: u32 = 1;
898pub const PHP_CREDITS_GENERAL: u32 = 2;
899pub const PHP_CREDITS_SAPI: u32 = 4;
900pub const PHP_CREDITS_MODULES: u32 = 8;
901pub const PHP_CREDITS_DOCS: u32 = 16;
902pub const PHP_CREDITS_FULLPAGE: u32 = 32;
903pub const PHP_CREDITS_QA: u32 = 64;
904pub const PHP_CREDITS_WEB: u32 = 128;
905pub const PHP_CREDITS_PACKAGING: u32 = 256;
906pub const PHP_CREDITS_ALL: u32 = 4294967295;
907pub 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" ;
908pub 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" ;
909pub 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" ;
910pub const ZEND_EXTENSION_API_NO: u32 = 320190902;
911pub const ZEND_EXTMSG_NEW_EXTENSION: u32 = 1;
912pub const ZEND_EXTENSIONS_HAVE_OP_ARRAY_CTOR: u32 = 1;
913pub const ZEND_EXTENSIONS_HAVE_OP_ARRAY_DTOR: u32 = 2;
914pub const ZEND_EXTENSIONS_HAVE_OP_ARRAY_HANDLER: u32 = 4;
915pub const ZEND_EXTENSIONS_HAVE_OP_ARRAY_PERSIST_CALC: u32 = 8;
916pub const ZEND_EXTENSIONS_HAVE_OP_ARRAY_PERSIST: u32 = 16;
917pub type size_t = ::std::os::raw::c_ulong;
918pub type __uint8_t = ::std::os::raw::c_uchar;
919pub type __uint16_t = ::std::os::raw::c_ushort;
920pub type __uint32_t = ::std::os::raw::c_uint;
921pub type __int64_t = ::std::os::raw::c_long;
922pub type __uint64_t = ::std::os::raw::c_ulong;
923pub type __dev_t = ::std::os::raw::c_ulong;
924pub type __uid_t = ::std::os::raw::c_uint;
925pub type __gid_t = ::std::os::raw::c_uint;
926pub type __ino_t = ::std::os::raw::c_ulong;
927pub type __mode_t = ::std::os::raw::c_uint;
928pub type __nlink_t = ::std::os::raw::c_ulong;
929pub type __off_t = ::std::os::raw::c_long;
930pub type __off64_t = ::std::os::raw::c_long;
931pub type __pid_t = ::std::os::raw::c_int;
932pub type __clock_t = ::std::os::raw::c_long;
933pub type __time_t = ::std::os::raw::c_long;
934pub type __suseconds_t = ::std::os::raw::c_long;
935pub type __blksize_t = ::std::os::raw::c_long;
936pub type __blkcnt_t = ::std::os::raw::c_long;
937pub type __ssize_t = ::std::os::raw::c_long;
938pub type __syscall_slong_t = ::std::os::raw::c_long;
939pub type __socklen_t = ::std::os::raw::c_uint;
940pub type ssize_t = __ssize_t;
941pub type time_t = __time_t;
942#[repr(C)]
943#[derive(Debug, Copy, Clone)]
944pub struct __sigset_t {
945    pub __val: [::std::os::raw::c_ulong; 16usize],
946}
947#[test]
948fn bindgen_test_layout___sigset_t() {
949    assert_eq!(
950        ::std::mem::size_of::<__sigset_t>(),
951        128usize,
952        concat!("Size of: ", stringify!(__sigset_t))
953    );
954    assert_eq!(
955        ::std::mem::align_of::<__sigset_t>(),
956        8usize,
957        concat!("Alignment of ", stringify!(__sigset_t))
958    );
959    assert_eq!(
960        unsafe { &(*(::std::ptr::null::<__sigset_t>())).__val as *const _ as usize },
961        0usize,
962        concat!(
963            "Offset of field: ",
964            stringify!(__sigset_t),
965            "::",
966            stringify!(__val)
967        )
968    );
969}
970#[repr(C)]
971#[derive(Debug, Copy, Clone)]
972pub struct timeval {
973    pub tv_sec: __time_t,
974    pub tv_usec: __suseconds_t,
975}
976#[test]
977fn bindgen_test_layout_timeval() {
978    assert_eq!(
979        ::std::mem::size_of::<timeval>(),
980        16usize,
981        concat!("Size of: ", stringify!(timeval))
982    );
983    assert_eq!(
984        ::std::mem::align_of::<timeval>(),
985        8usize,
986        concat!("Alignment of ", stringify!(timeval))
987    );
988    assert_eq!(
989        unsafe { &(*(::std::ptr::null::<timeval>())).tv_sec as *const _ as usize },
990        0usize,
991        concat!(
992            "Offset of field: ",
993            stringify!(timeval),
994            "::",
995            stringify!(tv_sec)
996        )
997    );
998    assert_eq!(
999        unsafe { &(*(::std::ptr::null::<timeval>())).tv_usec as *const _ as usize },
1000        8usize,
1001        concat!(
1002            "Offset of field: ",
1003            stringify!(timeval),
1004            "::",
1005            stringify!(tv_usec)
1006        )
1007    );
1008}
1009#[repr(C)]
1010#[derive(Debug, Copy, Clone)]
1011pub struct timespec {
1012    pub tv_sec: __time_t,
1013    pub tv_nsec: __syscall_slong_t,
1014}
1015#[test]
1016fn bindgen_test_layout_timespec() {
1017    assert_eq!(
1018        ::std::mem::size_of::<timespec>(),
1019        16usize,
1020        concat!("Size of: ", stringify!(timespec))
1021    );
1022    assert_eq!(
1023        ::std::mem::align_of::<timespec>(),
1024        8usize,
1025        concat!("Alignment of ", stringify!(timespec))
1026    );
1027    assert_eq!(
1028        unsafe { &(*(::std::ptr::null::<timespec>())).tv_sec as *const _ as usize },
1029        0usize,
1030        concat!(
1031            "Offset of field: ",
1032            stringify!(timespec),
1033            "::",
1034            stringify!(tv_sec)
1035        )
1036    );
1037    assert_eq!(
1038        unsafe { &(*(::std::ptr::null::<timespec>())).tv_nsec as *const _ as usize },
1039        8usize,
1040        concat!(
1041            "Offset of field: ",
1042            stringify!(timespec),
1043            "::",
1044            stringify!(tv_nsec)
1045        )
1046    );
1047}
1048pub type va_list = __builtin_va_list;
1049pub type FILE = _IO_FILE;
1050#[repr(C)]
1051#[derive(Debug, Copy, Clone)]
1052pub struct _IO_marker {
1053    _unused: [u8; 0],
1054}
1055#[repr(C)]
1056#[derive(Debug, Copy, Clone)]
1057pub struct _IO_codecvt {
1058    _unused: [u8; 0],
1059}
1060#[repr(C)]
1061#[derive(Debug, Copy, Clone)]
1062pub struct _IO_wide_data {
1063    _unused: [u8; 0],
1064}
1065pub type _IO_lock_t = ::std::os::raw::c_void;
1066#[repr(C)]
1067#[derive(Debug, Copy, Clone)]
1068pub struct _IO_FILE {
1069    pub _flags: ::std::os::raw::c_int,
1070    pub _IO_read_ptr: *mut ::std::os::raw::c_char,
1071    pub _IO_read_end: *mut ::std::os::raw::c_char,
1072    pub _IO_read_base: *mut ::std::os::raw::c_char,
1073    pub _IO_write_base: *mut ::std::os::raw::c_char,
1074    pub _IO_write_ptr: *mut ::std::os::raw::c_char,
1075    pub _IO_write_end: *mut ::std::os::raw::c_char,
1076    pub _IO_buf_base: *mut ::std::os::raw::c_char,
1077    pub _IO_buf_end: *mut ::std::os::raw::c_char,
1078    pub _IO_save_base: *mut ::std::os::raw::c_char,
1079    pub _IO_backup_base: *mut ::std::os::raw::c_char,
1080    pub _IO_save_end: *mut ::std::os::raw::c_char,
1081    pub _markers: *mut _IO_marker,
1082    pub _chain: *mut _IO_FILE,
1083    pub _fileno: ::std::os::raw::c_int,
1084    pub _flags2: ::std::os::raw::c_int,
1085    pub _old_offset: __off_t,
1086    pub _cur_column: ::std::os::raw::c_ushort,
1087    pub _vtable_offset: ::std::os::raw::c_schar,
1088    pub _shortbuf: [::std::os::raw::c_char; 1usize],
1089    pub _lock: *mut _IO_lock_t,
1090    pub _offset: __off64_t,
1091    pub _codecvt: *mut _IO_codecvt,
1092    pub _wide_data: *mut _IO_wide_data,
1093    pub _freeres_list: *mut _IO_FILE,
1094    pub _freeres_buf: *mut ::std::os::raw::c_void,
1095    pub __pad5: size_t,
1096    pub _mode: ::std::os::raw::c_int,
1097    pub _unused2: [::std::os::raw::c_char; 20usize],
1098}
1099#[test]
1100fn bindgen_test_layout__IO_FILE() {
1101    assert_eq!(
1102        ::std::mem::size_of::<_IO_FILE>(),
1103        216usize,
1104        concat!("Size of: ", stringify!(_IO_FILE))
1105    );
1106    assert_eq!(
1107        ::std::mem::align_of::<_IO_FILE>(),
1108        8usize,
1109        concat!("Alignment of ", stringify!(_IO_FILE))
1110    );
1111    assert_eq!(
1112        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._flags as *const _ as usize },
1113        0usize,
1114        concat!(
1115            "Offset of field: ",
1116            stringify!(_IO_FILE),
1117            "::",
1118            stringify!(_flags)
1119        )
1120    );
1121    assert_eq!(
1122        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_ptr as *const _ as usize },
1123        8usize,
1124        concat!(
1125            "Offset of field: ",
1126            stringify!(_IO_FILE),
1127            "::",
1128            stringify!(_IO_read_ptr)
1129        )
1130    );
1131    assert_eq!(
1132        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_end as *const _ as usize },
1133        16usize,
1134        concat!(
1135            "Offset of field: ",
1136            stringify!(_IO_FILE),
1137            "::",
1138            stringify!(_IO_read_end)
1139        )
1140    );
1141    assert_eq!(
1142        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_base as *const _ as usize },
1143        24usize,
1144        concat!(
1145            "Offset of field: ",
1146            stringify!(_IO_FILE),
1147            "::",
1148            stringify!(_IO_read_base)
1149        )
1150    );
1151    assert_eq!(
1152        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_base as *const _ as usize },
1153        32usize,
1154        concat!(
1155            "Offset of field: ",
1156            stringify!(_IO_FILE),
1157            "::",
1158            stringify!(_IO_write_base)
1159        )
1160    );
1161    assert_eq!(
1162        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_ptr as *const _ as usize },
1163        40usize,
1164        concat!(
1165            "Offset of field: ",
1166            stringify!(_IO_FILE),
1167            "::",
1168            stringify!(_IO_write_ptr)
1169        )
1170    );
1171    assert_eq!(
1172        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_end as *const _ as usize },
1173        48usize,
1174        concat!(
1175            "Offset of field: ",
1176            stringify!(_IO_FILE),
1177            "::",
1178            stringify!(_IO_write_end)
1179        )
1180    );
1181    assert_eq!(
1182        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_buf_base as *const _ as usize },
1183        56usize,
1184        concat!(
1185            "Offset of field: ",
1186            stringify!(_IO_FILE),
1187            "::",
1188            stringify!(_IO_buf_base)
1189        )
1190    );
1191    assert_eq!(
1192        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_buf_end as *const _ as usize },
1193        64usize,
1194        concat!(
1195            "Offset of field: ",
1196            stringify!(_IO_FILE),
1197            "::",
1198            stringify!(_IO_buf_end)
1199        )
1200    );
1201    assert_eq!(
1202        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_save_base as *const _ as usize },
1203        72usize,
1204        concat!(
1205            "Offset of field: ",
1206            stringify!(_IO_FILE),
1207            "::",
1208            stringify!(_IO_save_base)
1209        )
1210    );
1211    assert_eq!(
1212        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_backup_base as *const _ as usize },
1213        80usize,
1214        concat!(
1215            "Offset of field: ",
1216            stringify!(_IO_FILE),
1217            "::",
1218            stringify!(_IO_backup_base)
1219        )
1220    );
1221    assert_eq!(
1222        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_save_end as *const _ as usize },
1223        88usize,
1224        concat!(
1225            "Offset of field: ",
1226            stringify!(_IO_FILE),
1227            "::",
1228            stringify!(_IO_save_end)
1229        )
1230    );
1231    assert_eq!(
1232        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._markers as *const _ as usize },
1233        96usize,
1234        concat!(
1235            "Offset of field: ",
1236            stringify!(_IO_FILE),
1237            "::",
1238            stringify!(_markers)
1239        )
1240    );
1241    assert_eq!(
1242        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._chain as *const _ as usize },
1243        104usize,
1244        concat!(
1245            "Offset of field: ",
1246            stringify!(_IO_FILE),
1247            "::",
1248            stringify!(_chain)
1249        )
1250    );
1251    assert_eq!(
1252        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._fileno as *const _ as usize },
1253        112usize,
1254        concat!(
1255            "Offset of field: ",
1256            stringify!(_IO_FILE),
1257            "::",
1258            stringify!(_fileno)
1259        )
1260    );
1261    assert_eq!(
1262        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._flags2 as *const _ as usize },
1263        116usize,
1264        concat!(
1265            "Offset of field: ",
1266            stringify!(_IO_FILE),
1267            "::",
1268            stringify!(_flags2)
1269        )
1270    );
1271    assert_eq!(
1272        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._old_offset as *const _ as usize },
1273        120usize,
1274        concat!(
1275            "Offset of field: ",
1276            stringify!(_IO_FILE),
1277            "::",
1278            stringify!(_old_offset)
1279        )
1280    );
1281    assert_eq!(
1282        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._cur_column as *const _ as usize },
1283        128usize,
1284        concat!(
1285            "Offset of field: ",
1286            stringify!(_IO_FILE),
1287            "::",
1288            stringify!(_cur_column)
1289        )
1290    );
1291    assert_eq!(
1292        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._vtable_offset as *const _ as usize },
1293        130usize,
1294        concat!(
1295            "Offset of field: ",
1296            stringify!(_IO_FILE),
1297            "::",
1298            stringify!(_vtable_offset)
1299        )
1300    );
1301    assert_eq!(
1302        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._shortbuf as *const _ as usize },
1303        131usize,
1304        concat!(
1305            "Offset of field: ",
1306            stringify!(_IO_FILE),
1307            "::",
1308            stringify!(_shortbuf)
1309        )
1310    );
1311    assert_eq!(
1312        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._lock as *const _ as usize },
1313        136usize,
1314        concat!(
1315            "Offset of field: ",
1316            stringify!(_IO_FILE),
1317            "::",
1318            stringify!(_lock)
1319        )
1320    );
1321    assert_eq!(
1322        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._offset as *const _ as usize },
1323        144usize,
1324        concat!(
1325            "Offset of field: ",
1326            stringify!(_IO_FILE),
1327            "::",
1328            stringify!(_offset)
1329        )
1330    );
1331    assert_eq!(
1332        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._codecvt as *const _ as usize },
1333        152usize,
1334        concat!(
1335            "Offset of field: ",
1336            stringify!(_IO_FILE),
1337            "::",
1338            stringify!(_codecvt)
1339        )
1340    );
1341    assert_eq!(
1342        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._wide_data as *const _ as usize },
1343        160usize,
1344        concat!(
1345            "Offset of field: ",
1346            stringify!(_IO_FILE),
1347            "::",
1348            stringify!(_wide_data)
1349        )
1350    );
1351    assert_eq!(
1352        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._freeres_list as *const _ as usize },
1353        168usize,
1354        concat!(
1355            "Offset of field: ",
1356            stringify!(_IO_FILE),
1357            "::",
1358            stringify!(_freeres_list)
1359        )
1360    );
1361    assert_eq!(
1362        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._freeres_buf as *const _ as usize },
1363        176usize,
1364        concat!(
1365            "Offset of field: ",
1366            stringify!(_IO_FILE),
1367            "::",
1368            stringify!(_freeres_buf)
1369        )
1370    );
1371    assert_eq!(
1372        unsafe { &(*(::std::ptr::null::<_IO_FILE>())).__pad5 as *const _ as usize },
1373        184usize,
1374        concat!(
1375            "Offset of field: ",
1376            stringify!(_IO_FILE),
1377            "::",
1378            stringify!(__pad5)
1379        )
1380    );
1381    assert_eq!(
1382        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._mode as *const _ as usize },
1383        192usize,
1384        concat!(
1385            "Offset of field: ",
1386            stringify!(_IO_FILE),
1387            "::",
1388            stringify!(_mode)
1389        )
1390    );
1391    assert_eq!(
1392        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._unused2 as *const _ as usize },
1393        196usize,
1394        concat!(
1395            "Offset of field: ",
1396            stringify!(_IO_FILE),
1397            "::",
1398            stringify!(_unused2)
1399        )
1400    );
1401}
1402pub type zend_long = i64;
1403pub type zend_ulong = u64;
1404pub type zend_off_t = i64;
1405pub type zend_bool = ::std::os::raw::c_uchar;
1406pub type zend_uchar = ::std::os::raw::c_uchar;
1407pub const ZEND_RESULT_CODE_SUCCESS: ZEND_RESULT_CODE = 0;
1408pub const ZEND_RESULT_CODE_FAILURE: ZEND_RESULT_CODE = -1;
1409pub type ZEND_RESULT_CODE = ::std::os::raw::c_int;
1410pub type zend_intptr_t = isize;
1411pub type zend_uintptr_t = usize;
1412pub type zend_object_handlers = _zend_object_handlers;
1413pub type zend_class_entry = _zend_class_entry;
1414pub type zend_function = _zend_function;
1415pub type zend_execute_data = _zend_execute_data;
1416pub type zval = _zval_struct;
1417pub type zend_refcounted = _zend_refcounted;
1418pub type zend_string = _zend_string;
1419pub type zend_array = _zend_array;
1420pub type zend_object = _zend_object;
1421pub type zend_resource = _zend_resource;
1422pub type zend_reference = _zend_reference;
1423pub type zend_ast_ref = _zend_ast_ref;
1424pub type zend_ast = _zend_ast;
1425pub type compare_func_t = ::std::option::Option<
1426    unsafe extern "C" fn(
1427        arg1: *const ::std::os::raw::c_void,
1428        arg2: *const ::std::os::raw::c_void,
1429    ) -> ::std::os::raw::c_int,
1430>;
1431pub type swap_func_t = ::std::option::Option<
1432    unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void, arg2: *mut ::std::os::raw::c_void),
1433>;
1434pub type sort_func_t = ::std::option::Option<
1435    unsafe extern "C" fn(
1436        arg1: *mut ::std::os::raw::c_void,
1437        arg2: size_t,
1438        arg3: size_t,
1439        arg4: compare_func_t,
1440        arg5: swap_func_t,
1441    ),
1442>;
1443pub type dtor_func_t = ::std::option::Option<unsafe extern "C" fn(pDest: *mut zval)>;
1444pub type copy_ctor_func_t = ::std::option::Option<unsafe extern "C" fn(pElement: *mut zval)>;
1445pub type zend_type = usize;
1446#[repr(C)]
1447#[derive(Copy, Clone)]
1448pub union _zend_value {
1449    pub lval: zend_long,
1450    pub dval: f64,
1451    pub counted: *mut zend_refcounted,
1452    pub str_: *mut zend_string,
1453    pub arr: *mut zend_array,
1454    pub obj: *mut zend_object,
1455    pub res: *mut zend_resource,
1456    pub ref_: *mut zend_reference,
1457    pub ast: *mut zend_ast_ref,
1458    pub zv: *mut zval,
1459    pub ptr: *mut ::std::os::raw::c_void,
1460    pub ce: *mut zend_class_entry,
1461    pub func: *mut zend_function,
1462    pub ww: _zend_value__bindgen_ty_1,
1463    _bindgen_union_align: u64,
1464}
1465#[repr(C)]
1466#[derive(Debug, Copy, Clone)]
1467pub struct _zend_value__bindgen_ty_1 {
1468    pub w1: u32,
1469    pub w2: u32,
1470}
1471#[test]
1472fn bindgen_test_layout__zend_value__bindgen_ty_1() {
1473    assert_eq!(
1474        ::std::mem::size_of::<_zend_value__bindgen_ty_1>(),
1475        8usize,
1476        concat!("Size of: ", stringify!(_zend_value__bindgen_ty_1))
1477    );
1478    assert_eq!(
1479        ::std::mem::align_of::<_zend_value__bindgen_ty_1>(),
1480        4usize,
1481        concat!("Alignment of ", stringify!(_zend_value__bindgen_ty_1))
1482    );
1483    assert_eq!(
1484        unsafe { &(*(::std::ptr::null::<_zend_value__bindgen_ty_1>())).w1 as *const _ as usize },
1485        0usize,
1486        concat!(
1487            "Offset of field: ",
1488            stringify!(_zend_value__bindgen_ty_1),
1489            "::",
1490            stringify!(w1)
1491        )
1492    );
1493    assert_eq!(
1494        unsafe { &(*(::std::ptr::null::<_zend_value__bindgen_ty_1>())).w2 as *const _ as usize },
1495        4usize,
1496        concat!(
1497            "Offset of field: ",
1498            stringify!(_zend_value__bindgen_ty_1),
1499            "::",
1500            stringify!(w2)
1501        )
1502    );
1503}
1504#[test]
1505fn bindgen_test_layout__zend_value() {
1506    assert_eq!(
1507        ::std::mem::size_of::<_zend_value>(),
1508        8usize,
1509        concat!("Size of: ", stringify!(_zend_value))
1510    );
1511    assert_eq!(
1512        ::std::mem::align_of::<_zend_value>(),
1513        8usize,
1514        concat!("Alignment of ", stringify!(_zend_value))
1515    );
1516    assert_eq!(
1517        unsafe { &(*(::std::ptr::null::<_zend_value>())).lval as *const _ as usize },
1518        0usize,
1519        concat!(
1520            "Offset of field: ",
1521            stringify!(_zend_value),
1522            "::",
1523            stringify!(lval)
1524        )
1525    );
1526    assert_eq!(
1527        unsafe { &(*(::std::ptr::null::<_zend_value>())).dval as *const _ as usize },
1528        0usize,
1529        concat!(
1530            "Offset of field: ",
1531            stringify!(_zend_value),
1532            "::",
1533            stringify!(dval)
1534        )
1535    );
1536    assert_eq!(
1537        unsafe { &(*(::std::ptr::null::<_zend_value>())).counted as *const _ as usize },
1538        0usize,
1539        concat!(
1540            "Offset of field: ",
1541            stringify!(_zend_value),
1542            "::",
1543            stringify!(counted)
1544        )
1545    );
1546    assert_eq!(
1547        unsafe { &(*(::std::ptr::null::<_zend_value>())).str_ as *const _ as usize },
1548        0usize,
1549        concat!(
1550            "Offset of field: ",
1551            stringify!(_zend_value),
1552            "::",
1553            stringify!(str_)
1554        )
1555    );
1556    assert_eq!(
1557        unsafe { &(*(::std::ptr::null::<_zend_value>())).arr as *const _ as usize },
1558        0usize,
1559        concat!(
1560            "Offset of field: ",
1561            stringify!(_zend_value),
1562            "::",
1563            stringify!(arr)
1564        )
1565    );
1566    assert_eq!(
1567        unsafe { &(*(::std::ptr::null::<_zend_value>())).obj as *const _ as usize },
1568        0usize,
1569        concat!(
1570            "Offset of field: ",
1571            stringify!(_zend_value),
1572            "::",
1573            stringify!(obj)
1574        )
1575    );
1576    assert_eq!(
1577        unsafe { &(*(::std::ptr::null::<_zend_value>())).res as *const _ as usize },
1578        0usize,
1579        concat!(
1580            "Offset of field: ",
1581            stringify!(_zend_value),
1582            "::",
1583            stringify!(res)
1584        )
1585    );
1586    assert_eq!(
1587        unsafe { &(*(::std::ptr::null::<_zend_value>())).ref_ as *const _ as usize },
1588        0usize,
1589        concat!(
1590            "Offset of field: ",
1591            stringify!(_zend_value),
1592            "::",
1593            stringify!(ref_)
1594        )
1595    );
1596    assert_eq!(
1597        unsafe { &(*(::std::ptr::null::<_zend_value>())).ast as *const _ as usize },
1598        0usize,
1599        concat!(
1600            "Offset of field: ",
1601            stringify!(_zend_value),
1602            "::",
1603            stringify!(ast)
1604        )
1605    );
1606    assert_eq!(
1607        unsafe { &(*(::std::ptr::null::<_zend_value>())).zv as *const _ as usize },
1608        0usize,
1609        concat!(
1610            "Offset of field: ",
1611            stringify!(_zend_value),
1612            "::",
1613            stringify!(zv)
1614        )
1615    );
1616    assert_eq!(
1617        unsafe { &(*(::std::ptr::null::<_zend_value>())).ptr as *const _ as usize },
1618        0usize,
1619        concat!(
1620            "Offset of field: ",
1621            stringify!(_zend_value),
1622            "::",
1623            stringify!(ptr)
1624        )
1625    );
1626    assert_eq!(
1627        unsafe { &(*(::std::ptr::null::<_zend_value>())).ce as *const _ as usize },
1628        0usize,
1629        concat!(
1630            "Offset of field: ",
1631            stringify!(_zend_value),
1632            "::",
1633            stringify!(ce)
1634        )
1635    );
1636    assert_eq!(
1637        unsafe { &(*(::std::ptr::null::<_zend_value>())).func as *const _ as usize },
1638        0usize,
1639        concat!(
1640            "Offset of field: ",
1641            stringify!(_zend_value),
1642            "::",
1643            stringify!(func)
1644        )
1645    );
1646    assert_eq!(
1647        unsafe { &(*(::std::ptr::null::<_zend_value>())).ww as *const _ as usize },
1648        0usize,
1649        concat!(
1650            "Offset of field: ",
1651            stringify!(_zend_value),
1652            "::",
1653            stringify!(ww)
1654        )
1655    );
1656}
1657pub type zend_value = _zend_value;
1658#[repr(C)]
1659#[derive(Copy, Clone)]
1660pub struct _zval_struct {
1661    pub value: zend_value,
1662    pub u1: _zval_struct__bindgen_ty_1,
1663    pub u2: _zval_struct__bindgen_ty_2,
1664}
1665#[repr(C)]
1666#[derive(Copy, Clone)]
1667pub union _zval_struct__bindgen_ty_1 {
1668    pub v: _zval_struct__bindgen_ty_1__bindgen_ty_1,
1669    pub type_info: u32,
1670    _bindgen_union_align: u32,
1671}
1672#[repr(C)]
1673#[derive(Copy, Clone)]
1674pub struct _zval_struct__bindgen_ty_1__bindgen_ty_1 {
1675    pub type_: zend_uchar,
1676    pub type_flags: zend_uchar,
1677    pub u: _zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1,
1678}
1679#[repr(C)]
1680#[derive(Copy, Clone)]
1681pub union _zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 {
1682    pub extra: u16,
1683    _bindgen_union_align: u16,
1684}
1685#[test]
1686fn bindgen_test_layout__zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1() {
1687    assert_eq!(
1688        ::std::mem::size_of::<_zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1>(),
1689        2usize,
1690        concat!(
1691            "Size of: ",
1692            stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1)
1693        )
1694    );
1695    assert_eq!(
1696        ::std::mem::align_of::<_zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1>(),
1697        2usize,
1698        concat!(
1699            "Alignment of ",
1700            stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1)
1701        )
1702    );
1703    assert_eq!(
1704        unsafe {
1705            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1>())).extra
1706                as *const _ as usize
1707        },
1708        0usize,
1709        concat!(
1710            "Offset of field: ",
1711            stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1),
1712            "::",
1713            stringify!(extra)
1714        )
1715    );
1716}
1717#[test]
1718fn bindgen_test_layout__zval_struct__bindgen_ty_1__bindgen_ty_1() {
1719    assert_eq!(
1720        ::std::mem::size_of::<_zval_struct__bindgen_ty_1__bindgen_ty_1>(),
1721        4usize,
1722        concat!(
1723            "Size of: ",
1724            stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1)
1725        )
1726    );
1727    assert_eq!(
1728        ::std::mem::align_of::<_zval_struct__bindgen_ty_1__bindgen_ty_1>(),
1729        2usize,
1730        concat!(
1731            "Alignment of ",
1732            stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1)
1733        )
1734    );
1735    assert_eq!(
1736        unsafe {
1737            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_1__bindgen_ty_1>())).type_ as *const _
1738                as usize
1739        },
1740        0usize,
1741        concat!(
1742            "Offset of field: ",
1743            stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1),
1744            "::",
1745            stringify!(type_)
1746        )
1747    );
1748    assert_eq!(
1749        unsafe {
1750            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_1__bindgen_ty_1>())).type_flags
1751                as *const _ as usize
1752        },
1753        1usize,
1754        concat!(
1755            "Offset of field: ",
1756            stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1),
1757            "::",
1758            stringify!(type_flags)
1759        )
1760    );
1761    assert_eq!(
1762        unsafe {
1763            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_1__bindgen_ty_1>())).u as *const _
1764                as usize
1765        },
1766        2usize,
1767        concat!(
1768            "Offset of field: ",
1769            stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1),
1770            "::",
1771            stringify!(u)
1772        )
1773    );
1774}
1775#[test]
1776fn bindgen_test_layout__zval_struct__bindgen_ty_1() {
1777    assert_eq!(
1778        ::std::mem::size_of::<_zval_struct__bindgen_ty_1>(),
1779        4usize,
1780        concat!("Size of: ", stringify!(_zval_struct__bindgen_ty_1))
1781    );
1782    assert_eq!(
1783        ::std::mem::align_of::<_zval_struct__bindgen_ty_1>(),
1784        4usize,
1785        concat!("Alignment of ", stringify!(_zval_struct__bindgen_ty_1))
1786    );
1787    assert_eq!(
1788        unsafe { &(*(::std::ptr::null::<_zval_struct__bindgen_ty_1>())).v as *const _ as usize },
1789        0usize,
1790        concat!(
1791            "Offset of field: ",
1792            stringify!(_zval_struct__bindgen_ty_1),
1793            "::",
1794            stringify!(v)
1795        )
1796    );
1797    assert_eq!(
1798        unsafe {
1799            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_1>())).type_info as *const _ as usize
1800        },
1801        0usize,
1802        concat!(
1803            "Offset of field: ",
1804            stringify!(_zval_struct__bindgen_ty_1),
1805            "::",
1806            stringify!(type_info)
1807        )
1808    );
1809}
1810#[repr(C)]
1811#[derive(Copy, Clone)]
1812pub union _zval_struct__bindgen_ty_2 {
1813    pub next: u32,
1814    pub cache_slot: u32,
1815    pub opline_num: u32,
1816    pub lineno: u32,
1817    pub num_args: u32,
1818    pub fe_pos: u32,
1819    pub fe_iter_idx: u32,
1820    pub access_flags: u32,
1821    pub property_guard: u32,
1822    pub constant_flags: u32,
1823    pub extra: u32,
1824    _bindgen_union_align: u32,
1825}
1826#[test]
1827fn bindgen_test_layout__zval_struct__bindgen_ty_2() {
1828    assert_eq!(
1829        ::std::mem::size_of::<_zval_struct__bindgen_ty_2>(),
1830        4usize,
1831        concat!("Size of: ", stringify!(_zval_struct__bindgen_ty_2))
1832    );
1833    assert_eq!(
1834        ::std::mem::align_of::<_zval_struct__bindgen_ty_2>(),
1835        4usize,
1836        concat!("Alignment of ", stringify!(_zval_struct__bindgen_ty_2))
1837    );
1838    assert_eq!(
1839        unsafe { &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).next as *const _ as usize },
1840        0usize,
1841        concat!(
1842            "Offset of field: ",
1843            stringify!(_zval_struct__bindgen_ty_2),
1844            "::",
1845            stringify!(next)
1846        )
1847    );
1848    assert_eq!(
1849        unsafe {
1850            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).cache_slot as *const _ as usize
1851        },
1852        0usize,
1853        concat!(
1854            "Offset of field: ",
1855            stringify!(_zval_struct__bindgen_ty_2),
1856            "::",
1857            stringify!(cache_slot)
1858        )
1859    );
1860    assert_eq!(
1861        unsafe {
1862            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).opline_num as *const _ as usize
1863        },
1864        0usize,
1865        concat!(
1866            "Offset of field: ",
1867            stringify!(_zval_struct__bindgen_ty_2),
1868            "::",
1869            stringify!(opline_num)
1870        )
1871    );
1872    assert_eq!(
1873        unsafe {
1874            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).lineno as *const _ as usize
1875        },
1876        0usize,
1877        concat!(
1878            "Offset of field: ",
1879            stringify!(_zval_struct__bindgen_ty_2),
1880            "::",
1881            stringify!(lineno)
1882        )
1883    );
1884    assert_eq!(
1885        unsafe {
1886            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).num_args as *const _ as usize
1887        },
1888        0usize,
1889        concat!(
1890            "Offset of field: ",
1891            stringify!(_zval_struct__bindgen_ty_2),
1892            "::",
1893            stringify!(num_args)
1894        )
1895    );
1896    assert_eq!(
1897        unsafe {
1898            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).fe_pos as *const _ as usize
1899        },
1900        0usize,
1901        concat!(
1902            "Offset of field: ",
1903            stringify!(_zval_struct__bindgen_ty_2),
1904            "::",
1905            stringify!(fe_pos)
1906        )
1907    );
1908    assert_eq!(
1909        unsafe {
1910            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).fe_iter_idx as *const _ as usize
1911        },
1912        0usize,
1913        concat!(
1914            "Offset of field: ",
1915            stringify!(_zval_struct__bindgen_ty_2),
1916            "::",
1917            stringify!(fe_iter_idx)
1918        )
1919    );
1920    assert_eq!(
1921        unsafe {
1922            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).access_flags as *const _ as usize
1923        },
1924        0usize,
1925        concat!(
1926            "Offset of field: ",
1927            stringify!(_zval_struct__bindgen_ty_2),
1928            "::",
1929            stringify!(access_flags)
1930        )
1931    );
1932    assert_eq!(
1933        unsafe {
1934            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).property_guard as *const _
1935                as usize
1936        },
1937        0usize,
1938        concat!(
1939            "Offset of field: ",
1940            stringify!(_zval_struct__bindgen_ty_2),
1941            "::",
1942            stringify!(property_guard)
1943        )
1944    );
1945    assert_eq!(
1946        unsafe {
1947            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).constant_flags as *const _
1948                as usize
1949        },
1950        0usize,
1951        concat!(
1952            "Offset of field: ",
1953            stringify!(_zval_struct__bindgen_ty_2),
1954            "::",
1955            stringify!(constant_flags)
1956        )
1957    );
1958    assert_eq!(
1959        unsafe {
1960            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).extra as *const _ as usize
1961        },
1962        0usize,
1963        concat!(
1964            "Offset of field: ",
1965            stringify!(_zval_struct__bindgen_ty_2),
1966            "::",
1967            stringify!(extra)
1968        )
1969    );
1970}
1971#[test]
1972fn bindgen_test_layout__zval_struct() {
1973    assert_eq!(
1974        ::std::mem::size_of::<_zval_struct>(),
1975        16usize,
1976        concat!("Size of: ", stringify!(_zval_struct))
1977    );
1978    assert_eq!(
1979        ::std::mem::align_of::<_zval_struct>(),
1980        8usize,
1981        concat!("Alignment of ", stringify!(_zval_struct))
1982    );
1983    assert_eq!(
1984        unsafe { &(*(::std::ptr::null::<_zval_struct>())).value as *const _ as usize },
1985        0usize,
1986        concat!(
1987            "Offset of field: ",
1988            stringify!(_zval_struct),
1989            "::",
1990            stringify!(value)
1991        )
1992    );
1993    assert_eq!(
1994        unsafe { &(*(::std::ptr::null::<_zval_struct>())).u1 as *const _ as usize },
1995        8usize,
1996        concat!(
1997            "Offset of field: ",
1998            stringify!(_zval_struct),
1999            "::",
2000            stringify!(u1)
2001        )
2002    );
2003    assert_eq!(
2004        unsafe { &(*(::std::ptr::null::<_zval_struct>())).u2 as *const _ as usize },
2005        12usize,
2006        concat!(
2007            "Offset of field: ",
2008            stringify!(_zval_struct),
2009            "::",
2010            stringify!(u2)
2011        )
2012    );
2013}
2014#[repr(C)]
2015#[derive(Copy, Clone)]
2016pub struct _zend_refcounted_h {
2017    pub refcount: u32,
2018    pub u: _zend_refcounted_h__bindgen_ty_1,
2019}
2020#[repr(C)]
2021#[derive(Copy, Clone)]
2022pub union _zend_refcounted_h__bindgen_ty_1 {
2023    pub type_info: u32,
2024    _bindgen_union_align: u32,
2025}
2026#[test]
2027fn bindgen_test_layout__zend_refcounted_h__bindgen_ty_1() {
2028    assert_eq!(
2029        ::std::mem::size_of::<_zend_refcounted_h__bindgen_ty_1>(),
2030        4usize,
2031        concat!("Size of: ", stringify!(_zend_refcounted_h__bindgen_ty_1))
2032    );
2033    assert_eq!(
2034        ::std::mem::align_of::<_zend_refcounted_h__bindgen_ty_1>(),
2035        4usize,
2036        concat!(
2037            "Alignment of ",
2038            stringify!(_zend_refcounted_h__bindgen_ty_1)
2039        )
2040    );
2041    assert_eq!(
2042        unsafe {
2043            &(*(::std::ptr::null::<_zend_refcounted_h__bindgen_ty_1>())).type_info as *const _
2044                as usize
2045        },
2046        0usize,
2047        concat!(
2048            "Offset of field: ",
2049            stringify!(_zend_refcounted_h__bindgen_ty_1),
2050            "::",
2051            stringify!(type_info)
2052        )
2053    );
2054}
2055#[test]
2056fn bindgen_test_layout__zend_refcounted_h() {
2057    assert_eq!(
2058        ::std::mem::size_of::<_zend_refcounted_h>(),
2059        8usize,
2060        concat!("Size of: ", stringify!(_zend_refcounted_h))
2061    );
2062    assert_eq!(
2063        ::std::mem::align_of::<_zend_refcounted_h>(),
2064        4usize,
2065        concat!("Alignment of ", stringify!(_zend_refcounted_h))
2066    );
2067    assert_eq!(
2068        unsafe { &(*(::std::ptr::null::<_zend_refcounted_h>())).refcount as *const _ as usize },
2069        0usize,
2070        concat!(
2071            "Offset of field: ",
2072            stringify!(_zend_refcounted_h),
2073            "::",
2074            stringify!(refcount)
2075        )
2076    );
2077    assert_eq!(
2078        unsafe { &(*(::std::ptr::null::<_zend_refcounted_h>())).u as *const _ as usize },
2079        4usize,
2080        concat!(
2081            "Offset of field: ",
2082            stringify!(_zend_refcounted_h),
2083            "::",
2084            stringify!(u)
2085        )
2086    );
2087}
2088pub type zend_refcounted_h = _zend_refcounted_h;
2089#[repr(C)]
2090#[derive(Copy, Clone)]
2091pub struct _zend_refcounted {
2092    pub gc: zend_refcounted_h,
2093}
2094#[test]
2095fn bindgen_test_layout__zend_refcounted() {
2096    assert_eq!(
2097        ::std::mem::size_of::<_zend_refcounted>(),
2098        8usize,
2099        concat!("Size of: ", stringify!(_zend_refcounted))
2100    );
2101    assert_eq!(
2102        ::std::mem::align_of::<_zend_refcounted>(),
2103        4usize,
2104        concat!("Alignment of ", stringify!(_zend_refcounted))
2105    );
2106    assert_eq!(
2107        unsafe { &(*(::std::ptr::null::<_zend_refcounted>())).gc as *const _ as usize },
2108        0usize,
2109        concat!(
2110            "Offset of field: ",
2111            stringify!(_zend_refcounted),
2112            "::",
2113            stringify!(gc)
2114        )
2115    );
2116}
2117#[repr(C)]
2118#[derive(Copy, Clone)]
2119pub struct _zend_string {
2120    pub gc: zend_refcounted_h,
2121    pub h: zend_ulong,
2122    pub len: size_t,
2123    pub val: [::std::os::raw::c_char; 1usize],
2124}
2125#[test]
2126fn bindgen_test_layout__zend_string() {
2127    assert_eq!(
2128        ::std::mem::size_of::<_zend_string>(),
2129        32usize,
2130        concat!("Size of: ", stringify!(_zend_string))
2131    );
2132    assert_eq!(
2133        ::std::mem::align_of::<_zend_string>(),
2134        8usize,
2135        concat!("Alignment of ", stringify!(_zend_string))
2136    );
2137    assert_eq!(
2138        unsafe { &(*(::std::ptr::null::<_zend_string>())).gc as *const _ as usize },
2139        0usize,
2140        concat!(
2141            "Offset of field: ",
2142            stringify!(_zend_string),
2143            "::",
2144            stringify!(gc)
2145        )
2146    );
2147    assert_eq!(
2148        unsafe { &(*(::std::ptr::null::<_zend_string>())).h as *const _ as usize },
2149        8usize,
2150        concat!(
2151            "Offset of field: ",
2152            stringify!(_zend_string),
2153            "::",
2154            stringify!(h)
2155        )
2156    );
2157    assert_eq!(
2158        unsafe { &(*(::std::ptr::null::<_zend_string>())).len as *const _ as usize },
2159        16usize,
2160        concat!(
2161            "Offset of field: ",
2162            stringify!(_zend_string),
2163            "::",
2164            stringify!(len)
2165        )
2166    );
2167    assert_eq!(
2168        unsafe { &(*(::std::ptr::null::<_zend_string>())).val as *const _ as usize },
2169        24usize,
2170        concat!(
2171            "Offset of field: ",
2172            stringify!(_zend_string),
2173            "::",
2174            stringify!(val)
2175        )
2176    );
2177}
2178#[repr(C)]
2179#[derive(Copy, Clone)]
2180pub struct _Bucket {
2181    pub val: zval,
2182    pub h: zend_ulong,
2183    pub key: *mut zend_string,
2184}
2185#[test]
2186fn bindgen_test_layout__Bucket() {
2187    assert_eq!(
2188        ::std::mem::size_of::<_Bucket>(),
2189        32usize,
2190        concat!("Size of: ", stringify!(_Bucket))
2191    );
2192    assert_eq!(
2193        ::std::mem::align_of::<_Bucket>(),
2194        8usize,
2195        concat!("Alignment of ", stringify!(_Bucket))
2196    );
2197    assert_eq!(
2198        unsafe { &(*(::std::ptr::null::<_Bucket>())).val as *const _ as usize },
2199        0usize,
2200        concat!(
2201            "Offset of field: ",
2202            stringify!(_Bucket),
2203            "::",
2204            stringify!(val)
2205        )
2206    );
2207    assert_eq!(
2208        unsafe { &(*(::std::ptr::null::<_Bucket>())).h as *const _ as usize },
2209        16usize,
2210        concat!(
2211            "Offset of field: ",
2212            stringify!(_Bucket),
2213            "::",
2214            stringify!(h)
2215        )
2216    );
2217    assert_eq!(
2218        unsafe { &(*(::std::ptr::null::<_Bucket>())).key as *const _ as usize },
2219        24usize,
2220        concat!(
2221            "Offset of field: ",
2222            stringify!(_Bucket),
2223            "::",
2224            stringify!(key)
2225        )
2226    );
2227}
2228pub type Bucket = _Bucket;
2229pub type HashTable = _zend_array;
2230#[repr(C)]
2231#[derive(Copy, Clone)]
2232pub struct _zend_array {
2233    pub gc: zend_refcounted_h,
2234    pub u: _zend_array__bindgen_ty_1,
2235    pub nTableMask: u32,
2236    pub arData: *mut Bucket,
2237    pub nNumUsed: u32,
2238    pub nNumOfElements: u32,
2239    pub nTableSize: u32,
2240    pub nInternalPointer: u32,
2241    pub nNextFreeElement: zend_long,
2242    pub pDestructor: dtor_func_t,
2243}
2244#[repr(C)]
2245#[derive(Copy, Clone)]
2246pub union _zend_array__bindgen_ty_1 {
2247    pub v: _zend_array__bindgen_ty_1__bindgen_ty_1,
2248    pub flags: u32,
2249    _bindgen_union_align: u32,
2250}
2251#[repr(C)]
2252#[derive(Debug, Copy, Clone)]
2253pub struct _zend_array__bindgen_ty_1__bindgen_ty_1 {
2254    pub flags: zend_uchar,
2255    pub _unused: zend_uchar,
2256    pub nIteratorsCount: zend_uchar,
2257    pub _unused2: zend_uchar,
2258}
2259#[test]
2260fn bindgen_test_layout__zend_array__bindgen_ty_1__bindgen_ty_1() {
2261    assert_eq!(
2262        ::std::mem::size_of::<_zend_array__bindgen_ty_1__bindgen_ty_1>(),
2263        4usize,
2264        concat!(
2265            "Size of: ",
2266            stringify!(_zend_array__bindgen_ty_1__bindgen_ty_1)
2267        )
2268    );
2269    assert_eq!(
2270        ::std::mem::align_of::<_zend_array__bindgen_ty_1__bindgen_ty_1>(),
2271        1usize,
2272        concat!(
2273            "Alignment of ",
2274            stringify!(_zend_array__bindgen_ty_1__bindgen_ty_1)
2275        )
2276    );
2277    assert_eq!(
2278        unsafe {
2279            &(*(::std::ptr::null::<_zend_array__bindgen_ty_1__bindgen_ty_1>())).flags as *const _
2280                as usize
2281        },
2282        0usize,
2283        concat!(
2284            "Offset of field: ",
2285            stringify!(_zend_array__bindgen_ty_1__bindgen_ty_1),
2286            "::",
2287            stringify!(flags)
2288        )
2289    );
2290    assert_eq!(
2291        unsafe {
2292            &(*(::std::ptr::null::<_zend_array__bindgen_ty_1__bindgen_ty_1>()))._unused as *const _
2293                as usize
2294        },
2295        1usize,
2296        concat!(
2297            "Offset of field: ",
2298            stringify!(_zend_array__bindgen_ty_1__bindgen_ty_1),
2299            "::",
2300            stringify!(_unused)
2301        )
2302    );
2303    assert_eq!(
2304        unsafe {
2305            &(*(::std::ptr::null::<_zend_array__bindgen_ty_1__bindgen_ty_1>())).nIteratorsCount
2306                as *const _ as usize
2307        },
2308        2usize,
2309        concat!(
2310            "Offset of field: ",
2311            stringify!(_zend_array__bindgen_ty_1__bindgen_ty_1),
2312            "::",
2313            stringify!(nIteratorsCount)
2314        )
2315    );
2316    assert_eq!(
2317        unsafe {
2318            &(*(::std::ptr::null::<_zend_array__bindgen_ty_1__bindgen_ty_1>()))._unused2 as *const _
2319                as usize
2320        },
2321        3usize,
2322        concat!(
2323            "Offset of field: ",
2324            stringify!(_zend_array__bindgen_ty_1__bindgen_ty_1),
2325            "::",
2326            stringify!(_unused2)
2327        )
2328    );
2329}
2330#[test]
2331fn bindgen_test_layout__zend_array__bindgen_ty_1() {
2332    assert_eq!(
2333        ::std::mem::size_of::<_zend_array__bindgen_ty_1>(),
2334        4usize,
2335        concat!("Size of: ", stringify!(_zend_array__bindgen_ty_1))
2336    );
2337    assert_eq!(
2338        ::std::mem::align_of::<_zend_array__bindgen_ty_1>(),
2339        4usize,
2340        concat!("Alignment of ", stringify!(_zend_array__bindgen_ty_1))
2341    );
2342    assert_eq!(
2343        unsafe { &(*(::std::ptr::null::<_zend_array__bindgen_ty_1>())).v as *const _ as usize },
2344        0usize,
2345        concat!(
2346            "Offset of field: ",
2347            stringify!(_zend_array__bindgen_ty_1),
2348            "::",
2349            stringify!(v)
2350        )
2351    );
2352    assert_eq!(
2353        unsafe { &(*(::std::ptr::null::<_zend_array__bindgen_ty_1>())).flags as *const _ as usize },
2354        0usize,
2355        concat!(
2356            "Offset of field: ",
2357            stringify!(_zend_array__bindgen_ty_1),
2358            "::",
2359            stringify!(flags)
2360        )
2361    );
2362}
2363#[test]
2364fn bindgen_test_layout__zend_array() {
2365    assert_eq!(
2366        ::std::mem::size_of::<_zend_array>(),
2367        56usize,
2368        concat!("Size of: ", stringify!(_zend_array))
2369    );
2370    assert_eq!(
2371        ::std::mem::align_of::<_zend_array>(),
2372        8usize,
2373        concat!("Alignment of ", stringify!(_zend_array))
2374    );
2375    assert_eq!(
2376        unsafe { &(*(::std::ptr::null::<_zend_array>())).gc as *const _ as usize },
2377        0usize,
2378        concat!(
2379            "Offset of field: ",
2380            stringify!(_zend_array),
2381            "::",
2382            stringify!(gc)
2383        )
2384    );
2385    assert_eq!(
2386        unsafe { &(*(::std::ptr::null::<_zend_array>())).u as *const _ as usize },
2387        8usize,
2388        concat!(
2389            "Offset of field: ",
2390            stringify!(_zend_array),
2391            "::",
2392            stringify!(u)
2393        )
2394    );
2395    assert_eq!(
2396        unsafe { &(*(::std::ptr::null::<_zend_array>())).nTableMask as *const _ as usize },
2397        12usize,
2398        concat!(
2399            "Offset of field: ",
2400            stringify!(_zend_array),
2401            "::",
2402            stringify!(nTableMask)
2403        )
2404    );
2405    assert_eq!(
2406        unsafe { &(*(::std::ptr::null::<_zend_array>())).arData as *const _ as usize },
2407        16usize,
2408        concat!(
2409            "Offset of field: ",
2410            stringify!(_zend_array),
2411            "::",
2412            stringify!(arData)
2413        )
2414    );
2415    assert_eq!(
2416        unsafe { &(*(::std::ptr::null::<_zend_array>())).nNumUsed as *const _ as usize },
2417        24usize,
2418        concat!(
2419            "Offset of field: ",
2420            stringify!(_zend_array),
2421            "::",
2422            stringify!(nNumUsed)
2423        )
2424    );
2425    assert_eq!(
2426        unsafe { &(*(::std::ptr::null::<_zend_array>())).nNumOfElements as *const _ as usize },
2427        28usize,
2428        concat!(
2429            "Offset of field: ",
2430            stringify!(_zend_array),
2431            "::",
2432            stringify!(nNumOfElements)
2433        )
2434    );
2435    assert_eq!(
2436        unsafe { &(*(::std::ptr::null::<_zend_array>())).nTableSize as *const _ as usize },
2437        32usize,
2438        concat!(
2439            "Offset of field: ",
2440            stringify!(_zend_array),
2441            "::",
2442            stringify!(nTableSize)
2443        )
2444    );
2445    assert_eq!(
2446        unsafe { &(*(::std::ptr::null::<_zend_array>())).nInternalPointer as *const _ as usize },
2447        36usize,
2448        concat!(
2449            "Offset of field: ",
2450            stringify!(_zend_array),
2451            "::",
2452            stringify!(nInternalPointer)
2453        )
2454    );
2455    assert_eq!(
2456        unsafe { &(*(::std::ptr::null::<_zend_array>())).nNextFreeElement as *const _ as usize },
2457        40usize,
2458        concat!(
2459            "Offset of field: ",
2460            stringify!(_zend_array),
2461            "::",
2462            stringify!(nNextFreeElement)
2463        )
2464    );
2465    assert_eq!(
2466        unsafe { &(*(::std::ptr::null::<_zend_array>())).pDestructor as *const _ as usize },
2467        48usize,
2468        concat!(
2469            "Offset of field: ",
2470            stringify!(_zend_array),
2471            "::",
2472            stringify!(pDestructor)
2473        )
2474    );
2475}
2476pub type HashPosition = u32;
2477#[repr(C)]
2478#[derive(Debug, Copy, Clone)]
2479pub struct _HashTableIterator {
2480    pub ht: *mut HashTable,
2481    pub pos: HashPosition,
2482}
2483#[test]
2484fn bindgen_test_layout__HashTableIterator() {
2485    assert_eq!(
2486        ::std::mem::size_of::<_HashTableIterator>(),
2487        16usize,
2488        concat!("Size of: ", stringify!(_HashTableIterator))
2489    );
2490    assert_eq!(
2491        ::std::mem::align_of::<_HashTableIterator>(),
2492        8usize,
2493        concat!("Alignment of ", stringify!(_HashTableIterator))
2494    );
2495    assert_eq!(
2496        unsafe { &(*(::std::ptr::null::<_HashTableIterator>())).ht as *const _ as usize },
2497        0usize,
2498        concat!(
2499            "Offset of field: ",
2500            stringify!(_HashTableIterator),
2501            "::",
2502            stringify!(ht)
2503        )
2504    );
2505    assert_eq!(
2506        unsafe { &(*(::std::ptr::null::<_HashTableIterator>())).pos as *const _ as usize },
2507        8usize,
2508        concat!(
2509            "Offset of field: ",
2510            stringify!(_HashTableIterator),
2511            "::",
2512            stringify!(pos)
2513        )
2514    );
2515}
2516pub type HashTableIterator = _HashTableIterator;
2517#[repr(C)]
2518#[derive(Copy, Clone)]
2519pub struct _zend_object {
2520    pub gc: zend_refcounted_h,
2521    pub handle: u32,
2522    pub ce: *mut zend_class_entry,
2523    pub handlers: *const zend_object_handlers,
2524    pub properties: *mut HashTable,
2525    pub properties_table: [zval; 1usize],
2526}
2527#[test]
2528fn bindgen_test_layout__zend_object() {
2529    assert_eq!(
2530        ::std::mem::size_of::<_zend_object>(),
2531        56usize,
2532        concat!("Size of: ", stringify!(_zend_object))
2533    );
2534    assert_eq!(
2535        ::std::mem::align_of::<_zend_object>(),
2536        8usize,
2537        concat!("Alignment of ", stringify!(_zend_object))
2538    );
2539    assert_eq!(
2540        unsafe { &(*(::std::ptr::null::<_zend_object>())).gc as *const _ as usize },
2541        0usize,
2542        concat!(
2543            "Offset of field: ",
2544            stringify!(_zend_object),
2545            "::",
2546            stringify!(gc)
2547        )
2548    );
2549    assert_eq!(
2550        unsafe { &(*(::std::ptr::null::<_zend_object>())).handle as *const _ as usize },
2551        8usize,
2552        concat!(
2553            "Offset of field: ",
2554            stringify!(_zend_object),
2555            "::",
2556            stringify!(handle)
2557        )
2558    );
2559    assert_eq!(
2560        unsafe { &(*(::std::ptr::null::<_zend_object>())).ce as *const _ as usize },
2561        16usize,
2562        concat!(
2563            "Offset of field: ",
2564            stringify!(_zend_object),
2565            "::",
2566            stringify!(ce)
2567        )
2568    );
2569    assert_eq!(
2570        unsafe { &(*(::std::ptr::null::<_zend_object>())).handlers as *const _ as usize },
2571        24usize,
2572        concat!(
2573            "Offset of field: ",
2574            stringify!(_zend_object),
2575            "::",
2576            stringify!(handlers)
2577        )
2578    );
2579    assert_eq!(
2580        unsafe { &(*(::std::ptr::null::<_zend_object>())).properties as *const _ as usize },
2581        32usize,
2582        concat!(
2583            "Offset of field: ",
2584            stringify!(_zend_object),
2585            "::",
2586            stringify!(properties)
2587        )
2588    );
2589    assert_eq!(
2590        unsafe { &(*(::std::ptr::null::<_zend_object>())).properties_table as *const _ as usize },
2591        40usize,
2592        concat!(
2593            "Offset of field: ",
2594            stringify!(_zend_object),
2595            "::",
2596            stringify!(properties_table)
2597        )
2598    );
2599}
2600#[repr(C)]
2601#[derive(Copy, Clone)]
2602pub struct _zend_resource {
2603    pub gc: zend_refcounted_h,
2604    pub handle: ::std::os::raw::c_int,
2605    pub type_: ::std::os::raw::c_int,
2606    pub ptr: *mut ::std::os::raw::c_void,
2607}
2608#[test]
2609fn bindgen_test_layout__zend_resource() {
2610    assert_eq!(
2611        ::std::mem::size_of::<_zend_resource>(),
2612        24usize,
2613        concat!("Size of: ", stringify!(_zend_resource))
2614    );
2615    assert_eq!(
2616        ::std::mem::align_of::<_zend_resource>(),
2617        8usize,
2618        concat!("Alignment of ", stringify!(_zend_resource))
2619    );
2620    assert_eq!(
2621        unsafe { &(*(::std::ptr::null::<_zend_resource>())).gc as *const _ as usize },
2622        0usize,
2623        concat!(
2624            "Offset of field: ",
2625            stringify!(_zend_resource),
2626            "::",
2627            stringify!(gc)
2628        )
2629    );
2630    assert_eq!(
2631        unsafe { &(*(::std::ptr::null::<_zend_resource>())).handle as *const _ as usize },
2632        8usize,
2633        concat!(
2634            "Offset of field: ",
2635            stringify!(_zend_resource),
2636            "::",
2637            stringify!(handle)
2638        )
2639    );
2640    assert_eq!(
2641        unsafe { &(*(::std::ptr::null::<_zend_resource>())).type_ as *const _ as usize },
2642        12usize,
2643        concat!(
2644            "Offset of field: ",
2645            stringify!(_zend_resource),
2646            "::",
2647            stringify!(type_)
2648        )
2649    );
2650    assert_eq!(
2651        unsafe { &(*(::std::ptr::null::<_zend_resource>())).ptr as *const _ as usize },
2652        16usize,
2653        concat!(
2654            "Offset of field: ",
2655            stringify!(_zend_resource),
2656            "::",
2657            stringify!(ptr)
2658        )
2659    );
2660}
2661#[repr(C)]
2662#[derive(Debug, Copy, Clone)]
2663pub struct zend_property_info_list {
2664    pub num: size_t,
2665    pub num_allocated: size_t,
2666    pub ptr: [*mut _zend_property_info; 1usize],
2667}
2668#[test]
2669fn bindgen_test_layout_zend_property_info_list() {
2670    assert_eq!(
2671        ::std::mem::size_of::<zend_property_info_list>(),
2672        24usize,
2673        concat!("Size of: ", stringify!(zend_property_info_list))
2674    );
2675    assert_eq!(
2676        ::std::mem::align_of::<zend_property_info_list>(),
2677        8usize,
2678        concat!("Alignment of ", stringify!(zend_property_info_list))
2679    );
2680    assert_eq!(
2681        unsafe { &(*(::std::ptr::null::<zend_property_info_list>())).num as *const _ as usize },
2682        0usize,
2683        concat!(
2684            "Offset of field: ",
2685            stringify!(zend_property_info_list),
2686            "::",
2687            stringify!(num)
2688        )
2689    );
2690    assert_eq!(
2691        unsafe {
2692            &(*(::std::ptr::null::<zend_property_info_list>())).num_allocated as *const _ as usize
2693        },
2694        8usize,
2695        concat!(
2696            "Offset of field: ",
2697            stringify!(zend_property_info_list),
2698            "::",
2699            stringify!(num_allocated)
2700        )
2701    );
2702    assert_eq!(
2703        unsafe { &(*(::std::ptr::null::<zend_property_info_list>())).ptr as *const _ as usize },
2704        16usize,
2705        concat!(
2706            "Offset of field: ",
2707            stringify!(zend_property_info_list),
2708            "::",
2709            stringify!(ptr)
2710        )
2711    );
2712}
2713#[repr(C)]
2714#[derive(Copy, Clone)]
2715pub union zend_property_info_source_list {
2716    pub ptr: *mut _zend_property_info,
2717    pub list: usize,
2718    _bindgen_union_align: u64,
2719}
2720#[test]
2721fn bindgen_test_layout_zend_property_info_source_list() {
2722    assert_eq!(
2723        ::std::mem::size_of::<zend_property_info_source_list>(),
2724        8usize,
2725        concat!("Size of: ", stringify!(zend_property_info_source_list))
2726    );
2727    assert_eq!(
2728        ::std::mem::align_of::<zend_property_info_source_list>(),
2729        8usize,
2730        concat!("Alignment of ", stringify!(zend_property_info_source_list))
2731    );
2732    assert_eq!(
2733        unsafe {
2734            &(*(::std::ptr::null::<zend_property_info_source_list>())).ptr as *const _ as usize
2735        },
2736        0usize,
2737        concat!(
2738            "Offset of field: ",
2739            stringify!(zend_property_info_source_list),
2740            "::",
2741            stringify!(ptr)
2742        )
2743    );
2744    assert_eq!(
2745        unsafe {
2746            &(*(::std::ptr::null::<zend_property_info_source_list>())).list as *const _ as usize
2747        },
2748        0usize,
2749        concat!(
2750            "Offset of field: ",
2751            stringify!(zend_property_info_source_list),
2752            "::",
2753            stringify!(list)
2754        )
2755    );
2756}
2757#[repr(C)]
2758#[derive(Copy, Clone)]
2759pub struct _zend_reference {
2760    pub gc: zend_refcounted_h,
2761    pub val: zval,
2762    pub sources: zend_property_info_source_list,
2763}
2764#[test]
2765fn bindgen_test_layout__zend_reference() {
2766    assert_eq!(
2767        ::std::mem::size_of::<_zend_reference>(),
2768        32usize,
2769        concat!("Size of: ", stringify!(_zend_reference))
2770    );
2771    assert_eq!(
2772        ::std::mem::align_of::<_zend_reference>(),
2773        8usize,
2774        concat!("Alignment of ", stringify!(_zend_reference))
2775    );
2776    assert_eq!(
2777        unsafe { &(*(::std::ptr::null::<_zend_reference>())).gc as *const _ as usize },
2778        0usize,
2779        concat!(
2780            "Offset of field: ",
2781            stringify!(_zend_reference),
2782            "::",
2783            stringify!(gc)
2784        )
2785    );
2786    assert_eq!(
2787        unsafe { &(*(::std::ptr::null::<_zend_reference>())).val as *const _ as usize },
2788        8usize,
2789        concat!(
2790            "Offset of field: ",
2791            stringify!(_zend_reference),
2792            "::",
2793            stringify!(val)
2794        )
2795    );
2796    assert_eq!(
2797        unsafe { &(*(::std::ptr::null::<_zend_reference>())).sources as *const _ as usize },
2798        24usize,
2799        concat!(
2800            "Offset of field: ",
2801            stringify!(_zend_reference),
2802            "::",
2803            stringify!(sources)
2804        )
2805    );
2806}
2807#[repr(C)]
2808#[derive(Copy, Clone)]
2809pub struct _zend_ast_ref {
2810    pub gc: zend_refcounted_h,
2811}
2812#[test]
2813fn bindgen_test_layout__zend_ast_ref() {
2814    assert_eq!(
2815        ::std::mem::size_of::<_zend_ast_ref>(),
2816        8usize,
2817        concat!("Size of: ", stringify!(_zend_ast_ref))
2818    );
2819    assert_eq!(
2820        ::std::mem::align_of::<_zend_ast_ref>(),
2821        4usize,
2822        concat!("Alignment of ", stringify!(_zend_ast_ref))
2823    );
2824    assert_eq!(
2825        unsafe { &(*(::std::ptr::null::<_zend_ast_ref>())).gc as *const _ as usize },
2826        0usize,
2827        concat!(
2828            "Offset of field: ",
2829            stringify!(_zend_ast_ref),
2830            "::",
2831            stringify!(gc)
2832        )
2833    );
2834}
2835extern "C" {
2836    pub fn zend_map_ptr_reset();
2837}
2838extern "C" {
2839    pub fn zend_map_ptr_new() -> *mut ::std::os::raw::c_void;
2840}
2841extern "C" {
2842    pub fn zend_map_ptr_extend(last: size_t);
2843}
2844#[repr(C)]
2845#[derive(Debug, Copy, Clone)]
2846pub struct _zend_leak_info {
2847    pub addr: *mut ::std::os::raw::c_void,
2848    pub size: size_t,
2849    pub filename: *const ::std::os::raw::c_char,
2850    pub orig_filename: *const ::std::os::raw::c_char,
2851    pub lineno: u32,
2852    pub orig_lineno: u32,
2853}
2854#[test]
2855fn bindgen_test_layout__zend_leak_info() {
2856    assert_eq!(
2857        ::std::mem::size_of::<_zend_leak_info>(),
2858        40usize,
2859        concat!("Size of: ", stringify!(_zend_leak_info))
2860    );
2861    assert_eq!(
2862        ::std::mem::align_of::<_zend_leak_info>(),
2863        8usize,
2864        concat!("Alignment of ", stringify!(_zend_leak_info))
2865    );
2866    assert_eq!(
2867        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).addr as *const _ as usize },
2868        0usize,
2869        concat!(
2870            "Offset of field: ",
2871            stringify!(_zend_leak_info),
2872            "::",
2873            stringify!(addr)
2874        )
2875    );
2876    assert_eq!(
2877        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).size as *const _ as usize },
2878        8usize,
2879        concat!(
2880            "Offset of field: ",
2881            stringify!(_zend_leak_info),
2882            "::",
2883            stringify!(size)
2884        )
2885    );
2886    assert_eq!(
2887        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).filename as *const _ as usize },
2888        16usize,
2889        concat!(
2890            "Offset of field: ",
2891            stringify!(_zend_leak_info),
2892            "::",
2893            stringify!(filename)
2894        )
2895    );
2896    assert_eq!(
2897        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).orig_filename as *const _ as usize },
2898        24usize,
2899        concat!(
2900            "Offset of field: ",
2901            stringify!(_zend_leak_info),
2902            "::",
2903            stringify!(orig_filename)
2904        )
2905    );
2906    assert_eq!(
2907        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).lineno as *const _ as usize },
2908        32usize,
2909        concat!(
2910            "Offset of field: ",
2911            stringify!(_zend_leak_info),
2912            "::",
2913            stringify!(lineno)
2914        )
2915    );
2916    assert_eq!(
2917        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).orig_lineno as *const _ as usize },
2918        36usize,
2919        concat!(
2920            "Offset of field: ",
2921            stringify!(_zend_leak_info),
2922            "::",
2923            stringify!(orig_lineno)
2924        )
2925    );
2926}
2927pub type zend_leak_info = _zend_leak_info;
2928extern "C" {
2929    pub fn zend_strndup(
2930        s: *const ::std::os::raw::c_char,
2931        length: size_t,
2932    ) -> *mut ::std::os::raw::c_char;
2933}
2934extern "C" {
2935    pub fn _zend_mem_block_size(ptr: *mut ::std::os::raw::c_void) -> size_t;
2936}
2937extern "C" {
2938    pub fn zend_set_memory_limit(memory_limit: size_t) -> ::std::os::raw::c_int;
2939}
2940extern "C" {
2941    pub fn zend_memory_usage(real_usage: ::std::os::raw::c_int) -> size_t;
2942}
2943extern "C" {
2944    pub fn zend_memory_peak_usage(real_usage: ::std::os::raw::c_int) -> size_t;
2945}
2946#[repr(C)]
2947#[derive(Debug, Copy, Clone)]
2948pub struct _zend_mm_heap {
2949    _unused: [u8; 0],
2950}
2951pub type zend_mm_heap = _zend_mm_heap;
2952extern "C" {
2953    pub fn zend_mm_startup() -> *mut zend_mm_heap;
2954}
2955extern "C" {
2956    pub fn zend_mm_shutdown(
2957        heap: *mut zend_mm_heap,
2958        full_shutdown: ::std::os::raw::c_int,
2959        silent: ::std::os::raw::c_int,
2960    );
2961}
2962extern "C" {
2963    pub fn _zend_mm_alloc(heap: *mut zend_mm_heap, size: size_t) -> *mut ::std::os::raw::c_void;
2964}
2965extern "C" {
2966    pub fn _zend_mm_free(heap: *mut zend_mm_heap, p: *mut ::std::os::raw::c_void);
2967}
2968extern "C" {
2969    pub fn _zend_mm_realloc(
2970        heap: *mut zend_mm_heap,
2971        p: *mut ::std::os::raw::c_void,
2972        size: size_t,
2973    ) -> *mut ::std::os::raw::c_void;
2974}
2975extern "C" {
2976    pub fn _zend_mm_realloc2(
2977        heap: *mut zend_mm_heap,
2978        p: *mut ::std::os::raw::c_void,
2979        size: size_t,
2980        copy_size: size_t,
2981    ) -> *mut ::std::os::raw::c_void;
2982}
2983extern "C" {
2984    pub fn _zend_mm_block_size(heap: *mut zend_mm_heap, p: *mut ::std::os::raw::c_void) -> size_t;
2985}
2986extern "C" {
2987    pub fn zend_mm_set_heap(new_heap: *mut zend_mm_heap) -> *mut zend_mm_heap;
2988}
2989extern "C" {
2990    pub fn zend_mm_get_heap() -> *mut zend_mm_heap;
2991}
2992extern "C" {
2993    pub fn zend_mm_gc(heap: *mut zend_mm_heap) -> size_t;
2994}
2995extern "C" {
2996    pub fn zend_mm_is_custom_heap(new_heap: *mut zend_mm_heap) -> ::std::os::raw::c_int;
2997}
2998extern "C" {
2999    pub fn zend_mm_set_custom_handlers(
3000        heap: *mut zend_mm_heap,
3001        _malloc: ::std::option::Option<
3002            unsafe extern "C" fn(arg1: size_t) -> *mut ::std::os::raw::c_void,
3003        >,
3004        _free: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
3005        _realloc: ::std::option::Option<
3006            unsafe extern "C" fn(
3007                arg1: *mut ::std::os::raw::c_void,
3008                arg2: size_t,
3009            ) -> *mut ::std::os::raw::c_void,
3010        >,
3011    );
3012}
3013extern "C" {
3014    pub fn zend_mm_get_custom_handlers(
3015        heap: *mut zend_mm_heap,
3016        _malloc: *mut ::std::option::Option<
3017            unsafe extern "C" fn(arg1: size_t) -> *mut ::std::os::raw::c_void,
3018        >,
3019        _free: *mut ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
3020        _realloc: *mut ::std::option::Option<
3021            unsafe extern "C" fn(
3022                arg1: *mut ::std::os::raw::c_void,
3023                arg2: size_t,
3024            ) -> *mut ::std::os::raw::c_void,
3025        >,
3026    );
3027}
3028pub type zend_mm_storage = _zend_mm_storage;
3029pub type zend_mm_chunk_alloc_t = ::std::option::Option<
3030    unsafe extern "C" fn(
3031        storage: *mut zend_mm_storage,
3032        size: size_t,
3033        alignment: size_t,
3034    ) -> *mut ::std::os::raw::c_void,
3035>;
3036pub type zend_mm_chunk_free_t = ::std::option::Option<
3037    unsafe extern "C" fn(
3038        storage: *mut zend_mm_storage,
3039        chunk: *mut ::std::os::raw::c_void,
3040        size: size_t,
3041    ),
3042>;
3043pub type zend_mm_chunk_truncate_t = ::std::option::Option<
3044    unsafe extern "C" fn(
3045        storage: *mut zend_mm_storage,
3046        chunk: *mut ::std::os::raw::c_void,
3047        old_size: size_t,
3048        new_size: size_t,
3049    ) -> ::std::os::raw::c_int,
3050>;
3051pub type zend_mm_chunk_extend_t = ::std::option::Option<
3052    unsafe extern "C" fn(
3053        storage: *mut zend_mm_storage,
3054        chunk: *mut ::std::os::raw::c_void,
3055        old_size: size_t,
3056        new_size: size_t,
3057    ) -> ::std::os::raw::c_int,
3058>;
3059#[repr(C)]
3060#[derive(Debug, Copy, Clone)]
3061pub struct _zend_mm_handlers {
3062    pub chunk_alloc: zend_mm_chunk_alloc_t,
3063    pub chunk_free: zend_mm_chunk_free_t,
3064    pub chunk_truncate: zend_mm_chunk_truncate_t,
3065    pub chunk_extend: zend_mm_chunk_extend_t,
3066}
3067#[test]
3068fn bindgen_test_layout__zend_mm_handlers() {
3069    assert_eq!(
3070        ::std::mem::size_of::<_zend_mm_handlers>(),
3071        32usize,
3072        concat!("Size of: ", stringify!(_zend_mm_handlers))
3073    );
3074    assert_eq!(
3075        ::std::mem::align_of::<_zend_mm_handlers>(),
3076        8usize,
3077        concat!("Alignment of ", stringify!(_zend_mm_handlers))
3078    );
3079    assert_eq!(
3080        unsafe { &(*(::std::ptr::null::<_zend_mm_handlers>())).chunk_alloc as *const _ as usize },
3081        0usize,
3082        concat!(
3083            "Offset of field: ",
3084            stringify!(_zend_mm_handlers),
3085            "::",
3086            stringify!(chunk_alloc)
3087        )
3088    );
3089    assert_eq!(
3090        unsafe { &(*(::std::ptr::null::<_zend_mm_handlers>())).chunk_free as *const _ as usize },
3091        8usize,
3092        concat!(
3093            "Offset of field: ",
3094            stringify!(_zend_mm_handlers),
3095            "::",
3096            stringify!(chunk_free)
3097        )
3098    );
3099    assert_eq!(
3100        unsafe {
3101            &(*(::std::ptr::null::<_zend_mm_handlers>())).chunk_truncate as *const _ as usize
3102        },
3103        16usize,
3104        concat!(
3105            "Offset of field: ",
3106            stringify!(_zend_mm_handlers),
3107            "::",
3108            stringify!(chunk_truncate)
3109        )
3110    );
3111    assert_eq!(
3112        unsafe { &(*(::std::ptr::null::<_zend_mm_handlers>())).chunk_extend as *const _ as usize },
3113        24usize,
3114        concat!(
3115            "Offset of field: ",
3116            stringify!(_zend_mm_handlers),
3117            "::",
3118            stringify!(chunk_extend)
3119        )
3120    );
3121}
3122pub type zend_mm_handlers = _zend_mm_handlers;
3123#[repr(C)]
3124#[derive(Debug, Copy, Clone)]
3125pub struct _zend_mm_storage {
3126    pub handlers: zend_mm_handlers,
3127    pub data: *mut ::std::os::raw::c_void,
3128}
3129#[test]
3130fn bindgen_test_layout__zend_mm_storage() {
3131    assert_eq!(
3132        ::std::mem::size_of::<_zend_mm_storage>(),
3133        40usize,
3134        concat!("Size of: ", stringify!(_zend_mm_storage))
3135    );
3136    assert_eq!(
3137        ::std::mem::align_of::<_zend_mm_storage>(),
3138        8usize,
3139        concat!("Alignment of ", stringify!(_zend_mm_storage))
3140    );
3141    assert_eq!(
3142        unsafe { &(*(::std::ptr::null::<_zend_mm_storage>())).handlers as *const _ as usize },
3143        0usize,
3144        concat!(
3145            "Offset of field: ",
3146            stringify!(_zend_mm_storage),
3147            "::",
3148            stringify!(handlers)
3149        )
3150    );
3151    assert_eq!(
3152        unsafe { &(*(::std::ptr::null::<_zend_mm_storage>())).data as *const _ as usize },
3153        32usize,
3154        concat!(
3155            "Offset of field: ",
3156            stringify!(_zend_mm_storage),
3157            "::",
3158            stringify!(data)
3159        )
3160    );
3161}
3162extern "C" {
3163    pub fn zend_mm_get_storage(heap: *mut zend_mm_heap) -> *mut zend_mm_storage;
3164}
3165extern "C" {
3166    pub fn zend_mm_startup_ex(
3167        handlers: *const zend_mm_handlers,
3168        data: *mut ::std::os::raw::c_void,
3169        data_size: size_t,
3170    ) -> *mut zend_mm_heap;
3171}
3172#[repr(C)]
3173#[derive(Debug, Copy, Clone)]
3174pub struct _zend_llist_element {
3175    pub next: *mut _zend_llist_element,
3176    pub prev: *mut _zend_llist_element,
3177    pub data: [::std::os::raw::c_char; 1usize],
3178}
3179#[test]
3180fn bindgen_test_layout__zend_llist_element() {
3181    assert_eq!(
3182        ::std::mem::size_of::<_zend_llist_element>(),
3183        24usize,
3184        concat!("Size of: ", stringify!(_zend_llist_element))
3185    );
3186    assert_eq!(
3187        ::std::mem::align_of::<_zend_llist_element>(),
3188        8usize,
3189        concat!("Alignment of ", stringify!(_zend_llist_element))
3190    );
3191    assert_eq!(
3192        unsafe { &(*(::std::ptr::null::<_zend_llist_element>())).next as *const _ as usize },
3193        0usize,
3194        concat!(
3195            "Offset of field: ",
3196            stringify!(_zend_llist_element),
3197            "::",
3198            stringify!(next)
3199        )
3200    );
3201    assert_eq!(
3202        unsafe { &(*(::std::ptr::null::<_zend_llist_element>())).prev as *const _ as usize },
3203        8usize,
3204        concat!(
3205            "Offset of field: ",
3206            stringify!(_zend_llist_element),
3207            "::",
3208            stringify!(prev)
3209        )
3210    );
3211    assert_eq!(
3212        unsafe { &(*(::std::ptr::null::<_zend_llist_element>())).data as *const _ as usize },
3213        16usize,
3214        concat!(
3215            "Offset of field: ",
3216            stringify!(_zend_llist_element),
3217            "::",
3218            stringify!(data)
3219        )
3220    );
3221}
3222pub type zend_llist_element = _zend_llist_element;
3223pub type llist_dtor_func_t =
3224    ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>;
3225pub type llist_compare_func_t = ::std::option::Option<
3226    unsafe extern "C" fn(
3227        arg1: *mut *const zend_llist_element,
3228        arg2: *mut *const zend_llist_element,
3229    ) -> ::std::os::raw::c_int,
3230>;
3231pub type llist_apply_with_args_func_t = ::std::option::Option<
3232    unsafe extern "C" fn(
3233        data: *mut ::std::os::raw::c_void,
3234        num_args: ::std::os::raw::c_int,
3235        args: *mut __va_list_tag,
3236    ),
3237>;
3238pub type llist_apply_with_arg_func_t = ::std::option::Option<
3239    unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, arg: *mut ::std::os::raw::c_void),
3240>;
3241pub type llist_apply_func_t =
3242    ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>;
3243#[repr(C)]
3244#[derive(Debug, Copy, Clone)]
3245pub struct _zend_llist {
3246    pub head: *mut zend_llist_element,
3247    pub tail: *mut zend_llist_element,
3248    pub count: size_t,
3249    pub size: size_t,
3250    pub dtor: llist_dtor_func_t,
3251    pub persistent: ::std::os::raw::c_uchar,
3252    pub traverse_ptr: *mut zend_llist_element,
3253}
3254#[test]
3255fn bindgen_test_layout__zend_llist() {
3256    assert_eq!(
3257        ::std::mem::size_of::<_zend_llist>(),
3258        56usize,
3259        concat!("Size of: ", stringify!(_zend_llist))
3260    );
3261    assert_eq!(
3262        ::std::mem::align_of::<_zend_llist>(),
3263        8usize,
3264        concat!("Alignment of ", stringify!(_zend_llist))
3265    );
3266    assert_eq!(
3267        unsafe { &(*(::std::ptr::null::<_zend_llist>())).head as *const _ as usize },
3268        0usize,
3269        concat!(
3270            "Offset of field: ",
3271            stringify!(_zend_llist),
3272            "::",
3273            stringify!(head)
3274        )
3275    );
3276    assert_eq!(
3277        unsafe { &(*(::std::ptr::null::<_zend_llist>())).tail as *const _ as usize },
3278        8usize,
3279        concat!(
3280            "Offset of field: ",
3281            stringify!(_zend_llist),
3282            "::",
3283            stringify!(tail)
3284        )
3285    );
3286    assert_eq!(
3287        unsafe { &(*(::std::ptr::null::<_zend_llist>())).count as *const _ as usize },
3288        16usize,
3289        concat!(
3290            "Offset of field: ",
3291            stringify!(_zend_llist),
3292            "::",
3293            stringify!(count)
3294        )
3295    );
3296    assert_eq!(
3297        unsafe { &(*(::std::ptr::null::<_zend_llist>())).size as *const _ as usize },
3298        24usize,
3299        concat!(
3300            "Offset of field: ",
3301            stringify!(_zend_llist),
3302            "::",
3303            stringify!(size)
3304        )
3305    );
3306    assert_eq!(
3307        unsafe { &(*(::std::ptr::null::<_zend_llist>())).dtor as *const _ as usize },
3308        32usize,
3309        concat!(
3310            "Offset of field: ",
3311            stringify!(_zend_llist),
3312            "::",
3313            stringify!(dtor)
3314        )
3315    );
3316    assert_eq!(
3317        unsafe { &(*(::std::ptr::null::<_zend_llist>())).persistent as *const _ as usize },
3318        40usize,
3319        concat!(
3320            "Offset of field: ",
3321            stringify!(_zend_llist),
3322            "::",
3323            stringify!(persistent)
3324        )
3325    );
3326    assert_eq!(
3327        unsafe { &(*(::std::ptr::null::<_zend_llist>())).traverse_ptr as *const _ as usize },
3328        48usize,
3329        concat!(
3330            "Offset of field: ",
3331            stringify!(_zend_llist),
3332            "::",
3333            stringify!(traverse_ptr)
3334        )
3335    );
3336}
3337pub type zend_llist = _zend_llist;
3338pub type zend_llist_position = *mut zend_llist_element;
3339extern "C" {
3340    pub fn zend_llist_init(
3341        l: *mut zend_llist,
3342        size: size_t,
3343        dtor: llist_dtor_func_t,
3344        persistent: ::std::os::raw::c_uchar,
3345    );
3346}
3347extern "C" {
3348    pub fn zend_llist_add_element(l: *mut zend_llist, element: *mut ::std::os::raw::c_void);
3349}
3350extern "C" {
3351    pub fn zend_llist_prepend_element(l: *mut zend_llist, element: *mut ::std::os::raw::c_void);
3352}
3353extern "C" {
3354    pub fn zend_llist_del_element(
3355        l: *mut zend_llist,
3356        element: *mut ::std::os::raw::c_void,
3357        compare: ::std::option::Option<
3358            unsafe extern "C" fn(
3359                element1: *mut ::std::os::raw::c_void,
3360                element2: *mut ::std::os::raw::c_void,
3361            ) -> ::std::os::raw::c_int,
3362        >,
3363    );
3364}
3365extern "C" {
3366    pub fn zend_llist_destroy(l: *mut zend_llist);
3367}
3368extern "C" {
3369    pub fn zend_llist_clean(l: *mut zend_llist);
3370}
3371extern "C" {
3372    pub fn zend_llist_remove_tail(l: *mut zend_llist);
3373}
3374extern "C" {
3375    pub fn zend_llist_copy(dst: *mut zend_llist, src: *mut zend_llist);
3376}
3377extern "C" {
3378    pub fn zend_llist_apply(l: *mut zend_llist, func: llist_apply_func_t);
3379}
3380extern "C" {
3381    pub fn zend_llist_apply_with_del(
3382        l: *mut zend_llist,
3383        func: ::std::option::Option<
3384            unsafe extern "C" fn(data: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
3385        >,
3386    );
3387}
3388extern "C" {
3389    pub fn zend_llist_apply_with_argument(
3390        l: *mut zend_llist,
3391        func: llist_apply_with_arg_func_t,
3392        arg: *mut ::std::os::raw::c_void,
3393    );
3394}
3395extern "C" {
3396    pub fn zend_llist_apply_with_arguments(
3397        l: *mut zend_llist,
3398        func: llist_apply_with_args_func_t,
3399        num_args: ::std::os::raw::c_int,
3400        ...
3401    );
3402}
3403extern "C" {
3404    pub fn zend_llist_count(l: *mut zend_llist) -> size_t;
3405}
3406extern "C" {
3407    pub fn zend_llist_sort(l: *mut zend_llist, comp_func: llist_compare_func_t);
3408}
3409extern "C" {
3410    pub fn zend_llist_get_first_ex(
3411        l: *mut zend_llist,
3412        pos: *mut zend_llist_position,
3413    ) -> *mut ::std::os::raw::c_void;
3414}
3415extern "C" {
3416    pub fn zend_llist_get_last_ex(
3417        l: *mut zend_llist,
3418        pos: *mut zend_llist_position,
3419    ) -> *mut ::std::os::raw::c_void;
3420}
3421extern "C" {
3422    pub fn zend_llist_get_next_ex(
3423        l: *mut zend_llist,
3424        pos: *mut zend_llist_position,
3425    ) -> *mut ::std::os::raw::c_void;
3426}
3427extern "C" {
3428    pub fn zend_llist_get_prev_ex(
3429        l: *mut zend_llist,
3430        pos: *mut zend_llist_position,
3431    ) -> *mut ::std::os::raw::c_void;
3432}
3433pub type zend_string_copy_storage_func_t = ::std::option::Option<unsafe extern "C" fn()>;
3434pub type zend_new_interned_string_func_t =
3435    ::std::option::Option<unsafe extern "C" fn(str_: *mut zend_string) -> *mut zend_string>;
3436pub type zend_string_init_interned_func_t = ::std::option::Option<
3437    unsafe extern "C" fn(
3438        str_: *const ::std::os::raw::c_char,
3439        size: size_t,
3440        permanent: ::std::os::raw::c_int,
3441    ) -> *mut zend_string,
3442>;
3443extern "C" {
3444    pub static mut zend_new_interned_string: zend_new_interned_string_func_t;
3445}
3446extern "C" {
3447    pub static mut zend_string_init_interned: zend_string_init_interned_func_t;
3448}
3449extern "C" {
3450    pub fn zend_string_hash_func(str_: *mut zend_string) -> zend_ulong;
3451}
3452extern "C" {
3453    pub fn zend_hash_func(str_: *const ::std::os::raw::c_char, len: size_t) -> zend_ulong;
3454}
3455extern "C" {
3456    pub fn zend_interned_string_find_permanent(str_: *mut zend_string) -> *mut zend_string;
3457}
3458extern "C" {
3459    pub fn zend_interned_strings_init();
3460}
3461extern "C" {
3462    pub fn zend_interned_strings_dtor();
3463}
3464extern "C" {
3465    pub fn zend_interned_strings_activate();
3466}
3467extern "C" {
3468    pub fn zend_interned_strings_deactivate();
3469}
3470extern "C" {
3471    pub fn zend_interned_strings_set_request_storage_handlers(
3472        handler: zend_new_interned_string_func_t,
3473        init_handler: zend_string_init_interned_func_t,
3474    );
3475}
3476extern "C" {
3477    pub fn zend_interned_strings_switch_storage(request: zend_bool);
3478}
3479extern "C" {
3480    pub static mut zend_empty_string: *mut zend_string;
3481}
3482extern "C" {
3483    pub static mut zend_one_char_string: [*mut zend_string; 256usize];
3484}
3485extern "C" {
3486    pub static mut zend_known_strings: *mut *mut zend_string;
3487}
3488extern "C" {
3489    pub fn zend_string_equal_val(s1: *mut zend_string, s2: *mut zend_string) -> zend_bool;
3490}
3491pub const _zend_known_string_id_ZEND_STR_FILE: _zend_known_string_id = 0;
3492pub const _zend_known_string_id_ZEND_STR_LINE: _zend_known_string_id = 1;
3493pub const _zend_known_string_id_ZEND_STR_FUNCTION: _zend_known_string_id = 2;
3494pub const _zend_known_string_id_ZEND_STR_CLASS: _zend_known_string_id = 3;
3495pub const _zend_known_string_id_ZEND_STR_OBJECT: _zend_known_string_id = 4;
3496pub const _zend_known_string_id_ZEND_STR_TYPE: _zend_known_string_id = 5;
3497pub const _zend_known_string_id_ZEND_STR_OBJECT_OPERATOR: _zend_known_string_id = 6;
3498pub const _zend_known_string_id_ZEND_STR_PAAMAYIM_NEKUDOTAYIM: _zend_known_string_id = 7;
3499pub const _zend_known_string_id_ZEND_STR_ARGS: _zend_known_string_id = 8;
3500pub const _zend_known_string_id_ZEND_STR_UNKNOWN: _zend_known_string_id = 9;
3501pub const _zend_known_string_id_ZEND_STR_EVAL: _zend_known_string_id = 10;
3502pub const _zend_known_string_id_ZEND_STR_INCLUDE: _zend_known_string_id = 11;
3503pub const _zend_known_string_id_ZEND_STR_REQUIRE: _zend_known_string_id = 12;
3504pub const _zend_known_string_id_ZEND_STR_INCLUDE_ONCE: _zend_known_string_id = 13;
3505pub const _zend_known_string_id_ZEND_STR_REQUIRE_ONCE: _zend_known_string_id = 14;
3506pub const _zend_known_string_id_ZEND_STR_SCALAR: _zend_known_string_id = 15;
3507pub const _zend_known_string_id_ZEND_STR_ERROR_REPORTING: _zend_known_string_id = 16;
3508pub const _zend_known_string_id_ZEND_STR_STATIC: _zend_known_string_id = 17;
3509pub const _zend_known_string_id_ZEND_STR_THIS: _zend_known_string_id = 18;
3510pub const _zend_known_string_id_ZEND_STR_VALUE: _zend_known_string_id = 19;
3511pub const _zend_known_string_id_ZEND_STR_KEY: _zend_known_string_id = 20;
3512pub const _zend_known_string_id_ZEND_STR_MAGIC_AUTOLOAD: _zend_known_string_id = 21;
3513pub const _zend_known_string_id_ZEND_STR_MAGIC_INVOKE: _zend_known_string_id = 22;
3514pub const _zend_known_string_id_ZEND_STR_PREVIOUS: _zend_known_string_id = 23;
3515pub const _zend_known_string_id_ZEND_STR_CODE: _zend_known_string_id = 24;
3516pub const _zend_known_string_id_ZEND_STR_MESSAGE: _zend_known_string_id = 25;
3517pub const _zend_known_string_id_ZEND_STR_SEVERITY: _zend_known_string_id = 26;
3518pub const _zend_known_string_id_ZEND_STR_STRING: _zend_known_string_id = 27;
3519pub const _zend_known_string_id_ZEND_STR_TRACE: _zend_known_string_id = 28;
3520pub const _zend_known_string_id_ZEND_STR_SCHEME: _zend_known_string_id = 29;
3521pub const _zend_known_string_id_ZEND_STR_HOST: _zend_known_string_id = 30;
3522pub const _zend_known_string_id_ZEND_STR_PORT: _zend_known_string_id = 31;
3523pub const _zend_known_string_id_ZEND_STR_USER: _zend_known_string_id = 32;
3524pub const _zend_known_string_id_ZEND_STR_PASS: _zend_known_string_id = 33;
3525pub const _zend_known_string_id_ZEND_STR_PATH: _zend_known_string_id = 34;
3526pub const _zend_known_string_id_ZEND_STR_QUERY: _zend_known_string_id = 35;
3527pub const _zend_known_string_id_ZEND_STR_FRAGMENT: _zend_known_string_id = 36;
3528pub const _zend_known_string_id_ZEND_STR_NULL: _zend_known_string_id = 37;
3529pub const _zend_known_string_id_ZEND_STR_BOOLEAN: _zend_known_string_id = 38;
3530pub const _zend_known_string_id_ZEND_STR_INTEGER: _zend_known_string_id = 39;
3531pub const _zend_known_string_id_ZEND_STR_DOUBLE: _zend_known_string_id = 40;
3532pub const _zend_known_string_id_ZEND_STR_ARRAY: _zend_known_string_id = 41;
3533pub const _zend_known_string_id_ZEND_STR_RESOURCE: _zend_known_string_id = 42;
3534pub const _zend_known_string_id_ZEND_STR_CLOSED_RESOURCE: _zend_known_string_id = 43;
3535pub const _zend_known_string_id_ZEND_STR_NAME: _zend_known_string_id = 44;
3536pub const _zend_known_string_id_ZEND_STR_ARGV: _zend_known_string_id = 45;
3537pub const _zend_known_string_id_ZEND_STR_ARGC: _zend_known_string_id = 46;
3538pub const _zend_known_string_id_ZEND_STR_ARRAY_CAPITALIZED: _zend_known_string_id = 47;
3539pub const _zend_known_string_id_ZEND_STR_LAST_KNOWN: _zend_known_string_id = 48;
3540pub type _zend_known_string_id = ::std::os::raw::c_uint;
3541pub use self::_zend_known_string_id as zend_known_string_id;
3542extern "C" {
3543    pub static zend_empty_array: HashTable;
3544}
3545#[repr(C)]
3546#[derive(Debug, Copy, Clone)]
3547pub struct _zend_hash_key {
3548    pub h: zend_ulong,
3549    pub key: *mut zend_string,
3550}
3551#[test]
3552fn bindgen_test_layout__zend_hash_key() {
3553    assert_eq!(
3554        ::std::mem::size_of::<_zend_hash_key>(),
3555        16usize,
3556        concat!("Size of: ", stringify!(_zend_hash_key))
3557    );
3558    assert_eq!(
3559        ::std::mem::align_of::<_zend_hash_key>(),
3560        8usize,
3561        concat!("Alignment of ", stringify!(_zend_hash_key))
3562    );
3563    assert_eq!(
3564        unsafe { &(*(::std::ptr::null::<_zend_hash_key>())).h as *const _ as usize },
3565        0usize,
3566        concat!(
3567            "Offset of field: ",
3568            stringify!(_zend_hash_key),
3569            "::",
3570            stringify!(h)
3571        )
3572    );
3573    assert_eq!(
3574        unsafe { &(*(::std::ptr::null::<_zend_hash_key>())).key as *const _ as usize },
3575        8usize,
3576        concat!(
3577            "Offset of field: ",
3578            stringify!(_zend_hash_key),
3579            "::",
3580            stringify!(key)
3581        )
3582    );
3583}
3584pub type zend_hash_key = _zend_hash_key;
3585pub type merge_checker_func_t = ::std::option::Option<
3586    unsafe extern "C" fn(
3587        target_ht: *mut HashTable,
3588        source_data: *mut zval,
3589        hash_key: *mut zend_hash_key,
3590        pParam: *mut ::std::os::raw::c_void,
3591    ) -> zend_bool,
3592>;
3593extern "C" {
3594    pub fn _zend_hash_init(
3595        ht: *mut HashTable,
3596        nSize: u32,
3597        pDestructor: dtor_func_t,
3598        persistent: zend_bool,
3599    );
3600}
3601extern "C" {
3602    pub fn zend_hash_destroy(ht: *mut HashTable);
3603}
3604extern "C" {
3605    pub fn zend_hash_clean(ht: *mut HashTable);
3606}
3607extern "C" {
3608    pub fn zend_hash_real_init(ht: *mut HashTable, packed: zend_bool);
3609}
3610extern "C" {
3611    pub fn zend_hash_real_init_packed(ht: *mut HashTable);
3612}
3613extern "C" {
3614    pub fn zend_hash_real_init_mixed(ht: *mut HashTable);
3615}
3616extern "C" {
3617    pub fn zend_hash_packed_to_hash(ht: *mut HashTable);
3618}
3619extern "C" {
3620    pub fn zend_hash_to_packed(ht: *mut HashTable);
3621}
3622extern "C" {
3623    pub fn zend_hash_extend(ht: *mut HashTable, nSize: u32, packed: zend_bool);
3624}
3625extern "C" {
3626    pub fn zend_hash_discard(ht: *mut HashTable, nNumUsed: u32);
3627}
3628extern "C" {
3629    pub fn zend_hash_add_or_update(
3630        ht: *mut HashTable,
3631        key: *mut zend_string,
3632        pData: *mut zval,
3633        flag: u32,
3634    ) -> *mut zval;
3635}
3636extern "C" {
3637    pub fn zend_hash_update(
3638        ht: *mut HashTable,
3639        key: *mut zend_string,
3640        pData: *mut zval,
3641    ) -> *mut zval;
3642}
3643extern "C" {
3644    pub fn zend_hash_update_ind(
3645        ht: *mut HashTable,
3646        key: *mut zend_string,
3647        pData: *mut zval,
3648    ) -> *mut zval;
3649}
3650extern "C" {
3651    pub fn zend_hash_add(ht: *mut HashTable, key: *mut zend_string, pData: *mut zval) -> *mut zval;
3652}
3653extern "C" {
3654    pub fn zend_hash_add_new(
3655        ht: *mut HashTable,
3656        key: *mut zend_string,
3657        pData: *mut zval,
3658    ) -> *mut zval;
3659}
3660extern "C" {
3661    pub fn zend_hash_str_add_or_update(
3662        ht: *mut HashTable,
3663        key: *const ::std::os::raw::c_char,
3664        len: size_t,
3665        pData: *mut zval,
3666        flag: u32,
3667    ) -> *mut zval;
3668}
3669extern "C" {
3670    pub fn zend_hash_str_update(
3671        ht: *mut HashTable,
3672        key: *const ::std::os::raw::c_char,
3673        len: size_t,
3674        pData: *mut zval,
3675    ) -> *mut zval;
3676}
3677extern "C" {
3678    pub fn zend_hash_str_update_ind(
3679        ht: *mut HashTable,
3680        key: *const ::std::os::raw::c_char,
3681        len: size_t,
3682        pData: *mut zval,
3683    ) -> *mut zval;
3684}
3685extern "C" {
3686    pub fn zend_hash_str_add(
3687        ht: *mut HashTable,
3688        key: *const ::std::os::raw::c_char,
3689        len: size_t,
3690        pData: *mut zval,
3691    ) -> *mut zval;
3692}
3693extern "C" {
3694    pub fn zend_hash_str_add_new(
3695        ht: *mut HashTable,
3696        key: *const ::std::os::raw::c_char,
3697        len: size_t,
3698        pData: *mut zval,
3699    ) -> *mut zval;
3700}
3701extern "C" {
3702    pub fn zend_hash_index_add_or_update(
3703        ht: *mut HashTable,
3704        h: zend_ulong,
3705        pData: *mut zval,
3706        flag: u32,
3707    ) -> *mut zval;
3708}
3709extern "C" {
3710    pub fn zend_hash_index_add(ht: *mut HashTable, h: zend_ulong, pData: *mut zval) -> *mut zval;
3711}
3712extern "C" {
3713    pub fn zend_hash_index_add_new(
3714        ht: *mut HashTable,
3715        h: zend_ulong,
3716        pData: *mut zval,
3717    ) -> *mut zval;
3718}
3719extern "C" {
3720    pub fn zend_hash_index_update(ht: *mut HashTable, h: zend_ulong, pData: *mut zval)
3721        -> *mut zval;
3722}
3723extern "C" {
3724    pub fn zend_hash_next_index_insert(ht: *mut HashTable, pData: *mut zval) -> *mut zval;
3725}
3726extern "C" {
3727    pub fn zend_hash_next_index_insert_new(ht: *mut HashTable, pData: *mut zval) -> *mut zval;
3728}
3729extern "C" {
3730    pub fn zend_hash_index_add_empty_element(ht: *mut HashTable, h: zend_ulong) -> *mut zval;
3731}
3732extern "C" {
3733    pub fn zend_hash_add_empty_element(ht: *mut HashTable, key: *mut zend_string) -> *mut zval;
3734}
3735extern "C" {
3736    pub fn zend_hash_str_add_empty_element(
3737        ht: *mut HashTable,
3738        key: *const ::std::os::raw::c_char,
3739        len: size_t,
3740    ) -> *mut zval;
3741}
3742extern "C" {
3743    pub fn zend_hash_set_bucket_key(
3744        ht: *mut HashTable,
3745        p: *mut Bucket,
3746        key: *mut zend_string,
3747    ) -> *mut zval;
3748}
3749pub type apply_func_t =
3750    ::std::option::Option<unsafe extern "C" fn(pDest: *mut zval) -> ::std::os::raw::c_int>;
3751pub type apply_func_arg_t = ::std::option::Option<
3752    unsafe extern "C" fn(
3753        pDest: *mut zval,
3754        argument: *mut ::std::os::raw::c_void,
3755    ) -> ::std::os::raw::c_int,
3756>;
3757pub type apply_func_args_t = ::std::option::Option<
3758    unsafe extern "C" fn(
3759        pDest: *mut zval,
3760        num_args: ::std::os::raw::c_int,
3761        args: *mut __va_list_tag,
3762        hash_key: *mut zend_hash_key,
3763    ) -> ::std::os::raw::c_int,
3764>;
3765extern "C" {
3766    pub fn zend_hash_graceful_destroy(ht: *mut HashTable);
3767}
3768extern "C" {
3769    pub fn zend_hash_graceful_reverse_destroy(ht: *mut HashTable);
3770}
3771extern "C" {
3772    pub fn zend_hash_apply(ht: *mut HashTable, apply_func: apply_func_t);
3773}
3774extern "C" {
3775    pub fn zend_hash_apply_with_argument(
3776        ht: *mut HashTable,
3777        apply_func: apply_func_arg_t,
3778        arg1: *mut ::std::os::raw::c_void,
3779    );
3780}
3781extern "C" {
3782    pub fn zend_hash_apply_with_arguments(
3783        ht: *mut HashTable,
3784        apply_func: apply_func_args_t,
3785        arg1: ::std::os::raw::c_int,
3786        ...
3787    );
3788}
3789extern "C" {
3790    pub fn zend_hash_reverse_apply(ht: *mut HashTable, apply_func: apply_func_t);
3791}
3792extern "C" {
3793    pub fn zend_hash_del(ht: *mut HashTable, key: *mut zend_string) -> ::std::os::raw::c_int;
3794}
3795extern "C" {
3796    pub fn zend_hash_del_ind(ht: *mut HashTable, key: *mut zend_string) -> ::std::os::raw::c_int;
3797}
3798extern "C" {
3799    pub fn zend_hash_str_del(
3800        ht: *mut HashTable,
3801        key: *const ::std::os::raw::c_char,
3802        len: size_t,
3803    ) -> ::std::os::raw::c_int;
3804}
3805extern "C" {
3806    pub fn zend_hash_str_del_ind(
3807        ht: *mut HashTable,
3808        key: *const ::std::os::raw::c_char,
3809        len: size_t,
3810    ) -> ::std::os::raw::c_int;
3811}
3812extern "C" {
3813    pub fn zend_hash_index_del(ht: *mut HashTable, h: zend_ulong) -> ::std::os::raw::c_int;
3814}
3815extern "C" {
3816    pub fn zend_hash_del_bucket(ht: *mut HashTable, p: *mut Bucket);
3817}
3818extern "C" {
3819    pub fn zend_hash_find(ht: *const HashTable, key: *mut zend_string) -> *mut zval;
3820}
3821extern "C" {
3822    pub fn zend_hash_str_find(
3823        ht: *const HashTable,
3824        key: *const ::std::os::raw::c_char,
3825        len: size_t,
3826    ) -> *mut zval;
3827}
3828extern "C" {
3829    pub fn zend_hash_index_find(ht: *const HashTable, h: zend_ulong) -> *mut zval;
3830}
3831extern "C" {
3832    pub fn _zend_hash_index_find(ht: *const HashTable, h: zend_ulong) -> *mut zval;
3833}
3834extern "C" {
3835    pub fn _zend_hash_find_known_hash(ht: *const HashTable, key: *mut zend_string) -> *mut zval;
3836}
3837extern "C" {
3838    pub fn zend_hash_get_current_pos(ht: *const HashTable) -> HashPosition;
3839}
3840extern "C" {
3841    pub fn zend_hash_move_forward_ex(
3842        ht: *mut HashTable,
3843        pos: *mut HashPosition,
3844    ) -> ::std::os::raw::c_int;
3845}
3846extern "C" {
3847    pub fn zend_hash_move_backwards_ex(
3848        ht: *mut HashTable,
3849        pos: *mut HashPosition,
3850    ) -> ::std::os::raw::c_int;
3851}
3852extern "C" {
3853    pub fn zend_hash_get_current_key_ex(
3854        ht: *const HashTable,
3855        str_index: *mut *mut zend_string,
3856        num_index: *mut zend_ulong,
3857        pos: *mut HashPosition,
3858    ) -> ::std::os::raw::c_int;
3859}
3860extern "C" {
3861    pub fn zend_hash_get_current_key_zval_ex(
3862        ht: *const HashTable,
3863        key: *mut zval,
3864        pos: *mut HashPosition,
3865    );
3866}
3867extern "C" {
3868    pub fn zend_hash_get_current_key_type_ex(
3869        ht: *mut HashTable,
3870        pos: *mut HashPosition,
3871    ) -> ::std::os::raw::c_int;
3872}
3873extern "C" {
3874    pub fn zend_hash_get_current_data_ex(ht: *mut HashTable, pos: *mut HashPosition) -> *mut zval;
3875}
3876extern "C" {
3877    pub fn zend_hash_internal_pointer_reset_ex(ht: *mut HashTable, pos: *mut HashPosition);
3878}
3879extern "C" {
3880    pub fn zend_hash_internal_pointer_end_ex(ht: *mut HashTable, pos: *mut HashPosition);
3881}
3882extern "C" {
3883    pub fn zend_hash_copy(
3884        target: *mut HashTable,
3885        source: *mut HashTable,
3886        pCopyConstructor: copy_ctor_func_t,
3887    );
3888}
3889extern "C" {
3890    pub fn zend_hash_merge(
3891        target: *mut HashTable,
3892        source: *mut HashTable,
3893        pCopyConstructor: copy_ctor_func_t,
3894        overwrite: zend_bool,
3895    );
3896}
3897extern "C" {
3898    pub fn zend_hash_merge_ex(
3899        target: *mut HashTable,
3900        source: *mut HashTable,
3901        pCopyConstructor: copy_ctor_func_t,
3902        pMergeSource: merge_checker_func_t,
3903        pParam: *mut ::std::os::raw::c_void,
3904    );
3905}
3906extern "C" {
3907    pub fn zend_hash_bucket_swap(p: *mut Bucket, q: *mut Bucket);
3908}
3909extern "C" {
3910    pub fn zend_hash_bucket_renum_swap(p: *mut Bucket, q: *mut Bucket);
3911}
3912extern "C" {
3913    pub fn zend_hash_bucket_packed_swap(p: *mut Bucket, q: *mut Bucket);
3914}
3915extern "C" {
3916    pub fn zend_hash_compare(
3917        ht1: *mut HashTable,
3918        ht2: *mut HashTable,
3919        compar: compare_func_t,
3920        ordered: zend_bool,
3921    ) -> ::std::os::raw::c_int;
3922}
3923extern "C" {
3924    pub fn zend_hash_sort_ex(
3925        ht: *mut HashTable,
3926        sort_func: sort_func_t,
3927        compare_func: compare_func_t,
3928        renumber: zend_bool,
3929    ) -> ::std::os::raw::c_int;
3930}
3931extern "C" {
3932    pub fn zend_hash_minmax(ht: *const HashTable, compar: compare_func_t, flag: u32) -> *mut zval;
3933}
3934extern "C" {
3935    pub fn zend_hash_rehash(ht: *mut HashTable) -> ::std::os::raw::c_int;
3936}
3937extern "C" {
3938    pub fn _zend_new_array_0() -> *mut HashTable;
3939}
3940extern "C" {
3941    pub fn _zend_new_array(size: u32) -> *mut HashTable;
3942}
3943extern "C" {
3944    pub fn zend_new_pair(val1: *mut zval, val2: *mut zval) -> *mut HashTable;
3945}
3946extern "C" {
3947    pub fn zend_array_count(ht: *mut HashTable) -> u32;
3948}
3949extern "C" {
3950    pub fn zend_array_dup(source: *mut HashTable) -> *mut HashTable;
3951}
3952extern "C" {
3953    pub fn zend_array_destroy(ht: *mut HashTable);
3954}
3955extern "C" {
3956    pub fn zend_symtable_clean(ht: *mut HashTable);
3957}
3958extern "C" {
3959    pub fn zend_symtable_to_proptable(ht: *mut HashTable) -> *mut HashTable;
3960}
3961extern "C" {
3962    pub fn zend_proptable_to_symtable(
3963        ht: *mut HashTable,
3964        always_duplicate: zend_bool,
3965    ) -> *mut HashTable;
3966}
3967extern "C" {
3968    pub fn _zend_handle_numeric_str_ex(
3969        key: *const ::std::os::raw::c_char,
3970        length: size_t,
3971        idx: *mut zend_ulong,
3972    ) -> ::std::os::raw::c_int;
3973}
3974extern "C" {
3975    pub fn zend_hash_iterator_add(ht: *mut HashTable, pos: HashPosition) -> u32;
3976}
3977extern "C" {
3978    pub fn zend_hash_iterator_pos(idx: u32, ht: *mut HashTable) -> HashPosition;
3979}
3980extern "C" {
3981    pub fn zend_hash_iterator_pos_ex(idx: u32, array: *mut zval) -> HashPosition;
3982}
3983extern "C" {
3984    pub fn zend_hash_iterator_del(idx: u32);
3985}
3986extern "C" {
3987    pub fn zend_hash_iterators_lower_pos(ht: *mut HashTable, start: HashPosition) -> HashPosition;
3988}
3989extern "C" {
3990    pub fn _zend_hash_iterators_update(ht: *mut HashTable, from: HashPosition, to: HashPosition);
3991}
3992extern "C" {
3993    pub fn zend_hash_iterators_advance(ht: *mut HashTable, step: HashPosition);
3994}
3995pub type zend_ast_kind = u16;
3996pub type zend_ast_attr = u16;
3997#[repr(C)]
3998#[derive(Debug, Copy, Clone)]
3999pub struct _zend_ast {
4000    pub kind: zend_ast_kind,
4001    pub attr: zend_ast_attr,
4002    pub lineno: u32,
4003    pub child: [*mut zend_ast; 1usize],
4004}
4005#[test]
4006fn bindgen_test_layout__zend_ast() {
4007    assert_eq!(
4008        ::std::mem::size_of::<_zend_ast>(),
4009        16usize,
4010        concat!("Size of: ", stringify!(_zend_ast))
4011    );
4012    assert_eq!(
4013        ::std::mem::align_of::<_zend_ast>(),
4014        8usize,
4015        concat!("Alignment of ", stringify!(_zend_ast))
4016    );
4017    assert_eq!(
4018        unsafe { &(*(::std::ptr::null::<_zend_ast>())).kind as *const _ as usize },
4019        0usize,
4020        concat!(
4021            "Offset of field: ",
4022            stringify!(_zend_ast),
4023            "::",
4024            stringify!(kind)
4025        )
4026    );
4027    assert_eq!(
4028        unsafe { &(*(::std::ptr::null::<_zend_ast>())).attr as *const _ as usize },
4029        2usize,
4030        concat!(
4031            "Offset of field: ",
4032            stringify!(_zend_ast),
4033            "::",
4034            stringify!(attr)
4035        )
4036    );
4037    assert_eq!(
4038        unsafe { &(*(::std::ptr::null::<_zend_ast>())).lineno as *const _ as usize },
4039        4usize,
4040        concat!(
4041            "Offset of field: ",
4042            stringify!(_zend_ast),
4043            "::",
4044            stringify!(lineno)
4045        )
4046    );
4047    assert_eq!(
4048        unsafe { &(*(::std::ptr::null::<_zend_ast>())).child as *const _ as usize },
4049        8usize,
4050        concat!(
4051            "Offset of field: ",
4052            stringify!(_zend_ast),
4053            "::",
4054            stringify!(child)
4055        )
4056    );
4057}
4058#[repr(C)]
4059#[derive(Debug, Copy, Clone)]
4060pub struct _zend_ast_list {
4061    pub kind: zend_ast_kind,
4062    pub attr: zend_ast_attr,
4063    pub lineno: u32,
4064    pub children: u32,
4065    pub child: [*mut zend_ast; 1usize],
4066}
4067#[test]
4068fn bindgen_test_layout__zend_ast_list() {
4069    assert_eq!(
4070        ::std::mem::size_of::<_zend_ast_list>(),
4071        24usize,
4072        concat!("Size of: ", stringify!(_zend_ast_list))
4073    );
4074    assert_eq!(
4075        ::std::mem::align_of::<_zend_ast_list>(),
4076        8usize,
4077        concat!("Alignment of ", stringify!(_zend_ast_list))
4078    );
4079    assert_eq!(
4080        unsafe { &(*(::std::ptr::null::<_zend_ast_list>())).kind as *const _ as usize },
4081        0usize,
4082        concat!(
4083            "Offset of field: ",
4084            stringify!(_zend_ast_list),
4085            "::",
4086            stringify!(kind)
4087        )
4088    );
4089    assert_eq!(
4090        unsafe { &(*(::std::ptr::null::<_zend_ast_list>())).attr as *const _ as usize },
4091        2usize,
4092        concat!(
4093            "Offset of field: ",
4094            stringify!(_zend_ast_list),
4095            "::",
4096            stringify!(attr)
4097        )
4098    );
4099    assert_eq!(
4100        unsafe { &(*(::std::ptr::null::<_zend_ast_list>())).lineno as *const _ as usize },
4101        4usize,
4102        concat!(
4103            "Offset of field: ",
4104            stringify!(_zend_ast_list),
4105            "::",
4106            stringify!(lineno)
4107        )
4108    );
4109    assert_eq!(
4110        unsafe { &(*(::std::ptr::null::<_zend_ast_list>())).children as *const _ as usize },
4111        8usize,
4112        concat!(
4113            "Offset of field: ",
4114            stringify!(_zend_ast_list),
4115            "::",
4116            stringify!(children)
4117        )
4118    );
4119    assert_eq!(
4120        unsafe { &(*(::std::ptr::null::<_zend_ast_list>())).child as *const _ as usize },
4121        16usize,
4122        concat!(
4123            "Offset of field: ",
4124            stringify!(_zend_ast_list),
4125            "::",
4126            stringify!(child)
4127        )
4128    );
4129}
4130pub type zend_ast_list = _zend_ast_list;
4131#[repr(C)]
4132#[derive(Copy, Clone)]
4133pub struct _zend_ast_zval {
4134    pub kind: zend_ast_kind,
4135    pub attr: zend_ast_attr,
4136    pub val: zval,
4137}
4138#[test]
4139fn bindgen_test_layout__zend_ast_zval() {
4140    assert_eq!(
4141        ::std::mem::size_of::<_zend_ast_zval>(),
4142        24usize,
4143        concat!("Size of: ", stringify!(_zend_ast_zval))
4144    );
4145    assert_eq!(
4146        ::std::mem::align_of::<_zend_ast_zval>(),
4147        8usize,
4148        concat!("Alignment of ", stringify!(_zend_ast_zval))
4149    );
4150    assert_eq!(
4151        unsafe { &(*(::std::ptr::null::<_zend_ast_zval>())).kind as *const _ as usize },
4152        0usize,
4153        concat!(
4154            "Offset of field: ",
4155            stringify!(_zend_ast_zval),
4156            "::",
4157            stringify!(kind)
4158        )
4159    );
4160    assert_eq!(
4161        unsafe { &(*(::std::ptr::null::<_zend_ast_zval>())).attr as *const _ as usize },
4162        2usize,
4163        concat!(
4164            "Offset of field: ",
4165            stringify!(_zend_ast_zval),
4166            "::",
4167            stringify!(attr)
4168        )
4169    );
4170    assert_eq!(
4171        unsafe { &(*(::std::ptr::null::<_zend_ast_zval>())).val as *const _ as usize },
4172        8usize,
4173        concat!(
4174            "Offset of field: ",
4175            stringify!(_zend_ast_zval),
4176            "::",
4177            stringify!(val)
4178        )
4179    );
4180}
4181pub type zend_ast_zval = _zend_ast_zval;
4182#[repr(C)]
4183#[derive(Debug, Copy, Clone)]
4184pub struct _zend_ast_decl {
4185    pub kind: zend_ast_kind,
4186    pub attr: zend_ast_attr,
4187    pub start_lineno: u32,
4188    pub end_lineno: u32,
4189    pub flags: u32,
4190    pub lex_pos: *mut ::std::os::raw::c_uchar,
4191    pub doc_comment: *mut zend_string,
4192    pub name: *mut zend_string,
4193    pub child: [*mut zend_ast; 4usize],
4194}
4195#[test]
4196fn bindgen_test_layout__zend_ast_decl() {
4197    assert_eq!(
4198        ::std::mem::size_of::<_zend_ast_decl>(),
4199        72usize,
4200        concat!("Size of: ", stringify!(_zend_ast_decl))
4201    );
4202    assert_eq!(
4203        ::std::mem::align_of::<_zend_ast_decl>(),
4204        8usize,
4205        concat!("Alignment of ", stringify!(_zend_ast_decl))
4206    );
4207    assert_eq!(
4208        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).kind as *const _ as usize },
4209        0usize,
4210        concat!(
4211            "Offset of field: ",
4212            stringify!(_zend_ast_decl),
4213            "::",
4214            stringify!(kind)
4215        )
4216    );
4217    assert_eq!(
4218        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).attr as *const _ as usize },
4219        2usize,
4220        concat!(
4221            "Offset of field: ",
4222            stringify!(_zend_ast_decl),
4223            "::",
4224            stringify!(attr)
4225        )
4226    );
4227    assert_eq!(
4228        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).start_lineno as *const _ as usize },
4229        4usize,
4230        concat!(
4231            "Offset of field: ",
4232            stringify!(_zend_ast_decl),
4233            "::",
4234            stringify!(start_lineno)
4235        )
4236    );
4237    assert_eq!(
4238        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).end_lineno as *const _ as usize },
4239        8usize,
4240        concat!(
4241            "Offset of field: ",
4242            stringify!(_zend_ast_decl),
4243            "::",
4244            stringify!(end_lineno)
4245        )
4246    );
4247    assert_eq!(
4248        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).flags as *const _ as usize },
4249        12usize,
4250        concat!(
4251            "Offset of field: ",
4252            stringify!(_zend_ast_decl),
4253            "::",
4254            stringify!(flags)
4255        )
4256    );
4257    assert_eq!(
4258        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).lex_pos as *const _ as usize },
4259        16usize,
4260        concat!(
4261            "Offset of field: ",
4262            stringify!(_zend_ast_decl),
4263            "::",
4264            stringify!(lex_pos)
4265        )
4266    );
4267    assert_eq!(
4268        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).doc_comment as *const _ as usize },
4269        24usize,
4270        concat!(
4271            "Offset of field: ",
4272            stringify!(_zend_ast_decl),
4273            "::",
4274            stringify!(doc_comment)
4275        )
4276    );
4277    assert_eq!(
4278        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).name as *const _ as usize },
4279        32usize,
4280        concat!(
4281            "Offset of field: ",
4282            stringify!(_zend_ast_decl),
4283            "::",
4284            stringify!(name)
4285        )
4286    );
4287    assert_eq!(
4288        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).child as *const _ as usize },
4289        40usize,
4290        concat!(
4291            "Offset of field: ",
4292            stringify!(_zend_ast_decl),
4293            "::",
4294            stringify!(child)
4295        )
4296    );
4297}
4298pub type zend_ast_decl = _zend_ast_decl;
4299pub type zend_ast_process_t = ::std::option::Option<unsafe extern "C" fn(ast: *mut zend_ast)>;
4300extern "C" {
4301    pub static mut zend_ast_process: zend_ast_process_t;
4302}
4303extern "C" {
4304    pub fn zend_ast_create_zval_with_lineno(zv: *mut zval, lineno: u32) -> *mut zend_ast;
4305}
4306extern "C" {
4307    pub fn zend_ast_create_zval_ex(zv: *mut zval, attr: zend_ast_attr) -> *mut zend_ast;
4308}
4309extern "C" {
4310    pub fn zend_ast_create_zval(zv: *mut zval) -> *mut zend_ast;
4311}
4312extern "C" {
4313    pub fn zend_ast_create_zval_from_str(str_: *mut zend_string) -> *mut zend_ast;
4314}
4315extern "C" {
4316    pub fn zend_ast_create_zval_from_long(lval: zend_long) -> *mut zend_ast;
4317}
4318extern "C" {
4319    pub fn zend_ast_create_constant(name: *mut zend_string, attr: zend_ast_attr) -> *mut zend_ast;
4320}
4321extern "C" {
4322    pub fn zend_ast_create_class_const_or_name(
4323        class_name: *mut zend_ast,
4324        name: *mut zend_ast,
4325    ) -> *mut zend_ast;
4326}
4327extern "C" {
4328    pub fn zend_ast_create_0(kind: zend_ast_kind) -> *mut zend_ast;
4329}
4330extern "C" {
4331    pub fn zend_ast_create_1(kind: zend_ast_kind, child: *mut zend_ast) -> *mut zend_ast;
4332}
4333extern "C" {
4334    pub fn zend_ast_create_2(
4335        kind: zend_ast_kind,
4336        child1: *mut zend_ast,
4337        child2: *mut zend_ast,
4338    ) -> *mut zend_ast;
4339}
4340extern "C" {
4341    pub fn zend_ast_create_3(
4342        kind: zend_ast_kind,
4343        child1: *mut zend_ast,
4344        child2: *mut zend_ast,
4345        child3: *mut zend_ast,
4346    ) -> *mut zend_ast;
4347}
4348extern "C" {
4349    pub fn zend_ast_create_4(
4350        kind: zend_ast_kind,
4351        child1: *mut zend_ast,
4352        child2: *mut zend_ast,
4353        child3: *mut zend_ast,
4354        child4: *mut zend_ast,
4355    ) -> *mut zend_ast;
4356}
4357extern "C" {
4358    pub fn zend_ast_create_list_0(kind: zend_ast_kind) -> *mut zend_ast;
4359}
4360extern "C" {
4361    pub fn zend_ast_create_list_1(kind: zend_ast_kind, child: *mut zend_ast) -> *mut zend_ast;
4362}
4363extern "C" {
4364    pub fn zend_ast_create_list_2(
4365        kind: zend_ast_kind,
4366        child1: *mut zend_ast,
4367        child2: *mut zend_ast,
4368    ) -> *mut zend_ast;
4369}
4370extern "C" {
4371    pub fn zend_ast_list_add(list: *mut zend_ast, op: *mut zend_ast) -> *mut zend_ast;
4372}
4373extern "C" {
4374    pub fn zend_ast_create_decl(
4375        kind: zend_ast_kind,
4376        flags: u32,
4377        start_lineno: u32,
4378        doc_comment: *mut zend_string,
4379        name: *mut zend_string,
4380        child0: *mut zend_ast,
4381        child1: *mut zend_ast,
4382        child2: *mut zend_ast,
4383        child3: *mut zend_ast,
4384    ) -> *mut zend_ast;
4385}
4386extern "C" {
4387    pub fn zend_ast_evaluate(
4388        result: *mut zval,
4389        ast: *mut zend_ast,
4390        scope: *mut zend_class_entry,
4391    ) -> ::std::os::raw::c_int;
4392}
4393extern "C" {
4394    pub fn zend_ast_export(
4395        prefix: *const ::std::os::raw::c_char,
4396        ast: *mut zend_ast,
4397        suffix: *const ::std::os::raw::c_char,
4398    ) -> *mut zend_string;
4399}
4400extern "C" {
4401    pub fn zend_ast_copy(ast: *mut zend_ast) -> *mut zend_ast_ref;
4402}
4403extern "C" {
4404    pub fn zend_ast_destroy(ast: *mut zend_ast);
4405}
4406extern "C" {
4407    pub fn zend_ast_ref_destroy(ast: *mut zend_ast_ref);
4408}
4409pub type zend_ast_apply_func =
4410    ::std::option::Option<unsafe extern "C" fn(ast_ptr: *mut *mut zend_ast)>;
4411extern "C" {
4412    pub fn zend_ast_apply(ast: *mut zend_ast, fn_: zend_ast_apply_func);
4413}
4414#[repr(C)]
4415#[derive(Debug, Copy, Clone)]
4416pub struct _zend_gc_status {
4417    pub runs: u32,
4418    pub collected: u32,
4419    pub threshold: u32,
4420    pub num_roots: u32,
4421}
4422#[test]
4423fn bindgen_test_layout__zend_gc_status() {
4424    assert_eq!(
4425        ::std::mem::size_of::<_zend_gc_status>(),
4426        16usize,
4427        concat!("Size of: ", stringify!(_zend_gc_status))
4428    );
4429    assert_eq!(
4430        ::std::mem::align_of::<_zend_gc_status>(),
4431        4usize,
4432        concat!("Alignment of ", stringify!(_zend_gc_status))
4433    );
4434    assert_eq!(
4435        unsafe { &(*(::std::ptr::null::<_zend_gc_status>())).runs as *const _ as usize },
4436        0usize,
4437        concat!(
4438            "Offset of field: ",
4439            stringify!(_zend_gc_status),
4440            "::",
4441            stringify!(runs)
4442        )
4443    );
4444    assert_eq!(
4445        unsafe { &(*(::std::ptr::null::<_zend_gc_status>())).collected as *const _ as usize },
4446        4usize,
4447        concat!(
4448            "Offset of field: ",
4449            stringify!(_zend_gc_status),
4450            "::",
4451            stringify!(collected)
4452        )
4453    );
4454    assert_eq!(
4455        unsafe { &(*(::std::ptr::null::<_zend_gc_status>())).threshold as *const _ as usize },
4456        8usize,
4457        concat!(
4458            "Offset of field: ",
4459            stringify!(_zend_gc_status),
4460            "::",
4461            stringify!(threshold)
4462        )
4463    );
4464    assert_eq!(
4465        unsafe { &(*(::std::ptr::null::<_zend_gc_status>())).num_roots as *const _ as usize },
4466        12usize,
4467        concat!(
4468            "Offset of field: ",
4469            stringify!(_zend_gc_status),
4470            "::",
4471            stringify!(num_roots)
4472        )
4473    );
4474}
4475pub type zend_gc_status = _zend_gc_status;
4476extern "C" {
4477    pub static mut gc_collect_cycles:
4478        ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_int>;
4479}
4480extern "C" {
4481    pub fn zend_gc_collect_cycles() -> ::std::os::raw::c_int;
4482}
4483extern "C" {
4484    pub fn zend_gc_get_status(status: *mut zend_gc_status);
4485}
4486pub type zend_object_iterator = _zend_object_iterator;
4487#[repr(C)]
4488#[derive(Debug, Copy, Clone)]
4489pub struct _zend_object_iterator_funcs {
4490    pub dtor: ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
4491    pub valid: ::std::option::Option<
4492        unsafe extern "C" fn(iter: *mut zend_object_iterator) -> ::std::os::raw::c_int,
4493    >,
4494    pub get_current_data:
4495        ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator) -> *mut zval>,
4496    pub get_current_key: ::std::option::Option<
4497        unsafe extern "C" fn(iter: *mut zend_object_iterator, key: *mut zval),
4498    >,
4499    pub move_forward: ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
4500    pub rewind: ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
4501    pub invalidate_current:
4502        ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
4503}
4504#[test]
4505fn bindgen_test_layout__zend_object_iterator_funcs() {
4506    assert_eq!(
4507        ::std::mem::size_of::<_zend_object_iterator_funcs>(),
4508        56usize,
4509        concat!("Size of: ", stringify!(_zend_object_iterator_funcs))
4510    );
4511    assert_eq!(
4512        ::std::mem::align_of::<_zend_object_iterator_funcs>(),
4513        8usize,
4514        concat!("Alignment of ", stringify!(_zend_object_iterator_funcs))
4515    );
4516    assert_eq!(
4517        unsafe {
4518            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).dtor as *const _ as usize
4519        },
4520        0usize,
4521        concat!(
4522            "Offset of field: ",
4523            stringify!(_zend_object_iterator_funcs),
4524            "::",
4525            stringify!(dtor)
4526        )
4527    );
4528    assert_eq!(
4529        unsafe {
4530            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).valid as *const _ as usize
4531        },
4532        8usize,
4533        concat!(
4534            "Offset of field: ",
4535            stringify!(_zend_object_iterator_funcs),
4536            "::",
4537            stringify!(valid)
4538        )
4539    );
4540    assert_eq!(
4541        unsafe {
4542            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).get_current_data as *const _
4543                as usize
4544        },
4545        16usize,
4546        concat!(
4547            "Offset of field: ",
4548            stringify!(_zend_object_iterator_funcs),
4549            "::",
4550            stringify!(get_current_data)
4551        )
4552    );
4553    assert_eq!(
4554        unsafe {
4555            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).get_current_key as *const _
4556                as usize
4557        },
4558        24usize,
4559        concat!(
4560            "Offset of field: ",
4561            stringify!(_zend_object_iterator_funcs),
4562            "::",
4563            stringify!(get_current_key)
4564        )
4565    );
4566    assert_eq!(
4567        unsafe {
4568            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).move_forward as *const _
4569                as usize
4570        },
4571        32usize,
4572        concat!(
4573            "Offset of field: ",
4574            stringify!(_zend_object_iterator_funcs),
4575            "::",
4576            stringify!(move_forward)
4577        )
4578    );
4579    assert_eq!(
4580        unsafe {
4581            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).rewind as *const _ as usize
4582        },
4583        40usize,
4584        concat!(
4585            "Offset of field: ",
4586            stringify!(_zend_object_iterator_funcs),
4587            "::",
4588            stringify!(rewind)
4589        )
4590    );
4591    assert_eq!(
4592        unsafe {
4593            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).invalidate_current as *const _
4594                as usize
4595        },
4596        48usize,
4597        concat!(
4598            "Offset of field: ",
4599            stringify!(_zend_object_iterator_funcs),
4600            "::",
4601            stringify!(invalidate_current)
4602        )
4603    );
4604}
4605pub type zend_object_iterator_funcs = _zend_object_iterator_funcs;
4606#[repr(C)]
4607#[derive(Copy, Clone)]
4608pub struct _zend_object_iterator {
4609    pub std: zend_object,
4610    pub data: zval,
4611    pub funcs: *const zend_object_iterator_funcs,
4612    pub index: zend_ulong,
4613}
4614#[test]
4615fn bindgen_test_layout__zend_object_iterator() {
4616    assert_eq!(
4617        ::std::mem::size_of::<_zend_object_iterator>(),
4618        88usize,
4619        concat!("Size of: ", stringify!(_zend_object_iterator))
4620    );
4621    assert_eq!(
4622        ::std::mem::align_of::<_zend_object_iterator>(),
4623        8usize,
4624        concat!("Alignment of ", stringify!(_zend_object_iterator))
4625    );
4626    assert_eq!(
4627        unsafe { &(*(::std::ptr::null::<_zend_object_iterator>())).std as *const _ as usize },
4628        0usize,
4629        concat!(
4630            "Offset of field: ",
4631            stringify!(_zend_object_iterator),
4632            "::",
4633            stringify!(std)
4634        )
4635    );
4636    assert_eq!(
4637        unsafe { &(*(::std::ptr::null::<_zend_object_iterator>())).data as *const _ as usize },
4638        56usize,
4639        concat!(
4640            "Offset of field: ",
4641            stringify!(_zend_object_iterator),
4642            "::",
4643            stringify!(data)
4644        )
4645    );
4646    assert_eq!(
4647        unsafe { &(*(::std::ptr::null::<_zend_object_iterator>())).funcs as *const _ as usize },
4648        72usize,
4649        concat!(
4650            "Offset of field: ",
4651            stringify!(_zend_object_iterator),
4652            "::",
4653            stringify!(funcs)
4654        )
4655    );
4656    assert_eq!(
4657        unsafe { &(*(::std::ptr::null::<_zend_object_iterator>())).index as *const _ as usize },
4658        80usize,
4659        concat!(
4660            "Offset of field: ",
4661            stringify!(_zend_object_iterator),
4662            "::",
4663            stringify!(index)
4664        )
4665    );
4666}
4667#[repr(C)]
4668#[derive(Debug, Copy, Clone)]
4669pub struct _zend_class_iterator_funcs {
4670    pub zf_new_iterator: *mut zend_function,
4671    pub zf_valid: *mut zend_function,
4672    pub zf_current: *mut zend_function,
4673    pub zf_key: *mut zend_function,
4674    pub zf_next: *mut zend_function,
4675    pub zf_rewind: *mut zend_function,
4676}
4677#[test]
4678fn bindgen_test_layout__zend_class_iterator_funcs() {
4679    assert_eq!(
4680        ::std::mem::size_of::<_zend_class_iterator_funcs>(),
4681        48usize,
4682        concat!("Size of: ", stringify!(_zend_class_iterator_funcs))
4683    );
4684    assert_eq!(
4685        ::std::mem::align_of::<_zend_class_iterator_funcs>(),
4686        8usize,
4687        concat!("Alignment of ", stringify!(_zend_class_iterator_funcs))
4688    );
4689    assert_eq!(
4690        unsafe {
4691            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_new_iterator as *const _
4692                as usize
4693        },
4694        0usize,
4695        concat!(
4696            "Offset of field: ",
4697            stringify!(_zend_class_iterator_funcs),
4698            "::",
4699            stringify!(zf_new_iterator)
4700        )
4701    );
4702    assert_eq!(
4703        unsafe {
4704            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_valid as *const _ as usize
4705        },
4706        8usize,
4707        concat!(
4708            "Offset of field: ",
4709            stringify!(_zend_class_iterator_funcs),
4710            "::",
4711            stringify!(zf_valid)
4712        )
4713    );
4714    assert_eq!(
4715        unsafe {
4716            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_current as *const _ as usize
4717        },
4718        16usize,
4719        concat!(
4720            "Offset of field: ",
4721            stringify!(_zend_class_iterator_funcs),
4722            "::",
4723            stringify!(zf_current)
4724        )
4725    );
4726    assert_eq!(
4727        unsafe {
4728            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_key as *const _ as usize
4729        },
4730        24usize,
4731        concat!(
4732            "Offset of field: ",
4733            stringify!(_zend_class_iterator_funcs),
4734            "::",
4735            stringify!(zf_key)
4736        )
4737    );
4738    assert_eq!(
4739        unsafe {
4740            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_next as *const _ as usize
4741        },
4742        32usize,
4743        concat!(
4744            "Offset of field: ",
4745            stringify!(_zend_class_iterator_funcs),
4746            "::",
4747            stringify!(zf_next)
4748        )
4749    );
4750    assert_eq!(
4751        unsafe {
4752            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_rewind as *const _ as usize
4753        },
4754        40usize,
4755        concat!(
4756            "Offset of field: ",
4757            stringify!(_zend_class_iterator_funcs),
4758            "::",
4759            stringify!(zf_rewind)
4760        )
4761    );
4762}
4763pub type zend_class_iterator_funcs = _zend_class_iterator_funcs;
4764extern "C" {
4765    pub fn zend_iterator_unwrap(array_ptr: *mut zval) -> *mut zend_object_iterator;
4766}
4767extern "C" {
4768    pub fn zend_iterator_init(iter: *mut zend_object_iterator);
4769}
4770extern "C" {
4771    pub fn zend_iterator_dtor(iter: *mut zend_object_iterator);
4772}
4773extern "C" {
4774    pub fn zend_register_iterator_wrapper();
4775}
4776#[repr(C)]
4777#[derive(Debug, Copy, Clone)]
4778pub struct stat {
4779    pub st_dev: __dev_t,
4780    pub st_ino: __ino_t,
4781    pub st_nlink: __nlink_t,
4782    pub st_mode: __mode_t,
4783    pub st_uid: __uid_t,
4784    pub st_gid: __gid_t,
4785    pub __pad0: ::std::os::raw::c_int,
4786    pub st_rdev: __dev_t,
4787    pub st_size: __off_t,
4788    pub st_blksize: __blksize_t,
4789    pub st_blocks: __blkcnt_t,
4790    pub st_atim: timespec,
4791    pub st_mtim: timespec,
4792    pub st_ctim: timespec,
4793    pub __glibc_reserved: [__syscall_slong_t; 3usize],
4794}
4795#[test]
4796fn bindgen_test_layout_stat() {
4797    assert_eq!(
4798        ::std::mem::size_of::<stat>(),
4799        144usize,
4800        concat!("Size of: ", stringify!(stat))
4801    );
4802    assert_eq!(
4803        ::std::mem::align_of::<stat>(),
4804        8usize,
4805        concat!("Alignment of ", stringify!(stat))
4806    );
4807    assert_eq!(
4808        unsafe { &(*(::std::ptr::null::<stat>())).st_dev as *const _ as usize },
4809        0usize,
4810        concat!(
4811            "Offset of field: ",
4812            stringify!(stat),
4813            "::",
4814            stringify!(st_dev)
4815        )
4816    );
4817    assert_eq!(
4818        unsafe { &(*(::std::ptr::null::<stat>())).st_ino as *const _ as usize },
4819        8usize,
4820        concat!(
4821            "Offset of field: ",
4822            stringify!(stat),
4823            "::",
4824            stringify!(st_ino)
4825        )
4826    );
4827    assert_eq!(
4828        unsafe { &(*(::std::ptr::null::<stat>())).st_nlink as *const _ as usize },
4829        16usize,
4830        concat!(
4831            "Offset of field: ",
4832            stringify!(stat),
4833            "::",
4834            stringify!(st_nlink)
4835        )
4836    );
4837    assert_eq!(
4838        unsafe { &(*(::std::ptr::null::<stat>())).st_mode as *const _ as usize },
4839        24usize,
4840        concat!(
4841            "Offset of field: ",
4842            stringify!(stat),
4843            "::",
4844            stringify!(st_mode)
4845        )
4846    );
4847    assert_eq!(
4848        unsafe { &(*(::std::ptr::null::<stat>())).st_uid as *const _ as usize },
4849        28usize,
4850        concat!(
4851            "Offset of field: ",
4852            stringify!(stat),
4853            "::",
4854            stringify!(st_uid)
4855        )
4856    );
4857    assert_eq!(
4858        unsafe { &(*(::std::ptr::null::<stat>())).st_gid as *const _ as usize },
4859        32usize,
4860        concat!(
4861            "Offset of field: ",
4862            stringify!(stat),
4863            "::",
4864            stringify!(st_gid)
4865        )
4866    );
4867    assert_eq!(
4868        unsafe { &(*(::std::ptr::null::<stat>())).__pad0 as *const _ as usize },
4869        36usize,
4870        concat!(
4871            "Offset of field: ",
4872            stringify!(stat),
4873            "::",
4874            stringify!(__pad0)
4875        )
4876    );
4877    assert_eq!(
4878        unsafe { &(*(::std::ptr::null::<stat>())).st_rdev as *const _ as usize },
4879        40usize,
4880        concat!(
4881            "Offset of field: ",
4882            stringify!(stat),
4883            "::",
4884            stringify!(st_rdev)
4885        )
4886    );
4887    assert_eq!(
4888        unsafe { &(*(::std::ptr::null::<stat>())).st_size as *const _ as usize },
4889        48usize,
4890        concat!(
4891            "Offset of field: ",
4892            stringify!(stat),
4893            "::",
4894            stringify!(st_size)
4895        )
4896    );
4897    assert_eq!(
4898        unsafe { &(*(::std::ptr::null::<stat>())).st_blksize as *const _ as usize },
4899        56usize,
4900        concat!(
4901            "Offset of field: ",
4902            stringify!(stat),
4903            "::",
4904            stringify!(st_blksize)
4905        )
4906    );
4907    assert_eq!(
4908        unsafe { &(*(::std::ptr::null::<stat>())).st_blocks as *const _ as usize },
4909        64usize,
4910        concat!(
4911            "Offset of field: ",
4912            stringify!(stat),
4913            "::",
4914            stringify!(st_blocks)
4915        )
4916    );
4917    assert_eq!(
4918        unsafe { &(*(::std::ptr::null::<stat>())).st_atim as *const _ as usize },
4919        72usize,
4920        concat!(
4921            "Offset of field: ",
4922            stringify!(stat),
4923            "::",
4924            stringify!(st_atim)
4925        )
4926    );
4927    assert_eq!(
4928        unsafe { &(*(::std::ptr::null::<stat>())).st_mtim as *const _ as usize },
4929        88usize,
4930        concat!(
4931            "Offset of field: ",
4932            stringify!(stat),
4933            "::",
4934            stringify!(st_mtim)
4935        )
4936    );
4937    assert_eq!(
4938        unsafe { &(*(::std::ptr::null::<stat>())).st_ctim as *const _ as usize },
4939        104usize,
4940        concat!(
4941            "Offset of field: ",
4942            stringify!(stat),
4943            "::",
4944            stringify!(st_ctim)
4945        )
4946    );
4947    assert_eq!(
4948        unsafe { &(*(::std::ptr::null::<stat>())).__glibc_reserved as *const _ as usize },
4949        120usize,
4950        concat!(
4951            "Offset of field: ",
4952            stringify!(stat),
4953            "::",
4954            stringify!(__glibc_reserved)
4955        )
4956    );
4957}
4958pub type zend_stream_fsizer_t =
4959    ::std::option::Option<unsafe extern "C" fn(handle: *mut ::std::os::raw::c_void) -> size_t>;
4960pub type zend_stream_reader_t = ::std::option::Option<
4961    unsafe extern "C" fn(
4962        handle: *mut ::std::os::raw::c_void,
4963        buf: *mut ::std::os::raw::c_char,
4964        len: size_t,
4965    ) -> ssize_t,
4966>;
4967pub type zend_stream_closer_t =
4968    ::std::option::Option<unsafe extern "C" fn(handle: *mut ::std::os::raw::c_void)>;
4969pub const zend_stream_type_ZEND_HANDLE_FILENAME: zend_stream_type = 0;
4970pub const zend_stream_type_ZEND_HANDLE_FP: zend_stream_type = 1;
4971pub const zend_stream_type_ZEND_HANDLE_STREAM: zend_stream_type = 2;
4972pub type zend_stream_type = ::std::os::raw::c_uint;
4973#[repr(C)]
4974#[derive(Debug, Copy, Clone)]
4975pub struct _zend_stream {
4976    pub handle: *mut ::std::os::raw::c_void,
4977    pub isatty: ::std::os::raw::c_int,
4978    pub reader: zend_stream_reader_t,
4979    pub fsizer: zend_stream_fsizer_t,
4980    pub closer: zend_stream_closer_t,
4981}
4982#[test]
4983fn bindgen_test_layout__zend_stream() {
4984    assert_eq!(
4985        ::std::mem::size_of::<_zend_stream>(),
4986        40usize,
4987        concat!("Size of: ", stringify!(_zend_stream))
4988    );
4989    assert_eq!(
4990        ::std::mem::align_of::<_zend_stream>(),
4991        8usize,
4992        concat!("Alignment of ", stringify!(_zend_stream))
4993    );
4994    assert_eq!(
4995        unsafe { &(*(::std::ptr::null::<_zend_stream>())).handle as *const _ as usize },
4996        0usize,
4997        concat!(
4998            "Offset of field: ",
4999            stringify!(_zend_stream),
5000            "::",
5001            stringify!(handle)
5002        )
5003    );
5004    assert_eq!(
5005        unsafe { &(*(::std::ptr::null::<_zend_stream>())).isatty as *const _ as usize },
5006        8usize,
5007        concat!(
5008            "Offset of field: ",
5009            stringify!(_zend_stream),
5010            "::",
5011            stringify!(isatty)
5012        )
5013    );
5014    assert_eq!(
5015        unsafe { &(*(::std::ptr::null::<_zend_stream>())).reader as *const _ as usize },
5016        16usize,
5017        concat!(
5018            "Offset of field: ",
5019            stringify!(_zend_stream),
5020            "::",
5021            stringify!(reader)
5022        )
5023    );
5024    assert_eq!(
5025        unsafe { &(*(::std::ptr::null::<_zend_stream>())).fsizer as *const _ as usize },
5026        24usize,
5027        concat!(
5028            "Offset of field: ",
5029            stringify!(_zend_stream),
5030            "::",
5031            stringify!(fsizer)
5032        )
5033    );
5034    assert_eq!(
5035        unsafe { &(*(::std::ptr::null::<_zend_stream>())).closer as *const _ as usize },
5036        32usize,
5037        concat!(
5038            "Offset of field: ",
5039            stringify!(_zend_stream),
5040            "::",
5041            stringify!(closer)
5042        )
5043    );
5044}
5045pub type zend_stream = _zend_stream;
5046#[repr(C)]
5047#[derive(Copy, Clone)]
5048pub struct _zend_file_handle {
5049    pub handle: _zend_file_handle__bindgen_ty_1,
5050    pub filename: *const ::std::os::raw::c_char,
5051    pub opened_path: *mut zend_string,
5052    pub type_: zend_stream_type,
5053    pub free_filename: zend_bool,
5054    pub buf: *mut ::std::os::raw::c_char,
5055    pub len: size_t,
5056}
5057#[repr(C)]
5058#[derive(Copy, Clone)]
5059pub union _zend_file_handle__bindgen_ty_1 {
5060    pub fp: *mut FILE,
5061    pub stream: zend_stream,
5062    _bindgen_union_align: [u64; 5usize],
5063}
5064#[test]
5065fn bindgen_test_layout__zend_file_handle__bindgen_ty_1() {
5066    assert_eq!(
5067        ::std::mem::size_of::<_zend_file_handle__bindgen_ty_1>(),
5068        40usize,
5069        concat!("Size of: ", stringify!(_zend_file_handle__bindgen_ty_1))
5070    );
5071    assert_eq!(
5072        ::std::mem::align_of::<_zend_file_handle__bindgen_ty_1>(),
5073        8usize,
5074        concat!("Alignment of ", stringify!(_zend_file_handle__bindgen_ty_1))
5075    );
5076    assert_eq!(
5077        unsafe {
5078            &(*(::std::ptr::null::<_zend_file_handle__bindgen_ty_1>())).fp as *const _ as usize
5079        },
5080        0usize,
5081        concat!(
5082            "Offset of field: ",
5083            stringify!(_zend_file_handle__bindgen_ty_1),
5084            "::",
5085            stringify!(fp)
5086        )
5087    );
5088    assert_eq!(
5089        unsafe {
5090            &(*(::std::ptr::null::<_zend_file_handle__bindgen_ty_1>())).stream as *const _ as usize
5091        },
5092        0usize,
5093        concat!(
5094            "Offset of field: ",
5095            stringify!(_zend_file_handle__bindgen_ty_1),
5096            "::",
5097            stringify!(stream)
5098        )
5099    );
5100}
5101#[test]
5102fn bindgen_test_layout__zend_file_handle() {
5103    assert_eq!(
5104        ::std::mem::size_of::<_zend_file_handle>(),
5105        80usize,
5106        concat!("Size of: ", stringify!(_zend_file_handle))
5107    );
5108    assert_eq!(
5109        ::std::mem::align_of::<_zend_file_handle>(),
5110        8usize,
5111        concat!("Alignment of ", stringify!(_zend_file_handle))
5112    );
5113    assert_eq!(
5114        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).handle as *const _ as usize },
5115        0usize,
5116        concat!(
5117            "Offset of field: ",
5118            stringify!(_zend_file_handle),
5119            "::",
5120            stringify!(handle)
5121        )
5122    );
5123    assert_eq!(
5124        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).filename as *const _ as usize },
5125        40usize,
5126        concat!(
5127            "Offset of field: ",
5128            stringify!(_zend_file_handle),
5129            "::",
5130            stringify!(filename)
5131        )
5132    );
5133    assert_eq!(
5134        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).opened_path as *const _ as usize },
5135        48usize,
5136        concat!(
5137            "Offset of field: ",
5138            stringify!(_zend_file_handle),
5139            "::",
5140            stringify!(opened_path)
5141        )
5142    );
5143    assert_eq!(
5144        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).type_ as *const _ as usize },
5145        56usize,
5146        concat!(
5147            "Offset of field: ",
5148            stringify!(_zend_file_handle),
5149            "::",
5150            stringify!(type_)
5151        )
5152    );
5153    assert_eq!(
5154        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).free_filename as *const _ as usize },
5155        60usize,
5156        concat!(
5157            "Offset of field: ",
5158            stringify!(_zend_file_handle),
5159            "::",
5160            stringify!(free_filename)
5161        )
5162    );
5163    assert_eq!(
5164        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).buf as *const _ as usize },
5165        64usize,
5166        concat!(
5167            "Offset of field: ",
5168            stringify!(_zend_file_handle),
5169            "::",
5170            stringify!(buf)
5171        )
5172    );
5173    assert_eq!(
5174        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).len as *const _ as usize },
5175        72usize,
5176        concat!(
5177            "Offset of field: ",
5178            stringify!(_zend_file_handle),
5179            "::",
5180            stringify!(len)
5181        )
5182    );
5183}
5184pub type zend_file_handle = _zend_file_handle;
5185extern "C" {
5186    pub fn zend_stream_init_fp(
5187        handle: *mut zend_file_handle,
5188        fp: *mut FILE,
5189        filename: *const ::std::os::raw::c_char,
5190    );
5191}
5192extern "C" {
5193    pub fn zend_stream_init_filename(
5194        handle: *mut zend_file_handle,
5195        filename: *const ::std::os::raw::c_char,
5196    );
5197}
5198extern "C" {
5199    pub fn zend_stream_open(
5200        filename: *const ::std::os::raw::c_char,
5201        handle: *mut zend_file_handle,
5202    ) -> ::std::os::raw::c_int;
5203}
5204extern "C" {
5205    pub fn zend_stream_fixup(
5206        file_handle: *mut zend_file_handle,
5207        buf: *mut *mut ::std::os::raw::c_char,
5208        len: *mut size_t,
5209    ) -> ::std::os::raw::c_int;
5210}
5211extern "C" {
5212    pub fn zend_file_handle_dtor(fh: *mut zend_file_handle);
5213}
5214extern "C" {
5215    pub fn zend_compare_file_handles(
5216        fh1: *mut zend_file_handle,
5217        fh2: *mut zend_file_handle,
5218    ) -> ::std::os::raw::c_int;
5219}
5220pub type zend_stat_t = stat;
5221#[repr(C)]
5222#[derive(Debug, Copy, Clone)]
5223pub struct smart_str {
5224    pub s: *mut zend_string,
5225    pub a: size_t,
5226}
5227#[test]
5228fn bindgen_test_layout_smart_str() {
5229    assert_eq!(
5230        ::std::mem::size_of::<smart_str>(),
5231        16usize,
5232        concat!("Size of: ", stringify!(smart_str))
5233    );
5234    assert_eq!(
5235        ::std::mem::align_of::<smart_str>(),
5236        8usize,
5237        concat!("Alignment of ", stringify!(smart_str))
5238    );
5239    assert_eq!(
5240        unsafe { &(*(::std::ptr::null::<smart_str>())).s as *const _ as usize },
5241        0usize,
5242        concat!(
5243            "Offset of field: ",
5244            stringify!(smart_str),
5245            "::",
5246            stringify!(s)
5247        )
5248    );
5249    assert_eq!(
5250        unsafe { &(*(::std::ptr::null::<smart_str>())).a as *const _ as usize },
5251        8usize,
5252        concat!(
5253            "Offset of field: ",
5254            stringify!(smart_str),
5255            "::",
5256            stringify!(a)
5257        )
5258    );
5259}
5260#[repr(C)]
5261#[derive(Debug, Copy, Clone)]
5262pub struct smart_string {
5263    pub c: *mut ::std::os::raw::c_char,
5264    pub len: size_t,
5265    pub a: size_t,
5266}
5267#[test]
5268fn bindgen_test_layout_smart_string() {
5269    assert_eq!(
5270        ::std::mem::size_of::<smart_string>(),
5271        24usize,
5272        concat!("Size of: ", stringify!(smart_string))
5273    );
5274    assert_eq!(
5275        ::std::mem::align_of::<smart_string>(),
5276        8usize,
5277        concat!("Alignment of ", stringify!(smart_string))
5278    );
5279    assert_eq!(
5280        unsafe { &(*(::std::ptr::null::<smart_string>())).c as *const _ as usize },
5281        0usize,
5282        concat!(
5283            "Offset of field: ",
5284            stringify!(smart_string),
5285            "::",
5286            stringify!(c)
5287        )
5288    );
5289    assert_eq!(
5290        unsafe { &(*(::std::ptr::null::<smart_string>())).len as *const _ as usize },
5291        8usize,
5292        concat!(
5293            "Offset of field: ",
5294            stringify!(smart_string),
5295            "::",
5296            stringify!(len)
5297        )
5298    );
5299    assert_eq!(
5300        unsafe { &(*(::std::ptr::null::<smart_string>())).a as *const _ as usize },
5301        16usize,
5302        concat!(
5303            "Offset of field: ",
5304            stringify!(smart_string),
5305            "::",
5306            stringify!(a)
5307        )
5308    );
5309}
5310#[repr(C)]
5311#[derive(Copy, Clone)]
5312pub union sigval {
5313    pub sival_int: ::std::os::raw::c_int,
5314    pub sival_ptr: *mut ::std::os::raw::c_void,
5315    _bindgen_union_align: u64,
5316}
5317#[test]
5318fn bindgen_test_layout_sigval() {
5319    assert_eq!(
5320        ::std::mem::size_of::<sigval>(),
5321        8usize,
5322        concat!("Size of: ", stringify!(sigval))
5323    );
5324    assert_eq!(
5325        ::std::mem::align_of::<sigval>(),
5326        8usize,
5327        concat!("Alignment of ", stringify!(sigval))
5328    );
5329    assert_eq!(
5330        unsafe { &(*(::std::ptr::null::<sigval>())).sival_int as *const _ as usize },
5331        0usize,
5332        concat!(
5333            "Offset of field: ",
5334            stringify!(sigval),
5335            "::",
5336            stringify!(sival_int)
5337        )
5338    );
5339    assert_eq!(
5340        unsafe { &(*(::std::ptr::null::<sigval>())).sival_ptr as *const _ as usize },
5341        0usize,
5342        concat!(
5343            "Offset of field: ",
5344            stringify!(sigval),
5345            "::",
5346            stringify!(sival_ptr)
5347        )
5348    );
5349}
5350pub type __sigval_t = sigval;
5351#[repr(C)]
5352#[derive(Copy, Clone)]
5353pub struct siginfo_t {
5354    pub si_signo: ::std::os::raw::c_int,
5355    pub si_errno: ::std::os::raw::c_int,
5356    pub si_code: ::std::os::raw::c_int,
5357    pub __pad0: ::std::os::raw::c_int,
5358    pub _sifields: siginfo_t__bindgen_ty_1,
5359}
5360#[repr(C)]
5361#[derive(Copy, Clone)]
5362pub union siginfo_t__bindgen_ty_1 {
5363    pub _pad: [::std::os::raw::c_int; 28usize],
5364    pub _kill: siginfo_t__bindgen_ty_1__bindgen_ty_1,
5365    pub _timer: siginfo_t__bindgen_ty_1__bindgen_ty_2,
5366    pub _rt: siginfo_t__bindgen_ty_1__bindgen_ty_3,
5367    pub _sigchld: siginfo_t__bindgen_ty_1__bindgen_ty_4,
5368    pub _sigfault: siginfo_t__bindgen_ty_1__bindgen_ty_5,
5369    pub _sigpoll: siginfo_t__bindgen_ty_1__bindgen_ty_6,
5370    pub _sigsys: siginfo_t__bindgen_ty_1__bindgen_ty_7,
5371    _bindgen_union_align: [u64; 14usize],
5372}
5373#[repr(C)]
5374#[derive(Debug, Copy, Clone)]
5375pub struct siginfo_t__bindgen_ty_1__bindgen_ty_1 {
5376    pub si_pid: __pid_t,
5377    pub si_uid: __uid_t,
5378}
5379#[test]
5380fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_1() {
5381    assert_eq!(
5382        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_1>(),
5383        8usize,
5384        concat!(
5385            "Size of: ",
5386            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_1)
5387        )
5388    );
5389    assert_eq!(
5390        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_1>(),
5391        4usize,
5392        concat!(
5393            "Alignment of ",
5394            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_1)
5395        )
5396    );
5397    assert_eq!(
5398        unsafe {
5399            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_1>())).si_pid as *const _
5400                as usize
5401        },
5402        0usize,
5403        concat!(
5404            "Offset of field: ",
5405            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_1),
5406            "::",
5407            stringify!(si_pid)
5408        )
5409    );
5410    assert_eq!(
5411        unsafe {
5412            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_1>())).si_uid as *const _
5413                as usize
5414        },
5415        4usize,
5416        concat!(
5417            "Offset of field: ",
5418            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_1),
5419            "::",
5420            stringify!(si_uid)
5421        )
5422    );
5423}
5424#[repr(C)]
5425#[derive(Copy, Clone)]
5426pub struct siginfo_t__bindgen_ty_1__bindgen_ty_2 {
5427    pub si_tid: ::std::os::raw::c_int,
5428    pub si_overrun: ::std::os::raw::c_int,
5429    pub si_sigval: __sigval_t,
5430}
5431#[test]
5432fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_2() {
5433    assert_eq!(
5434        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_2>(),
5435        16usize,
5436        concat!(
5437            "Size of: ",
5438            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_2)
5439        )
5440    );
5441    assert_eq!(
5442        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_2>(),
5443        8usize,
5444        concat!(
5445            "Alignment of ",
5446            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_2)
5447        )
5448    );
5449    assert_eq!(
5450        unsafe {
5451            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_2>())).si_tid as *const _
5452                as usize
5453        },
5454        0usize,
5455        concat!(
5456            "Offset of field: ",
5457            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_2),
5458            "::",
5459            stringify!(si_tid)
5460        )
5461    );
5462    assert_eq!(
5463        unsafe {
5464            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_2>())).si_overrun as *const _
5465                as usize
5466        },
5467        4usize,
5468        concat!(
5469            "Offset of field: ",
5470            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_2),
5471            "::",
5472            stringify!(si_overrun)
5473        )
5474    );
5475    assert_eq!(
5476        unsafe {
5477            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_2>())).si_sigval as *const _
5478                as usize
5479        },
5480        8usize,
5481        concat!(
5482            "Offset of field: ",
5483            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_2),
5484            "::",
5485            stringify!(si_sigval)
5486        )
5487    );
5488}
5489#[repr(C)]
5490#[derive(Copy, Clone)]
5491pub struct siginfo_t__bindgen_ty_1__bindgen_ty_3 {
5492    pub si_pid: __pid_t,
5493    pub si_uid: __uid_t,
5494    pub si_sigval: __sigval_t,
5495}
5496#[test]
5497fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_3() {
5498    assert_eq!(
5499        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_3>(),
5500        16usize,
5501        concat!(
5502            "Size of: ",
5503            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_3)
5504        )
5505    );
5506    assert_eq!(
5507        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_3>(),
5508        8usize,
5509        concat!(
5510            "Alignment of ",
5511            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_3)
5512        )
5513    );
5514    assert_eq!(
5515        unsafe {
5516            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_3>())).si_pid as *const _
5517                as usize
5518        },
5519        0usize,
5520        concat!(
5521            "Offset of field: ",
5522            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_3),
5523            "::",
5524            stringify!(si_pid)
5525        )
5526    );
5527    assert_eq!(
5528        unsafe {
5529            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_3>())).si_uid as *const _
5530                as usize
5531        },
5532        4usize,
5533        concat!(
5534            "Offset of field: ",
5535            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_3),
5536            "::",
5537            stringify!(si_uid)
5538        )
5539    );
5540    assert_eq!(
5541        unsafe {
5542            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_3>())).si_sigval as *const _
5543                as usize
5544        },
5545        8usize,
5546        concat!(
5547            "Offset of field: ",
5548            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_3),
5549            "::",
5550            stringify!(si_sigval)
5551        )
5552    );
5553}
5554#[repr(C)]
5555#[derive(Debug, Copy, Clone)]
5556pub struct siginfo_t__bindgen_ty_1__bindgen_ty_4 {
5557    pub si_pid: __pid_t,
5558    pub si_uid: __uid_t,
5559    pub si_status: ::std::os::raw::c_int,
5560    pub si_utime: __clock_t,
5561    pub si_stime: __clock_t,
5562}
5563#[test]
5564fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_4() {
5565    assert_eq!(
5566        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_4>(),
5567        32usize,
5568        concat!(
5569            "Size of: ",
5570            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4)
5571        )
5572    );
5573    assert_eq!(
5574        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_4>(),
5575        8usize,
5576        concat!(
5577            "Alignment of ",
5578            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4)
5579        )
5580    );
5581    assert_eq!(
5582        unsafe {
5583            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_4>())).si_pid as *const _
5584                as usize
5585        },
5586        0usize,
5587        concat!(
5588            "Offset of field: ",
5589            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4),
5590            "::",
5591            stringify!(si_pid)
5592        )
5593    );
5594    assert_eq!(
5595        unsafe {
5596            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_4>())).si_uid as *const _
5597                as usize
5598        },
5599        4usize,
5600        concat!(
5601            "Offset of field: ",
5602            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4),
5603            "::",
5604            stringify!(si_uid)
5605        )
5606    );
5607    assert_eq!(
5608        unsafe {
5609            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_4>())).si_status as *const _
5610                as usize
5611        },
5612        8usize,
5613        concat!(
5614            "Offset of field: ",
5615            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4),
5616            "::",
5617            stringify!(si_status)
5618        )
5619    );
5620    assert_eq!(
5621        unsafe {
5622            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_4>())).si_utime as *const _
5623                as usize
5624        },
5625        16usize,
5626        concat!(
5627            "Offset of field: ",
5628            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4),
5629            "::",
5630            stringify!(si_utime)
5631        )
5632    );
5633    assert_eq!(
5634        unsafe {
5635            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_4>())).si_stime as *const _
5636                as usize
5637        },
5638        24usize,
5639        concat!(
5640            "Offset of field: ",
5641            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4),
5642            "::",
5643            stringify!(si_stime)
5644        )
5645    );
5646}
5647#[repr(C)]
5648#[derive(Copy, Clone)]
5649pub struct siginfo_t__bindgen_ty_1__bindgen_ty_5 {
5650    pub si_addr: *mut ::std::os::raw::c_void,
5651    pub si_addr_lsb: ::std::os::raw::c_short,
5652    pub _bounds: siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1,
5653}
5654#[repr(C)]
5655#[derive(Copy, Clone)]
5656pub union siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1 {
5657    pub _addr_bnd: siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1,
5658    pub _pkey: __uint32_t,
5659    _bindgen_union_align: [u64; 2usize],
5660}
5661#[repr(C)]
5662#[derive(Debug, Copy, Clone)]
5663pub struct siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 {
5664    pub _lower: *mut ::std::os::raw::c_void,
5665    pub _upper: *mut ::std::os::raw::c_void,
5666}
5667#[test]
5668fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1() {
5669    assert_eq!(
5670        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1>(),
5671        16usize,
5672        concat!(
5673            "Size of: ",
5674            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1)
5675        )
5676    );
5677    assert_eq!(
5678        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1>(),
5679        8usize,
5680        concat!(
5681            "Alignment of ",
5682            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1)
5683        )
5684    );
5685    assert_eq!(
5686        unsafe {
5687            &(*(::std::ptr::null::<
5688                siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1,
5689            >()))
5690            ._lower as *const _ as usize
5691        },
5692        0usize,
5693        concat!(
5694            "Offset of field: ",
5695            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1),
5696            "::",
5697            stringify!(_lower)
5698        )
5699    );
5700    assert_eq!(
5701        unsafe {
5702            &(*(::std::ptr::null::<
5703                siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1,
5704            >()))
5705            ._upper as *const _ as usize
5706        },
5707        8usize,
5708        concat!(
5709            "Offset of field: ",
5710            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1),
5711            "::",
5712            stringify!(_upper)
5713        )
5714    );
5715}
5716#[test]
5717fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1() {
5718    assert_eq!(
5719        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1>(),
5720        16usize,
5721        concat!(
5722            "Size of: ",
5723            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1)
5724        )
5725    );
5726    assert_eq!(
5727        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1>(),
5728        8usize,
5729        concat!(
5730            "Alignment of ",
5731            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1)
5732        )
5733    );
5734    assert_eq!(
5735        unsafe {
5736            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1>()))
5737                ._addr_bnd as *const _ as usize
5738        },
5739        0usize,
5740        concat!(
5741            "Offset of field: ",
5742            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1),
5743            "::",
5744            stringify!(_addr_bnd)
5745        )
5746    );
5747    assert_eq!(
5748        unsafe {
5749            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1>()))._pkey
5750                as *const _ as usize
5751        },
5752        0usize,
5753        concat!(
5754            "Offset of field: ",
5755            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1),
5756            "::",
5757            stringify!(_pkey)
5758        )
5759    );
5760}
5761#[test]
5762fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_5() {
5763    assert_eq!(
5764        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5>(),
5765        32usize,
5766        concat!(
5767            "Size of: ",
5768            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5)
5769        )
5770    );
5771    assert_eq!(
5772        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5>(),
5773        8usize,
5774        concat!(
5775            "Alignment of ",
5776            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5)
5777        )
5778    );
5779    assert_eq!(
5780        unsafe {
5781            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_5>())).si_addr as *const _
5782                as usize
5783        },
5784        0usize,
5785        concat!(
5786            "Offset of field: ",
5787            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5),
5788            "::",
5789            stringify!(si_addr)
5790        )
5791    );
5792    assert_eq!(
5793        unsafe {
5794            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_5>())).si_addr_lsb
5795                as *const _ as usize
5796        },
5797        8usize,
5798        concat!(
5799            "Offset of field: ",
5800            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5),
5801            "::",
5802            stringify!(si_addr_lsb)
5803        )
5804    );
5805    assert_eq!(
5806        unsafe {
5807            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_5>()))._bounds as *const _
5808                as usize
5809        },
5810        16usize,
5811        concat!(
5812            "Offset of field: ",
5813            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5),
5814            "::",
5815            stringify!(_bounds)
5816        )
5817    );
5818}
5819#[repr(C)]
5820#[derive(Debug, Copy, Clone)]
5821pub struct siginfo_t__bindgen_ty_1__bindgen_ty_6 {
5822    pub si_band: ::std::os::raw::c_long,
5823    pub si_fd: ::std::os::raw::c_int,
5824}
5825#[test]
5826fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_6() {
5827    assert_eq!(
5828        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_6>(),
5829        16usize,
5830        concat!(
5831            "Size of: ",
5832            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_6)
5833        )
5834    );
5835    assert_eq!(
5836        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_6>(),
5837        8usize,
5838        concat!(
5839            "Alignment of ",
5840            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_6)
5841        )
5842    );
5843    assert_eq!(
5844        unsafe {
5845            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_6>())).si_band as *const _
5846                as usize
5847        },
5848        0usize,
5849        concat!(
5850            "Offset of field: ",
5851            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_6),
5852            "::",
5853            stringify!(si_band)
5854        )
5855    );
5856    assert_eq!(
5857        unsafe {
5858            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_6>())).si_fd as *const _
5859                as usize
5860        },
5861        8usize,
5862        concat!(
5863            "Offset of field: ",
5864            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_6),
5865            "::",
5866            stringify!(si_fd)
5867        )
5868    );
5869}
5870#[repr(C)]
5871#[derive(Debug, Copy, Clone)]
5872pub struct siginfo_t__bindgen_ty_1__bindgen_ty_7 {
5873    pub _call_addr: *mut ::std::os::raw::c_void,
5874    pub _syscall: ::std::os::raw::c_int,
5875    pub _arch: ::std::os::raw::c_uint,
5876}
5877#[test]
5878fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_7() {
5879    assert_eq!(
5880        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_7>(),
5881        16usize,
5882        concat!(
5883            "Size of: ",
5884            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_7)
5885        )
5886    );
5887    assert_eq!(
5888        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_7>(),
5889        8usize,
5890        concat!(
5891            "Alignment of ",
5892            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_7)
5893        )
5894    );
5895    assert_eq!(
5896        unsafe {
5897            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_7>()))._call_addr as *const _
5898                as usize
5899        },
5900        0usize,
5901        concat!(
5902            "Offset of field: ",
5903            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_7),
5904            "::",
5905            stringify!(_call_addr)
5906        )
5907    );
5908    assert_eq!(
5909        unsafe {
5910            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_7>()))._syscall as *const _
5911                as usize
5912        },
5913        8usize,
5914        concat!(
5915            "Offset of field: ",
5916            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_7),
5917            "::",
5918            stringify!(_syscall)
5919        )
5920    );
5921    assert_eq!(
5922        unsafe {
5923            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_7>()))._arch as *const _
5924                as usize
5925        },
5926        12usize,
5927        concat!(
5928            "Offset of field: ",
5929            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_7),
5930            "::",
5931            stringify!(_arch)
5932        )
5933    );
5934}
5935#[test]
5936fn bindgen_test_layout_siginfo_t__bindgen_ty_1() {
5937    assert_eq!(
5938        ::std::mem::size_of::<siginfo_t__bindgen_ty_1>(),
5939        112usize,
5940        concat!("Size of: ", stringify!(siginfo_t__bindgen_ty_1))
5941    );
5942    assert_eq!(
5943        ::std::mem::align_of::<siginfo_t__bindgen_ty_1>(),
5944        8usize,
5945        concat!("Alignment of ", stringify!(siginfo_t__bindgen_ty_1))
5946    );
5947    assert_eq!(
5948        unsafe { &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1>()))._pad as *const _ as usize },
5949        0usize,
5950        concat!(
5951            "Offset of field: ",
5952            stringify!(siginfo_t__bindgen_ty_1),
5953            "::",
5954            stringify!(_pad)
5955        )
5956    );
5957    assert_eq!(
5958        unsafe { &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1>()))._kill as *const _ as usize },
5959        0usize,
5960        concat!(
5961            "Offset of field: ",
5962            stringify!(siginfo_t__bindgen_ty_1),
5963            "::",
5964            stringify!(_kill)
5965        )
5966    );
5967    assert_eq!(
5968        unsafe { &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1>()))._timer as *const _ as usize },
5969        0usize,
5970        concat!(
5971            "Offset of field: ",
5972            stringify!(siginfo_t__bindgen_ty_1),
5973            "::",
5974            stringify!(_timer)
5975        )
5976    );
5977    assert_eq!(
5978        unsafe { &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1>()))._rt as *const _ as usize },
5979        0usize,
5980        concat!(
5981            "Offset of field: ",
5982            stringify!(siginfo_t__bindgen_ty_1),
5983            "::",
5984            stringify!(_rt)
5985        )
5986    );
5987    assert_eq!(
5988        unsafe {
5989            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1>()))._sigchld as *const _ as usize
5990        },
5991        0usize,
5992        concat!(
5993            "Offset of field: ",
5994            stringify!(siginfo_t__bindgen_ty_1),
5995            "::",
5996            stringify!(_sigchld)
5997        )
5998    );
5999    assert_eq!(
6000        unsafe {
6001            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1>()))._sigfault as *const _ as usize
6002        },
6003        0usize,
6004        concat!(
6005            "Offset of field: ",
6006            stringify!(siginfo_t__bindgen_ty_1),
6007            "::",
6008            stringify!(_sigfault)
6009        )
6010    );
6011    assert_eq!(
6012        unsafe {
6013            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1>()))._sigpoll as *const _ as usize
6014        },
6015        0usize,
6016        concat!(
6017            "Offset of field: ",
6018            stringify!(siginfo_t__bindgen_ty_1),
6019            "::",
6020            stringify!(_sigpoll)
6021        )
6022    );
6023    assert_eq!(
6024        unsafe { &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1>()))._sigsys as *const _ as usize },
6025        0usize,
6026        concat!(
6027            "Offset of field: ",
6028            stringify!(siginfo_t__bindgen_ty_1),
6029            "::",
6030            stringify!(_sigsys)
6031        )
6032    );
6033}
6034#[test]
6035fn bindgen_test_layout_siginfo_t() {
6036    assert_eq!(
6037        ::std::mem::size_of::<siginfo_t>(),
6038        128usize,
6039        concat!("Size of: ", stringify!(siginfo_t))
6040    );
6041    assert_eq!(
6042        ::std::mem::align_of::<siginfo_t>(),
6043        8usize,
6044        concat!("Alignment of ", stringify!(siginfo_t))
6045    );
6046    assert_eq!(
6047        unsafe { &(*(::std::ptr::null::<siginfo_t>())).si_signo as *const _ as usize },
6048        0usize,
6049        concat!(
6050            "Offset of field: ",
6051            stringify!(siginfo_t),
6052            "::",
6053            stringify!(si_signo)
6054        )
6055    );
6056    assert_eq!(
6057        unsafe { &(*(::std::ptr::null::<siginfo_t>())).si_errno as *const _ as usize },
6058        4usize,
6059        concat!(
6060            "Offset of field: ",
6061            stringify!(siginfo_t),
6062            "::",
6063            stringify!(si_errno)
6064        )
6065    );
6066    assert_eq!(
6067        unsafe { &(*(::std::ptr::null::<siginfo_t>())).si_code as *const _ as usize },
6068        8usize,
6069        concat!(
6070            "Offset of field: ",
6071            stringify!(siginfo_t),
6072            "::",
6073            stringify!(si_code)
6074        )
6075    );
6076    assert_eq!(
6077        unsafe { &(*(::std::ptr::null::<siginfo_t>())).__pad0 as *const _ as usize },
6078        12usize,
6079        concat!(
6080            "Offset of field: ",
6081            stringify!(siginfo_t),
6082            "::",
6083            stringify!(__pad0)
6084        )
6085    );
6086    assert_eq!(
6087        unsafe { &(*(::std::ptr::null::<siginfo_t>()))._sifields as *const _ as usize },
6088        16usize,
6089        concat!(
6090            "Offset of field: ",
6091            stringify!(siginfo_t),
6092            "::",
6093            stringify!(_sifields)
6094        )
6095    );
6096}
6097pub type __sighandler_t = ::std::option::Option<unsafe extern "C" fn(arg1: ::std::os::raw::c_int)>;
6098#[repr(C)]
6099#[derive(Copy, Clone)]
6100pub struct sigaction {
6101    pub __sigaction_handler: sigaction__bindgen_ty_1,
6102    pub sa_mask: __sigset_t,
6103    pub sa_flags: ::std::os::raw::c_int,
6104    pub sa_restorer: ::std::option::Option<unsafe extern "C" fn()>,
6105}
6106#[repr(C)]
6107#[derive(Copy, Clone)]
6108pub union sigaction__bindgen_ty_1 {
6109    pub sa_handler: __sighandler_t,
6110    pub sa_sigaction: ::std::option::Option<
6111        unsafe extern "C" fn(
6112            arg1: ::std::os::raw::c_int,
6113            arg2: *mut siginfo_t,
6114            arg3: *mut ::std::os::raw::c_void,
6115        ),
6116    >,
6117    _bindgen_union_align: u64,
6118}
6119#[test]
6120fn bindgen_test_layout_sigaction__bindgen_ty_1() {
6121    assert_eq!(
6122        ::std::mem::size_of::<sigaction__bindgen_ty_1>(),
6123        8usize,
6124        concat!("Size of: ", stringify!(sigaction__bindgen_ty_1))
6125    );
6126    assert_eq!(
6127        ::std::mem::align_of::<sigaction__bindgen_ty_1>(),
6128        8usize,
6129        concat!("Alignment of ", stringify!(sigaction__bindgen_ty_1))
6130    );
6131    assert_eq!(
6132        unsafe {
6133            &(*(::std::ptr::null::<sigaction__bindgen_ty_1>())).sa_handler as *const _ as usize
6134        },
6135        0usize,
6136        concat!(
6137            "Offset of field: ",
6138            stringify!(sigaction__bindgen_ty_1),
6139            "::",
6140            stringify!(sa_handler)
6141        )
6142    );
6143    assert_eq!(
6144        unsafe {
6145            &(*(::std::ptr::null::<sigaction__bindgen_ty_1>())).sa_sigaction as *const _ as usize
6146        },
6147        0usize,
6148        concat!(
6149            "Offset of field: ",
6150            stringify!(sigaction__bindgen_ty_1),
6151            "::",
6152            stringify!(sa_sigaction)
6153        )
6154    );
6155}
6156#[test]
6157fn bindgen_test_layout_sigaction() {
6158    assert_eq!(
6159        ::std::mem::size_of::<sigaction>(),
6160        152usize,
6161        concat!("Size of: ", stringify!(sigaction))
6162    );
6163    assert_eq!(
6164        ::std::mem::align_of::<sigaction>(),
6165        8usize,
6166        concat!("Alignment of ", stringify!(sigaction))
6167    );
6168    assert_eq!(
6169        unsafe { &(*(::std::ptr::null::<sigaction>())).__sigaction_handler as *const _ as usize },
6170        0usize,
6171        concat!(
6172            "Offset of field: ",
6173            stringify!(sigaction),
6174            "::",
6175            stringify!(__sigaction_handler)
6176        )
6177    );
6178    assert_eq!(
6179        unsafe { &(*(::std::ptr::null::<sigaction>())).sa_mask as *const _ as usize },
6180        8usize,
6181        concat!(
6182            "Offset of field: ",
6183            stringify!(sigaction),
6184            "::",
6185            stringify!(sa_mask)
6186        )
6187    );
6188    assert_eq!(
6189        unsafe { &(*(::std::ptr::null::<sigaction>())).sa_flags as *const _ as usize },
6190        136usize,
6191        concat!(
6192            "Offset of field: ",
6193            stringify!(sigaction),
6194            "::",
6195            stringify!(sa_flags)
6196        )
6197    );
6198    assert_eq!(
6199        unsafe { &(*(::std::ptr::null::<sigaction>())).sa_restorer as *const _ as usize },
6200        144usize,
6201        concat!(
6202            "Offset of field: ",
6203            stringify!(sigaction),
6204            "::",
6205            stringify!(sa_restorer)
6206        )
6207    );
6208}
6209#[repr(C)]
6210#[derive(Debug, Copy, Clone)]
6211pub struct _zend_signal_entry_t {
6212    pub flags: ::std::os::raw::c_int,
6213    pub handler: *mut ::std::os::raw::c_void,
6214}
6215#[test]
6216fn bindgen_test_layout__zend_signal_entry_t() {
6217    assert_eq!(
6218        ::std::mem::size_of::<_zend_signal_entry_t>(),
6219        16usize,
6220        concat!("Size of: ", stringify!(_zend_signal_entry_t))
6221    );
6222    assert_eq!(
6223        ::std::mem::align_of::<_zend_signal_entry_t>(),
6224        8usize,
6225        concat!("Alignment of ", stringify!(_zend_signal_entry_t))
6226    );
6227    assert_eq!(
6228        unsafe { &(*(::std::ptr::null::<_zend_signal_entry_t>())).flags as *const _ as usize },
6229        0usize,
6230        concat!(
6231            "Offset of field: ",
6232            stringify!(_zend_signal_entry_t),
6233            "::",
6234            stringify!(flags)
6235        )
6236    );
6237    assert_eq!(
6238        unsafe { &(*(::std::ptr::null::<_zend_signal_entry_t>())).handler as *const _ as usize },
6239        8usize,
6240        concat!(
6241            "Offset of field: ",
6242            stringify!(_zend_signal_entry_t),
6243            "::",
6244            stringify!(handler)
6245        )
6246    );
6247}
6248pub type zend_signal_entry_t = _zend_signal_entry_t;
6249#[repr(C)]
6250#[derive(Debug, Copy, Clone)]
6251pub struct _zend_signal_t {
6252    pub signo: ::std::os::raw::c_int,
6253    pub siginfo: *mut siginfo_t,
6254    pub context: *mut ::std::os::raw::c_void,
6255}
6256#[test]
6257fn bindgen_test_layout__zend_signal_t() {
6258    assert_eq!(
6259        ::std::mem::size_of::<_zend_signal_t>(),
6260        24usize,
6261        concat!("Size of: ", stringify!(_zend_signal_t))
6262    );
6263    assert_eq!(
6264        ::std::mem::align_of::<_zend_signal_t>(),
6265        8usize,
6266        concat!("Alignment of ", stringify!(_zend_signal_t))
6267    );
6268    assert_eq!(
6269        unsafe { &(*(::std::ptr::null::<_zend_signal_t>())).signo as *const _ as usize },
6270        0usize,
6271        concat!(
6272            "Offset of field: ",
6273            stringify!(_zend_signal_t),
6274            "::",
6275            stringify!(signo)
6276        )
6277    );
6278    assert_eq!(
6279        unsafe { &(*(::std::ptr::null::<_zend_signal_t>())).siginfo as *const _ as usize },
6280        8usize,
6281        concat!(
6282            "Offset of field: ",
6283            stringify!(_zend_signal_t),
6284            "::",
6285            stringify!(siginfo)
6286        )
6287    );
6288    assert_eq!(
6289        unsafe { &(*(::std::ptr::null::<_zend_signal_t>())).context as *const _ as usize },
6290        16usize,
6291        concat!(
6292            "Offset of field: ",
6293            stringify!(_zend_signal_t),
6294            "::",
6295            stringify!(context)
6296        )
6297    );
6298}
6299pub type zend_signal_t = _zend_signal_t;
6300#[repr(C)]
6301#[derive(Debug, Copy, Clone)]
6302pub struct _zend_signal_queue_t {
6303    pub zend_signal: zend_signal_t,
6304    pub next: *mut _zend_signal_queue_t,
6305}
6306#[test]
6307fn bindgen_test_layout__zend_signal_queue_t() {
6308    assert_eq!(
6309        ::std::mem::size_of::<_zend_signal_queue_t>(),
6310        32usize,
6311        concat!("Size of: ", stringify!(_zend_signal_queue_t))
6312    );
6313    assert_eq!(
6314        ::std::mem::align_of::<_zend_signal_queue_t>(),
6315        8usize,
6316        concat!("Alignment of ", stringify!(_zend_signal_queue_t))
6317    );
6318    assert_eq!(
6319        unsafe {
6320            &(*(::std::ptr::null::<_zend_signal_queue_t>())).zend_signal as *const _ as usize
6321        },
6322        0usize,
6323        concat!(
6324            "Offset of field: ",
6325            stringify!(_zend_signal_queue_t),
6326            "::",
6327            stringify!(zend_signal)
6328        )
6329    );
6330    assert_eq!(
6331        unsafe { &(*(::std::ptr::null::<_zend_signal_queue_t>())).next as *const _ as usize },
6332        24usize,
6333        concat!(
6334            "Offset of field: ",
6335            stringify!(_zend_signal_queue_t),
6336            "::",
6337            stringify!(next)
6338        )
6339    );
6340}
6341pub type zend_signal_queue_t = _zend_signal_queue_t;
6342#[repr(C)]
6343#[derive(Copy, Clone)]
6344pub struct _zend_signal_globals_t {
6345    pub depth: ::std::os::raw::c_int,
6346    pub blocked: ::std::os::raw::c_int,
6347    pub running: ::std::os::raw::c_int,
6348    pub active: ::std::os::raw::c_int,
6349    pub check: zend_bool,
6350    pub reset: zend_bool,
6351    pub handlers: [zend_signal_entry_t; 65usize],
6352    pub pstorage: [zend_signal_queue_t; 64usize],
6353    pub phead: *mut zend_signal_queue_t,
6354    pub ptail: *mut zend_signal_queue_t,
6355    pub pavail: *mut zend_signal_queue_t,
6356}
6357#[test]
6358fn bindgen_test_layout__zend_signal_globals_t() {
6359    assert_eq!(
6360        ::std::mem::size_of::<_zend_signal_globals_t>(),
6361        3136usize,
6362        concat!("Size of: ", stringify!(_zend_signal_globals_t))
6363    );
6364    assert_eq!(
6365        ::std::mem::align_of::<_zend_signal_globals_t>(),
6366        8usize,
6367        concat!("Alignment of ", stringify!(_zend_signal_globals_t))
6368    );
6369    assert_eq!(
6370        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).depth as *const _ as usize },
6371        0usize,
6372        concat!(
6373            "Offset of field: ",
6374            stringify!(_zend_signal_globals_t),
6375            "::",
6376            stringify!(depth)
6377        )
6378    );
6379    assert_eq!(
6380        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).blocked as *const _ as usize },
6381        4usize,
6382        concat!(
6383            "Offset of field: ",
6384            stringify!(_zend_signal_globals_t),
6385            "::",
6386            stringify!(blocked)
6387        )
6388    );
6389    assert_eq!(
6390        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).running as *const _ as usize },
6391        8usize,
6392        concat!(
6393            "Offset of field: ",
6394            stringify!(_zend_signal_globals_t),
6395            "::",
6396            stringify!(running)
6397        )
6398    );
6399    assert_eq!(
6400        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).active as *const _ as usize },
6401        12usize,
6402        concat!(
6403            "Offset of field: ",
6404            stringify!(_zend_signal_globals_t),
6405            "::",
6406            stringify!(active)
6407        )
6408    );
6409    assert_eq!(
6410        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).check as *const _ as usize },
6411        16usize,
6412        concat!(
6413            "Offset of field: ",
6414            stringify!(_zend_signal_globals_t),
6415            "::",
6416            stringify!(check)
6417        )
6418    );
6419    assert_eq!(
6420        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).reset as *const _ as usize },
6421        17usize,
6422        concat!(
6423            "Offset of field: ",
6424            stringify!(_zend_signal_globals_t),
6425            "::",
6426            stringify!(reset)
6427        )
6428    );
6429    assert_eq!(
6430        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).handlers as *const _ as usize },
6431        24usize,
6432        concat!(
6433            "Offset of field: ",
6434            stringify!(_zend_signal_globals_t),
6435            "::",
6436            stringify!(handlers)
6437        )
6438    );
6439    assert_eq!(
6440        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).pstorage as *const _ as usize },
6441        1064usize,
6442        concat!(
6443            "Offset of field: ",
6444            stringify!(_zend_signal_globals_t),
6445            "::",
6446            stringify!(pstorage)
6447        )
6448    );
6449    assert_eq!(
6450        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).phead as *const _ as usize },
6451        3112usize,
6452        concat!(
6453            "Offset of field: ",
6454            stringify!(_zend_signal_globals_t),
6455            "::",
6456            stringify!(phead)
6457        )
6458    );
6459    assert_eq!(
6460        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).ptail as *const _ as usize },
6461        3120usize,
6462        concat!(
6463            "Offset of field: ",
6464            stringify!(_zend_signal_globals_t),
6465            "::",
6466            stringify!(ptail)
6467        )
6468    );
6469    assert_eq!(
6470        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).pavail as *const _ as usize },
6471        3128usize,
6472        concat!(
6473            "Offset of field: ",
6474            stringify!(_zend_signal_globals_t),
6475            "::",
6476            stringify!(pavail)
6477        )
6478    );
6479}
6480pub type zend_signal_globals_t = _zend_signal_globals_t;
6481extern "C" {
6482    pub static mut zend_signal_globals: zend_signal_globals_t;
6483}
6484extern "C" {
6485    pub fn zend_signal_handler_unblock();
6486}
6487extern "C" {
6488    pub fn zend_signal_activate();
6489}
6490extern "C" {
6491    pub fn zend_signal_deactivate();
6492}
6493extern "C" {
6494    pub fn zend_signal_startup();
6495}
6496extern "C" {
6497    pub fn zend_signal_init();
6498}
6499extern "C" {
6500    pub fn zend_signal(
6501        signo: ::std::os::raw::c_int,
6502        handler: ::std::option::Option<unsafe extern "C" fn(arg1: ::std::os::raw::c_int)>,
6503    ) -> ::std::os::raw::c_int;
6504}
6505extern "C" {
6506    pub fn zend_sigaction(
6507        signo: ::std::os::raw::c_int,
6508        act: *const sigaction,
6509        oldact: *mut sigaction,
6510    ) -> ::std::os::raw::c_int;
6511}
6512#[repr(C)]
6513#[derive(Debug, Copy, Clone)]
6514pub struct _zend_serialize_data {
6515    _unused: [u8; 0],
6516}
6517#[repr(C)]
6518#[derive(Debug, Copy, Clone)]
6519pub struct _zend_unserialize_data {
6520    _unused: [u8; 0],
6521}
6522pub type zend_serialize_data = _zend_serialize_data;
6523pub type zend_unserialize_data = _zend_unserialize_data;
6524#[repr(C)]
6525#[derive(Debug, Copy, Clone)]
6526pub struct _zend_class_name {
6527    pub name: *mut zend_string,
6528    pub lc_name: *mut zend_string,
6529}
6530#[test]
6531fn bindgen_test_layout__zend_class_name() {
6532    assert_eq!(
6533        ::std::mem::size_of::<_zend_class_name>(),
6534        16usize,
6535        concat!("Size of: ", stringify!(_zend_class_name))
6536    );
6537    assert_eq!(
6538        ::std::mem::align_of::<_zend_class_name>(),
6539        8usize,
6540        concat!("Alignment of ", stringify!(_zend_class_name))
6541    );
6542    assert_eq!(
6543        unsafe { &(*(::std::ptr::null::<_zend_class_name>())).name as *const _ as usize },
6544        0usize,
6545        concat!(
6546            "Offset of field: ",
6547            stringify!(_zend_class_name),
6548            "::",
6549            stringify!(name)
6550        )
6551    );
6552    assert_eq!(
6553        unsafe { &(*(::std::ptr::null::<_zend_class_name>())).lc_name as *const _ as usize },
6554        8usize,
6555        concat!(
6556            "Offset of field: ",
6557            stringify!(_zend_class_name),
6558            "::",
6559            stringify!(lc_name)
6560        )
6561    );
6562}
6563pub type zend_class_name = _zend_class_name;
6564#[repr(C)]
6565#[derive(Debug, Copy, Clone)]
6566pub struct _zend_trait_method_reference {
6567    pub method_name: *mut zend_string,
6568    pub class_name: *mut zend_string,
6569}
6570#[test]
6571fn bindgen_test_layout__zend_trait_method_reference() {
6572    assert_eq!(
6573        ::std::mem::size_of::<_zend_trait_method_reference>(),
6574        16usize,
6575        concat!("Size of: ", stringify!(_zend_trait_method_reference))
6576    );
6577    assert_eq!(
6578        ::std::mem::align_of::<_zend_trait_method_reference>(),
6579        8usize,
6580        concat!("Alignment of ", stringify!(_zend_trait_method_reference))
6581    );
6582    assert_eq!(
6583        unsafe {
6584            &(*(::std::ptr::null::<_zend_trait_method_reference>())).method_name as *const _
6585                as usize
6586        },
6587        0usize,
6588        concat!(
6589            "Offset of field: ",
6590            stringify!(_zend_trait_method_reference),
6591            "::",
6592            stringify!(method_name)
6593        )
6594    );
6595    assert_eq!(
6596        unsafe {
6597            &(*(::std::ptr::null::<_zend_trait_method_reference>())).class_name as *const _ as usize
6598        },
6599        8usize,
6600        concat!(
6601            "Offset of field: ",
6602            stringify!(_zend_trait_method_reference),
6603            "::",
6604            stringify!(class_name)
6605        )
6606    );
6607}
6608pub type zend_trait_method_reference = _zend_trait_method_reference;
6609#[repr(C)]
6610#[derive(Debug, Copy, Clone)]
6611pub struct _zend_trait_precedence {
6612    pub trait_method: zend_trait_method_reference,
6613    pub num_excludes: u32,
6614    pub exclude_class_names: [*mut zend_string; 1usize],
6615}
6616#[test]
6617fn bindgen_test_layout__zend_trait_precedence() {
6618    assert_eq!(
6619        ::std::mem::size_of::<_zend_trait_precedence>(),
6620        32usize,
6621        concat!("Size of: ", stringify!(_zend_trait_precedence))
6622    );
6623    assert_eq!(
6624        ::std::mem::align_of::<_zend_trait_precedence>(),
6625        8usize,
6626        concat!("Alignment of ", stringify!(_zend_trait_precedence))
6627    );
6628    assert_eq!(
6629        unsafe {
6630            &(*(::std::ptr::null::<_zend_trait_precedence>())).trait_method as *const _ as usize
6631        },
6632        0usize,
6633        concat!(
6634            "Offset of field: ",
6635            stringify!(_zend_trait_precedence),
6636            "::",
6637            stringify!(trait_method)
6638        )
6639    );
6640    assert_eq!(
6641        unsafe {
6642            &(*(::std::ptr::null::<_zend_trait_precedence>())).num_excludes as *const _ as usize
6643        },
6644        16usize,
6645        concat!(
6646            "Offset of field: ",
6647            stringify!(_zend_trait_precedence),
6648            "::",
6649            stringify!(num_excludes)
6650        )
6651    );
6652    assert_eq!(
6653        unsafe {
6654            &(*(::std::ptr::null::<_zend_trait_precedence>())).exclude_class_names as *const _
6655                as usize
6656        },
6657        24usize,
6658        concat!(
6659            "Offset of field: ",
6660            stringify!(_zend_trait_precedence),
6661            "::",
6662            stringify!(exclude_class_names)
6663        )
6664    );
6665}
6666pub type zend_trait_precedence = _zend_trait_precedence;
6667#[repr(C)]
6668#[derive(Debug, Copy, Clone)]
6669pub struct _zend_trait_alias {
6670    pub trait_method: zend_trait_method_reference,
6671    #[doc = " name for method to be added"]
6672    pub alias: *mut zend_string,
6673    #[doc = " modifiers to be set on trait method"]
6674    pub modifiers: u32,
6675}
6676#[test]
6677fn bindgen_test_layout__zend_trait_alias() {
6678    assert_eq!(
6679        ::std::mem::size_of::<_zend_trait_alias>(),
6680        32usize,
6681        concat!("Size of: ", stringify!(_zend_trait_alias))
6682    );
6683    assert_eq!(
6684        ::std::mem::align_of::<_zend_trait_alias>(),
6685        8usize,
6686        concat!("Alignment of ", stringify!(_zend_trait_alias))
6687    );
6688    assert_eq!(
6689        unsafe { &(*(::std::ptr::null::<_zend_trait_alias>())).trait_method as *const _ as usize },
6690        0usize,
6691        concat!(
6692            "Offset of field: ",
6693            stringify!(_zend_trait_alias),
6694            "::",
6695            stringify!(trait_method)
6696        )
6697    );
6698    assert_eq!(
6699        unsafe { &(*(::std::ptr::null::<_zend_trait_alias>())).alias as *const _ as usize },
6700        16usize,
6701        concat!(
6702            "Offset of field: ",
6703            stringify!(_zend_trait_alias),
6704            "::",
6705            stringify!(alias)
6706        )
6707    );
6708    assert_eq!(
6709        unsafe { &(*(::std::ptr::null::<_zend_trait_alias>())).modifiers as *const _ as usize },
6710        24usize,
6711        concat!(
6712            "Offset of field: ",
6713            stringify!(_zend_trait_alias),
6714            "::",
6715            stringify!(modifiers)
6716        )
6717    );
6718}
6719pub type zend_trait_alias = _zend_trait_alias;
6720#[repr(C)]
6721#[derive(Copy, Clone)]
6722pub struct _zend_class_entry {
6723    pub type_: ::std::os::raw::c_char,
6724    pub name: *mut zend_string,
6725    pub __bindgen_anon_1: _zend_class_entry__bindgen_ty_1,
6726    pub refcount: ::std::os::raw::c_int,
6727    pub ce_flags: u32,
6728    pub default_properties_count: ::std::os::raw::c_int,
6729    pub default_static_members_count: ::std::os::raw::c_int,
6730    pub default_properties_table: *mut zval,
6731    pub default_static_members_table: *mut zval,
6732    pub static_members_table__ptr: *mut *mut zval,
6733    pub function_table: HashTable,
6734    pub properties_info: HashTable,
6735    pub constants_table: HashTable,
6736    pub properties_info_table: *mut *mut _zend_property_info,
6737    pub constructor: *mut zend_function,
6738    pub destructor: *mut zend_function,
6739    pub clone: *mut zend_function,
6740    pub __get: *mut zend_function,
6741    pub __set: *mut zend_function,
6742    pub __unset: *mut zend_function,
6743    pub __isset: *mut zend_function,
6744    pub __call: *mut zend_function,
6745    pub __callstatic: *mut zend_function,
6746    pub __tostring: *mut zend_function,
6747    pub __debugInfo: *mut zend_function,
6748    pub serialize_func: *mut zend_function,
6749    pub unserialize_func: *mut zend_function,
6750    pub iterator_funcs_ptr: *mut zend_class_iterator_funcs,
6751    pub __bindgen_anon_2: _zend_class_entry__bindgen_ty_2,
6752    pub get_iterator: ::std::option::Option<
6753        unsafe extern "C" fn(
6754            ce: *mut zend_class_entry,
6755            object: *mut zval,
6756            by_ref: ::std::os::raw::c_int,
6757        ) -> *mut zend_object_iterator,
6758    >,
6759    pub get_static_method: ::std::option::Option<
6760        unsafe extern "C" fn(
6761            ce: *mut zend_class_entry,
6762            method: *mut zend_string,
6763        ) -> *mut zend_function,
6764    >,
6765    pub serialize: ::std::option::Option<
6766        unsafe extern "C" fn(
6767            object: *mut zval,
6768            buffer: *mut *mut ::std::os::raw::c_uchar,
6769            buf_len: *mut size_t,
6770            data: *mut zend_serialize_data,
6771        ) -> ::std::os::raw::c_int,
6772    >,
6773    pub unserialize: ::std::option::Option<
6774        unsafe extern "C" fn(
6775            object: *mut zval,
6776            ce: *mut zend_class_entry,
6777            buf: *const ::std::os::raw::c_uchar,
6778            buf_len: size_t,
6779            data: *mut zend_unserialize_data,
6780        ) -> ::std::os::raw::c_int,
6781    >,
6782    pub num_interfaces: u32,
6783    pub num_traits: u32,
6784    pub __bindgen_anon_3: _zend_class_entry__bindgen_ty_3,
6785    pub trait_names: *mut zend_class_name,
6786    pub trait_aliases: *mut *mut zend_trait_alias,
6787    pub trait_precedences: *mut *mut zend_trait_precedence,
6788    pub info: _zend_class_entry__bindgen_ty_4,
6789}
6790#[repr(C)]
6791#[derive(Copy, Clone)]
6792pub union _zend_class_entry__bindgen_ty_1 {
6793    pub parent: *mut zend_class_entry,
6794    pub parent_name: *mut zend_string,
6795    _bindgen_union_align: u64,
6796}
6797#[test]
6798fn bindgen_test_layout__zend_class_entry__bindgen_ty_1() {
6799    assert_eq!(
6800        ::std::mem::size_of::<_zend_class_entry__bindgen_ty_1>(),
6801        8usize,
6802        concat!("Size of: ", stringify!(_zend_class_entry__bindgen_ty_1))
6803    );
6804    assert_eq!(
6805        ::std::mem::align_of::<_zend_class_entry__bindgen_ty_1>(),
6806        8usize,
6807        concat!("Alignment of ", stringify!(_zend_class_entry__bindgen_ty_1))
6808    );
6809    assert_eq!(
6810        unsafe {
6811            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1>())).parent as *const _ as usize
6812        },
6813        0usize,
6814        concat!(
6815            "Offset of field: ",
6816            stringify!(_zend_class_entry__bindgen_ty_1),
6817            "::",
6818            stringify!(parent)
6819        )
6820    );
6821    assert_eq!(
6822        unsafe {
6823            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1>())).parent_name as *const _
6824                as usize
6825        },
6826        0usize,
6827        concat!(
6828            "Offset of field: ",
6829            stringify!(_zend_class_entry__bindgen_ty_1),
6830            "::",
6831            stringify!(parent_name)
6832        )
6833    );
6834}
6835#[repr(C)]
6836#[derive(Copy, Clone)]
6837pub union _zend_class_entry__bindgen_ty_2 {
6838    pub create_object: ::std::option::Option<
6839        unsafe extern "C" fn(class_type: *mut zend_class_entry) -> *mut zend_object,
6840    >,
6841    pub interface_gets_implemented: ::std::option::Option<
6842        unsafe extern "C" fn(
6843            iface: *mut zend_class_entry,
6844            class_type: *mut zend_class_entry,
6845        ) -> ::std::os::raw::c_int,
6846    >,
6847    _bindgen_union_align: u64,
6848}
6849#[test]
6850fn bindgen_test_layout__zend_class_entry__bindgen_ty_2() {
6851    assert_eq!(
6852        ::std::mem::size_of::<_zend_class_entry__bindgen_ty_2>(),
6853        8usize,
6854        concat!("Size of: ", stringify!(_zend_class_entry__bindgen_ty_2))
6855    );
6856    assert_eq!(
6857        ::std::mem::align_of::<_zend_class_entry__bindgen_ty_2>(),
6858        8usize,
6859        concat!("Alignment of ", stringify!(_zend_class_entry__bindgen_ty_2))
6860    );
6861    assert_eq!(
6862        unsafe {
6863            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_2>())).create_object as *const _
6864                as usize
6865        },
6866        0usize,
6867        concat!(
6868            "Offset of field: ",
6869            stringify!(_zend_class_entry__bindgen_ty_2),
6870            "::",
6871            stringify!(create_object)
6872        )
6873    );
6874    assert_eq!(
6875        unsafe {
6876            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_2>())).interface_gets_implemented
6877                as *const _ as usize
6878        },
6879        0usize,
6880        concat!(
6881            "Offset of field: ",
6882            stringify!(_zend_class_entry__bindgen_ty_2),
6883            "::",
6884            stringify!(interface_gets_implemented)
6885        )
6886    );
6887}
6888#[repr(C)]
6889#[derive(Copy, Clone)]
6890pub union _zend_class_entry__bindgen_ty_3 {
6891    pub interfaces: *mut *mut zend_class_entry,
6892    pub interface_names: *mut zend_class_name,
6893    _bindgen_union_align: u64,
6894}
6895#[test]
6896fn bindgen_test_layout__zend_class_entry__bindgen_ty_3() {
6897    assert_eq!(
6898        ::std::mem::size_of::<_zend_class_entry__bindgen_ty_3>(),
6899        8usize,
6900        concat!("Size of: ", stringify!(_zend_class_entry__bindgen_ty_3))
6901    );
6902    assert_eq!(
6903        ::std::mem::align_of::<_zend_class_entry__bindgen_ty_3>(),
6904        8usize,
6905        concat!("Alignment of ", stringify!(_zend_class_entry__bindgen_ty_3))
6906    );
6907    assert_eq!(
6908        unsafe {
6909            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_3>())).interfaces as *const _
6910                as usize
6911        },
6912        0usize,
6913        concat!(
6914            "Offset of field: ",
6915            stringify!(_zend_class_entry__bindgen_ty_3),
6916            "::",
6917            stringify!(interfaces)
6918        )
6919    );
6920    assert_eq!(
6921        unsafe {
6922            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_3>())).interface_names as *const _
6923                as usize
6924        },
6925        0usize,
6926        concat!(
6927            "Offset of field: ",
6928            stringify!(_zend_class_entry__bindgen_ty_3),
6929            "::",
6930            stringify!(interface_names)
6931        )
6932    );
6933}
6934#[repr(C)]
6935#[derive(Copy, Clone)]
6936pub union _zend_class_entry__bindgen_ty_4 {
6937    pub user: _zend_class_entry__bindgen_ty_4__bindgen_ty_1,
6938    pub internal: _zend_class_entry__bindgen_ty_4__bindgen_ty_2,
6939    _bindgen_union_align: [u64; 3usize],
6940}
6941#[repr(C)]
6942#[derive(Debug, Copy, Clone)]
6943pub struct _zend_class_entry__bindgen_ty_4__bindgen_ty_1 {
6944    pub filename: *mut zend_string,
6945    pub line_start: u32,
6946    pub line_end: u32,
6947    pub doc_comment: *mut zend_string,
6948}
6949#[test]
6950fn bindgen_test_layout__zend_class_entry__bindgen_ty_4__bindgen_ty_1() {
6951    assert_eq!(
6952        ::std::mem::size_of::<_zend_class_entry__bindgen_ty_4__bindgen_ty_1>(),
6953        24usize,
6954        concat!(
6955            "Size of: ",
6956            stringify!(_zend_class_entry__bindgen_ty_4__bindgen_ty_1)
6957        )
6958    );
6959    assert_eq!(
6960        ::std::mem::align_of::<_zend_class_entry__bindgen_ty_4__bindgen_ty_1>(),
6961        8usize,
6962        concat!(
6963            "Alignment of ",
6964            stringify!(_zend_class_entry__bindgen_ty_4__bindgen_ty_1)
6965        )
6966    );
6967    assert_eq!(
6968        unsafe {
6969            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_4__bindgen_ty_1>())).filename
6970                as *const _ as usize
6971        },
6972        0usize,
6973        concat!(
6974            "Offset of field: ",
6975            stringify!(_zend_class_entry__bindgen_ty_4__bindgen_ty_1),
6976            "::",
6977            stringify!(filename)
6978        )
6979    );
6980    assert_eq!(
6981        unsafe {
6982            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_4__bindgen_ty_1>())).line_start
6983                as *const _ as usize
6984        },
6985        8usize,
6986        concat!(
6987            "Offset of field: ",
6988            stringify!(_zend_class_entry__bindgen_ty_4__bindgen_ty_1),
6989            "::",
6990            stringify!(line_start)
6991        )
6992    );
6993    assert_eq!(
6994        unsafe {
6995            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_4__bindgen_ty_1>())).line_end
6996                as *const _ as usize
6997        },
6998        12usize,
6999        concat!(
7000            "Offset of field: ",
7001            stringify!(_zend_class_entry__bindgen_ty_4__bindgen_ty_1),
7002            "::",
7003            stringify!(line_end)
7004        )
7005    );
7006    assert_eq!(
7007        unsafe {
7008            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_4__bindgen_ty_1>())).doc_comment
7009                as *const _ as usize
7010        },
7011        16usize,
7012        concat!(
7013            "Offset of field: ",
7014            stringify!(_zend_class_entry__bindgen_ty_4__bindgen_ty_1),
7015            "::",
7016            stringify!(doc_comment)
7017        )
7018    );
7019}
7020#[repr(C)]
7021#[derive(Debug, Copy, Clone)]
7022pub struct _zend_class_entry__bindgen_ty_4__bindgen_ty_2 {
7023    pub builtin_functions: *const _zend_function_entry,
7024    pub module: *mut _zend_module_entry,
7025}
7026#[test]
7027fn bindgen_test_layout__zend_class_entry__bindgen_ty_4__bindgen_ty_2() {
7028    assert_eq!(
7029        ::std::mem::size_of::<_zend_class_entry__bindgen_ty_4__bindgen_ty_2>(),
7030        16usize,
7031        concat!(
7032            "Size of: ",
7033            stringify!(_zend_class_entry__bindgen_ty_4__bindgen_ty_2)
7034        )
7035    );
7036    assert_eq!(
7037        ::std::mem::align_of::<_zend_class_entry__bindgen_ty_4__bindgen_ty_2>(),
7038        8usize,
7039        concat!(
7040            "Alignment of ",
7041            stringify!(_zend_class_entry__bindgen_ty_4__bindgen_ty_2)
7042        )
7043    );
7044    assert_eq!(
7045        unsafe {
7046            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_4__bindgen_ty_2>()))
7047                .builtin_functions as *const _ as usize
7048        },
7049        0usize,
7050        concat!(
7051            "Offset of field: ",
7052            stringify!(_zend_class_entry__bindgen_ty_4__bindgen_ty_2),
7053            "::",
7054            stringify!(builtin_functions)
7055        )
7056    );
7057    assert_eq!(
7058        unsafe {
7059            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_4__bindgen_ty_2>())).module
7060                as *const _ as usize
7061        },
7062        8usize,
7063        concat!(
7064            "Offset of field: ",
7065            stringify!(_zend_class_entry__bindgen_ty_4__bindgen_ty_2),
7066            "::",
7067            stringify!(module)
7068        )
7069    );
7070}
7071#[test]
7072fn bindgen_test_layout__zend_class_entry__bindgen_ty_4() {
7073    assert_eq!(
7074        ::std::mem::size_of::<_zend_class_entry__bindgen_ty_4>(),
7075        24usize,
7076        concat!("Size of: ", stringify!(_zend_class_entry__bindgen_ty_4))
7077    );
7078    assert_eq!(
7079        ::std::mem::align_of::<_zend_class_entry__bindgen_ty_4>(),
7080        8usize,
7081        concat!("Alignment of ", stringify!(_zend_class_entry__bindgen_ty_4))
7082    );
7083    assert_eq!(
7084        unsafe {
7085            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_4>())).user as *const _ as usize
7086        },
7087        0usize,
7088        concat!(
7089            "Offset of field: ",
7090            stringify!(_zend_class_entry__bindgen_ty_4),
7091            "::",
7092            stringify!(user)
7093        )
7094    );
7095    assert_eq!(
7096        unsafe {
7097            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_4>())).internal as *const _
7098                as usize
7099        },
7100        0usize,
7101        concat!(
7102            "Offset of field: ",
7103            stringify!(_zend_class_entry__bindgen_ty_4),
7104            "::",
7105            stringify!(internal)
7106        )
7107    );
7108}
7109#[test]
7110fn bindgen_test_layout__zend_class_entry() {
7111    assert_eq!(
7112        ::std::mem::size_of::<_zend_class_entry>(),
7113        456usize,
7114        concat!("Size of: ", stringify!(_zend_class_entry))
7115    );
7116    assert_eq!(
7117        ::std::mem::align_of::<_zend_class_entry>(),
7118        8usize,
7119        concat!("Alignment of ", stringify!(_zend_class_entry))
7120    );
7121    assert_eq!(
7122        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).type_ as *const _ as usize },
7123        0usize,
7124        concat!(
7125            "Offset of field: ",
7126            stringify!(_zend_class_entry),
7127            "::",
7128            stringify!(type_)
7129        )
7130    );
7131    assert_eq!(
7132        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).name as *const _ as usize },
7133        8usize,
7134        concat!(
7135            "Offset of field: ",
7136            stringify!(_zend_class_entry),
7137            "::",
7138            stringify!(name)
7139        )
7140    );
7141    assert_eq!(
7142        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).refcount as *const _ as usize },
7143        24usize,
7144        concat!(
7145            "Offset of field: ",
7146            stringify!(_zend_class_entry),
7147            "::",
7148            stringify!(refcount)
7149        )
7150    );
7151    assert_eq!(
7152        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).ce_flags as *const _ as usize },
7153        28usize,
7154        concat!(
7155            "Offset of field: ",
7156            stringify!(_zend_class_entry),
7157            "::",
7158            stringify!(ce_flags)
7159        )
7160    );
7161    assert_eq!(
7162        unsafe {
7163            &(*(::std::ptr::null::<_zend_class_entry>())).default_properties_count as *const _
7164                as usize
7165        },
7166        32usize,
7167        concat!(
7168            "Offset of field: ",
7169            stringify!(_zend_class_entry),
7170            "::",
7171            stringify!(default_properties_count)
7172        )
7173    );
7174    assert_eq!(
7175        unsafe {
7176            &(*(::std::ptr::null::<_zend_class_entry>())).default_static_members_count as *const _
7177                as usize
7178        },
7179        36usize,
7180        concat!(
7181            "Offset of field: ",
7182            stringify!(_zend_class_entry),
7183            "::",
7184            stringify!(default_static_members_count)
7185        )
7186    );
7187    assert_eq!(
7188        unsafe {
7189            &(*(::std::ptr::null::<_zend_class_entry>())).default_properties_table as *const _
7190                as usize
7191        },
7192        40usize,
7193        concat!(
7194            "Offset of field: ",
7195            stringify!(_zend_class_entry),
7196            "::",
7197            stringify!(default_properties_table)
7198        )
7199    );
7200    assert_eq!(
7201        unsafe {
7202            &(*(::std::ptr::null::<_zend_class_entry>())).default_static_members_table as *const _
7203                as usize
7204        },
7205        48usize,
7206        concat!(
7207            "Offset of field: ",
7208            stringify!(_zend_class_entry),
7209            "::",
7210            stringify!(default_static_members_table)
7211        )
7212    );
7213    assert_eq!(
7214        unsafe {
7215            &(*(::std::ptr::null::<_zend_class_entry>())).static_members_table__ptr as *const _
7216                as usize
7217        },
7218        56usize,
7219        concat!(
7220            "Offset of field: ",
7221            stringify!(_zend_class_entry),
7222            "::",
7223            stringify!(static_members_table__ptr)
7224        )
7225    );
7226    assert_eq!(
7227        unsafe {
7228            &(*(::std::ptr::null::<_zend_class_entry>())).function_table as *const _ as usize
7229        },
7230        64usize,
7231        concat!(
7232            "Offset of field: ",
7233            stringify!(_zend_class_entry),
7234            "::",
7235            stringify!(function_table)
7236        )
7237    );
7238    assert_eq!(
7239        unsafe {
7240            &(*(::std::ptr::null::<_zend_class_entry>())).properties_info as *const _ as usize
7241        },
7242        120usize,
7243        concat!(
7244            "Offset of field: ",
7245            stringify!(_zend_class_entry),
7246            "::",
7247            stringify!(properties_info)
7248        )
7249    );
7250    assert_eq!(
7251        unsafe {
7252            &(*(::std::ptr::null::<_zend_class_entry>())).constants_table as *const _ as usize
7253        },
7254        176usize,
7255        concat!(
7256            "Offset of field: ",
7257            stringify!(_zend_class_entry),
7258            "::",
7259            stringify!(constants_table)
7260        )
7261    );
7262    assert_eq!(
7263        unsafe {
7264            &(*(::std::ptr::null::<_zend_class_entry>())).properties_info_table as *const _ as usize
7265        },
7266        232usize,
7267        concat!(
7268            "Offset of field: ",
7269            stringify!(_zend_class_entry),
7270            "::",
7271            stringify!(properties_info_table)
7272        )
7273    );
7274    assert_eq!(
7275        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).constructor as *const _ as usize },
7276        240usize,
7277        concat!(
7278            "Offset of field: ",
7279            stringify!(_zend_class_entry),
7280            "::",
7281            stringify!(constructor)
7282        )
7283    );
7284    assert_eq!(
7285        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).destructor as *const _ as usize },
7286        248usize,
7287        concat!(
7288            "Offset of field: ",
7289            stringify!(_zend_class_entry),
7290            "::",
7291            stringify!(destructor)
7292        )
7293    );
7294    assert_eq!(
7295        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).clone as *const _ as usize },
7296        256usize,
7297        concat!(
7298            "Offset of field: ",
7299            stringify!(_zend_class_entry),
7300            "::",
7301            stringify!(clone)
7302        )
7303    );
7304    assert_eq!(
7305        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__get as *const _ as usize },
7306        264usize,
7307        concat!(
7308            "Offset of field: ",
7309            stringify!(_zend_class_entry),
7310            "::",
7311            stringify!(__get)
7312        )
7313    );
7314    assert_eq!(
7315        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__set as *const _ as usize },
7316        272usize,
7317        concat!(
7318            "Offset of field: ",
7319            stringify!(_zend_class_entry),
7320            "::",
7321            stringify!(__set)
7322        )
7323    );
7324    assert_eq!(
7325        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__unset as *const _ as usize },
7326        280usize,
7327        concat!(
7328            "Offset of field: ",
7329            stringify!(_zend_class_entry),
7330            "::",
7331            stringify!(__unset)
7332        )
7333    );
7334    assert_eq!(
7335        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__isset as *const _ as usize },
7336        288usize,
7337        concat!(
7338            "Offset of field: ",
7339            stringify!(_zend_class_entry),
7340            "::",
7341            stringify!(__isset)
7342        )
7343    );
7344    assert_eq!(
7345        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__call as *const _ as usize },
7346        296usize,
7347        concat!(
7348            "Offset of field: ",
7349            stringify!(_zend_class_entry),
7350            "::",
7351            stringify!(__call)
7352        )
7353    );
7354    assert_eq!(
7355        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__callstatic as *const _ as usize },
7356        304usize,
7357        concat!(
7358            "Offset of field: ",
7359            stringify!(_zend_class_entry),
7360            "::",
7361            stringify!(__callstatic)
7362        )
7363    );
7364    assert_eq!(
7365        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__tostring as *const _ as usize },
7366        312usize,
7367        concat!(
7368            "Offset of field: ",
7369            stringify!(_zend_class_entry),
7370            "::",
7371            stringify!(__tostring)
7372        )
7373    );
7374    assert_eq!(
7375        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__debugInfo as *const _ as usize },
7376        320usize,
7377        concat!(
7378            "Offset of field: ",
7379            stringify!(_zend_class_entry),
7380            "::",
7381            stringify!(__debugInfo)
7382        )
7383    );
7384    assert_eq!(
7385        unsafe {
7386            &(*(::std::ptr::null::<_zend_class_entry>())).serialize_func as *const _ as usize
7387        },
7388        328usize,
7389        concat!(
7390            "Offset of field: ",
7391            stringify!(_zend_class_entry),
7392            "::",
7393            stringify!(serialize_func)
7394        )
7395    );
7396    assert_eq!(
7397        unsafe {
7398            &(*(::std::ptr::null::<_zend_class_entry>())).unserialize_func as *const _ as usize
7399        },
7400        336usize,
7401        concat!(
7402            "Offset of field: ",
7403            stringify!(_zend_class_entry),
7404            "::",
7405            stringify!(unserialize_func)
7406        )
7407    );
7408    assert_eq!(
7409        unsafe {
7410            &(*(::std::ptr::null::<_zend_class_entry>())).iterator_funcs_ptr as *const _ as usize
7411        },
7412        344usize,
7413        concat!(
7414            "Offset of field: ",
7415            stringify!(_zend_class_entry),
7416            "::",
7417            stringify!(iterator_funcs_ptr)
7418        )
7419    );
7420    assert_eq!(
7421        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).get_iterator as *const _ as usize },
7422        360usize,
7423        concat!(
7424            "Offset of field: ",
7425            stringify!(_zend_class_entry),
7426            "::",
7427            stringify!(get_iterator)
7428        )
7429    );
7430    assert_eq!(
7431        unsafe {
7432            &(*(::std::ptr::null::<_zend_class_entry>())).get_static_method as *const _ as usize
7433        },
7434        368usize,
7435        concat!(
7436            "Offset of field: ",
7437            stringify!(_zend_class_entry),
7438            "::",
7439            stringify!(get_static_method)
7440        )
7441    );
7442    assert_eq!(
7443        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).serialize as *const _ as usize },
7444        376usize,
7445        concat!(
7446            "Offset of field: ",
7447            stringify!(_zend_class_entry),
7448            "::",
7449            stringify!(serialize)
7450        )
7451    );
7452    assert_eq!(
7453        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).unserialize as *const _ as usize },
7454        384usize,
7455        concat!(
7456            "Offset of field: ",
7457            stringify!(_zend_class_entry),
7458            "::",
7459            stringify!(unserialize)
7460        )
7461    );
7462    assert_eq!(
7463        unsafe {
7464            &(*(::std::ptr::null::<_zend_class_entry>())).num_interfaces as *const _ as usize
7465        },
7466        392usize,
7467        concat!(
7468            "Offset of field: ",
7469            stringify!(_zend_class_entry),
7470            "::",
7471            stringify!(num_interfaces)
7472        )
7473    );
7474    assert_eq!(
7475        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).num_traits as *const _ as usize },
7476        396usize,
7477        concat!(
7478            "Offset of field: ",
7479            stringify!(_zend_class_entry),
7480            "::",
7481            stringify!(num_traits)
7482        )
7483    );
7484    assert_eq!(
7485        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).trait_names as *const _ as usize },
7486        408usize,
7487        concat!(
7488            "Offset of field: ",
7489            stringify!(_zend_class_entry),
7490            "::",
7491            stringify!(trait_names)
7492        )
7493    );
7494    assert_eq!(
7495        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).trait_aliases as *const _ as usize },
7496        416usize,
7497        concat!(
7498            "Offset of field: ",
7499            stringify!(_zend_class_entry),
7500            "::",
7501            stringify!(trait_aliases)
7502        )
7503    );
7504    assert_eq!(
7505        unsafe {
7506            &(*(::std::ptr::null::<_zend_class_entry>())).trait_precedences as *const _ as usize
7507        },
7508        424usize,
7509        concat!(
7510            "Offset of field: ",
7511            stringify!(_zend_class_entry),
7512            "::",
7513            stringify!(trait_precedences)
7514        )
7515    );
7516    assert_eq!(
7517        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).info as *const _ as usize },
7518        432usize,
7519        concat!(
7520            "Offset of field: ",
7521            stringify!(_zend_class_entry),
7522            "::",
7523            stringify!(info)
7524        )
7525    );
7526}
7527#[repr(C)]
7528#[derive(Debug, Copy, Clone)]
7529pub struct _zend_utility_functions {
7530    pub error_function: ::std::option::Option<
7531        unsafe extern "C" fn(
7532            type_: ::std::os::raw::c_int,
7533            error_filename: *const ::std::os::raw::c_char,
7534            error_lineno: u32,
7535            format: *const ::std::os::raw::c_char,
7536            args: *mut __va_list_tag,
7537        ),
7538    >,
7539    pub printf_function: ::std::option::Option<
7540        unsafe extern "C" fn(format: *const ::std::os::raw::c_char, ...) -> size_t,
7541    >,
7542    pub write_function: ::std::option::Option<
7543        unsafe extern "C" fn(str_: *const ::std::os::raw::c_char, str_length: size_t) -> size_t,
7544    >,
7545    pub fopen_function: ::std::option::Option<
7546        unsafe extern "C" fn(
7547            filename: *const ::std::os::raw::c_char,
7548            opened_path: *mut *mut zend_string,
7549        ) -> *mut FILE,
7550    >,
7551    pub message_handler: ::std::option::Option<
7552        unsafe extern "C" fn(message: zend_long, data: *const ::std::os::raw::c_void),
7553    >,
7554    pub get_configuration_directive:
7555        ::std::option::Option<unsafe extern "C" fn(name: *mut zend_string) -> *mut zval>,
7556    pub ticks_function: ::std::option::Option<unsafe extern "C" fn(ticks: ::std::os::raw::c_int)>,
7557    pub on_timeout: ::std::option::Option<unsafe extern "C" fn(seconds: ::std::os::raw::c_int)>,
7558    pub stream_open_function: ::std::option::Option<
7559        unsafe extern "C" fn(
7560            filename: *const ::std::os::raw::c_char,
7561            handle: *mut zend_file_handle,
7562        ) -> ::std::os::raw::c_int,
7563    >,
7564    pub printf_to_smart_string_function: ::std::option::Option<
7565        unsafe extern "C" fn(
7566            buf: *mut smart_string,
7567            format: *const ::std::os::raw::c_char,
7568            ap: *mut __va_list_tag,
7569        ),
7570    >,
7571    pub printf_to_smart_str_function: ::std::option::Option<
7572        unsafe extern "C" fn(
7573            buf: *mut smart_str,
7574            format: *const ::std::os::raw::c_char,
7575            ap: *mut __va_list_tag,
7576        ),
7577    >,
7578    pub getenv_function: ::std::option::Option<
7579        unsafe extern "C" fn(
7580            name: *mut ::std::os::raw::c_char,
7581            name_len: size_t,
7582        ) -> *mut ::std::os::raw::c_char,
7583    >,
7584    pub resolve_path_function: ::std::option::Option<
7585        unsafe extern "C" fn(
7586            filename: *const ::std::os::raw::c_char,
7587            filename_len: size_t,
7588        ) -> *mut zend_string,
7589    >,
7590}
7591#[test]
7592fn bindgen_test_layout__zend_utility_functions() {
7593    assert_eq!(
7594        ::std::mem::size_of::<_zend_utility_functions>(),
7595        104usize,
7596        concat!("Size of: ", stringify!(_zend_utility_functions))
7597    );
7598    assert_eq!(
7599        ::std::mem::align_of::<_zend_utility_functions>(),
7600        8usize,
7601        concat!("Alignment of ", stringify!(_zend_utility_functions))
7602    );
7603    assert_eq!(
7604        unsafe {
7605            &(*(::std::ptr::null::<_zend_utility_functions>())).error_function as *const _ as usize
7606        },
7607        0usize,
7608        concat!(
7609            "Offset of field: ",
7610            stringify!(_zend_utility_functions),
7611            "::",
7612            stringify!(error_function)
7613        )
7614    );
7615    assert_eq!(
7616        unsafe {
7617            &(*(::std::ptr::null::<_zend_utility_functions>())).printf_function as *const _ as usize
7618        },
7619        8usize,
7620        concat!(
7621            "Offset of field: ",
7622            stringify!(_zend_utility_functions),
7623            "::",
7624            stringify!(printf_function)
7625        )
7626    );
7627    assert_eq!(
7628        unsafe {
7629            &(*(::std::ptr::null::<_zend_utility_functions>())).write_function as *const _ as usize
7630        },
7631        16usize,
7632        concat!(
7633            "Offset of field: ",
7634            stringify!(_zend_utility_functions),
7635            "::",
7636            stringify!(write_function)
7637        )
7638    );
7639    assert_eq!(
7640        unsafe {
7641            &(*(::std::ptr::null::<_zend_utility_functions>())).fopen_function as *const _ as usize
7642        },
7643        24usize,
7644        concat!(
7645            "Offset of field: ",
7646            stringify!(_zend_utility_functions),
7647            "::",
7648            stringify!(fopen_function)
7649        )
7650    );
7651    assert_eq!(
7652        unsafe {
7653            &(*(::std::ptr::null::<_zend_utility_functions>())).message_handler as *const _ as usize
7654        },
7655        32usize,
7656        concat!(
7657            "Offset of field: ",
7658            stringify!(_zend_utility_functions),
7659            "::",
7660            stringify!(message_handler)
7661        )
7662    );
7663    assert_eq!(
7664        unsafe {
7665            &(*(::std::ptr::null::<_zend_utility_functions>())).get_configuration_directive
7666                as *const _ as usize
7667        },
7668        40usize,
7669        concat!(
7670            "Offset of field: ",
7671            stringify!(_zend_utility_functions),
7672            "::",
7673            stringify!(get_configuration_directive)
7674        )
7675    );
7676    assert_eq!(
7677        unsafe {
7678            &(*(::std::ptr::null::<_zend_utility_functions>())).ticks_function as *const _ as usize
7679        },
7680        48usize,
7681        concat!(
7682            "Offset of field: ",
7683            stringify!(_zend_utility_functions),
7684            "::",
7685            stringify!(ticks_function)
7686        )
7687    );
7688    assert_eq!(
7689        unsafe {
7690            &(*(::std::ptr::null::<_zend_utility_functions>())).on_timeout as *const _ as usize
7691        },
7692        56usize,
7693        concat!(
7694            "Offset of field: ",
7695            stringify!(_zend_utility_functions),
7696            "::",
7697            stringify!(on_timeout)
7698        )
7699    );
7700    assert_eq!(
7701        unsafe {
7702            &(*(::std::ptr::null::<_zend_utility_functions>())).stream_open_function as *const _
7703                as usize
7704        },
7705        64usize,
7706        concat!(
7707            "Offset of field: ",
7708            stringify!(_zend_utility_functions),
7709            "::",
7710            stringify!(stream_open_function)
7711        )
7712    );
7713    assert_eq!(
7714        unsafe {
7715            &(*(::std::ptr::null::<_zend_utility_functions>())).printf_to_smart_string_function
7716                as *const _ as usize
7717        },
7718        72usize,
7719        concat!(
7720            "Offset of field: ",
7721            stringify!(_zend_utility_functions),
7722            "::",
7723            stringify!(printf_to_smart_string_function)
7724        )
7725    );
7726    assert_eq!(
7727        unsafe {
7728            &(*(::std::ptr::null::<_zend_utility_functions>())).printf_to_smart_str_function
7729                as *const _ as usize
7730        },
7731        80usize,
7732        concat!(
7733            "Offset of field: ",
7734            stringify!(_zend_utility_functions),
7735            "::",
7736            stringify!(printf_to_smart_str_function)
7737        )
7738    );
7739    assert_eq!(
7740        unsafe {
7741            &(*(::std::ptr::null::<_zend_utility_functions>())).getenv_function as *const _ as usize
7742        },
7743        88usize,
7744        concat!(
7745            "Offset of field: ",
7746            stringify!(_zend_utility_functions),
7747            "::",
7748            stringify!(getenv_function)
7749        )
7750    );
7751    assert_eq!(
7752        unsafe {
7753            &(*(::std::ptr::null::<_zend_utility_functions>())).resolve_path_function as *const _
7754                as usize
7755        },
7756        96usize,
7757        concat!(
7758            "Offset of field: ",
7759            stringify!(_zend_utility_functions),
7760            "::",
7761            stringify!(resolve_path_function)
7762        )
7763    );
7764}
7765pub type zend_utility_functions = _zend_utility_functions;
7766#[repr(C)]
7767#[derive(Debug, Copy, Clone)]
7768pub struct _zend_utility_values {
7769    pub html_errors: zend_bool,
7770}
7771#[test]
7772fn bindgen_test_layout__zend_utility_values() {
7773    assert_eq!(
7774        ::std::mem::size_of::<_zend_utility_values>(),
7775        1usize,
7776        concat!("Size of: ", stringify!(_zend_utility_values))
7777    );
7778    assert_eq!(
7779        ::std::mem::align_of::<_zend_utility_values>(),
7780        1usize,
7781        concat!("Alignment of ", stringify!(_zend_utility_values))
7782    );
7783    assert_eq!(
7784        unsafe {
7785            &(*(::std::ptr::null::<_zend_utility_values>())).html_errors as *const _ as usize
7786        },
7787        0usize,
7788        concat!(
7789            "Offset of field: ",
7790            stringify!(_zend_utility_values),
7791            "::",
7792            stringify!(html_errors)
7793        )
7794    );
7795}
7796pub type zend_utility_values = _zend_utility_values;
7797pub type zend_write_func_t = ::std::option::Option<
7798    unsafe extern "C" fn(
7799        str_: *const ::std::os::raw::c_char,
7800        str_length: size_t,
7801    ) -> ::std::os::raw::c_int,
7802>;
7803extern "C" {
7804    pub fn zend_startup(utility_functions: *mut zend_utility_functions) -> ::std::os::raw::c_int;
7805}
7806extern "C" {
7807    pub fn zend_shutdown();
7808}
7809extern "C" {
7810    pub fn zend_register_standard_ini_entries();
7811}
7812extern "C" {
7813    pub fn zend_post_startup() -> ::std::os::raw::c_int;
7814}
7815extern "C" {
7816    pub fn zend_set_utility_values(utility_values: *mut zend_utility_values);
7817}
7818extern "C" {
7819    pub fn _zend_bailout(filename: *const ::std::os::raw::c_char, lineno: u32);
7820}
7821extern "C" {
7822    pub fn zend_vspprintf(
7823        pbuf: *mut *mut ::std::os::raw::c_char,
7824        max_len: size_t,
7825        format: *const ::std::os::raw::c_char,
7826        ap: *mut __va_list_tag,
7827    ) -> size_t;
7828}
7829extern "C" {
7830    pub fn zend_spprintf(
7831        message: *mut *mut ::std::os::raw::c_char,
7832        max_len: size_t,
7833        format: *const ::std::os::raw::c_char,
7834        ...
7835    ) -> size_t;
7836}
7837extern "C" {
7838    pub fn zend_vstrpprintf(
7839        max_len: size_t,
7840        format: *const ::std::os::raw::c_char,
7841        ap: *mut __va_list_tag,
7842    ) -> *mut zend_string;
7843}
7844extern "C" {
7845    pub fn zend_strpprintf(
7846        max_len: size_t,
7847        format: *const ::std::os::raw::c_char,
7848        ...
7849    ) -> *mut zend_string;
7850}
7851extern "C" {
7852    pub fn zend_spprintf_unchecked(
7853        message: *mut *mut ::std::os::raw::c_char,
7854        max_len: size_t,
7855        format: *const ::std::os::raw::c_char,
7856        ...
7857    ) -> size_t;
7858}
7859extern "C" {
7860    pub fn zend_strpprintf_unchecked(
7861        max_len: size_t,
7862        format: *const ::std::os::raw::c_char,
7863        ...
7864    ) -> *mut zend_string;
7865}
7866extern "C" {
7867    pub fn zend_make_printable_zval(expr: *mut zval, expr_copy: *mut zval)
7868        -> ::std::os::raw::c_int;
7869}
7870extern "C" {
7871    pub fn zend_print_zval(expr: *mut zval, indent: ::std::os::raw::c_int) -> size_t;
7872}
7873extern "C" {
7874    pub fn zend_print_zval_r(expr: *mut zval, indent: ::std::os::raw::c_int);
7875}
7876extern "C" {
7877    pub fn zend_print_zval_r_to_str(
7878        expr: *mut zval,
7879        indent: ::std::os::raw::c_int,
7880    ) -> *mut zend_string;
7881}
7882extern "C" {
7883    pub fn zend_print_flat_zval_r(expr: *mut zval);
7884}
7885extern "C" {
7886    pub fn zend_output_debug_string(
7887        trigger_break: zend_bool,
7888        format: *const ::std::os::raw::c_char,
7889        ...
7890    );
7891}
7892extern "C" {
7893    pub fn zend_activate();
7894}
7895extern "C" {
7896    pub fn zend_deactivate();
7897}
7898extern "C" {
7899    pub fn zend_call_destructors();
7900}
7901extern "C" {
7902    pub fn zend_activate_modules();
7903}
7904extern "C" {
7905    pub fn zend_deactivate_modules();
7906}
7907extern "C" {
7908    pub fn zend_post_deactivate_modules();
7909}
7910extern "C" {
7911    pub static mut zend_printf: ::std::option::Option<
7912        unsafe extern "C" fn(format: *const ::std::os::raw::c_char, ...) -> size_t,
7913    >;
7914}
7915extern "C" {
7916    pub static mut zend_write: zend_write_func_t;
7917}
7918extern "C" {
7919    pub static mut zend_fopen: ::std::option::Option<
7920        unsafe extern "C" fn(
7921            filename: *const ::std::os::raw::c_char,
7922            opened_path: *mut *mut zend_string,
7923        ) -> *mut FILE,
7924    >;
7925}
7926extern "C" {
7927    pub static mut zend_ticks_function:
7928        ::std::option::Option<unsafe extern "C" fn(ticks: ::std::os::raw::c_int)>;
7929}
7930extern "C" {
7931    pub static mut zend_interrupt_function:
7932        ::std::option::Option<unsafe extern "C" fn(execute_data: *mut zend_execute_data)>;
7933}
7934extern "C" {
7935    pub static mut zend_error_cb: ::std::option::Option<
7936        unsafe extern "C" fn(
7937            type_: ::std::os::raw::c_int,
7938            error_filename: *const ::std::os::raw::c_char,
7939            error_lineno: u32,
7940            format: *const ::std::os::raw::c_char,
7941            args: *mut __va_list_tag,
7942        ),
7943    >;
7944}
7945extern "C" {
7946    pub static mut zend_on_timeout:
7947        ::std::option::Option<unsafe extern "C" fn(seconds: ::std::os::raw::c_int)>;
7948}
7949extern "C" {
7950    pub static mut zend_stream_open_function: ::std::option::Option<
7951        unsafe extern "C" fn(
7952            filename: *const ::std::os::raw::c_char,
7953            handle: *mut zend_file_handle,
7954        ) -> ::std::os::raw::c_int,
7955    >;
7956}
7957extern "C" {
7958    pub static mut zend_printf_to_smart_string: ::std::option::Option<
7959        unsafe extern "C" fn(
7960            buf: *mut smart_string,
7961            format: *const ::std::os::raw::c_char,
7962            ap: *mut __va_list_tag,
7963        ),
7964    >;
7965}
7966extern "C" {
7967    pub static mut zend_printf_to_smart_str: ::std::option::Option<
7968        unsafe extern "C" fn(
7969            buf: *mut smart_str,
7970            format: *const ::std::os::raw::c_char,
7971            ap: *mut __va_list_tag,
7972        ),
7973    >;
7974}
7975extern "C" {
7976    pub static mut zend_getenv: ::std::option::Option<
7977        unsafe extern "C" fn(
7978            name: *mut ::std::os::raw::c_char,
7979            name_len: size_t,
7980        ) -> *mut ::std::os::raw::c_char,
7981    >;
7982}
7983extern "C" {
7984    pub static mut zend_resolve_path: ::std::option::Option<
7985        unsafe extern "C" fn(
7986            filename: *const ::std::os::raw::c_char,
7987            filename_len: size_t,
7988        ) -> *mut zend_string,
7989    >;
7990}
7991extern "C" {
7992    pub static mut zend_post_startup_cb:
7993        ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_int>;
7994}
7995extern "C" {
7996    pub static mut zend_post_shutdown_cb: ::std::option::Option<unsafe extern "C" fn()>;
7997}
7998extern "C" {
7999    pub static mut zend_preload_autoload: ::std::option::Option<
8000        unsafe extern "C" fn(filename: *mut zend_string) -> ::std::os::raw::c_int,
8001    >;
8002}
8003extern "C" {
8004    pub fn zend_error(type_: ::std::os::raw::c_int, format: *const ::std::os::raw::c_char, ...);
8005}
8006extern "C" {
8007    pub fn zend_error_noreturn(
8008        type_: ::std::os::raw::c_int,
8009        format: *const ::std::os::raw::c_char,
8010        ...
8011    );
8012}
8013extern "C" {
8014    pub fn zend_error_at(
8015        type_: ::std::os::raw::c_int,
8016        filename: *const ::std::os::raw::c_char,
8017        lineno: u32,
8018        format: *const ::std::os::raw::c_char,
8019        ...
8020    );
8021}
8022extern "C" {
8023    pub fn zend_error_at_noreturn(
8024        type_: ::std::os::raw::c_int,
8025        filename: *const ::std::os::raw::c_char,
8026        lineno: u32,
8027        format: *const ::std::os::raw::c_char,
8028        ...
8029    );
8030}
8031extern "C" {
8032    pub fn zend_throw_error(
8033        exception_ce: *mut zend_class_entry,
8034        format: *const ::std::os::raw::c_char,
8035        ...
8036    );
8037}
8038extern "C" {
8039    pub fn zend_type_error(format: *const ::std::os::raw::c_char, ...);
8040}
8041extern "C" {
8042    pub fn zend_internal_type_error(
8043        throw_exception: zend_bool,
8044        format: *const ::std::os::raw::c_char,
8045        ...
8046    );
8047}
8048extern "C" {
8049    pub fn zend_internal_argument_count_error(
8050        throw_exception: zend_bool,
8051        format: *const ::std::os::raw::c_char,
8052        ...
8053    );
8054}
8055extern "C" {
8056    pub fn zenderror(error: *const ::std::os::raw::c_char);
8057}
8058extern "C" {
8059    pub static mut zend_standard_class_def: *mut zend_class_entry;
8060}
8061extern "C" {
8062    pub static mut zend_uv: zend_utility_values;
8063}
8064extern "C" {
8065    pub static mut zend_dtrace_enabled: zend_bool;
8066}
8067extern "C" {
8068    pub fn zend_message_dispatcher(message: zend_long, data: *const ::std::os::raw::c_void);
8069}
8070extern "C" {
8071    pub fn zend_get_configuration_directive(name: *mut zend_string) -> *mut zval;
8072}
8073pub const zend_error_handling_t_EH_NORMAL: zend_error_handling_t = 0;
8074pub const zend_error_handling_t_EH_THROW: zend_error_handling_t = 1;
8075pub type zend_error_handling_t = ::std::os::raw::c_uint;
8076#[repr(C)]
8077#[derive(Copy, Clone)]
8078pub struct zend_error_handling {
8079    pub handling: zend_error_handling_t,
8080    pub exception: *mut zend_class_entry,
8081    pub user_handler: zval,
8082}
8083#[test]
8084fn bindgen_test_layout_zend_error_handling() {
8085    assert_eq!(
8086        ::std::mem::size_of::<zend_error_handling>(),
8087        32usize,
8088        concat!("Size of: ", stringify!(zend_error_handling))
8089    );
8090    assert_eq!(
8091        ::std::mem::align_of::<zend_error_handling>(),
8092        8usize,
8093        concat!("Alignment of ", stringify!(zend_error_handling))
8094    );
8095    assert_eq!(
8096        unsafe { &(*(::std::ptr::null::<zend_error_handling>())).handling as *const _ as usize },
8097        0usize,
8098        concat!(
8099            "Offset of field: ",
8100            stringify!(zend_error_handling),
8101            "::",
8102            stringify!(handling)
8103        )
8104    );
8105    assert_eq!(
8106        unsafe { &(*(::std::ptr::null::<zend_error_handling>())).exception as *const _ as usize },
8107        8usize,
8108        concat!(
8109            "Offset of field: ",
8110            stringify!(zend_error_handling),
8111            "::",
8112            stringify!(exception)
8113        )
8114    );
8115    assert_eq!(
8116        unsafe {
8117            &(*(::std::ptr::null::<zend_error_handling>())).user_handler as *const _ as usize
8118        },
8119        16usize,
8120        concat!(
8121            "Offset of field: ",
8122            stringify!(zend_error_handling),
8123            "::",
8124            stringify!(user_handler)
8125        )
8126    );
8127}
8128extern "C" {
8129    pub fn zend_save_error_handling(current: *mut zend_error_handling);
8130}
8131extern "C" {
8132    pub fn zend_replace_error_handling(
8133        error_handling: zend_error_handling_t,
8134        exception_class: *mut zend_class_entry,
8135        current: *mut zend_error_handling,
8136    );
8137}
8138extern "C" {
8139    pub fn zend_restore_error_handling(saved: *mut zend_error_handling);
8140}
8141pub type zend_object_read_property_t = ::std::option::Option<
8142    unsafe extern "C" fn(
8143        object: *mut zval,
8144        member: *mut zval,
8145        type_: ::std::os::raw::c_int,
8146        cache_slot: *mut *mut ::std::os::raw::c_void,
8147        rv: *mut zval,
8148    ) -> *mut zval,
8149>;
8150pub type zend_object_read_dimension_t = ::std::option::Option<
8151    unsafe extern "C" fn(
8152        object: *mut zval,
8153        offset: *mut zval,
8154        type_: ::std::os::raw::c_int,
8155        rv: *mut zval,
8156    ) -> *mut zval,
8157>;
8158pub type zend_object_write_property_t = ::std::option::Option<
8159    unsafe extern "C" fn(
8160        object: *mut zval,
8161        member: *mut zval,
8162        value: *mut zval,
8163        cache_slot: *mut *mut ::std::os::raw::c_void,
8164    ) -> *mut zval,
8165>;
8166pub type zend_object_write_dimension_t = ::std::option::Option<
8167    unsafe extern "C" fn(object: *mut zval, offset: *mut zval, value: *mut zval),
8168>;
8169pub type zend_object_get_property_ptr_ptr_t = ::std::option::Option<
8170    unsafe extern "C" fn(
8171        object: *mut zval,
8172        member: *mut zval,
8173        type_: ::std::os::raw::c_int,
8174        cache_slot: *mut *mut ::std::os::raw::c_void,
8175    ) -> *mut zval,
8176>;
8177pub type zend_object_set_t =
8178    ::std::option::Option<unsafe extern "C" fn(object: *mut zval, value: *mut zval)>;
8179pub type zend_object_get_t =
8180    ::std::option::Option<unsafe extern "C" fn(object: *mut zval, rv: *mut zval) -> *mut zval>;
8181pub type zend_object_has_property_t = ::std::option::Option<
8182    unsafe extern "C" fn(
8183        object: *mut zval,
8184        member: *mut zval,
8185        has_set_exists: ::std::os::raw::c_int,
8186        cache_slot: *mut *mut ::std::os::raw::c_void,
8187    ) -> ::std::os::raw::c_int,
8188>;
8189pub type zend_object_has_dimension_t = ::std::option::Option<
8190    unsafe extern "C" fn(
8191        object: *mut zval,
8192        member: *mut zval,
8193        check_empty: ::std::os::raw::c_int,
8194    ) -> ::std::os::raw::c_int,
8195>;
8196pub type zend_object_unset_property_t = ::std::option::Option<
8197    unsafe extern "C" fn(
8198        object: *mut zval,
8199        member: *mut zval,
8200        cache_slot: *mut *mut ::std::os::raw::c_void,
8201    ),
8202>;
8203pub type zend_object_unset_dimension_t =
8204    ::std::option::Option<unsafe extern "C" fn(object: *mut zval, offset: *mut zval)>;
8205pub type zend_object_get_properties_t =
8206    ::std::option::Option<unsafe extern "C" fn(object: *mut zval) -> *mut HashTable>;
8207pub type zend_object_get_debug_info_t = ::std::option::Option<
8208    unsafe extern "C" fn(object: *mut zval, is_temp: *mut ::std::os::raw::c_int) -> *mut HashTable,
8209>;
8210pub const _zend_prop_purpose_ZEND_PROP_PURPOSE_DEBUG: _zend_prop_purpose = 0;
8211pub const _zend_prop_purpose_ZEND_PROP_PURPOSE_ARRAY_CAST: _zend_prop_purpose = 1;
8212pub const _zend_prop_purpose_ZEND_PROP_PURPOSE_SERIALIZE: _zend_prop_purpose = 2;
8213pub const _zend_prop_purpose_ZEND_PROP_PURPOSE_VAR_EXPORT: _zend_prop_purpose = 3;
8214pub const _zend_prop_purpose_ZEND_PROP_PURPOSE_JSON: _zend_prop_purpose = 4;
8215pub const _zend_prop_purpose__ZEND_PROP_PURPOSE_ARRAY_KEY_EXISTS: _zend_prop_purpose = 5;
8216pub const _zend_prop_purpose__ZEND_PROP_PURPOSE_NON_EXHAUSTIVE_ENUM: _zend_prop_purpose = 6;
8217pub type _zend_prop_purpose = ::std::os::raw::c_uint;
8218pub use self::_zend_prop_purpose as zend_prop_purpose;
8219pub type zend_object_get_properties_for_t = ::std::option::Option<
8220    unsafe extern "C" fn(object: *mut zval, purpose: zend_prop_purpose) -> *mut zend_array,
8221>;
8222pub type zend_object_call_method_t = ::std::option::Option<
8223    unsafe extern "C" fn(
8224        method: *mut zend_string,
8225        object: *mut zend_object,
8226        execute_data: *mut zend_execute_data,
8227        return_value: *mut zval,
8228    ) -> ::std::os::raw::c_int,
8229>;
8230pub type zend_object_get_method_t = ::std::option::Option<
8231    unsafe extern "C" fn(
8232        object: *mut *mut zend_object,
8233        method: *mut zend_string,
8234        key: *const zval,
8235    ) -> *mut zend_function,
8236>;
8237pub type zend_object_get_constructor_t =
8238    ::std::option::Option<unsafe extern "C" fn(object: *mut zend_object) -> *mut zend_function>;
8239pub type zend_object_dtor_obj_t =
8240    ::std::option::Option<unsafe extern "C" fn(object: *mut zend_object)>;
8241pub type zend_object_free_obj_t =
8242    ::std::option::Option<unsafe extern "C" fn(object: *mut zend_object)>;
8243pub type zend_object_clone_obj_t =
8244    ::std::option::Option<unsafe extern "C" fn(object: *mut zval) -> *mut zend_object>;
8245pub type zend_object_get_class_name_t =
8246    ::std::option::Option<unsafe extern "C" fn(object: *const zend_object) -> *mut zend_string>;
8247pub type zend_object_compare_t = ::std::option::Option<
8248    unsafe extern "C" fn(object1: *mut zval, object2: *mut zval) -> ::std::os::raw::c_int,
8249>;
8250pub type zend_object_compare_zvals_t = ::std::option::Option<
8251    unsafe extern "C" fn(
8252        result: *mut zval,
8253        op1: *mut zval,
8254        op2: *mut zval,
8255    ) -> ::std::os::raw::c_int,
8256>;
8257pub type zend_object_cast_t = ::std::option::Option<
8258    unsafe extern "C" fn(
8259        readobj: *mut zval,
8260        retval: *mut zval,
8261        type_: ::std::os::raw::c_int,
8262    ) -> ::std::os::raw::c_int,
8263>;
8264pub type zend_object_count_elements_t = ::std::option::Option<
8265    unsafe extern "C" fn(object: *mut zval, count: *mut zend_long) -> ::std::os::raw::c_int,
8266>;
8267pub type zend_object_get_closure_t = ::std::option::Option<
8268    unsafe extern "C" fn(
8269        obj: *mut zval,
8270        ce_ptr: *mut *mut zend_class_entry,
8271        fptr_ptr: *mut *mut zend_function,
8272        obj_ptr: *mut *mut zend_object,
8273    ) -> ::std::os::raw::c_int,
8274>;
8275pub type zend_object_get_gc_t = ::std::option::Option<
8276    unsafe extern "C" fn(
8277        object: *mut zval,
8278        table: *mut *mut zval,
8279        n: *mut ::std::os::raw::c_int,
8280    ) -> *mut HashTable,
8281>;
8282pub type zend_object_do_operation_t = ::std::option::Option<
8283    unsafe extern "C" fn(
8284        opcode: zend_uchar,
8285        result: *mut zval,
8286        op1: *mut zval,
8287        op2: *mut zval,
8288    ) -> ::std::os::raw::c_int,
8289>;
8290#[repr(C)]
8291#[derive(Debug, Copy, Clone)]
8292pub struct _zend_object_handlers {
8293    pub offset: ::std::os::raw::c_int,
8294    pub free_obj: zend_object_free_obj_t,
8295    pub dtor_obj: zend_object_dtor_obj_t,
8296    pub clone_obj: zend_object_clone_obj_t,
8297    pub read_property: zend_object_read_property_t,
8298    pub write_property: zend_object_write_property_t,
8299    pub read_dimension: zend_object_read_dimension_t,
8300    pub write_dimension: zend_object_write_dimension_t,
8301    pub get_property_ptr_ptr: zend_object_get_property_ptr_ptr_t,
8302    pub get: zend_object_get_t,
8303    pub set: zend_object_set_t,
8304    pub has_property: zend_object_has_property_t,
8305    pub unset_property: zend_object_unset_property_t,
8306    pub has_dimension: zend_object_has_dimension_t,
8307    pub unset_dimension: zend_object_unset_dimension_t,
8308    pub get_properties: zend_object_get_properties_t,
8309    pub get_method: zend_object_get_method_t,
8310    pub call_method: zend_object_call_method_t,
8311    pub get_constructor: zend_object_get_constructor_t,
8312    pub get_class_name: zend_object_get_class_name_t,
8313    pub compare_objects: zend_object_compare_t,
8314    pub cast_object: zend_object_cast_t,
8315    pub count_elements: zend_object_count_elements_t,
8316    pub get_debug_info: zend_object_get_debug_info_t,
8317    pub get_closure: zend_object_get_closure_t,
8318    pub get_gc: zend_object_get_gc_t,
8319    pub do_operation: zend_object_do_operation_t,
8320    pub compare: zend_object_compare_zvals_t,
8321    pub get_properties_for: zend_object_get_properties_for_t,
8322}
8323#[test]
8324fn bindgen_test_layout__zend_object_handlers() {
8325    assert_eq!(
8326        ::std::mem::size_of::<_zend_object_handlers>(),
8327        232usize,
8328        concat!("Size of: ", stringify!(_zend_object_handlers))
8329    );
8330    assert_eq!(
8331        ::std::mem::align_of::<_zend_object_handlers>(),
8332        8usize,
8333        concat!("Alignment of ", stringify!(_zend_object_handlers))
8334    );
8335    assert_eq!(
8336        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).offset as *const _ as usize },
8337        0usize,
8338        concat!(
8339            "Offset of field: ",
8340            stringify!(_zend_object_handlers),
8341            "::",
8342            stringify!(offset)
8343        )
8344    );
8345    assert_eq!(
8346        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).free_obj as *const _ as usize },
8347        8usize,
8348        concat!(
8349            "Offset of field: ",
8350            stringify!(_zend_object_handlers),
8351            "::",
8352            stringify!(free_obj)
8353        )
8354    );
8355    assert_eq!(
8356        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).dtor_obj as *const _ as usize },
8357        16usize,
8358        concat!(
8359            "Offset of field: ",
8360            stringify!(_zend_object_handlers),
8361            "::",
8362            stringify!(dtor_obj)
8363        )
8364    );
8365    assert_eq!(
8366        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).clone_obj as *const _ as usize },
8367        24usize,
8368        concat!(
8369            "Offset of field: ",
8370            stringify!(_zend_object_handlers),
8371            "::",
8372            stringify!(clone_obj)
8373        )
8374    );
8375    assert_eq!(
8376        unsafe {
8377            &(*(::std::ptr::null::<_zend_object_handlers>())).read_property as *const _ as usize
8378        },
8379        32usize,
8380        concat!(
8381            "Offset of field: ",
8382            stringify!(_zend_object_handlers),
8383            "::",
8384            stringify!(read_property)
8385        )
8386    );
8387    assert_eq!(
8388        unsafe {
8389            &(*(::std::ptr::null::<_zend_object_handlers>())).write_property as *const _ as usize
8390        },
8391        40usize,
8392        concat!(
8393            "Offset of field: ",
8394            stringify!(_zend_object_handlers),
8395            "::",
8396            stringify!(write_property)
8397        )
8398    );
8399    assert_eq!(
8400        unsafe {
8401            &(*(::std::ptr::null::<_zend_object_handlers>())).read_dimension as *const _ as usize
8402        },
8403        48usize,
8404        concat!(
8405            "Offset of field: ",
8406            stringify!(_zend_object_handlers),
8407            "::",
8408            stringify!(read_dimension)
8409        )
8410    );
8411    assert_eq!(
8412        unsafe {
8413            &(*(::std::ptr::null::<_zend_object_handlers>())).write_dimension as *const _ as usize
8414        },
8415        56usize,
8416        concat!(
8417            "Offset of field: ",
8418            stringify!(_zend_object_handlers),
8419            "::",
8420            stringify!(write_dimension)
8421        )
8422    );
8423    assert_eq!(
8424        unsafe {
8425            &(*(::std::ptr::null::<_zend_object_handlers>())).get_property_ptr_ptr as *const _
8426                as usize
8427        },
8428        64usize,
8429        concat!(
8430            "Offset of field: ",
8431            stringify!(_zend_object_handlers),
8432            "::",
8433            stringify!(get_property_ptr_ptr)
8434        )
8435    );
8436    assert_eq!(
8437        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).get as *const _ as usize },
8438        72usize,
8439        concat!(
8440            "Offset of field: ",
8441            stringify!(_zend_object_handlers),
8442            "::",
8443            stringify!(get)
8444        )
8445    );
8446    assert_eq!(
8447        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).set as *const _ as usize },
8448        80usize,
8449        concat!(
8450            "Offset of field: ",
8451            stringify!(_zend_object_handlers),
8452            "::",
8453            stringify!(set)
8454        )
8455    );
8456    assert_eq!(
8457        unsafe {
8458            &(*(::std::ptr::null::<_zend_object_handlers>())).has_property as *const _ as usize
8459        },
8460        88usize,
8461        concat!(
8462            "Offset of field: ",
8463            stringify!(_zend_object_handlers),
8464            "::",
8465            stringify!(has_property)
8466        )
8467    );
8468    assert_eq!(
8469        unsafe {
8470            &(*(::std::ptr::null::<_zend_object_handlers>())).unset_property as *const _ as usize
8471        },
8472        96usize,
8473        concat!(
8474            "Offset of field: ",
8475            stringify!(_zend_object_handlers),
8476            "::",
8477            stringify!(unset_property)
8478        )
8479    );
8480    assert_eq!(
8481        unsafe {
8482            &(*(::std::ptr::null::<_zend_object_handlers>())).has_dimension as *const _ as usize
8483        },
8484        104usize,
8485        concat!(
8486            "Offset of field: ",
8487            stringify!(_zend_object_handlers),
8488            "::",
8489            stringify!(has_dimension)
8490        )
8491    );
8492    assert_eq!(
8493        unsafe {
8494            &(*(::std::ptr::null::<_zend_object_handlers>())).unset_dimension as *const _ as usize
8495        },
8496        112usize,
8497        concat!(
8498            "Offset of field: ",
8499            stringify!(_zend_object_handlers),
8500            "::",
8501            stringify!(unset_dimension)
8502        )
8503    );
8504    assert_eq!(
8505        unsafe {
8506            &(*(::std::ptr::null::<_zend_object_handlers>())).get_properties as *const _ as usize
8507        },
8508        120usize,
8509        concat!(
8510            "Offset of field: ",
8511            stringify!(_zend_object_handlers),
8512            "::",
8513            stringify!(get_properties)
8514        )
8515    );
8516    assert_eq!(
8517        unsafe {
8518            &(*(::std::ptr::null::<_zend_object_handlers>())).get_method as *const _ as usize
8519        },
8520        128usize,
8521        concat!(
8522            "Offset of field: ",
8523            stringify!(_zend_object_handlers),
8524            "::",
8525            stringify!(get_method)
8526        )
8527    );
8528    assert_eq!(
8529        unsafe {
8530            &(*(::std::ptr::null::<_zend_object_handlers>())).call_method as *const _ as usize
8531        },
8532        136usize,
8533        concat!(
8534            "Offset of field: ",
8535            stringify!(_zend_object_handlers),
8536            "::",
8537            stringify!(call_method)
8538        )
8539    );
8540    assert_eq!(
8541        unsafe {
8542            &(*(::std::ptr::null::<_zend_object_handlers>())).get_constructor as *const _ as usize
8543        },
8544        144usize,
8545        concat!(
8546            "Offset of field: ",
8547            stringify!(_zend_object_handlers),
8548            "::",
8549            stringify!(get_constructor)
8550        )
8551    );
8552    assert_eq!(
8553        unsafe {
8554            &(*(::std::ptr::null::<_zend_object_handlers>())).get_class_name as *const _ as usize
8555        },
8556        152usize,
8557        concat!(
8558            "Offset of field: ",
8559            stringify!(_zend_object_handlers),
8560            "::",
8561            stringify!(get_class_name)
8562        )
8563    );
8564    assert_eq!(
8565        unsafe {
8566            &(*(::std::ptr::null::<_zend_object_handlers>())).compare_objects as *const _ as usize
8567        },
8568        160usize,
8569        concat!(
8570            "Offset of field: ",
8571            stringify!(_zend_object_handlers),
8572            "::",
8573            stringify!(compare_objects)
8574        )
8575    );
8576    assert_eq!(
8577        unsafe {
8578            &(*(::std::ptr::null::<_zend_object_handlers>())).cast_object as *const _ as usize
8579        },
8580        168usize,
8581        concat!(
8582            "Offset of field: ",
8583            stringify!(_zend_object_handlers),
8584            "::",
8585            stringify!(cast_object)
8586        )
8587    );
8588    assert_eq!(
8589        unsafe {
8590            &(*(::std::ptr::null::<_zend_object_handlers>())).count_elements as *const _ as usize
8591        },
8592        176usize,
8593        concat!(
8594            "Offset of field: ",
8595            stringify!(_zend_object_handlers),
8596            "::",
8597            stringify!(count_elements)
8598        )
8599    );
8600    assert_eq!(
8601        unsafe {
8602            &(*(::std::ptr::null::<_zend_object_handlers>())).get_debug_info as *const _ as usize
8603        },
8604        184usize,
8605        concat!(
8606            "Offset of field: ",
8607            stringify!(_zend_object_handlers),
8608            "::",
8609            stringify!(get_debug_info)
8610        )
8611    );
8612    assert_eq!(
8613        unsafe {
8614            &(*(::std::ptr::null::<_zend_object_handlers>())).get_closure as *const _ as usize
8615        },
8616        192usize,
8617        concat!(
8618            "Offset of field: ",
8619            stringify!(_zend_object_handlers),
8620            "::",
8621            stringify!(get_closure)
8622        )
8623    );
8624    assert_eq!(
8625        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).get_gc as *const _ as usize },
8626        200usize,
8627        concat!(
8628            "Offset of field: ",
8629            stringify!(_zend_object_handlers),
8630            "::",
8631            stringify!(get_gc)
8632        )
8633    );
8634    assert_eq!(
8635        unsafe {
8636            &(*(::std::ptr::null::<_zend_object_handlers>())).do_operation as *const _ as usize
8637        },
8638        208usize,
8639        concat!(
8640            "Offset of field: ",
8641            stringify!(_zend_object_handlers),
8642            "::",
8643            stringify!(do_operation)
8644        )
8645    );
8646    assert_eq!(
8647        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).compare as *const _ as usize },
8648        216usize,
8649        concat!(
8650            "Offset of field: ",
8651            stringify!(_zend_object_handlers),
8652            "::",
8653            stringify!(compare)
8654        )
8655    );
8656    assert_eq!(
8657        unsafe {
8658            &(*(::std::ptr::null::<_zend_object_handlers>())).get_properties_for as *const _
8659                as usize
8660        },
8661        224usize,
8662        concat!(
8663            "Offset of field: ",
8664            stringify!(_zend_object_handlers),
8665            "::",
8666            stringify!(get_properties_for)
8667        )
8668    );
8669}
8670extern "C" {
8671    pub static std_object_handlers: zend_object_handlers;
8672}
8673extern "C" {
8674    pub fn zend_class_init_statics(ce: *mut zend_class_entry);
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_with_info(
8685        ce: *mut zend_class_entry,
8686        property_name: *mut zend_string,
8687        type_: ::std::os::raw::c_int,
8688        prop_info: *mut *mut _zend_property_info,
8689    ) -> *mut zval;
8690}
8691extern "C" {
8692    pub fn zend_std_get_static_property(
8693        ce: *mut zend_class_entry,
8694        property_name: *mut zend_string,
8695        type_: ::std::os::raw::c_int,
8696    ) -> *mut zval;
8697}
8698extern "C" {
8699    pub fn zend_std_unset_static_property(
8700        ce: *mut zend_class_entry,
8701        property_name: *mut zend_string,
8702    ) -> zend_bool;
8703}
8704extern "C" {
8705    pub fn zend_std_get_constructor(object: *mut zend_object) -> *mut zend_function;
8706}
8707extern "C" {
8708    pub fn zend_get_property_info(
8709        ce: *mut zend_class_entry,
8710        member: *mut zend_string,
8711        silent: ::std::os::raw::c_int,
8712    ) -> *mut _zend_property_info;
8713}
8714extern "C" {
8715    pub fn zend_std_get_properties(object: *mut zval) -> *mut HashTable;
8716}
8717extern "C" {
8718    pub fn zend_std_get_gc(
8719        object: *mut zval,
8720        table: *mut *mut zval,
8721        n: *mut ::std::os::raw::c_int,
8722    ) -> *mut HashTable;
8723}
8724extern "C" {
8725    pub fn zend_std_get_debug_info(
8726        object: *mut zval,
8727        is_temp: *mut ::std::os::raw::c_int,
8728    ) -> *mut HashTable;
8729}
8730extern "C" {
8731    pub fn zend_std_cast_object_tostring(
8732        readobj: *mut zval,
8733        writeobj: *mut zval,
8734        type_: ::std::os::raw::c_int,
8735    ) -> ::std::os::raw::c_int;
8736}
8737extern "C" {
8738    pub fn zend_std_get_property_ptr_ptr(
8739        object: *mut zval,
8740        member: *mut zval,
8741        type_: ::std::os::raw::c_int,
8742        cache_slot: *mut *mut ::std::os::raw::c_void,
8743    ) -> *mut zval;
8744}
8745extern "C" {
8746    pub fn zend_std_read_property(
8747        object: *mut zval,
8748        member: *mut zval,
8749        type_: ::std::os::raw::c_int,
8750        cache_slot: *mut *mut ::std::os::raw::c_void,
8751        rv: *mut zval,
8752    ) -> *mut zval;
8753}
8754extern "C" {
8755    pub fn zend_std_write_property(
8756        object: *mut zval,
8757        member: *mut zval,
8758        value: *mut zval,
8759        cache_slot: *mut *mut ::std::os::raw::c_void,
8760    ) -> *mut zval;
8761}
8762extern "C" {
8763    pub fn zend_std_has_property(
8764        object: *mut zval,
8765        member: *mut zval,
8766        has_set_exists: ::std::os::raw::c_int,
8767        cache_slot: *mut *mut ::std::os::raw::c_void,
8768    ) -> ::std::os::raw::c_int;
8769}
8770extern "C" {
8771    pub fn zend_std_unset_property(
8772        object: *mut zval,
8773        member: *mut zval,
8774        cache_slot: *mut *mut ::std::os::raw::c_void,
8775    );
8776}
8777extern "C" {
8778    pub fn zend_std_read_dimension(
8779        object: *mut zval,
8780        offset: *mut zval,
8781        type_: ::std::os::raw::c_int,
8782        rv: *mut zval,
8783    ) -> *mut zval;
8784}
8785extern "C" {
8786    pub fn zend_std_write_dimension(object: *mut zval, offset: *mut zval, value: *mut zval);
8787}
8788extern "C" {
8789    pub fn zend_std_has_dimension(
8790        object: *mut zval,
8791        offset: *mut zval,
8792        check_empty: ::std::os::raw::c_int,
8793    ) -> ::std::os::raw::c_int;
8794}
8795extern "C" {
8796    pub fn zend_std_unset_dimension(object: *mut zval, offset: *mut zval);
8797}
8798extern "C" {
8799    pub fn zend_std_get_method(
8800        obj_ptr: *mut *mut zend_object,
8801        method_name: *mut zend_string,
8802        key: *const zval,
8803    ) -> *mut zend_function;
8804}
8805extern "C" {
8806    pub fn zend_std_get_class_name(zobj: *const zend_object) -> *mut zend_string;
8807}
8808extern "C" {
8809    pub fn zend_std_compare_objects(o1: *mut zval, o2: *mut zval) -> ::std::os::raw::c_int;
8810}
8811extern "C" {
8812    pub fn zend_std_get_closure(
8813        obj: *mut zval,
8814        ce_ptr: *mut *mut zend_class_entry,
8815        fptr_ptr: *mut *mut zend_function,
8816        obj_ptr: *mut *mut zend_object,
8817    ) -> ::std::os::raw::c_int;
8818}
8819extern "C" {
8820    pub fn zend_check_protected(
8821        ce: *mut zend_class_entry,
8822        scope: *mut zend_class_entry,
8823    ) -> ::std::os::raw::c_int;
8824}
8825extern "C" {
8826    pub fn zend_check_property_access(
8827        zobj: *mut zend_object,
8828        prop_info_name: *mut zend_string,
8829        is_dynamic: zend_bool,
8830    ) -> ::std::os::raw::c_int;
8831}
8832extern "C" {
8833    pub fn zend_get_call_trampoline_func(
8834        ce: *mut zend_class_entry,
8835        method_name: *mut zend_string,
8836        is_static: ::std::os::raw::c_int,
8837    ) -> *mut zend_function;
8838}
8839extern "C" {
8840    pub fn zend_get_property_guard(zobj: *mut zend_object, member: *mut zend_string) -> *mut u32;
8841}
8842extern "C" {
8843    pub fn zend_std_get_properties_for(
8844        obj: *mut zval,
8845        purpose: zend_prop_purpose,
8846    ) -> *mut HashTable;
8847}
8848extern "C" {
8849    pub fn zend_get_properties_for(obj: *mut zval, purpose: zend_prop_purpose) -> *mut HashTable;
8850}
8851extern "C" {
8852    pub fn zend_freedtoa(s: *mut ::std::os::raw::c_char);
8853}
8854extern "C" {
8855    pub fn zend_dtoa(
8856        _d: f64,
8857        mode: ::std::os::raw::c_int,
8858        ndigits: ::std::os::raw::c_int,
8859        decpt: *mut ::std::os::raw::c_int,
8860        sign: *mut ::std::os::raw::c_int,
8861        rve: *mut *mut ::std::os::raw::c_char,
8862    ) -> *mut ::std::os::raw::c_char;
8863}
8864extern "C" {
8865    pub fn zend_strtod(
8866        s00: *const ::std::os::raw::c_char,
8867        se: *mut *const ::std::os::raw::c_char,
8868    ) -> f64;
8869}
8870extern "C" {
8871    pub fn zend_hex_strtod(
8872        str_: *const ::std::os::raw::c_char,
8873        endptr: *mut *const ::std::os::raw::c_char,
8874    ) -> f64;
8875}
8876extern "C" {
8877    pub fn zend_oct_strtod(
8878        str_: *const ::std::os::raw::c_char,
8879        endptr: *mut *const ::std::os::raw::c_char,
8880    ) -> f64;
8881}
8882extern "C" {
8883    pub fn zend_bin_strtod(
8884        str_: *const ::std::os::raw::c_char,
8885        endptr: *mut *const ::std::os::raw::c_char,
8886    ) -> f64;
8887}
8888extern "C" {
8889    pub fn zend_startup_strtod() -> ::std::os::raw::c_int;
8890}
8891extern "C" {
8892    pub fn zend_shutdown_strtod() -> ::std::os::raw::c_int;
8893}
8894extern "C" {
8895    pub fn zend_is_identical(op1: *mut zval, op2: *mut zval) -> zend_bool;
8896}
8897extern "C" {
8898    pub fn zend_memnstr_ex(
8899        haystack: *const ::std::os::raw::c_char,
8900        needle: *const ::std::os::raw::c_char,
8901        needle_len: size_t,
8902        end: *const ::std::os::raw::c_char,
8903    ) -> *const ::std::os::raw::c_char;
8904}
8905extern "C" {
8906    pub fn zend_memnrstr_ex(
8907        haystack: *const ::std::os::raw::c_char,
8908        needle: *const ::std::os::raw::c_char,
8909        needle_len: size_t,
8910        end: *const ::std::os::raw::c_char,
8911    ) -> *const ::std::os::raw::c_char;
8912}
8913extern "C" {
8914    pub fn zend_dval_to_lval_slow(d: f64) -> zend_long;
8915}
8916extern "C" {
8917    pub fn zend_is_true(op: *mut zval) -> ::std::os::raw::c_int;
8918}
8919extern "C" {
8920    pub fn zend_object_is_true(op: *mut zval) -> ::std::os::raw::c_int;
8921}
8922extern "C" {
8923    pub fn zend_str_tolower(str_: *mut ::std::os::raw::c_char, length: size_t);
8924}
8925extern "C" {
8926    pub fn zend_str_tolower_copy(
8927        dest: *mut ::std::os::raw::c_char,
8928        source: *const ::std::os::raw::c_char,
8929        length: size_t,
8930    ) -> *mut ::std::os::raw::c_char;
8931}
8932extern "C" {
8933    pub fn zend_str_tolower_dup(
8934        source: *const ::std::os::raw::c_char,
8935        length: size_t,
8936    ) -> *mut ::std::os::raw::c_char;
8937}
8938extern "C" {
8939    pub fn zend_str_tolower_dup_ex(
8940        source: *const ::std::os::raw::c_char,
8941        length: size_t,
8942    ) -> *mut ::std::os::raw::c_char;
8943}
8944extern "C" {
8945    pub fn zend_string_tolower_ex(
8946        str_: *mut zend_string,
8947        persistent: ::std::os::raw::c_int,
8948    ) -> *mut zend_string;
8949}
8950extern "C" {
8951    pub fn zend_binary_zval_strcmp(s1: *mut zval, s2: *mut zval) -> ::std::os::raw::c_int;
8952}
8953extern "C" {
8954    pub fn zend_binary_zval_strncmp(
8955        s1: *mut zval,
8956        s2: *mut zval,
8957        s3: *mut zval,
8958    ) -> ::std::os::raw::c_int;
8959}
8960extern "C" {
8961    pub fn zend_binary_zval_strcasecmp(s1: *mut zval, s2: *mut zval) -> ::std::os::raw::c_int;
8962}
8963extern "C" {
8964    pub fn zend_binary_zval_strncasecmp(
8965        s1: *mut zval,
8966        s2: *mut zval,
8967        s3: *mut zval,
8968    ) -> ::std::os::raw::c_int;
8969}
8970extern "C" {
8971    pub fn zend_binary_strcmp(
8972        s1: *const ::std::os::raw::c_char,
8973        len1: size_t,
8974        s2: *const ::std::os::raw::c_char,
8975        len2: size_t,
8976    ) -> ::std::os::raw::c_int;
8977}
8978extern "C" {
8979    pub fn zend_binary_strncmp(
8980        s1: *const ::std::os::raw::c_char,
8981        len1: size_t,
8982        s2: *const ::std::os::raw::c_char,
8983        len2: size_t,
8984        length: size_t,
8985    ) -> ::std::os::raw::c_int;
8986}
8987extern "C" {
8988    pub fn zend_binary_strcasecmp(
8989        s1: *const ::std::os::raw::c_char,
8990        len1: size_t,
8991        s2: *const ::std::os::raw::c_char,
8992        len2: size_t,
8993    ) -> ::std::os::raw::c_int;
8994}
8995extern "C" {
8996    pub fn zend_binary_strncasecmp(
8997        s1: *const ::std::os::raw::c_char,
8998        len1: size_t,
8999        s2: *const ::std::os::raw::c_char,
9000        len2: size_t,
9001        length: size_t,
9002    ) -> ::std::os::raw::c_int;
9003}
9004extern "C" {
9005    pub fn zend_binary_strcasecmp_l(
9006        s1: *const ::std::os::raw::c_char,
9007        len1: size_t,
9008        s2: *const ::std::os::raw::c_char,
9009        len2: size_t,
9010    ) -> ::std::os::raw::c_int;
9011}
9012extern "C" {
9013    pub fn zend_binary_strncasecmp_l(
9014        s1: *const ::std::os::raw::c_char,
9015        len1: size_t,
9016        s2: *const ::std::os::raw::c_char,
9017        len2: size_t,
9018        length: size_t,
9019    ) -> ::std::os::raw::c_int;
9020}
9021extern "C" {
9022    pub fn zendi_smart_streq(s1: *mut zend_string, s2: *mut zend_string) -> ::std::os::raw::c_int;
9023}
9024extern "C" {
9025    pub fn zendi_smart_strcmp(s1: *mut zend_string, s2: *mut zend_string) -> ::std::os::raw::c_int;
9026}
9027extern "C" {
9028    pub fn zend_compare_symbol_tables(
9029        ht1: *mut HashTable,
9030        ht2: *mut HashTable,
9031    ) -> ::std::os::raw::c_int;
9032}
9033extern "C" {
9034    pub fn zend_compare_arrays(a1: *mut zval, a2: *mut zval) -> ::std::os::raw::c_int;
9035}
9036extern "C" {
9037    pub fn zend_compare_objects(o1: *mut zval, o2: *mut zval) -> ::std::os::raw::c_int;
9038}
9039extern "C" {
9040    pub fn zend_atoi(str_: *const ::std::os::raw::c_char, str_len: size_t)
9041        -> ::std::os::raw::c_int;
9042}
9043extern "C" {
9044    pub fn zend_atol(str_: *const ::std::os::raw::c_char, str_len: size_t) -> zend_long;
9045}
9046extern "C" {
9047    pub fn zend_locale_sprintf_double(op: *mut zval);
9048}
9049extern "C" {
9050    pub fn zend_long_to_str(num: zend_long) -> *mut zend_string;
9051}
9052extern "C" {
9053    pub fn zend_qsort(
9054        base: *mut ::std::os::raw::c_void,
9055        nmemb: size_t,
9056        siz: size_t,
9057        cmp: compare_func_t,
9058        swp: swap_func_t,
9059    );
9060}
9061extern "C" {
9062    pub fn zend_sort(
9063        base: *mut ::std::os::raw::c_void,
9064        nmemb: size_t,
9065        siz: size_t,
9066        cmp: compare_func_t,
9067        swp: swap_func_t,
9068    );
9069}
9070extern "C" {
9071    pub fn zend_insert_sort(
9072        base: *mut ::std::os::raw::c_void,
9073        nmemb: size_t,
9074        siz: size_t,
9075        cmp: compare_func_t,
9076        swp: swap_func_t,
9077    );
9078}
9079pub type zend_op_array = _zend_op_array;
9080pub type zend_op = _zend_op;
9081#[repr(C)]
9082#[derive(Copy, Clone)]
9083pub union _znode_op {
9084    pub constant: u32,
9085    pub var: u32,
9086    pub num: u32,
9087    pub opline_num: u32,
9088    pub jmp_offset: u32,
9089    _bindgen_union_align: u32,
9090}
9091#[test]
9092fn bindgen_test_layout__znode_op() {
9093    assert_eq!(
9094        ::std::mem::size_of::<_znode_op>(),
9095        4usize,
9096        concat!("Size of: ", stringify!(_znode_op))
9097    );
9098    assert_eq!(
9099        ::std::mem::align_of::<_znode_op>(),
9100        4usize,
9101        concat!("Alignment of ", stringify!(_znode_op))
9102    );
9103    assert_eq!(
9104        unsafe { &(*(::std::ptr::null::<_znode_op>())).constant as *const _ as usize },
9105        0usize,
9106        concat!(
9107            "Offset of field: ",
9108            stringify!(_znode_op),
9109            "::",
9110            stringify!(constant)
9111        )
9112    );
9113    assert_eq!(
9114        unsafe { &(*(::std::ptr::null::<_znode_op>())).var as *const _ as usize },
9115        0usize,
9116        concat!(
9117            "Offset of field: ",
9118            stringify!(_znode_op),
9119            "::",
9120            stringify!(var)
9121        )
9122    );
9123    assert_eq!(
9124        unsafe { &(*(::std::ptr::null::<_znode_op>())).num as *const _ as usize },
9125        0usize,
9126        concat!(
9127            "Offset of field: ",
9128            stringify!(_znode_op),
9129            "::",
9130            stringify!(num)
9131        )
9132    );
9133    assert_eq!(
9134        unsafe { &(*(::std::ptr::null::<_znode_op>())).opline_num as *const _ as usize },
9135        0usize,
9136        concat!(
9137            "Offset of field: ",
9138            stringify!(_znode_op),
9139            "::",
9140            stringify!(opline_num)
9141        )
9142    );
9143    assert_eq!(
9144        unsafe { &(*(::std::ptr::null::<_znode_op>())).jmp_offset as *const _ as usize },
9145        0usize,
9146        concat!(
9147            "Offset of field: ",
9148            stringify!(_znode_op),
9149            "::",
9150            stringify!(jmp_offset)
9151        )
9152    );
9153}
9154pub type znode_op = _znode_op;
9155#[repr(C)]
9156#[derive(Copy, Clone)]
9157pub struct _znode {
9158    pub op_type: zend_uchar,
9159    pub flag: zend_uchar,
9160    pub u: _znode__bindgen_ty_1,
9161}
9162#[repr(C)]
9163#[derive(Copy, Clone)]
9164pub union _znode__bindgen_ty_1 {
9165    pub op: znode_op,
9166    pub constant: zval,
9167    _bindgen_union_align: [u64; 2usize],
9168}
9169#[test]
9170fn bindgen_test_layout__znode__bindgen_ty_1() {
9171    assert_eq!(
9172        ::std::mem::size_of::<_znode__bindgen_ty_1>(),
9173        16usize,
9174        concat!("Size of: ", stringify!(_znode__bindgen_ty_1))
9175    );
9176    assert_eq!(
9177        ::std::mem::align_of::<_znode__bindgen_ty_1>(),
9178        8usize,
9179        concat!("Alignment of ", stringify!(_znode__bindgen_ty_1))
9180    );
9181    assert_eq!(
9182        unsafe { &(*(::std::ptr::null::<_znode__bindgen_ty_1>())).op as *const _ as usize },
9183        0usize,
9184        concat!(
9185            "Offset of field: ",
9186            stringify!(_znode__bindgen_ty_1),
9187            "::",
9188            stringify!(op)
9189        )
9190    );
9191    assert_eq!(
9192        unsafe { &(*(::std::ptr::null::<_znode__bindgen_ty_1>())).constant as *const _ as usize },
9193        0usize,
9194        concat!(
9195            "Offset of field: ",
9196            stringify!(_znode__bindgen_ty_1),
9197            "::",
9198            stringify!(constant)
9199        )
9200    );
9201}
9202#[test]
9203fn bindgen_test_layout__znode() {
9204    assert_eq!(
9205        ::std::mem::size_of::<_znode>(),
9206        24usize,
9207        concat!("Size of: ", stringify!(_znode))
9208    );
9209    assert_eq!(
9210        ::std::mem::align_of::<_znode>(),
9211        8usize,
9212        concat!("Alignment of ", stringify!(_znode))
9213    );
9214    assert_eq!(
9215        unsafe { &(*(::std::ptr::null::<_znode>())).op_type as *const _ as usize },
9216        0usize,
9217        concat!(
9218            "Offset of field: ",
9219            stringify!(_znode),
9220            "::",
9221            stringify!(op_type)
9222        )
9223    );
9224    assert_eq!(
9225        unsafe { &(*(::std::ptr::null::<_znode>())).flag as *const _ as usize },
9226        1usize,
9227        concat!(
9228            "Offset of field: ",
9229            stringify!(_znode),
9230            "::",
9231            stringify!(flag)
9232        )
9233    );
9234    assert_eq!(
9235        unsafe { &(*(::std::ptr::null::<_znode>())).u as *const _ as usize },
9236        8usize,
9237        concat!("Offset of field: ", stringify!(_znode), "::", stringify!(u))
9238    );
9239}
9240pub type znode = _znode;
9241#[repr(C)]
9242#[derive(Copy, Clone)]
9243pub struct _zend_ast_znode {
9244    pub kind: zend_ast_kind,
9245    pub attr: zend_ast_attr,
9246    pub lineno: u32,
9247    pub node: znode,
9248}
9249#[test]
9250fn bindgen_test_layout__zend_ast_znode() {
9251    assert_eq!(
9252        ::std::mem::size_of::<_zend_ast_znode>(),
9253        32usize,
9254        concat!("Size of: ", stringify!(_zend_ast_znode))
9255    );
9256    assert_eq!(
9257        ::std::mem::align_of::<_zend_ast_znode>(),
9258        8usize,
9259        concat!("Alignment of ", stringify!(_zend_ast_znode))
9260    );
9261    assert_eq!(
9262        unsafe { &(*(::std::ptr::null::<_zend_ast_znode>())).kind as *const _ as usize },
9263        0usize,
9264        concat!(
9265            "Offset of field: ",
9266            stringify!(_zend_ast_znode),
9267            "::",
9268            stringify!(kind)
9269        )
9270    );
9271    assert_eq!(
9272        unsafe { &(*(::std::ptr::null::<_zend_ast_znode>())).attr as *const _ as usize },
9273        2usize,
9274        concat!(
9275            "Offset of field: ",
9276            stringify!(_zend_ast_znode),
9277            "::",
9278            stringify!(attr)
9279        )
9280    );
9281    assert_eq!(
9282        unsafe { &(*(::std::ptr::null::<_zend_ast_znode>())).lineno as *const _ as usize },
9283        4usize,
9284        concat!(
9285            "Offset of field: ",
9286            stringify!(_zend_ast_znode),
9287            "::",
9288            stringify!(lineno)
9289        )
9290    );
9291    assert_eq!(
9292        unsafe { &(*(::std::ptr::null::<_zend_ast_znode>())).node as *const _ as usize },
9293        8usize,
9294        concat!(
9295            "Offset of field: ",
9296            stringify!(_zend_ast_znode),
9297            "::",
9298            stringify!(node)
9299        )
9300    );
9301}
9302pub type zend_ast_znode = _zend_ast_znode;
9303extern "C" {
9304    pub fn zend_ast_create_znode(node: *mut znode) -> *mut zend_ast;
9305}
9306#[repr(C)]
9307#[derive(Debug, Copy, Clone)]
9308pub struct _zend_declarables {
9309    pub ticks: zend_long,
9310}
9311#[test]
9312fn bindgen_test_layout__zend_declarables() {
9313    assert_eq!(
9314        ::std::mem::size_of::<_zend_declarables>(),
9315        8usize,
9316        concat!("Size of: ", stringify!(_zend_declarables))
9317    );
9318    assert_eq!(
9319        ::std::mem::align_of::<_zend_declarables>(),
9320        8usize,
9321        concat!("Alignment of ", stringify!(_zend_declarables))
9322    );
9323    assert_eq!(
9324        unsafe { &(*(::std::ptr::null::<_zend_declarables>())).ticks as *const _ as usize },
9325        0usize,
9326        concat!(
9327            "Offset of field: ",
9328            stringify!(_zend_declarables),
9329            "::",
9330            stringify!(ticks)
9331        )
9332    );
9333}
9334pub type zend_declarables = _zend_declarables;
9335#[repr(C)]
9336#[derive(Copy, Clone)]
9337pub struct _zend_file_context {
9338    pub declarables: zend_declarables,
9339    pub current_namespace: *mut zend_string,
9340    pub in_namespace: zend_bool,
9341    pub has_bracketed_namespaces: zend_bool,
9342    pub imports: *mut HashTable,
9343    pub imports_function: *mut HashTable,
9344    pub imports_const: *mut HashTable,
9345    pub seen_symbols: HashTable,
9346}
9347#[test]
9348fn bindgen_test_layout__zend_file_context() {
9349    assert_eq!(
9350        ::std::mem::size_of::<_zend_file_context>(),
9351        104usize,
9352        concat!("Size of: ", stringify!(_zend_file_context))
9353    );
9354    assert_eq!(
9355        ::std::mem::align_of::<_zend_file_context>(),
9356        8usize,
9357        concat!("Alignment of ", stringify!(_zend_file_context))
9358    );
9359    assert_eq!(
9360        unsafe { &(*(::std::ptr::null::<_zend_file_context>())).declarables as *const _ as usize },
9361        0usize,
9362        concat!(
9363            "Offset of field: ",
9364            stringify!(_zend_file_context),
9365            "::",
9366            stringify!(declarables)
9367        )
9368    );
9369    assert_eq!(
9370        unsafe {
9371            &(*(::std::ptr::null::<_zend_file_context>())).current_namespace as *const _ as usize
9372        },
9373        8usize,
9374        concat!(
9375            "Offset of field: ",
9376            stringify!(_zend_file_context),
9377            "::",
9378            stringify!(current_namespace)
9379        )
9380    );
9381    assert_eq!(
9382        unsafe { &(*(::std::ptr::null::<_zend_file_context>())).in_namespace as *const _ as usize },
9383        16usize,
9384        concat!(
9385            "Offset of field: ",
9386            stringify!(_zend_file_context),
9387            "::",
9388            stringify!(in_namespace)
9389        )
9390    );
9391    assert_eq!(
9392        unsafe {
9393            &(*(::std::ptr::null::<_zend_file_context>())).has_bracketed_namespaces as *const _
9394                as usize
9395        },
9396        17usize,
9397        concat!(
9398            "Offset of field: ",
9399            stringify!(_zend_file_context),
9400            "::",
9401            stringify!(has_bracketed_namespaces)
9402        )
9403    );
9404    assert_eq!(
9405        unsafe { &(*(::std::ptr::null::<_zend_file_context>())).imports as *const _ as usize },
9406        24usize,
9407        concat!(
9408            "Offset of field: ",
9409            stringify!(_zend_file_context),
9410            "::",
9411            stringify!(imports)
9412        )
9413    );
9414    assert_eq!(
9415        unsafe {
9416            &(*(::std::ptr::null::<_zend_file_context>())).imports_function as *const _ as usize
9417        },
9418        32usize,
9419        concat!(
9420            "Offset of field: ",
9421            stringify!(_zend_file_context),
9422            "::",
9423            stringify!(imports_function)
9424        )
9425    );
9426    assert_eq!(
9427        unsafe {
9428            &(*(::std::ptr::null::<_zend_file_context>())).imports_const as *const _ as usize
9429        },
9430        40usize,
9431        concat!(
9432            "Offset of field: ",
9433            stringify!(_zend_file_context),
9434            "::",
9435            stringify!(imports_const)
9436        )
9437    );
9438    assert_eq!(
9439        unsafe { &(*(::std::ptr::null::<_zend_file_context>())).seen_symbols as *const _ as usize },
9440        48usize,
9441        concat!(
9442            "Offset of field: ",
9443            stringify!(_zend_file_context),
9444            "::",
9445            stringify!(seen_symbols)
9446        )
9447    );
9448}
9449pub type zend_file_context = _zend_file_context;
9450#[repr(C)]
9451#[derive(Copy, Clone)]
9452pub union _zend_parser_stack_elem {
9453    pub ast: *mut zend_ast,
9454    pub str_: *mut zend_string,
9455    pub num: zend_ulong,
9456    pub ptr: *mut ::std::os::raw::c_uchar,
9457    _bindgen_union_align: u64,
9458}
9459#[test]
9460fn bindgen_test_layout__zend_parser_stack_elem() {
9461    assert_eq!(
9462        ::std::mem::size_of::<_zend_parser_stack_elem>(),
9463        8usize,
9464        concat!("Size of: ", stringify!(_zend_parser_stack_elem))
9465    );
9466    assert_eq!(
9467        ::std::mem::align_of::<_zend_parser_stack_elem>(),
9468        8usize,
9469        concat!("Alignment of ", stringify!(_zend_parser_stack_elem))
9470    );
9471    assert_eq!(
9472        unsafe { &(*(::std::ptr::null::<_zend_parser_stack_elem>())).ast as *const _ as usize },
9473        0usize,
9474        concat!(
9475            "Offset of field: ",
9476            stringify!(_zend_parser_stack_elem),
9477            "::",
9478            stringify!(ast)
9479        )
9480    );
9481    assert_eq!(
9482        unsafe { &(*(::std::ptr::null::<_zend_parser_stack_elem>())).str_ as *const _ as usize },
9483        0usize,
9484        concat!(
9485            "Offset of field: ",
9486            stringify!(_zend_parser_stack_elem),
9487            "::",
9488            stringify!(str_)
9489        )
9490    );
9491    assert_eq!(
9492        unsafe { &(*(::std::ptr::null::<_zend_parser_stack_elem>())).num as *const _ as usize },
9493        0usize,
9494        concat!(
9495            "Offset of field: ",
9496            stringify!(_zend_parser_stack_elem),
9497            "::",
9498            stringify!(num)
9499        )
9500    );
9501    assert_eq!(
9502        unsafe { &(*(::std::ptr::null::<_zend_parser_stack_elem>())).ptr as *const _ as usize },
9503        0usize,
9504        concat!(
9505            "Offset of field: ",
9506            stringify!(_zend_parser_stack_elem),
9507            "::",
9508            stringify!(ptr)
9509        )
9510    );
9511}
9512pub type zend_parser_stack_elem = _zend_parser_stack_elem;
9513extern "C" {
9514    pub fn zend_compile_top_stmt(ast: *mut zend_ast);
9515}
9516extern "C" {
9517    pub fn zend_compile_stmt(ast: *mut zend_ast);
9518}
9519extern "C" {
9520    pub fn zend_compile_expr(node: *mut znode, ast: *mut zend_ast);
9521}
9522extern "C" {
9523    pub fn zend_compile_var(
9524        node: *mut znode,
9525        ast: *mut zend_ast,
9526        type_: u32,
9527        by_ref: ::std::os::raw::c_int,
9528    ) -> *mut zend_op;
9529}
9530extern "C" {
9531    pub fn zend_eval_const_expr(ast_ptr: *mut *mut zend_ast);
9532}
9533extern "C" {
9534    pub fn zend_const_expr_to_zval(result: *mut zval, ast: *mut zend_ast);
9535}
9536pub type user_opcode_handler_t = ::std::option::Option<
9537    unsafe extern "C" fn(execute_data: *mut zend_execute_data) -> ::std::os::raw::c_int,
9538>;
9539#[repr(C)]
9540#[derive(Copy, Clone)]
9541pub struct _zend_op {
9542    pub handler: *const ::std::os::raw::c_void,
9543    pub op1: znode_op,
9544    pub op2: znode_op,
9545    pub result: znode_op,
9546    pub extended_value: u32,
9547    pub lineno: u32,
9548    pub opcode: zend_uchar,
9549    pub op1_type: zend_uchar,
9550    pub op2_type: zend_uchar,
9551    pub result_type: zend_uchar,
9552}
9553#[test]
9554fn bindgen_test_layout__zend_op() {
9555    assert_eq!(
9556        ::std::mem::size_of::<_zend_op>(),
9557        32usize,
9558        concat!("Size of: ", stringify!(_zend_op))
9559    );
9560    assert_eq!(
9561        ::std::mem::align_of::<_zend_op>(),
9562        8usize,
9563        concat!("Alignment of ", stringify!(_zend_op))
9564    );
9565    assert_eq!(
9566        unsafe { &(*(::std::ptr::null::<_zend_op>())).handler as *const _ as usize },
9567        0usize,
9568        concat!(
9569            "Offset of field: ",
9570            stringify!(_zend_op),
9571            "::",
9572            stringify!(handler)
9573        )
9574    );
9575    assert_eq!(
9576        unsafe { &(*(::std::ptr::null::<_zend_op>())).op1 as *const _ as usize },
9577        8usize,
9578        concat!(
9579            "Offset of field: ",
9580            stringify!(_zend_op),
9581            "::",
9582            stringify!(op1)
9583        )
9584    );
9585    assert_eq!(
9586        unsafe { &(*(::std::ptr::null::<_zend_op>())).op2 as *const _ as usize },
9587        12usize,
9588        concat!(
9589            "Offset of field: ",
9590            stringify!(_zend_op),
9591            "::",
9592            stringify!(op2)
9593        )
9594    );
9595    assert_eq!(
9596        unsafe { &(*(::std::ptr::null::<_zend_op>())).result as *const _ as usize },
9597        16usize,
9598        concat!(
9599            "Offset of field: ",
9600            stringify!(_zend_op),
9601            "::",
9602            stringify!(result)
9603        )
9604    );
9605    assert_eq!(
9606        unsafe { &(*(::std::ptr::null::<_zend_op>())).extended_value as *const _ as usize },
9607        20usize,
9608        concat!(
9609            "Offset of field: ",
9610            stringify!(_zend_op),
9611            "::",
9612            stringify!(extended_value)
9613        )
9614    );
9615    assert_eq!(
9616        unsafe { &(*(::std::ptr::null::<_zend_op>())).lineno as *const _ as usize },
9617        24usize,
9618        concat!(
9619            "Offset of field: ",
9620            stringify!(_zend_op),
9621            "::",
9622            stringify!(lineno)
9623        )
9624    );
9625    assert_eq!(
9626        unsafe { &(*(::std::ptr::null::<_zend_op>())).opcode as *const _ as usize },
9627        28usize,
9628        concat!(
9629            "Offset of field: ",
9630            stringify!(_zend_op),
9631            "::",
9632            stringify!(opcode)
9633        )
9634    );
9635    assert_eq!(
9636        unsafe { &(*(::std::ptr::null::<_zend_op>())).op1_type as *const _ as usize },
9637        29usize,
9638        concat!(
9639            "Offset of field: ",
9640            stringify!(_zend_op),
9641            "::",
9642            stringify!(op1_type)
9643        )
9644    );
9645    assert_eq!(
9646        unsafe { &(*(::std::ptr::null::<_zend_op>())).op2_type as *const _ as usize },
9647        30usize,
9648        concat!(
9649            "Offset of field: ",
9650            stringify!(_zend_op),
9651            "::",
9652            stringify!(op2_type)
9653        )
9654    );
9655    assert_eq!(
9656        unsafe { &(*(::std::ptr::null::<_zend_op>())).result_type as *const _ as usize },
9657        31usize,
9658        concat!(
9659            "Offset of field: ",
9660            stringify!(_zend_op),
9661            "::",
9662            stringify!(result_type)
9663        )
9664    );
9665}
9666#[repr(C)]
9667#[derive(Debug, Copy, Clone)]
9668pub struct _zend_brk_cont_element {
9669    pub start: ::std::os::raw::c_int,
9670    pub cont: ::std::os::raw::c_int,
9671    pub brk: ::std::os::raw::c_int,
9672    pub parent: ::std::os::raw::c_int,
9673    pub is_switch: zend_bool,
9674}
9675#[test]
9676fn bindgen_test_layout__zend_brk_cont_element() {
9677    assert_eq!(
9678        ::std::mem::size_of::<_zend_brk_cont_element>(),
9679        20usize,
9680        concat!("Size of: ", stringify!(_zend_brk_cont_element))
9681    );
9682    assert_eq!(
9683        ::std::mem::align_of::<_zend_brk_cont_element>(),
9684        4usize,
9685        concat!("Alignment of ", stringify!(_zend_brk_cont_element))
9686    );
9687    assert_eq!(
9688        unsafe { &(*(::std::ptr::null::<_zend_brk_cont_element>())).start as *const _ as usize },
9689        0usize,
9690        concat!(
9691            "Offset of field: ",
9692            stringify!(_zend_brk_cont_element),
9693            "::",
9694            stringify!(start)
9695        )
9696    );
9697    assert_eq!(
9698        unsafe { &(*(::std::ptr::null::<_zend_brk_cont_element>())).cont as *const _ as usize },
9699        4usize,
9700        concat!(
9701            "Offset of field: ",
9702            stringify!(_zend_brk_cont_element),
9703            "::",
9704            stringify!(cont)
9705        )
9706    );
9707    assert_eq!(
9708        unsafe { &(*(::std::ptr::null::<_zend_brk_cont_element>())).brk as *const _ as usize },
9709        8usize,
9710        concat!(
9711            "Offset of field: ",
9712            stringify!(_zend_brk_cont_element),
9713            "::",
9714            stringify!(brk)
9715        )
9716    );
9717    assert_eq!(
9718        unsafe { &(*(::std::ptr::null::<_zend_brk_cont_element>())).parent as *const _ as usize },
9719        12usize,
9720        concat!(
9721            "Offset of field: ",
9722            stringify!(_zend_brk_cont_element),
9723            "::",
9724            stringify!(parent)
9725        )
9726    );
9727    assert_eq!(
9728        unsafe {
9729            &(*(::std::ptr::null::<_zend_brk_cont_element>())).is_switch as *const _ as usize
9730        },
9731        16usize,
9732        concat!(
9733            "Offset of field: ",
9734            stringify!(_zend_brk_cont_element),
9735            "::",
9736            stringify!(is_switch)
9737        )
9738    );
9739}
9740pub type zend_brk_cont_element = _zend_brk_cont_element;
9741#[repr(C)]
9742#[derive(Debug, Copy, Clone)]
9743pub struct _zend_label {
9744    pub brk_cont: ::std::os::raw::c_int,
9745    pub opline_num: u32,
9746}
9747#[test]
9748fn bindgen_test_layout__zend_label() {
9749    assert_eq!(
9750        ::std::mem::size_of::<_zend_label>(),
9751        8usize,
9752        concat!("Size of: ", stringify!(_zend_label))
9753    );
9754    assert_eq!(
9755        ::std::mem::align_of::<_zend_label>(),
9756        4usize,
9757        concat!("Alignment of ", stringify!(_zend_label))
9758    );
9759    assert_eq!(
9760        unsafe { &(*(::std::ptr::null::<_zend_label>())).brk_cont as *const _ as usize },
9761        0usize,
9762        concat!(
9763            "Offset of field: ",
9764            stringify!(_zend_label),
9765            "::",
9766            stringify!(brk_cont)
9767        )
9768    );
9769    assert_eq!(
9770        unsafe { &(*(::std::ptr::null::<_zend_label>())).opline_num as *const _ as usize },
9771        4usize,
9772        concat!(
9773            "Offset of field: ",
9774            stringify!(_zend_label),
9775            "::",
9776            stringify!(opline_num)
9777        )
9778    );
9779}
9780pub type zend_label = _zend_label;
9781#[repr(C)]
9782#[derive(Debug, Copy, Clone)]
9783pub struct _zend_try_catch_element {
9784    pub try_op: u32,
9785    pub catch_op: u32,
9786    pub finally_op: u32,
9787    pub finally_end: u32,
9788}
9789#[test]
9790fn bindgen_test_layout__zend_try_catch_element() {
9791    assert_eq!(
9792        ::std::mem::size_of::<_zend_try_catch_element>(),
9793        16usize,
9794        concat!("Size of: ", stringify!(_zend_try_catch_element))
9795    );
9796    assert_eq!(
9797        ::std::mem::align_of::<_zend_try_catch_element>(),
9798        4usize,
9799        concat!("Alignment of ", stringify!(_zend_try_catch_element))
9800    );
9801    assert_eq!(
9802        unsafe { &(*(::std::ptr::null::<_zend_try_catch_element>())).try_op as *const _ as usize },
9803        0usize,
9804        concat!(
9805            "Offset of field: ",
9806            stringify!(_zend_try_catch_element),
9807            "::",
9808            stringify!(try_op)
9809        )
9810    );
9811    assert_eq!(
9812        unsafe {
9813            &(*(::std::ptr::null::<_zend_try_catch_element>())).catch_op as *const _ as usize
9814        },
9815        4usize,
9816        concat!(
9817            "Offset of field: ",
9818            stringify!(_zend_try_catch_element),
9819            "::",
9820            stringify!(catch_op)
9821        )
9822    );
9823    assert_eq!(
9824        unsafe {
9825            &(*(::std::ptr::null::<_zend_try_catch_element>())).finally_op as *const _ as usize
9826        },
9827        8usize,
9828        concat!(
9829            "Offset of field: ",
9830            stringify!(_zend_try_catch_element),
9831            "::",
9832            stringify!(finally_op)
9833        )
9834    );
9835    assert_eq!(
9836        unsafe {
9837            &(*(::std::ptr::null::<_zend_try_catch_element>())).finally_end as *const _ as usize
9838        },
9839        12usize,
9840        concat!(
9841            "Offset of field: ",
9842            stringify!(_zend_try_catch_element),
9843            "::",
9844            stringify!(finally_end)
9845        )
9846    );
9847}
9848pub type zend_try_catch_element = _zend_try_catch_element;
9849#[repr(C)]
9850#[derive(Debug, Copy, Clone)]
9851pub struct _zend_live_range {
9852    pub var: u32,
9853    pub start: u32,
9854    pub end: u32,
9855}
9856#[test]
9857fn bindgen_test_layout__zend_live_range() {
9858    assert_eq!(
9859        ::std::mem::size_of::<_zend_live_range>(),
9860        12usize,
9861        concat!("Size of: ", stringify!(_zend_live_range))
9862    );
9863    assert_eq!(
9864        ::std::mem::align_of::<_zend_live_range>(),
9865        4usize,
9866        concat!("Alignment of ", stringify!(_zend_live_range))
9867    );
9868    assert_eq!(
9869        unsafe { &(*(::std::ptr::null::<_zend_live_range>())).var as *const _ as usize },
9870        0usize,
9871        concat!(
9872            "Offset of field: ",
9873            stringify!(_zend_live_range),
9874            "::",
9875            stringify!(var)
9876        )
9877    );
9878    assert_eq!(
9879        unsafe { &(*(::std::ptr::null::<_zend_live_range>())).start as *const _ as usize },
9880        4usize,
9881        concat!(
9882            "Offset of field: ",
9883            stringify!(_zend_live_range),
9884            "::",
9885            stringify!(start)
9886        )
9887    );
9888    assert_eq!(
9889        unsafe { &(*(::std::ptr::null::<_zend_live_range>())).end as *const _ as usize },
9890        8usize,
9891        concat!(
9892            "Offset of field: ",
9893            stringify!(_zend_live_range),
9894            "::",
9895            stringify!(end)
9896        )
9897    );
9898}
9899pub type zend_live_range = _zend_live_range;
9900#[repr(C)]
9901#[derive(Debug, Copy, Clone)]
9902pub struct _zend_oparray_context {
9903    pub opcodes_size: u32,
9904    pub vars_size: ::std::os::raw::c_int,
9905    pub literals_size: ::std::os::raw::c_int,
9906    pub fast_call_var: u32,
9907    pub try_catch_offset: u32,
9908    pub current_brk_cont: ::std::os::raw::c_int,
9909    pub last_brk_cont: ::std::os::raw::c_int,
9910    pub brk_cont_array: *mut zend_brk_cont_element,
9911    pub labels: *mut HashTable,
9912}
9913#[test]
9914fn bindgen_test_layout__zend_oparray_context() {
9915    assert_eq!(
9916        ::std::mem::size_of::<_zend_oparray_context>(),
9917        48usize,
9918        concat!("Size of: ", stringify!(_zend_oparray_context))
9919    );
9920    assert_eq!(
9921        ::std::mem::align_of::<_zend_oparray_context>(),
9922        8usize,
9923        concat!("Alignment of ", stringify!(_zend_oparray_context))
9924    );
9925    assert_eq!(
9926        unsafe {
9927            &(*(::std::ptr::null::<_zend_oparray_context>())).opcodes_size as *const _ as usize
9928        },
9929        0usize,
9930        concat!(
9931            "Offset of field: ",
9932            stringify!(_zend_oparray_context),
9933            "::",
9934            stringify!(opcodes_size)
9935        )
9936    );
9937    assert_eq!(
9938        unsafe { &(*(::std::ptr::null::<_zend_oparray_context>())).vars_size as *const _ as usize },
9939        4usize,
9940        concat!(
9941            "Offset of field: ",
9942            stringify!(_zend_oparray_context),
9943            "::",
9944            stringify!(vars_size)
9945        )
9946    );
9947    assert_eq!(
9948        unsafe {
9949            &(*(::std::ptr::null::<_zend_oparray_context>())).literals_size as *const _ as usize
9950        },
9951        8usize,
9952        concat!(
9953            "Offset of field: ",
9954            stringify!(_zend_oparray_context),
9955            "::",
9956            stringify!(literals_size)
9957        )
9958    );
9959    assert_eq!(
9960        unsafe {
9961            &(*(::std::ptr::null::<_zend_oparray_context>())).fast_call_var as *const _ as usize
9962        },
9963        12usize,
9964        concat!(
9965            "Offset of field: ",
9966            stringify!(_zend_oparray_context),
9967            "::",
9968            stringify!(fast_call_var)
9969        )
9970    );
9971    assert_eq!(
9972        unsafe {
9973            &(*(::std::ptr::null::<_zend_oparray_context>())).try_catch_offset as *const _ as usize
9974        },
9975        16usize,
9976        concat!(
9977            "Offset of field: ",
9978            stringify!(_zend_oparray_context),
9979            "::",
9980            stringify!(try_catch_offset)
9981        )
9982    );
9983    assert_eq!(
9984        unsafe {
9985            &(*(::std::ptr::null::<_zend_oparray_context>())).current_brk_cont as *const _ as usize
9986        },
9987        20usize,
9988        concat!(
9989            "Offset of field: ",
9990            stringify!(_zend_oparray_context),
9991            "::",
9992            stringify!(current_brk_cont)
9993        )
9994    );
9995    assert_eq!(
9996        unsafe {
9997            &(*(::std::ptr::null::<_zend_oparray_context>())).last_brk_cont as *const _ as usize
9998        },
9999        24usize,
10000        concat!(
10001            "Offset of field: ",
10002            stringify!(_zend_oparray_context),
10003            "::",
10004            stringify!(last_brk_cont)
10005        )
10006    );
10007    assert_eq!(
10008        unsafe {
10009            &(*(::std::ptr::null::<_zend_oparray_context>())).brk_cont_array as *const _ as usize
10010        },
10011        32usize,
10012        concat!(
10013            "Offset of field: ",
10014            stringify!(_zend_oparray_context),
10015            "::",
10016            stringify!(brk_cont_array)
10017        )
10018    );
10019    assert_eq!(
10020        unsafe { &(*(::std::ptr::null::<_zend_oparray_context>())).labels as *const _ as usize },
10021        40usize,
10022        concat!(
10023            "Offset of field: ",
10024            stringify!(_zend_oparray_context),
10025            "::",
10026            stringify!(labels)
10027        )
10028    );
10029}
10030pub type zend_oparray_context = _zend_oparray_context;
10031extern "C" {
10032    pub fn zend_visibility_string(fn_flags: u32) -> *mut ::std::os::raw::c_char;
10033}
10034#[repr(C)]
10035#[derive(Debug, Copy, Clone)]
10036pub struct _zend_property_info {
10037    pub offset: u32,
10038    pub flags: u32,
10039    pub name: *mut zend_string,
10040    pub doc_comment: *mut zend_string,
10041    pub ce: *mut zend_class_entry,
10042    pub type_: zend_type,
10043}
10044#[test]
10045fn bindgen_test_layout__zend_property_info() {
10046    assert_eq!(
10047        ::std::mem::size_of::<_zend_property_info>(),
10048        40usize,
10049        concat!("Size of: ", stringify!(_zend_property_info))
10050    );
10051    assert_eq!(
10052        ::std::mem::align_of::<_zend_property_info>(),
10053        8usize,
10054        concat!("Alignment of ", stringify!(_zend_property_info))
10055    );
10056    assert_eq!(
10057        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).offset as *const _ as usize },
10058        0usize,
10059        concat!(
10060            "Offset of field: ",
10061            stringify!(_zend_property_info),
10062            "::",
10063            stringify!(offset)
10064        )
10065    );
10066    assert_eq!(
10067        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).flags as *const _ as usize },
10068        4usize,
10069        concat!(
10070            "Offset of field: ",
10071            stringify!(_zend_property_info),
10072            "::",
10073            stringify!(flags)
10074        )
10075    );
10076    assert_eq!(
10077        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).name as *const _ as usize },
10078        8usize,
10079        concat!(
10080            "Offset of field: ",
10081            stringify!(_zend_property_info),
10082            "::",
10083            stringify!(name)
10084        )
10085    );
10086    assert_eq!(
10087        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).doc_comment as *const _ as usize },
10088        16usize,
10089        concat!(
10090            "Offset of field: ",
10091            stringify!(_zend_property_info),
10092            "::",
10093            stringify!(doc_comment)
10094        )
10095    );
10096    assert_eq!(
10097        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).ce as *const _ as usize },
10098        24usize,
10099        concat!(
10100            "Offset of field: ",
10101            stringify!(_zend_property_info),
10102            "::",
10103            stringify!(ce)
10104        )
10105    );
10106    assert_eq!(
10107        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).type_ as *const _ as usize },
10108        32usize,
10109        concat!(
10110            "Offset of field: ",
10111            stringify!(_zend_property_info),
10112            "::",
10113            stringify!(type_)
10114        )
10115    );
10116}
10117pub type zend_property_info = _zend_property_info;
10118#[repr(C)]
10119#[derive(Copy, Clone)]
10120pub struct _zend_class_constant {
10121    pub value: zval,
10122    pub doc_comment: *mut zend_string,
10123    pub ce: *mut zend_class_entry,
10124}
10125#[test]
10126fn bindgen_test_layout__zend_class_constant() {
10127    assert_eq!(
10128        ::std::mem::size_of::<_zend_class_constant>(),
10129        32usize,
10130        concat!("Size of: ", stringify!(_zend_class_constant))
10131    );
10132    assert_eq!(
10133        ::std::mem::align_of::<_zend_class_constant>(),
10134        8usize,
10135        concat!("Alignment of ", stringify!(_zend_class_constant))
10136    );
10137    assert_eq!(
10138        unsafe { &(*(::std::ptr::null::<_zend_class_constant>())).value as *const _ as usize },
10139        0usize,
10140        concat!(
10141            "Offset of field: ",
10142            stringify!(_zend_class_constant),
10143            "::",
10144            stringify!(value)
10145        )
10146    );
10147    assert_eq!(
10148        unsafe {
10149            &(*(::std::ptr::null::<_zend_class_constant>())).doc_comment as *const _ as usize
10150        },
10151        16usize,
10152        concat!(
10153            "Offset of field: ",
10154            stringify!(_zend_class_constant),
10155            "::",
10156            stringify!(doc_comment)
10157        )
10158    );
10159    assert_eq!(
10160        unsafe { &(*(::std::ptr::null::<_zend_class_constant>())).ce as *const _ as usize },
10161        24usize,
10162        concat!(
10163            "Offset of field: ",
10164            stringify!(_zend_class_constant),
10165            "::",
10166            stringify!(ce)
10167        )
10168    );
10169}
10170pub type zend_class_constant = _zend_class_constant;
10171#[repr(C)]
10172#[derive(Debug, Copy, Clone)]
10173pub struct _zend_internal_arg_info {
10174    pub name: *const ::std::os::raw::c_char,
10175    pub type_: zend_type,
10176    pub pass_by_reference: zend_uchar,
10177    pub is_variadic: zend_bool,
10178}
10179#[test]
10180fn bindgen_test_layout__zend_internal_arg_info() {
10181    assert_eq!(
10182        ::std::mem::size_of::<_zend_internal_arg_info>(),
10183        24usize,
10184        concat!("Size of: ", stringify!(_zend_internal_arg_info))
10185    );
10186    assert_eq!(
10187        ::std::mem::align_of::<_zend_internal_arg_info>(),
10188        8usize,
10189        concat!("Alignment of ", stringify!(_zend_internal_arg_info))
10190    );
10191    assert_eq!(
10192        unsafe { &(*(::std::ptr::null::<_zend_internal_arg_info>())).name as *const _ as usize },
10193        0usize,
10194        concat!(
10195            "Offset of field: ",
10196            stringify!(_zend_internal_arg_info),
10197            "::",
10198            stringify!(name)
10199        )
10200    );
10201    assert_eq!(
10202        unsafe { &(*(::std::ptr::null::<_zend_internal_arg_info>())).type_ as *const _ as usize },
10203        8usize,
10204        concat!(
10205            "Offset of field: ",
10206            stringify!(_zend_internal_arg_info),
10207            "::",
10208            stringify!(type_)
10209        )
10210    );
10211    assert_eq!(
10212        unsafe {
10213            &(*(::std::ptr::null::<_zend_internal_arg_info>())).pass_by_reference as *const _
10214                as usize
10215        },
10216        16usize,
10217        concat!(
10218            "Offset of field: ",
10219            stringify!(_zend_internal_arg_info),
10220            "::",
10221            stringify!(pass_by_reference)
10222        )
10223    );
10224    assert_eq!(
10225        unsafe {
10226            &(*(::std::ptr::null::<_zend_internal_arg_info>())).is_variadic as *const _ as usize
10227        },
10228        17usize,
10229        concat!(
10230            "Offset of field: ",
10231            stringify!(_zend_internal_arg_info),
10232            "::",
10233            stringify!(is_variadic)
10234        )
10235    );
10236}
10237pub type zend_internal_arg_info = _zend_internal_arg_info;
10238#[repr(C)]
10239#[derive(Debug, Copy, Clone)]
10240pub struct _zend_arg_info {
10241    pub name: *mut zend_string,
10242    pub type_: zend_type,
10243    pub pass_by_reference: zend_uchar,
10244    pub is_variadic: zend_bool,
10245}
10246#[test]
10247fn bindgen_test_layout__zend_arg_info() {
10248    assert_eq!(
10249        ::std::mem::size_of::<_zend_arg_info>(),
10250        24usize,
10251        concat!("Size of: ", stringify!(_zend_arg_info))
10252    );
10253    assert_eq!(
10254        ::std::mem::align_of::<_zend_arg_info>(),
10255        8usize,
10256        concat!("Alignment of ", stringify!(_zend_arg_info))
10257    );
10258    assert_eq!(
10259        unsafe { &(*(::std::ptr::null::<_zend_arg_info>())).name as *const _ as usize },
10260        0usize,
10261        concat!(
10262            "Offset of field: ",
10263            stringify!(_zend_arg_info),
10264            "::",
10265            stringify!(name)
10266        )
10267    );
10268    assert_eq!(
10269        unsafe { &(*(::std::ptr::null::<_zend_arg_info>())).type_ as *const _ as usize },
10270        8usize,
10271        concat!(
10272            "Offset of field: ",
10273            stringify!(_zend_arg_info),
10274            "::",
10275            stringify!(type_)
10276        )
10277    );
10278    assert_eq!(
10279        unsafe {
10280            &(*(::std::ptr::null::<_zend_arg_info>())).pass_by_reference as *const _ as usize
10281        },
10282        16usize,
10283        concat!(
10284            "Offset of field: ",
10285            stringify!(_zend_arg_info),
10286            "::",
10287            stringify!(pass_by_reference)
10288        )
10289    );
10290    assert_eq!(
10291        unsafe { &(*(::std::ptr::null::<_zend_arg_info>())).is_variadic as *const _ as usize },
10292        17usize,
10293        concat!(
10294            "Offset of field: ",
10295            stringify!(_zend_arg_info),
10296            "::",
10297            stringify!(is_variadic)
10298        )
10299    );
10300}
10301pub type zend_arg_info = _zend_arg_info;
10302#[repr(C)]
10303#[derive(Debug, Copy, Clone)]
10304pub struct _zend_internal_function_info {
10305    pub required_num_args: zend_uintptr_t,
10306    pub type_: zend_type,
10307    pub return_reference: zend_bool,
10308    pub _is_variadic: zend_bool,
10309}
10310#[test]
10311fn bindgen_test_layout__zend_internal_function_info() {
10312    assert_eq!(
10313        ::std::mem::size_of::<_zend_internal_function_info>(),
10314        24usize,
10315        concat!("Size of: ", stringify!(_zend_internal_function_info))
10316    );
10317    assert_eq!(
10318        ::std::mem::align_of::<_zend_internal_function_info>(),
10319        8usize,
10320        concat!("Alignment of ", stringify!(_zend_internal_function_info))
10321    );
10322    assert_eq!(
10323        unsafe {
10324            &(*(::std::ptr::null::<_zend_internal_function_info>())).required_num_args as *const _
10325                as usize
10326        },
10327        0usize,
10328        concat!(
10329            "Offset of field: ",
10330            stringify!(_zend_internal_function_info),
10331            "::",
10332            stringify!(required_num_args)
10333        )
10334    );
10335    assert_eq!(
10336        unsafe {
10337            &(*(::std::ptr::null::<_zend_internal_function_info>())).type_ as *const _ as usize
10338        },
10339        8usize,
10340        concat!(
10341            "Offset of field: ",
10342            stringify!(_zend_internal_function_info),
10343            "::",
10344            stringify!(type_)
10345        )
10346    );
10347    assert_eq!(
10348        unsafe {
10349            &(*(::std::ptr::null::<_zend_internal_function_info>())).return_reference as *const _
10350                as usize
10351        },
10352        16usize,
10353        concat!(
10354            "Offset of field: ",
10355            stringify!(_zend_internal_function_info),
10356            "::",
10357            stringify!(return_reference)
10358        )
10359    );
10360    assert_eq!(
10361        unsafe {
10362            &(*(::std::ptr::null::<_zend_internal_function_info>()))._is_variadic as *const _
10363                as usize
10364        },
10365        17usize,
10366        concat!(
10367            "Offset of field: ",
10368            stringify!(_zend_internal_function_info),
10369            "::",
10370            stringify!(_is_variadic)
10371        )
10372    );
10373}
10374pub type zend_internal_function_info = _zend_internal_function_info;
10375#[repr(C)]
10376#[derive(Debug, Copy, Clone)]
10377pub struct _zend_op_array {
10378    pub type_: zend_uchar,
10379    pub arg_flags: [zend_uchar; 3usize],
10380    pub fn_flags: u32,
10381    pub function_name: *mut zend_string,
10382    pub scope: *mut zend_class_entry,
10383    pub prototype: *mut zend_function,
10384    pub num_args: u32,
10385    pub required_num_args: u32,
10386    pub arg_info: *mut zend_arg_info,
10387    pub cache_size: ::std::os::raw::c_int,
10388    pub last_var: ::std::os::raw::c_int,
10389    pub T: u32,
10390    pub last: u32,
10391    pub opcodes: *mut zend_op,
10392    pub run_time_cache__ptr: *mut *mut *mut ::std::os::raw::c_void,
10393    pub static_variables_ptr__ptr: *mut *mut HashTable,
10394    pub static_variables: *mut HashTable,
10395    pub vars: *mut *mut zend_string,
10396    pub refcount: *mut u32,
10397    pub last_live_range: ::std::os::raw::c_int,
10398    pub last_try_catch: ::std::os::raw::c_int,
10399    pub live_range: *mut zend_live_range,
10400    pub try_catch_array: *mut zend_try_catch_element,
10401    pub filename: *mut zend_string,
10402    pub line_start: u32,
10403    pub line_end: u32,
10404    pub doc_comment: *mut zend_string,
10405    pub last_literal: ::std::os::raw::c_int,
10406    pub literals: *mut zval,
10407    pub reserved: [*mut ::std::os::raw::c_void; 6usize],
10408}
10409#[test]
10410fn bindgen_test_layout__zend_op_array() {
10411    assert_eq!(
10412        ::std::mem::size_of::<_zend_op_array>(),
10413        224usize,
10414        concat!("Size of: ", stringify!(_zend_op_array))
10415    );
10416    assert_eq!(
10417        ::std::mem::align_of::<_zend_op_array>(),
10418        8usize,
10419        concat!("Alignment of ", stringify!(_zend_op_array))
10420    );
10421    assert_eq!(
10422        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).type_ as *const _ as usize },
10423        0usize,
10424        concat!(
10425            "Offset of field: ",
10426            stringify!(_zend_op_array),
10427            "::",
10428            stringify!(type_)
10429        )
10430    );
10431    assert_eq!(
10432        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).arg_flags as *const _ as usize },
10433        1usize,
10434        concat!(
10435            "Offset of field: ",
10436            stringify!(_zend_op_array),
10437            "::",
10438            stringify!(arg_flags)
10439        )
10440    );
10441    assert_eq!(
10442        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).fn_flags as *const _ as usize },
10443        4usize,
10444        concat!(
10445            "Offset of field: ",
10446            stringify!(_zend_op_array),
10447            "::",
10448            stringify!(fn_flags)
10449        )
10450    );
10451    assert_eq!(
10452        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).function_name as *const _ as usize },
10453        8usize,
10454        concat!(
10455            "Offset of field: ",
10456            stringify!(_zend_op_array),
10457            "::",
10458            stringify!(function_name)
10459        )
10460    );
10461    assert_eq!(
10462        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).scope as *const _ as usize },
10463        16usize,
10464        concat!(
10465            "Offset of field: ",
10466            stringify!(_zend_op_array),
10467            "::",
10468            stringify!(scope)
10469        )
10470    );
10471    assert_eq!(
10472        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).prototype as *const _ as usize },
10473        24usize,
10474        concat!(
10475            "Offset of field: ",
10476            stringify!(_zend_op_array),
10477            "::",
10478            stringify!(prototype)
10479        )
10480    );
10481    assert_eq!(
10482        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).num_args as *const _ as usize },
10483        32usize,
10484        concat!(
10485            "Offset of field: ",
10486            stringify!(_zend_op_array),
10487            "::",
10488            stringify!(num_args)
10489        )
10490    );
10491    assert_eq!(
10492        unsafe {
10493            &(*(::std::ptr::null::<_zend_op_array>())).required_num_args as *const _ as usize
10494        },
10495        36usize,
10496        concat!(
10497            "Offset of field: ",
10498            stringify!(_zend_op_array),
10499            "::",
10500            stringify!(required_num_args)
10501        )
10502    );
10503    assert_eq!(
10504        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).arg_info as *const _ as usize },
10505        40usize,
10506        concat!(
10507            "Offset of field: ",
10508            stringify!(_zend_op_array),
10509            "::",
10510            stringify!(arg_info)
10511        )
10512    );
10513    assert_eq!(
10514        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).cache_size as *const _ as usize },
10515        48usize,
10516        concat!(
10517            "Offset of field: ",
10518            stringify!(_zend_op_array),
10519            "::",
10520            stringify!(cache_size)
10521        )
10522    );
10523    assert_eq!(
10524        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last_var as *const _ as usize },
10525        52usize,
10526        concat!(
10527            "Offset of field: ",
10528            stringify!(_zend_op_array),
10529            "::",
10530            stringify!(last_var)
10531        )
10532    );
10533    assert_eq!(
10534        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).T as *const _ as usize },
10535        56usize,
10536        concat!(
10537            "Offset of field: ",
10538            stringify!(_zend_op_array),
10539            "::",
10540            stringify!(T)
10541        )
10542    );
10543    assert_eq!(
10544        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last as *const _ as usize },
10545        60usize,
10546        concat!(
10547            "Offset of field: ",
10548            stringify!(_zend_op_array),
10549            "::",
10550            stringify!(last)
10551        )
10552    );
10553    assert_eq!(
10554        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).opcodes as *const _ as usize },
10555        64usize,
10556        concat!(
10557            "Offset of field: ",
10558            stringify!(_zend_op_array),
10559            "::",
10560            stringify!(opcodes)
10561        )
10562    );
10563    assert_eq!(
10564        unsafe {
10565            &(*(::std::ptr::null::<_zend_op_array>())).run_time_cache__ptr as *const _ as usize
10566        },
10567        72usize,
10568        concat!(
10569            "Offset of field: ",
10570            stringify!(_zend_op_array),
10571            "::",
10572            stringify!(run_time_cache__ptr)
10573        )
10574    );
10575    assert_eq!(
10576        unsafe {
10577            &(*(::std::ptr::null::<_zend_op_array>())).static_variables_ptr__ptr as *const _
10578                as usize
10579        },
10580        80usize,
10581        concat!(
10582            "Offset of field: ",
10583            stringify!(_zend_op_array),
10584            "::",
10585            stringify!(static_variables_ptr__ptr)
10586        )
10587    );
10588    assert_eq!(
10589        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).static_variables as *const _ as usize },
10590        88usize,
10591        concat!(
10592            "Offset of field: ",
10593            stringify!(_zend_op_array),
10594            "::",
10595            stringify!(static_variables)
10596        )
10597    );
10598    assert_eq!(
10599        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).vars as *const _ as usize },
10600        96usize,
10601        concat!(
10602            "Offset of field: ",
10603            stringify!(_zend_op_array),
10604            "::",
10605            stringify!(vars)
10606        )
10607    );
10608    assert_eq!(
10609        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).refcount as *const _ as usize },
10610        104usize,
10611        concat!(
10612            "Offset of field: ",
10613            stringify!(_zend_op_array),
10614            "::",
10615            stringify!(refcount)
10616        )
10617    );
10618    assert_eq!(
10619        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last_live_range as *const _ as usize },
10620        112usize,
10621        concat!(
10622            "Offset of field: ",
10623            stringify!(_zend_op_array),
10624            "::",
10625            stringify!(last_live_range)
10626        )
10627    );
10628    assert_eq!(
10629        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last_try_catch as *const _ as usize },
10630        116usize,
10631        concat!(
10632            "Offset of field: ",
10633            stringify!(_zend_op_array),
10634            "::",
10635            stringify!(last_try_catch)
10636        )
10637    );
10638    assert_eq!(
10639        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).live_range as *const _ as usize },
10640        120usize,
10641        concat!(
10642            "Offset of field: ",
10643            stringify!(_zend_op_array),
10644            "::",
10645            stringify!(live_range)
10646        )
10647    );
10648    assert_eq!(
10649        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).try_catch_array as *const _ as usize },
10650        128usize,
10651        concat!(
10652            "Offset of field: ",
10653            stringify!(_zend_op_array),
10654            "::",
10655            stringify!(try_catch_array)
10656        )
10657    );
10658    assert_eq!(
10659        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).filename as *const _ as usize },
10660        136usize,
10661        concat!(
10662            "Offset of field: ",
10663            stringify!(_zend_op_array),
10664            "::",
10665            stringify!(filename)
10666        )
10667    );
10668    assert_eq!(
10669        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).line_start as *const _ as usize },
10670        144usize,
10671        concat!(
10672            "Offset of field: ",
10673            stringify!(_zend_op_array),
10674            "::",
10675            stringify!(line_start)
10676        )
10677    );
10678    assert_eq!(
10679        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).line_end as *const _ as usize },
10680        148usize,
10681        concat!(
10682            "Offset of field: ",
10683            stringify!(_zend_op_array),
10684            "::",
10685            stringify!(line_end)
10686        )
10687    );
10688    assert_eq!(
10689        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).doc_comment as *const _ as usize },
10690        152usize,
10691        concat!(
10692            "Offset of field: ",
10693            stringify!(_zend_op_array),
10694            "::",
10695            stringify!(doc_comment)
10696        )
10697    );
10698    assert_eq!(
10699        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last_literal as *const _ as usize },
10700        160usize,
10701        concat!(
10702            "Offset of field: ",
10703            stringify!(_zend_op_array),
10704            "::",
10705            stringify!(last_literal)
10706        )
10707    );
10708    assert_eq!(
10709        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).literals as *const _ as usize },
10710        168usize,
10711        concat!(
10712            "Offset of field: ",
10713            stringify!(_zend_op_array),
10714            "::",
10715            stringify!(literals)
10716        )
10717    );
10718    assert_eq!(
10719        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).reserved as *const _ as usize },
10720        176usize,
10721        concat!(
10722            "Offset of field: ",
10723            stringify!(_zend_op_array),
10724            "::",
10725            stringify!(reserved)
10726        )
10727    );
10728}
10729pub type zif_handler = ::std::option::Option<
10730    unsafe extern "C" fn(execute_data: *mut zend_execute_data, return_value: *mut zval),
10731>;
10732#[repr(C)]
10733#[derive(Debug, Copy, Clone)]
10734pub struct _zend_internal_function {
10735    pub type_: zend_uchar,
10736    pub arg_flags: [zend_uchar; 3usize],
10737    pub fn_flags: u32,
10738    pub function_name: *mut zend_string,
10739    pub scope: *mut zend_class_entry,
10740    pub prototype: *mut zend_function,
10741    pub num_args: u32,
10742    pub required_num_args: u32,
10743    pub arg_info: *mut zend_internal_arg_info,
10744    pub handler: zif_handler,
10745    pub module: *mut _zend_module_entry,
10746    pub reserved: [*mut ::std::os::raw::c_void; 6usize],
10747}
10748#[test]
10749fn bindgen_test_layout__zend_internal_function() {
10750    assert_eq!(
10751        ::std::mem::size_of::<_zend_internal_function>(),
10752        112usize,
10753        concat!("Size of: ", stringify!(_zend_internal_function))
10754    );
10755    assert_eq!(
10756        ::std::mem::align_of::<_zend_internal_function>(),
10757        8usize,
10758        concat!("Alignment of ", stringify!(_zend_internal_function))
10759    );
10760    assert_eq!(
10761        unsafe { &(*(::std::ptr::null::<_zend_internal_function>())).type_ as *const _ as usize },
10762        0usize,
10763        concat!(
10764            "Offset of field: ",
10765            stringify!(_zend_internal_function),
10766            "::",
10767            stringify!(type_)
10768        )
10769    );
10770    assert_eq!(
10771        unsafe {
10772            &(*(::std::ptr::null::<_zend_internal_function>())).arg_flags as *const _ as usize
10773        },
10774        1usize,
10775        concat!(
10776            "Offset of field: ",
10777            stringify!(_zend_internal_function),
10778            "::",
10779            stringify!(arg_flags)
10780        )
10781    );
10782    assert_eq!(
10783        unsafe {
10784            &(*(::std::ptr::null::<_zend_internal_function>())).fn_flags as *const _ as usize
10785        },
10786        4usize,
10787        concat!(
10788            "Offset of field: ",
10789            stringify!(_zend_internal_function),
10790            "::",
10791            stringify!(fn_flags)
10792        )
10793    );
10794    assert_eq!(
10795        unsafe {
10796            &(*(::std::ptr::null::<_zend_internal_function>())).function_name as *const _ as usize
10797        },
10798        8usize,
10799        concat!(
10800            "Offset of field: ",
10801            stringify!(_zend_internal_function),
10802            "::",
10803            stringify!(function_name)
10804        )
10805    );
10806    assert_eq!(
10807        unsafe { &(*(::std::ptr::null::<_zend_internal_function>())).scope as *const _ as usize },
10808        16usize,
10809        concat!(
10810            "Offset of field: ",
10811            stringify!(_zend_internal_function),
10812            "::",
10813            stringify!(scope)
10814        )
10815    );
10816    assert_eq!(
10817        unsafe {
10818            &(*(::std::ptr::null::<_zend_internal_function>())).prototype as *const _ as usize
10819        },
10820        24usize,
10821        concat!(
10822            "Offset of field: ",
10823            stringify!(_zend_internal_function),
10824            "::",
10825            stringify!(prototype)
10826        )
10827    );
10828    assert_eq!(
10829        unsafe {
10830            &(*(::std::ptr::null::<_zend_internal_function>())).num_args as *const _ as usize
10831        },
10832        32usize,
10833        concat!(
10834            "Offset of field: ",
10835            stringify!(_zend_internal_function),
10836            "::",
10837            stringify!(num_args)
10838        )
10839    );
10840    assert_eq!(
10841        unsafe {
10842            &(*(::std::ptr::null::<_zend_internal_function>())).required_num_args as *const _
10843                as usize
10844        },
10845        36usize,
10846        concat!(
10847            "Offset of field: ",
10848            stringify!(_zend_internal_function),
10849            "::",
10850            stringify!(required_num_args)
10851        )
10852    );
10853    assert_eq!(
10854        unsafe {
10855            &(*(::std::ptr::null::<_zend_internal_function>())).arg_info as *const _ as usize
10856        },
10857        40usize,
10858        concat!(
10859            "Offset of field: ",
10860            stringify!(_zend_internal_function),
10861            "::",
10862            stringify!(arg_info)
10863        )
10864    );
10865    assert_eq!(
10866        unsafe { &(*(::std::ptr::null::<_zend_internal_function>())).handler as *const _ as usize },
10867        48usize,
10868        concat!(
10869            "Offset of field: ",
10870            stringify!(_zend_internal_function),
10871            "::",
10872            stringify!(handler)
10873        )
10874    );
10875    assert_eq!(
10876        unsafe { &(*(::std::ptr::null::<_zend_internal_function>())).module as *const _ as usize },
10877        56usize,
10878        concat!(
10879            "Offset of field: ",
10880            stringify!(_zend_internal_function),
10881            "::",
10882            stringify!(module)
10883        )
10884    );
10885    assert_eq!(
10886        unsafe {
10887            &(*(::std::ptr::null::<_zend_internal_function>())).reserved as *const _ as usize
10888        },
10889        64usize,
10890        concat!(
10891            "Offset of field: ",
10892            stringify!(_zend_internal_function),
10893            "::",
10894            stringify!(reserved)
10895        )
10896    );
10897}
10898pub type zend_internal_function = _zend_internal_function;
10899#[repr(C)]
10900#[derive(Copy, Clone)]
10901pub union _zend_function {
10902    pub type_: zend_uchar,
10903    pub quick_arg_flags: u32,
10904    pub common: _zend_function__bindgen_ty_1,
10905    pub op_array: zend_op_array,
10906    pub internal_function: zend_internal_function,
10907    _bindgen_union_align: [u64; 28usize],
10908}
10909#[repr(C)]
10910#[derive(Debug, Copy, Clone)]
10911pub struct _zend_function__bindgen_ty_1 {
10912    pub type_: zend_uchar,
10913    pub arg_flags: [zend_uchar; 3usize],
10914    pub fn_flags: u32,
10915    pub function_name: *mut zend_string,
10916    pub scope: *mut zend_class_entry,
10917    pub prototype: *mut zend_function,
10918    pub num_args: u32,
10919    pub required_num_args: u32,
10920    pub arg_info: *mut zend_arg_info,
10921}
10922#[test]
10923fn bindgen_test_layout__zend_function__bindgen_ty_1() {
10924    assert_eq!(
10925        ::std::mem::size_of::<_zend_function__bindgen_ty_1>(),
10926        48usize,
10927        concat!("Size of: ", stringify!(_zend_function__bindgen_ty_1))
10928    );
10929    assert_eq!(
10930        ::std::mem::align_of::<_zend_function__bindgen_ty_1>(),
10931        8usize,
10932        concat!("Alignment of ", stringify!(_zend_function__bindgen_ty_1))
10933    );
10934    assert_eq!(
10935        unsafe {
10936            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).type_ as *const _ as usize
10937        },
10938        0usize,
10939        concat!(
10940            "Offset of field: ",
10941            stringify!(_zend_function__bindgen_ty_1),
10942            "::",
10943            stringify!(type_)
10944        )
10945    );
10946    assert_eq!(
10947        unsafe {
10948            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).arg_flags as *const _ as usize
10949        },
10950        1usize,
10951        concat!(
10952            "Offset of field: ",
10953            stringify!(_zend_function__bindgen_ty_1),
10954            "::",
10955            stringify!(arg_flags)
10956        )
10957    );
10958    assert_eq!(
10959        unsafe {
10960            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).fn_flags as *const _ as usize
10961        },
10962        4usize,
10963        concat!(
10964            "Offset of field: ",
10965            stringify!(_zend_function__bindgen_ty_1),
10966            "::",
10967            stringify!(fn_flags)
10968        )
10969    );
10970    assert_eq!(
10971        unsafe {
10972            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).function_name as *const _
10973                as usize
10974        },
10975        8usize,
10976        concat!(
10977            "Offset of field: ",
10978            stringify!(_zend_function__bindgen_ty_1),
10979            "::",
10980            stringify!(function_name)
10981        )
10982    );
10983    assert_eq!(
10984        unsafe {
10985            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).scope as *const _ as usize
10986        },
10987        16usize,
10988        concat!(
10989            "Offset of field: ",
10990            stringify!(_zend_function__bindgen_ty_1),
10991            "::",
10992            stringify!(scope)
10993        )
10994    );
10995    assert_eq!(
10996        unsafe {
10997            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).prototype as *const _ as usize
10998        },
10999        24usize,
11000        concat!(
11001            "Offset of field: ",
11002            stringify!(_zend_function__bindgen_ty_1),
11003            "::",
11004            stringify!(prototype)
11005        )
11006    );
11007    assert_eq!(
11008        unsafe {
11009            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).num_args as *const _ as usize
11010        },
11011        32usize,
11012        concat!(
11013            "Offset of field: ",
11014            stringify!(_zend_function__bindgen_ty_1),
11015            "::",
11016            stringify!(num_args)
11017        )
11018    );
11019    assert_eq!(
11020        unsafe {
11021            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).required_num_args as *const _
11022                as usize
11023        },
11024        36usize,
11025        concat!(
11026            "Offset of field: ",
11027            stringify!(_zend_function__bindgen_ty_1),
11028            "::",
11029            stringify!(required_num_args)
11030        )
11031    );
11032    assert_eq!(
11033        unsafe {
11034            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).arg_info as *const _ as usize
11035        },
11036        40usize,
11037        concat!(
11038            "Offset of field: ",
11039            stringify!(_zend_function__bindgen_ty_1),
11040            "::",
11041            stringify!(arg_info)
11042        )
11043    );
11044}
11045#[test]
11046fn bindgen_test_layout__zend_function() {
11047    assert_eq!(
11048        ::std::mem::size_of::<_zend_function>(),
11049        224usize,
11050        concat!("Size of: ", stringify!(_zend_function))
11051    );
11052    assert_eq!(
11053        ::std::mem::align_of::<_zend_function>(),
11054        8usize,
11055        concat!("Alignment of ", stringify!(_zend_function))
11056    );
11057    assert_eq!(
11058        unsafe { &(*(::std::ptr::null::<_zend_function>())).type_ as *const _ as usize },
11059        0usize,
11060        concat!(
11061            "Offset of field: ",
11062            stringify!(_zend_function),
11063            "::",
11064            stringify!(type_)
11065        )
11066    );
11067    assert_eq!(
11068        unsafe { &(*(::std::ptr::null::<_zend_function>())).quick_arg_flags as *const _ as usize },
11069        0usize,
11070        concat!(
11071            "Offset of field: ",
11072            stringify!(_zend_function),
11073            "::",
11074            stringify!(quick_arg_flags)
11075        )
11076    );
11077    assert_eq!(
11078        unsafe { &(*(::std::ptr::null::<_zend_function>())).common as *const _ as usize },
11079        0usize,
11080        concat!(
11081            "Offset of field: ",
11082            stringify!(_zend_function),
11083            "::",
11084            stringify!(common)
11085        )
11086    );
11087    assert_eq!(
11088        unsafe { &(*(::std::ptr::null::<_zend_function>())).op_array as *const _ as usize },
11089        0usize,
11090        concat!(
11091            "Offset of field: ",
11092            stringify!(_zend_function),
11093            "::",
11094            stringify!(op_array)
11095        )
11096    );
11097    assert_eq!(
11098        unsafe {
11099            &(*(::std::ptr::null::<_zend_function>())).internal_function as *const _ as usize
11100        },
11101        0usize,
11102        concat!(
11103            "Offset of field: ",
11104            stringify!(_zend_function),
11105            "::",
11106            stringify!(internal_function)
11107        )
11108    );
11109}
11110#[repr(C)]
11111#[derive(Copy, Clone)]
11112pub struct _zend_execute_data {
11113    pub opline: *const zend_op,
11114    pub call: *mut zend_execute_data,
11115    pub return_value: *mut zval,
11116    pub func: *mut zend_function,
11117    pub This: zval,
11118    pub prev_execute_data: *mut zend_execute_data,
11119    pub symbol_table: *mut zend_array,
11120    pub run_time_cache: *mut *mut ::std::os::raw::c_void,
11121}
11122#[test]
11123fn bindgen_test_layout__zend_execute_data() {
11124    assert_eq!(
11125        ::std::mem::size_of::<_zend_execute_data>(),
11126        72usize,
11127        concat!("Size of: ", stringify!(_zend_execute_data))
11128    );
11129    assert_eq!(
11130        ::std::mem::align_of::<_zend_execute_data>(),
11131        8usize,
11132        concat!("Alignment of ", stringify!(_zend_execute_data))
11133    );
11134    assert_eq!(
11135        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).opline as *const _ as usize },
11136        0usize,
11137        concat!(
11138            "Offset of field: ",
11139            stringify!(_zend_execute_data),
11140            "::",
11141            stringify!(opline)
11142        )
11143    );
11144    assert_eq!(
11145        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).call as *const _ as usize },
11146        8usize,
11147        concat!(
11148            "Offset of field: ",
11149            stringify!(_zend_execute_data),
11150            "::",
11151            stringify!(call)
11152        )
11153    );
11154    assert_eq!(
11155        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).return_value as *const _ as usize },
11156        16usize,
11157        concat!(
11158            "Offset of field: ",
11159            stringify!(_zend_execute_data),
11160            "::",
11161            stringify!(return_value)
11162        )
11163    );
11164    assert_eq!(
11165        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).func as *const _ as usize },
11166        24usize,
11167        concat!(
11168            "Offset of field: ",
11169            stringify!(_zend_execute_data),
11170            "::",
11171            stringify!(func)
11172        )
11173    );
11174    assert_eq!(
11175        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).This as *const _ as usize },
11176        32usize,
11177        concat!(
11178            "Offset of field: ",
11179            stringify!(_zend_execute_data),
11180            "::",
11181            stringify!(This)
11182        )
11183    );
11184    assert_eq!(
11185        unsafe {
11186            &(*(::std::ptr::null::<_zend_execute_data>())).prev_execute_data as *const _ as usize
11187        },
11188        48usize,
11189        concat!(
11190            "Offset of field: ",
11191            stringify!(_zend_execute_data),
11192            "::",
11193            stringify!(prev_execute_data)
11194        )
11195    );
11196    assert_eq!(
11197        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).symbol_table as *const _ as usize },
11198        56usize,
11199        concat!(
11200            "Offset of field: ",
11201            stringify!(_zend_execute_data),
11202            "::",
11203            stringify!(symbol_table)
11204        )
11205    );
11206    assert_eq!(
11207        unsafe {
11208            &(*(::std::ptr::null::<_zend_execute_data>())).run_time_cache as *const _ as usize
11209        },
11210        64usize,
11211        concat!(
11212            "Offset of field: ",
11213            stringify!(_zend_execute_data),
11214            "::",
11215            stringify!(run_time_cache)
11216        )
11217    );
11218}
11219pub type __jmp_buf = [::std::os::raw::c_long; 8usize];
11220#[repr(C)]
11221#[derive(Debug, Copy, Clone)]
11222pub struct __jmp_buf_tag {
11223    pub __jmpbuf: __jmp_buf,
11224    pub __mask_was_saved: ::std::os::raw::c_int,
11225    pub __saved_mask: __sigset_t,
11226}
11227#[test]
11228fn bindgen_test_layout___jmp_buf_tag() {
11229    assert_eq!(
11230        ::std::mem::size_of::<__jmp_buf_tag>(),
11231        200usize,
11232        concat!("Size of: ", stringify!(__jmp_buf_tag))
11233    );
11234    assert_eq!(
11235        ::std::mem::align_of::<__jmp_buf_tag>(),
11236        8usize,
11237        concat!("Alignment of ", stringify!(__jmp_buf_tag))
11238    );
11239    assert_eq!(
11240        unsafe { &(*(::std::ptr::null::<__jmp_buf_tag>())).__jmpbuf as *const _ as usize },
11241        0usize,
11242        concat!(
11243            "Offset of field: ",
11244            stringify!(__jmp_buf_tag),
11245            "::",
11246            stringify!(__jmpbuf)
11247        )
11248    );
11249    assert_eq!(
11250        unsafe { &(*(::std::ptr::null::<__jmp_buf_tag>())).__mask_was_saved as *const _ as usize },
11251        64usize,
11252        concat!(
11253            "Offset of field: ",
11254            stringify!(__jmp_buf_tag),
11255            "::",
11256            stringify!(__mask_was_saved)
11257        )
11258    );
11259    assert_eq!(
11260        unsafe { &(*(::std::ptr::null::<__jmp_buf_tag>())).__saved_mask as *const _ as usize },
11261        72usize,
11262        concat!(
11263            "Offset of field: ",
11264            stringify!(__jmp_buf_tag),
11265            "::",
11266            stringify!(__saved_mask)
11267        )
11268    );
11269}
11270pub type jmp_buf = [__jmp_buf_tag; 1usize];
11271pub type zend_compiler_globals = _zend_compiler_globals;
11272pub type zend_executor_globals = _zend_executor_globals;
11273pub type zend_php_scanner_globals = _zend_php_scanner_globals;
11274pub type zend_ini_scanner_globals = _zend_ini_scanner_globals;
11275#[repr(C)]
11276#[derive(Copy, Clone)]
11277pub struct _zend_compiler_globals {
11278    pub loop_var_stack: zend_stack,
11279    pub active_class_entry: *mut zend_class_entry,
11280    pub compiled_filename: *mut zend_string,
11281    pub zend_lineno: ::std::os::raw::c_int,
11282    pub active_op_array: *mut zend_op_array,
11283    pub function_table: *mut HashTable,
11284    pub class_table: *mut HashTable,
11285    pub filenames_table: HashTable,
11286    pub auto_globals: *mut HashTable,
11287    pub parse_error: zend_bool,
11288    pub in_compilation: zend_bool,
11289    pub short_tags: zend_bool,
11290    pub unclean_shutdown: zend_bool,
11291    pub ini_parser_unbuffered_errors: zend_bool,
11292    pub open_files: zend_llist,
11293    pub ini_parser_param: *mut _zend_ini_parser_param,
11294    pub skip_shebang: zend_bool,
11295    pub increment_lineno: zend_bool,
11296    pub doc_comment: *mut zend_string,
11297    pub extra_fn_flags: u32,
11298    pub compiler_options: u32,
11299    pub context: zend_oparray_context,
11300    pub file_context: zend_file_context,
11301    pub arena: *mut zend_arena,
11302    pub interned_strings: HashTable,
11303    pub script_encoding_list: *mut *const zend_encoding,
11304    pub script_encoding_list_size: size_t,
11305    pub multibyte: zend_bool,
11306    pub detect_unicode: zend_bool,
11307    pub encoding_declared: zend_bool,
11308    pub ast: *mut zend_ast,
11309    pub ast_arena: *mut zend_arena,
11310    pub delayed_oplines_stack: zend_stack,
11311    pub memoized_exprs: *mut HashTable,
11312    pub memoize_mode: ::std::os::raw::c_int,
11313    pub map_ptr_base: *mut ::std::os::raw::c_void,
11314    pub map_ptr_size: size_t,
11315    pub map_ptr_last: size_t,
11316    pub delayed_variance_obligations: *mut HashTable,
11317    pub delayed_autoloads: *mut HashTable,
11318    pub rtd_key_counter: u32,
11319}
11320#[test]
11321fn bindgen_test_layout__zend_compiler_globals() {
11322    assert_eq!(
11323        ::std::mem::size_of::<_zend_compiler_globals>(),
11324        576usize,
11325        concat!("Size of: ", stringify!(_zend_compiler_globals))
11326    );
11327    assert_eq!(
11328        ::std::mem::align_of::<_zend_compiler_globals>(),
11329        8usize,
11330        concat!("Alignment of ", stringify!(_zend_compiler_globals))
11331    );
11332    assert_eq!(
11333        unsafe {
11334            &(*(::std::ptr::null::<_zend_compiler_globals>())).loop_var_stack as *const _ as usize
11335        },
11336        0usize,
11337        concat!(
11338            "Offset of field: ",
11339            stringify!(_zend_compiler_globals),
11340            "::",
11341            stringify!(loop_var_stack)
11342        )
11343    );
11344    assert_eq!(
11345        unsafe {
11346            &(*(::std::ptr::null::<_zend_compiler_globals>())).active_class_entry as *const _
11347                as usize
11348        },
11349        24usize,
11350        concat!(
11351            "Offset of field: ",
11352            stringify!(_zend_compiler_globals),
11353            "::",
11354            stringify!(active_class_entry)
11355        )
11356    );
11357    assert_eq!(
11358        unsafe {
11359            &(*(::std::ptr::null::<_zend_compiler_globals>())).compiled_filename as *const _
11360                as usize
11361        },
11362        32usize,
11363        concat!(
11364            "Offset of field: ",
11365            stringify!(_zend_compiler_globals),
11366            "::",
11367            stringify!(compiled_filename)
11368        )
11369    );
11370    assert_eq!(
11371        unsafe {
11372            &(*(::std::ptr::null::<_zend_compiler_globals>())).zend_lineno as *const _ as usize
11373        },
11374        40usize,
11375        concat!(
11376            "Offset of field: ",
11377            stringify!(_zend_compiler_globals),
11378            "::",
11379            stringify!(zend_lineno)
11380        )
11381    );
11382    assert_eq!(
11383        unsafe {
11384            &(*(::std::ptr::null::<_zend_compiler_globals>())).active_op_array as *const _ as usize
11385        },
11386        48usize,
11387        concat!(
11388            "Offset of field: ",
11389            stringify!(_zend_compiler_globals),
11390            "::",
11391            stringify!(active_op_array)
11392        )
11393    );
11394    assert_eq!(
11395        unsafe {
11396            &(*(::std::ptr::null::<_zend_compiler_globals>())).function_table as *const _ as usize
11397        },
11398        56usize,
11399        concat!(
11400            "Offset of field: ",
11401            stringify!(_zend_compiler_globals),
11402            "::",
11403            stringify!(function_table)
11404        )
11405    );
11406    assert_eq!(
11407        unsafe {
11408            &(*(::std::ptr::null::<_zend_compiler_globals>())).class_table as *const _ as usize
11409        },
11410        64usize,
11411        concat!(
11412            "Offset of field: ",
11413            stringify!(_zend_compiler_globals),
11414            "::",
11415            stringify!(class_table)
11416        )
11417    );
11418    assert_eq!(
11419        unsafe {
11420            &(*(::std::ptr::null::<_zend_compiler_globals>())).filenames_table as *const _ as usize
11421        },
11422        72usize,
11423        concat!(
11424            "Offset of field: ",
11425            stringify!(_zend_compiler_globals),
11426            "::",
11427            stringify!(filenames_table)
11428        )
11429    );
11430    assert_eq!(
11431        unsafe {
11432            &(*(::std::ptr::null::<_zend_compiler_globals>())).auto_globals as *const _ as usize
11433        },
11434        128usize,
11435        concat!(
11436            "Offset of field: ",
11437            stringify!(_zend_compiler_globals),
11438            "::",
11439            stringify!(auto_globals)
11440        )
11441    );
11442    assert_eq!(
11443        unsafe {
11444            &(*(::std::ptr::null::<_zend_compiler_globals>())).parse_error as *const _ as usize
11445        },
11446        136usize,
11447        concat!(
11448            "Offset of field: ",
11449            stringify!(_zend_compiler_globals),
11450            "::",
11451            stringify!(parse_error)
11452        )
11453    );
11454    assert_eq!(
11455        unsafe {
11456            &(*(::std::ptr::null::<_zend_compiler_globals>())).in_compilation as *const _ as usize
11457        },
11458        137usize,
11459        concat!(
11460            "Offset of field: ",
11461            stringify!(_zend_compiler_globals),
11462            "::",
11463            stringify!(in_compilation)
11464        )
11465    );
11466    assert_eq!(
11467        unsafe {
11468            &(*(::std::ptr::null::<_zend_compiler_globals>())).short_tags as *const _ as usize
11469        },
11470        138usize,
11471        concat!(
11472            "Offset of field: ",
11473            stringify!(_zend_compiler_globals),
11474            "::",
11475            stringify!(short_tags)
11476        )
11477    );
11478    assert_eq!(
11479        unsafe {
11480            &(*(::std::ptr::null::<_zend_compiler_globals>())).unclean_shutdown as *const _ as usize
11481        },
11482        139usize,
11483        concat!(
11484            "Offset of field: ",
11485            stringify!(_zend_compiler_globals),
11486            "::",
11487            stringify!(unclean_shutdown)
11488        )
11489    );
11490    assert_eq!(
11491        unsafe {
11492            &(*(::std::ptr::null::<_zend_compiler_globals>())).ini_parser_unbuffered_errors
11493                as *const _ as usize
11494        },
11495        140usize,
11496        concat!(
11497            "Offset of field: ",
11498            stringify!(_zend_compiler_globals),
11499            "::",
11500            stringify!(ini_parser_unbuffered_errors)
11501        )
11502    );
11503    assert_eq!(
11504        unsafe {
11505            &(*(::std::ptr::null::<_zend_compiler_globals>())).open_files as *const _ as usize
11506        },
11507        144usize,
11508        concat!(
11509            "Offset of field: ",
11510            stringify!(_zend_compiler_globals),
11511            "::",
11512            stringify!(open_files)
11513        )
11514    );
11515    assert_eq!(
11516        unsafe {
11517            &(*(::std::ptr::null::<_zend_compiler_globals>())).ini_parser_param as *const _ as usize
11518        },
11519        200usize,
11520        concat!(
11521            "Offset of field: ",
11522            stringify!(_zend_compiler_globals),
11523            "::",
11524            stringify!(ini_parser_param)
11525        )
11526    );
11527    assert_eq!(
11528        unsafe {
11529            &(*(::std::ptr::null::<_zend_compiler_globals>())).skip_shebang as *const _ as usize
11530        },
11531        208usize,
11532        concat!(
11533            "Offset of field: ",
11534            stringify!(_zend_compiler_globals),
11535            "::",
11536            stringify!(skip_shebang)
11537        )
11538    );
11539    assert_eq!(
11540        unsafe {
11541            &(*(::std::ptr::null::<_zend_compiler_globals>())).increment_lineno as *const _ as usize
11542        },
11543        209usize,
11544        concat!(
11545            "Offset of field: ",
11546            stringify!(_zend_compiler_globals),
11547            "::",
11548            stringify!(increment_lineno)
11549        )
11550    );
11551    assert_eq!(
11552        unsafe {
11553            &(*(::std::ptr::null::<_zend_compiler_globals>())).doc_comment as *const _ as usize
11554        },
11555        216usize,
11556        concat!(
11557            "Offset of field: ",
11558            stringify!(_zend_compiler_globals),
11559            "::",
11560            stringify!(doc_comment)
11561        )
11562    );
11563    assert_eq!(
11564        unsafe {
11565            &(*(::std::ptr::null::<_zend_compiler_globals>())).extra_fn_flags as *const _ as usize
11566        },
11567        224usize,
11568        concat!(
11569            "Offset of field: ",
11570            stringify!(_zend_compiler_globals),
11571            "::",
11572            stringify!(extra_fn_flags)
11573        )
11574    );
11575    assert_eq!(
11576        unsafe {
11577            &(*(::std::ptr::null::<_zend_compiler_globals>())).compiler_options as *const _ as usize
11578        },
11579        228usize,
11580        concat!(
11581            "Offset of field: ",
11582            stringify!(_zend_compiler_globals),
11583            "::",
11584            stringify!(compiler_options)
11585        )
11586    );
11587    assert_eq!(
11588        unsafe { &(*(::std::ptr::null::<_zend_compiler_globals>())).context as *const _ as usize },
11589        232usize,
11590        concat!(
11591            "Offset of field: ",
11592            stringify!(_zend_compiler_globals),
11593            "::",
11594            stringify!(context)
11595        )
11596    );
11597    assert_eq!(
11598        unsafe {
11599            &(*(::std::ptr::null::<_zend_compiler_globals>())).file_context as *const _ as usize
11600        },
11601        280usize,
11602        concat!(
11603            "Offset of field: ",
11604            stringify!(_zend_compiler_globals),
11605            "::",
11606            stringify!(file_context)
11607        )
11608    );
11609    assert_eq!(
11610        unsafe { &(*(::std::ptr::null::<_zend_compiler_globals>())).arena as *const _ as usize },
11611        384usize,
11612        concat!(
11613            "Offset of field: ",
11614            stringify!(_zend_compiler_globals),
11615            "::",
11616            stringify!(arena)
11617        )
11618    );
11619    assert_eq!(
11620        unsafe {
11621            &(*(::std::ptr::null::<_zend_compiler_globals>())).interned_strings as *const _ as usize
11622        },
11623        392usize,
11624        concat!(
11625            "Offset of field: ",
11626            stringify!(_zend_compiler_globals),
11627            "::",
11628            stringify!(interned_strings)
11629        )
11630    );
11631    assert_eq!(
11632        unsafe {
11633            &(*(::std::ptr::null::<_zend_compiler_globals>())).script_encoding_list as *const _
11634                as usize
11635        },
11636        448usize,
11637        concat!(
11638            "Offset of field: ",
11639            stringify!(_zend_compiler_globals),
11640            "::",
11641            stringify!(script_encoding_list)
11642        )
11643    );
11644    assert_eq!(
11645        unsafe {
11646            &(*(::std::ptr::null::<_zend_compiler_globals>())).script_encoding_list_size as *const _
11647                as usize
11648        },
11649        456usize,
11650        concat!(
11651            "Offset of field: ",
11652            stringify!(_zend_compiler_globals),
11653            "::",
11654            stringify!(script_encoding_list_size)
11655        )
11656    );
11657    assert_eq!(
11658        unsafe {
11659            &(*(::std::ptr::null::<_zend_compiler_globals>())).multibyte as *const _ as usize
11660        },
11661        464usize,
11662        concat!(
11663            "Offset of field: ",
11664            stringify!(_zend_compiler_globals),
11665            "::",
11666            stringify!(multibyte)
11667        )
11668    );
11669    assert_eq!(
11670        unsafe {
11671            &(*(::std::ptr::null::<_zend_compiler_globals>())).detect_unicode as *const _ as usize
11672        },
11673        465usize,
11674        concat!(
11675            "Offset of field: ",
11676            stringify!(_zend_compiler_globals),
11677            "::",
11678            stringify!(detect_unicode)
11679        )
11680    );
11681    assert_eq!(
11682        unsafe {
11683            &(*(::std::ptr::null::<_zend_compiler_globals>())).encoding_declared as *const _
11684                as usize
11685        },
11686        466usize,
11687        concat!(
11688            "Offset of field: ",
11689            stringify!(_zend_compiler_globals),
11690            "::",
11691            stringify!(encoding_declared)
11692        )
11693    );
11694    assert_eq!(
11695        unsafe { &(*(::std::ptr::null::<_zend_compiler_globals>())).ast as *const _ as usize },
11696        472usize,
11697        concat!(
11698            "Offset of field: ",
11699            stringify!(_zend_compiler_globals),
11700            "::",
11701            stringify!(ast)
11702        )
11703    );
11704    assert_eq!(
11705        unsafe {
11706            &(*(::std::ptr::null::<_zend_compiler_globals>())).ast_arena as *const _ as usize
11707        },
11708        480usize,
11709        concat!(
11710            "Offset of field: ",
11711            stringify!(_zend_compiler_globals),
11712            "::",
11713            stringify!(ast_arena)
11714        )
11715    );
11716    assert_eq!(
11717        unsafe {
11718            &(*(::std::ptr::null::<_zend_compiler_globals>())).delayed_oplines_stack as *const _
11719                as usize
11720        },
11721        488usize,
11722        concat!(
11723            "Offset of field: ",
11724            stringify!(_zend_compiler_globals),
11725            "::",
11726            stringify!(delayed_oplines_stack)
11727        )
11728    );
11729    assert_eq!(
11730        unsafe {
11731            &(*(::std::ptr::null::<_zend_compiler_globals>())).memoized_exprs as *const _ as usize
11732        },
11733        512usize,
11734        concat!(
11735            "Offset of field: ",
11736            stringify!(_zend_compiler_globals),
11737            "::",
11738            stringify!(memoized_exprs)
11739        )
11740    );
11741    assert_eq!(
11742        unsafe {
11743            &(*(::std::ptr::null::<_zend_compiler_globals>())).memoize_mode as *const _ as usize
11744        },
11745        520usize,
11746        concat!(
11747            "Offset of field: ",
11748            stringify!(_zend_compiler_globals),
11749            "::",
11750            stringify!(memoize_mode)
11751        )
11752    );
11753    assert_eq!(
11754        unsafe {
11755            &(*(::std::ptr::null::<_zend_compiler_globals>())).map_ptr_base as *const _ as usize
11756        },
11757        528usize,
11758        concat!(
11759            "Offset of field: ",
11760            stringify!(_zend_compiler_globals),
11761            "::",
11762            stringify!(map_ptr_base)
11763        )
11764    );
11765    assert_eq!(
11766        unsafe {
11767            &(*(::std::ptr::null::<_zend_compiler_globals>())).map_ptr_size as *const _ as usize
11768        },
11769        536usize,
11770        concat!(
11771            "Offset of field: ",
11772            stringify!(_zend_compiler_globals),
11773            "::",
11774            stringify!(map_ptr_size)
11775        )
11776    );
11777    assert_eq!(
11778        unsafe {
11779            &(*(::std::ptr::null::<_zend_compiler_globals>())).map_ptr_last as *const _ as usize
11780        },
11781        544usize,
11782        concat!(
11783            "Offset of field: ",
11784            stringify!(_zend_compiler_globals),
11785            "::",
11786            stringify!(map_ptr_last)
11787        )
11788    );
11789    assert_eq!(
11790        unsafe {
11791            &(*(::std::ptr::null::<_zend_compiler_globals>())).delayed_variance_obligations
11792                as *const _ as usize
11793        },
11794        552usize,
11795        concat!(
11796            "Offset of field: ",
11797            stringify!(_zend_compiler_globals),
11798            "::",
11799            stringify!(delayed_variance_obligations)
11800        )
11801    );
11802    assert_eq!(
11803        unsafe {
11804            &(*(::std::ptr::null::<_zend_compiler_globals>())).delayed_autoloads as *const _
11805                as usize
11806        },
11807        560usize,
11808        concat!(
11809            "Offset of field: ",
11810            stringify!(_zend_compiler_globals),
11811            "::",
11812            stringify!(delayed_autoloads)
11813        )
11814    );
11815    assert_eq!(
11816        unsafe {
11817            &(*(::std::ptr::null::<_zend_compiler_globals>())).rtd_key_counter as *const _ as usize
11818        },
11819        568usize,
11820        concat!(
11821            "Offset of field: ",
11822            stringify!(_zend_compiler_globals),
11823            "::",
11824            stringify!(rtd_key_counter)
11825        )
11826    );
11827}
11828extern "C" {
11829    pub static mut compiler_globals: _zend_compiler_globals;
11830}
11831extern "C" {
11832    pub fn zendparse() -> ::std::os::raw::c_int;
11833}
11834extern "C" {
11835    pub static mut executor_globals: zend_executor_globals;
11836}
11837extern "C" {
11838    pub static mut language_scanner_globals: zend_php_scanner_globals;
11839}
11840extern "C" {
11841    pub static mut ini_scanner_globals: zend_ini_scanner_globals;
11842}
11843#[repr(C)]
11844#[derive(Debug, Copy, Clone)]
11845pub struct _zend_stack {
11846    pub size: ::std::os::raw::c_int,
11847    pub top: ::std::os::raw::c_int,
11848    pub max: ::std::os::raw::c_int,
11849    pub elements: *mut ::std::os::raw::c_void,
11850}
11851#[test]
11852fn bindgen_test_layout__zend_stack() {
11853    assert_eq!(
11854        ::std::mem::size_of::<_zend_stack>(),
11855        24usize,
11856        concat!("Size of: ", stringify!(_zend_stack))
11857    );
11858    assert_eq!(
11859        ::std::mem::align_of::<_zend_stack>(),
11860        8usize,
11861        concat!("Alignment of ", stringify!(_zend_stack))
11862    );
11863    assert_eq!(
11864        unsafe { &(*(::std::ptr::null::<_zend_stack>())).size as *const _ as usize },
11865        0usize,
11866        concat!(
11867            "Offset of field: ",
11868            stringify!(_zend_stack),
11869            "::",
11870            stringify!(size)
11871        )
11872    );
11873    assert_eq!(
11874        unsafe { &(*(::std::ptr::null::<_zend_stack>())).top as *const _ as usize },
11875        4usize,
11876        concat!(
11877            "Offset of field: ",
11878            stringify!(_zend_stack),
11879            "::",
11880            stringify!(top)
11881        )
11882    );
11883    assert_eq!(
11884        unsafe { &(*(::std::ptr::null::<_zend_stack>())).max as *const _ as usize },
11885        8usize,
11886        concat!(
11887            "Offset of field: ",
11888            stringify!(_zend_stack),
11889            "::",
11890            stringify!(max)
11891        )
11892    );
11893    assert_eq!(
11894        unsafe { &(*(::std::ptr::null::<_zend_stack>())).elements as *const _ as usize },
11895        16usize,
11896        concat!(
11897            "Offset of field: ",
11898            stringify!(_zend_stack),
11899            "::",
11900            stringify!(elements)
11901        )
11902    );
11903}
11904pub type zend_stack = _zend_stack;
11905extern "C" {
11906    pub fn zend_stack_init(
11907        stack: *mut zend_stack,
11908        size: ::std::os::raw::c_int,
11909    ) -> ::std::os::raw::c_int;
11910}
11911extern "C" {
11912    pub fn zend_stack_push(
11913        stack: *mut zend_stack,
11914        element: *const ::std::os::raw::c_void,
11915    ) -> ::std::os::raw::c_int;
11916}
11917extern "C" {
11918    pub fn zend_stack_top(stack: *const zend_stack) -> *mut ::std::os::raw::c_void;
11919}
11920extern "C" {
11921    pub fn zend_stack_del_top(stack: *mut zend_stack) -> ::std::os::raw::c_int;
11922}
11923extern "C" {
11924    pub fn zend_stack_int_top(stack: *const zend_stack) -> ::std::os::raw::c_int;
11925}
11926extern "C" {
11927    pub fn zend_stack_is_empty(stack: *const zend_stack) -> ::std::os::raw::c_int;
11928}
11929extern "C" {
11930    pub fn zend_stack_destroy(stack: *mut zend_stack) -> ::std::os::raw::c_int;
11931}
11932extern "C" {
11933    pub fn zend_stack_base(stack: *const zend_stack) -> *mut ::std::os::raw::c_void;
11934}
11935extern "C" {
11936    pub fn zend_stack_count(stack: *const zend_stack) -> ::std::os::raw::c_int;
11937}
11938extern "C" {
11939    pub fn zend_stack_apply(
11940        stack: *mut zend_stack,
11941        type_: ::std::os::raw::c_int,
11942        apply_function: ::std::option::Option<
11943            unsafe extern "C" fn(element: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
11944        >,
11945    );
11946}
11947extern "C" {
11948    pub fn zend_stack_apply_with_argument(
11949        stack: *mut zend_stack,
11950        type_: ::std::os::raw::c_int,
11951        apply_function: ::std::option::Option<
11952            unsafe extern "C" fn(
11953                element: *mut ::std::os::raw::c_void,
11954                arg: *mut ::std::os::raw::c_void,
11955            ) -> ::std::os::raw::c_int,
11956        >,
11957        arg: *mut ::std::os::raw::c_void,
11958    );
11959}
11960extern "C" {
11961    pub fn zend_stack_clean(
11962        stack: *mut zend_stack,
11963        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
11964        free_elements: zend_bool,
11965    );
11966}
11967#[repr(C)]
11968#[derive(Debug, Copy, Clone)]
11969pub struct _zend_ptr_stack {
11970    pub top: ::std::os::raw::c_int,
11971    pub max: ::std::os::raw::c_int,
11972    pub elements: *mut *mut ::std::os::raw::c_void,
11973    pub top_element: *mut *mut ::std::os::raw::c_void,
11974    pub persistent: zend_bool,
11975}
11976#[test]
11977fn bindgen_test_layout__zend_ptr_stack() {
11978    assert_eq!(
11979        ::std::mem::size_of::<_zend_ptr_stack>(),
11980        32usize,
11981        concat!("Size of: ", stringify!(_zend_ptr_stack))
11982    );
11983    assert_eq!(
11984        ::std::mem::align_of::<_zend_ptr_stack>(),
11985        8usize,
11986        concat!("Alignment of ", stringify!(_zend_ptr_stack))
11987    );
11988    assert_eq!(
11989        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).top as *const _ as usize },
11990        0usize,
11991        concat!(
11992            "Offset of field: ",
11993            stringify!(_zend_ptr_stack),
11994            "::",
11995            stringify!(top)
11996        )
11997    );
11998    assert_eq!(
11999        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).max as *const _ as usize },
12000        4usize,
12001        concat!(
12002            "Offset of field: ",
12003            stringify!(_zend_ptr_stack),
12004            "::",
12005            stringify!(max)
12006        )
12007    );
12008    assert_eq!(
12009        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).elements as *const _ as usize },
12010        8usize,
12011        concat!(
12012            "Offset of field: ",
12013            stringify!(_zend_ptr_stack),
12014            "::",
12015            stringify!(elements)
12016        )
12017    );
12018    assert_eq!(
12019        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).top_element as *const _ as usize },
12020        16usize,
12021        concat!(
12022            "Offset of field: ",
12023            stringify!(_zend_ptr_stack),
12024            "::",
12025            stringify!(top_element)
12026        )
12027    );
12028    assert_eq!(
12029        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).persistent as *const _ as usize },
12030        24usize,
12031        concat!(
12032            "Offset of field: ",
12033            stringify!(_zend_ptr_stack),
12034            "::",
12035            stringify!(persistent)
12036        )
12037    );
12038}
12039pub type zend_ptr_stack = _zend_ptr_stack;
12040extern "C" {
12041    pub fn zend_ptr_stack_init(stack: *mut zend_ptr_stack);
12042}
12043extern "C" {
12044    pub fn zend_ptr_stack_init_ex(stack: *mut zend_ptr_stack, persistent: zend_bool);
12045}
12046extern "C" {
12047    pub fn zend_ptr_stack_n_push(stack: *mut zend_ptr_stack, count: ::std::os::raw::c_int, ...);
12048}
12049extern "C" {
12050    pub fn zend_ptr_stack_n_pop(stack: *mut zend_ptr_stack, count: ::std::os::raw::c_int, ...);
12051}
12052extern "C" {
12053    pub fn zend_ptr_stack_destroy(stack: *mut zend_ptr_stack);
12054}
12055extern "C" {
12056    pub fn zend_ptr_stack_apply(
12057        stack: *mut zend_ptr_stack,
12058        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
12059    );
12060}
12061extern "C" {
12062    pub fn zend_ptr_stack_reverse_apply(
12063        stack: *mut zend_ptr_stack,
12064        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
12065    );
12066}
12067extern "C" {
12068    pub fn zend_ptr_stack_clean(
12069        stack: *mut zend_ptr_stack,
12070        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
12071        free_elements: zend_bool,
12072    );
12073}
12074extern "C" {
12075    pub fn zend_ptr_stack_num_elements(stack: *mut zend_ptr_stack) -> ::std::os::raw::c_int;
12076}
12077extern "C" {
12078    pub fn zend_object_std_init(object: *mut zend_object, ce: *mut zend_class_entry);
12079}
12080extern "C" {
12081    pub fn zend_objects_new(ce: *mut zend_class_entry) -> *mut zend_object;
12082}
12083extern "C" {
12084    pub fn zend_objects_clone_members(new_object: *mut zend_object, old_object: *mut zend_object);
12085}
12086extern "C" {
12087    pub fn zend_object_std_dtor(object: *mut zend_object);
12088}
12089extern "C" {
12090    pub fn zend_objects_destroy_object(object: *mut zend_object);
12091}
12092extern "C" {
12093    pub fn zend_objects_clone_obj(object: *mut zval) -> *mut zend_object;
12094}
12095#[repr(C)]
12096#[derive(Debug, Copy, Clone)]
12097pub struct _zend_objects_store {
12098    pub object_buckets: *mut *mut zend_object,
12099    pub top: u32,
12100    pub size: u32,
12101    pub free_list_head: ::std::os::raw::c_int,
12102}
12103#[test]
12104fn bindgen_test_layout__zend_objects_store() {
12105    assert_eq!(
12106        ::std::mem::size_of::<_zend_objects_store>(),
12107        24usize,
12108        concat!("Size of: ", stringify!(_zend_objects_store))
12109    );
12110    assert_eq!(
12111        ::std::mem::align_of::<_zend_objects_store>(),
12112        8usize,
12113        concat!("Alignment of ", stringify!(_zend_objects_store))
12114    );
12115    assert_eq!(
12116        unsafe {
12117            &(*(::std::ptr::null::<_zend_objects_store>())).object_buckets as *const _ as usize
12118        },
12119        0usize,
12120        concat!(
12121            "Offset of field: ",
12122            stringify!(_zend_objects_store),
12123            "::",
12124            stringify!(object_buckets)
12125        )
12126    );
12127    assert_eq!(
12128        unsafe { &(*(::std::ptr::null::<_zend_objects_store>())).top as *const _ as usize },
12129        8usize,
12130        concat!(
12131            "Offset of field: ",
12132            stringify!(_zend_objects_store),
12133            "::",
12134            stringify!(top)
12135        )
12136    );
12137    assert_eq!(
12138        unsafe { &(*(::std::ptr::null::<_zend_objects_store>())).size as *const _ as usize },
12139        12usize,
12140        concat!(
12141            "Offset of field: ",
12142            stringify!(_zend_objects_store),
12143            "::",
12144            stringify!(size)
12145        )
12146    );
12147    assert_eq!(
12148        unsafe {
12149            &(*(::std::ptr::null::<_zend_objects_store>())).free_list_head as *const _ as usize
12150        },
12151        16usize,
12152        concat!(
12153            "Offset of field: ",
12154            stringify!(_zend_objects_store),
12155            "::",
12156            stringify!(free_list_head)
12157        )
12158    );
12159}
12160pub type zend_objects_store = _zend_objects_store;
12161extern "C" {
12162    pub fn zend_objects_store_init(objects: *mut zend_objects_store, init_size: u32);
12163}
12164extern "C" {
12165    pub fn zend_objects_store_call_destructors(objects: *mut zend_objects_store);
12166}
12167extern "C" {
12168    pub fn zend_objects_store_mark_destructed(objects: *mut zend_objects_store);
12169}
12170extern "C" {
12171    pub fn zend_objects_store_free_object_storage(
12172        objects: *mut zend_objects_store,
12173        fast_shutdown: zend_bool,
12174    );
12175}
12176extern "C" {
12177    pub fn zend_objects_store_destroy(objects: *mut zend_objects_store);
12178}
12179extern "C" {
12180    pub fn zend_objects_store_put(object: *mut zend_object);
12181}
12182extern "C" {
12183    pub fn zend_objects_store_del(object: *mut zend_object);
12184}
12185extern "C" {
12186    pub fn zend_init_fpu();
12187}
12188extern "C" {
12189    pub fn zend_shutdown_fpu();
12190}
12191extern "C" {
12192    pub fn zend_ensure_fpu_mode();
12193}
12194#[repr(C)]
12195#[derive(Debug, Copy, Clone)]
12196pub struct _zend_encoding {
12197    _unused: [u8; 0],
12198}
12199pub type zend_encoding = _zend_encoding;
12200pub type zend_encoding_filter = ::std::option::Option<
12201    unsafe extern "C" fn(
12202        str_: *mut *mut ::std::os::raw::c_uchar,
12203        str_length: *mut size_t,
12204        buf: *const ::std::os::raw::c_uchar,
12205        length: size_t,
12206    ) -> size_t,
12207>;
12208pub type zend_encoding_fetcher = ::std::option::Option<
12209    unsafe extern "C" fn(encoding_name: *const ::std::os::raw::c_char) -> *const zend_encoding,
12210>;
12211pub type zend_encoding_name_getter = ::std::option::Option<
12212    unsafe extern "C" fn(encoding: *const zend_encoding) -> *const ::std::os::raw::c_char,
12213>;
12214pub type zend_encoding_lexer_compatibility_checker = ::std::option::Option<
12215    unsafe extern "C" fn(encoding: *const zend_encoding) -> ::std::os::raw::c_int,
12216>;
12217pub type zend_encoding_detector = ::std::option::Option<
12218    unsafe extern "C" fn(
12219        string: *const ::std::os::raw::c_uchar,
12220        length: size_t,
12221        list: *mut *const zend_encoding,
12222        list_size: size_t,
12223    ) -> *const zend_encoding,
12224>;
12225pub type zend_encoding_converter = ::std::option::Option<
12226    unsafe extern "C" fn(
12227        to: *mut *mut ::std::os::raw::c_uchar,
12228        to_length: *mut size_t,
12229        from: *const ::std::os::raw::c_uchar,
12230        from_length: size_t,
12231        encoding_to: *const zend_encoding,
12232        encoding_from: *const zend_encoding,
12233    ) -> size_t,
12234>;
12235pub type zend_encoding_list_parser = ::std::option::Option<
12236    unsafe extern "C" fn(
12237        encoding_list: *const ::std::os::raw::c_char,
12238        encoding_list_len: size_t,
12239        return_list: *mut *mut *const zend_encoding,
12240        return_size: *mut size_t,
12241        persistent: ::std::os::raw::c_int,
12242    ) -> ::std::os::raw::c_int,
12243>;
12244pub type zend_encoding_internal_encoding_getter =
12245    ::std::option::Option<unsafe extern "C" fn() -> *const zend_encoding>;
12246pub type zend_encoding_internal_encoding_setter = ::std::option::Option<
12247    unsafe extern "C" fn(encoding: *const zend_encoding) -> ::std::os::raw::c_int,
12248>;
12249#[repr(C)]
12250#[derive(Debug, Copy, Clone)]
12251pub struct _zend_multibyte_functions {
12252    pub provider_name: *const ::std::os::raw::c_char,
12253    pub encoding_fetcher: zend_encoding_fetcher,
12254    pub encoding_name_getter: zend_encoding_name_getter,
12255    pub lexer_compatibility_checker: zend_encoding_lexer_compatibility_checker,
12256    pub encoding_detector: zend_encoding_detector,
12257    pub encoding_converter: zend_encoding_converter,
12258    pub encoding_list_parser: zend_encoding_list_parser,
12259    pub internal_encoding_getter: zend_encoding_internal_encoding_getter,
12260    pub internal_encoding_setter: zend_encoding_internal_encoding_setter,
12261}
12262#[test]
12263fn bindgen_test_layout__zend_multibyte_functions() {
12264    assert_eq!(
12265        ::std::mem::size_of::<_zend_multibyte_functions>(),
12266        72usize,
12267        concat!("Size of: ", stringify!(_zend_multibyte_functions))
12268    );
12269    assert_eq!(
12270        ::std::mem::align_of::<_zend_multibyte_functions>(),
12271        8usize,
12272        concat!("Alignment of ", stringify!(_zend_multibyte_functions))
12273    );
12274    assert_eq!(
12275        unsafe {
12276            &(*(::std::ptr::null::<_zend_multibyte_functions>())).provider_name as *const _ as usize
12277        },
12278        0usize,
12279        concat!(
12280            "Offset of field: ",
12281            stringify!(_zend_multibyte_functions),
12282            "::",
12283            stringify!(provider_name)
12284        )
12285    );
12286    assert_eq!(
12287        unsafe {
12288            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_fetcher as *const _
12289                as usize
12290        },
12291        8usize,
12292        concat!(
12293            "Offset of field: ",
12294            stringify!(_zend_multibyte_functions),
12295            "::",
12296            stringify!(encoding_fetcher)
12297        )
12298    );
12299    assert_eq!(
12300        unsafe {
12301            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_name_getter as *const _
12302                as usize
12303        },
12304        16usize,
12305        concat!(
12306            "Offset of field: ",
12307            stringify!(_zend_multibyte_functions),
12308            "::",
12309            stringify!(encoding_name_getter)
12310        )
12311    );
12312    assert_eq!(
12313        unsafe {
12314            &(*(::std::ptr::null::<_zend_multibyte_functions>())).lexer_compatibility_checker
12315                as *const _ as usize
12316        },
12317        24usize,
12318        concat!(
12319            "Offset of field: ",
12320            stringify!(_zend_multibyte_functions),
12321            "::",
12322            stringify!(lexer_compatibility_checker)
12323        )
12324    );
12325    assert_eq!(
12326        unsafe {
12327            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_detector as *const _
12328                as usize
12329        },
12330        32usize,
12331        concat!(
12332            "Offset of field: ",
12333            stringify!(_zend_multibyte_functions),
12334            "::",
12335            stringify!(encoding_detector)
12336        )
12337    );
12338    assert_eq!(
12339        unsafe {
12340            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_converter as *const _
12341                as usize
12342        },
12343        40usize,
12344        concat!(
12345            "Offset of field: ",
12346            stringify!(_zend_multibyte_functions),
12347            "::",
12348            stringify!(encoding_converter)
12349        )
12350    );
12351    assert_eq!(
12352        unsafe {
12353            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_list_parser as *const _
12354                as usize
12355        },
12356        48usize,
12357        concat!(
12358            "Offset of field: ",
12359            stringify!(_zend_multibyte_functions),
12360            "::",
12361            stringify!(encoding_list_parser)
12362        )
12363    );
12364    assert_eq!(
12365        unsafe {
12366            &(*(::std::ptr::null::<_zend_multibyte_functions>())).internal_encoding_getter
12367                as *const _ as usize
12368        },
12369        56usize,
12370        concat!(
12371            "Offset of field: ",
12372            stringify!(_zend_multibyte_functions),
12373            "::",
12374            stringify!(internal_encoding_getter)
12375        )
12376    );
12377    assert_eq!(
12378        unsafe {
12379            &(*(::std::ptr::null::<_zend_multibyte_functions>())).internal_encoding_setter
12380                as *const _ as usize
12381        },
12382        64usize,
12383        concat!(
12384            "Offset of field: ",
12385            stringify!(_zend_multibyte_functions),
12386            "::",
12387            stringify!(internal_encoding_setter)
12388        )
12389    );
12390}
12391pub type zend_multibyte_functions = _zend_multibyte_functions;
12392extern "C" {
12393    pub static mut zend_multibyte_encoding_utf32be: *const zend_encoding;
12394}
12395extern "C" {
12396    pub static mut zend_multibyte_encoding_utf32le: *const zend_encoding;
12397}
12398extern "C" {
12399    pub static mut zend_multibyte_encoding_utf16be: *const zend_encoding;
12400}
12401extern "C" {
12402    pub static mut zend_multibyte_encoding_utf16le: *const zend_encoding;
12403}
12404extern "C" {
12405    pub static mut zend_multibyte_encoding_utf8: *const zend_encoding;
12406}
12407extern "C" {
12408    pub fn zend_multibyte_set_functions(
12409        functions: *const zend_multibyte_functions,
12410    ) -> ::std::os::raw::c_int;
12411}
12412extern "C" {
12413    pub fn zend_multibyte_restore_functions();
12414}
12415extern "C" {
12416    pub fn zend_multibyte_get_functions() -> *const zend_multibyte_functions;
12417}
12418extern "C" {
12419    pub fn zend_multibyte_fetch_encoding(
12420        name: *const ::std::os::raw::c_char,
12421    ) -> *const zend_encoding;
12422}
12423extern "C" {
12424    pub fn zend_multibyte_get_encoding_name(
12425        encoding: *const zend_encoding,
12426    ) -> *const ::std::os::raw::c_char;
12427}
12428extern "C" {
12429    pub fn zend_multibyte_check_lexer_compatibility(
12430        encoding: *const zend_encoding,
12431    ) -> ::std::os::raw::c_int;
12432}
12433extern "C" {
12434    pub fn zend_multibyte_encoding_detector(
12435        string: *const ::std::os::raw::c_uchar,
12436        length: size_t,
12437        list: *mut *const zend_encoding,
12438        list_size: size_t,
12439    ) -> *const zend_encoding;
12440}
12441extern "C" {
12442    pub fn zend_multibyte_encoding_converter(
12443        to: *mut *mut ::std::os::raw::c_uchar,
12444        to_length: *mut size_t,
12445        from: *const ::std::os::raw::c_uchar,
12446        from_length: size_t,
12447        encoding_to: *const zend_encoding,
12448        encoding_from: *const zend_encoding,
12449    ) -> size_t;
12450}
12451extern "C" {
12452    pub fn zend_multibyte_parse_encoding_list(
12453        encoding_list: *const ::std::os::raw::c_char,
12454        encoding_list_len: size_t,
12455        return_list: *mut *mut *const zend_encoding,
12456        return_size: *mut size_t,
12457        persistent: ::std::os::raw::c_int,
12458    ) -> ::std::os::raw::c_int;
12459}
12460extern "C" {
12461    pub fn zend_multibyte_get_internal_encoding() -> *const zend_encoding;
12462}
12463extern "C" {
12464    pub fn zend_multibyte_get_script_encoding() -> *const zend_encoding;
12465}
12466extern "C" {
12467    pub fn zend_multibyte_set_script_encoding(
12468        encoding_list: *mut *const zend_encoding,
12469        encoding_list_size: size_t,
12470    ) -> ::std::os::raw::c_int;
12471}
12472extern "C" {
12473    pub fn zend_multibyte_set_internal_encoding(
12474        encoding: *const zend_encoding,
12475    ) -> ::std::os::raw::c_int;
12476}
12477extern "C" {
12478    pub fn zend_multibyte_set_script_encoding_by_string(
12479        new_value: *const ::std::os::raw::c_char,
12480        new_value_length: size_t,
12481    ) -> ::std::os::raw::c_int;
12482}
12483pub type zend_arena = _zend_arena;
12484#[repr(C)]
12485#[derive(Debug, Copy, Clone)]
12486pub struct _zend_arena {
12487    pub ptr: *mut ::std::os::raw::c_char,
12488    pub end: *mut ::std::os::raw::c_char,
12489    pub prev: *mut zend_arena,
12490}
12491#[test]
12492fn bindgen_test_layout__zend_arena() {
12493    assert_eq!(
12494        ::std::mem::size_of::<_zend_arena>(),
12495        24usize,
12496        concat!("Size of: ", stringify!(_zend_arena))
12497    );
12498    assert_eq!(
12499        ::std::mem::align_of::<_zend_arena>(),
12500        8usize,
12501        concat!("Alignment of ", stringify!(_zend_arena))
12502    );
12503    assert_eq!(
12504        unsafe { &(*(::std::ptr::null::<_zend_arena>())).ptr as *const _ as usize },
12505        0usize,
12506        concat!(
12507            "Offset of field: ",
12508            stringify!(_zend_arena),
12509            "::",
12510            stringify!(ptr)
12511        )
12512    );
12513    assert_eq!(
12514        unsafe { &(*(::std::ptr::null::<_zend_arena>())).end as *const _ as usize },
12515        8usize,
12516        concat!(
12517            "Offset of field: ",
12518            stringify!(_zend_arena),
12519            "::",
12520            stringify!(end)
12521        )
12522    );
12523    assert_eq!(
12524        unsafe { &(*(::std::ptr::null::<_zend_arena>())).prev as *const _ as usize },
12525        16usize,
12526        concat!(
12527            "Offset of field: ",
12528            stringify!(_zend_arena),
12529            "::",
12530            stringify!(prev)
12531        )
12532    );
12533}
12534pub type zend_vm_stack = *mut _zend_vm_stack;
12535pub type zend_ini_entry = _zend_ini_entry;
12536#[repr(C)]
12537#[derive(Copy, Clone)]
12538pub struct _zend_executor_globals {
12539    pub uninitialized_zval: zval,
12540    pub error_zval: zval,
12541    pub symtable_cache: [*mut zend_array; 32usize],
12542    pub symtable_cache_limit: *mut *mut zend_array,
12543    pub symtable_cache_ptr: *mut *mut zend_array,
12544    pub symbol_table: zend_array,
12545    pub included_files: HashTable,
12546    pub bailout: *mut jmp_buf,
12547    pub error_reporting: ::std::os::raw::c_int,
12548    pub exit_status: ::std::os::raw::c_int,
12549    pub function_table: *mut HashTable,
12550    pub class_table: *mut HashTable,
12551    pub zend_constants: *mut HashTable,
12552    pub vm_stack_top: *mut zval,
12553    pub vm_stack_end: *mut zval,
12554    pub vm_stack: zend_vm_stack,
12555    pub vm_stack_page_size: size_t,
12556    pub current_execute_data: *mut _zend_execute_data,
12557    pub fake_scope: *mut zend_class_entry,
12558    pub precision: zend_long,
12559    pub ticks_count: ::std::os::raw::c_int,
12560    pub persistent_constants_count: u32,
12561    pub persistent_functions_count: u32,
12562    pub persistent_classes_count: u32,
12563    pub in_autoload: *mut HashTable,
12564    pub autoload_func: *mut zend_function,
12565    pub full_tables_cleanup: zend_bool,
12566    pub no_extensions: zend_bool,
12567    pub vm_interrupt: zend_bool,
12568    pub timed_out: zend_bool,
12569    pub hard_timeout: zend_long,
12570    pub regular_list: HashTable,
12571    pub persistent_list: HashTable,
12572    pub user_error_handler_error_reporting: ::std::os::raw::c_int,
12573    pub user_error_handler: zval,
12574    pub user_exception_handler: zval,
12575    pub user_error_handlers_error_reporting: zend_stack,
12576    pub user_error_handlers: zend_stack,
12577    pub user_exception_handlers: zend_stack,
12578    pub error_handling: zend_error_handling_t,
12579    pub exception_class: *mut zend_class_entry,
12580    pub timeout_seconds: zend_long,
12581    pub lambda_count: ::std::os::raw::c_int,
12582    pub ini_directives: *mut HashTable,
12583    pub modified_ini_directives: *mut HashTable,
12584    pub error_reporting_ini_entry: *mut zend_ini_entry,
12585    pub objects_store: zend_objects_store,
12586    pub exception: *mut zend_object,
12587    pub prev_exception: *mut zend_object,
12588    pub opline_before_exception: *const zend_op,
12589    pub exception_op: [zend_op; 3usize],
12590    pub current_module: *mut _zend_module_entry,
12591    pub active: zend_bool,
12592    pub flags: zend_uchar,
12593    pub assertions: zend_long,
12594    pub ht_iterators_count: u32,
12595    pub ht_iterators_used: u32,
12596    pub ht_iterators: *mut HashTableIterator,
12597    pub ht_iterators_slots: [HashTableIterator; 16usize],
12598    pub saved_fpu_cw_ptr: *mut ::std::os::raw::c_void,
12599    pub trampoline: zend_function,
12600    pub call_trampoline_op: zend_op,
12601    pub each_deprecation_thrown: zend_bool,
12602    pub weakrefs: HashTable,
12603    pub exception_ignore_args: zend_bool,
12604    pub reserved: [*mut ::std::os::raw::c_void; 6usize],
12605}
12606#[test]
12607fn bindgen_test_layout__zend_executor_globals() {
12608    assert_eq!(
12609        ::std::mem::size_of::<_zend_executor_globals>(),
12610        1664usize,
12611        concat!("Size of: ", stringify!(_zend_executor_globals))
12612    );
12613    assert_eq!(
12614        ::std::mem::align_of::<_zend_executor_globals>(),
12615        8usize,
12616        concat!("Alignment of ", stringify!(_zend_executor_globals))
12617    );
12618    assert_eq!(
12619        unsafe {
12620            &(*(::std::ptr::null::<_zend_executor_globals>())).uninitialized_zval as *const _
12621                as usize
12622        },
12623        0usize,
12624        concat!(
12625            "Offset of field: ",
12626            stringify!(_zend_executor_globals),
12627            "::",
12628            stringify!(uninitialized_zval)
12629        )
12630    );
12631    assert_eq!(
12632        unsafe {
12633            &(*(::std::ptr::null::<_zend_executor_globals>())).error_zval as *const _ as usize
12634        },
12635        16usize,
12636        concat!(
12637            "Offset of field: ",
12638            stringify!(_zend_executor_globals),
12639            "::",
12640            stringify!(error_zval)
12641        )
12642    );
12643    assert_eq!(
12644        unsafe {
12645            &(*(::std::ptr::null::<_zend_executor_globals>())).symtable_cache as *const _ as usize
12646        },
12647        32usize,
12648        concat!(
12649            "Offset of field: ",
12650            stringify!(_zend_executor_globals),
12651            "::",
12652            stringify!(symtable_cache)
12653        )
12654    );
12655    assert_eq!(
12656        unsafe {
12657            &(*(::std::ptr::null::<_zend_executor_globals>())).symtable_cache_limit as *const _
12658                as usize
12659        },
12660        288usize,
12661        concat!(
12662            "Offset of field: ",
12663            stringify!(_zend_executor_globals),
12664            "::",
12665            stringify!(symtable_cache_limit)
12666        )
12667    );
12668    assert_eq!(
12669        unsafe {
12670            &(*(::std::ptr::null::<_zend_executor_globals>())).symtable_cache_ptr as *const _
12671                as usize
12672        },
12673        296usize,
12674        concat!(
12675            "Offset of field: ",
12676            stringify!(_zend_executor_globals),
12677            "::",
12678            stringify!(symtable_cache_ptr)
12679        )
12680    );
12681    assert_eq!(
12682        unsafe {
12683            &(*(::std::ptr::null::<_zend_executor_globals>())).symbol_table as *const _ as usize
12684        },
12685        304usize,
12686        concat!(
12687            "Offset of field: ",
12688            stringify!(_zend_executor_globals),
12689            "::",
12690            stringify!(symbol_table)
12691        )
12692    );
12693    assert_eq!(
12694        unsafe {
12695            &(*(::std::ptr::null::<_zend_executor_globals>())).included_files as *const _ as usize
12696        },
12697        360usize,
12698        concat!(
12699            "Offset of field: ",
12700            stringify!(_zend_executor_globals),
12701            "::",
12702            stringify!(included_files)
12703        )
12704    );
12705    assert_eq!(
12706        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).bailout as *const _ as usize },
12707        416usize,
12708        concat!(
12709            "Offset of field: ",
12710            stringify!(_zend_executor_globals),
12711            "::",
12712            stringify!(bailout)
12713        )
12714    );
12715    assert_eq!(
12716        unsafe {
12717            &(*(::std::ptr::null::<_zend_executor_globals>())).error_reporting as *const _ as usize
12718        },
12719        424usize,
12720        concat!(
12721            "Offset of field: ",
12722            stringify!(_zend_executor_globals),
12723            "::",
12724            stringify!(error_reporting)
12725        )
12726    );
12727    assert_eq!(
12728        unsafe {
12729            &(*(::std::ptr::null::<_zend_executor_globals>())).exit_status as *const _ as usize
12730        },
12731        428usize,
12732        concat!(
12733            "Offset of field: ",
12734            stringify!(_zend_executor_globals),
12735            "::",
12736            stringify!(exit_status)
12737        )
12738    );
12739    assert_eq!(
12740        unsafe {
12741            &(*(::std::ptr::null::<_zend_executor_globals>())).function_table as *const _ as usize
12742        },
12743        432usize,
12744        concat!(
12745            "Offset of field: ",
12746            stringify!(_zend_executor_globals),
12747            "::",
12748            stringify!(function_table)
12749        )
12750    );
12751    assert_eq!(
12752        unsafe {
12753            &(*(::std::ptr::null::<_zend_executor_globals>())).class_table as *const _ as usize
12754        },
12755        440usize,
12756        concat!(
12757            "Offset of field: ",
12758            stringify!(_zend_executor_globals),
12759            "::",
12760            stringify!(class_table)
12761        )
12762    );
12763    assert_eq!(
12764        unsafe {
12765            &(*(::std::ptr::null::<_zend_executor_globals>())).zend_constants as *const _ as usize
12766        },
12767        448usize,
12768        concat!(
12769            "Offset of field: ",
12770            stringify!(_zend_executor_globals),
12771            "::",
12772            stringify!(zend_constants)
12773        )
12774    );
12775    assert_eq!(
12776        unsafe {
12777            &(*(::std::ptr::null::<_zend_executor_globals>())).vm_stack_top as *const _ as usize
12778        },
12779        456usize,
12780        concat!(
12781            "Offset of field: ",
12782            stringify!(_zend_executor_globals),
12783            "::",
12784            stringify!(vm_stack_top)
12785        )
12786    );
12787    assert_eq!(
12788        unsafe {
12789            &(*(::std::ptr::null::<_zend_executor_globals>())).vm_stack_end as *const _ as usize
12790        },
12791        464usize,
12792        concat!(
12793            "Offset of field: ",
12794            stringify!(_zend_executor_globals),
12795            "::",
12796            stringify!(vm_stack_end)
12797        )
12798    );
12799    assert_eq!(
12800        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).vm_stack as *const _ as usize },
12801        472usize,
12802        concat!(
12803            "Offset of field: ",
12804            stringify!(_zend_executor_globals),
12805            "::",
12806            stringify!(vm_stack)
12807        )
12808    );
12809    assert_eq!(
12810        unsafe {
12811            &(*(::std::ptr::null::<_zend_executor_globals>())).vm_stack_page_size as *const _
12812                as usize
12813        },
12814        480usize,
12815        concat!(
12816            "Offset of field: ",
12817            stringify!(_zend_executor_globals),
12818            "::",
12819            stringify!(vm_stack_page_size)
12820        )
12821    );
12822    assert_eq!(
12823        unsafe {
12824            &(*(::std::ptr::null::<_zend_executor_globals>())).current_execute_data as *const _
12825                as usize
12826        },
12827        488usize,
12828        concat!(
12829            "Offset of field: ",
12830            stringify!(_zend_executor_globals),
12831            "::",
12832            stringify!(current_execute_data)
12833        )
12834    );
12835    assert_eq!(
12836        unsafe {
12837            &(*(::std::ptr::null::<_zend_executor_globals>())).fake_scope as *const _ as usize
12838        },
12839        496usize,
12840        concat!(
12841            "Offset of field: ",
12842            stringify!(_zend_executor_globals),
12843            "::",
12844            stringify!(fake_scope)
12845        )
12846    );
12847    assert_eq!(
12848        unsafe {
12849            &(*(::std::ptr::null::<_zend_executor_globals>())).precision as *const _ as usize
12850        },
12851        504usize,
12852        concat!(
12853            "Offset of field: ",
12854            stringify!(_zend_executor_globals),
12855            "::",
12856            stringify!(precision)
12857        )
12858    );
12859    assert_eq!(
12860        unsafe {
12861            &(*(::std::ptr::null::<_zend_executor_globals>())).ticks_count as *const _ as usize
12862        },
12863        512usize,
12864        concat!(
12865            "Offset of field: ",
12866            stringify!(_zend_executor_globals),
12867            "::",
12868            stringify!(ticks_count)
12869        )
12870    );
12871    assert_eq!(
12872        unsafe {
12873            &(*(::std::ptr::null::<_zend_executor_globals>())).persistent_constants_count
12874                as *const _ as usize
12875        },
12876        516usize,
12877        concat!(
12878            "Offset of field: ",
12879            stringify!(_zend_executor_globals),
12880            "::",
12881            stringify!(persistent_constants_count)
12882        )
12883    );
12884    assert_eq!(
12885        unsafe {
12886            &(*(::std::ptr::null::<_zend_executor_globals>())).persistent_functions_count
12887                as *const _ as usize
12888        },
12889        520usize,
12890        concat!(
12891            "Offset of field: ",
12892            stringify!(_zend_executor_globals),
12893            "::",
12894            stringify!(persistent_functions_count)
12895        )
12896    );
12897    assert_eq!(
12898        unsafe {
12899            &(*(::std::ptr::null::<_zend_executor_globals>())).persistent_classes_count as *const _
12900                as usize
12901        },
12902        524usize,
12903        concat!(
12904            "Offset of field: ",
12905            stringify!(_zend_executor_globals),
12906            "::",
12907            stringify!(persistent_classes_count)
12908        )
12909    );
12910    assert_eq!(
12911        unsafe {
12912            &(*(::std::ptr::null::<_zend_executor_globals>())).in_autoload as *const _ as usize
12913        },
12914        528usize,
12915        concat!(
12916            "Offset of field: ",
12917            stringify!(_zend_executor_globals),
12918            "::",
12919            stringify!(in_autoload)
12920        )
12921    );
12922    assert_eq!(
12923        unsafe {
12924            &(*(::std::ptr::null::<_zend_executor_globals>())).autoload_func as *const _ as usize
12925        },
12926        536usize,
12927        concat!(
12928            "Offset of field: ",
12929            stringify!(_zend_executor_globals),
12930            "::",
12931            stringify!(autoload_func)
12932        )
12933    );
12934    assert_eq!(
12935        unsafe {
12936            &(*(::std::ptr::null::<_zend_executor_globals>())).full_tables_cleanup as *const _
12937                as usize
12938        },
12939        544usize,
12940        concat!(
12941            "Offset of field: ",
12942            stringify!(_zend_executor_globals),
12943            "::",
12944            stringify!(full_tables_cleanup)
12945        )
12946    );
12947    assert_eq!(
12948        unsafe {
12949            &(*(::std::ptr::null::<_zend_executor_globals>())).no_extensions as *const _ as usize
12950        },
12951        545usize,
12952        concat!(
12953            "Offset of field: ",
12954            stringify!(_zend_executor_globals),
12955            "::",
12956            stringify!(no_extensions)
12957        )
12958    );
12959    assert_eq!(
12960        unsafe {
12961            &(*(::std::ptr::null::<_zend_executor_globals>())).vm_interrupt as *const _ as usize
12962        },
12963        546usize,
12964        concat!(
12965            "Offset of field: ",
12966            stringify!(_zend_executor_globals),
12967            "::",
12968            stringify!(vm_interrupt)
12969        )
12970    );
12971    assert_eq!(
12972        unsafe {
12973            &(*(::std::ptr::null::<_zend_executor_globals>())).timed_out as *const _ as usize
12974        },
12975        547usize,
12976        concat!(
12977            "Offset of field: ",
12978            stringify!(_zend_executor_globals),
12979            "::",
12980            stringify!(timed_out)
12981        )
12982    );
12983    assert_eq!(
12984        unsafe {
12985            &(*(::std::ptr::null::<_zend_executor_globals>())).hard_timeout as *const _ as usize
12986        },
12987        552usize,
12988        concat!(
12989            "Offset of field: ",
12990            stringify!(_zend_executor_globals),
12991            "::",
12992            stringify!(hard_timeout)
12993        )
12994    );
12995    assert_eq!(
12996        unsafe {
12997            &(*(::std::ptr::null::<_zend_executor_globals>())).regular_list as *const _ as usize
12998        },
12999        560usize,
13000        concat!(
13001            "Offset of field: ",
13002            stringify!(_zend_executor_globals),
13003            "::",
13004            stringify!(regular_list)
13005        )
13006    );
13007    assert_eq!(
13008        unsafe {
13009            &(*(::std::ptr::null::<_zend_executor_globals>())).persistent_list as *const _ as usize
13010        },
13011        616usize,
13012        concat!(
13013            "Offset of field: ",
13014            stringify!(_zend_executor_globals),
13015            "::",
13016            stringify!(persistent_list)
13017        )
13018    );
13019    assert_eq!(
13020        unsafe {
13021            &(*(::std::ptr::null::<_zend_executor_globals>())).user_error_handler_error_reporting
13022                as *const _ as usize
13023        },
13024        672usize,
13025        concat!(
13026            "Offset of field: ",
13027            stringify!(_zend_executor_globals),
13028            "::",
13029            stringify!(user_error_handler_error_reporting)
13030        )
13031    );
13032    assert_eq!(
13033        unsafe {
13034            &(*(::std::ptr::null::<_zend_executor_globals>())).user_error_handler as *const _
13035                as usize
13036        },
13037        680usize,
13038        concat!(
13039            "Offset of field: ",
13040            stringify!(_zend_executor_globals),
13041            "::",
13042            stringify!(user_error_handler)
13043        )
13044    );
13045    assert_eq!(
13046        unsafe {
13047            &(*(::std::ptr::null::<_zend_executor_globals>())).user_exception_handler as *const _
13048                as usize
13049        },
13050        696usize,
13051        concat!(
13052            "Offset of field: ",
13053            stringify!(_zend_executor_globals),
13054            "::",
13055            stringify!(user_exception_handler)
13056        )
13057    );
13058    assert_eq!(
13059        unsafe {
13060            &(*(::std::ptr::null::<_zend_executor_globals>())).user_error_handlers_error_reporting
13061                as *const _ as usize
13062        },
13063        712usize,
13064        concat!(
13065            "Offset of field: ",
13066            stringify!(_zend_executor_globals),
13067            "::",
13068            stringify!(user_error_handlers_error_reporting)
13069        )
13070    );
13071    assert_eq!(
13072        unsafe {
13073            &(*(::std::ptr::null::<_zend_executor_globals>())).user_error_handlers as *const _
13074                as usize
13075        },
13076        736usize,
13077        concat!(
13078            "Offset of field: ",
13079            stringify!(_zend_executor_globals),
13080            "::",
13081            stringify!(user_error_handlers)
13082        )
13083    );
13084    assert_eq!(
13085        unsafe {
13086            &(*(::std::ptr::null::<_zend_executor_globals>())).user_exception_handlers as *const _
13087                as usize
13088        },
13089        760usize,
13090        concat!(
13091            "Offset of field: ",
13092            stringify!(_zend_executor_globals),
13093            "::",
13094            stringify!(user_exception_handlers)
13095        )
13096    );
13097    assert_eq!(
13098        unsafe {
13099            &(*(::std::ptr::null::<_zend_executor_globals>())).error_handling as *const _ as usize
13100        },
13101        784usize,
13102        concat!(
13103            "Offset of field: ",
13104            stringify!(_zend_executor_globals),
13105            "::",
13106            stringify!(error_handling)
13107        )
13108    );
13109    assert_eq!(
13110        unsafe {
13111            &(*(::std::ptr::null::<_zend_executor_globals>())).exception_class as *const _ as usize
13112        },
13113        792usize,
13114        concat!(
13115            "Offset of field: ",
13116            stringify!(_zend_executor_globals),
13117            "::",
13118            stringify!(exception_class)
13119        )
13120    );
13121    assert_eq!(
13122        unsafe {
13123            &(*(::std::ptr::null::<_zend_executor_globals>())).timeout_seconds as *const _ as usize
13124        },
13125        800usize,
13126        concat!(
13127            "Offset of field: ",
13128            stringify!(_zend_executor_globals),
13129            "::",
13130            stringify!(timeout_seconds)
13131        )
13132    );
13133    assert_eq!(
13134        unsafe {
13135            &(*(::std::ptr::null::<_zend_executor_globals>())).lambda_count as *const _ as usize
13136        },
13137        808usize,
13138        concat!(
13139            "Offset of field: ",
13140            stringify!(_zend_executor_globals),
13141            "::",
13142            stringify!(lambda_count)
13143        )
13144    );
13145    assert_eq!(
13146        unsafe {
13147            &(*(::std::ptr::null::<_zend_executor_globals>())).ini_directives as *const _ as usize
13148        },
13149        816usize,
13150        concat!(
13151            "Offset of field: ",
13152            stringify!(_zend_executor_globals),
13153            "::",
13154            stringify!(ini_directives)
13155        )
13156    );
13157    assert_eq!(
13158        unsafe {
13159            &(*(::std::ptr::null::<_zend_executor_globals>())).modified_ini_directives as *const _
13160                as usize
13161        },
13162        824usize,
13163        concat!(
13164            "Offset of field: ",
13165            stringify!(_zend_executor_globals),
13166            "::",
13167            stringify!(modified_ini_directives)
13168        )
13169    );
13170    assert_eq!(
13171        unsafe {
13172            &(*(::std::ptr::null::<_zend_executor_globals>())).error_reporting_ini_entry as *const _
13173                as usize
13174        },
13175        832usize,
13176        concat!(
13177            "Offset of field: ",
13178            stringify!(_zend_executor_globals),
13179            "::",
13180            stringify!(error_reporting_ini_entry)
13181        )
13182    );
13183    assert_eq!(
13184        unsafe {
13185            &(*(::std::ptr::null::<_zend_executor_globals>())).objects_store as *const _ as usize
13186        },
13187        840usize,
13188        concat!(
13189            "Offset of field: ",
13190            stringify!(_zend_executor_globals),
13191            "::",
13192            stringify!(objects_store)
13193        )
13194    );
13195    assert_eq!(
13196        unsafe {
13197            &(*(::std::ptr::null::<_zend_executor_globals>())).exception as *const _ as usize
13198        },
13199        864usize,
13200        concat!(
13201            "Offset of field: ",
13202            stringify!(_zend_executor_globals),
13203            "::",
13204            stringify!(exception)
13205        )
13206    );
13207    assert_eq!(
13208        unsafe {
13209            &(*(::std::ptr::null::<_zend_executor_globals>())).prev_exception as *const _ as usize
13210        },
13211        872usize,
13212        concat!(
13213            "Offset of field: ",
13214            stringify!(_zend_executor_globals),
13215            "::",
13216            stringify!(prev_exception)
13217        )
13218    );
13219    assert_eq!(
13220        unsafe {
13221            &(*(::std::ptr::null::<_zend_executor_globals>())).opline_before_exception as *const _
13222                as usize
13223        },
13224        880usize,
13225        concat!(
13226            "Offset of field: ",
13227            stringify!(_zend_executor_globals),
13228            "::",
13229            stringify!(opline_before_exception)
13230        )
13231    );
13232    assert_eq!(
13233        unsafe {
13234            &(*(::std::ptr::null::<_zend_executor_globals>())).exception_op as *const _ as usize
13235        },
13236        888usize,
13237        concat!(
13238            "Offset of field: ",
13239            stringify!(_zend_executor_globals),
13240            "::",
13241            stringify!(exception_op)
13242        )
13243    );
13244    assert_eq!(
13245        unsafe {
13246            &(*(::std::ptr::null::<_zend_executor_globals>())).current_module as *const _ as usize
13247        },
13248        984usize,
13249        concat!(
13250            "Offset of field: ",
13251            stringify!(_zend_executor_globals),
13252            "::",
13253            stringify!(current_module)
13254        )
13255    );
13256    assert_eq!(
13257        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).active as *const _ as usize },
13258        992usize,
13259        concat!(
13260            "Offset of field: ",
13261            stringify!(_zend_executor_globals),
13262            "::",
13263            stringify!(active)
13264        )
13265    );
13266    assert_eq!(
13267        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).flags as *const _ as usize },
13268        993usize,
13269        concat!(
13270            "Offset of field: ",
13271            stringify!(_zend_executor_globals),
13272            "::",
13273            stringify!(flags)
13274        )
13275    );
13276    assert_eq!(
13277        unsafe {
13278            &(*(::std::ptr::null::<_zend_executor_globals>())).assertions as *const _ as usize
13279        },
13280        1000usize,
13281        concat!(
13282            "Offset of field: ",
13283            stringify!(_zend_executor_globals),
13284            "::",
13285            stringify!(assertions)
13286        )
13287    );
13288    assert_eq!(
13289        unsafe {
13290            &(*(::std::ptr::null::<_zend_executor_globals>())).ht_iterators_count as *const _
13291                as usize
13292        },
13293        1008usize,
13294        concat!(
13295            "Offset of field: ",
13296            stringify!(_zend_executor_globals),
13297            "::",
13298            stringify!(ht_iterators_count)
13299        )
13300    );
13301    assert_eq!(
13302        unsafe {
13303            &(*(::std::ptr::null::<_zend_executor_globals>())).ht_iterators_used as *const _
13304                as usize
13305        },
13306        1012usize,
13307        concat!(
13308            "Offset of field: ",
13309            stringify!(_zend_executor_globals),
13310            "::",
13311            stringify!(ht_iterators_used)
13312        )
13313    );
13314    assert_eq!(
13315        unsafe {
13316            &(*(::std::ptr::null::<_zend_executor_globals>())).ht_iterators as *const _ as usize
13317        },
13318        1016usize,
13319        concat!(
13320            "Offset of field: ",
13321            stringify!(_zend_executor_globals),
13322            "::",
13323            stringify!(ht_iterators)
13324        )
13325    );
13326    assert_eq!(
13327        unsafe {
13328            &(*(::std::ptr::null::<_zend_executor_globals>())).ht_iterators_slots as *const _
13329                as usize
13330        },
13331        1024usize,
13332        concat!(
13333            "Offset of field: ",
13334            stringify!(_zend_executor_globals),
13335            "::",
13336            stringify!(ht_iterators_slots)
13337        )
13338    );
13339    assert_eq!(
13340        unsafe {
13341            &(*(::std::ptr::null::<_zend_executor_globals>())).saved_fpu_cw_ptr as *const _ as usize
13342        },
13343        1280usize,
13344        concat!(
13345            "Offset of field: ",
13346            stringify!(_zend_executor_globals),
13347            "::",
13348            stringify!(saved_fpu_cw_ptr)
13349        )
13350    );
13351    assert_eq!(
13352        unsafe {
13353            &(*(::std::ptr::null::<_zend_executor_globals>())).trampoline as *const _ as usize
13354        },
13355        1288usize,
13356        concat!(
13357            "Offset of field: ",
13358            stringify!(_zend_executor_globals),
13359            "::",
13360            stringify!(trampoline)
13361        )
13362    );
13363    assert_eq!(
13364        unsafe {
13365            &(*(::std::ptr::null::<_zend_executor_globals>())).call_trampoline_op as *const _
13366                as usize
13367        },
13368        1512usize,
13369        concat!(
13370            "Offset of field: ",
13371            stringify!(_zend_executor_globals),
13372            "::",
13373            stringify!(call_trampoline_op)
13374        )
13375    );
13376    assert_eq!(
13377        unsafe {
13378            &(*(::std::ptr::null::<_zend_executor_globals>())).each_deprecation_thrown as *const _
13379                as usize
13380        },
13381        1544usize,
13382        concat!(
13383            "Offset of field: ",
13384            stringify!(_zend_executor_globals),
13385            "::",
13386            stringify!(each_deprecation_thrown)
13387        )
13388    );
13389    assert_eq!(
13390        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).weakrefs as *const _ as usize },
13391        1552usize,
13392        concat!(
13393            "Offset of field: ",
13394            stringify!(_zend_executor_globals),
13395            "::",
13396            stringify!(weakrefs)
13397        )
13398    );
13399    assert_eq!(
13400        unsafe {
13401            &(*(::std::ptr::null::<_zend_executor_globals>())).exception_ignore_args as *const _
13402                as usize
13403        },
13404        1608usize,
13405        concat!(
13406            "Offset of field: ",
13407            stringify!(_zend_executor_globals),
13408            "::",
13409            stringify!(exception_ignore_args)
13410        )
13411    );
13412    assert_eq!(
13413        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).reserved as *const _ as usize },
13414        1616usize,
13415        concat!(
13416            "Offset of field: ",
13417            stringify!(_zend_executor_globals),
13418            "::",
13419            stringify!(reserved)
13420        )
13421    );
13422}
13423#[repr(C)]
13424#[derive(Debug, Copy, Clone)]
13425pub struct _zend_ini_scanner_globals {
13426    pub yy_in: *mut zend_file_handle,
13427    pub yy_out: *mut zend_file_handle,
13428    pub yy_leng: ::std::os::raw::c_uint,
13429    pub yy_start: *mut ::std::os::raw::c_uchar,
13430    pub yy_text: *mut ::std::os::raw::c_uchar,
13431    pub yy_cursor: *mut ::std::os::raw::c_uchar,
13432    pub yy_marker: *mut ::std::os::raw::c_uchar,
13433    pub yy_limit: *mut ::std::os::raw::c_uchar,
13434    pub yy_state: ::std::os::raw::c_int,
13435    pub state_stack: zend_stack,
13436    pub filename: *mut ::std::os::raw::c_char,
13437    pub lineno: ::std::os::raw::c_int,
13438    pub scanner_mode: ::std::os::raw::c_int,
13439}
13440#[test]
13441fn bindgen_test_layout__zend_ini_scanner_globals() {
13442    assert_eq!(
13443        ::std::mem::size_of::<_zend_ini_scanner_globals>(),
13444        112usize,
13445        concat!("Size of: ", stringify!(_zend_ini_scanner_globals))
13446    );
13447    assert_eq!(
13448        ::std::mem::align_of::<_zend_ini_scanner_globals>(),
13449        8usize,
13450        concat!("Alignment of ", stringify!(_zend_ini_scanner_globals))
13451    );
13452    assert_eq!(
13453        unsafe { &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_in as *const _ as usize },
13454        0usize,
13455        concat!(
13456            "Offset of field: ",
13457            stringify!(_zend_ini_scanner_globals),
13458            "::",
13459            stringify!(yy_in)
13460        )
13461    );
13462    assert_eq!(
13463        unsafe {
13464            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_out as *const _ as usize
13465        },
13466        8usize,
13467        concat!(
13468            "Offset of field: ",
13469            stringify!(_zend_ini_scanner_globals),
13470            "::",
13471            stringify!(yy_out)
13472        )
13473    );
13474    assert_eq!(
13475        unsafe {
13476            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_leng as *const _ as usize
13477        },
13478        16usize,
13479        concat!(
13480            "Offset of field: ",
13481            stringify!(_zend_ini_scanner_globals),
13482            "::",
13483            stringify!(yy_leng)
13484        )
13485    );
13486    assert_eq!(
13487        unsafe {
13488            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_start as *const _ as usize
13489        },
13490        24usize,
13491        concat!(
13492            "Offset of field: ",
13493            stringify!(_zend_ini_scanner_globals),
13494            "::",
13495            stringify!(yy_start)
13496        )
13497    );
13498    assert_eq!(
13499        unsafe {
13500            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_text as *const _ as usize
13501        },
13502        32usize,
13503        concat!(
13504            "Offset of field: ",
13505            stringify!(_zend_ini_scanner_globals),
13506            "::",
13507            stringify!(yy_text)
13508        )
13509    );
13510    assert_eq!(
13511        unsafe {
13512            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_cursor as *const _ as usize
13513        },
13514        40usize,
13515        concat!(
13516            "Offset of field: ",
13517            stringify!(_zend_ini_scanner_globals),
13518            "::",
13519            stringify!(yy_cursor)
13520        )
13521    );
13522    assert_eq!(
13523        unsafe {
13524            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_marker as *const _ as usize
13525        },
13526        48usize,
13527        concat!(
13528            "Offset of field: ",
13529            stringify!(_zend_ini_scanner_globals),
13530            "::",
13531            stringify!(yy_marker)
13532        )
13533    );
13534    assert_eq!(
13535        unsafe {
13536            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_limit as *const _ as usize
13537        },
13538        56usize,
13539        concat!(
13540            "Offset of field: ",
13541            stringify!(_zend_ini_scanner_globals),
13542            "::",
13543            stringify!(yy_limit)
13544        )
13545    );
13546    assert_eq!(
13547        unsafe {
13548            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_state as *const _ as usize
13549        },
13550        64usize,
13551        concat!(
13552            "Offset of field: ",
13553            stringify!(_zend_ini_scanner_globals),
13554            "::",
13555            stringify!(yy_state)
13556        )
13557    );
13558    assert_eq!(
13559        unsafe {
13560            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).state_stack as *const _ as usize
13561        },
13562        72usize,
13563        concat!(
13564            "Offset of field: ",
13565            stringify!(_zend_ini_scanner_globals),
13566            "::",
13567            stringify!(state_stack)
13568        )
13569    );
13570    assert_eq!(
13571        unsafe {
13572            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).filename as *const _ as usize
13573        },
13574        96usize,
13575        concat!(
13576            "Offset of field: ",
13577            stringify!(_zend_ini_scanner_globals),
13578            "::",
13579            stringify!(filename)
13580        )
13581    );
13582    assert_eq!(
13583        unsafe {
13584            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).lineno as *const _ as usize
13585        },
13586        104usize,
13587        concat!(
13588            "Offset of field: ",
13589            stringify!(_zend_ini_scanner_globals),
13590            "::",
13591            stringify!(lineno)
13592        )
13593    );
13594    assert_eq!(
13595        unsafe {
13596            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).scanner_mode as *const _ as usize
13597        },
13598        108usize,
13599        concat!(
13600            "Offset of field: ",
13601            stringify!(_zend_ini_scanner_globals),
13602            "::",
13603            stringify!(scanner_mode)
13604        )
13605    );
13606}
13607pub const zend_php_scanner_event_ON_TOKEN: zend_php_scanner_event = 0;
13608pub const zend_php_scanner_event_ON_FEEDBACK: zend_php_scanner_event = 1;
13609pub const zend_php_scanner_event_ON_STOP: zend_php_scanner_event = 2;
13610pub type zend_php_scanner_event = ::std::os::raw::c_uint;
13611#[repr(C)]
13612#[derive(Debug, Copy, Clone)]
13613pub struct _zend_php_scanner_globals {
13614    pub yy_in: *mut zend_file_handle,
13615    pub yy_out: *mut zend_file_handle,
13616    pub yy_leng: ::std::os::raw::c_uint,
13617    pub yy_start: *mut ::std::os::raw::c_uchar,
13618    pub yy_text: *mut ::std::os::raw::c_uchar,
13619    pub yy_cursor: *mut ::std::os::raw::c_uchar,
13620    pub yy_marker: *mut ::std::os::raw::c_uchar,
13621    pub yy_limit: *mut ::std::os::raw::c_uchar,
13622    pub yy_state: ::std::os::raw::c_int,
13623    pub state_stack: zend_stack,
13624    pub heredoc_label_stack: zend_ptr_stack,
13625    pub heredoc_scan_ahead: zend_bool,
13626    pub heredoc_indentation: ::std::os::raw::c_int,
13627    pub heredoc_indentation_uses_spaces: zend_bool,
13628    pub script_org: *mut ::std::os::raw::c_uchar,
13629    pub script_org_size: size_t,
13630    pub script_filtered: *mut ::std::os::raw::c_uchar,
13631    pub script_filtered_size: size_t,
13632    pub input_filter: zend_encoding_filter,
13633    pub output_filter: zend_encoding_filter,
13634    pub script_encoding: *const zend_encoding,
13635    pub scanned_string_len: ::std::os::raw::c_int,
13636    pub on_event: ::std::option::Option<
13637        unsafe extern "C" fn(
13638            event: zend_php_scanner_event,
13639            token: ::std::os::raw::c_int,
13640            line: ::std::os::raw::c_int,
13641            context: *mut ::std::os::raw::c_void,
13642        ),
13643    >,
13644    pub on_event_context: *mut ::std::os::raw::c_void,
13645}
13646#[test]
13647fn bindgen_test_layout__zend_php_scanner_globals() {
13648    assert_eq!(
13649        ::std::mem::size_of::<_zend_php_scanner_globals>(),
13650        224usize,
13651        concat!("Size of: ", stringify!(_zend_php_scanner_globals))
13652    );
13653    assert_eq!(
13654        ::std::mem::align_of::<_zend_php_scanner_globals>(),
13655        8usize,
13656        concat!("Alignment of ", stringify!(_zend_php_scanner_globals))
13657    );
13658    assert_eq!(
13659        unsafe { &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_in as *const _ as usize },
13660        0usize,
13661        concat!(
13662            "Offset of field: ",
13663            stringify!(_zend_php_scanner_globals),
13664            "::",
13665            stringify!(yy_in)
13666        )
13667    );
13668    assert_eq!(
13669        unsafe {
13670            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_out as *const _ as usize
13671        },
13672        8usize,
13673        concat!(
13674            "Offset of field: ",
13675            stringify!(_zend_php_scanner_globals),
13676            "::",
13677            stringify!(yy_out)
13678        )
13679    );
13680    assert_eq!(
13681        unsafe {
13682            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_leng as *const _ as usize
13683        },
13684        16usize,
13685        concat!(
13686            "Offset of field: ",
13687            stringify!(_zend_php_scanner_globals),
13688            "::",
13689            stringify!(yy_leng)
13690        )
13691    );
13692    assert_eq!(
13693        unsafe {
13694            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_start as *const _ as usize
13695        },
13696        24usize,
13697        concat!(
13698            "Offset of field: ",
13699            stringify!(_zend_php_scanner_globals),
13700            "::",
13701            stringify!(yy_start)
13702        )
13703    );
13704    assert_eq!(
13705        unsafe {
13706            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_text as *const _ as usize
13707        },
13708        32usize,
13709        concat!(
13710            "Offset of field: ",
13711            stringify!(_zend_php_scanner_globals),
13712            "::",
13713            stringify!(yy_text)
13714        )
13715    );
13716    assert_eq!(
13717        unsafe {
13718            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_cursor as *const _ as usize
13719        },
13720        40usize,
13721        concat!(
13722            "Offset of field: ",
13723            stringify!(_zend_php_scanner_globals),
13724            "::",
13725            stringify!(yy_cursor)
13726        )
13727    );
13728    assert_eq!(
13729        unsafe {
13730            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_marker as *const _ as usize
13731        },
13732        48usize,
13733        concat!(
13734            "Offset of field: ",
13735            stringify!(_zend_php_scanner_globals),
13736            "::",
13737            stringify!(yy_marker)
13738        )
13739    );
13740    assert_eq!(
13741        unsafe {
13742            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_limit as *const _ as usize
13743        },
13744        56usize,
13745        concat!(
13746            "Offset of field: ",
13747            stringify!(_zend_php_scanner_globals),
13748            "::",
13749            stringify!(yy_limit)
13750        )
13751    );
13752    assert_eq!(
13753        unsafe {
13754            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_state as *const _ as usize
13755        },
13756        64usize,
13757        concat!(
13758            "Offset of field: ",
13759            stringify!(_zend_php_scanner_globals),
13760            "::",
13761            stringify!(yy_state)
13762        )
13763    );
13764    assert_eq!(
13765        unsafe {
13766            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).state_stack as *const _ as usize
13767        },
13768        72usize,
13769        concat!(
13770            "Offset of field: ",
13771            stringify!(_zend_php_scanner_globals),
13772            "::",
13773            stringify!(state_stack)
13774        )
13775    );
13776    assert_eq!(
13777        unsafe {
13778            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).heredoc_label_stack as *const _
13779                as usize
13780        },
13781        96usize,
13782        concat!(
13783            "Offset of field: ",
13784            stringify!(_zend_php_scanner_globals),
13785            "::",
13786            stringify!(heredoc_label_stack)
13787        )
13788    );
13789    assert_eq!(
13790        unsafe {
13791            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).heredoc_scan_ahead as *const _
13792                as usize
13793        },
13794        128usize,
13795        concat!(
13796            "Offset of field: ",
13797            stringify!(_zend_php_scanner_globals),
13798            "::",
13799            stringify!(heredoc_scan_ahead)
13800        )
13801    );
13802    assert_eq!(
13803        unsafe {
13804            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).heredoc_indentation as *const _
13805                as usize
13806        },
13807        132usize,
13808        concat!(
13809            "Offset of field: ",
13810            stringify!(_zend_php_scanner_globals),
13811            "::",
13812            stringify!(heredoc_indentation)
13813        )
13814    );
13815    assert_eq!(
13816        unsafe {
13817            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).heredoc_indentation_uses_spaces
13818                as *const _ as usize
13819        },
13820        136usize,
13821        concat!(
13822            "Offset of field: ",
13823            stringify!(_zend_php_scanner_globals),
13824            "::",
13825            stringify!(heredoc_indentation_uses_spaces)
13826        )
13827    );
13828    assert_eq!(
13829        unsafe {
13830            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_org as *const _ as usize
13831        },
13832        144usize,
13833        concat!(
13834            "Offset of field: ",
13835            stringify!(_zend_php_scanner_globals),
13836            "::",
13837            stringify!(script_org)
13838        )
13839    );
13840    assert_eq!(
13841        unsafe {
13842            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_org_size as *const _
13843                as usize
13844        },
13845        152usize,
13846        concat!(
13847            "Offset of field: ",
13848            stringify!(_zend_php_scanner_globals),
13849            "::",
13850            stringify!(script_org_size)
13851        )
13852    );
13853    assert_eq!(
13854        unsafe {
13855            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_filtered as *const _
13856                as usize
13857        },
13858        160usize,
13859        concat!(
13860            "Offset of field: ",
13861            stringify!(_zend_php_scanner_globals),
13862            "::",
13863            stringify!(script_filtered)
13864        )
13865    );
13866    assert_eq!(
13867        unsafe {
13868            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_filtered_size as *const _
13869                as usize
13870        },
13871        168usize,
13872        concat!(
13873            "Offset of field: ",
13874            stringify!(_zend_php_scanner_globals),
13875            "::",
13876            stringify!(script_filtered_size)
13877        )
13878    );
13879    assert_eq!(
13880        unsafe {
13881            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).input_filter as *const _ as usize
13882        },
13883        176usize,
13884        concat!(
13885            "Offset of field: ",
13886            stringify!(_zend_php_scanner_globals),
13887            "::",
13888            stringify!(input_filter)
13889        )
13890    );
13891    assert_eq!(
13892        unsafe {
13893            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).output_filter as *const _ as usize
13894        },
13895        184usize,
13896        concat!(
13897            "Offset of field: ",
13898            stringify!(_zend_php_scanner_globals),
13899            "::",
13900            stringify!(output_filter)
13901        )
13902    );
13903    assert_eq!(
13904        unsafe {
13905            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_encoding as *const _
13906                as usize
13907        },
13908        192usize,
13909        concat!(
13910            "Offset of field: ",
13911            stringify!(_zend_php_scanner_globals),
13912            "::",
13913            stringify!(script_encoding)
13914        )
13915    );
13916    assert_eq!(
13917        unsafe {
13918            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).scanned_string_len as *const _
13919                as usize
13920        },
13921        200usize,
13922        concat!(
13923            "Offset of field: ",
13924            stringify!(_zend_php_scanner_globals),
13925            "::",
13926            stringify!(scanned_string_len)
13927        )
13928    );
13929    assert_eq!(
13930        unsafe {
13931            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).on_event as *const _ as usize
13932        },
13933        208usize,
13934        concat!(
13935            "Offset of field: ",
13936            stringify!(_zend_php_scanner_globals),
13937            "::",
13938            stringify!(on_event)
13939        )
13940    );
13941    assert_eq!(
13942        unsafe {
13943            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).on_event_context as *const _
13944                as usize
13945        },
13946        216usize,
13947        concat!(
13948            "Offset of field: ",
13949            stringify!(_zend_php_scanner_globals),
13950            "::",
13951            stringify!(on_event_context)
13952        )
13953    );
13954}
13955extern "C" {
13956    pub fn zend_init_compiler_data_structures();
13957}
13958extern "C" {
13959    pub fn zend_oparray_context_begin(prev_context: *mut zend_oparray_context);
13960}
13961extern "C" {
13962    pub fn zend_oparray_context_end(prev_context: *mut zend_oparray_context);
13963}
13964extern "C" {
13965    pub fn zend_file_context_begin(prev_context: *mut zend_file_context);
13966}
13967extern "C" {
13968    pub fn zend_file_context_end(prev_context: *mut zend_file_context);
13969}
13970extern "C" {
13971    pub static mut zend_compile_file: ::std::option::Option<
13972        unsafe extern "C" fn(
13973            file_handle: *mut zend_file_handle,
13974            type_: ::std::os::raw::c_int,
13975        ) -> *mut zend_op_array,
13976    >;
13977}
13978extern "C" {
13979    pub static mut zend_compile_string: ::std::option::Option<
13980        unsafe extern "C" fn(
13981            source_string: *mut zval,
13982            filename: *mut ::std::os::raw::c_char,
13983        ) -> *mut zend_op_array,
13984    >;
13985}
13986extern "C" {
13987    pub fn zend_set_compiled_filename(new_compiled_filename: *mut zend_string) -> *mut zend_string;
13988}
13989extern "C" {
13990    pub fn zend_restore_compiled_filename(original_compiled_filename: *mut zend_string);
13991}
13992extern "C" {
13993    pub fn zend_get_compiled_filename() -> *mut zend_string;
13994}
13995extern "C" {
13996    pub fn zend_get_compiled_lineno() -> ::std::os::raw::c_int;
13997}
13998extern "C" {
13999    pub fn zend_get_scanned_file_offset() -> size_t;
14000}
14001extern "C" {
14002    pub fn zend_get_compiled_variable_name(
14003        op_array: *const zend_op_array,
14004        var: u32,
14005    ) -> *mut zend_string;
14006}
14007extern "C" {
14008    pub fn zend_stop_lexing();
14009}
14010extern "C" {
14011    pub fn zend_emit_final_return(return_one: ::std::os::raw::c_int);
14012}
14013extern "C" {
14014    pub fn zend_ast_append_str(left: *mut zend_ast, right: *mut zend_ast) -> *mut zend_ast;
14015}
14016extern "C" {
14017    pub fn zend_negate_num_string(ast: *mut zend_ast) -> *mut zend_ast;
14018}
14019extern "C" {
14020    pub fn zend_add_class_modifier(flags: u32, new_flag: u32) -> u32;
14021}
14022extern "C" {
14023    pub fn zend_add_member_modifier(flags: u32, new_flag: u32) -> u32;
14024}
14025extern "C" {
14026    pub fn zend_handle_encoding_declaration(ast: *mut zend_ast) -> zend_bool;
14027}
14028extern "C" {
14029    pub fn zend_do_free(op1: *mut znode);
14030}
14031extern "C" {
14032    pub fn zend_build_delayed_early_binding_list(op_array: *const zend_op_array) -> u32;
14033}
14034extern "C" {
14035    pub fn zend_do_delayed_early_binding(
14036        op_array: *mut zend_op_array,
14037        first_early_binding_opline: u32,
14038    );
14039}
14040extern "C" {
14041    pub fn zend_do_extended_info();
14042}
14043extern "C" {
14044    pub fn zend_do_extended_fcall_begin();
14045}
14046extern "C" {
14047    pub fn zend_do_extended_fcall_end();
14048}
14049extern "C" {
14050    pub fn zend_verify_namespace();
14051}
14052extern "C" {
14053    pub fn zend_resolve_goto_label(op_array: *mut zend_op_array, opline: *mut zend_op);
14054}
14055extern "C" {
14056    pub fn zend_execute_scripts(
14057        type_: ::std::os::raw::c_int,
14058        retval: *mut zval,
14059        file_count: ::std::os::raw::c_int,
14060        ...
14061    ) -> ::std::os::raw::c_int;
14062}
14063extern "C" {
14064    pub fn zend_destroy_file_handle(file_handle: *mut zend_file_handle);
14065}
14066extern "C" {
14067    pub fn zend_cleanup_internal_class_data(ce: *mut zend_class_entry);
14068}
14069extern "C" {
14070    pub fn zend_cleanup_internal_classes();
14071}
14072extern "C" {
14073    pub fn zend_user_exception_handler();
14074}
14075extern "C" {
14076    pub fn zend_free_internal_arg_info(function: *mut zend_internal_function);
14077}
14078extern "C" {
14079    pub fn zend_function_dtor(zv: *mut zval);
14080}
14081extern "C" {
14082    pub fn zend_class_add_ref(zv: *mut zval);
14083}
14084extern "C" {
14085    pub fn zend_mangle_property_name(
14086        src1: *const ::std::os::raw::c_char,
14087        src1_length: size_t,
14088        src2: *const ::std::os::raw::c_char,
14089        src2_length: size_t,
14090        internal: ::std::os::raw::c_int,
14091    ) -> *mut zend_string;
14092}
14093extern "C" {
14094    pub fn zend_unmangle_property_name_ex(
14095        name: *const zend_string,
14096        class_name: *mut *const ::std::os::raw::c_char,
14097        prop_name: *mut *const ::std::os::raw::c_char,
14098        prop_len: *mut size_t,
14099    ) -> ::std::os::raw::c_int;
14100}
14101pub type zend_needs_live_range_cb = ::std::option::Option<
14102    unsafe extern "C" fn(op_array: *mut zend_op_array, opline: *mut zend_op) -> zend_bool,
14103>;
14104extern "C" {
14105    pub fn zend_recalc_live_ranges(
14106        op_array: *mut zend_op_array,
14107        needs_live_range: zend_needs_live_range_cb,
14108    );
14109}
14110extern "C" {
14111    pub fn zend_is_compiling() -> zend_bool;
14112}
14113extern "C" {
14114    pub fn zend_make_compiled_string_description(
14115        name: *const ::std::os::raw::c_char,
14116    ) -> *mut ::std::os::raw::c_char;
14117}
14118extern "C" {
14119    pub fn zend_initialize_class_data(ce: *mut zend_class_entry, nullify_handlers: zend_bool);
14120}
14121extern "C" {
14122    pub fn zend_get_class_fetch_type(name: *mut zend_string) -> u32;
14123}
14124extern "C" {
14125    pub fn zend_get_call_op(init_op: *const zend_op, fbc: *mut zend_function) -> zend_uchar;
14126}
14127extern "C" {
14128    pub fn zend_is_smart_branch(opline: *mut zend_op) -> ::std::os::raw::c_int;
14129}
14130pub type zend_auto_global_callback =
14131    ::std::option::Option<unsafe extern "C" fn(name: *mut zend_string) -> zend_bool>;
14132#[repr(C)]
14133#[derive(Debug, Copy, Clone)]
14134pub struct _zend_auto_global {
14135    pub name: *mut zend_string,
14136    pub auto_global_callback: zend_auto_global_callback,
14137    pub jit: zend_bool,
14138    pub armed: zend_bool,
14139}
14140#[test]
14141fn bindgen_test_layout__zend_auto_global() {
14142    assert_eq!(
14143        ::std::mem::size_of::<_zend_auto_global>(),
14144        24usize,
14145        concat!("Size of: ", stringify!(_zend_auto_global))
14146    );
14147    assert_eq!(
14148        ::std::mem::align_of::<_zend_auto_global>(),
14149        8usize,
14150        concat!("Alignment of ", stringify!(_zend_auto_global))
14151    );
14152    assert_eq!(
14153        unsafe { &(*(::std::ptr::null::<_zend_auto_global>())).name as *const _ as usize },
14154        0usize,
14155        concat!(
14156            "Offset of field: ",
14157            stringify!(_zend_auto_global),
14158            "::",
14159            stringify!(name)
14160        )
14161    );
14162    assert_eq!(
14163        unsafe {
14164            &(*(::std::ptr::null::<_zend_auto_global>())).auto_global_callback as *const _ as usize
14165        },
14166        8usize,
14167        concat!(
14168            "Offset of field: ",
14169            stringify!(_zend_auto_global),
14170            "::",
14171            stringify!(auto_global_callback)
14172        )
14173    );
14174    assert_eq!(
14175        unsafe { &(*(::std::ptr::null::<_zend_auto_global>())).jit as *const _ as usize },
14176        16usize,
14177        concat!(
14178            "Offset of field: ",
14179            stringify!(_zend_auto_global),
14180            "::",
14181            stringify!(jit)
14182        )
14183    );
14184    assert_eq!(
14185        unsafe { &(*(::std::ptr::null::<_zend_auto_global>())).armed as *const _ as usize },
14186        17usize,
14187        concat!(
14188            "Offset of field: ",
14189            stringify!(_zend_auto_global),
14190            "::",
14191            stringify!(armed)
14192        )
14193    );
14194}
14195pub type zend_auto_global = _zend_auto_global;
14196extern "C" {
14197    pub fn zend_register_auto_global(
14198        name: *mut zend_string,
14199        jit: zend_bool,
14200        auto_global_callback: zend_auto_global_callback,
14201    ) -> ::std::os::raw::c_int;
14202}
14203extern "C" {
14204    pub fn zend_activate_auto_globals();
14205}
14206extern "C" {
14207    pub fn zend_is_auto_global(name: *mut zend_string) -> zend_bool;
14208}
14209extern "C" {
14210    pub fn zend_is_auto_global_str(name: *mut ::std::os::raw::c_char, len: size_t) -> zend_bool;
14211}
14212extern "C" {
14213    pub fn zend_dirname(path: *mut ::std::os::raw::c_char, len: size_t) -> size_t;
14214}
14215extern "C" {
14216    pub fn zend_set_function_arg_flags(func: *mut zend_function);
14217}
14218extern "C" {
14219    pub fn zendlex(elem: *mut zend_parser_stack_elem) -> ::std::os::raw::c_int;
14220}
14221extern "C" {
14222    pub fn zend_assert_valid_class_name(const_name: *const zend_string);
14223}
14224extern "C" {
14225    pub fn zend_get_opcode_name(opcode: zend_uchar) -> *const ::std::os::raw::c_char;
14226}
14227extern "C" {
14228    pub fn zend_get_opcode_flags(opcode: zend_uchar) -> u32;
14229}
14230extern "C" {
14231    pub fn zend_binary_op_produces_numeric_string_error(
14232        opcode: u32,
14233        op1: *mut zval,
14234        op2: *mut zval,
14235    ) -> zend_bool;
14236}
14237pub type zend_module_entry = _zend_module_entry;
14238pub type zend_module_dep = _zend_module_dep;
14239#[repr(C)]
14240#[derive(Debug, Copy, Clone)]
14241pub struct _zend_module_entry {
14242    pub size: ::std::os::raw::c_ushort,
14243    pub zend_api: ::std::os::raw::c_uint,
14244    pub zend_debug: ::std::os::raw::c_uchar,
14245    pub zts: ::std::os::raw::c_uchar,
14246    pub ini_entry: *const _zend_ini_entry,
14247    pub deps: *const _zend_module_dep,
14248    pub name: *const ::std::os::raw::c_char,
14249    pub functions: *const _zend_function_entry,
14250    pub module_startup_func: ::std::option::Option<
14251        unsafe extern "C" fn(
14252            type_: ::std::os::raw::c_int,
14253            module_number: ::std::os::raw::c_int,
14254        ) -> ::std::os::raw::c_int,
14255    >,
14256    pub module_shutdown_func: ::std::option::Option<
14257        unsafe extern "C" fn(
14258            type_: ::std::os::raw::c_int,
14259            module_number: ::std::os::raw::c_int,
14260        ) -> ::std::os::raw::c_int,
14261    >,
14262    pub request_startup_func: ::std::option::Option<
14263        unsafe extern "C" fn(
14264            type_: ::std::os::raw::c_int,
14265            module_number: ::std::os::raw::c_int,
14266        ) -> ::std::os::raw::c_int,
14267    >,
14268    pub request_shutdown_func: ::std::option::Option<
14269        unsafe extern "C" fn(
14270            type_: ::std::os::raw::c_int,
14271            module_number: ::std::os::raw::c_int,
14272        ) -> ::std::os::raw::c_int,
14273    >,
14274    pub info_func: ::std::option::Option<unsafe extern "C" fn(zend_module: *mut zend_module_entry)>,
14275    pub version: *const ::std::os::raw::c_char,
14276    pub globals_size: size_t,
14277    pub globals_ptr: *mut ::std::os::raw::c_void,
14278    pub globals_ctor:
14279        ::std::option::Option<unsafe extern "C" fn(global: *mut ::std::os::raw::c_void)>,
14280    pub globals_dtor:
14281        ::std::option::Option<unsafe extern "C" fn(global: *mut ::std::os::raw::c_void)>,
14282    pub post_deactivate_func:
14283        ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_int>,
14284    pub module_started: ::std::os::raw::c_int,
14285    pub type_: ::std::os::raw::c_uchar,
14286    pub handle: *mut ::std::os::raw::c_void,
14287    pub module_number: ::std::os::raw::c_int,
14288    pub build_id: *const ::std::os::raw::c_char,
14289}
14290#[test]
14291fn bindgen_test_layout__zend_module_entry() {
14292    assert_eq!(
14293        ::std::mem::size_of::<_zend_module_entry>(),
14294        168usize,
14295        concat!("Size of: ", stringify!(_zend_module_entry))
14296    );
14297    assert_eq!(
14298        ::std::mem::align_of::<_zend_module_entry>(),
14299        8usize,
14300        concat!("Alignment of ", stringify!(_zend_module_entry))
14301    );
14302    assert_eq!(
14303        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).size as *const _ as usize },
14304        0usize,
14305        concat!(
14306            "Offset of field: ",
14307            stringify!(_zend_module_entry),
14308            "::",
14309            stringify!(size)
14310        )
14311    );
14312    assert_eq!(
14313        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).zend_api as *const _ as usize },
14314        4usize,
14315        concat!(
14316            "Offset of field: ",
14317            stringify!(_zend_module_entry),
14318            "::",
14319            stringify!(zend_api)
14320        )
14321    );
14322    assert_eq!(
14323        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).zend_debug as *const _ as usize },
14324        8usize,
14325        concat!(
14326            "Offset of field: ",
14327            stringify!(_zend_module_entry),
14328            "::",
14329            stringify!(zend_debug)
14330        )
14331    );
14332    assert_eq!(
14333        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).zts as *const _ as usize },
14334        9usize,
14335        concat!(
14336            "Offset of field: ",
14337            stringify!(_zend_module_entry),
14338            "::",
14339            stringify!(zts)
14340        )
14341    );
14342    assert_eq!(
14343        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).ini_entry as *const _ as usize },
14344        16usize,
14345        concat!(
14346            "Offset of field: ",
14347            stringify!(_zend_module_entry),
14348            "::",
14349            stringify!(ini_entry)
14350        )
14351    );
14352    assert_eq!(
14353        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).deps as *const _ as usize },
14354        24usize,
14355        concat!(
14356            "Offset of field: ",
14357            stringify!(_zend_module_entry),
14358            "::",
14359            stringify!(deps)
14360        )
14361    );
14362    assert_eq!(
14363        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).name as *const _ as usize },
14364        32usize,
14365        concat!(
14366            "Offset of field: ",
14367            stringify!(_zend_module_entry),
14368            "::",
14369            stringify!(name)
14370        )
14371    );
14372    assert_eq!(
14373        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).functions as *const _ as usize },
14374        40usize,
14375        concat!(
14376            "Offset of field: ",
14377            stringify!(_zend_module_entry),
14378            "::",
14379            stringify!(functions)
14380        )
14381    );
14382    assert_eq!(
14383        unsafe {
14384            &(*(::std::ptr::null::<_zend_module_entry>())).module_startup_func as *const _ as usize
14385        },
14386        48usize,
14387        concat!(
14388            "Offset of field: ",
14389            stringify!(_zend_module_entry),
14390            "::",
14391            stringify!(module_startup_func)
14392        )
14393    );
14394    assert_eq!(
14395        unsafe {
14396            &(*(::std::ptr::null::<_zend_module_entry>())).module_shutdown_func as *const _ as usize
14397        },
14398        56usize,
14399        concat!(
14400            "Offset of field: ",
14401            stringify!(_zend_module_entry),
14402            "::",
14403            stringify!(module_shutdown_func)
14404        )
14405    );
14406    assert_eq!(
14407        unsafe {
14408            &(*(::std::ptr::null::<_zend_module_entry>())).request_startup_func as *const _ as usize
14409        },
14410        64usize,
14411        concat!(
14412            "Offset of field: ",
14413            stringify!(_zend_module_entry),
14414            "::",
14415            stringify!(request_startup_func)
14416        )
14417    );
14418    assert_eq!(
14419        unsafe {
14420            &(*(::std::ptr::null::<_zend_module_entry>())).request_shutdown_func as *const _
14421                as usize
14422        },
14423        72usize,
14424        concat!(
14425            "Offset of field: ",
14426            stringify!(_zend_module_entry),
14427            "::",
14428            stringify!(request_shutdown_func)
14429        )
14430    );
14431    assert_eq!(
14432        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).info_func as *const _ as usize },
14433        80usize,
14434        concat!(
14435            "Offset of field: ",
14436            stringify!(_zend_module_entry),
14437            "::",
14438            stringify!(info_func)
14439        )
14440    );
14441    assert_eq!(
14442        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).version as *const _ as usize },
14443        88usize,
14444        concat!(
14445            "Offset of field: ",
14446            stringify!(_zend_module_entry),
14447            "::",
14448            stringify!(version)
14449        )
14450    );
14451    assert_eq!(
14452        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).globals_size as *const _ as usize },
14453        96usize,
14454        concat!(
14455            "Offset of field: ",
14456            stringify!(_zend_module_entry),
14457            "::",
14458            stringify!(globals_size)
14459        )
14460    );
14461    assert_eq!(
14462        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).globals_ptr as *const _ as usize },
14463        104usize,
14464        concat!(
14465            "Offset of field: ",
14466            stringify!(_zend_module_entry),
14467            "::",
14468            stringify!(globals_ptr)
14469        )
14470    );
14471    assert_eq!(
14472        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).globals_ctor as *const _ as usize },
14473        112usize,
14474        concat!(
14475            "Offset of field: ",
14476            stringify!(_zend_module_entry),
14477            "::",
14478            stringify!(globals_ctor)
14479        )
14480    );
14481    assert_eq!(
14482        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).globals_dtor as *const _ as usize },
14483        120usize,
14484        concat!(
14485            "Offset of field: ",
14486            stringify!(_zend_module_entry),
14487            "::",
14488            stringify!(globals_dtor)
14489        )
14490    );
14491    assert_eq!(
14492        unsafe {
14493            &(*(::std::ptr::null::<_zend_module_entry>())).post_deactivate_func as *const _ as usize
14494        },
14495        128usize,
14496        concat!(
14497            "Offset of field: ",
14498            stringify!(_zend_module_entry),
14499            "::",
14500            stringify!(post_deactivate_func)
14501        )
14502    );
14503    assert_eq!(
14504        unsafe {
14505            &(*(::std::ptr::null::<_zend_module_entry>())).module_started as *const _ as usize
14506        },
14507        136usize,
14508        concat!(
14509            "Offset of field: ",
14510            stringify!(_zend_module_entry),
14511            "::",
14512            stringify!(module_started)
14513        )
14514    );
14515    assert_eq!(
14516        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).type_ as *const _ as usize },
14517        140usize,
14518        concat!(
14519            "Offset of field: ",
14520            stringify!(_zend_module_entry),
14521            "::",
14522            stringify!(type_)
14523        )
14524    );
14525    assert_eq!(
14526        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).handle as *const _ as usize },
14527        144usize,
14528        concat!(
14529            "Offset of field: ",
14530            stringify!(_zend_module_entry),
14531            "::",
14532            stringify!(handle)
14533        )
14534    );
14535    assert_eq!(
14536        unsafe {
14537            &(*(::std::ptr::null::<_zend_module_entry>())).module_number as *const _ as usize
14538        },
14539        152usize,
14540        concat!(
14541            "Offset of field: ",
14542            stringify!(_zend_module_entry),
14543            "::",
14544            stringify!(module_number)
14545        )
14546    );
14547    assert_eq!(
14548        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).build_id as *const _ as usize },
14549        160usize,
14550        concat!(
14551            "Offset of field: ",
14552            stringify!(_zend_module_entry),
14553            "::",
14554            stringify!(build_id)
14555        )
14556    );
14557}
14558#[repr(C)]
14559#[derive(Debug, Copy, Clone)]
14560pub struct _zend_module_dep {
14561    pub name: *const ::std::os::raw::c_char,
14562    pub rel: *const ::std::os::raw::c_char,
14563    pub version: *const ::std::os::raw::c_char,
14564    pub type_: ::std::os::raw::c_uchar,
14565}
14566#[test]
14567fn bindgen_test_layout__zend_module_dep() {
14568    assert_eq!(
14569        ::std::mem::size_of::<_zend_module_dep>(),
14570        32usize,
14571        concat!("Size of: ", stringify!(_zend_module_dep))
14572    );
14573    assert_eq!(
14574        ::std::mem::align_of::<_zend_module_dep>(),
14575        8usize,
14576        concat!("Alignment of ", stringify!(_zend_module_dep))
14577    );
14578    assert_eq!(
14579        unsafe { &(*(::std::ptr::null::<_zend_module_dep>())).name as *const _ as usize },
14580        0usize,
14581        concat!(
14582            "Offset of field: ",
14583            stringify!(_zend_module_dep),
14584            "::",
14585            stringify!(name)
14586        )
14587    );
14588    assert_eq!(
14589        unsafe { &(*(::std::ptr::null::<_zend_module_dep>())).rel as *const _ as usize },
14590        8usize,
14591        concat!(
14592            "Offset of field: ",
14593            stringify!(_zend_module_dep),
14594            "::",
14595            stringify!(rel)
14596        )
14597    );
14598    assert_eq!(
14599        unsafe { &(*(::std::ptr::null::<_zend_module_dep>())).version as *const _ as usize },
14600        16usize,
14601        concat!(
14602            "Offset of field: ",
14603            stringify!(_zend_module_dep),
14604            "::",
14605            stringify!(version)
14606        )
14607    );
14608    assert_eq!(
14609        unsafe { &(*(::std::ptr::null::<_zend_module_dep>())).type_ as *const _ as usize },
14610        24usize,
14611        concat!(
14612            "Offset of field: ",
14613            stringify!(_zend_module_dep),
14614            "::",
14615            stringify!(type_)
14616        )
14617    );
14618}
14619extern "C" {
14620    pub static mut module_registry: HashTable;
14621}
14622pub type rsrc_dtor_func_t = ::std::option::Option<unsafe extern "C" fn(res: *mut zend_resource)>;
14623#[repr(C)]
14624#[derive(Debug, Copy, Clone)]
14625pub struct _zend_rsrc_list_dtors_entry {
14626    pub list_dtor_ex: rsrc_dtor_func_t,
14627    pub plist_dtor_ex: rsrc_dtor_func_t,
14628    pub type_name: *const ::std::os::raw::c_char,
14629    pub module_number: ::std::os::raw::c_int,
14630    pub resource_id: ::std::os::raw::c_int,
14631}
14632#[test]
14633fn bindgen_test_layout__zend_rsrc_list_dtors_entry() {
14634    assert_eq!(
14635        ::std::mem::size_of::<_zend_rsrc_list_dtors_entry>(),
14636        32usize,
14637        concat!("Size of: ", stringify!(_zend_rsrc_list_dtors_entry))
14638    );
14639    assert_eq!(
14640        ::std::mem::align_of::<_zend_rsrc_list_dtors_entry>(),
14641        8usize,
14642        concat!("Alignment of ", stringify!(_zend_rsrc_list_dtors_entry))
14643    );
14644    assert_eq!(
14645        unsafe {
14646            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).list_dtor_ex as *const _
14647                as usize
14648        },
14649        0usize,
14650        concat!(
14651            "Offset of field: ",
14652            stringify!(_zend_rsrc_list_dtors_entry),
14653            "::",
14654            stringify!(list_dtor_ex)
14655        )
14656    );
14657    assert_eq!(
14658        unsafe {
14659            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).plist_dtor_ex as *const _
14660                as usize
14661        },
14662        8usize,
14663        concat!(
14664            "Offset of field: ",
14665            stringify!(_zend_rsrc_list_dtors_entry),
14666            "::",
14667            stringify!(plist_dtor_ex)
14668        )
14669    );
14670    assert_eq!(
14671        unsafe {
14672            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).type_name as *const _ as usize
14673        },
14674        16usize,
14675        concat!(
14676            "Offset of field: ",
14677            stringify!(_zend_rsrc_list_dtors_entry),
14678            "::",
14679            stringify!(type_name)
14680        )
14681    );
14682    assert_eq!(
14683        unsafe {
14684            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).module_number as *const _
14685                as usize
14686        },
14687        24usize,
14688        concat!(
14689            "Offset of field: ",
14690            stringify!(_zend_rsrc_list_dtors_entry),
14691            "::",
14692            stringify!(module_number)
14693        )
14694    );
14695    assert_eq!(
14696        unsafe {
14697            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).resource_id as *const _ as usize
14698        },
14699        28usize,
14700        concat!(
14701            "Offset of field: ",
14702            stringify!(_zend_rsrc_list_dtors_entry),
14703            "::",
14704            stringify!(resource_id)
14705        )
14706    );
14707}
14708pub type zend_rsrc_list_dtors_entry = _zend_rsrc_list_dtors_entry;
14709extern "C" {
14710    pub fn zend_register_list_destructors_ex(
14711        ld: rsrc_dtor_func_t,
14712        pld: rsrc_dtor_func_t,
14713        type_name: *const ::std::os::raw::c_char,
14714        module_number: ::std::os::raw::c_int,
14715    ) -> ::std::os::raw::c_int;
14716}
14717extern "C" {
14718    pub fn zend_clean_module_rsrc_dtors(module_number: ::std::os::raw::c_int);
14719}
14720extern "C" {
14721    pub fn zend_init_rsrc_list() -> ::std::os::raw::c_int;
14722}
14723extern "C" {
14724    pub fn zend_init_rsrc_plist() -> ::std::os::raw::c_int;
14725}
14726extern "C" {
14727    pub fn zend_close_rsrc_list(ht: *mut HashTable);
14728}
14729extern "C" {
14730    pub fn zend_destroy_rsrc_list(ht: *mut HashTable);
14731}
14732extern "C" {
14733    pub fn zend_init_rsrc_list_dtors() -> ::std::os::raw::c_int;
14734}
14735extern "C" {
14736    pub fn zend_destroy_rsrc_list_dtors();
14737}
14738extern "C" {
14739    pub fn zend_list_insert(
14740        ptr: *mut ::std::os::raw::c_void,
14741        type_: ::std::os::raw::c_int,
14742    ) -> *mut zval;
14743}
14744extern "C" {
14745    pub fn zend_list_free(res: *mut zend_resource) -> ::std::os::raw::c_int;
14746}
14747extern "C" {
14748    pub fn zend_list_delete(res: *mut zend_resource) -> ::std::os::raw::c_int;
14749}
14750extern "C" {
14751    pub fn zend_list_close(res: *mut zend_resource) -> ::std::os::raw::c_int;
14752}
14753extern "C" {
14754    pub fn zend_register_resource(
14755        rsrc_pointer: *mut ::std::os::raw::c_void,
14756        rsrc_type: ::std::os::raw::c_int,
14757    ) -> *mut zend_resource;
14758}
14759extern "C" {
14760    pub fn zend_fetch_resource(
14761        res: *mut zend_resource,
14762        resource_type_name: *const ::std::os::raw::c_char,
14763        resource_type: ::std::os::raw::c_int,
14764    ) -> *mut ::std::os::raw::c_void;
14765}
14766extern "C" {
14767    pub fn zend_fetch_resource2(
14768        res: *mut zend_resource,
14769        resource_type_name: *const ::std::os::raw::c_char,
14770        resource_type: ::std::os::raw::c_int,
14771        resource_type2: ::std::os::raw::c_int,
14772    ) -> *mut ::std::os::raw::c_void;
14773}
14774extern "C" {
14775    pub fn zend_fetch_resource_ex(
14776        res: *mut zval,
14777        resource_type_name: *const ::std::os::raw::c_char,
14778        resource_type: ::std::os::raw::c_int,
14779    ) -> *mut ::std::os::raw::c_void;
14780}
14781extern "C" {
14782    pub fn zend_fetch_resource2_ex(
14783        res: *mut zval,
14784        resource_type_name: *const ::std::os::raw::c_char,
14785        resource_type: ::std::os::raw::c_int,
14786        resource_type2: ::std::os::raw::c_int,
14787    ) -> *mut ::std::os::raw::c_void;
14788}
14789extern "C" {
14790    pub fn zend_rsrc_list_get_rsrc_type(res: *mut zend_resource) -> *const ::std::os::raw::c_char;
14791}
14792extern "C" {
14793    pub fn zend_fetch_list_dtor_id(
14794        type_name: *const ::std::os::raw::c_char,
14795    ) -> ::std::os::raw::c_int;
14796}
14797extern "C" {
14798    pub fn zend_register_persistent_resource(
14799        key: *const ::std::os::raw::c_char,
14800        key_len: size_t,
14801        rsrc_pointer: *mut ::std::os::raw::c_void,
14802        rsrc_type: ::std::os::raw::c_int,
14803    ) -> *mut zend_resource;
14804}
14805extern "C" {
14806    pub fn zend_register_persistent_resource_ex(
14807        key: *mut zend_string,
14808        rsrc_pointer: *mut ::std::os::raw::c_void,
14809        rsrc_type: ::std::os::raw::c_int,
14810    ) -> *mut zend_resource;
14811}
14812extern "C" {
14813    pub static mut zend_execute_ex:
14814        ::std::option::Option<unsafe extern "C" fn(execute_data: *mut zend_execute_data)>;
14815}
14816extern "C" {
14817    pub static mut zend_execute_internal: ::std::option::Option<
14818        unsafe extern "C" fn(execute_data: *mut zend_execute_data, return_value: *mut zval),
14819    >;
14820}
14821extern "C" {
14822    pub fn zend_init_execute_data(
14823        execute_data: *mut zend_execute_data,
14824        op_array: *mut zend_op_array,
14825        return_value: *mut zval,
14826    );
14827}
14828extern "C" {
14829    pub fn zend_init_func_execute_data(
14830        execute_data: *mut zend_execute_data,
14831        op_array: *mut zend_op_array,
14832        return_value: *mut zval,
14833    );
14834}
14835extern "C" {
14836    pub fn zend_init_code_execute_data(
14837        execute_data: *mut zend_execute_data,
14838        op_array: *mut zend_op_array,
14839        return_value: *mut zval,
14840    );
14841}
14842extern "C" {
14843    pub fn zend_execute(op_array: *mut zend_op_array, return_value: *mut zval);
14844}
14845extern "C" {
14846    pub fn zend_lookup_class(name: *mut zend_string) -> *mut zend_class_entry;
14847}
14848extern "C" {
14849    pub fn zend_lookup_class_ex(
14850        name: *mut zend_string,
14851        lcname: *mut zend_string,
14852        flags: u32,
14853    ) -> *mut zend_class_entry;
14854}
14855extern "C" {
14856    pub fn zend_get_called_scope(ex: *mut zend_execute_data) -> *mut zend_class_entry;
14857}
14858extern "C" {
14859    pub fn zend_get_this_object(ex: *mut zend_execute_data) -> *mut zend_object;
14860}
14861extern "C" {
14862    pub fn zend_eval_string(
14863        str_: *mut ::std::os::raw::c_char,
14864        retval_ptr: *mut zval,
14865        string_name: *mut ::std::os::raw::c_char,
14866    ) -> ::std::os::raw::c_int;
14867}
14868extern "C" {
14869    pub fn zend_eval_stringl(
14870        str_: *mut ::std::os::raw::c_char,
14871        str_len: size_t,
14872        retval_ptr: *mut zval,
14873        string_name: *mut ::std::os::raw::c_char,
14874    ) -> ::std::os::raw::c_int;
14875}
14876extern "C" {
14877    pub fn zend_eval_string_ex(
14878        str_: *mut ::std::os::raw::c_char,
14879        retval_ptr: *mut zval,
14880        string_name: *mut ::std::os::raw::c_char,
14881        handle_exceptions: ::std::os::raw::c_int,
14882    ) -> ::std::os::raw::c_int;
14883}
14884extern "C" {
14885    pub fn zend_eval_stringl_ex(
14886        str_: *mut ::std::os::raw::c_char,
14887        str_len: size_t,
14888        retval_ptr: *mut zval,
14889        string_name: *mut ::std::os::raw::c_char,
14890        handle_exceptions: ::std::os::raw::c_int,
14891    ) -> ::std::os::raw::c_int;
14892}
14893extern "C" {
14894    pub static zend_pass_function: zend_internal_function;
14895}
14896extern "C" {
14897    pub fn zend_missing_arg_error(execute_data: *mut zend_execute_data);
14898}
14899extern "C" {
14900    pub fn zend_verify_ref_assignable_zval(
14901        ref_: *mut zend_reference,
14902        zv: *mut zval,
14903        strict: zend_bool,
14904    ) -> zend_bool;
14905}
14906extern "C" {
14907    pub fn zend_verify_prop_assignable_by_ref(
14908        prop_info: *mut zend_property_info,
14909        orig_val: *mut zval,
14910        strict: zend_bool,
14911    ) -> zend_bool;
14912}
14913extern "C" {
14914    pub fn zend_throw_ref_type_error_zval(prop: *mut zend_property_info, zv: *mut zval);
14915}
14916extern "C" {
14917    pub fn zend_throw_ref_type_error_type(
14918        prop1: *mut zend_property_info,
14919        prop2: *mut zend_property_info,
14920        zv: *mut zval,
14921    );
14922}
14923extern "C" {
14924    pub fn zend_ref_add_type_source(
14925        source_list: *mut zend_property_info_source_list,
14926        prop: *mut zend_property_info,
14927    );
14928}
14929extern "C" {
14930    pub fn zend_ref_del_type_source(
14931        source_list: *mut zend_property_info_source_list,
14932        prop: *mut zend_property_info,
14933    );
14934}
14935extern "C" {
14936    pub fn zend_assign_to_typed_ref(
14937        variable_ptr: *mut zval,
14938        value: *mut zval,
14939        value_type: zend_uchar,
14940        strict: zend_bool,
14941        ref_: *mut zend_refcounted,
14942    ) -> *mut zval;
14943}
14944extern "C" {
14945    pub fn zend_use_undefined_constant(
14946        name: *mut zend_string,
14947        attr: zend_ast_attr,
14948        result: *mut zval,
14949    ) -> ::std::os::raw::c_int;
14950}
14951#[repr(C)]
14952#[derive(Debug, Copy, Clone)]
14953pub struct _zend_vm_stack {
14954    pub top: *mut zval,
14955    pub end: *mut zval,
14956    pub prev: zend_vm_stack,
14957}
14958#[test]
14959fn bindgen_test_layout__zend_vm_stack() {
14960    assert_eq!(
14961        ::std::mem::size_of::<_zend_vm_stack>(),
14962        24usize,
14963        concat!("Size of: ", stringify!(_zend_vm_stack))
14964    );
14965    assert_eq!(
14966        ::std::mem::align_of::<_zend_vm_stack>(),
14967        8usize,
14968        concat!("Alignment of ", stringify!(_zend_vm_stack))
14969    );
14970    assert_eq!(
14971        unsafe { &(*(::std::ptr::null::<_zend_vm_stack>())).top as *const _ as usize },
14972        0usize,
14973        concat!(
14974            "Offset of field: ",
14975            stringify!(_zend_vm_stack),
14976            "::",
14977            stringify!(top)
14978        )
14979    );
14980    assert_eq!(
14981        unsafe { &(*(::std::ptr::null::<_zend_vm_stack>())).end as *const _ as usize },
14982        8usize,
14983        concat!(
14984            "Offset of field: ",
14985            stringify!(_zend_vm_stack),
14986            "::",
14987            stringify!(end)
14988        )
14989    );
14990    assert_eq!(
14991        unsafe { &(*(::std::ptr::null::<_zend_vm_stack>())).prev as *const _ as usize },
14992        16usize,
14993        concat!(
14994            "Offset of field: ",
14995            stringify!(_zend_vm_stack),
14996            "::",
14997            stringify!(prev)
14998        )
14999    );
15000}
15001extern "C" {
15002    pub fn zend_vm_stack_init();
15003}
15004extern "C" {
15005    pub fn zend_vm_stack_init_ex(page_size: size_t);
15006}
15007extern "C" {
15008    pub fn zend_vm_stack_destroy();
15009}
15010extern "C" {
15011    pub fn zend_vm_stack_extend(size: size_t) -> *mut ::std::os::raw::c_void;
15012}
15013extern "C" {
15014    pub fn zend_get_executed_filename() -> *const ::std::os::raw::c_char;
15015}
15016extern "C" {
15017    pub fn zend_get_executed_filename_ex() -> *mut zend_string;
15018}
15019extern "C" {
15020    pub fn zend_get_executed_lineno() -> u32;
15021}
15022extern "C" {
15023    pub fn zend_get_executed_scope() -> *mut zend_class_entry;
15024}
15025extern "C" {
15026    pub fn zend_is_executing() -> zend_bool;
15027}
15028extern "C" {
15029    pub fn zend_set_timeout(seconds: zend_long, reset_signals: ::std::os::raw::c_int);
15030}
15031extern "C" {
15032    pub fn zend_unset_timeout();
15033}
15034extern "C" {
15035    pub fn zend_timeout(dummy: ::std::os::raw::c_int);
15036}
15037extern "C" {
15038    pub fn zend_fetch_class(
15039        class_name: *mut zend_string,
15040        fetch_type: ::std::os::raw::c_int,
15041    ) -> *mut zend_class_entry;
15042}
15043extern "C" {
15044    pub fn zend_fetch_class_by_name(
15045        class_name: *mut zend_string,
15046        lcname: *mut zend_string,
15047        fetch_type: ::std::os::raw::c_int,
15048    ) -> *mut zend_class_entry;
15049}
15050extern "C" {
15051    pub fn zend_fetch_function(name: *mut zend_string) -> *mut zend_function;
15052}
15053extern "C" {
15054    pub fn zend_fetch_function_str(
15055        name: *const ::std::os::raw::c_char,
15056        len: size_t,
15057    ) -> *mut zend_function;
15058}
15059extern "C" {
15060    pub fn zend_init_func_run_time_cache(op_array: *mut zend_op_array);
15061}
15062extern "C" {
15063    pub fn zend_fetch_dimension_const(
15064        result: *mut zval,
15065        container: *mut zval,
15066        dim: *mut zval,
15067        type_: ::std::os::raw::c_int,
15068    );
15069}
15070extern "C" {
15071    pub fn zend_get_compiled_variable_value(
15072        execute_data_ptr: *const zend_execute_data,
15073        var: u32,
15074    ) -> *mut zval;
15075}
15076extern "C" {
15077    pub fn zend_set_user_opcode_handler(
15078        opcode: zend_uchar,
15079        handler: user_opcode_handler_t,
15080    ) -> ::std::os::raw::c_int;
15081}
15082extern "C" {
15083    pub fn zend_get_user_opcode_handler(opcode: zend_uchar) -> user_opcode_handler_t;
15084}
15085pub type zend_free_op = *mut zval;
15086extern "C" {
15087    pub fn zend_get_zval_ptr(
15088        opline: *const zend_op,
15089        op_type: ::std::os::raw::c_int,
15090        node: *const znode_op,
15091        execute_data: *const zend_execute_data,
15092        should_free: *mut zend_free_op,
15093        type_: ::std::os::raw::c_int,
15094    ) -> *mut zval;
15095}
15096extern "C" {
15097    pub fn zend_clean_and_cache_symbol_table(symbol_table: *mut zend_array);
15098}
15099extern "C" {
15100    pub fn zend_free_compiled_variables(execute_data: *mut zend_execute_data);
15101}
15102extern "C" {
15103    pub fn zend_cleanup_unfinished_execution(
15104        execute_data: *mut zend_execute_data,
15105        op_num: u32,
15106        catch_op_num: u32,
15107    );
15108}
15109extern "C" {
15110    pub fn zend_verify_property_type(
15111        info: *mut zend_property_info,
15112        property: *mut zval,
15113        strict: zend_bool,
15114    ) -> zend_bool;
15115}
15116extern "C" {
15117    pub fn zend_verify_property_type_error(info: *mut zend_property_info, property: *mut zval);
15118}
15119#[repr(C)]
15120#[derive(Debug, Copy, Clone)]
15121pub struct _zend_function_entry {
15122    pub fname: *const ::std::os::raw::c_char,
15123    pub handler: zif_handler,
15124    pub arg_info: *const _zend_internal_arg_info,
15125    pub num_args: u32,
15126    pub flags: u32,
15127}
15128#[test]
15129fn bindgen_test_layout__zend_function_entry() {
15130    assert_eq!(
15131        ::std::mem::size_of::<_zend_function_entry>(),
15132        32usize,
15133        concat!("Size of: ", stringify!(_zend_function_entry))
15134    );
15135    assert_eq!(
15136        ::std::mem::align_of::<_zend_function_entry>(),
15137        8usize,
15138        concat!("Alignment of ", stringify!(_zend_function_entry))
15139    );
15140    assert_eq!(
15141        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).fname as *const _ as usize },
15142        0usize,
15143        concat!(
15144            "Offset of field: ",
15145            stringify!(_zend_function_entry),
15146            "::",
15147            stringify!(fname)
15148        )
15149    );
15150    assert_eq!(
15151        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).handler as *const _ as usize },
15152        8usize,
15153        concat!(
15154            "Offset of field: ",
15155            stringify!(_zend_function_entry),
15156            "::",
15157            stringify!(handler)
15158        )
15159    );
15160    assert_eq!(
15161        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).arg_info as *const _ as usize },
15162        16usize,
15163        concat!(
15164            "Offset of field: ",
15165            stringify!(_zend_function_entry),
15166            "::",
15167            stringify!(arg_info)
15168        )
15169    );
15170    assert_eq!(
15171        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).num_args as *const _ as usize },
15172        24usize,
15173        concat!(
15174            "Offset of field: ",
15175            stringify!(_zend_function_entry),
15176            "::",
15177            stringify!(num_args)
15178        )
15179    );
15180    assert_eq!(
15181        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).flags as *const _ as usize },
15182        28usize,
15183        concat!(
15184            "Offset of field: ",
15185            stringify!(_zend_function_entry),
15186            "::",
15187            stringify!(flags)
15188        )
15189    );
15190}
15191pub type zend_function_entry = _zend_function_entry;
15192#[repr(C)]
15193#[derive(Copy, Clone)]
15194pub struct _zend_fcall_info {
15195    pub size: size_t,
15196    pub function_name: zval,
15197    pub retval: *mut zval,
15198    pub params: *mut zval,
15199    pub object: *mut zend_object,
15200    pub no_separation: zend_bool,
15201    pub param_count: u32,
15202}
15203#[test]
15204fn bindgen_test_layout__zend_fcall_info() {
15205    assert_eq!(
15206        ::std::mem::size_of::<_zend_fcall_info>(),
15207        56usize,
15208        concat!("Size of: ", stringify!(_zend_fcall_info))
15209    );
15210    assert_eq!(
15211        ::std::mem::align_of::<_zend_fcall_info>(),
15212        8usize,
15213        concat!("Alignment of ", stringify!(_zend_fcall_info))
15214    );
15215    assert_eq!(
15216        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).size as *const _ as usize },
15217        0usize,
15218        concat!(
15219            "Offset of field: ",
15220            stringify!(_zend_fcall_info),
15221            "::",
15222            stringify!(size)
15223        )
15224    );
15225    assert_eq!(
15226        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).function_name as *const _ as usize },
15227        8usize,
15228        concat!(
15229            "Offset of field: ",
15230            stringify!(_zend_fcall_info),
15231            "::",
15232            stringify!(function_name)
15233        )
15234    );
15235    assert_eq!(
15236        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).retval as *const _ as usize },
15237        24usize,
15238        concat!(
15239            "Offset of field: ",
15240            stringify!(_zend_fcall_info),
15241            "::",
15242            stringify!(retval)
15243        )
15244    );
15245    assert_eq!(
15246        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).params as *const _ as usize },
15247        32usize,
15248        concat!(
15249            "Offset of field: ",
15250            stringify!(_zend_fcall_info),
15251            "::",
15252            stringify!(params)
15253        )
15254    );
15255    assert_eq!(
15256        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).object as *const _ as usize },
15257        40usize,
15258        concat!(
15259            "Offset of field: ",
15260            stringify!(_zend_fcall_info),
15261            "::",
15262            stringify!(object)
15263        )
15264    );
15265    assert_eq!(
15266        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).no_separation as *const _ as usize },
15267        48usize,
15268        concat!(
15269            "Offset of field: ",
15270            stringify!(_zend_fcall_info),
15271            "::",
15272            stringify!(no_separation)
15273        )
15274    );
15275    assert_eq!(
15276        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).param_count as *const _ as usize },
15277        52usize,
15278        concat!(
15279            "Offset of field: ",
15280            stringify!(_zend_fcall_info),
15281            "::",
15282            stringify!(param_count)
15283        )
15284    );
15285}
15286pub type zend_fcall_info = _zend_fcall_info;
15287#[repr(C)]
15288#[derive(Debug, Copy, Clone)]
15289pub struct _zend_fcall_info_cache {
15290    pub function_handler: *mut zend_function,
15291    pub calling_scope: *mut zend_class_entry,
15292    pub called_scope: *mut zend_class_entry,
15293    pub object: *mut zend_object,
15294}
15295#[test]
15296fn bindgen_test_layout__zend_fcall_info_cache() {
15297    assert_eq!(
15298        ::std::mem::size_of::<_zend_fcall_info_cache>(),
15299        32usize,
15300        concat!("Size of: ", stringify!(_zend_fcall_info_cache))
15301    );
15302    assert_eq!(
15303        ::std::mem::align_of::<_zend_fcall_info_cache>(),
15304        8usize,
15305        concat!("Alignment of ", stringify!(_zend_fcall_info_cache))
15306    );
15307    assert_eq!(
15308        unsafe {
15309            &(*(::std::ptr::null::<_zend_fcall_info_cache>())).function_handler as *const _ as usize
15310        },
15311        0usize,
15312        concat!(
15313            "Offset of field: ",
15314            stringify!(_zend_fcall_info_cache),
15315            "::",
15316            stringify!(function_handler)
15317        )
15318    );
15319    assert_eq!(
15320        unsafe {
15321            &(*(::std::ptr::null::<_zend_fcall_info_cache>())).calling_scope as *const _ as usize
15322        },
15323        8usize,
15324        concat!(
15325            "Offset of field: ",
15326            stringify!(_zend_fcall_info_cache),
15327            "::",
15328            stringify!(calling_scope)
15329        )
15330    );
15331    assert_eq!(
15332        unsafe {
15333            &(*(::std::ptr::null::<_zend_fcall_info_cache>())).called_scope as *const _ as usize
15334        },
15335        16usize,
15336        concat!(
15337            "Offset of field: ",
15338            stringify!(_zend_fcall_info_cache),
15339            "::",
15340            stringify!(called_scope)
15341        )
15342    );
15343    assert_eq!(
15344        unsafe { &(*(::std::ptr::null::<_zend_fcall_info_cache>())).object as *const _ as usize },
15345        24usize,
15346        concat!(
15347            "Offset of field: ",
15348            stringify!(_zend_fcall_info_cache),
15349            "::",
15350            stringify!(object)
15351        )
15352    );
15353}
15354pub type zend_fcall_info_cache = _zend_fcall_info_cache;
15355extern "C" {
15356    pub fn zend_next_free_module() -> ::std::os::raw::c_int;
15357}
15358extern "C" {
15359    pub fn _zend_get_parameters_array_ex(
15360        param_count: ::std::os::raw::c_int,
15361        argument_array: *mut zval,
15362    ) -> ::std::os::raw::c_int;
15363}
15364extern "C" {
15365    pub fn zend_copy_parameters_array(
15366        param_count: ::std::os::raw::c_int,
15367        argument_array: *mut zval,
15368    ) -> ::std::os::raw::c_int;
15369}
15370extern "C" {
15371    pub fn zend_parse_parameters(
15372        num_args: ::std::os::raw::c_int,
15373        type_spec: *const ::std::os::raw::c_char,
15374        ...
15375    ) -> ::std::os::raw::c_int;
15376}
15377extern "C" {
15378    pub fn zend_parse_parameters_ex(
15379        flags: ::std::os::raw::c_int,
15380        num_args: ::std::os::raw::c_int,
15381        type_spec: *const ::std::os::raw::c_char,
15382        ...
15383    ) -> ::std::os::raw::c_int;
15384}
15385extern "C" {
15386    pub fn zend_parse_parameters_throw(
15387        num_args: ::std::os::raw::c_int,
15388        type_spec: *const ::std::os::raw::c_char,
15389        ...
15390    ) -> ::std::os::raw::c_int;
15391}
15392extern "C" {
15393    pub fn zend_zval_type_name(arg: *const zval) -> *mut ::std::os::raw::c_char;
15394}
15395extern "C" {
15396    pub fn zend_zval_get_type(arg: *const zval) -> *mut zend_string;
15397}
15398extern "C" {
15399    pub fn zend_parse_method_parameters(
15400        num_args: ::std::os::raw::c_int,
15401        this_ptr: *mut zval,
15402        type_spec: *const ::std::os::raw::c_char,
15403        ...
15404    ) -> ::std::os::raw::c_int;
15405}
15406extern "C" {
15407    pub fn zend_parse_method_parameters_ex(
15408        flags: ::std::os::raw::c_int,
15409        num_args: ::std::os::raw::c_int,
15410        this_ptr: *mut zval,
15411        type_spec: *const ::std::os::raw::c_char,
15412        ...
15413    ) -> ::std::os::raw::c_int;
15414}
15415extern "C" {
15416    pub fn zend_parse_parameter(
15417        flags: ::std::os::raw::c_int,
15418        arg_num: ::std::os::raw::c_int,
15419        arg: *mut zval,
15420        spec: *const ::std::os::raw::c_char,
15421        ...
15422    ) -> ::std::os::raw::c_int;
15423}
15424extern "C" {
15425    pub fn zend_register_functions(
15426        scope: *mut zend_class_entry,
15427        functions: *const zend_function_entry,
15428        function_table: *mut HashTable,
15429        type_: ::std::os::raw::c_int,
15430    ) -> ::std::os::raw::c_int;
15431}
15432extern "C" {
15433    pub fn zend_unregister_functions(
15434        functions: *const zend_function_entry,
15435        count: ::std::os::raw::c_int,
15436        function_table: *mut HashTable,
15437    );
15438}
15439extern "C" {
15440    pub fn zend_startup_module(module_entry: *mut zend_module_entry) -> ::std::os::raw::c_int;
15441}
15442extern "C" {
15443    pub fn zend_register_internal_module(
15444        module_entry: *mut zend_module_entry,
15445    ) -> *mut zend_module_entry;
15446}
15447extern "C" {
15448    pub fn zend_register_module_ex(module: *mut zend_module_entry) -> *mut zend_module_entry;
15449}
15450extern "C" {
15451    pub fn zend_startup_module_ex(module: *mut zend_module_entry) -> ::std::os::raw::c_int;
15452}
15453extern "C" {
15454    pub fn zend_startup_modules() -> ::std::os::raw::c_int;
15455}
15456extern "C" {
15457    pub fn zend_collect_module_handlers();
15458}
15459extern "C" {
15460    pub fn zend_destroy_modules();
15461}
15462extern "C" {
15463    pub fn zend_check_magic_method_implementation(
15464        ce: *const zend_class_entry,
15465        fptr: *const zend_function,
15466        error_type: ::std::os::raw::c_int,
15467    );
15468}
15469extern "C" {
15470    pub fn zend_register_internal_class(
15471        class_entry: *mut zend_class_entry,
15472    ) -> *mut zend_class_entry;
15473}
15474extern "C" {
15475    pub fn zend_register_internal_class_ex(
15476        class_entry: *mut zend_class_entry,
15477        parent_ce: *mut zend_class_entry,
15478    ) -> *mut zend_class_entry;
15479}
15480extern "C" {
15481    pub fn zend_register_internal_interface(
15482        orig_class_entry: *mut zend_class_entry,
15483    ) -> *mut zend_class_entry;
15484}
15485extern "C" {
15486    pub fn zend_class_implements(
15487        class_entry: *mut zend_class_entry,
15488        num_interfaces: ::std::os::raw::c_int,
15489        ...
15490    );
15491}
15492extern "C" {
15493    pub fn zend_register_class_alias_ex(
15494        name: *const ::std::os::raw::c_char,
15495        name_len: size_t,
15496        ce: *mut zend_class_entry,
15497        persistent: ::std::os::raw::c_int,
15498    ) -> ::std::os::raw::c_int;
15499}
15500extern "C" {
15501    pub fn zend_disable_function(
15502        function_name: *mut ::std::os::raw::c_char,
15503        function_name_length: size_t,
15504    ) -> ::std::os::raw::c_int;
15505}
15506extern "C" {
15507    pub fn zend_disable_class(
15508        class_name: *mut ::std::os::raw::c_char,
15509        class_name_length: size_t,
15510    ) -> ::std::os::raw::c_int;
15511}
15512extern "C" {
15513    pub fn zend_wrong_param_count();
15514}
15515extern "C" {
15516    pub fn zend_release_fcall_info_cache(fcc: *mut zend_fcall_info_cache);
15517}
15518extern "C" {
15519    pub fn zend_get_callable_name_ex(
15520        callable: *mut zval,
15521        object: *mut zend_object,
15522    ) -> *mut zend_string;
15523}
15524extern "C" {
15525    pub fn zend_get_callable_name(callable: *mut zval) -> *mut zend_string;
15526}
15527extern "C" {
15528    pub fn zend_is_callable_ex(
15529        callable: *mut zval,
15530        object: *mut zend_object,
15531        check_flags: u32,
15532        callable_name: *mut *mut zend_string,
15533        fcc: *mut zend_fcall_info_cache,
15534        error: *mut *mut ::std::os::raw::c_char,
15535    ) -> zend_bool;
15536}
15537extern "C" {
15538    pub fn zend_is_callable(
15539        callable: *mut zval,
15540        check_flags: u32,
15541        callable_name: *mut *mut zend_string,
15542    ) -> zend_bool;
15543}
15544extern "C" {
15545    pub fn zend_make_callable(
15546        callable: *mut zval,
15547        callable_name: *mut *mut zend_string,
15548    ) -> zend_bool;
15549}
15550extern "C" {
15551    pub fn zend_get_module_version(
15552        module_name: *const ::std::os::raw::c_char,
15553    ) -> *const ::std::os::raw::c_char;
15554}
15555extern "C" {
15556    pub fn zend_get_module_started(
15557        module_name: *const ::std::os::raw::c_char,
15558    ) -> ::std::os::raw::c_int;
15559}
15560extern "C" {
15561    pub fn zend_declare_typed_property(
15562        ce: *mut zend_class_entry,
15563        name: *mut zend_string,
15564        property: *mut zval,
15565        access_type: ::std::os::raw::c_int,
15566        doc_comment: *mut zend_string,
15567        type_: zend_type,
15568    ) -> ::std::os::raw::c_int;
15569}
15570extern "C" {
15571    pub fn zend_declare_property_ex(
15572        ce: *mut zend_class_entry,
15573        name: *mut zend_string,
15574        property: *mut zval,
15575        access_type: ::std::os::raw::c_int,
15576        doc_comment: *mut zend_string,
15577    ) -> ::std::os::raw::c_int;
15578}
15579extern "C" {
15580    pub fn zend_declare_property(
15581        ce: *mut zend_class_entry,
15582        name: *const ::std::os::raw::c_char,
15583        name_length: size_t,
15584        property: *mut zval,
15585        access_type: ::std::os::raw::c_int,
15586    ) -> ::std::os::raw::c_int;
15587}
15588extern "C" {
15589    pub fn zend_declare_property_null(
15590        ce: *mut zend_class_entry,
15591        name: *const ::std::os::raw::c_char,
15592        name_length: size_t,
15593        access_type: ::std::os::raw::c_int,
15594    ) -> ::std::os::raw::c_int;
15595}
15596extern "C" {
15597    pub fn zend_declare_property_bool(
15598        ce: *mut zend_class_entry,
15599        name: *const ::std::os::raw::c_char,
15600        name_length: size_t,
15601        value: zend_long,
15602        access_type: ::std::os::raw::c_int,
15603    ) -> ::std::os::raw::c_int;
15604}
15605extern "C" {
15606    pub fn zend_declare_property_long(
15607        ce: *mut zend_class_entry,
15608        name: *const ::std::os::raw::c_char,
15609        name_length: size_t,
15610        value: zend_long,
15611        access_type: ::std::os::raw::c_int,
15612    ) -> ::std::os::raw::c_int;
15613}
15614extern "C" {
15615    pub fn zend_declare_property_double(
15616        ce: *mut zend_class_entry,
15617        name: *const ::std::os::raw::c_char,
15618        name_length: size_t,
15619        value: f64,
15620        access_type: ::std::os::raw::c_int,
15621    ) -> ::std::os::raw::c_int;
15622}
15623extern "C" {
15624    pub fn zend_declare_property_string(
15625        ce: *mut zend_class_entry,
15626        name: *const ::std::os::raw::c_char,
15627        name_length: size_t,
15628        value: *const ::std::os::raw::c_char,
15629        access_type: ::std::os::raw::c_int,
15630    ) -> ::std::os::raw::c_int;
15631}
15632extern "C" {
15633    pub fn zend_declare_property_stringl(
15634        ce: *mut zend_class_entry,
15635        name: *const ::std::os::raw::c_char,
15636        name_length: size_t,
15637        value: *const ::std::os::raw::c_char,
15638        value_len: size_t,
15639        access_type: ::std::os::raw::c_int,
15640    ) -> ::std::os::raw::c_int;
15641}
15642extern "C" {
15643    pub fn zend_declare_class_constant_ex(
15644        ce: *mut zend_class_entry,
15645        name: *mut zend_string,
15646        value: *mut zval,
15647        access_type: ::std::os::raw::c_int,
15648        doc_comment: *mut zend_string,
15649    ) -> ::std::os::raw::c_int;
15650}
15651extern "C" {
15652    pub fn zend_declare_class_constant(
15653        ce: *mut zend_class_entry,
15654        name: *const ::std::os::raw::c_char,
15655        name_length: size_t,
15656        value: *mut zval,
15657    ) -> ::std::os::raw::c_int;
15658}
15659extern "C" {
15660    pub fn zend_declare_class_constant_null(
15661        ce: *mut zend_class_entry,
15662        name: *const ::std::os::raw::c_char,
15663        name_length: size_t,
15664    ) -> ::std::os::raw::c_int;
15665}
15666extern "C" {
15667    pub fn zend_declare_class_constant_long(
15668        ce: *mut zend_class_entry,
15669        name: *const ::std::os::raw::c_char,
15670        name_length: size_t,
15671        value: zend_long,
15672    ) -> ::std::os::raw::c_int;
15673}
15674extern "C" {
15675    pub fn zend_declare_class_constant_bool(
15676        ce: *mut zend_class_entry,
15677        name: *const ::std::os::raw::c_char,
15678        name_length: size_t,
15679        value: zend_bool,
15680    ) -> ::std::os::raw::c_int;
15681}
15682extern "C" {
15683    pub fn zend_declare_class_constant_double(
15684        ce: *mut zend_class_entry,
15685        name: *const ::std::os::raw::c_char,
15686        name_length: size_t,
15687        value: f64,
15688    ) -> ::std::os::raw::c_int;
15689}
15690extern "C" {
15691    pub fn zend_declare_class_constant_stringl(
15692        ce: *mut zend_class_entry,
15693        name: *const ::std::os::raw::c_char,
15694        name_length: size_t,
15695        value: *const ::std::os::raw::c_char,
15696        value_length: size_t,
15697    ) -> ::std::os::raw::c_int;
15698}
15699extern "C" {
15700    pub fn zend_declare_class_constant_string(
15701        ce: *mut zend_class_entry,
15702        name: *const ::std::os::raw::c_char,
15703        name_length: size_t,
15704        value: *const ::std::os::raw::c_char,
15705    ) -> ::std::os::raw::c_int;
15706}
15707extern "C" {
15708    pub fn zend_update_class_constants(class_type: *mut zend_class_entry) -> ::std::os::raw::c_int;
15709}
15710extern "C" {
15711    pub fn zend_update_property_ex(
15712        scope: *mut zend_class_entry,
15713        object: *mut zval,
15714        name: *mut zend_string,
15715        value: *mut zval,
15716    );
15717}
15718extern "C" {
15719    pub fn zend_update_property(
15720        scope: *mut zend_class_entry,
15721        object: *mut zval,
15722        name: *const ::std::os::raw::c_char,
15723        name_length: size_t,
15724        value: *mut zval,
15725    );
15726}
15727extern "C" {
15728    pub fn zend_update_property_null(
15729        scope: *mut zend_class_entry,
15730        object: *mut zval,
15731        name: *const ::std::os::raw::c_char,
15732        name_length: size_t,
15733    );
15734}
15735extern "C" {
15736    pub fn zend_update_property_bool(
15737        scope: *mut zend_class_entry,
15738        object: *mut zval,
15739        name: *const ::std::os::raw::c_char,
15740        name_length: size_t,
15741        value: zend_long,
15742    );
15743}
15744extern "C" {
15745    pub fn zend_update_property_long(
15746        scope: *mut zend_class_entry,
15747        object: *mut zval,
15748        name: *const ::std::os::raw::c_char,
15749        name_length: size_t,
15750        value: zend_long,
15751    );
15752}
15753extern "C" {
15754    pub fn zend_update_property_double(
15755        scope: *mut zend_class_entry,
15756        object: *mut zval,
15757        name: *const ::std::os::raw::c_char,
15758        name_length: size_t,
15759        value: f64,
15760    );
15761}
15762extern "C" {
15763    pub fn zend_update_property_str(
15764        scope: *mut zend_class_entry,
15765        object: *mut zval,
15766        name: *const ::std::os::raw::c_char,
15767        name_length: size_t,
15768        value: *mut zend_string,
15769    );
15770}
15771extern "C" {
15772    pub fn zend_update_property_string(
15773        scope: *mut zend_class_entry,
15774        object: *mut zval,
15775        name: *const ::std::os::raw::c_char,
15776        name_length: size_t,
15777        value: *const ::std::os::raw::c_char,
15778    );
15779}
15780extern "C" {
15781    pub fn zend_update_property_stringl(
15782        scope: *mut zend_class_entry,
15783        object: *mut zval,
15784        name: *const ::std::os::raw::c_char,
15785        name_length: size_t,
15786        value: *const ::std::os::raw::c_char,
15787        value_length: size_t,
15788    );
15789}
15790extern "C" {
15791    pub fn zend_unset_property(
15792        scope: *mut zend_class_entry,
15793        object: *mut zval,
15794        name: *const ::std::os::raw::c_char,
15795        name_length: size_t,
15796    );
15797}
15798extern "C" {
15799    pub fn zend_update_static_property_ex(
15800        scope: *mut zend_class_entry,
15801        name: *mut zend_string,
15802        value: *mut zval,
15803    ) -> ::std::os::raw::c_int;
15804}
15805extern "C" {
15806    pub fn zend_update_static_property(
15807        scope: *mut zend_class_entry,
15808        name: *const ::std::os::raw::c_char,
15809        name_length: size_t,
15810        value: *mut zval,
15811    ) -> ::std::os::raw::c_int;
15812}
15813extern "C" {
15814    pub fn zend_update_static_property_null(
15815        scope: *mut zend_class_entry,
15816        name: *const ::std::os::raw::c_char,
15817        name_length: size_t,
15818    ) -> ::std::os::raw::c_int;
15819}
15820extern "C" {
15821    pub fn zend_update_static_property_bool(
15822        scope: *mut zend_class_entry,
15823        name: *const ::std::os::raw::c_char,
15824        name_length: size_t,
15825        value: zend_long,
15826    ) -> ::std::os::raw::c_int;
15827}
15828extern "C" {
15829    pub fn zend_update_static_property_long(
15830        scope: *mut zend_class_entry,
15831        name: *const ::std::os::raw::c_char,
15832        name_length: size_t,
15833        value: zend_long,
15834    ) -> ::std::os::raw::c_int;
15835}
15836extern "C" {
15837    pub fn zend_update_static_property_double(
15838        scope: *mut zend_class_entry,
15839        name: *const ::std::os::raw::c_char,
15840        name_length: size_t,
15841        value: f64,
15842    ) -> ::std::os::raw::c_int;
15843}
15844extern "C" {
15845    pub fn zend_update_static_property_string(
15846        scope: *mut zend_class_entry,
15847        name: *const ::std::os::raw::c_char,
15848        name_length: size_t,
15849        value: *const ::std::os::raw::c_char,
15850    ) -> ::std::os::raw::c_int;
15851}
15852extern "C" {
15853    pub fn zend_update_static_property_stringl(
15854        scope: *mut zend_class_entry,
15855        name: *const ::std::os::raw::c_char,
15856        name_length: size_t,
15857        value: *const ::std::os::raw::c_char,
15858        value_length: size_t,
15859    ) -> ::std::os::raw::c_int;
15860}
15861extern "C" {
15862    pub fn zend_read_property_ex(
15863        scope: *mut zend_class_entry,
15864        object: *mut zval,
15865        name: *mut zend_string,
15866        silent: zend_bool,
15867        rv: *mut zval,
15868    ) -> *mut zval;
15869}
15870extern "C" {
15871    pub fn zend_read_property(
15872        scope: *mut zend_class_entry,
15873        object: *mut zval,
15874        name: *const ::std::os::raw::c_char,
15875        name_length: size_t,
15876        silent: zend_bool,
15877        rv: *mut zval,
15878    ) -> *mut zval;
15879}
15880extern "C" {
15881    pub fn zend_read_static_property_ex(
15882        scope: *mut zend_class_entry,
15883        name: *mut zend_string,
15884        silent: zend_bool,
15885    ) -> *mut zval;
15886}
15887extern "C" {
15888    pub fn zend_read_static_property(
15889        scope: *mut zend_class_entry,
15890        name: *const ::std::os::raw::c_char,
15891        name_length: size_t,
15892        silent: zend_bool,
15893    ) -> *mut zval;
15894}
15895extern "C" {
15896    pub fn zend_get_type_by_const(type_: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char;
15897}
15898extern "C" {
15899    pub fn zend_merge_properties(obj: *mut zval, properties: *mut HashTable);
15900}
15901extern "C" {
15902    pub static empty_fcall_info: zend_fcall_info;
15903}
15904extern "C" {
15905    pub static empty_fcall_info_cache: zend_fcall_info_cache;
15906}
15907extern "C" {
15908    #[doc = " Build zend_call_info/cache from a zval*"]
15909    #[doc = ""]
15910    #[doc = " Caller is responsible to provide a return value (fci->retval), otherwise the we will crash."]
15911    #[doc = " In order to pass parameters the following members need to be set:"]
15912    #[doc = " fci->param_count = 0;"]
15913    #[doc = " fci->params = NULL;"]
15914    #[doc = " The callable_name argument may be NULL."]
15915    #[doc = " Set check_flags to IS_CALLABLE_STRICT for every new usage!"]
15916    pub fn zend_fcall_info_init(
15917        callable: *mut zval,
15918        check_flags: u32,
15919        fci: *mut zend_fcall_info,
15920        fcc: *mut zend_fcall_info_cache,
15921        callable_name: *mut *mut zend_string,
15922        error: *mut *mut ::std::os::raw::c_char,
15923    ) -> ::std::os::raw::c_int;
15924}
15925extern "C" {
15926    #[doc = " Clear arguments connected with zend_fcall_info *fci"]
15927    #[doc = " If free_mem is not zero then the params array gets free'd as well"]
15928    pub fn zend_fcall_info_args_clear(fci: *mut zend_fcall_info, free_mem: ::std::os::raw::c_int);
15929}
15930extern "C" {
15931    #[doc = " Save current arguments from zend_fcall_info *fci"]
15932    #[doc = " params array will be set to NULL"]
15933    pub fn zend_fcall_info_args_save(
15934        fci: *mut zend_fcall_info,
15935        param_count: *mut ::std::os::raw::c_int,
15936        params: *mut *mut zval,
15937    );
15938}
15939extern "C" {
15940    #[doc = " Free arguments connected with zend_fcall_info *fci andset back saved ones."]
15941    pub fn zend_fcall_info_args_restore(
15942        fci: *mut zend_fcall_info,
15943        param_count: ::std::os::raw::c_int,
15944        params: *mut zval,
15945    );
15946}
15947extern "C" {
15948    #[doc = " Set or clear the arguments in the zend_call_info struct taking care of"]
15949    #[doc = " refcount. If args is NULL and arguments are set then those are cleared."]
15950    pub fn zend_fcall_info_args(
15951        fci: *mut zend_fcall_info,
15952        args: *mut zval,
15953    ) -> ::std::os::raw::c_int;
15954}
15955extern "C" {
15956    pub fn zend_fcall_info_args_ex(
15957        fci: *mut zend_fcall_info,
15958        func: *mut zend_function,
15959        args: *mut zval,
15960    ) -> ::std::os::raw::c_int;
15961}
15962extern "C" {
15963    #[doc = " Set arguments in the zend_fcall_info struct taking care of refcount."]
15964    #[doc = " If argc is 0 the arguments which are set will be cleared, else pass"]
15965    #[doc = " a variable amount of zval** arguments."]
15966    pub fn zend_fcall_info_argp(
15967        fci: *mut zend_fcall_info,
15968        argc: ::std::os::raw::c_int,
15969        argv: *mut zval,
15970    ) -> ::std::os::raw::c_int;
15971}
15972extern "C" {
15973    #[doc = " Set arguments in the zend_fcall_info struct taking care of refcount."]
15974    #[doc = " If argc is 0 the arguments which are set will be cleared, else pass"]
15975    #[doc = " a variable amount of zval** arguments."]
15976    pub fn zend_fcall_info_argv(
15977        fci: *mut zend_fcall_info,
15978        argc: ::std::os::raw::c_int,
15979        argv: *mut va_list,
15980    ) -> ::std::os::raw::c_int;
15981}
15982extern "C" {
15983    #[doc = " Set arguments in the zend_fcall_info struct taking care of refcount."]
15984    #[doc = " If argc is 0 the arguments which are set will be cleared, else pass"]
15985    #[doc = " a variable amount of zval** arguments."]
15986    pub fn zend_fcall_info_argn(
15987        fci: *mut zend_fcall_info,
15988        argc: ::std::os::raw::c_int,
15989        ...
15990    ) -> ::std::os::raw::c_int;
15991}
15992extern "C" {
15993    #[doc = " Call a function using information created by zend_fcall_info_init()/args()."]
15994    #[doc = " If args is given then those replace the argument info in fci is temporarily."]
15995    pub fn zend_fcall_info_call(
15996        fci: *mut zend_fcall_info,
15997        fcc: *mut zend_fcall_info_cache,
15998        retval: *mut zval,
15999        args: *mut zval,
16000    ) -> ::std::os::raw::c_int;
16001}
16002extern "C" {
16003    pub fn zend_call_function(
16004        fci: *mut zend_fcall_info,
16005        fci_cache: *mut zend_fcall_info_cache,
16006    ) -> ::std::os::raw::c_int;
16007}
16008extern "C" {
16009    pub fn zend_set_hash_symbol(
16010        symbol: *mut zval,
16011        name: *const ::std::os::raw::c_char,
16012        name_length: ::std::os::raw::c_int,
16013        is_ref: zend_bool,
16014        num_symbol_tables: ::std::os::raw::c_int,
16015        ...
16016    ) -> ::std::os::raw::c_int;
16017}
16018extern "C" {
16019    pub fn zend_delete_global_variable(name: *mut zend_string) -> ::std::os::raw::c_int;
16020}
16021extern "C" {
16022    pub fn zend_rebuild_symbol_table() -> *mut zend_array;
16023}
16024extern "C" {
16025    pub fn zend_attach_symbol_table(execute_data: *mut zend_execute_data);
16026}
16027extern "C" {
16028    pub fn zend_detach_symbol_table(execute_data: *mut zend_execute_data);
16029}
16030extern "C" {
16031    pub fn zend_set_local_var(
16032        name: *mut zend_string,
16033        value: *mut zval,
16034        force: ::std::os::raw::c_int,
16035    ) -> ::std::os::raw::c_int;
16036}
16037extern "C" {
16038    pub fn zend_set_local_var_str(
16039        name: *const ::std::os::raw::c_char,
16040        len: size_t,
16041        value: *mut zval,
16042        force: ::std::os::raw::c_int,
16043    ) -> ::std::os::raw::c_int;
16044}
16045extern "C" {
16046    pub fn zend_find_alias_name(
16047        ce: *mut zend_class_entry,
16048        name: *mut zend_string,
16049    ) -> *mut zend_string;
16050}
16051extern "C" {
16052    pub fn zend_resolve_method_name(
16053        ce: *mut zend_class_entry,
16054        f: *mut zend_function,
16055    ) -> *mut zend_string;
16056}
16057extern "C" {
16058    pub fn zend_get_object_type(ce: *const zend_class_entry) -> *const ::std::os::raw::c_char;
16059}
16060extern "C" {
16061    pub fn zend_is_iterable(iterable: *mut zval) -> zend_bool;
16062}
16063extern "C" {
16064    pub fn zend_is_countable(countable: *mut zval) -> zend_bool;
16065}
16066extern "C" {
16067    pub fn zend_try_assign_typed_ref_ex(
16068        ref_: *mut zend_reference,
16069        zv: *mut zval,
16070        strict: zend_bool,
16071    ) -> ::std::os::raw::c_int;
16072}
16073extern "C" {
16074    pub fn zend_try_assign_typed_ref(
16075        ref_: *mut zend_reference,
16076        zv: *mut zval,
16077    ) -> ::std::os::raw::c_int;
16078}
16079extern "C" {
16080    pub fn zend_try_assign_typed_ref_null(ref_: *mut zend_reference) -> ::std::os::raw::c_int;
16081}
16082extern "C" {
16083    pub fn zend_try_assign_typed_ref_bool(
16084        ref_: *mut zend_reference,
16085        val: zend_bool,
16086    ) -> ::std::os::raw::c_int;
16087}
16088extern "C" {
16089    pub fn zend_try_assign_typed_ref_long(
16090        ref_: *mut zend_reference,
16091        lval: zend_long,
16092    ) -> ::std::os::raw::c_int;
16093}
16094extern "C" {
16095    pub fn zend_try_assign_typed_ref_double(
16096        ref_: *mut zend_reference,
16097        dval: f64,
16098    ) -> ::std::os::raw::c_int;
16099}
16100extern "C" {
16101    pub fn zend_try_assign_typed_ref_empty_string(
16102        ref_: *mut zend_reference,
16103    ) -> ::std::os::raw::c_int;
16104}
16105extern "C" {
16106    pub fn zend_try_assign_typed_ref_str(
16107        ref_: *mut zend_reference,
16108        str_: *mut zend_string,
16109    ) -> ::std::os::raw::c_int;
16110}
16111extern "C" {
16112    pub fn zend_try_assign_typed_ref_string(
16113        ref_: *mut zend_reference,
16114        string: *const ::std::os::raw::c_char,
16115    ) -> ::std::os::raw::c_int;
16116}
16117extern "C" {
16118    pub fn zend_try_assign_typed_ref_stringl(
16119        ref_: *mut zend_reference,
16120        string: *const ::std::os::raw::c_char,
16121        len: size_t,
16122    ) -> ::std::os::raw::c_int;
16123}
16124extern "C" {
16125    pub fn zend_try_assign_typed_ref_arr(
16126        ref_: *mut zend_reference,
16127        arr: *mut zend_array,
16128    ) -> ::std::os::raw::c_int;
16129}
16130extern "C" {
16131    pub fn zend_try_assign_typed_ref_res(
16132        ref_: *mut zend_reference,
16133        res: *mut zend_resource,
16134    ) -> ::std::os::raw::c_int;
16135}
16136extern "C" {
16137    pub fn zend_try_assign_typed_ref_zval(
16138        ref_: *mut zend_reference,
16139        zv: *mut zval,
16140    ) -> ::std::os::raw::c_int;
16141}
16142extern "C" {
16143    pub fn zend_try_assign_typed_ref_zval_ex(
16144        ref_: *mut zend_reference,
16145        zv: *mut zval,
16146        strict: zend_bool,
16147    ) -> ::std::os::raw::c_int;
16148}
16149pub const _zend_expected_type_Z_EXPECTED_LONG: _zend_expected_type = 0;
16150pub const _zend_expected_type_Z_EXPECTED_BOOL: _zend_expected_type = 1;
16151pub const _zend_expected_type_Z_EXPECTED_STRING: _zend_expected_type = 2;
16152pub const _zend_expected_type_Z_EXPECTED_ARRAY: _zend_expected_type = 3;
16153pub const _zend_expected_type_Z_EXPECTED_FUNC: _zend_expected_type = 4;
16154pub const _zend_expected_type_Z_EXPECTED_RESOURCE: _zend_expected_type = 5;
16155pub const _zend_expected_type_Z_EXPECTED_PATH: _zend_expected_type = 6;
16156pub const _zend_expected_type_Z_EXPECTED_OBJECT: _zend_expected_type = 7;
16157pub const _zend_expected_type_Z_EXPECTED_DOUBLE: _zend_expected_type = 8;
16158pub const _zend_expected_type_Z_EXPECTED_LAST: _zend_expected_type = 9;
16159pub type _zend_expected_type = ::std::os::raw::c_uint;
16160pub use self::_zend_expected_type as zend_expected_type;
16161extern "C" {
16162    pub fn zend_wrong_parameters_none_error() -> ::std::os::raw::c_int;
16163}
16164extern "C" {
16165    pub fn zend_wrong_parameters_none_exception() -> ::std::os::raw::c_int;
16166}
16167extern "C" {
16168    pub fn zend_wrong_parameters_count_error(
16169        min_num_args: ::std::os::raw::c_int,
16170        max_num_args: ::std::os::raw::c_int,
16171    );
16172}
16173extern "C" {
16174    pub fn zend_wrong_parameters_count_exception(
16175        min_num_args: ::std::os::raw::c_int,
16176        max_num_args: ::std::os::raw::c_int,
16177    );
16178}
16179extern "C" {
16180    pub fn zend_wrong_parameter_type_error(
16181        num: ::std::os::raw::c_int,
16182        expected_type: zend_expected_type,
16183        arg: *mut zval,
16184    );
16185}
16186extern "C" {
16187    pub fn zend_wrong_parameter_type_exception(
16188        num: ::std::os::raw::c_int,
16189        expected_type: zend_expected_type,
16190        arg: *mut zval,
16191    );
16192}
16193extern "C" {
16194    pub fn zend_wrong_parameter_class_error(
16195        num: ::std::os::raw::c_int,
16196        name: *mut ::std::os::raw::c_char,
16197        arg: *mut zval,
16198    );
16199}
16200extern "C" {
16201    pub fn zend_wrong_parameter_class_exception(
16202        num: ::std::os::raw::c_int,
16203        name: *mut ::std::os::raw::c_char,
16204        arg: *mut zval,
16205    );
16206}
16207extern "C" {
16208    pub fn zend_wrong_callback_error(
16209        num: ::std::os::raw::c_int,
16210        error: *mut ::std::os::raw::c_char,
16211    );
16212}
16213extern "C" {
16214    pub fn zend_wrong_callback_deprecated(
16215        num: ::std::os::raw::c_int,
16216        error: *mut ::std::os::raw::c_char,
16217    );
16218}
16219extern "C" {
16220    pub fn zend_wrong_callback_exception(
16221        num: ::std::os::raw::c_int,
16222        error: *mut ::std::os::raw::c_char,
16223    );
16224}
16225extern "C" {
16226    pub fn zend_parse_arg_class(
16227        arg: *mut zval,
16228        pce: *mut *mut zend_class_entry,
16229        num: ::std::os::raw::c_int,
16230        check_null: ::std::os::raw::c_int,
16231    ) -> ::std::os::raw::c_int;
16232}
16233extern "C" {
16234    pub fn zend_parse_arg_bool_slow(arg: *mut zval, dest: *mut zend_bool) -> ::std::os::raw::c_int;
16235}
16236extern "C" {
16237    pub fn zend_parse_arg_bool_weak(arg: *mut zval, dest: *mut zend_bool) -> ::std::os::raw::c_int;
16238}
16239extern "C" {
16240    pub fn zend_parse_arg_long_slow(arg: *mut zval, dest: *mut zend_long) -> ::std::os::raw::c_int;
16241}
16242extern "C" {
16243    pub fn zend_parse_arg_long_weak(arg: *mut zval, dest: *mut zend_long) -> ::std::os::raw::c_int;
16244}
16245extern "C" {
16246    pub fn zend_parse_arg_long_cap_slow(
16247        arg: *mut zval,
16248        dest: *mut zend_long,
16249    ) -> ::std::os::raw::c_int;
16250}
16251extern "C" {
16252    pub fn zend_parse_arg_long_cap_weak(
16253        arg: *mut zval,
16254        dest: *mut zend_long,
16255    ) -> ::std::os::raw::c_int;
16256}
16257extern "C" {
16258    pub fn zend_parse_arg_double_slow(arg: *mut zval, dest: *mut f64) -> ::std::os::raw::c_int;
16259}
16260extern "C" {
16261    pub fn zend_parse_arg_double_weak(arg: *mut zval, dest: *mut f64) -> ::std::os::raw::c_int;
16262}
16263extern "C" {
16264    pub fn zend_parse_arg_str_slow(
16265        arg: *mut zval,
16266        dest: *mut *mut zend_string,
16267    ) -> ::std::os::raw::c_int;
16268}
16269extern "C" {
16270    pub fn zend_parse_arg_str_weak(
16271        arg: *mut zval,
16272        dest: *mut *mut zend_string,
16273    ) -> ::std::os::raw::c_int;
16274}
16275extern "C" {
16276    pub fn php_strlcpy(
16277        dst: *mut ::std::os::raw::c_char,
16278        src: *const ::std::os::raw::c_char,
16279        siz: size_t,
16280    ) -> size_t;
16281}
16282extern "C" {
16283    pub fn php_strlcat(
16284        dst: *mut ::std::os::raw::c_char,
16285        src: *const ::std::os::raw::c_char,
16286        siz: size_t,
16287    ) -> size_t;
16288}
16289extern "C" {
16290    pub fn php_explicit_bzero(dst: *mut ::std::os::raw::c_void, siz: size_t);
16291}
16292pub type socklen_t = __socklen_t;
16293pub type bool_int = ::std::os::raw::c_int;
16294pub const boolean_e_NO: boolean_e = 0;
16295pub const boolean_e_YES: boolean_e = 1;
16296pub type boolean_e = ::std::os::raw::c_uint;
16297extern "C" {
16298    pub fn php_gcvt(
16299        value: f64,
16300        ndigit: ::std::os::raw::c_int,
16301        dec_point: ::std::os::raw::c_char,
16302        exponent: ::std::os::raw::c_char,
16303        buf: *mut ::std::os::raw::c_char,
16304    ) -> *mut ::std::os::raw::c_char;
16305}
16306extern "C" {
16307    pub fn php_0cvt(
16308        value: f64,
16309        ndigit: ::std::os::raw::c_int,
16310        dec_point: ::std::os::raw::c_char,
16311        exponent: ::std::os::raw::c_char,
16312        buf: *mut ::std::os::raw::c_char,
16313    ) -> *mut ::std::os::raw::c_char;
16314}
16315extern "C" {
16316    pub fn php_conv_fp(
16317        format: ::std::os::raw::c_char,
16318        num: f64,
16319        add_dp: boolean_e,
16320        precision: ::std::os::raw::c_int,
16321        dec_point: ::std::os::raw::c_char,
16322        is_negative: *mut bool_int,
16323        buf: *mut ::std::os::raw::c_char,
16324        len: *mut size_t,
16325    ) -> *mut ::std::os::raw::c_char;
16326}
16327extern "C" {
16328    pub fn php_printf_to_smart_string(
16329        buf: *mut smart_string,
16330        format: *const ::std::os::raw::c_char,
16331        ap: *mut __va_list_tag,
16332    );
16333}
16334extern "C" {
16335    pub fn php_printf_to_smart_str(
16336        buf: *mut smart_str,
16337        format: *const ::std::os::raw::c_char,
16338        ap: *mut __va_list_tag,
16339    );
16340}
16341extern "C" {
16342    pub fn php_write(buf: *mut ::std::os::raw::c_void, size: size_t) -> size_t;
16343}
16344extern "C" {
16345    pub fn php_printf(format: *const ::std::os::raw::c_char, ...) -> size_t;
16346}
16347extern "C" {
16348    pub fn php_get_module_initialized() -> ::std::os::raw::c_int;
16349}
16350extern "C" {
16351    pub fn php_syslog(arg1: ::std::os::raw::c_int, format: *const ::std::os::raw::c_char, ...);
16352}
16353extern "C" {
16354    pub fn php_openlog(
16355        arg1: *const ::std::os::raw::c_char,
16356        arg2: ::std::os::raw::c_int,
16357        arg3: ::std::os::raw::c_int,
16358    );
16359}
16360extern "C" {
16361    pub fn php_log_err_with_severity(
16362        log_message: *mut ::std::os::raw::c_char,
16363        syslog_type_int: ::std::os::raw::c_int,
16364    );
16365}
16366extern "C" {
16367    pub fn php_verror(
16368        docref: *const ::std::os::raw::c_char,
16369        params: *const ::std::os::raw::c_char,
16370        type_: ::std::os::raw::c_int,
16371        format: *const ::std::os::raw::c_char,
16372        args: *mut __va_list_tag,
16373    );
16374}
16375extern "C" {
16376    pub fn php_error_docref(
16377        docref: *const ::std::os::raw::c_char,
16378        type_: ::std::os::raw::c_int,
16379        format: *const ::std::os::raw::c_char,
16380        ...
16381    );
16382}
16383extern "C" {
16384    pub fn php_error_docref1(
16385        docref: *const ::std::os::raw::c_char,
16386        param1: *const ::std::os::raw::c_char,
16387        type_: ::std::os::raw::c_int,
16388        format: *const ::std::os::raw::c_char,
16389        ...
16390    );
16391}
16392extern "C" {
16393    pub fn php_error_docref2(
16394        docref: *const ::std::os::raw::c_char,
16395        param1: *const ::std::os::raw::c_char,
16396        param2: *const ::std::os::raw::c_char,
16397        type_: ::std::os::raw::c_int,
16398        format: *const ::std::os::raw::c_char,
16399        ...
16400    );
16401}
16402extern "C" {
16403    pub static mut php_register_internal_extensions_func:
16404        ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_int>;
16405}
16406extern "C" {
16407    pub fn php_register_internal_extensions() -> ::std::os::raw::c_int;
16408}
16409extern "C" {
16410    pub fn php_mergesort(
16411        base: *mut ::std::os::raw::c_void,
16412        nmemb: size_t,
16413        size: size_t,
16414        cmp: ::std::option::Option<
16415            unsafe extern "C" fn(
16416                arg1: *const ::std::os::raw::c_void,
16417                arg2: *const ::std::os::raw::c_void,
16418            ) -> ::std::os::raw::c_int,
16419        >,
16420    ) -> ::std::os::raw::c_int;
16421}
16422extern "C" {
16423    pub fn php_register_pre_request_shutdown(
16424        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
16425        userdata: *mut ::std::os::raw::c_void,
16426    );
16427}
16428extern "C" {
16429    pub fn php_com_initialize();
16430}
16431extern "C" {
16432    pub fn php_get_current_user() -> *mut ::std::os::raw::c_char;
16433}
16434extern "C" {
16435    pub fn php_get_internal_encoding() -> *const ::std::os::raw::c_char;
16436}
16437extern "C" {
16438    pub fn php_get_input_encoding() -> *const ::std::os::raw::c_char;
16439}
16440extern "C" {
16441    pub fn php_get_output_encoding() -> *const ::std::os::raw::c_char;
16442}
16443extern "C" {
16444    pub static mut php_internal_encoding_changed: ::std::option::Option<unsafe extern "C" fn()>;
16445}
16446pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_GET_OPAQ: _php_output_handler_hook_t =
16447    0;
16448pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_GET_FLAGS: _php_output_handler_hook_t =
16449    1;
16450pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_GET_LEVEL: _php_output_handler_hook_t =
16451    2;
16452pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_IMMUTABLE: _php_output_handler_hook_t =
16453    3;
16454pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_DISABLE: _php_output_handler_hook_t =
16455    4;
16456pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_LAST: _php_output_handler_hook_t = 5;
16457pub type _php_output_handler_hook_t = ::std::os::raw::c_uint;
16458pub use self::_php_output_handler_hook_t as php_output_handler_hook_t;
16459#[repr(C)]
16460#[derive(Debug, Copy, Clone)]
16461pub struct _php_output_buffer {
16462    pub data: *mut ::std::os::raw::c_char,
16463    pub size: size_t,
16464    pub used: size_t,
16465    pub _bitfield_align_1: [u32; 0],
16466    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
16467    pub __bindgen_padding_0: u32,
16468}
16469#[test]
16470fn bindgen_test_layout__php_output_buffer() {
16471    assert_eq!(
16472        ::std::mem::size_of::<_php_output_buffer>(),
16473        32usize,
16474        concat!("Size of: ", stringify!(_php_output_buffer))
16475    );
16476    assert_eq!(
16477        ::std::mem::align_of::<_php_output_buffer>(),
16478        8usize,
16479        concat!("Alignment of ", stringify!(_php_output_buffer))
16480    );
16481    assert_eq!(
16482        unsafe { &(*(::std::ptr::null::<_php_output_buffer>())).data as *const _ as usize },
16483        0usize,
16484        concat!(
16485            "Offset of field: ",
16486            stringify!(_php_output_buffer),
16487            "::",
16488            stringify!(data)
16489        )
16490    );
16491    assert_eq!(
16492        unsafe { &(*(::std::ptr::null::<_php_output_buffer>())).size as *const _ as usize },
16493        8usize,
16494        concat!(
16495            "Offset of field: ",
16496            stringify!(_php_output_buffer),
16497            "::",
16498            stringify!(size)
16499        )
16500    );
16501    assert_eq!(
16502        unsafe { &(*(::std::ptr::null::<_php_output_buffer>())).used as *const _ as usize },
16503        16usize,
16504        concat!(
16505            "Offset of field: ",
16506            stringify!(_php_output_buffer),
16507            "::",
16508            stringify!(used)
16509        )
16510    );
16511}
16512impl _php_output_buffer {
16513    #[inline]
16514    pub fn free(&self) -> u32 {
16515        unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
16516    }
16517    #[inline]
16518    pub fn set_free(&mut self, val: u32) {
16519        unsafe {
16520            let val: u32 = ::std::mem::transmute(val);
16521            self._bitfield_1.set(0usize, 1u8, val as u64)
16522        }
16523    }
16524    #[inline]
16525    pub fn _reserved(&self) -> u32 {
16526        unsafe { ::std::mem::transmute(self._bitfield_1.get(1usize, 31u8) as u32) }
16527    }
16528    #[inline]
16529    pub fn set__reserved(&mut self, val: u32) {
16530        unsafe {
16531            let val: u32 = ::std::mem::transmute(val);
16532            self._bitfield_1.set(1usize, 31u8, val as u64)
16533        }
16534    }
16535    #[inline]
16536    pub fn new_bitfield_1(free: u32, _reserved: u32) -> __BindgenBitfieldUnit<[u8; 4usize]> {
16537        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
16538        __bindgen_bitfield_unit.set(0usize, 1u8, {
16539            let free: u32 = unsafe { ::std::mem::transmute(free) };
16540            free as u64
16541        });
16542        __bindgen_bitfield_unit.set(1usize, 31u8, {
16543            let _reserved: u32 = unsafe { ::std::mem::transmute(_reserved) };
16544            _reserved as u64
16545        });
16546        __bindgen_bitfield_unit
16547    }
16548}
16549pub type php_output_buffer = _php_output_buffer;
16550#[repr(C)]
16551#[derive(Debug, Copy, Clone)]
16552pub struct _php_output_context {
16553    pub op: ::std::os::raw::c_int,
16554    pub in_: php_output_buffer,
16555    pub out: php_output_buffer,
16556}
16557#[test]
16558fn bindgen_test_layout__php_output_context() {
16559    assert_eq!(
16560        ::std::mem::size_of::<_php_output_context>(),
16561        72usize,
16562        concat!("Size of: ", stringify!(_php_output_context))
16563    );
16564    assert_eq!(
16565        ::std::mem::align_of::<_php_output_context>(),
16566        8usize,
16567        concat!("Alignment of ", stringify!(_php_output_context))
16568    );
16569    assert_eq!(
16570        unsafe { &(*(::std::ptr::null::<_php_output_context>())).op as *const _ as usize },
16571        0usize,
16572        concat!(
16573            "Offset of field: ",
16574            stringify!(_php_output_context),
16575            "::",
16576            stringify!(op)
16577        )
16578    );
16579    assert_eq!(
16580        unsafe { &(*(::std::ptr::null::<_php_output_context>())).in_ as *const _ as usize },
16581        8usize,
16582        concat!(
16583            "Offset of field: ",
16584            stringify!(_php_output_context),
16585            "::",
16586            stringify!(in_)
16587        )
16588    );
16589    assert_eq!(
16590        unsafe { &(*(::std::ptr::null::<_php_output_context>())).out as *const _ as usize },
16591        40usize,
16592        concat!(
16593            "Offset of field: ",
16594            stringify!(_php_output_context),
16595            "::",
16596            stringify!(out)
16597        )
16598    );
16599}
16600pub type php_output_context = _php_output_context;
16601pub type php_output_handler_func_t = ::std::option::Option<
16602    unsafe extern "C" fn(
16603        output: *mut ::std::os::raw::c_char,
16604        output_len: size_t,
16605        handled_output: *mut *mut ::std::os::raw::c_char,
16606        handled_output_len: *mut size_t,
16607        mode: ::std::os::raw::c_int,
16608    ),
16609>;
16610pub type php_output_handler_context_func_t = ::std::option::Option<
16611    unsafe extern "C" fn(
16612        handler_context: *mut *mut ::std::os::raw::c_void,
16613        output_context: *mut php_output_context,
16614    ) -> ::std::os::raw::c_int,
16615>;
16616pub type php_output_handler_conflict_check_t = ::std::option::Option<
16617    unsafe extern "C" fn(
16618        handler_name: *const ::std::os::raw::c_char,
16619        handler_name_len: size_t,
16620    ) -> ::std::os::raw::c_int,
16621>;
16622pub type php_output_handler_alias_ctor_t = ::std::option::Option<
16623    unsafe extern "C" fn(
16624        handler_name: *const ::std::os::raw::c_char,
16625        handler_name_len: size_t,
16626        chunk_size: size_t,
16627        flags: ::std::os::raw::c_int,
16628    ) -> *mut _php_output_handler,
16629>;
16630#[repr(C)]
16631#[derive(Copy, Clone)]
16632pub struct _php_output_handler_user_func_t {
16633    pub fci: zend_fcall_info,
16634    pub fcc: zend_fcall_info_cache,
16635    pub zoh: zval,
16636}
16637#[test]
16638fn bindgen_test_layout__php_output_handler_user_func_t() {
16639    assert_eq!(
16640        ::std::mem::size_of::<_php_output_handler_user_func_t>(),
16641        104usize,
16642        concat!("Size of: ", stringify!(_php_output_handler_user_func_t))
16643    );
16644    assert_eq!(
16645        ::std::mem::align_of::<_php_output_handler_user_func_t>(),
16646        8usize,
16647        concat!("Alignment of ", stringify!(_php_output_handler_user_func_t))
16648    );
16649    assert_eq!(
16650        unsafe {
16651            &(*(::std::ptr::null::<_php_output_handler_user_func_t>())).fci as *const _ as usize
16652        },
16653        0usize,
16654        concat!(
16655            "Offset of field: ",
16656            stringify!(_php_output_handler_user_func_t),
16657            "::",
16658            stringify!(fci)
16659        )
16660    );
16661    assert_eq!(
16662        unsafe {
16663            &(*(::std::ptr::null::<_php_output_handler_user_func_t>())).fcc as *const _ as usize
16664        },
16665        56usize,
16666        concat!(
16667            "Offset of field: ",
16668            stringify!(_php_output_handler_user_func_t),
16669            "::",
16670            stringify!(fcc)
16671        )
16672    );
16673    assert_eq!(
16674        unsafe {
16675            &(*(::std::ptr::null::<_php_output_handler_user_func_t>())).zoh as *const _ as usize
16676        },
16677        88usize,
16678        concat!(
16679            "Offset of field: ",
16680            stringify!(_php_output_handler_user_func_t),
16681            "::",
16682            stringify!(zoh)
16683        )
16684    );
16685}
16686pub type php_output_handler_user_func_t = _php_output_handler_user_func_t;
16687#[repr(C)]
16688#[derive(Copy, Clone)]
16689pub struct _php_output_handler {
16690    pub name: *mut zend_string,
16691    pub flags: ::std::os::raw::c_int,
16692    pub level: ::std::os::raw::c_int,
16693    pub size: size_t,
16694    pub buffer: php_output_buffer,
16695    pub opaq: *mut ::std::os::raw::c_void,
16696    pub dtor: ::std::option::Option<unsafe extern "C" fn(opaq: *mut ::std::os::raw::c_void)>,
16697    pub func: _php_output_handler__bindgen_ty_1,
16698}
16699#[repr(C)]
16700#[derive(Copy, Clone)]
16701pub union _php_output_handler__bindgen_ty_1 {
16702    pub user: *mut php_output_handler_user_func_t,
16703    pub internal: php_output_handler_context_func_t,
16704    _bindgen_union_align: u64,
16705}
16706#[test]
16707fn bindgen_test_layout__php_output_handler__bindgen_ty_1() {
16708    assert_eq!(
16709        ::std::mem::size_of::<_php_output_handler__bindgen_ty_1>(),
16710        8usize,
16711        concat!("Size of: ", stringify!(_php_output_handler__bindgen_ty_1))
16712    );
16713    assert_eq!(
16714        ::std::mem::align_of::<_php_output_handler__bindgen_ty_1>(),
16715        8usize,
16716        concat!(
16717            "Alignment of ",
16718            stringify!(_php_output_handler__bindgen_ty_1)
16719        )
16720    );
16721    assert_eq!(
16722        unsafe {
16723            &(*(::std::ptr::null::<_php_output_handler__bindgen_ty_1>())).user as *const _ as usize
16724        },
16725        0usize,
16726        concat!(
16727            "Offset of field: ",
16728            stringify!(_php_output_handler__bindgen_ty_1),
16729            "::",
16730            stringify!(user)
16731        )
16732    );
16733    assert_eq!(
16734        unsafe {
16735            &(*(::std::ptr::null::<_php_output_handler__bindgen_ty_1>())).internal as *const _
16736                as usize
16737        },
16738        0usize,
16739        concat!(
16740            "Offset of field: ",
16741            stringify!(_php_output_handler__bindgen_ty_1),
16742            "::",
16743            stringify!(internal)
16744        )
16745    );
16746}
16747#[test]
16748fn bindgen_test_layout__php_output_handler() {
16749    assert_eq!(
16750        ::std::mem::size_of::<_php_output_handler>(),
16751        80usize,
16752        concat!("Size of: ", stringify!(_php_output_handler))
16753    );
16754    assert_eq!(
16755        ::std::mem::align_of::<_php_output_handler>(),
16756        8usize,
16757        concat!("Alignment of ", stringify!(_php_output_handler))
16758    );
16759    assert_eq!(
16760        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).name as *const _ as usize },
16761        0usize,
16762        concat!(
16763            "Offset of field: ",
16764            stringify!(_php_output_handler),
16765            "::",
16766            stringify!(name)
16767        )
16768    );
16769    assert_eq!(
16770        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).flags as *const _ as usize },
16771        8usize,
16772        concat!(
16773            "Offset of field: ",
16774            stringify!(_php_output_handler),
16775            "::",
16776            stringify!(flags)
16777        )
16778    );
16779    assert_eq!(
16780        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).level as *const _ as usize },
16781        12usize,
16782        concat!(
16783            "Offset of field: ",
16784            stringify!(_php_output_handler),
16785            "::",
16786            stringify!(level)
16787        )
16788    );
16789    assert_eq!(
16790        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).size as *const _ as usize },
16791        16usize,
16792        concat!(
16793            "Offset of field: ",
16794            stringify!(_php_output_handler),
16795            "::",
16796            stringify!(size)
16797        )
16798    );
16799    assert_eq!(
16800        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).buffer as *const _ as usize },
16801        24usize,
16802        concat!(
16803            "Offset of field: ",
16804            stringify!(_php_output_handler),
16805            "::",
16806            stringify!(buffer)
16807        )
16808    );
16809    assert_eq!(
16810        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).opaq as *const _ as usize },
16811        56usize,
16812        concat!(
16813            "Offset of field: ",
16814            stringify!(_php_output_handler),
16815            "::",
16816            stringify!(opaq)
16817        )
16818    );
16819    assert_eq!(
16820        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).dtor as *const _ as usize },
16821        64usize,
16822        concat!(
16823            "Offset of field: ",
16824            stringify!(_php_output_handler),
16825            "::",
16826            stringify!(dtor)
16827        )
16828    );
16829    assert_eq!(
16830        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).func as *const _ as usize },
16831        72usize,
16832        concat!(
16833            "Offset of field: ",
16834            stringify!(_php_output_handler),
16835            "::",
16836            stringify!(func)
16837        )
16838    );
16839}
16840pub type php_output_handler = _php_output_handler;
16841#[repr(C)]
16842#[derive(Debug, Copy, Clone)]
16843pub struct _zend_output_globals {
16844    pub handlers: zend_stack,
16845    pub active: *mut php_output_handler,
16846    pub running: *mut php_output_handler,
16847    pub output_start_filename: *const ::std::os::raw::c_char,
16848    pub output_start_lineno: ::std::os::raw::c_int,
16849    pub flags: ::std::os::raw::c_int,
16850}
16851#[test]
16852fn bindgen_test_layout__zend_output_globals() {
16853    assert_eq!(
16854        ::std::mem::size_of::<_zend_output_globals>(),
16855        56usize,
16856        concat!("Size of: ", stringify!(_zend_output_globals))
16857    );
16858    assert_eq!(
16859        ::std::mem::align_of::<_zend_output_globals>(),
16860        8usize,
16861        concat!("Alignment of ", stringify!(_zend_output_globals))
16862    );
16863    assert_eq!(
16864        unsafe { &(*(::std::ptr::null::<_zend_output_globals>())).handlers as *const _ as usize },
16865        0usize,
16866        concat!(
16867            "Offset of field: ",
16868            stringify!(_zend_output_globals),
16869            "::",
16870            stringify!(handlers)
16871        )
16872    );
16873    assert_eq!(
16874        unsafe { &(*(::std::ptr::null::<_zend_output_globals>())).active as *const _ as usize },
16875        24usize,
16876        concat!(
16877            "Offset of field: ",
16878            stringify!(_zend_output_globals),
16879            "::",
16880            stringify!(active)
16881        )
16882    );
16883    assert_eq!(
16884        unsafe { &(*(::std::ptr::null::<_zend_output_globals>())).running as *const _ as usize },
16885        32usize,
16886        concat!(
16887            "Offset of field: ",
16888            stringify!(_zend_output_globals),
16889            "::",
16890            stringify!(running)
16891        )
16892    );
16893    assert_eq!(
16894        unsafe {
16895            &(*(::std::ptr::null::<_zend_output_globals>())).output_start_filename as *const _
16896                as usize
16897        },
16898        40usize,
16899        concat!(
16900            "Offset of field: ",
16901            stringify!(_zend_output_globals),
16902            "::",
16903            stringify!(output_start_filename)
16904        )
16905    );
16906    assert_eq!(
16907        unsafe {
16908            &(*(::std::ptr::null::<_zend_output_globals>())).output_start_lineno as *const _
16909                as usize
16910        },
16911        48usize,
16912        concat!(
16913            "Offset of field: ",
16914            stringify!(_zend_output_globals),
16915            "::",
16916            stringify!(output_start_lineno)
16917        )
16918    );
16919    assert_eq!(
16920        unsafe { &(*(::std::ptr::null::<_zend_output_globals>())).flags as *const _ as usize },
16921        52usize,
16922        concat!(
16923            "Offset of field: ",
16924            stringify!(_zend_output_globals),
16925            "::",
16926            stringify!(flags)
16927        )
16928    );
16929}
16930pub type zend_output_globals = _zend_output_globals;
16931extern "C" {
16932    pub static mut output_globals: zend_output_globals;
16933}
16934extern "C" {
16935    pub static php_output_default_handler_name: [::std::os::raw::c_char; 23usize];
16936}
16937extern "C" {
16938    pub static php_output_devnull_handler_name: [::std::os::raw::c_char; 20usize];
16939}
16940extern "C" {
16941    pub fn php_output_startup();
16942}
16943extern "C" {
16944    pub fn php_output_shutdown();
16945}
16946extern "C" {
16947    pub fn php_output_register_constants();
16948}
16949extern "C" {
16950    pub fn php_output_activate() -> ::std::os::raw::c_int;
16951}
16952extern "C" {
16953    pub fn php_output_deactivate();
16954}
16955extern "C" {
16956    pub fn php_output_set_status(status: ::std::os::raw::c_int);
16957}
16958extern "C" {
16959    pub fn php_output_get_status() -> ::std::os::raw::c_int;
16960}
16961extern "C" {
16962    pub fn php_output_set_implicit_flush(flush: ::std::os::raw::c_int);
16963}
16964extern "C" {
16965    pub fn php_output_get_start_filename() -> *const ::std::os::raw::c_char;
16966}
16967extern "C" {
16968    pub fn php_output_get_start_lineno() -> ::std::os::raw::c_int;
16969}
16970extern "C" {
16971    pub fn php_output_write_unbuffered(str_: *const ::std::os::raw::c_char, len: size_t) -> size_t;
16972}
16973extern "C" {
16974    pub fn php_output_write(str_: *const ::std::os::raw::c_char, len: size_t) -> size_t;
16975}
16976extern "C" {
16977    pub fn php_output_flush() -> ::std::os::raw::c_int;
16978}
16979extern "C" {
16980    pub fn php_output_flush_all();
16981}
16982extern "C" {
16983    pub fn php_output_clean() -> ::std::os::raw::c_int;
16984}
16985extern "C" {
16986    pub fn php_output_clean_all();
16987}
16988extern "C" {
16989    pub fn php_output_end() -> ::std::os::raw::c_int;
16990}
16991extern "C" {
16992    pub fn php_output_end_all();
16993}
16994extern "C" {
16995    pub fn php_output_discard() -> ::std::os::raw::c_int;
16996}
16997extern "C" {
16998    pub fn php_output_discard_all();
16999}
17000extern "C" {
17001    pub fn php_output_get_contents(p: *mut zval) -> ::std::os::raw::c_int;
17002}
17003extern "C" {
17004    pub fn php_output_get_length(p: *mut zval) -> ::std::os::raw::c_int;
17005}
17006extern "C" {
17007    pub fn php_output_get_level() -> ::std::os::raw::c_int;
17008}
17009extern "C" {
17010    pub fn php_output_get_active_handler() -> *mut php_output_handler;
17011}
17012extern "C" {
17013    pub fn php_output_start_default() -> ::std::os::raw::c_int;
17014}
17015extern "C" {
17016    pub fn php_output_start_devnull() -> ::std::os::raw::c_int;
17017}
17018extern "C" {
17019    pub fn php_output_start_user(
17020        output_handler: *mut zval,
17021        chunk_size: size_t,
17022        flags: ::std::os::raw::c_int,
17023    ) -> ::std::os::raw::c_int;
17024}
17025extern "C" {
17026    pub fn php_output_start_internal(
17027        name: *const ::std::os::raw::c_char,
17028        name_len: size_t,
17029        output_handler: php_output_handler_func_t,
17030        chunk_size: size_t,
17031        flags: ::std::os::raw::c_int,
17032    ) -> ::std::os::raw::c_int;
17033}
17034extern "C" {
17035    pub fn php_output_handler_create_user(
17036        handler: *mut zval,
17037        chunk_size: size_t,
17038        flags: ::std::os::raw::c_int,
17039    ) -> *mut php_output_handler;
17040}
17041extern "C" {
17042    pub fn php_output_handler_create_internal(
17043        name: *const ::std::os::raw::c_char,
17044        name_len: size_t,
17045        handler: php_output_handler_context_func_t,
17046        chunk_size: size_t,
17047        flags: ::std::os::raw::c_int,
17048    ) -> *mut php_output_handler;
17049}
17050extern "C" {
17051    pub fn php_output_handler_set_context(
17052        handler: *mut php_output_handler,
17053        opaq: *mut ::std::os::raw::c_void,
17054        dtor: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
17055    );
17056}
17057extern "C" {
17058    pub fn php_output_handler_start(handler: *mut php_output_handler) -> ::std::os::raw::c_int;
17059}
17060extern "C" {
17061    pub fn php_output_handler_started(
17062        name: *const ::std::os::raw::c_char,
17063        name_len: size_t,
17064    ) -> ::std::os::raw::c_int;
17065}
17066extern "C" {
17067    pub fn php_output_handler_hook(
17068        type_: php_output_handler_hook_t,
17069        arg: *mut ::std::os::raw::c_void,
17070    ) -> ::std::os::raw::c_int;
17071}
17072extern "C" {
17073    pub fn php_output_handler_dtor(handler: *mut php_output_handler);
17074}
17075extern "C" {
17076    pub fn php_output_handler_free(handler: *mut *mut php_output_handler);
17077}
17078extern "C" {
17079    pub fn php_output_handler_conflict(
17080        handler_new: *const ::std::os::raw::c_char,
17081        handler_new_len: size_t,
17082        handler_set: *const ::std::os::raw::c_char,
17083        handler_set_len: size_t,
17084    ) -> ::std::os::raw::c_int;
17085}
17086extern "C" {
17087    pub fn php_output_handler_conflict_register(
17088        handler_name: *const ::std::os::raw::c_char,
17089        handler_name_len: size_t,
17090        check_func: php_output_handler_conflict_check_t,
17091    ) -> ::std::os::raw::c_int;
17092}
17093extern "C" {
17094    pub fn php_output_handler_reverse_conflict_register(
17095        handler_name: *const ::std::os::raw::c_char,
17096        handler_name_len: size_t,
17097        check_func: php_output_handler_conflict_check_t,
17098    ) -> ::std::os::raw::c_int;
17099}
17100extern "C" {
17101    pub fn php_output_handler_alias(
17102        handler_name: *const ::std::os::raw::c_char,
17103        handler_name_len: size_t,
17104    ) -> php_output_handler_alias_ctor_t;
17105}
17106extern "C" {
17107    pub fn php_output_handler_alias_register(
17108        handler_name: *const ::std::os::raw::c_char,
17109        handler_name_len: size_t,
17110        func: php_output_handler_alias_ctor_t,
17111    ) -> ::std::os::raw::c_int;
17112}
17113extern "C" {
17114    pub fn php_file_le_stream() -> ::std::os::raw::c_int;
17115}
17116extern "C" {
17117    pub fn php_file_le_pstream() -> ::std::os::raw::c_int;
17118}
17119extern "C" {
17120    pub fn php_file_le_stream_filter() -> ::std::os::raw::c_int;
17121}
17122pub type php_stream = _php_stream;
17123pub type php_stream_wrapper = _php_stream_wrapper;
17124pub type php_stream_context = _php_stream_context;
17125pub type php_stream_filter = _php_stream_filter;
17126pub type php_stream_notification_func = ::std::option::Option<
17127    unsafe extern "C" fn(
17128        context: *mut php_stream_context,
17129        notifycode: ::std::os::raw::c_int,
17130        severity: ::std::os::raw::c_int,
17131        xmsg: *mut ::std::os::raw::c_char,
17132        xcode: ::std::os::raw::c_int,
17133        bytes_sofar: size_t,
17134        bytes_max: size_t,
17135        ptr: *mut ::std::os::raw::c_void,
17136    ),
17137>;
17138pub type php_stream_notifier = _php_stream_notifier;
17139#[repr(C)]
17140#[derive(Copy, Clone)]
17141pub struct _php_stream_notifier {
17142    pub func: php_stream_notification_func,
17143    pub dtor: ::std::option::Option<unsafe extern "C" fn(notifier: *mut php_stream_notifier)>,
17144    pub ptr: zval,
17145    pub mask: ::std::os::raw::c_int,
17146    pub progress: size_t,
17147    pub progress_max: size_t,
17148}
17149#[test]
17150fn bindgen_test_layout__php_stream_notifier() {
17151    assert_eq!(
17152        ::std::mem::size_of::<_php_stream_notifier>(),
17153        56usize,
17154        concat!("Size of: ", stringify!(_php_stream_notifier))
17155    );
17156    assert_eq!(
17157        ::std::mem::align_of::<_php_stream_notifier>(),
17158        8usize,
17159        concat!("Alignment of ", stringify!(_php_stream_notifier))
17160    );
17161    assert_eq!(
17162        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).func as *const _ as usize },
17163        0usize,
17164        concat!(
17165            "Offset of field: ",
17166            stringify!(_php_stream_notifier),
17167            "::",
17168            stringify!(func)
17169        )
17170    );
17171    assert_eq!(
17172        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).dtor as *const _ as usize },
17173        8usize,
17174        concat!(
17175            "Offset of field: ",
17176            stringify!(_php_stream_notifier),
17177            "::",
17178            stringify!(dtor)
17179        )
17180    );
17181    assert_eq!(
17182        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).ptr as *const _ as usize },
17183        16usize,
17184        concat!(
17185            "Offset of field: ",
17186            stringify!(_php_stream_notifier),
17187            "::",
17188            stringify!(ptr)
17189        )
17190    );
17191    assert_eq!(
17192        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).mask as *const _ as usize },
17193        32usize,
17194        concat!(
17195            "Offset of field: ",
17196            stringify!(_php_stream_notifier),
17197            "::",
17198            stringify!(mask)
17199        )
17200    );
17201    assert_eq!(
17202        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).progress as *const _ as usize },
17203        40usize,
17204        concat!(
17205            "Offset of field: ",
17206            stringify!(_php_stream_notifier),
17207            "::",
17208            stringify!(progress)
17209        )
17210    );
17211    assert_eq!(
17212        unsafe {
17213            &(*(::std::ptr::null::<_php_stream_notifier>())).progress_max as *const _ as usize
17214        },
17215        48usize,
17216        concat!(
17217            "Offset of field: ",
17218            stringify!(_php_stream_notifier),
17219            "::",
17220            stringify!(progress_max)
17221        )
17222    );
17223}
17224#[repr(C)]
17225#[derive(Copy, Clone)]
17226pub struct _php_stream_context {
17227    pub notifier: *mut php_stream_notifier,
17228    pub options: zval,
17229    pub res: *mut zend_resource,
17230}
17231#[test]
17232fn bindgen_test_layout__php_stream_context() {
17233    assert_eq!(
17234        ::std::mem::size_of::<_php_stream_context>(),
17235        32usize,
17236        concat!("Size of: ", stringify!(_php_stream_context))
17237    );
17238    assert_eq!(
17239        ::std::mem::align_of::<_php_stream_context>(),
17240        8usize,
17241        concat!("Alignment of ", stringify!(_php_stream_context))
17242    );
17243    assert_eq!(
17244        unsafe { &(*(::std::ptr::null::<_php_stream_context>())).notifier as *const _ as usize },
17245        0usize,
17246        concat!(
17247            "Offset of field: ",
17248            stringify!(_php_stream_context),
17249            "::",
17250            stringify!(notifier)
17251        )
17252    );
17253    assert_eq!(
17254        unsafe { &(*(::std::ptr::null::<_php_stream_context>())).options as *const _ as usize },
17255        8usize,
17256        concat!(
17257            "Offset of field: ",
17258            stringify!(_php_stream_context),
17259            "::",
17260            stringify!(options)
17261        )
17262    );
17263    assert_eq!(
17264        unsafe { &(*(::std::ptr::null::<_php_stream_context>())).res as *const _ as usize },
17265        24usize,
17266        concat!(
17267            "Offset of field: ",
17268            stringify!(_php_stream_context),
17269            "::",
17270            stringify!(res)
17271        )
17272    );
17273}
17274extern "C" {
17275    pub fn php_stream_context_free(context: *mut php_stream_context);
17276}
17277extern "C" {
17278    pub fn php_stream_context_alloc() -> *mut php_stream_context;
17279}
17280extern "C" {
17281    pub fn php_stream_context_get_option(
17282        context: *mut php_stream_context,
17283        wrappername: *const ::std::os::raw::c_char,
17284        optionname: *const ::std::os::raw::c_char,
17285    ) -> *mut zval;
17286}
17287extern "C" {
17288    pub fn php_stream_context_set_option(
17289        context: *mut php_stream_context,
17290        wrappername: *const ::std::os::raw::c_char,
17291        optionname: *const ::std::os::raw::c_char,
17292        optionvalue: *mut zval,
17293    ) -> ::std::os::raw::c_int;
17294}
17295extern "C" {
17296    pub fn php_stream_notification_alloc() -> *mut php_stream_notifier;
17297}
17298extern "C" {
17299    pub fn php_stream_notification_free(notifier: *mut php_stream_notifier);
17300}
17301extern "C" {
17302    pub fn php_stream_notification_notify(
17303        context: *mut php_stream_context,
17304        notifycode: ::std::os::raw::c_int,
17305        severity: ::std::os::raw::c_int,
17306        xmsg: *mut ::std::os::raw::c_char,
17307        xcode: ::std::os::raw::c_int,
17308        bytes_sofar: size_t,
17309        bytes_max: size_t,
17310        ptr: *mut ::std::os::raw::c_void,
17311    );
17312}
17313extern "C" {
17314    pub fn php_stream_context_set(
17315        stream: *mut php_stream,
17316        context: *mut php_stream_context,
17317    ) -> *mut php_stream_context;
17318}
17319pub type php_stream_bucket = _php_stream_bucket;
17320pub type php_stream_bucket_brigade = _php_stream_bucket_brigade;
17321#[repr(C)]
17322#[derive(Debug, Copy, Clone)]
17323pub struct _php_stream_bucket {
17324    pub next: *mut php_stream_bucket,
17325    pub prev: *mut php_stream_bucket,
17326    pub brigade: *mut php_stream_bucket_brigade,
17327    pub buf: *mut ::std::os::raw::c_char,
17328    pub buflen: size_t,
17329    pub own_buf: u8,
17330    pub is_persistent: u8,
17331    pub refcount: ::std::os::raw::c_int,
17332}
17333#[test]
17334fn bindgen_test_layout__php_stream_bucket() {
17335    assert_eq!(
17336        ::std::mem::size_of::<_php_stream_bucket>(),
17337        48usize,
17338        concat!("Size of: ", stringify!(_php_stream_bucket))
17339    );
17340    assert_eq!(
17341        ::std::mem::align_of::<_php_stream_bucket>(),
17342        8usize,
17343        concat!("Alignment of ", stringify!(_php_stream_bucket))
17344    );
17345    assert_eq!(
17346        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).next as *const _ as usize },
17347        0usize,
17348        concat!(
17349            "Offset of field: ",
17350            stringify!(_php_stream_bucket),
17351            "::",
17352            stringify!(next)
17353        )
17354    );
17355    assert_eq!(
17356        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).prev as *const _ as usize },
17357        8usize,
17358        concat!(
17359            "Offset of field: ",
17360            stringify!(_php_stream_bucket),
17361            "::",
17362            stringify!(prev)
17363        )
17364    );
17365    assert_eq!(
17366        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).brigade as *const _ as usize },
17367        16usize,
17368        concat!(
17369            "Offset of field: ",
17370            stringify!(_php_stream_bucket),
17371            "::",
17372            stringify!(brigade)
17373        )
17374    );
17375    assert_eq!(
17376        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).buf as *const _ as usize },
17377        24usize,
17378        concat!(
17379            "Offset of field: ",
17380            stringify!(_php_stream_bucket),
17381            "::",
17382            stringify!(buf)
17383        )
17384    );
17385    assert_eq!(
17386        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).buflen as *const _ as usize },
17387        32usize,
17388        concat!(
17389            "Offset of field: ",
17390            stringify!(_php_stream_bucket),
17391            "::",
17392            stringify!(buflen)
17393        )
17394    );
17395    assert_eq!(
17396        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).own_buf as *const _ as usize },
17397        40usize,
17398        concat!(
17399            "Offset of field: ",
17400            stringify!(_php_stream_bucket),
17401            "::",
17402            stringify!(own_buf)
17403        )
17404    );
17405    assert_eq!(
17406        unsafe {
17407            &(*(::std::ptr::null::<_php_stream_bucket>())).is_persistent as *const _ as usize
17408        },
17409        41usize,
17410        concat!(
17411            "Offset of field: ",
17412            stringify!(_php_stream_bucket),
17413            "::",
17414            stringify!(is_persistent)
17415        )
17416    );
17417    assert_eq!(
17418        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).refcount as *const _ as usize },
17419        44usize,
17420        concat!(
17421            "Offset of field: ",
17422            stringify!(_php_stream_bucket),
17423            "::",
17424            stringify!(refcount)
17425        )
17426    );
17427}
17428#[repr(C)]
17429#[derive(Debug, Copy, Clone)]
17430pub struct _php_stream_bucket_brigade {
17431    pub head: *mut php_stream_bucket,
17432    pub tail: *mut php_stream_bucket,
17433}
17434#[test]
17435fn bindgen_test_layout__php_stream_bucket_brigade() {
17436    assert_eq!(
17437        ::std::mem::size_of::<_php_stream_bucket_brigade>(),
17438        16usize,
17439        concat!("Size of: ", stringify!(_php_stream_bucket_brigade))
17440    );
17441    assert_eq!(
17442        ::std::mem::align_of::<_php_stream_bucket_brigade>(),
17443        8usize,
17444        concat!("Alignment of ", stringify!(_php_stream_bucket_brigade))
17445    );
17446    assert_eq!(
17447        unsafe { &(*(::std::ptr::null::<_php_stream_bucket_brigade>())).head as *const _ as usize },
17448        0usize,
17449        concat!(
17450            "Offset of field: ",
17451            stringify!(_php_stream_bucket_brigade),
17452            "::",
17453            stringify!(head)
17454        )
17455    );
17456    assert_eq!(
17457        unsafe { &(*(::std::ptr::null::<_php_stream_bucket_brigade>())).tail as *const _ as usize },
17458        8usize,
17459        concat!(
17460            "Offset of field: ",
17461            stringify!(_php_stream_bucket_brigade),
17462            "::",
17463            stringify!(tail)
17464        )
17465    );
17466}
17467pub const php_stream_filter_status_t_PSFS_ERR_FATAL: php_stream_filter_status_t = 0;
17468pub const php_stream_filter_status_t_PSFS_FEED_ME: php_stream_filter_status_t = 1;
17469pub const php_stream_filter_status_t_PSFS_PASS_ON: php_stream_filter_status_t = 2;
17470pub type php_stream_filter_status_t = ::std::os::raw::c_uint;
17471extern "C" {
17472    pub fn php_stream_bucket_new(
17473        stream: *mut php_stream,
17474        buf: *mut ::std::os::raw::c_char,
17475        buflen: size_t,
17476        own_buf: u8,
17477        buf_persistent: u8,
17478    ) -> *mut php_stream_bucket;
17479}
17480extern "C" {
17481    pub fn php_stream_bucket_split(
17482        in_: *mut php_stream_bucket,
17483        left: *mut *mut php_stream_bucket,
17484        right: *mut *mut php_stream_bucket,
17485        length: size_t,
17486    ) -> ::std::os::raw::c_int;
17487}
17488extern "C" {
17489    pub fn php_stream_bucket_delref(bucket: *mut php_stream_bucket);
17490}
17491extern "C" {
17492    pub fn php_stream_bucket_prepend(
17493        brigade: *mut php_stream_bucket_brigade,
17494        bucket: *mut php_stream_bucket,
17495    );
17496}
17497extern "C" {
17498    pub fn php_stream_bucket_append(
17499        brigade: *mut php_stream_bucket_brigade,
17500        bucket: *mut php_stream_bucket,
17501    );
17502}
17503extern "C" {
17504    pub fn php_stream_bucket_unlink(bucket: *mut php_stream_bucket);
17505}
17506extern "C" {
17507    pub fn php_stream_bucket_make_writeable(
17508        bucket: *mut php_stream_bucket,
17509    ) -> *mut php_stream_bucket;
17510}
17511#[repr(C)]
17512#[derive(Debug, Copy, Clone)]
17513pub struct _php_stream_filter_ops {
17514    pub filter: ::std::option::Option<
17515        unsafe extern "C" fn(
17516            stream: *mut php_stream,
17517            thisfilter: *mut php_stream_filter,
17518            buckets_in: *mut php_stream_bucket_brigade,
17519            buckets_out: *mut php_stream_bucket_brigade,
17520            bytes_consumed: *mut size_t,
17521            flags: ::std::os::raw::c_int,
17522        ) -> php_stream_filter_status_t,
17523    >,
17524    pub dtor: ::std::option::Option<unsafe extern "C" fn(thisfilter: *mut php_stream_filter)>,
17525    pub label: *const ::std::os::raw::c_char,
17526}
17527#[test]
17528fn bindgen_test_layout__php_stream_filter_ops() {
17529    assert_eq!(
17530        ::std::mem::size_of::<_php_stream_filter_ops>(),
17531        24usize,
17532        concat!("Size of: ", stringify!(_php_stream_filter_ops))
17533    );
17534    assert_eq!(
17535        ::std::mem::align_of::<_php_stream_filter_ops>(),
17536        8usize,
17537        concat!("Alignment of ", stringify!(_php_stream_filter_ops))
17538    );
17539    assert_eq!(
17540        unsafe { &(*(::std::ptr::null::<_php_stream_filter_ops>())).filter as *const _ as usize },
17541        0usize,
17542        concat!(
17543            "Offset of field: ",
17544            stringify!(_php_stream_filter_ops),
17545            "::",
17546            stringify!(filter)
17547        )
17548    );
17549    assert_eq!(
17550        unsafe { &(*(::std::ptr::null::<_php_stream_filter_ops>())).dtor as *const _ as usize },
17551        8usize,
17552        concat!(
17553            "Offset of field: ",
17554            stringify!(_php_stream_filter_ops),
17555            "::",
17556            stringify!(dtor)
17557        )
17558    );
17559    assert_eq!(
17560        unsafe { &(*(::std::ptr::null::<_php_stream_filter_ops>())).label as *const _ as usize },
17561        16usize,
17562        concat!(
17563            "Offset of field: ",
17564            stringify!(_php_stream_filter_ops),
17565            "::",
17566            stringify!(label)
17567        )
17568    );
17569}
17570pub type php_stream_filter_ops = _php_stream_filter_ops;
17571#[repr(C)]
17572#[derive(Debug, Copy, Clone)]
17573pub struct _php_stream_filter_chain {
17574    pub head: *mut php_stream_filter,
17575    pub tail: *mut php_stream_filter,
17576    pub stream: *mut php_stream,
17577}
17578#[test]
17579fn bindgen_test_layout__php_stream_filter_chain() {
17580    assert_eq!(
17581        ::std::mem::size_of::<_php_stream_filter_chain>(),
17582        24usize,
17583        concat!("Size of: ", stringify!(_php_stream_filter_chain))
17584    );
17585    assert_eq!(
17586        ::std::mem::align_of::<_php_stream_filter_chain>(),
17587        8usize,
17588        concat!("Alignment of ", stringify!(_php_stream_filter_chain))
17589    );
17590    assert_eq!(
17591        unsafe { &(*(::std::ptr::null::<_php_stream_filter_chain>())).head as *const _ as usize },
17592        0usize,
17593        concat!(
17594            "Offset of field: ",
17595            stringify!(_php_stream_filter_chain),
17596            "::",
17597            stringify!(head)
17598        )
17599    );
17600    assert_eq!(
17601        unsafe { &(*(::std::ptr::null::<_php_stream_filter_chain>())).tail as *const _ as usize },
17602        8usize,
17603        concat!(
17604            "Offset of field: ",
17605            stringify!(_php_stream_filter_chain),
17606            "::",
17607            stringify!(tail)
17608        )
17609    );
17610    assert_eq!(
17611        unsafe { &(*(::std::ptr::null::<_php_stream_filter_chain>())).stream as *const _ as usize },
17612        16usize,
17613        concat!(
17614            "Offset of field: ",
17615            stringify!(_php_stream_filter_chain),
17616            "::",
17617            stringify!(stream)
17618        )
17619    );
17620}
17621pub type php_stream_filter_chain = _php_stream_filter_chain;
17622#[repr(C)]
17623#[derive(Copy, Clone)]
17624pub struct _php_stream_filter {
17625    pub fops: *const php_stream_filter_ops,
17626    pub abstract_: zval,
17627    pub next: *mut php_stream_filter,
17628    pub prev: *mut php_stream_filter,
17629    pub is_persistent: ::std::os::raw::c_int,
17630    pub chain: *mut php_stream_filter_chain,
17631    pub buffer: php_stream_bucket_brigade,
17632    pub res: *mut zend_resource,
17633}
17634#[test]
17635fn bindgen_test_layout__php_stream_filter() {
17636    assert_eq!(
17637        ::std::mem::size_of::<_php_stream_filter>(),
17638        80usize,
17639        concat!("Size of: ", stringify!(_php_stream_filter))
17640    );
17641    assert_eq!(
17642        ::std::mem::align_of::<_php_stream_filter>(),
17643        8usize,
17644        concat!("Alignment of ", stringify!(_php_stream_filter))
17645    );
17646    assert_eq!(
17647        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).fops as *const _ as usize },
17648        0usize,
17649        concat!(
17650            "Offset of field: ",
17651            stringify!(_php_stream_filter),
17652            "::",
17653            stringify!(fops)
17654        )
17655    );
17656    assert_eq!(
17657        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).abstract_ as *const _ as usize },
17658        8usize,
17659        concat!(
17660            "Offset of field: ",
17661            stringify!(_php_stream_filter),
17662            "::",
17663            stringify!(abstract_)
17664        )
17665    );
17666    assert_eq!(
17667        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).next as *const _ as usize },
17668        24usize,
17669        concat!(
17670            "Offset of field: ",
17671            stringify!(_php_stream_filter),
17672            "::",
17673            stringify!(next)
17674        )
17675    );
17676    assert_eq!(
17677        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).prev as *const _ as usize },
17678        32usize,
17679        concat!(
17680            "Offset of field: ",
17681            stringify!(_php_stream_filter),
17682            "::",
17683            stringify!(prev)
17684        )
17685    );
17686    assert_eq!(
17687        unsafe {
17688            &(*(::std::ptr::null::<_php_stream_filter>())).is_persistent as *const _ as usize
17689        },
17690        40usize,
17691        concat!(
17692            "Offset of field: ",
17693            stringify!(_php_stream_filter),
17694            "::",
17695            stringify!(is_persistent)
17696        )
17697    );
17698    assert_eq!(
17699        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).chain as *const _ as usize },
17700        48usize,
17701        concat!(
17702            "Offset of field: ",
17703            stringify!(_php_stream_filter),
17704            "::",
17705            stringify!(chain)
17706        )
17707    );
17708    assert_eq!(
17709        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).buffer as *const _ as usize },
17710        56usize,
17711        concat!(
17712            "Offset of field: ",
17713            stringify!(_php_stream_filter),
17714            "::",
17715            stringify!(buffer)
17716        )
17717    );
17718    assert_eq!(
17719        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).res as *const _ as usize },
17720        72usize,
17721        concat!(
17722            "Offset of field: ",
17723            stringify!(_php_stream_filter),
17724            "::",
17725            stringify!(res)
17726        )
17727    );
17728}
17729extern "C" {
17730    pub fn php_stream_filter_prepend_ex(
17731        chain: *mut php_stream_filter_chain,
17732        filter: *mut php_stream_filter,
17733    ) -> ::std::os::raw::c_int;
17734}
17735extern "C" {
17736    pub fn php_stream_filter_append_ex(
17737        chain: *mut php_stream_filter_chain,
17738        filter: *mut php_stream_filter,
17739    ) -> ::std::os::raw::c_int;
17740}
17741extern "C" {
17742    pub fn php_stream_filter_remove(
17743        filter: *mut php_stream_filter,
17744        call_dtor: ::std::os::raw::c_int,
17745    ) -> *mut php_stream_filter;
17746}
17747extern "C" {
17748    pub fn php_stream_filter_free(filter: *mut php_stream_filter);
17749}
17750#[repr(C)]
17751#[derive(Debug, Copy, Clone)]
17752pub struct _php_stream_filter_factory {
17753    pub create_filter: ::std::option::Option<
17754        unsafe extern "C" fn(
17755            filtername: *const ::std::os::raw::c_char,
17756            filterparams: *mut zval,
17757            persistent: u8,
17758        ) -> *mut php_stream_filter,
17759    >,
17760}
17761#[test]
17762fn bindgen_test_layout__php_stream_filter_factory() {
17763    assert_eq!(
17764        ::std::mem::size_of::<_php_stream_filter_factory>(),
17765        8usize,
17766        concat!("Size of: ", stringify!(_php_stream_filter_factory))
17767    );
17768    assert_eq!(
17769        ::std::mem::align_of::<_php_stream_filter_factory>(),
17770        8usize,
17771        concat!("Alignment of ", stringify!(_php_stream_filter_factory))
17772    );
17773    assert_eq!(
17774        unsafe {
17775            &(*(::std::ptr::null::<_php_stream_filter_factory>())).create_filter as *const _
17776                as usize
17777        },
17778        0usize,
17779        concat!(
17780            "Offset of field: ",
17781            stringify!(_php_stream_filter_factory),
17782            "::",
17783            stringify!(create_filter)
17784        )
17785    );
17786}
17787pub type php_stream_filter_factory = _php_stream_filter_factory;
17788extern "C" {
17789    pub fn php_stream_filter_register_factory(
17790        filterpattern: *const ::std::os::raw::c_char,
17791        factory: *const php_stream_filter_factory,
17792    ) -> ::std::os::raw::c_int;
17793}
17794extern "C" {
17795    pub fn php_stream_filter_unregister_factory(
17796        filterpattern: *const ::std::os::raw::c_char,
17797    ) -> ::std::os::raw::c_int;
17798}
17799extern "C" {
17800    pub fn php_stream_filter_register_factory_volatile(
17801        filterpattern: *mut zend_string,
17802        factory: *const php_stream_filter_factory,
17803    ) -> ::std::os::raw::c_int;
17804}
17805extern "C" {
17806    pub fn php_stream_filter_create(
17807        filtername: *const ::std::os::raw::c_char,
17808        filterparams: *mut zval,
17809        persistent: u8,
17810    ) -> *mut php_stream_filter;
17811}
17812#[repr(C)]
17813#[derive(Debug, Copy, Clone)]
17814pub struct _php_stream_statbuf {
17815    pub sb: zend_stat_t,
17816}
17817#[test]
17818fn bindgen_test_layout__php_stream_statbuf() {
17819    assert_eq!(
17820        ::std::mem::size_of::<_php_stream_statbuf>(),
17821        144usize,
17822        concat!("Size of: ", stringify!(_php_stream_statbuf))
17823    );
17824    assert_eq!(
17825        ::std::mem::align_of::<_php_stream_statbuf>(),
17826        8usize,
17827        concat!("Alignment of ", stringify!(_php_stream_statbuf))
17828    );
17829    assert_eq!(
17830        unsafe { &(*(::std::ptr::null::<_php_stream_statbuf>())).sb as *const _ as usize },
17831        0usize,
17832        concat!(
17833            "Offset of field: ",
17834            stringify!(_php_stream_statbuf),
17835            "::",
17836            stringify!(sb)
17837        )
17838    );
17839}
17840pub type php_stream_statbuf = _php_stream_statbuf;
17841#[repr(C)]
17842#[derive(Debug, Copy, Clone)]
17843pub struct _php_stream_ops {
17844    pub write: ::std::option::Option<
17845        unsafe extern "C" fn(
17846            stream: *mut php_stream,
17847            buf: *const ::std::os::raw::c_char,
17848            count: size_t,
17849        ) -> ssize_t,
17850    >,
17851    pub read: ::std::option::Option<
17852        unsafe extern "C" fn(
17853            stream: *mut php_stream,
17854            buf: *mut ::std::os::raw::c_char,
17855            count: size_t,
17856        ) -> ssize_t,
17857    >,
17858    pub close: ::std::option::Option<
17859        unsafe extern "C" fn(
17860            stream: *mut php_stream,
17861            close_handle: ::std::os::raw::c_int,
17862        ) -> ::std::os::raw::c_int,
17863    >,
17864    pub flush: ::std::option::Option<
17865        unsafe extern "C" fn(stream: *mut php_stream) -> ::std::os::raw::c_int,
17866    >,
17867    pub label: *const ::std::os::raw::c_char,
17868    pub seek: ::std::option::Option<
17869        unsafe extern "C" fn(
17870            stream: *mut php_stream,
17871            offset: zend_off_t,
17872            whence: ::std::os::raw::c_int,
17873            newoffset: *mut zend_off_t,
17874        ) -> ::std::os::raw::c_int,
17875    >,
17876    pub cast: ::std::option::Option<
17877        unsafe extern "C" fn(
17878            stream: *mut php_stream,
17879            castas: ::std::os::raw::c_int,
17880            ret: *mut *mut ::std::os::raw::c_void,
17881        ) -> ::std::os::raw::c_int,
17882    >,
17883    pub stat: ::std::option::Option<
17884        unsafe extern "C" fn(
17885            stream: *mut php_stream,
17886            ssb: *mut php_stream_statbuf,
17887        ) -> ::std::os::raw::c_int,
17888    >,
17889    pub set_option: ::std::option::Option<
17890        unsafe extern "C" fn(
17891            stream: *mut php_stream,
17892            option: ::std::os::raw::c_int,
17893            value: ::std::os::raw::c_int,
17894            ptrparam: *mut ::std::os::raw::c_void,
17895        ) -> ::std::os::raw::c_int,
17896    >,
17897}
17898#[test]
17899fn bindgen_test_layout__php_stream_ops() {
17900    assert_eq!(
17901        ::std::mem::size_of::<_php_stream_ops>(),
17902        72usize,
17903        concat!("Size of: ", stringify!(_php_stream_ops))
17904    );
17905    assert_eq!(
17906        ::std::mem::align_of::<_php_stream_ops>(),
17907        8usize,
17908        concat!("Alignment of ", stringify!(_php_stream_ops))
17909    );
17910    assert_eq!(
17911        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).write as *const _ as usize },
17912        0usize,
17913        concat!(
17914            "Offset of field: ",
17915            stringify!(_php_stream_ops),
17916            "::",
17917            stringify!(write)
17918        )
17919    );
17920    assert_eq!(
17921        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).read as *const _ as usize },
17922        8usize,
17923        concat!(
17924            "Offset of field: ",
17925            stringify!(_php_stream_ops),
17926            "::",
17927            stringify!(read)
17928        )
17929    );
17930    assert_eq!(
17931        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).close as *const _ as usize },
17932        16usize,
17933        concat!(
17934            "Offset of field: ",
17935            stringify!(_php_stream_ops),
17936            "::",
17937            stringify!(close)
17938        )
17939    );
17940    assert_eq!(
17941        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).flush as *const _ as usize },
17942        24usize,
17943        concat!(
17944            "Offset of field: ",
17945            stringify!(_php_stream_ops),
17946            "::",
17947            stringify!(flush)
17948        )
17949    );
17950    assert_eq!(
17951        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).label as *const _ as usize },
17952        32usize,
17953        concat!(
17954            "Offset of field: ",
17955            stringify!(_php_stream_ops),
17956            "::",
17957            stringify!(label)
17958        )
17959    );
17960    assert_eq!(
17961        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).seek as *const _ as usize },
17962        40usize,
17963        concat!(
17964            "Offset of field: ",
17965            stringify!(_php_stream_ops),
17966            "::",
17967            stringify!(seek)
17968        )
17969    );
17970    assert_eq!(
17971        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).cast as *const _ as usize },
17972        48usize,
17973        concat!(
17974            "Offset of field: ",
17975            stringify!(_php_stream_ops),
17976            "::",
17977            stringify!(cast)
17978        )
17979    );
17980    assert_eq!(
17981        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).stat as *const _ as usize },
17982        56usize,
17983        concat!(
17984            "Offset of field: ",
17985            stringify!(_php_stream_ops),
17986            "::",
17987            stringify!(stat)
17988        )
17989    );
17990    assert_eq!(
17991        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).set_option as *const _ as usize },
17992        64usize,
17993        concat!(
17994            "Offset of field: ",
17995            stringify!(_php_stream_ops),
17996            "::",
17997            stringify!(set_option)
17998        )
17999    );
18000}
18001pub type php_stream_ops = _php_stream_ops;
18002#[repr(C)]
18003#[derive(Debug, Copy, Clone)]
18004pub struct _php_stream_wrapper_ops {
18005    pub stream_opener: ::std::option::Option<
18006        unsafe extern "C" fn(
18007            wrapper: *mut php_stream_wrapper,
18008            filename: *const ::std::os::raw::c_char,
18009            mode: *const ::std::os::raw::c_char,
18010            options: ::std::os::raw::c_int,
18011            opened_path: *mut *mut zend_string,
18012            context: *mut php_stream_context,
18013        ) -> *mut php_stream,
18014    >,
18015    pub stream_closer: ::std::option::Option<
18016        unsafe extern "C" fn(
18017            wrapper: *mut php_stream_wrapper,
18018            stream: *mut php_stream,
18019        ) -> ::std::os::raw::c_int,
18020    >,
18021    pub stream_stat: ::std::option::Option<
18022        unsafe extern "C" fn(
18023            wrapper: *mut php_stream_wrapper,
18024            stream: *mut php_stream,
18025            ssb: *mut php_stream_statbuf,
18026        ) -> ::std::os::raw::c_int,
18027    >,
18028    pub url_stat: ::std::option::Option<
18029        unsafe extern "C" fn(
18030            wrapper: *mut php_stream_wrapper,
18031            url: *const ::std::os::raw::c_char,
18032            flags: ::std::os::raw::c_int,
18033            ssb: *mut php_stream_statbuf,
18034            context: *mut php_stream_context,
18035        ) -> ::std::os::raw::c_int,
18036    >,
18037    pub dir_opener: ::std::option::Option<
18038        unsafe extern "C" fn(
18039            wrapper: *mut php_stream_wrapper,
18040            filename: *const ::std::os::raw::c_char,
18041            mode: *const ::std::os::raw::c_char,
18042            options: ::std::os::raw::c_int,
18043            opened_path: *mut *mut zend_string,
18044            context: *mut php_stream_context,
18045        ) -> *mut php_stream,
18046    >,
18047    pub label: *const ::std::os::raw::c_char,
18048    pub unlink: ::std::option::Option<
18049        unsafe extern "C" fn(
18050            wrapper: *mut php_stream_wrapper,
18051            url: *const ::std::os::raw::c_char,
18052            options: ::std::os::raw::c_int,
18053            context: *mut php_stream_context,
18054        ) -> ::std::os::raw::c_int,
18055    >,
18056    pub rename: ::std::option::Option<
18057        unsafe extern "C" fn(
18058            wrapper: *mut php_stream_wrapper,
18059            url_from: *const ::std::os::raw::c_char,
18060            url_to: *const ::std::os::raw::c_char,
18061            options: ::std::os::raw::c_int,
18062            context: *mut php_stream_context,
18063        ) -> ::std::os::raw::c_int,
18064    >,
18065    pub stream_mkdir: ::std::option::Option<
18066        unsafe extern "C" fn(
18067            wrapper: *mut php_stream_wrapper,
18068            url: *const ::std::os::raw::c_char,
18069            mode: ::std::os::raw::c_int,
18070            options: ::std::os::raw::c_int,
18071            context: *mut php_stream_context,
18072        ) -> ::std::os::raw::c_int,
18073    >,
18074    pub stream_rmdir: ::std::option::Option<
18075        unsafe extern "C" fn(
18076            wrapper: *mut php_stream_wrapper,
18077            url: *const ::std::os::raw::c_char,
18078            options: ::std::os::raw::c_int,
18079            context: *mut php_stream_context,
18080        ) -> ::std::os::raw::c_int,
18081    >,
18082    pub stream_metadata: ::std::option::Option<
18083        unsafe extern "C" fn(
18084            wrapper: *mut php_stream_wrapper,
18085            url: *const ::std::os::raw::c_char,
18086            options: ::std::os::raw::c_int,
18087            value: *mut ::std::os::raw::c_void,
18088            context: *mut php_stream_context,
18089        ) -> ::std::os::raw::c_int,
18090    >,
18091}
18092#[test]
18093fn bindgen_test_layout__php_stream_wrapper_ops() {
18094    assert_eq!(
18095        ::std::mem::size_of::<_php_stream_wrapper_ops>(),
18096        88usize,
18097        concat!("Size of: ", stringify!(_php_stream_wrapper_ops))
18098    );
18099    assert_eq!(
18100        ::std::mem::align_of::<_php_stream_wrapper_ops>(),
18101        8usize,
18102        concat!("Alignment of ", stringify!(_php_stream_wrapper_ops))
18103    );
18104    assert_eq!(
18105        unsafe {
18106            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_opener as *const _ as usize
18107        },
18108        0usize,
18109        concat!(
18110            "Offset of field: ",
18111            stringify!(_php_stream_wrapper_ops),
18112            "::",
18113            stringify!(stream_opener)
18114        )
18115    );
18116    assert_eq!(
18117        unsafe {
18118            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_closer as *const _ as usize
18119        },
18120        8usize,
18121        concat!(
18122            "Offset of field: ",
18123            stringify!(_php_stream_wrapper_ops),
18124            "::",
18125            stringify!(stream_closer)
18126        )
18127    );
18128    assert_eq!(
18129        unsafe {
18130            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_stat as *const _ as usize
18131        },
18132        16usize,
18133        concat!(
18134            "Offset of field: ",
18135            stringify!(_php_stream_wrapper_ops),
18136            "::",
18137            stringify!(stream_stat)
18138        )
18139    );
18140    assert_eq!(
18141        unsafe {
18142            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).url_stat as *const _ as usize
18143        },
18144        24usize,
18145        concat!(
18146            "Offset of field: ",
18147            stringify!(_php_stream_wrapper_ops),
18148            "::",
18149            stringify!(url_stat)
18150        )
18151    );
18152    assert_eq!(
18153        unsafe {
18154            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).dir_opener as *const _ as usize
18155        },
18156        32usize,
18157        concat!(
18158            "Offset of field: ",
18159            stringify!(_php_stream_wrapper_ops),
18160            "::",
18161            stringify!(dir_opener)
18162        )
18163    );
18164    assert_eq!(
18165        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).label as *const _ as usize },
18166        40usize,
18167        concat!(
18168            "Offset of field: ",
18169            stringify!(_php_stream_wrapper_ops),
18170            "::",
18171            stringify!(label)
18172        )
18173    );
18174    assert_eq!(
18175        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).unlink as *const _ as usize },
18176        48usize,
18177        concat!(
18178            "Offset of field: ",
18179            stringify!(_php_stream_wrapper_ops),
18180            "::",
18181            stringify!(unlink)
18182        )
18183    );
18184    assert_eq!(
18185        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).rename as *const _ as usize },
18186        56usize,
18187        concat!(
18188            "Offset of field: ",
18189            stringify!(_php_stream_wrapper_ops),
18190            "::",
18191            stringify!(rename)
18192        )
18193    );
18194    assert_eq!(
18195        unsafe {
18196            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_mkdir as *const _ as usize
18197        },
18198        64usize,
18199        concat!(
18200            "Offset of field: ",
18201            stringify!(_php_stream_wrapper_ops),
18202            "::",
18203            stringify!(stream_mkdir)
18204        )
18205    );
18206    assert_eq!(
18207        unsafe {
18208            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_rmdir as *const _ as usize
18209        },
18210        72usize,
18211        concat!(
18212            "Offset of field: ",
18213            stringify!(_php_stream_wrapper_ops),
18214            "::",
18215            stringify!(stream_rmdir)
18216        )
18217    );
18218    assert_eq!(
18219        unsafe {
18220            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_metadata as *const _ as usize
18221        },
18222        80usize,
18223        concat!(
18224            "Offset of field: ",
18225            stringify!(_php_stream_wrapper_ops),
18226            "::",
18227            stringify!(stream_metadata)
18228        )
18229    );
18230}
18231pub type php_stream_wrapper_ops = _php_stream_wrapper_ops;
18232#[repr(C)]
18233#[derive(Debug, Copy, Clone)]
18234pub struct _php_stream_wrapper {
18235    pub wops: *const php_stream_wrapper_ops,
18236    pub abstract_: *mut ::std::os::raw::c_void,
18237    pub is_url: ::std::os::raw::c_int,
18238}
18239#[test]
18240fn bindgen_test_layout__php_stream_wrapper() {
18241    assert_eq!(
18242        ::std::mem::size_of::<_php_stream_wrapper>(),
18243        24usize,
18244        concat!("Size of: ", stringify!(_php_stream_wrapper))
18245    );
18246    assert_eq!(
18247        ::std::mem::align_of::<_php_stream_wrapper>(),
18248        8usize,
18249        concat!("Alignment of ", stringify!(_php_stream_wrapper))
18250    );
18251    assert_eq!(
18252        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper>())).wops as *const _ as usize },
18253        0usize,
18254        concat!(
18255            "Offset of field: ",
18256            stringify!(_php_stream_wrapper),
18257            "::",
18258            stringify!(wops)
18259        )
18260    );
18261    assert_eq!(
18262        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper>())).abstract_ as *const _ as usize },
18263        8usize,
18264        concat!(
18265            "Offset of field: ",
18266            stringify!(_php_stream_wrapper),
18267            "::",
18268            stringify!(abstract_)
18269        )
18270    );
18271    assert_eq!(
18272        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper>())).is_url as *const _ as usize },
18273        16usize,
18274        concat!(
18275            "Offset of field: ",
18276            stringify!(_php_stream_wrapper),
18277            "::",
18278            stringify!(is_url)
18279        )
18280    );
18281}
18282#[repr(C)]
18283#[derive(Copy, Clone)]
18284pub struct _php_stream {
18285    pub ops: *const php_stream_ops,
18286    pub abstract_: *mut ::std::os::raw::c_void,
18287    pub readfilters: php_stream_filter_chain,
18288    pub writefilters: php_stream_filter_chain,
18289    pub wrapper: *mut php_stream_wrapper,
18290    pub wrapperthis: *mut ::std::os::raw::c_void,
18291    pub wrapperdata: zval,
18292    pub _bitfield_align_1: [u8; 0],
18293    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
18294    pub fgetss_state: u8,
18295    pub mode: [::std::os::raw::c_char; 16usize],
18296    pub flags: u32,
18297    pub res: *mut zend_resource,
18298    pub stdiocast: *mut FILE,
18299    pub orig_path: *mut ::std::os::raw::c_char,
18300    pub ctx: *mut zend_resource,
18301    pub position: zend_off_t,
18302    pub readbuf: *mut ::std::os::raw::c_uchar,
18303    pub readbuflen: size_t,
18304    pub readpos: zend_off_t,
18305    pub writepos: zend_off_t,
18306    pub chunk_size: size_t,
18307    pub enclosing_stream: *mut _php_stream,
18308}
18309#[test]
18310fn bindgen_test_layout__php_stream() {
18311    assert_eq!(
18312        ::std::mem::size_of::<_php_stream>(),
18313        208usize,
18314        concat!("Size of: ", stringify!(_php_stream))
18315    );
18316    assert_eq!(
18317        ::std::mem::align_of::<_php_stream>(),
18318        8usize,
18319        concat!("Alignment of ", stringify!(_php_stream))
18320    );
18321    assert_eq!(
18322        unsafe { &(*(::std::ptr::null::<_php_stream>())).ops as *const _ as usize },
18323        0usize,
18324        concat!(
18325            "Offset of field: ",
18326            stringify!(_php_stream),
18327            "::",
18328            stringify!(ops)
18329        )
18330    );
18331    assert_eq!(
18332        unsafe { &(*(::std::ptr::null::<_php_stream>())).abstract_ as *const _ as usize },
18333        8usize,
18334        concat!(
18335            "Offset of field: ",
18336            stringify!(_php_stream),
18337            "::",
18338            stringify!(abstract_)
18339        )
18340    );
18341    assert_eq!(
18342        unsafe { &(*(::std::ptr::null::<_php_stream>())).readfilters as *const _ as usize },
18343        16usize,
18344        concat!(
18345            "Offset of field: ",
18346            stringify!(_php_stream),
18347            "::",
18348            stringify!(readfilters)
18349        )
18350    );
18351    assert_eq!(
18352        unsafe { &(*(::std::ptr::null::<_php_stream>())).writefilters as *const _ as usize },
18353        40usize,
18354        concat!(
18355            "Offset of field: ",
18356            stringify!(_php_stream),
18357            "::",
18358            stringify!(writefilters)
18359        )
18360    );
18361    assert_eq!(
18362        unsafe { &(*(::std::ptr::null::<_php_stream>())).wrapper as *const _ as usize },
18363        64usize,
18364        concat!(
18365            "Offset of field: ",
18366            stringify!(_php_stream),
18367            "::",
18368            stringify!(wrapper)
18369        )
18370    );
18371    assert_eq!(
18372        unsafe { &(*(::std::ptr::null::<_php_stream>())).wrapperthis as *const _ as usize },
18373        72usize,
18374        concat!(
18375            "Offset of field: ",
18376            stringify!(_php_stream),
18377            "::",
18378            stringify!(wrapperthis)
18379        )
18380    );
18381    assert_eq!(
18382        unsafe { &(*(::std::ptr::null::<_php_stream>())).wrapperdata as *const _ as usize },
18383        80usize,
18384        concat!(
18385            "Offset of field: ",
18386            stringify!(_php_stream),
18387            "::",
18388            stringify!(wrapperdata)
18389        )
18390    );
18391    assert_eq!(
18392        unsafe { &(*(::std::ptr::null::<_php_stream>())).fgetss_state as *const _ as usize },
18393        97usize,
18394        concat!(
18395            "Offset of field: ",
18396            stringify!(_php_stream),
18397            "::",
18398            stringify!(fgetss_state)
18399        )
18400    );
18401    assert_eq!(
18402        unsafe { &(*(::std::ptr::null::<_php_stream>())).mode as *const _ as usize },
18403        98usize,
18404        concat!(
18405            "Offset of field: ",
18406            stringify!(_php_stream),
18407            "::",
18408            stringify!(mode)
18409        )
18410    );
18411    assert_eq!(
18412        unsafe { &(*(::std::ptr::null::<_php_stream>())).flags as *const _ as usize },
18413        116usize,
18414        concat!(
18415            "Offset of field: ",
18416            stringify!(_php_stream),
18417            "::",
18418            stringify!(flags)
18419        )
18420    );
18421    assert_eq!(
18422        unsafe { &(*(::std::ptr::null::<_php_stream>())).res as *const _ as usize },
18423        120usize,
18424        concat!(
18425            "Offset of field: ",
18426            stringify!(_php_stream),
18427            "::",
18428            stringify!(res)
18429        )
18430    );
18431    assert_eq!(
18432        unsafe { &(*(::std::ptr::null::<_php_stream>())).stdiocast as *const _ as usize },
18433        128usize,
18434        concat!(
18435            "Offset of field: ",
18436            stringify!(_php_stream),
18437            "::",
18438            stringify!(stdiocast)
18439        )
18440    );
18441    assert_eq!(
18442        unsafe { &(*(::std::ptr::null::<_php_stream>())).orig_path as *const _ as usize },
18443        136usize,
18444        concat!(
18445            "Offset of field: ",
18446            stringify!(_php_stream),
18447            "::",
18448            stringify!(orig_path)
18449        )
18450    );
18451    assert_eq!(
18452        unsafe { &(*(::std::ptr::null::<_php_stream>())).ctx as *const _ as usize },
18453        144usize,
18454        concat!(
18455            "Offset of field: ",
18456            stringify!(_php_stream),
18457            "::",
18458            stringify!(ctx)
18459        )
18460    );
18461    assert_eq!(
18462        unsafe { &(*(::std::ptr::null::<_php_stream>())).position as *const _ as usize },
18463        152usize,
18464        concat!(
18465            "Offset of field: ",
18466            stringify!(_php_stream),
18467            "::",
18468            stringify!(position)
18469        )
18470    );
18471    assert_eq!(
18472        unsafe { &(*(::std::ptr::null::<_php_stream>())).readbuf as *const _ as usize },
18473        160usize,
18474        concat!(
18475            "Offset of field: ",
18476            stringify!(_php_stream),
18477            "::",
18478            stringify!(readbuf)
18479        )
18480    );
18481    assert_eq!(
18482        unsafe { &(*(::std::ptr::null::<_php_stream>())).readbuflen as *const _ as usize },
18483        168usize,
18484        concat!(
18485            "Offset of field: ",
18486            stringify!(_php_stream),
18487            "::",
18488            stringify!(readbuflen)
18489        )
18490    );
18491    assert_eq!(
18492        unsafe { &(*(::std::ptr::null::<_php_stream>())).readpos as *const _ as usize },
18493        176usize,
18494        concat!(
18495            "Offset of field: ",
18496            stringify!(_php_stream),
18497            "::",
18498            stringify!(readpos)
18499        )
18500    );
18501    assert_eq!(
18502        unsafe { &(*(::std::ptr::null::<_php_stream>())).writepos as *const _ as usize },
18503        184usize,
18504        concat!(
18505            "Offset of field: ",
18506            stringify!(_php_stream),
18507            "::",
18508            stringify!(writepos)
18509        )
18510    );
18511    assert_eq!(
18512        unsafe { &(*(::std::ptr::null::<_php_stream>())).chunk_size as *const _ as usize },
18513        192usize,
18514        concat!(
18515            "Offset of field: ",
18516            stringify!(_php_stream),
18517            "::",
18518            stringify!(chunk_size)
18519        )
18520    );
18521    assert_eq!(
18522        unsafe { &(*(::std::ptr::null::<_php_stream>())).enclosing_stream as *const _ as usize },
18523        200usize,
18524        concat!(
18525            "Offset of field: ",
18526            stringify!(_php_stream),
18527            "::",
18528            stringify!(enclosing_stream)
18529        )
18530    );
18531}
18532impl _php_stream {
18533    #[inline]
18534    pub fn is_persistent(&self) -> u8 {
18535        unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) }
18536    }
18537    #[inline]
18538    pub fn set_is_persistent(&mut self, val: u8) {
18539        unsafe {
18540            let val: u8 = ::std::mem::transmute(val);
18541            self._bitfield_1.set(0usize, 1u8, val as u64)
18542        }
18543    }
18544    #[inline]
18545    pub fn in_free(&self) -> u8 {
18546        unsafe { ::std::mem::transmute(self._bitfield_1.get(1usize, 2u8) as u8) }
18547    }
18548    #[inline]
18549    pub fn set_in_free(&mut self, val: u8) {
18550        unsafe {
18551            let val: u8 = ::std::mem::transmute(val);
18552            self._bitfield_1.set(1usize, 2u8, val as u64)
18553        }
18554    }
18555    #[inline]
18556    pub fn eof(&self) -> u8 {
18557        unsafe { ::std::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u8) }
18558    }
18559    #[inline]
18560    pub fn set_eof(&mut self, val: u8) {
18561        unsafe {
18562            let val: u8 = ::std::mem::transmute(val);
18563            self._bitfield_1.set(3usize, 1u8, val as u64)
18564        }
18565    }
18566    #[inline]
18567    pub fn __exposed(&self) -> u8 {
18568        unsafe { ::std::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u8) }
18569    }
18570    #[inline]
18571    pub fn set___exposed(&mut self, val: u8) {
18572        unsafe {
18573            let val: u8 = ::std::mem::transmute(val);
18574            self._bitfield_1.set(4usize, 1u8, val as u64)
18575        }
18576    }
18577    #[inline]
18578    pub fn fclose_stdiocast(&self) -> u8 {
18579        unsafe { ::std::mem::transmute(self._bitfield_1.get(5usize, 2u8) as u8) }
18580    }
18581    #[inline]
18582    pub fn set_fclose_stdiocast(&mut self, val: u8) {
18583        unsafe {
18584            let val: u8 = ::std::mem::transmute(val);
18585            self._bitfield_1.set(5usize, 2u8, val as u64)
18586        }
18587    }
18588    #[inline]
18589    pub fn new_bitfield_1(
18590        is_persistent: u8,
18591        in_free: u8,
18592        eof: u8,
18593        __exposed: u8,
18594        fclose_stdiocast: u8,
18595    ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
18596        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
18597        __bindgen_bitfield_unit.set(0usize, 1u8, {
18598            let is_persistent: u8 = unsafe { ::std::mem::transmute(is_persistent) };
18599            is_persistent as u64
18600        });
18601        __bindgen_bitfield_unit.set(1usize, 2u8, {
18602            let in_free: u8 = unsafe { ::std::mem::transmute(in_free) };
18603            in_free as u64
18604        });
18605        __bindgen_bitfield_unit.set(3usize, 1u8, {
18606            let eof: u8 = unsafe { ::std::mem::transmute(eof) };
18607            eof as u64
18608        });
18609        __bindgen_bitfield_unit.set(4usize, 1u8, {
18610            let __exposed: u8 = unsafe { ::std::mem::transmute(__exposed) };
18611            __exposed as u64
18612        });
18613        __bindgen_bitfield_unit.set(5usize, 2u8, {
18614            let fclose_stdiocast: u8 = unsafe { ::std::mem::transmute(fclose_stdiocast) };
18615            fclose_stdiocast as u64
18616        });
18617        __bindgen_bitfield_unit
18618    }
18619}
18620extern "C" {
18621    pub fn php_stream_encloses(
18622        enclosing: *mut php_stream,
18623        enclosed: *mut php_stream,
18624    ) -> *mut php_stream;
18625}
18626extern "C" {
18627    pub fn php_stream_from_persistent_id(
18628        persistent_id: *const ::std::os::raw::c_char,
18629        stream: *mut *mut php_stream,
18630    ) -> ::std::os::raw::c_int;
18631}
18632extern "C" {
18633    pub fn php_stream_read_to_str(stream: *mut php_stream, len: size_t) -> *mut zend_string;
18634}
18635extern "C" {
18636    pub fn php_stream_get_record(
18637        stream: *mut php_stream,
18638        maxlen: size_t,
18639        delim: *const ::std::os::raw::c_char,
18640        delim_len: size_t,
18641    ) -> *mut zend_string;
18642}
18643extern "C" {
18644    pub fn php_stream_dirent_alphasort(
18645        a: *mut *const zend_string,
18646        b: *mut *const zend_string,
18647    ) -> ::std::os::raw::c_int;
18648}
18649extern "C" {
18650    pub fn php_stream_dirent_alphasortr(
18651        a: *mut *const zend_string,
18652        b: *mut *const zend_string,
18653    ) -> ::std::os::raw::c_int;
18654}
18655pub type php_stream_transport_factory_func = ::std::option::Option<
18656    unsafe extern "C" fn(
18657        proto: *const ::std::os::raw::c_char,
18658        protolen: size_t,
18659        resourcename: *const ::std::os::raw::c_char,
18660        resourcenamelen: size_t,
18661        persistent_id: *const ::std::os::raw::c_char,
18662        options: ::std::os::raw::c_int,
18663        flags: ::std::os::raw::c_int,
18664        timeout: *mut timeval,
18665        context: *mut php_stream_context,
18666    ) -> *mut php_stream,
18667>;
18668pub type php_stream_transport_factory = php_stream_transport_factory_func;
18669extern "C" {
18670    pub fn php_stream_xport_register(
18671        protocol: *const ::std::os::raw::c_char,
18672        factory: php_stream_transport_factory,
18673    ) -> ::std::os::raw::c_int;
18674}
18675extern "C" {
18676    pub fn php_stream_xport_unregister(
18677        protocol: *const ::std::os::raw::c_char,
18678    ) -> ::std::os::raw::c_int;
18679}
18680extern "C" {
18681    pub fn php_stream_xport_bind(
18682        stream: *mut php_stream,
18683        name: *const ::std::os::raw::c_char,
18684        namelen: size_t,
18685        error_text: *mut *mut zend_string,
18686    ) -> ::std::os::raw::c_int;
18687}
18688extern "C" {
18689    pub fn php_stream_xport_connect(
18690        stream: *mut php_stream,
18691        name: *const ::std::os::raw::c_char,
18692        namelen: size_t,
18693        asynchronous: ::std::os::raw::c_int,
18694        timeout: *mut timeval,
18695        error_text: *mut *mut zend_string,
18696        error_code: *mut ::std::os::raw::c_int,
18697    ) -> ::std::os::raw::c_int;
18698}
18699extern "C" {
18700    pub fn php_stream_xport_listen(
18701        stream: *mut php_stream,
18702        backlog: ::std::os::raw::c_int,
18703        error_text: *mut *mut zend_string,
18704    ) -> ::std::os::raw::c_int;
18705}
18706extern "C" {
18707    pub fn php_stream_xport_accept(
18708        stream: *mut php_stream,
18709        client: *mut *mut php_stream,
18710        textaddr: *mut *mut zend_string,
18711        addr: *mut *mut ::std::os::raw::c_void,
18712        addrlen: *mut socklen_t,
18713        timeout: *mut timeval,
18714        error_text: *mut *mut zend_string,
18715    ) -> ::std::os::raw::c_int;
18716}
18717extern "C" {
18718    pub fn php_stream_xport_get_name(
18719        stream: *mut php_stream,
18720        want_peer: ::std::os::raw::c_int,
18721        textaddr: *mut *mut zend_string,
18722        addr: *mut *mut ::std::os::raw::c_void,
18723        addrlen: *mut socklen_t,
18724    ) -> ::std::os::raw::c_int;
18725}
18726extern "C" {
18727    pub fn php_stream_xport_recvfrom(
18728        stream: *mut php_stream,
18729        buf: *mut ::std::os::raw::c_char,
18730        buflen: size_t,
18731        flags: ::std::os::raw::c_int,
18732        addr: *mut *mut ::std::os::raw::c_void,
18733        addrlen: *mut socklen_t,
18734        textaddr: *mut *mut zend_string,
18735    ) -> ::std::os::raw::c_int;
18736}
18737extern "C" {
18738    pub fn php_stream_xport_sendto(
18739        stream: *mut php_stream,
18740        buf: *const ::std::os::raw::c_char,
18741        buflen: size_t,
18742        flags: ::std::os::raw::c_int,
18743        addr: *mut ::std::os::raw::c_void,
18744        addrlen: socklen_t,
18745    ) -> ::std::os::raw::c_int;
18746}
18747pub const stream_shutdown_t_STREAM_SHUT_RD: stream_shutdown_t = 0;
18748pub const stream_shutdown_t_STREAM_SHUT_WR: stream_shutdown_t = 1;
18749pub const stream_shutdown_t_STREAM_SHUT_RDWR: stream_shutdown_t = 2;
18750pub type stream_shutdown_t = ::std::os::raw::c_uint;
18751extern "C" {
18752    pub fn php_stream_xport_shutdown(
18753        stream: *mut php_stream,
18754        how: stream_shutdown_t,
18755    ) -> ::std::os::raw::c_int;
18756}
18757pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv2_CLIENT:
18758    php_stream_xport_crypt_method_t = 3;
18759pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv3_CLIENT:
18760    php_stream_xport_crypt_method_t = 5;
18761pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv23_CLIENT:
18762    php_stream_xport_crypt_method_t = 57;
18763pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_0_CLIENT:
18764    php_stream_xport_crypt_method_t = 9;
18765pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_1_CLIENT:
18766    php_stream_xport_crypt_method_t = 17;
18767pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT:
18768    php_stream_xport_crypt_method_t = 33;
18769pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_3_CLIENT:
18770    php_stream_xport_crypt_method_t = 65;
18771pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLS_CLIENT:
18772    php_stream_xport_crypt_method_t = 121;
18773pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLS_ANY_CLIENT:
18774    php_stream_xport_crypt_method_t = 121;
18775pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_ANY_CLIENT:
18776    php_stream_xport_crypt_method_t = 127;
18777pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv2_SERVER:
18778    php_stream_xport_crypt_method_t = 2;
18779pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv3_SERVER:
18780    php_stream_xport_crypt_method_t = 4;
18781pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv23_SERVER:
18782    php_stream_xport_crypt_method_t = 120;
18783pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_0_SERVER:
18784    php_stream_xport_crypt_method_t = 8;
18785pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_1_SERVER:
18786    php_stream_xport_crypt_method_t = 16;
18787pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_2_SERVER:
18788    php_stream_xport_crypt_method_t = 32;
18789pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_3_SERVER:
18790    php_stream_xport_crypt_method_t = 64;
18791pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLS_SERVER:
18792    php_stream_xport_crypt_method_t = 120;
18793pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLS_ANY_SERVER:
18794    php_stream_xport_crypt_method_t = 120;
18795pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_ANY_SERVER:
18796    php_stream_xport_crypt_method_t = 126;
18797pub type php_stream_xport_crypt_method_t = ::std::os::raw::c_uint;
18798extern "C" {
18799    pub fn php_stream_xport_crypto_setup(
18800        stream: *mut php_stream,
18801        crypto_method: php_stream_xport_crypt_method_t,
18802        session_stream: *mut php_stream,
18803    ) -> ::std::os::raw::c_int;
18804}
18805extern "C" {
18806    pub fn php_stream_xport_crypto_enable(
18807        stream: *mut php_stream,
18808        activate: ::std::os::raw::c_int,
18809    ) -> ::std::os::raw::c_int;
18810}
18811extern "C" {
18812    pub fn php_stream_xport_get_hash() -> *mut HashTable;
18813}
18814extern "C" {
18815    pub fn php_stream_generic_socket_factory(
18816        proto: *const ::std::os::raw::c_char,
18817        protolen: size_t,
18818        resourcename: *const ::std::os::raw::c_char,
18819        resourcenamelen: size_t,
18820        persistent_id: *const ::std::os::raw::c_char,
18821        options: ::std::os::raw::c_int,
18822        flags: ::std::os::raw::c_int,
18823        timeout: *mut timeval,
18824        context: *mut php_stream_context,
18825    ) -> *mut php_stream;
18826}
18827extern "C" {
18828    pub static mut php_stream_stdio_ops: php_stream_ops;
18829}
18830extern "C" {
18831    pub static mut php_plain_files_wrapper: php_stream_wrapper;
18832}
18833extern "C" {
18834    pub fn php_stream_parse_fopen_modes(
18835        mode: *const ::std::os::raw::c_char,
18836        open_flags: *mut ::std::os::raw::c_int,
18837    ) -> ::std::os::raw::c_int;
18838}
18839extern "C" {
18840    pub static php_glob_stream_wrapper: php_stream_wrapper;
18841}
18842extern "C" {
18843    pub static php_glob_stream_ops: php_stream_ops;
18844}
18845extern "C" {
18846    pub static php_stream_userspace_ops: php_stream_ops;
18847}
18848extern "C" {
18849    pub static php_stream_userspace_dir_ops: php_stream_ops;
18850}
18851extern "C" {
18852    pub fn php_init_stream_wrappers(module_number: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
18853}
18854extern "C" {
18855    pub fn php_shutdown_stream_wrappers(
18856        module_number: ::std::os::raw::c_int,
18857    ) -> ::std::os::raw::c_int;
18858}
18859extern "C" {
18860    pub fn php_shutdown_stream_hashes();
18861}
18862extern "C" {
18863    pub fn php_register_url_stream_wrapper(
18864        protocol: *const ::std::os::raw::c_char,
18865        wrapper: *const php_stream_wrapper,
18866    ) -> ::std::os::raw::c_int;
18867}
18868extern "C" {
18869    pub fn php_unregister_url_stream_wrapper(
18870        protocol: *const ::std::os::raw::c_char,
18871    ) -> ::std::os::raw::c_int;
18872}
18873extern "C" {
18874    pub fn php_register_url_stream_wrapper_volatile(
18875        protocol: *mut zend_string,
18876        wrapper: *mut php_stream_wrapper,
18877    ) -> ::std::os::raw::c_int;
18878}
18879extern "C" {
18880    pub fn php_unregister_url_stream_wrapper_volatile(
18881        protocol: *mut zend_string,
18882    ) -> ::std::os::raw::c_int;
18883}
18884extern "C" {
18885    pub fn php_stream_locate_url_wrapper(
18886        path: *const ::std::os::raw::c_char,
18887        path_for_open: *mut *const ::std::os::raw::c_char,
18888        options: ::std::os::raw::c_int,
18889    ) -> *mut php_stream_wrapper;
18890}
18891extern "C" {
18892    pub fn php_stream_locate_eol(
18893        stream: *mut php_stream,
18894        buf: *mut zend_string,
18895    ) -> *const ::std::os::raw::c_char;
18896}
18897extern "C" {
18898    pub fn php_stream_wrapper_log_error(
18899        wrapper: *const php_stream_wrapper,
18900        options: ::std::os::raw::c_int,
18901        fmt: *const ::std::os::raw::c_char,
18902        ...
18903    );
18904}
18905extern "C" {
18906    pub fn php_stream_get_url_stream_wrappers_hash_global() -> *mut HashTable;
18907}
18908extern "C" {
18909    pub fn php_get_stream_filters_hash_global() -> *mut HashTable;
18910}
18911extern "C" {
18912    pub static mut php_stream_user_wrapper_ops: *const php_stream_wrapper_ops;
18913}
18914extern "C" {
18915    pub fn php_stream_mode_from_str(mode: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
18916}
18917extern "C" {
18918    pub static php_stream_memory_ops: php_stream_ops;
18919}
18920extern "C" {
18921    pub static php_stream_temp_ops: php_stream_ops;
18922}
18923extern "C" {
18924    pub static php_stream_rfc2397_ops: php_stream_ops;
18925}
18926extern "C" {
18927    pub static php_stream_rfc2397_wrapper: php_stream_wrapper;
18928}
18929#[repr(C)]
18930#[derive(Copy, Clone)]
18931pub struct _php_core_globals {
18932    pub implicit_flush: zend_bool,
18933    pub output_buffering: zend_long,
18934    pub enable_dl: zend_bool,
18935    pub output_handler: *mut ::std::os::raw::c_char,
18936    pub unserialize_callback_func: *mut ::std::os::raw::c_char,
18937    pub serialize_precision: zend_long,
18938    pub memory_limit: zend_long,
18939    pub max_input_time: zend_long,
18940    pub track_errors: zend_bool,
18941    pub display_errors: zend_bool,
18942    pub display_startup_errors: zend_bool,
18943    pub log_errors: zend_bool,
18944    pub log_errors_max_len: zend_long,
18945    pub ignore_repeated_errors: zend_bool,
18946    pub ignore_repeated_source: zend_bool,
18947    pub report_memleaks: zend_bool,
18948    pub error_log: *mut ::std::os::raw::c_char,
18949    pub doc_root: *mut ::std::os::raw::c_char,
18950    pub user_dir: *mut ::std::os::raw::c_char,
18951    pub include_path: *mut ::std::os::raw::c_char,
18952    pub open_basedir: *mut ::std::os::raw::c_char,
18953    pub extension_dir: *mut ::std::os::raw::c_char,
18954    pub php_binary: *mut ::std::os::raw::c_char,
18955    pub sys_temp_dir: *mut ::std::os::raw::c_char,
18956    pub upload_tmp_dir: *mut ::std::os::raw::c_char,
18957    pub upload_max_filesize: zend_long,
18958    pub error_append_string: *mut ::std::os::raw::c_char,
18959    pub error_prepend_string: *mut ::std::os::raw::c_char,
18960    pub auto_prepend_file: *mut ::std::os::raw::c_char,
18961    pub auto_append_file: *mut ::std::os::raw::c_char,
18962    pub input_encoding: *mut ::std::os::raw::c_char,
18963    pub internal_encoding: *mut ::std::os::raw::c_char,
18964    pub output_encoding: *mut ::std::os::raw::c_char,
18965    pub arg_separator: arg_separators,
18966    pub variables_order: *mut ::std::os::raw::c_char,
18967    pub rfc1867_protected_variables: HashTable,
18968    pub connection_status: ::std::os::raw::c_short,
18969    pub ignore_user_abort: zend_bool,
18970    pub header_is_being_sent: ::std::os::raw::c_uchar,
18971    pub tick_functions: zend_llist,
18972    pub http_globals: [zval; 6usize],
18973    pub expose_php: zend_bool,
18974    pub register_argc_argv: zend_bool,
18975    pub auto_globals_jit: zend_bool,
18976    pub docref_root: *mut ::std::os::raw::c_char,
18977    pub docref_ext: *mut ::std::os::raw::c_char,
18978    pub html_errors: zend_bool,
18979    pub xmlrpc_errors: zend_bool,
18980    pub xmlrpc_error_number: zend_long,
18981    pub activated_auto_globals: [zend_bool; 8usize],
18982    pub modules_activated: zend_bool,
18983    pub file_uploads: zend_bool,
18984    pub during_request_startup: zend_bool,
18985    pub allow_url_fopen: zend_bool,
18986    pub enable_post_data_reading: zend_bool,
18987    pub report_zend_debug: zend_bool,
18988    pub last_error_type: ::std::os::raw::c_int,
18989    pub last_error_message: *mut ::std::os::raw::c_char,
18990    pub last_error_file: *mut ::std::os::raw::c_char,
18991    pub last_error_lineno: ::std::os::raw::c_int,
18992    pub php_sys_temp_dir: *mut ::std::os::raw::c_char,
18993    pub disable_functions: *mut ::std::os::raw::c_char,
18994    pub disable_classes: *mut ::std::os::raw::c_char,
18995    pub allow_url_include: zend_bool,
18996    pub max_input_nesting_level: zend_long,
18997    pub max_input_vars: zend_long,
18998    pub in_user_include: zend_bool,
18999    pub user_ini_filename: *mut ::std::os::raw::c_char,
19000    pub user_ini_cache_ttl: zend_long,
19001    pub request_order: *mut ::std::os::raw::c_char,
19002    pub mail_x_header: zend_bool,
19003    pub mail_log: *mut ::std::os::raw::c_char,
19004    pub in_error_log: zend_bool,
19005    pub syslog_facility: zend_long,
19006    pub syslog_ident: *mut ::std::os::raw::c_char,
19007    pub have_called_openlog: zend_bool,
19008    pub syslog_filter: zend_long,
19009}
19010#[test]
19011fn bindgen_test_layout__php_core_globals() {
19012    assert_eq!(
19013        ::std::mem::size_of::<_php_core_globals>(),
19014        688usize,
19015        concat!("Size of: ", stringify!(_php_core_globals))
19016    );
19017    assert_eq!(
19018        ::std::mem::align_of::<_php_core_globals>(),
19019        8usize,
19020        concat!("Alignment of ", stringify!(_php_core_globals))
19021    );
19022    assert_eq!(
19023        unsafe {
19024            &(*(::std::ptr::null::<_php_core_globals>())).implicit_flush as *const _ as usize
19025        },
19026        0usize,
19027        concat!(
19028            "Offset of field: ",
19029            stringify!(_php_core_globals),
19030            "::",
19031            stringify!(implicit_flush)
19032        )
19033    );
19034    assert_eq!(
19035        unsafe {
19036            &(*(::std::ptr::null::<_php_core_globals>())).output_buffering as *const _ as usize
19037        },
19038        8usize,
19039        concat!(
19040            "Offset of field: ",
19041            stringify!(_php_core_globals),
19042            "::",
19043            stringify!(output_buffering)
19044        )
19045    );
19046    assert_eq!(
19047        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).enable_dl as *const _ as usize },
19048        16usize,
19049        concat!(
19050            "Offset of field: ",
19051            stringify!(_php_core_globals),
19052            "::",
19053            stringify!(enable_dl)
19054        )
19055    );
19056    assert_eq!(
19057        unsafe {
19058            &(*(::std::ptr::null::<_php_core_globals>())).output_handler as *const _ as usize
19059        },
19060        24usize,
19061        concat!(
19062            "Offset of field: ",
19063            stringify!(_php_core_globals),
19064            "::",
19065            stringify!(output_handler)
19066        )
19067    );
19068    assert_eq!(
19069        unsafe {
19070            &(*(::std::ptr::null::<_php_core_globals>())).unserialize_callback_func as *const _
19071                as usize
19072        },
19073        32usize,
19074        concat!(
19075            "Offset of field: ",
19076            stringify!(_php_core_globals),
19077            "::",
19078            stringify!(unserialize_callback_func)
19079        )
19080    );
19081    assert_eq!(
19082        unsafe {
19083            &(*(::std::ptr::null::<_php_core_globals>())).serialize_precision as *const _ as usize
19084        },
19085        40usize,
19086        concat!(
19087            "Offset of field: ",
19088            stringify!(_php_core_globals),
19089            "::",
19090            stringify!(serialize_precision)
19091        )
19092    );
19093    assert_eq!(
19094        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).memory_limit as *const _ as usize },
19095        48usize,
19096        concat!(
19097            "Offset of field: ",
19098            stringify!(_php_core_globals),
19099            "::",
19100            stringify!(memory_limit)
19101        )
19102    );
19103    assert_eq!(
19104        unsafe {
19105            &(*(::std::ptr::null::<_php_core_globals>())).max_input_time as *const _ as usize
19106        },
19107        56usize,
19108        concat!(
19109            "Offset of field: ",
19110            stringify!(_php_core_globals),
19111            "::",
19112            stringify!(max_input_time)
19113        )
19114    );
19115    assert_eq!(
19116        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).track_errors as *const _ as usize },
19117        64usize,
19118        concat!(
19119            "Offset of field: ",
19120            stringify!(_php_core_globals),
19121            "::",
19122            stringify!(track_errors)
19123        )
19124    );
19125    assert_eq!(
19126        unsafe {
19127            &(*(::std::ptr::null::<_php_core_globals>())).display_errors as *const _ as usize
19128        },
19129        65usize,
19130        concat!(
19131            "Offset of field: ",
19132            stringify!(_php_core_globals),
19133            "::",
19134            stringify!(display_errors)
19135        )
19136    );
19137    assert_eq!(
19138        unsafe {
19139            &(*(::std::ptr::null::<_php_core_globals>())).display_startup_errors as *const _
19140                as usize
19141        },
19142        66usize,
19143        concat!(
19144            "Offset of field: ",
19145            stringify!(_php_core_globals),
19146            "::",
19147            stringify!(display_startup_errors)
19148        )
19149    );
19150    assert_eq!(
19151        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).log_errors as *const _ as usize },
19152        67usize,
19153        concat!(
19154            "Offset of field: ",
19155            stringify!(_php_core_globals),
19156            "::",
19157            stringify!(log_errors)
19158        )
19159    );
19160    assert_eq!(
19161        unsafe {
19162            &(*(::std::ptr::null::<_php_core_globals>())).log_errors_max_len as *const _ as usize
19163        },
19164        72usize,
19165        concat!(
19166            "Offset of field: ",
19167            stringify!(_php_core_globals),
19168            "::",
19169            stringify!(log_errors_max_len)
19170        )
19171    );
19172    assert_eq!(
19173        unsafe {
19174            &(*(::std::ptr::null::<_php_core_globals>())).ignore_repeated_errors as *const _
19175                as usize
19176        },
19177        80usize,
19178        concat!(
19179            "Offset of field: ",
19180            stringify!(_php_core_globals),
19181            "::",
19182            stringify!(ignore_repeated_errors)
19183        )
19184    );
19185    assert_eq!(
19186        unsafe {
19187            &(*(::std::ptr::null::<_php_core_globals>())).ignore_repeated_source as *const _
19188                as usize
19189        },
19190        81usize,
19191        concat!(
19192            "Offset of field: ",
19193            stringify!(_php_core_globals),
19194            "::",
19195            stringify!(ignore_repeated_source)
19196        )
19197    );
19198    assert_eq!(
19199        unsafe {
19200            &(*(::std::ptr::null::<_php_core_globals>())).report_memleaks as *const _ as usize
19201        },
19202        82usize,
19203        concat!(
19204            "Offset of field: ",
19205            stringify!(_php_core_globals),
19206            "::",
19207            stringify!(report_memleaks)
19208        )
19209    );
19210    assert_eq!(
19211        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).error_log as *const _ as usize },
19212        88usize,
19213        concat!(
19214            "Offset of field: ",
19215            stringify!(_php_core_globals),
19216            "::",
19217            stringify!(error_log)
19218        )
19219    );
19220    assert_eq!(
19221        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).doc_root as *const _ as usize },
19222        96usize,
19223        concat!(
19224            "Offset of field: ",
19225            stringify!(_php_core_globals),
19226            "::",
19227            stringify!(doc_root)
19228        )
19229    );
19230    assert_eq!(
19231        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).user_dir as *const _ as usize },
19232        104usize,
19233        concat!(
19234            "Offset of field: ",
19235            stringify!(_php_core_globals),
19236            "::",
19237            stringify!(user_dir)
19238        )
19239    );
19240    assert_eq!(
19241        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).include_path as *const _ as usize },
19242        112usize,
19243        concat!(
19244            "Offset of field: ",
19245            stringify!(_php_core_globals),
19246            "::",
19247            stringify!(include_path)
19248        )
19249    );
19250    assert_eq!(
19251        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).open_basedir as *const _ as usize },
19252        120usize,
19253        concat!(
19254            "Offset of field: ",
19255            stringify!(_php_core_globals),
19256            "::",
19257            stringify!(open_basedir)
19258        )
19259    );
19260    assert_eq!(
19261        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).extension_dir as *const _ as usize },
19262        128usize,
19263        concat!(
19264            "Offset of field: ",
19265            stringify!(_php_core_globals),
19266            "::",
19267            stringify!(extension_dir)
19268        )
19269    );
19270    assert_eq!(
19271        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).php_binary as *const _ as usize },
19272        136usize,
19273        concat!(
19274            "Offset of field: ",
19275            stringify!(_php_core_globals),
19276            "::",
19277            stringify!(php_binary)
19278        )
19279    );
19280    assert_eq!(
19281        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).sys_temp_dir as *const _ as usize },
19282        144usize,
19283        concat!(
19284            "Offset of field: ",
19285            stringify!(_php_core_globals),
19286            "::",
19287            stringify!(sys_temp_dir)
19288        )
19289    );
19290    assert_eq!(
19291        unsafe {
19292            &(*(::std::ptr::null::<_php_core_globals>())).upload_tmp_dir as *const _ as usize
19293        },
19294        152usize,
19295        concat!(
19296            "Offset of field: ",
19297            stringify!(_php_core_globals),
19298            "::",
19299            stringify!(upload_tmp_dir)
19300        )
19301    );
19302    assert_eq!(
19303        unsafe {
19304            &(*(::std::ptr::null::<_php_core_globals>())).upload_max_filesize as *const _ as usize
19305        },
19306        160usize,
19307        concat!(
19308            "Offset of field: ",
19309            stringify!(_php_core_globals),
19310            "::",
19311            stringify!(upload_max_filesize)
19312        )
19313    );
19314    assert_eq!(
19315        unsafe {
19316            &(*(::std::ptr::null::<_php_core_globals>())).error_append_string as *const _ as usize
19317        },
19318        168usize,
19319        concat!(
19320            "Offset of field: ",
19321            stringify!(_php_core_globals),
19322            "::",
19323            stringify!(error_append_string)
19324        )
19325    );
19326    assert_eq!(
19327        unsafe {
19328            &(*(::std::ptr::null::<_php_core_globals>())).error_prepend_string as *const _ as usize
19329        },
19330        176usize,
19331        concat!(
19332            "Offset of field: ",
19333            stringify!(_php_core_globals),
19334            "::",
19335            stringify!(error_prepend_string)
19336        )
19337    );
19338    assert_eq!(
19339        unsafe {
19340            &(*(::std::ptr::null::<_php_core_globals>())).auto_prepend_file as *const _ as usize
19341        },
19342        184usize,
19343        concat!(
19344            "Offset of field: ",
19345            stringify!(_php_core_globals),
19346            "::",
19347            stringify!(auto_prepend_file)
19348        )
19349    );
19350    assert_eq!(
19351        unsafe {
19352            &(*(::std::ptr::null::<_php_core_globals>())).auto_append_file as *const _ as usize
19353        },
19354        192usize,
19355        concat!(
19356            "Offset of field: ",
19357            stringify!(_php_core_globals),
19358            "::",
19359            stringify!(auto_append_file)
19360        )
19361    );
19362    assert_eq!(
19363        unsafe {
19364            &(*(::std::ptr::null::<_php_core_globals>())).input_encoding as *const _ as usize
19365        },
19366        200usize,
19367        concat!(
19368            "Offset of field: ",
19369            stringify!(_php_core_globals),
19370            "::",
19371            stringify!(input_encoding)
19372        )
19373    );
19374    assert_eq!(
19375        unsafe {
19376            &(*(::std::ptr::null::<_php_core_globals>())).internal_encoding as *const _ as usize
19377        },
19378        208usize,
19379        concat!(
19380            "Offset of field: ",
19381            stringify!(_php_core_globals),
19382            "::",
19383            stringify!(internal_encoding)
19384        )
19385    );
19386    assert_eq!(
19387        unsafe {
19388            &(*(::std::ptr::null::<_php_core_globals>())).output_encoding as *const _ as usize
19389        },
19390        216usize,
19391        concat!(
19392            "Offset of field: ",
19393            stringify!(_php_core_globals),
19394            "::",
19395            stringify!(output_encoding)
19396        )
19397    );
19398    assert_eq!(
19399        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).arg_separator as *const _ as usize },
19400        224usize,
19401        concat!(
19402            "Offset of field: ",
19403            stringify!(_php_core_globals),
19404            "::",
19405            stringify!(arg_separator)
19406        )
19407    );
19408    assert_eq!(
19409        unsafe {
19410            &(*(::std::ptr::null::<_php_core_globals>())).variables_order as *const _ as usize
19411        },
19412        240usize,
19413        concat!(
19414            "Offset of field: ",
19415            stringify!(_php_core_globals),
19416            "::",
19417            stringify!(variables_order)
19418        )
19419    );
19420    assert_eq!(
19421        unsafe {
19422            &(*(::std::ptr::null::<_php_core_globals>())).rfc1867_protected_variables as *const _
19423                as usize
19424        },
19425        248usize,
19426        concat!(
19427            "Offset of field: ",
19428            stringify!(_php_core_globals),
19429            "::",
19430            stringify!(rfc1867_protected_variables)
19431        )
19432    );
19433    assert_eq!(
19434        unsafe {
19435            &(*(::std::ptr::null::<_php_core_globals>())).connection_status as *const _ as usize
19436        },
19437        304usize,
19438        concat!(
19439            "Offset of field: ",
19440            stringify!(_php_core_globals),
19441            "::",
19442            stringify!(connection_status)
19443        )
19444    );
19445    assert_eq!(
19446        unsafe {
19447            &(*(::std::ptr::null::<_php_core_globals>())).ignore_user_abort as *const _ as usize
19448        },
19449        306usize,
19450        concat!(
19451            "Offset of field: ",
19452            stringify!(_php_core_globals),
19453            "::",
19454            stringify!(ignore_user_abort)
19455        )
19456    );
19457    assert_eq!(
19458        unsafe {
19459            &(*(::std::ptr::null::<_php_core_globals>())).header_is_being_sent as *const _ as usize
19460        },
19461        307usize,
19462        concat!(
19463            "Offset of field: ",
19464            stringify!(_php_core_globals),
19465            "::",
19466            stringify!(header_is_being_sent)
19467        )
19468    );
19469    assert_eq!(
19470        unsafe {
19471            &(*(::std::ptr::null::<_php_core_globals>())).tick_functions as *const _ as usize
19472        },
19473        312usize,
19474        concat!(
19475            "Offset of field: ",
19476            stringify!(_php_core_globals),
19477            "::",
19478            stringify!(tick_functions)
19479        )
19480    );
19481    assert_eq!(
19482        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).http_globals as *const _ as usize },
19483        368usize,
19484        concat!(
19485            "Offset of field: ",
19486            stringify!(_php_core_globals),
19487            "::",
19488            stringify!(http_globals)
19489        )
19490    );
19491    assert_eq!(
19492        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).expose_php as *const _ as usize },
19493        464usize,
19494        concat!(
19495            "Offset of field: ",
19496            stringify!(_php_core_globals),
19497            "::",
19498            stringify!(expose_php)
19499        )
19500    );
19501    assert_eq!(
19502        unsafe {
19503            &(*(::std::ptr::null::<_php_core_globals>())).register_argc_argv as *const _ as usize
19504        },
19505        465usize,
19506        concat!(
19507            "Offset of field: ",
19508            stringify!(_php_core_globals),
19509            "::",
19510            stringify!(register_argc_argv)
19511        )
19512    );
19513    assert_eq!(
19514        unsafe {
19515            &(*(::std::ptr::null::<_php_core_globals>())).auto_globals_jit as *const _ as usize
19516        },
19517        466usize,
19518        concat!(
19519            "Offset of field: ",
19520            stringify!(_php_core_globals),
19521            "::",
19522            stringify!(auto_globals_jit)
19523        )
19524    );
19525    assert_eq!(
19526        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).docref_root as *const _ as usize },
19527        472usize,
19528        concat!(
19529            "Offset of field: ",
19530            stringify!(_php_core_globals),
19531            "::",
19532            stringify!(docref_root)
19533        )
19534    );
19535    assert_eq!(
19536        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).docref_ext as *const _ as usize },
19537        480usize,
19538        concat!(
19539            "Offset of field: ",
19540            stringify!(_php_core_globals),
19541            "::",
19542            stringify!(docref_ext)
19543        )
19544    );
19545    assert_eq!(
19546        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).html_errors as *const _ as usize },
19547        488usize,
19548        concat!(
19549            "Offset of field: ",
19550            stringify!(_php_core_globals),
19551            "::",
19552            stringify!(html_errors)
19553        )
19554    );
19555    assert_eq!(
19556        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).xmlrpc_errors as *const _ as usize },
19557        489usize,
19558        concat!(
19559            "Offset of field: ",
19560            stringify!(_php_core_globals),
19561            "::",
19562            stringify!(xmlrpc_errors)
19563        )
19564    );
19565    assert_eq!(
19566        unsafe {
19567            &(*(::std::ptr::null::<_php_core_globals>())).xmlrpc_error_number as *const _ as usize
19568        },
19569        496usize,
19570        concat!(
19571            "Offset of field: ",
19572            stringify!(_php_core_globals),
19573            "::",
19574            stringify!(xmlrpc_error_number)
19575        )
19576    );
19577    assert_eq!(
19578        unsafe {
19579            &(*(::std::ptr::null::<_php_core_globals>())).activated_auto_globals as *const _
19580                as usize
19581        },
19582        504usize,
19583        concat!(
19584            "Offset of field: ",
19585            stringify!(_php_core_globals),
19586            "::",
19587            stringify!(activated_auto_globals)
19588        )
19589    );
19590    assert_eq!(
19591        unsafe {
19592            &(*(::std::ptr::null::<_php_core_globals>())).modules_activated as *const _ as usize
19593        },
19594        512usize,
19595        concat!(
19596            "Offset of field: ",
19597            stringify!(_php_core_globals),
19598            "::",
19599            stringify!(modules_activated)
19600        )
19601    );
19602    assert_eq!(
19603        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).file_uploads as *const _ as usize },
19604        513usize,
19605        concat!(
19606            "Offset of field: ",
19607            stringify!(_php_core_globals),
19608            "::",
19609            stringify!(file_uploads)
19610        )
19611    );
19612    assert_eq!(
19613        unsafe {
19614            &(*(::std::ptr::null::<_php_core_globals>())).during_request_startup as *const _
19615                as usize
19616        },
19617        514usize,
19618        concat!(
19619            "Offset of field: ",
19620            stringify!(_php_core_globals),
19621            "::",
19622            stringify!(during_request_startup)
19623        )
19624    );
19625    assert_eq!(
19626        unsafe {
19627            &(*(::std::ptr::null::<_php_core_globals>())).allow_url_fopen as *const _ as usize
19628        },
19629        515usize,
19630        concat!(
19631            "Offset of field: ",
19632            stringify!(_php_core_globals),
19633            "::",
19634            stringify!(allow_url_fopen)
19635        )
19636    );
19637    assert_eq!(
19638        unsafe {
19639            &(*(::std::ptr::null::<_php_core_globals>())).enable_post_data_reading as *const _
19640                as usize
19641        },
19642        516usize,
19643        concat!(
19644            "Offset of field: ",
19645            stringify!(_php_core_globals),
19646            "::",
19647            stringify!(enable_post_data_reading)
19648        )
19649    );
19650    assert_eq!(
19651        unsafe {
19652            &(*(::std::ptr::null::<_php_core_globals>())).report_zend_debug as *const _ as usize
19653        },
19654        517usize,
19655        concat!(
19656            "Offset of field: ",
19657            stringify!(_php_core_globals),
19658            "::",
19659            stringify!(report_zend_debug)
19660        )
19661    );
19662    assert_eq!(
19663        unsafe {
19664            &(*(::std::ptr::null::<_php_core_globals>())).last_error_type as *const _ as usize
19665        },
19666        520usize,
19667        concat!(
19668            "Offset of field: ",
19669            stringify!(_php_core_globals),
19670            "::",
19671            stringify!(last_error_type)
19672        )
19673    );
19674    assert_eq!(
19675        unsafe {
19676            &(*(::std::ptr::null::<_php_core_globals>())).last_error_message as *const _ as usize
19677        },
19678        528usize,
19679        concat!(
19680            "Offset of field: ",
19681            stringify!(_php_core_globals),
19682            "::",
19683            stringify!(last_error_message)
19684        )
19685    );
19686    assert_eq!(
19687        unsafe {
19688            &(*(::std::ptr::null::<_php_core_globals>())).last_error_file as *const _ as usize
19689        },
19690        536usize,
19691        concat!(
19692            "Offset of field: ",
19693            stringify!(_php_core_globals),
19694            "::",
19695            stringify!(last_error_file)
19696        )
19697    );
19698    assert_eq!(
19699        unsafe {
19700            &(*(::std::ptr::null::<_php_core_globals>())).last_error_lineno as *const _ as usize
19701        },
19702        544usize,
19703        concat!(
19704            "Offset of field: ",
19705            stringify!(_php_core_globals),
19706            "::",
19707            stringify!(last_error_lineno)
19708        )
19709    );
19710    assert_eq!(
19711        unsafe {
19712            &(*(::std::ptr::null::<_php_core_globals>())).php_sys_temp_dir as *const _ as usize
19713        },
19714        552usize,
19715        concat!(
19716            "Offset of field: ",
19717            stringify!(_php_core_globals),
19718            "::",
19719            stringify!(php_sys_temp_dir)
19720        )
19721    );
19722    assert_eq!(
19723        unsafe {
19724            &(*(::std::ptr::null::<_php_core_globals>())).disable_functions as *const _ as usize
19725        },
19726        560usize,
19727        concat!(
19728            "Offset of field: ",
19729            stringify!(_php_core_globals),
19730            "::",
19731            stringify!(disable_functions)
19732        )
19733    );
19734    assert_eq!(
19735        unsafe {
19736            &(*(::std::ptr::null::<_php_core_globals>())).disable_classes as *const _ as usize
19737        },
19738        568usize,
19739        concat!(
19740            "Offset of field: ",
19741            stringify!(_php_core_globals),
19742            "::",
19743            stringify!(disable_classes)
19744        )
19745    );
19746    assert_eq!(
19747        unsafe {
19748            &(*(::std::ptr::null::<_php_core_globals>())).allow_url_include as *const _ as usize
19749        },
19750        576usize,
19751        concat!(
19752            "Offset of field: ",
19753            stringify!(_php_core_globals),
19754            "::",
19755            stringify!(allow_url_include)
19756        )
19757    );
19758    assert_eq!(
19759        unsafe {
19760            &(*(::std::ptr::null::<_php_core_globals>())).max_input_nesting_level as *const _
19761                as usize
19762        },
19763        584usize,
19764        concat!(
19765            "Offset of field: ",
19766            stringify!(_php_core_globals),
19767            "::",
19768            stringify!(max_input_nesting_level)
19769        )
19770    );
19771    assert_eq!(
19772        unsafe {
19773            &(*(::std::ptr::null::<_php_core_globals>())).max_input_vars as *const _ as usize
19774        },
19775        592usize,
19776        concat!(
19777            "Offset of field: ",
19778            stringify!(_php_core_globals),
19779            "::",
19780            stringify!(max_input_vars)
19781        )
19782    );
19783    assert_eq!(
19784        unsafe {
19785            &(*(::std::ptr::null::<_php_core_globals>())).in_user_include as *const _ as usize
19786        },
19787        600usize,
19788        concat!(
19789            "Offset of field: ",
19790            stringify!(_php_core_globals),
19791            "::",
19792            stringify!(in_user_include)
19793        )
19794    );
19795    assert_eq!(
19796        unsafe {
19797            &(*(::std::ptr::null::<_php_core_globals>())).user_ini_filename as *const _ as usize
19798        },
19799        608usize,
19800        concat!(
19801            "Offset of field: ",
19802            stringify!(_php_core_globals),
19803            "::",
19804            stringify!(user_ini_filename)
19805        )
19806    );
19807    assert_eq!(
19808        unsafe {
19809            &(*(::std::ptr::null::<_php_core_globals>())).user_ini_cache_ttl as *const _ as usize
19810        },
19811        616usize,
19812        concat!(
19813            "Offset of field: ",
19814            stringify!(_php_core_globals),
19815            "::",
19816            stringify!(user_ini_cache_ttl)
19817        )
19818    );
19819    assert_eq!(
19820        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).request_order as *const _ as usize },
19821        624usize,
19822        concat!(
19823            "Offset of field: ",
19824            stringify!(_php_core_globals),
19825            "::",
19826            stringify!(request_order)
19827        )
19828    );
19829    assert_eq!(
19830        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).mail_x_header as *const _ as usize },
19831        632usize,
19832        concat!(
19833            "Offset of field: ",
19834            stringify!(_php_core_globals),
19835            "::",
19836            stringify!(mail_x_header)
19837        )
19838    );
19839    assert_eq!(
19840        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).mail_log as *const _ as usize },
19841        640usize,
19842        concat!(
19843            "Offset of field: ",
19844            stringify!(_php_core_globals),
19845            "::",
19846            stringify!(mail_log)
19847        )
19848    );
19849    assert_eq!(
19850        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).in_error_log as *const _ as usize },
19851        648usize,
19852        concat!(
19853            "Offset of field: ",
19854            stringify!(_php_core_globals),
19855            "::",
19856            stringify!(in_error_log)
19857        )
19858    );
19859    assert_eq!(
19860        unsafe {
19861            &(*(::std::ptr::null::<_php_core_globals>())).syslog_facility as *const _ as usize
19862        },
19863        656usize,
19864        concat!(
19865            "Offset of field: ",
19866            stringify!(_php_core_globals),
19867            "::",
19868            stringify!(syslog_facility)
19869        )
19870    );
19871    assert_eq!(
19872        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).syslog_ident as *const _ as usize },
19873        664usize,
19874        concat!(
19875            "Offset of field: ",
19876            stringify!(_php_core_globals),
19877            "::",
19878            stringify!(syslog_ident)
19879        )
19880    );
19881    assert_eq!(
19882        unsafe {
19883            &(*(::std::ptr::null::<_php_core_globals>())).have_called_openlog as *const _ as usize
19884        },
19885        672usize,
19886        concat!(
19887            "Offset of field: ",
19888            stringify!(_php_core_globals),
19889            "::",
19890            stringify!(have_called_openlog)
19891        )
19892    );
19893    assert_eq!(
19894        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).syslog_filter as *const _ as usize },
19895        680usize,
19896        concat!(
19897            "Offset of field: ",
19898            stringify!(_php_core_globals),
19899            "::",
19900            stringify!(syslog_filter)
19901        )
19902    );
19903}
19904extern "C" {
19905    pub static mut core_globals: _php_core_globals;
19906}
19907#[repr(C)]
19908#[derive(Debug, Copy, Clone)]
19909pub struct _arg_separators {
19910    pub output: *mut ::std::os::raw::c_char,
19911    pub input: *mut ::std::os::raw::c_char,
19912}
19913#[test]
19914fn bindgen_test_layout__arg_separators() {
19915    assert_eq!(
19916        ::std::mem::size_of::<_arg_separators>(),
19917        16usize,
19918        concat!("Size of: ", stringify!(_arg_separators))
19919    );
19920    assert_eq!(
19921        ::std::mem::align_of::<_arg_separators>(),
19922        8usize,
19923        concat!("Alignment of ", stringify!(_arg_separators))
19924    );
19925    assert_eq!(
19926        unsafe { &(*(::std::ptr::null::<_arg_separators>())).output as *const _ as usize },
19927        0usize,
19928        concat!(
19929            "Offset of field: ",
19930            stringify!(_arg_separators),
19931            "::",
19932            stringify!(output)
19933        )
19934    );
19935    assert_eq!(
19936        unsafe { &(*(::std::ptr::null::<_arg_separators>())).input as *const _ as usize },
19937        8usize,
19938        concat!(
19939            "Offset of field: ",
19940            stringify!(_arg_separators),
19941            "::",
19942            stringify!(input)
19943        )
19944    );
19945}
19946pub type arg_separators = _arg_separators;
19947#[repr(C)]
19948#[derive(Debug, Copy, Clone)]
19949pub struct _zend_ini_entry_def {
19950    pub name: *const ::std::os::raw::c_char,
19951    pub on_modify: ::std::option::Option<
19952        unsafe extern "C" fn(
19953            entry: *mut zend_ini_entry,
19954            new_value: *mut zend_string,
19955            mh_arg1: *mut ::std::os::raw::c_void,
19956            mh_arg2: *mut ::std::os::raw::c_void,
19957            mh_arg3: *mut ::std::os::raw::c_void,
19958            stage: ::std::os::raw::c_int,
19959        ) -> ::std::os::raw::c_int,
19960    >,
19961    pub mh_arg1: *mut ::std::os::raw::c_void,
19962    pub mh_arg2: *mut ::std::os::raw::c_void,
19963    pub mh_arg3: *mut ::std::os::raw::c_void,
19964    pub value: *const ::std::os::raw::c_char,
19965    pub displayer: ::std::option::Option<
19966        unsafe extern "C" fn(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int),
19967    >,
19968    pub value_length: u32,
19969    pub name_length: u16,
19970    pub modifiable: u8,
19971}
19972#[test]
19973fn bindgen_test_layout__zend_ini_entry_def() {
19974    assert_eq!(
19975        ::std::mem::size_of::<_zend_ini_entry_def>(),
19976        64usize,
19977        concat!("Size of: ", stringify!(_zend_ini_entry_def))
19978    );
19979    assert_eq!(
19980        ::std::mem::align_of::<_zend_ini_entry_def>(),
19981        8usize,
19982        concat!("Alignment of ", stringify!(_zend_ini_entry_def))
19983    );
19984    assert_eq!(
19985        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).name as *const _ as usize },
19986        0usize,
19987        concat!(
19988            "Offset of field: ",
19989            stringify!(_zend_ini_entry_def),
19990            "::",
19991            stringify!(name)
19992        )
19993    );
19994    assert_eq!(
19995        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).on_modify as *const _ as usize },
19996        8usize,
19997        concat!(
19998            "Offset of field: ",
19999            stringify!(_zend_ini_entry_def),
20000            "::",
20001            stringify!(on_modify)
20002        )
20003    );
20004    assert_eq!(
20005        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).mh_arg1 as *const _ as usize },
20006        16usize,
20007        concat!(
20008            "Offset of field: ",
20009            stringify!(_zend_ini_entry_def),
20010            "::",
20011            stringify!(mh_arg1)
20012        )
20013    );
20014    assert_eq!(
20015        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).mh_arg2 as *const _ as usize },
20016        24usize,
20017        concat!(
20018            "Offset of field: ",
20019            stringify!(_zend_ini_entry_def),
20020            "::",
20021            stringify!(mh_arg2)
20022        )
20023    );
20024    assert_eq!(
20025        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).mh_arg3 as *const _ as usize },
20026        32usize,
20027        concat!(
20028            "Offset of field: ",
20029            stringify!(_zend_ini_entry_def),
20030            "::",
20031            stringify!(mh_arg3)
20032        )
20033    );
20034    assert_eq!(
20035        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).value as *const _ as usize },
20036        40usize,
20037        concat!(
20038            "Offset of field: ",
20039            stringify!(_zend_ini_entry_def),
20040            "::",
20041            stringify!(value)
20042        )
20043    );
20044    assert_eq!(
20045        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).displayer as *const _ as usize },
20046        48usize,
20047        concat!(
20048            "Offset of field: ",
20049            stringify!(_zend_ini_entry_def),
20050            "::",
20051            stringify!(displayer)
20052        )
20053    );
20054    assert_eq!(
20055        unsafe {
20056            &(*(::std::ptr::null::<_zend_ini_entry_def>())).value_length as *const _ as usize
20057        },
20058        56usize,
20059        concat!(
20060            "Offset of field: ",
20061            stringify!(_zend_ini_entry_def),
20062            "::",
20063            stringify!(value_length)
20064        )
20065    );
20066    assert_eq!(
20067        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).name_length as *const _ as usize },
20068        60usize,
20069        concat!(
20070            "Offset of field: ",
20071            stringify!(_zend_ini_entry_def),
20072            "::",
20073            stringify!(name_length)
20074        )
20075    );
20076    assert_eq!(
20077        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).modifiable as *const _ as usize },
20078        62usize,
20079        concat!(
20080            "Offset of field: ",
20081            stringify!(_zend_ini_entry_def),
20082            "::",
20083            stringify!(modifiable)
20084        )
20085    );
20086}
20087pub type zend_ini_entry_def = _zend_ini_entry_def;
20088#[repr(C)]
20089#[derive(Debug, Copy, Clone)]
20090pub struct _zend_ini_entry {
20091    pub name: *mut zend_string,
20092    pub on_modify: ::std::option::Option<
20093        unsafe extern "C" fn(
20094            entry: *mut zend_ini_entry,
20095            new_value: *mut zend_string,
20096            mh_arg1: *mut ::std::os::raw::c_void,
20097            mh_arg2: *mut ::std::os::raw::c_void,
20098            mh_arg3: *mut ::std::os::raw::c_void,
20099            stage: ::std::os::raw::c_int,
20100        ) -> ::std::os::raw::c_int,
20101    >,
20102    pub mh_arg1: *mut ::std::os::raw::c_void,
20103    pub mh_arg2: *mut ::std::os::raw::c_void,
20104    pub mh_arg3: *mut ::std::os::raw::c_void,
20105    pub value: *mut zend_string,
20106    pub orig_value: *mut zend_string,
20107    pub displayer: ::std::option::Option<
20108        unsafe extern "C" fn(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int),
20109    >,
20110    pub module_number: ::std::os::raw::c_int,
20111    pub modifiable: u8,
20112    pub orig_modifiable: u8,
20113    pub modified: u8,
20114}
20115#[test]
20116fn bindgen_test_layout__zend_ini_entry() {
20117    assert_eq!(
20118        ::std::mem::size_of::<_zend_ini_entry>(),
20119        72usize,
20120        concat!("Size of: ", stringify!(_zend_ini_entry))
20121    );
20122    assert_eq!(
20123        ::std::mem::align_of::<_zend_ini_entry>(),
20124        8usize,
20125        concat!("Alignment of ", stringify!(_zend_ini_entry))
20126    );
20127    assert_eq!(
20128        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).name as *const _ as usize },
20129        0usize,
20130        concat!(
20131            "Offset of field: ",
20132            stringify!(_zend_ini_entry),
20133            "::",
20134            stringify!(name)
20135        )
20136    );
20137    assert_eq!(
20138        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).on_modify as *const _ as usize },
20139        8usize,
20140        concat!(
20141            "Offset of field: ",
20142            stringify!(_zend_ini_entry),
20143            "::",
20144            stringify!(on_modify)
20145        )
20146    );
20147    assert_eq!(
20148        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).mh_arg1 as *const _ as usize },
20149        16usize,
20150        concat!(
20151            "Offset of field: ",
20152            stringify!(_zend_ini_entry),
20153            "::",
20154            stringify!(mh_arg1)
20155        )
20156    );
20157    assert_eq!(
20158        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).mh_arg2 as *const _ as usize },
20159        24usize,
20160        concat!(
20161            "Offset of field: ",
20162            stringify!(_zend_ini_entry),
20163            "::",
20164            stringify!(mh_arg2)
20165        )
20166    );
20167    assert_eq!(
20168        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).mh_arg3 as *const _ as usize },
20169        32usize,
20170        concat!(
20171            "Offset of field: ",
20172            stringify!(_zend_ini_entry),
20173            "::",
20174            stringify!(mh_arg3)
20175        )
20176    );
20177    assert_eq!(
20178        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).value as *const _ as usize },
20179        40usize,
20180        concat!(
20181            "Offset of field: ",
20182            stringify!(_zend_ini_entry),
20183            "::",
20184            stringify!(value)
20185        )
20186    );
20187    assert_eq!(
20188        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).orig_value as *const _ as usize },
20189        48usize,
20190        concat!(
20191            "Offset of field: ",
20192            stringify!(_zend_ini_entry),
20193            "::",
20194            stringify!(orig_value)
20195        )
20196    );
20197    assert_eq!(
20198        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).displayer as *const _ as usize },
20199        56usize,
20200        concat!(
20201            "Offset of field: ",
20202            stringify!(_zend_ini_entry),
20203            "::",
20204            stringify!(displayer)
20205        )
20206    );
20207    assert_eq!(
20208        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).module_number as *const _ as usize },
20209        64usize,
20210        concat!(
20211            "Offset of field: ",
20212            stringify!(_zend_ini_entry),
20213            "::",
20214            stringify!(module_number)
20215        )
20216    );
20217    assert_eq!(
20218        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).modifiable as *const _ as usize },
20219        68usize,
20220        concat!(
20221            "Offset of field: ",
20222            stringify!(_zend_ini_entry),
20223            "::",
20224            stringify!(modifiable)
20225        )
20226    );
20227    assert_eq!(
20228        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).orig_modifiable as *const _ as usize },
20229        69usize,
20230        concat!(
20231            "Offset of field: ",
20232            stringify!(_zend_ini_entry),
20233            "::",
20234            stringify!(orig_modifiable)
20235        )
20236    );
20237    assert_eq!(
20238        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).modified as *const _ as usize },
20239        70usize,
20240        concat!(
20241            "Offset of field: ",
20242            stringify!(_zend_ini_entry),
20243            "::",
20244            stringify!(modified)
20245        )
20246    );
20247}
20248extern "C" {
20249    pub fn zend_ini_startup() -> ::std::os::raw::c_int;
20250}
20251extern "C" {
20252    pub fn zend_ini_shutdown() -> ::std::os::raw::c_int;
20253}
20254extern "C" {
20255    pub fn zend_ini_global_shutdown() -> ::std::os::raw::c_int;
20256}
20257extern "C" {
20258    pub fn zend_ini_deactivate() -> ::std::os::raw::c_int;
20259}
20260extern "C" {
20261    pub fn zend_ini_dtor(ini_directives: *mut HashTable);
20262}
20263extern "C" {
20264    pub fn zend_copy_ini_directives() -> ::std::os::raw::c_int;
20265}
20266extern "C" {
20267    pub fn zend_ini_sort_entries();
20268}
20269extern "C" {
20270    pub fn zend_register_ini_entries(
20271        ini_entry: *const zend_ini_entry_def,
20272        module_number: ::std::os::raw::c_int,
20273    ) -> ::std::os::raw::c_int;
20274}
20275extern "C" {
20276    pub fn zend_unregister_ini_entries(module_number: ::std::os::raw::c_int);
20277}
20278extern "C" {
20279    pub fn zend_ini_refresh_caches(stage: ::std::os::raw::c_int);
20280}
20281extern "C" {
20282    pub fn zend_alter_ini_entry(
20283        name: *mut zend_string,
20284        new_value: *mut zend_string,
20285        modify_type: ::std::os::raw::c_int,
20286        stage: ::std::os::raw::c_int,
20287    ) -> ::std::os::raw::c_int;
20288}
20289extern "C" {
20290    pub fn zend_alter_ini_entry_ex(
20291        name: *mut zend_string,
20292        new_value: *mut zend_string,
20293        modify_type: ::std::os::raw::c_int,
20294        stage: ::std::os::raw::c_int,
20295        force_change: ::std::os::raw::c_int,
20296    ) -> ::std::os::raw::c_int;
20297}
20298extern "C" {
20299    pub fn zend_alter_ini_entry_chars(
20300        name: *mut zend_string,
20301        value: *const ::std::os::raw::c_char,
20302        value_length: size_t,
20303        modify_type: ::std::os::raw::c_int,
20304        stage: ::std::os::raw::c_int,
20305    ) -> ::std::os::raw::c_int;
20306}
20307extern "C" {
20308    pub fn zend_alter_ini_entry_chars_ex(
20309        name: *mut zend_string,
20310        value: *const ::std::os::raw::c_char,
20311        value_length: size_t,
20312        modify_type: ::std::os::raw::c_int,
20313        stage: ::std::os::raw::c_int,
20314        force_change: ::std::os::raw::c_int,
20315    ) -> ::std::os::raw::c_int;
20316}
20317extern "C" {
20318    pub fn zend_restore_ini_entry(
20319        name: *mut zend_string,
20320        stage: ::std::os::raw::c_int,
20321    ) -> ::std::os::raw::c_int;
20322}
20323extern "C" {
20324    pub fn zend_ini_long(
20325        name: *mut ::std::os::raw::c_char,
20326        name_length: size_t,
20327        orig: ::std::os::raw::c_int,
20328    ) -> zend_long;
20329}
20330extern "C" {
20331    pub fn zend_ini_double(
20332        name: *mut ::std::os::raw::c_char,
20333        name_length: size_t,
20334        orig: ::std::os::raw::c_int,
20335    ) -> f64;
20336}
20337extern "C" {
20338    pub fn zend_ini_string(
20339        name: *mut ::std::os::raw::c_char,
20340        name_length: size_t,
20341        orig: ::std::os::raw::c_int,
20342    ) -> *mut ::std::os::raw::c_char;
20343}
20344extern "C" {
20345    pub fn zend_ini_string_ex(
20346        name: *mut ::std::os::raw::c_char,
20347        name_length: size_t,
20348        orig: ::std::os::raw::c_int,
20349        exists: *mut zend_bool,
20350    ) -> *mut ::std::os::raw::c_char;
20351}
20352extern "C" {
20353    pub fn zend_ini_get_value(name: *mut zend_string) -> *mut zend_string;
20354}
20355extern "C" {
20356    pub fn zend_ini_parse_bool(str_: *mut zend_string) -> zend_bool;
20357}
20358extern "C" {
20359    pub fn zend_ini_register_displayer(
20360        name: *mut ::std::os::raw::c_char,
20361        name_length: u32,
20362        displayer: ::std::option::Option<
20363            unsafe extern "C" fn(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int),
20364        >,
20365    ) -> ::std::os::raw::c_int;
20366}
20367extern "C" {
20368    pub fn zend_ini_boolean_displayer_cb(
20369        ini_entry: *mut zend_ini_entry,
20370        type_: ::std::os::raw::c_int,
20371    );
20372}
20373extern "C" {
20374    pub fn zend_ini_color_displayer_cb(
20375        ini_entry: *mut zend_ini_entry,
20376        type_: ::std::os::raw::c_int,
20377    );
20378}
20379pub type zend_ini_parser_cb_t = ::std::option::Option<
20380    unsafe extern "C" fn(
20381        arg1: *mut zval,
20382        arg2: *mut zval,
20383        arg3: *mut zval,
20384        callback_type: ::std::os::raw::c_int,
20385        arg: *mut ::std::os::raw::c_void,
20386    ),
20387>;
20388extern "C" {
20389    pub fn zend_parse_ini_file(
20390        fh: *mut zend_file_handle,
20391        unbuffered_errors: zend_bool,
20392        scanner_mode: ::std::os::raw::c_int,
20393        ini_parser_cb: zend_ini_parser_cb_t,
20394        arg: *mut ::std::os::raw::c_void,
20395    ) -> ::std::os::raw::c_int;
20396}
20397extern "C" {
20398    pub fn zend_parse_ini_string(
20399        str_: *mut ::std::os::raw::c_char,
20400        unbuffered_errors: zend_bool,
20401        scanner_mode: ::std::os::raw::c_int,
20402        ini_parser_cb: zend_ini_parser_cb_t,
20403        arg: *mut ::std::os::raw::c_void,
20404    ) -> ::std::os::raw::c_int;
20405}
20406#[repr(C)]
20407#[derive(Debug, Copy, Clone)]
20408pub struct _zend_ini_parser_param {
20409    pub ini_parser_cb: zend_ini_parser_cb_t,
20410    pub arg: *mut ::std::os::raw::c_void,
20411}
20412#[test]
20413fn bindgen_test_layout__zend_ini_parser_param() {
20414    assert_eq!(
20415        ::std::mem::size_of::<_zend_ini_parser_param>(),
20416        16usize,
20417        concat!("Size of: ", stringify!(_zend_ini_parser_param))
20418    );
20419    assert_eq!(
20420        ::std::mem::align_of::<_zend_ini_parser_param>(),
20421        8usize,
20422        concat!("Alignment of ", stringify!(_zend_ini_parser_param))
20423    );
20424    assert_eq!(
20425        unsafe {
20426            &(*(::std::ptr::null::<_zend_ini_parser_param>())).ini_parser_cb as *const _ as usize
20427        },
20428        0usize,
20429        concat!(
20430            "Offset of field: ",
20431            stringify!(_zend_ini_parser_param),
20432            "::",
20433            stringify!(ini_parser_cb)
20434        )
20435    );
20436    assert_eq!(
20437        unsafe { &(*(::std::ptr::null::<_zend_ini_parser_param>())).arg as *const _ as usize },
20438        8usize,
20439        concat!(
20440            "Offset of field: ",
20441            stringify!(_zend_ini_parser_param),
20442            "::",
20443            stringify!(arg)
20444        )
20445    );
20446}
20447pub type zend_ini_parser_param = _zend_ini_parser_param;
20448extern "C" {
20449    pub fn php_init_config() -> ::std::os::raw::c_int;
20450}
20451extern "C" {
20452    pub fn php_shutdown_config() -> ::std::os::raw::c_int;
20453}
20454extern "C" {
20455    pub fn php_ini_register_extensions();
20456}
20457extern "C" {
20458    pub fn php_parse_user_ini_file(
20459        dirname: *const ::std::os::raw::c_char,
20460        ini_filename: *mut ::std::os::raw::c_char,
20461        target_hash: *mut HashTable,
20462    ) -> ::std::os::raw::c_int;
20463}
20464extern "C" {
20465    pub fn php_ini_activate_config(
20466        source_hash: *mut HashTable,
20467        modify_type: ::std::os::raw::c_int,
20468        stage: ::std::os::raw::c_int,
20469    );
20470}
20471extern "C" {
20472    pub fn php_ini_has_per_dir_config() -> ::std::os::raw::c_int;
20473}
20474extern "C" {
20475    pub fn php_ini_has_per_host_config() -> ::std::os::raw::c_int;
20476}
20477extern "C" {
20478    pub fn php_ini_activate_per_dir_config(path: *mut ::std::os::raw::c_char, path_len: size_t);
20479}
20480extern "C" {
20481    pub fn php_ini_activate_per_host_config(host: *const ::std::os::raw::c_char, host_len: size_t);
20482}
20483extern "C" {
20484    pub fn php_ini_get_configuration_hash() -> *mut HashTable;
20485}
20486extern "C" {
20487    pub fn php_fopen_primary_script(file_handle: *mut zend_file_handle) -> ::std::os::raw::c_int;
20488}
20489extern "C" {
20490    pub fn php_check_open_basedir(path: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
20491}
20492extern "C" {
20493    pub fn php_check_open_basedir_ex(
20494        path: *const ::std::os::raw::c_char,
20495        warn: ::std::os::raw::c_int,
20496    ) -> ::std::os::raw::c_int;
20497}
20498extern "C" {
20499    pub fn php_check_specific_open_basedir(
20500        basedir: *const ::std::os::raw::c_char,
20501        path: *const ::std::os::raw::c_char,
20502    ) -> ::std::os::raw::c_int;
20503}
20504extern "C" {
20505    pub fn php_check_safe_mode_include_dir(
20506        path: *const ::std::os::raw::c_char,
20507    ) -> ::std::os::raw::c_int;
20508}
20509extern "C" {
20510    pub fn php_resolve_path(
20511        filename: *const ::std::os::raw::c_char,
20512        filename_len: size_t,
20513        path: *const ::std::os::raw::c_char,
20514    ) -> *mut zend_string;
20515}
20516extern "C" {
20517    pub fn php_fopen_with_path(
20518        filename: *const ::std::os::raw::c_char,
20519        mode: *const ::std::os::raw::c_char,
20520        path: *const ::std::os::raw::c_char,
20521        opened_path: *mut *mut zend_string,
20522    ) -> *mut FILE;
20523}
20524extern "C" {
20525    pub fn php_strip_url_passwd(path: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
20526}
20527#[repr(C)]
20528#[derive(Debug, Copy, Clone)]
20529pub struct _cwd_state {
20530    pub cwd: *mut ::std::os::raw::c_char,
20531    pub cwd_length: size_t,
20532}
20533#[test]
20534fn bindgen_test_layout__cwd_state() {
20535    assert_eq!(
20536        ::std::mem::size_of::<_cwd_state>(),
20537        16usize,
20538        concat!("Size of: ", stringify!(_cwd_state))
20539    );
20540    assert_eq!(
20541        ::std::mem::align_of::<_cwd_state>(),
20542        8usize,
20543        concat!("Alignment of ", stringify!(_cwd_state))
20544    );
20545    assert_eq!(
20546        unsafe { &(*(::std::ptr::null::<_cwd_state>())).cwd as *const _ as usize },
20547        0usize,
20548        concat!(
20549            "Offset of field: ",
20550            stringify!(_cwd_state),
20551            "::",
20552            stringify!(cwd)
20553        )
20554    );
20555    assert_eq!(
20556        unsafe { &(*(::std::ptr::null::<_cwd_state>())).cwd_length as *const _ as usize },
20557        8usize,
20558        concat!(
20559            "Offset of field: ",
20560            stringify!(_cwd_state),
20561            "::",
20562            stringify!(cwd_length)
20563        )
20564    );
20565}
20566pub type cwd_state = _cwd_state;
20567#[repr(C)]
20568#[derive(Debug, Copy, Clone)]
20569pub struct _realpath_cache_bucket {
20570    pub key: zend_ulong,
20571    pub path: *mut ::std::os::raw::c_char,
20572    pub realpath: *mut ::std::os::raw::c_char,
20573    pub next: *mut _realpath_cache_bucket,
20574    pub expires: time_t,
20575    pub path_len: u16,
20576    pub realpath_len: u16,
20577    pub _bitfield_align_1: [u8; 0],
20578    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
20579    pub __bindgen_padding_0: [u8; 3usize],
20580}
20581#[test]
20582fn bindgen_test_layout__realpath_cache_bucket() {
20583    assert_eq!(
20584        ::std::mem::size_of::<_realpath_cache_bucket>(),
20585        48usize,
20586        concat!("Size of: ", stringify!(_realpath_cache_bucket))
20587    );
20588    assert_eq!(
20589        ::std::mem::align_of::<_realpath_cache_bucket>(),
20590        8usize,
20591        concat!("Alignment of ", stringify!(_realpath_cache_bucket))
20592    );
20593    assert_eq!(
20594        unsafe { &(*(::std::ptr::null::<_realpath_cache_bucket>())).key as *const _ as usize },
20595        0usize,
20596        concat!(
20597            "Offset of field: ",
20598            stringify!(_realpath_cache_bucket),
20599            "::",
20600            stringify!(key)
20601        )
20602    );
20603    assert_eq!(
20604        unsafe { &(*(::std::ptr::null::<_realpath_cache_bucket>())).path as *const _ as usize },
20605        8usize,
20606        concat!(
20607            "Offset of field: ",
20608            stringify!(_realpath_cache_bucket),
20609            "::",
20610            stringify!(path)
20611        )
20612    );
20613    assert_eq!(
20614        unsafe { &(*(::std::ptr::null::<_realpath_cache_bucket>())).realpath as *const _ as usize },
20615        16usize,
20616        concat!(
20617            "Offset of field: ",
20618            stringify!(_realpath_cache_bucket),
20619            "::",
20620            stringify!(realpath)
20621        )
20622    );
20623    assert_eq!(
20624        unsafe { &(*(::std::ptr::null::<_realpath_cache_bucket>())).next as *const _ as usize },
20625        24usize,
20626        concat!(
20627            "Offset of field: ",
20628            stringify!(_realpath_cache_bucket),
20629            "::",
20630            stringify!(next)
20631        )
20632    );
20633    assert_eq!(
20634        unsafe { &(*(::std::ptr::null::<_realpath_cache_bucket>())).expires as *const _ as usize },
20635        32usize,
20636        concat!(
20637            "Offset of field: ",
20638            stringify!(_realpath_cache_bucket),
20639            "::",
20640            stringify!(expires)
20641        )
20642    );
20643    assert_eq!(
20644        unsafe { &(*(::std::ptr::null::<_realpath_cache_bucket>())).path_len as *const _ as usize },
20645        40usize,
20646        concat!(
20647            "Offset of field: ",
20648            stringify!(_realpath_cache_bucket),
20649            "::",
20650            stringify!(path_len)
20651        )
20652    );
20653    assert_eq!(
20654        unsafe {
20655            &(*(::std::ptr::null::<_realpath_cache_bucket>())).realpath_len as *const _ as usize
20656        },
20657        42usize,
20658        concat!(
20659            "Offset of field: ",
20660            stringify!(_realpath_cache_bucket),
20661            "::",
20662            stringify!(realpath_len)
20663        )
20664    );
20665}
20666impl _realpath_cache_bucket {
20667    #[inline]
20668    pub fn is_dir(&self) -> u8 {
20669        unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) }
20670    }
20671    #[inline]
20672    pub fn set_is_dir(&mut self, val: u8) {
20673        unsafe {
20674            let val: u8 = ::std::mem::transmute(val);
20675            self._bitfield_1.set(0usize, 1u8, val as u64)
20676        }
20677    }
20678    #[inline]
20679    pub fn new_bitfield_1(is_dir: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
20680        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
20681        __bindgen_bitfield_unit.set(0usize, 1u8, {
20682            let is_dir: u8 = unsafe { ::std::mem::transmute(is_dir) };
20683            is_dir as u64
20684        });
20685        __bindgen_bitfield_unit
20686    }
20687}
20688pub type realpath_cache_bucket = _realpath_cache_bucket;
20689#[repr(C)]
20690#[derive(Copy, Clone)]
20691pub struct _virtual_cwd_globals {
20692    pub cwd: cwd_state,
20693    pub realpath_cache_size: zend_long,
20694    pub realpath_cache_size_limit: zend_long,
20695    pub realpath_cache_ttl: zend_long,
20696    pub realpath_cache: [*mut realpath_cache_bucket; 1024usize],
20697}
20698#[test]
20699fn bindgen_test_layout__virtual_cwd_globals() {
20700    assert_eq!(
20701        ::std::mem::size_of::<_virtual_cwd_globals>(),
20702        8232usize,
20703        concat!("Size of: ", stringify!(_virtual_cwd_globals))
20704    );
20705    assert_eq!(
20706        ::std::mem::align_of::<_virtual_cwd_globals>(),
20707        8usize,
20708        concat!("Alignment of ", stringify!(_virtual_cwd_globals))
20709    );
20710    assert_eq!(
20711        unsafe { &(*(::std::ptr::null::<_virtual_cwd_globals>())).cwd as *const _ as usize },
20712        0usize,
20713        concat!(
20714            "Offset of field: ",
20715            stringify!(_virtual_cwd_globals),
20716            "::",
20717            stringify!(cwd)
20718        )
20719    );
20720    assert_eq!(
20721        unsafe {
20722            &(*(::std::ptr::null::<_virtual_cwd_globals>())).realpath_cache_size as *const _
20723                as usize
20724        },
20725        16usize,
20726        concat!(
20727            "Offset of field: ",
20728            stringify!(_virtual_cwd_globals),
20729            "::",
20730            stringify!(realpath_cache_size)
20731        )
20732    );
20733    assert_eq!(
20734        unsafe {
20735            &(*(::std::ptr::null::<_virtual_cwd_globals>())).realpath_cache_size_limit as *const _
20736                as usize
20737        },
20738        24usize,
20739        concat!(
20740            "Offset of field: ",
20741            stringify!(_virtual_cwd_globals),
20742            "::",
20743            stringify!(realpath_cache_size_limit)
20744        )
20745    );
20746    assert_eq!(
20747        unsafe {
20748            &(*(::std::ptr::null::<_virtual_cwd_globals>())).realpath_cache_ttl as *const _ as usize
20749        },
20750        32usize,
20751        concat!(
20752            "Offset of field: ",
20753            stringify!(_virtual_cwd_globals),
20754            "::",
20755            stringify!(realpath_cache_ttl)
20756        )
20757    );
20758    assert_eq!(
20759        unsafe {
20760            &(*(::std::ptr::null::<_virtual_cwd_globals>())).realpath_cache as *const _ as usize
20761        },
20762        40usize,
20763        concat!(
20764            "Offset of field: ",
20765            stringify!(_virtual_cwd_globals),
20766            "::",
20767            stringify!(realpath_cache)
20768        )
20769    );
20770}
20771pub type virtual_cwd_globals = _virtual_cwd_globals;
20772extern "C" {
20773    pub static mut cwd_globals: virtual_cwd_globals;
20774}
20775#[repr(C)]
20776#[derive(Copy, Clone)]
20777pub struct _zend_constant {
20778    pub value: zval,
20779    pub name: *mut zend_string,
20780}
20781#[test]
20782fn bindgen_test_layout__zend_constant() {
20783    assert_eq!(
20784        ::std::mem::size_of::<_zend_constant>(),
20785        24usize,
20786        concat!("Size of: ", stringify!(_zend_constant))
20787    );
20788    assert_eq!(
20789        ::std::mem::align_of::<_zend_constant>(),
20790        8usize,
20791        concat!("Alignment of ", stringify!(_zend_constant))
20792    );
20793    assert_eq!(
20794        unsafe { &(*(::std::ptr::null::<_zend_constant>())).value as *const _ as usize },
20795        0usize,
20796        concat!(
20797            "Offset of field: ",
20798            stringify!(_zend_constant),
20799            "::",
20800            stringify!(value)
20801        )
20802    );
20803    assert_eq!(
20804        unsafe { &(*(::std::ptr::null::<_zend_constant>())).name as *const _ as usize },
20805        16usize,
20806        concat!(
20807            "Offset of field: ",
20808            stringify!(_zend_constant),
20809            "::",
20810            stringify!(name)
20811        )
20812    );
20813}
20814pub type zend_constant = _zend_constant;
20815extern "C" {
20816    pub fn zend_startup_constants() -> ::std::os::raw::c_int;
20817}
20818extern "C" {
20819    pub fn zend_shutdown_constants() -> ::std::os::raw::c_int;
20820}
20821extern "C" {
20822    pub fn zend_register_standard_constants();
20823}
20824extern "C" {
20825    pub fn zend_verify_const_access(
20826        c: *mut zend_class_constant,
20827        ce: *mut zend_class_entry,
20828    ) -> ::std::os::raw::c_int;
20829}
20830extern "C" {
20831    pub fn zend_get_constant(name: *mut zend_string) -> *mut zval;
20832}
20833extern "C" {
20834    pub fn zend_get_constant_str(
20835        name: *const ::std::os::raw::c_char,
20836        name_len: size_t,
20837    ) -> *mut zval;
20838}
20839extern "C" {
20840    pub fn zend_get_constant_ex(
20841        name: *mut zend_string,
20842        scope: *mut zend_class_entry,
20843        flags: u32,
20844    ) -> *mut zval;
20845}
20846extern "C" {
20847    pub fn zend_register_bool_constant(
20848        name: *const ::std::os::raw::c_char,
20849        name_len: size_t,
20850        bval: zend_bool,
20851        flags: ::std::os::raw::c_int,
20852        module_number: ::std::os::raw::c_int,
20853    );
20854}
20855extern "C" {
20856    pub fn zend_register_null_constant(
20857        name: *const ::std::os::raw::c_char,
20858        name_len: size_t,
20859        flags: ::std::os::raw::c_int,
20860        module_number: ::std::os::raw::c_int,
20861    );
20862}
20863extern "C" {
20864    pub fn zend_register_long_constant(
20865        name: *const ::std::os::raw::c_char,
20866        name_len: size_t,
20867        lval: zend_long,
20868        flags: ::std::os::raw::c_int,
20869        module_number: ::std::os::raw::c_int,
20870    );
20871}
20872extern "C" {
20873    pub fn zend_register_double_constant(
20874        name: *const ::std::os::raw::c_char,
20875        name_len: size_t,
20876        dval: f64,
20877        flags: ::std::os::raw::c_int,
20878        module_number: ::std::os::raw::c_int,
20879    );
20880}
20881extern "C" {
20882    pub fn zend_register_string_constant(
20883        name: *const ::std::os::raw::c_char,
20884        name_len: size_t,
20885        strval: *mut ::std::os::raw::c_char,
20886        flags: ::std::os::raw::c_int,
20887        module_number: ::std::os::raw::c_int,
20888    );
20889}
20890extern "C" {
20891    pub fn zend_register_stringl_constant(
20892        name: *const ::std::os::raw::c_char,
20893        name_len: size_t,
20894        strval: *mut ::std::os::raw::c_char,
20895        strlen: size_t,
20896        flags: ::std::os::raw::c_int,
20897        module_number: ::std::os::raw::c_int,
20898    );
20899}
20900extern "C" {
20901    pub fn zend_register_constant(c: *mut zend_constant) -> ::std::os::raw::c_int;
20902}
20903extern "C" {
20904    pub fn php_info_html_esc(string: *mut ::std::os::raw::c_char) -> *mut zend_string;
20905}
20906extern "C" {
20907    pub fn php_info_html_esc_write(
20908        string: *mut ::std::os::raw::c_char,
20909        str_len: ::std::os::raw::c_int,
20910    );
20911}
20912extern "C" {
20913    pub fn php_print_info_htmlhead();
20914}
20915extern "C" {
20916    pub fn php_print_info(flag: ::std::os::raw::c_int);
20917}
20918extern "C" {
20919    pub fn php_print_style();
20920}
20921extern "C" {
20922    pub fn php_info_print_style();
20923}
20924extern "C" {
20925    pub fn php_info_print_table_colspan_header(
20926        num_cols: ::std::os::raw::c_int,
20927        header: *mut ::std::os::raw::c_char,
20928    );
20929}
20930extern "C" {
20931    pub fn php_info_print_table_header(num_cols: ::std::os::raw::c_int, ...);
20932}
20933extern "C" {
20934    pub fn php_info_print_table_row(num_cols: ::std::os::raw::c_int, ...);
20935}
20936extern "C" {
20937    pub fn php_info_print_table_row_ex(
20938        num_cols: ::std::os::raw::c_int,
20939        arg1: *const ::std::os::raw::c_char,
20940        ...
20941    );
20942}
20943extern "C" {
20944    pub fn php_info_print_table_start();
20945}
20946extern "C" {
20947    pub fn php_info_print_table_end();
20948}
20949extern "C" {
20950    pub fn php_info_print_box_start(bg: ::std::os::raw::c_int);
20951}
20952extern "C" {
20953    pub fn php_info_print_box_end();
20954}
20955extern "C" {
20956    pub fn php_info_print_hr();
20957}
20958extern "C" {
20959    pub fn php_info_print_module(module: *mut zend_module_entry);
20960}
20961extern "C" {
20962    pub fn php_get_uname(mode: ::std::os::raw::c_char) -> *mut zend_string;
20963}
20964#[repr(C)]
20965#[derive(Debug, Copy, Clone)]
20966pub struct _zend_extension_version_info {
20967    pub zend_extension_api_no: ::std::os::raw::c_int,
20968    pub build_id: *mut ::std::os::raw::c_char,
20969}
20970#[test]
20971fn bindgen_test_layout__zend_extension_version_info() {
20972    assert_eq!(
20973        ::std::mem::size_of::<_zend_extension_version_info>(),
20974        16usize,
20975        concat!("Size of: ", stringify!(_zend_extension_version_info))
20976    );
20977    assert_eq!(
20978        ::std::mem::align_of::<_zend_extension_version_info>(),
20979        8usize,
20980        concat!("Alignment of ", stringify!(_zend_extension_version_info))
20981    );
20982    assert_eq!(
20983        unsafe {
20984            &(*(::std::ptr::null::<_zend_extension_version_info>())).zend_extension_api_no
20985                as *const _ as usize
20986        },
20987        0usize,
20988        concat!(
20989            "Offset of field: ",
20990            stringify!(_zend_extension_version_info),
20991            "::",
20992            stringify!(zend_extension_api_no)
20993        )
20994    );
20995    assert_eq!(
20996        unsafe {
20997            &(*(::std::ptr::null::<_zend_extension_version_info>())).build_id as *const _ as usize
20998        },
20999        8usize,
21000        concat!(
21001            "Offset of field: ",
21002            stringify!(_zend_extension_version_info),
21003            "::",
21004            stringify!(build_id)
21005        )
21006    );
21007}
21008pub type zend_extension_version_info = _zend_extension_version_info;
21009pub type zend_extension = _zend_extension;
21010pub type startup_func_t = ::std::option::Option<
21011    unsafe extern "C" fn(extension: *mut zend_extension) -> ::std::os::raw::c_int,
21012>;
21013pub type shutdown_func_t =
21014    ::std::option::Option<unsafe extern "C" fn(extension: *mut zend_extension)>;
21015pub type activate_func_t = ::std::option::Option<unsafe extern "C" fn()>;
21016pub type deactivate_func_t = ::std::option::Option<unsafe extern "C" fn()>;
21017pub type message_handler_func_t = ::std::option::Option<
21018    unsafe extern "C" fn(message: ::std::os::raw::c_int, arg: *mut ::std::os::raw::c_void),
21019>;
21020pub type op_array_handler_func_t =
21021    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
21022pub type statement_handler_func_t =
21023    ::std::option::Option<unsafe extern "C" fn(frame: *mut zend_execute_data)>;
21024pub type fcall_begin_handler_func_t =
21025    ::std::option::Option<unsafe extern "C" fn(frame: *mut zend_execute_data)>;
21026pub type fcall_end_handler_func_t =
21027    ::std::option::Option<unsafe extern "C" fn(frame: *mut zend_execute_data)>;
21028pub type op_array_ctor_func_t =
21029    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
21030pub type op_array_dtor_func_t =
21031    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
21032pub type op_array_persist_calc_func_t =
21033    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array) -> size_t>;
21034pub type op_array_persist_func_t = ::std::option::Option<
21035    unsafe extern "C" fn(op_array: *mut zend_op_array, mem: *mut ::std::os::raw::c_void) -> size_t,
21036>;
21037#[repr(C)]
21038#[derive(Debug, Copy, Clone)]
21039pub struct _zend_extension {
21040    pub name: *mut ::std::os::raw::c_char,
21041    pub version: *mut ::std::os::raw::c_char,
21042    pub author: *mut ::std::os::raw::c_char,
21043    pub URL: *mut ::std::os::raw::c_char,
21044    pub copyright: *mut ::std::os::raw::c_char,
21045    pub startup: startup_func_t,
21046    pub shutdown: shutdown_func_t,
21047    pub activate: activate_func_t,
21048    pub deactivate: deactivate_func_t,
21049    pub message_handler: message_handler_func_t,
21050    pub op_array_handler: op_array_handler_func_t,
21051    pub statement_handler: statement_handler_func_t,
21052    pub fcall_begin_handler: fcall_begin_handler_func_t,
21053    pub fcall_end_handler: fcall_end_handler_func_t,
21054    pub op_array_ctor: op_array_ctor_func_t,
21055    pub op_array_dtor: op_array_dtor_func_t,
21056    pub api_no_check: ::std::option::Option<
21057        unsafe extern "C" fn(api_no: ::std::os::raw::c_int) -> ::std::os::raw::c_int,
21058    >,
21059    pub build_id_check: ::std::option::Option<
21060        unsafe extern "C" fn(build_id: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int,
21061    >,
21062    pub op_array_persist_calc: op_array_persist_calc_func_t,
21063    pub op_array_persist: op_array_persist_func_t,
21064    pub reserved5: *mut ::std::os::raw::c_void,
21065    pub reserved6: *mut ::std::os::raw::c_void,
21066    pub reserved7: *mut ::std::os::raw::c_void,
21067    pub reserved8: *mut ::std::os::raw::c_void,
21068    pub handle: *mut ::std::os::raw::c_void,
21069    pub resource_number: ::std::os::raw::c_int,
21070}
21071#[test]
21072fn bindgen_test_layout__zend_extension() {
21073    assert_eq!(
21074        ::std::mem::size_of::<_zend_extension>(),
21075        208usize,
21076        concat!("Size of: ", stringify!(_zend_extension))
21077    );
21078    assert_eq!(
21079        ::std::mem::align_of::<_zend_extension>(),
21080        8usize,
21081        concat!("Alignment of ", stringify!(_zend_extension))
21082    );
21083    assert_eq!(
21084        unsafe { &(*(::std::ptr::null::<_zend_extension>())).name as *const _ as usize },
21085        0usize,
21086        concat!(
21087            "Offset of field: ",
21088            stringify!(_zend_extension),
21089            "::",
21090            stringify!(name)
21091        )
21092    );
21093    assert_eq!(
21094        unsafe { &(*(::std::ptr::null::<_zend_extension>())).version as *const _ as usize },
21095        8usize,
21096        concat!(
21097            "Offset of field: ",
21098            stringify!(_zend_extension),
21099            "::",
21100            stringify!(version)
21101        )
21102    );
21103    assert_eq!(
21104        unsafe { &(*(::std::ptr::null::<_zend_extension>())).author as *const _ as usize },
21105        16usize,
21106        concat!(
21107            "Offset of field: ",
21108            stringify!(_zend_extension),
21109            "::",
21110            stringify!(author)
21111        )
21112    );
21113    assert_eq!(
21114        unsafe { &(*(::std::ptr::null::<_zend_extension>())).URL as *const _ as usize },
21115        24usize,
21116        concat!(
21117            "Offset of field: ",
21118            stringify!(_zend_extension),
21119            "::",
21120            stringify!(URL)
21121        )
21122    );
21123    assert_eq!(
21124        unsafe { &(*(::std::ptr::null::<_zend_extension>())).copyright as *const _ as usize },
21125        32usize,
21126        concat!(
21127            "Offset of field: ",
21128            stringify!(_zend_extension),
21129            "::",
21130            stringify!(copyright)
21131        )
21132    );
21133    assert_eq!(
21134        unsafe { &(*(::std::ptr::null::<_zend_extension>())).startup as *const _ as usize },
21135        40usize,
21136        concat!(
21137            "Offset of field: ",
21138            stringify!(_zend_extension),
21139            "::",
21140            stringify!(startup)
21141        )
21142    );
21143    assert_eq!(
21144        unsafe { &(*(::std::ptr::null::<_zend_extension>())).shutdown as *const _ as usize },
21145        48usize,
21146        concat!(
21147            "Offset of field: ",
21148            stringify!(_zend_extension),
21149            "::",
21150            stringify!(shutdown)
21151        )
21152    );
21153    assert_eq!(
21154        unsafe { &(*(::std::ptr::null::<_zend_extension>())).activate as *const _ as usize },
21155        56usize,
21156        concat!(
21157            "Offset of field: ",
21158            stringify!(_zend_extension),
21159            "::",
21160            stringify!(activate)
21161        )
21162    );
21163    assert_eq!(
21164        unsafe { &(*(::std::ptr::null::<_zend_extension>())).deactivate as *const _ as usize },
21165        64usize,
21166        concat!(
21167            "Offset of field: ",
21168            stringify!(_zend_extension),
21169            "::",
21170            stringify!(deactivate)
21171        )
21172    );
21173    assert_eq!(
21174        unsafe { &(*(::std::ptr::null::<_zend_extension>())).message_handler as *const _ as usize },
21175        72usize,
21176        concat!(
21177            "Offset of field: ",
21178            stringify!(_zend_extension),
21179            "::",
21180            stringify!(message_handler)
21181        )
21182    );
21183    assert_eq!(
21184        unsafe {
21185            &(*(::std::ptr::null::<_zend_extension>())).op_array_handler as *const _ as usize
21186        },
21187        80usize,
21188        concat!(
21189            "Offset of field: ",
21190            stringify!(_zend_extension),
21191            "::",
21192            stringify!(op_array_handler)
21193        )
21194    );
21195    assert_eq!(
21196        unsafe {
21197            &(*(::std::ptr::null::<_zend_extension>())).statement_handler as *const _ as usize
21198        },
21199        88usize,
21200        concat!(
21201            "Offset of field: ",
21202            stringify!(_zend_extension),
21203            "::",
21204            stringify!(statement_handler)
21205        )
21206    );
21207    assert_eq!(
21208        unsafe {
21209            &(*(::std::ptr::null::<_zend_extension>())).fcall_begin_handler as *const _ as usize
21210        },
21211        96usize,
21212        concat!(
21213            "Offset of field: ",
21214            stringify!(_zend_extension),
21215            "::",
21216            stringify!(fcall_begin_handler)
21217        )
21218    );
21219    assert_eq!(
21220        unsafe {
21221            &(*(::std::ptr::null::<_zend_extension>())).fcall_end_handler as *const _ as usize
21222        },
21223        104usize,
21224        concat!(
21225            "Offset of field: ",
21226            stringify!(_zend_extension),
21227            "::",
21228            stringify!(fcall_end_handler)
21229        )
21230    );
21231    assert_eq!(
21232        unsafe { &(*(::std::ptr::null::<_zend_extension>())).op_array_ctor as *const _ as usize },
21233        112usize,
21234        concat!(
21235            "Offset of field: ",
21236            stringify!(_zend_extension),
21237            "::",
21238            stringify!(op_array_ctor)
21239        )
21240    );
21241    assert_eq!(
21242        unsafe { &(*(::std::ptr::null::<_zend_extension>())).op_array_dtor as *const _ as usize },
21243        120usize,
21244        concat!(
21245            "Offset of field: ",
21246            stringify!(_zend_extension),
21247            "::",
21248            stringify!(op_array_dtor)
21249        )
21250    );
21251    assert_eq!(
21252        unsafe { &(*(::std::ptr::null::<_zend_extension>())).api_no_check as *const _ as usize },
21253        128usize,
21254        concat!(
21255            "Offset of field: ",
21256            stringify!(_zend_extension),
21257            "::",
21258            stringify!(api_no_check)
21259        )
21260    );
21261    assert_eq!(
21262        unsafe { &(*(::std::ptr::null::<_zend_extension>())).build_id_check as *const _ as usize },
21263        136usize,
21264        concat!(
21265            "Offset of field: ",
21266            stringify!(_zend_extension),
21267            "::",
21268            stringify!(build_id_check)
21269        )
21270    );
21271    assert_eq!(
21272        unsafe {
21273            &(*(::std::ptr::null::<_zend_extension>())).op_array_persist_calc as *const _ as usize
21274        },
21275        144usize,
21276        concat!(
21277            "Offset of field: ",
21278            stringify!(_zend_extension),
21279            "::",
21280            stringify!(op_array_persist_calc)
21281        )
21282    );
21283    assert_eq!(
21284        unsafe {
21285            &(*(::std::ptr::null::<_zend_extension>())).op_array_persist as *const _ as usize
21286        },
21287        152usize,
21288        concat!(
21289            "Offset of field: ",
21290            stringify!(_zend_extension),
21291            "::",
21292            stringify!(op_array_persist)
21293        )
21294    );
21295    assert_eq!(
21296        unsafe { &(*(::std::ptr::null::<_zend_extension>())).reserved5 as *const _ as usize },
21297        160usize,
21298        concat!(
21299            "Offset of field: ",
21300            stringify!(_zend_extension),
21301            "::",
21302            stringify!(reserved5)
21303        )
21304    );
21305    assert_eq!(
21306        unsafe { &(*(::std::ptr::null::<_zend_extension>())).reserved6 as *const _ as usize },
21307        168usize,
21308        concat!(
21309            "Offset of field: ",
21310            stringify!(_zend_extension),
21311            "::",
21312            stringify!(reserved6)
21313        )
21314    );
21315    assert_eq!(
21316        unsafe { &(*(::std::ptr::null::<_zend_extension>())).reserved7 as *const _ as usize },
21317        176usize,
21318        concat!(
21319            "Offset of field: ",
21320            stringify!(_zend_extension),
21321            "::",
21322            stringify!(reserved7)
21323        )
21324    );
21325    assert_eq!(
21326        unsafe { &(*(::std::ptr::null::<_zend_extension>())).reserved8 as *const _ as usize },
21327        184usize,
21328        concat!(
21329            "Offset of field: ",
21330            stringify!(_zend_extension),
21331            "::",
21332            stringify!(reserved8)
21333        )
21334    );
21335    assert_eq!(
21336        unsafe { &(*(::std::ptr::null::<_zend_extension>())).handle as *const _ as usize },
21337        192usize,
21338        concat!(
21339            "Offset of field: ",
21340            stringify!(_zend_extension),
21341            "::",
21342            stringify!(handle)
21343        )
21344    );
21345    assert_eq!(
21346        unsafe { &(*(::std::ptr::null::<_zend_extension>())).resource_number as *const _ as usize },
21347        200usize,
21348        concat!(
21349            "Offset of field: ",
21350            stringify!(_zend_extension),
21351            "::",
21352            stringify!(resource_number)
21353        )
21354    );
21355}
21356extern "C" {
21357    pub static mut zend_op_array_extension_handles: ::std::os::raw::c_int;
21358}
21359extern "C" {
21360    pub fn zend_get_resource_handle(extension: *mut zend_extension) -> ::std::os::raw::c_int;
21361}
21362extern "C" {
21363    pub fn zend_get_op_array_extension_handle() -> ::std::os::raw::c_int;
21364}
21365extern "C" {
21366    pub fn zend_extension_dispatch_message(
21367        message: ::std::os::raw::c_int,
21368        arg: *mut ::std::os::raw::c_void,
21369    );
21370}
21371extern "C" {
21372    pub static mut zend_extensions: zend_llist;
21373}
21374extern "C" {
21375    pub static mut zend_extension_flags: u32;
21376}
21377extern "C" {
21378    pub fn zend_extension_dtor(extension: *mut zend_extension);
21379}
21380extern "C" {
21381    pub fn zend_append_version_info(extension: *const zend_extension);
21382}
21383extern "C" {
21384    pub fn zend_startup_extensions_mechanism() -> ::std::os::raw::c_int;
21385}
21386extern "C" {
21387    pub fn zend_startup_extensions() -> ::std::os::raw::c_int;
21388}
21389extern "C" {
21390    pub fn zend_shutdown_extensions();
21391}
21392extern "C" {
21393    pub fn zend_load_extension(path: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
21394}
21395extern "C" {
21396    pub fn zend_load_extension_handle(
21397        handle: *mut ::std::os::raw::c_void,
21398        path: *const ::std::os::raw::c_char,
21399    ) -> ::std::os::raw::c_int;
21400}
21401extern "C" {
21402    pub fn zend_register_extension(
21403        new_extension: *mut zend_extension,
21404        handle: *mut ::std::os::raw::c_void,
21405    ) -> ::std::os::raw::c_int;
21406}
21407extern "C" {
21408    pub fn zend_get_extension(extension_name: *const ::std::os::raw::c_char)
21409        -> *mut zend_extension;
21410}
21411extern "C" {
21412    pub fn zend_extensions_op_array_persist_calc(op_array: *mut zend_op_array) -> size_t;
21413}
21414extern "C" {
21415    pub fn zend_extensions_op_array_persist(
21416        op_array: *mut zend_op_array,
21417        mem: *mut ::std::os::raw::c_void,
21418    ) -> size_t;
21419}
21420pub const ZEND_MODULE_BUILD_ID_: &'static [u8; 16usize] = b"API20190902,NTS\0";
21421pub type __builtin_va_list = [__va_list_tag; 1usize];
21422#[repr(C)]
21423#[derive(Debug, Copy, Clone)]
21424pub struct __va_list_tag {
21425    pub gp_offset: ::std::os::raw::c_uint,
21426    pub fp_offset: ::std::os::raw::c_uint,
21427    pub overflow_arg_area: *mut ::std::os::raw::c_void,
21428    pub reg_save_area: *mut ::std::os::raw::c_void,
21429}
21430#[test]
21431fn bindgen_test_layout___va_list_tag() {
21432    assert_eq!(
21433        ::std::mem::size_of::<__va_list_tag>(),
21434        24usize,
21435        concat!("Size of: ", stringify!(__va_list_tag))
21436    );
21437    assert_eq!(
21438        ::std::mem::align_of::<__va_list_tag>(),
21439        8usize,
21440        concat!("Alignment of ", stringify!(__va_list_tag))
21441    );
21442    assert_eq!(
21443        unsafe { &(*(::std::ptr::null::<__va_list_tag>())).gp_offset as *const _ as usize },
21444        0usize,
21445        concat!(
21446            "Offset of field: ",
21447            stringify!(__va_list_tag),
21448            "::",
21449            stringify!(gp_offset)
21450        )
21451    );
21452    assert_eq!(
21453        unsafe { &(*(::std::ptr::null::<__va_list_tag>())).fp_offset as *const _ as usize },
21454        4usize,
21455        concat!(
21456            "Offset of field: ",
21457            stringify!(__va_list_tag),
21458            "::",
21459            stringify!(fp_offset)
21460        )
21461    );
21462    assert_eq!(
21463        unsafe { &(*(::std::ptr::null::<__va_list_tag>())).overflow_arg_area as *const _ as usize },
21464        8usize,
21465        concat!(
21466            "Offset of field: ",
21467            stringify!(__va_list_tag),
21468            "::",
21469            stringify!(overflow_arg_area)
21470        )
21471    );
21472    assert_eq!(
21473        unsafe { &(*(::std::ptr::null::<__va_list_tag>())).reg_save_area as *const _ as usize },
21474        16usize,
21475        concat!(
21476            "Offset of field: ",
21477            stringify!(__va_list_tag),
21478            "::",
21479            stringify!(reg_save_area)
21480        )
21481    );
21482}