php_all_sys/generated/
php73.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 = 20180731;
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_HAVE_STDINT_TYPES: u32 = 1;
112pub const PHP_MHASH_BC: u32 = 1;
113pub const PHP_OS: &'static [u8; 6usize] = b"Linux\0";
114pub const PHP_SIGCHILD: u32 = 0;
115pub const PHP_UNAME: &'static [u8; 6usize] = b"Linux\0";
116pub const PHP_USE_PHP_CRYPT_R: u32 = 1;
117pub const PHP_WRITE_STDOUT: u32 = 1;
118pub const ZEND_BROKEN_SPRINTF: u32 = 0;
119pub const ZEND_DEBUG: u32 = 0;
120pub const ZEND_MM_ALIGNMENT: u32 = 8;
121pub const ZEND_MM_ALIGNMENT_LOG2: u32 = 3;
122pub const ZEND_SIGNALS: u32 = 1;
123pub const PHP_MAJOR_VERSION: u32 = 7;
124pub const PHP_MINOR_VERSION: u32 = 3;
125pub const PHP_RELEASE_VERSION: u32 = 27;
126pub const PHP_EXTRA_VERSION: &'static [u8; 37usize] = b"-9+0~20210223.81+debian9~1.gbpa4a3d6\0";
127pub const PHP_VERSION: &'static [u8; 43usize] = b"7.3.27-9+0~20210223.81+debian9~1.gbpa4a3d6\0";
128pub const PHP_VERSION_ID: u32 = 70327;
129pub const ZEND_VERSION: &'static [u8; 7usize] = b"3.3.27\0";
130pub const ZEND_PATHS_SEPARATOR: u8 = 58u8;
131pub const ZEND_ENABLE_ZVAL_LONG64: u32 = 1;
132pub const ZEND_LTOA_BUF_LEN: u32 = 65;
133pub const ZEND_LONG_FMT: &'static [u8; 4usize] = b"%ld\0";
134pub const ZEND_ULONG_FMT: &'static [u8; 4usize] = b"%lu\0";
135pub const ZEND_XLONG_FMT: &'static [u8; 4usize] = b"%lx\0";
136pub const ZEND_LONG_FMT_SPEC: &'static [u8; 3usize] = b"ld\0";
137pub const ZEND_ULONG_FMT_SPEC: &'static [u8; 3usize] = b"lu\0";
138pub const ZEND_ADDR_FMT: &'static [u8; 9usize] = b"0x%016zx\0";
139pub const ZEND_LONG_CAN_OVFL_INT: u32 = 1;
140pub const ZEND_LONG_CAN_OVFL_UINT: u32 = 1;
141pub const ZEND_SIZE_T_CAN_OVFL_UINT: u32 = 1;
142pub const ZEND_EXTENSIONS_SUPPORT: u32 = 1;
143pub const ZEND_ALLOCA_MAX_SIZE: u32 = 32768;
144pub const ZEND_MAX_RESERVED_RESOURCES: u32 = 6;
145pub const ZEND_SIZE_MAX: i32 = -1;
146pub const IS_UNDEF: u32 = 0;
147pub const IS_NULL: u32 = 1;
148pub const IS_FALSE: u32 = 2;
149pub const IS_TRUE: u32 = 3;
150pub const IS_LONG: u32 = 4;
151pub const IS_DOUBLE: u32 = 5;
152pub const IS_STRING: u32 = 6;
153pub const IS_ARRAY: u32 = 7;
154pub const IS_OBJECT: u32 = 8;
155pub const IS_RESOURCE: u32 = 9;
156pub const IS_REFERENCE: u32 = 10;
157pub const IS_CONSTANT_AST: u32 = 11;
158pub const IS_INDIRECT: u32 = 13;
159pub const IS_PTR: u32 = 14;
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_INTERNED_STRING_EX: u32 = 6;
183pub const IS_STRING_EX: u32 = 262;
184pub const IS_ARRAY_EX: u32 = 263;
185pub const IS_OBJECT_EX: u32 = 264;
186pub const IS_RESOURCE_EX: u32 = 265;
187pub const IS_REFERENCE_EX: u32 = 266;
188pub const IS_CONSTANT_AST_EX: u32 = 267;
189pub const IS_STR_INTERNED: u32 = 64;
190pub const IS_STR_PERSISTENT: u32 = 128;
191pub const IS_STR_PERMANENT: u32 = 256;
192pub const IS_ARRAY_IMMUTABLE: u32 = 64;
193pub const IS_ARRAY_PERSISTENT: u32 = 128;
194pub const IS_OBJ_DESTRUCTOR_CALLED: u32 = 256;
195pub const IS_OBJ_FREE_CALLED: u32 = 512;
196pub const ZEND_RC_DEBUG: u32 = 0;
197pub const ZEND_MM_OVERHEAD: u32 = 0;
198pub const ZEND_MM_CHUNK_SIZE: u32 = 2097152;
199pub const ZEND_MM_PAGE_SIZE: u32 = 4096;
200pub const ZEND_MM_PAGES: u32 = 512;
201pub const ZEND_MM_FIRST_PAGE: u32 = 1;
202pub const ZEND_MM_MIN_SMALL_SIZE: u32 = 8;
203pub const ZEND_MM_MAX_SMALL_SIZE: u32 = 3072;
204pub const ZEND_MM_MAX_LARGE_SIZE: u32 = 2093056;
205pub const ZEND_MM_CUSTOM_HEAP_NONE: u32 = 0;
206pub const ZEND_MM_CUSTOM_HEAP_STD: u32 = 1;
207pub const ZEND_MM_CUSTOM_HEAP_DEBUG: u32 = 2;
208pub const HASH_KEY_IS_STRING: u32 = 1;
209pub const HASH_KEY_IS_LONG: u32 = 2;
210pub const HASH_KEY_NON_EXISTENT: u32 = 3;
211pub const HASH_UPDATE: u32 = 1;
212pub const HASH_ADD: u32 = 2;
213pub const HASH_UPDATE_INDIRECT: u32 = 4;
214pub const HASH_ADD_NEW: u32 = 8;
215pub const HASH_ADD_NEXT: u32 = 16;
216pub const HASH_FLAG_CONSISTENCY: u32 = 3;
217pub const HASH_FLAG_PACKED: u32 = 4;
218pub const HASH_FLAG_INITIALIZED: u32 = 8;
219pub const HASH_FLAG_STATIC_KEYS: u32 = 16;
220pub const HASH_FLAG_HAS_EMPTY_IND: u32 = 32;
221pub const HASH_FLAG_ALLOW_COW_VIOLATION: u32 = 64;
222pub const HASH_FLAG_MASK: u32 = 255;
223pub const ZEND_HASH_APPLY_KEEP: u32 = 0;
224pub const ZEND_HASH_APPLY_REMOVE: u32 = 1;
225pub const ZEND_HASH_APPLY_STOP: u32 = 2;
226pub const ZEND_AST_SPEC: u32 = 1;
227pub const ZEND_AST_SPECIAL_SHIFT: u32 = 6;
228pub const ZEND_AST_IS_LIST_SHIFT: u32 = 7;
229pub const ZEND_AST_NUM_CHILDREN_SHIFT: u32 = 8;
230pub const ZEND_MMAP_AHEAD: u32 = 32;
231pub const ZEND_SIGNAL_QUEUE_SIZE: u32 = 64;
232pub const DEBUG_BACKTRACE_PROVIDE_OBJECT: u32 = 1;
233pub const DEBUG_BACKTRACE_IGNORE_ARGS: u32 = 2;
234pub const ZEND_PROPERTY_ISSET: u32 = 0;
235pub const ZEND_PROPERTY_EXISTS: u32 = 2;
236pub const ZEND_USE_ABS_JMP_ADDR: u32 = 0;
237pub const ZEND_USE_ABS_CONST_ADDR: u32 = 0;
238pub const ZEND_EX_USE_RUN_TIME_CACHE: u32 = 1;
239pub const ZEND_LIVE_TMPVAR: u32 = 0;
240pub const ZEND_LIVE_LOOP: u32 = 1;
241pub const ZEND_LIVE_SILENCE: u32 = 2;
242pub const ZEND_LIVE_ROPE: u32 = 3;
243pub const ZEND_LIVE_MASK: u32 = 3;
244pub const ZEND_ACC_STATIC: u32 = 1;
245pub const ZEND_ACC_FINAL: u32 = 4;
246pub const ZEND_ACC_PUBLIC: u32 = 256;
247pub const ZEND_ACC_PROTECTED: u32 = 512;
248pub const ZEND_ACC_PRIVATE: u32 = 1024;
249pub const ZEND_ACC_CHANGED: u32 = 2048;
250pub const ZEND_ACC_IMPLICIT_PUBLIC: u32 = 4096;
251pub const ZEND_ACC_SHADOW: u32 = 131072;
252pub const ZEND_ACC_IMPLICIT_ABSTRACT_CLASS: u32 = 16;
253pub const ZEND_ACC_EXPLICIT_ABSTRACT_CLASS: u32 = 32;
254pub const ZEND_ACC_INTERFACE: u32 = 64;
255pub const ZEND_ACC_TRAIT: u32 = 128;
256pub const ZEND_ACC_ANON_CLASS: u32 = 256;
257pub const ZEND_ACC_ANON_BOUND: u32 = 512;
258pub const ZEND_ACC_INHERITED: u32 = 1024;
259pub const ZEND_ACC_IMPLEMENT_INTERFACES: u32 = 524288;
260pub const ZEND_ACC_CONSTANTS_UPDATED: u32 = 1048576;
261pub const ZEND_ACC_IMPLEMENT_TRAITS: u32 = 4194304;
262pub const ZEND_HAS_STATIC_IN_METHODS: u32 = 8388608;
263pub const ZEND_ACC_USE_GUARDS: u32 = 16777216;
264pub const ZEND_ACC_ABSTRACT: u32 = 2;
265pub const ZEND_ACC_IMPLEMENTED_ABSTRACT: u32 = 8;
266pub const ZEND_ACC_FAKE_CLOSURE: u32 = 64;
267pub const ZEND_ACC_USER_ARG_INFO: u32 = 128;
268pub const ZEND_ACC_CTOR: u32 = 8192;
269pub const ZEND_ACC_DTOR: u32 = 16384;
270pub const ZEND_ACC_EARLY_BINDING: u32 = 32768;
271pub const ZEND_ACC_ALLOW_STATIC: u32 = 65536;
272pub const ZEND_ACC_DEPRECATED: u32 = 262144;
273pub const ZEND_ACC_NO_RT_ARENA: u32 = 524288;
274pub const ZEND_ACC_CLOSURE: u32 = 1048576;
275pub const ZEND_ACC_CALL_VIA_TRAMPOLINE: u32 = 2097152;
276pub const ZEND_ACC_NEVER_CACHE: u32 = 4194304;
277pub const ZEND_ACC_GENERATOR: u32 = 8388608;
278pub const ZEND_ACC_VARIADIC: u32 = 16777216;
279pub const ZEND_ACC_IMMUTABLE: u32 = 33554432;
280pub const ZEND_ACC_RETURN_REFERENCE: u32 = 67108864;
281pub const ZEND_ACC_DONE_PASS_TWO: u32 = 134217728;
282pub const ZEND_ACC_HAS_TYPE_HINTS: u32 = 268435456;
283pub const ZEND_ACC_HAS_FINALLY_BLOCK: u32 = 536870912;
284pub const ZEND_ACC_ARENA_ALLOCATED: u32 = 536870912;
285pub const ZEND_ACC_HAS_RETURN_TYPE: u32 = 1073741824;
286pub const ZEND_ACC_STRICT_TYPES: u32 = 2147483648;
287pub const ZEND_ACC_PPP_MASK: u32 = 1792;
288pub const ZEND_ACC_CALL_VIA_HANDLER: u32 = 2097152;
289pub const ZEND_RETURN_VALUE: u32 = 0;
290pub const ZEND_RETURN_REFERENCE: u32 = 1;
291pub const ZEND_CALL_FUNCTION: u32 = 0;
292pub const ZEND_CALL_CODE: u32 = 1;
293pub const ZEND_CALL_NESTED: u32 = 0;
294pub const ZEND_CALL_TOP: u32 = 2;
295pub const ZEND_CALL_FREE_EXTRA_ARGS: u32 = 4;
296pub const ZEND_CALL_CTOR: u32 = 8;
297pub const ZEND_CALL_HAS_SYMBOL_TABLE: u32 = 16;
298pub const ZEND_CALL_CLOSURE: u32 = 32;
299pub const ZEND_CALL_RELEASE_THIS: u32 = 64;
300pub const ZEND_CALL_ALLOCATED: u32 = 128;
301pub const ZEND_CALL_GENERATOR: u32 = 256;
302pub const ZEND_CALL_DYNAMIC: u32 = 512;
303pub const ZEND_CALL_FAKE_CLOSURE: u32 = 1024;
304pub const ZEND_CALL_SEND_ARG_BY_REF: u32 = 2048;
305pub const ZEND_CALL_INFO_SHIFT: u32 = 16;
306pub const IS_UNUSED: u32 = 0;
307pub const IS_CONST: u32 = 1;
308pub const IS_TMP_VAR: u32 = 2;
309pub const IS_VAR: u32 = 4;
310pub const IS_CV: u32 = 8;
311pub const ZEND_EXTRA_VALUE: u32 = 1;
312pub const ZEND_STACK_APPLY_TOPDOWN: u32 = 1;
313pub const ZEND_STACK_APPLY_BOTTOMUP: u32 = 2;
314pub const ZEND_PTR_STACK_NUM_ARGS: u32 = 3;
315pub const ZEND_ARENA_ALIGNMENT: u32 = 8;
316pub const ZEND_EARLY_BINDING_COMPILE_TIME: u32 = 0;
317pub const ZEND_EARLY_BINDING_DELAYED: u32 = 1;
318pub const ZEND_EARLY_BINDING_DELAYED_ALL: u32 = 2;
319pub const ZEND_VM_SPEC: u32 = 1;
320pub const ZEND_VM_LINES: u32 = 0;
321pub const ZEND_VM_KIND_CALL: u32 = 1;
322pub const ZEND_VM_KIND_SWITCH: u32 = 2;
323pub const ZEND_VM_KIND_GOTO: u32 = 3;
324pub const ZEND_VM_KIND_HYBRID: u32 = 4;
325pub const ZEND_VM_KIND: u32 = 4;
326pub const ZEND_VM_OP_SPEC: u32 = 1;
327pub const ZEND_VM_OP_CONST: u32 = 2;
328pub const ZEND_VM_OP_TMPVAR: u32 = 4;
329pub const ZEND_VM_OP_TMPVARCV: u32 = 8;
330pub const ZEND_VM_OP_MASK: u32 = 240;
331pub const ZEND_VM_OP_NUM: u32 = 16;
332pub const ZEND_VM_OP_JMP_ADDR: u32 = 32;
333pub const ZEND_VM_OP_TRY_CATCH: u32 = 48;
334pub const ZEND_VM_OP_THIS: u32 = 80;
335pub const ZEND_VM_OP_NEXT: u32 = 96;
336pub const ZEND_VM_OP_CLASS_FETCH: u32 = 112;
337pub const ZEND_VM_OP_CONSTRUCTOR: u32 = 128;
338pub const ZEND_VM_OP_CONST_FETCH: u32 = 144;
339pub const ZEND_VM_OP_CACHE_SLOT: u32 = 160;
340pub const ZEND_VM_EXT_VAR_FETCH: u32 = 65536;
341pub const ZEND_VM_EXT_ISSET: u32 = 131072;
342pub const ZEND_VM_EXT_CACHE_SLOT: u32 = 262144;
343pub const ZEND_VM_EXT_ARRAY_INIT: u32 = 524288;
344pub const ZEND_VM_EXT_REF: u32 = 1048576;
345pub const ZEND_VM_EXT_MASK: u32 = 251658240;
346pub const ZEND_VM_EXT_NUM: u32 = 16777216;
347pub const ZEND_VM_EXT_LAST_CATCH: u32 = 33554432;
348pub const ZEND_VM_EXT_JMP_ADDR: u32 = 50331648;
349pub const ZEND_VM_EXT_DIM_OBJ: u32 = 67108864;
350pub const ZEND_VM_EXT_TYPE: u32 = 117440512;
351pub const ZEND_VM_EXT_EVAL: u32 = 134217728;
352pub const ZEND_VM_EXT_TYPE_MASK: u32 = 150994944;
353pub const ZEND_VM_EXT_SRC: u32 = 184549376;
354pub const ZEND_VM_NO_CONST_CONST: u32 = 1073741824;
355pub const ZEND_VM_COMMUTATIVE: u32 = 2147483648;
356pub const ZEND_NOP: u32 = 0;
357pub const ZEND_ADD: u32 = 1;
358pub const ZEND_SUB: u32 = 2;
359pub const ZEND_MUL: u32 = 3;
360pub const ZEND_DIV: u32 = 4;
361pub const ZEND_MOD: u32 = 5;
362pub const ZEND_SL: u32 = 6;
363pub const ZEND_SR: u32 = 7;
364pub const ZEND_CONCAT: u32 = 8;
365pub const ZEND_BW_OR: u32 = 9;
366pub const ZEND_BW_AND: u32 = 10;
367pub const ZEND_BW_XOR: u32 = 11;
368pub const ZEND_BW_NOT: u32 = 12;
369pub const ZEND_BOOL_NOT: u32 = 13;
370pub const ZEND_BOOL_XOR: u32 = 14;
371pub const ZEND_IS_IDENTICAL: u32 = 15;
372pub const ZEND_IS_NOT_IDENTICAL: u32 = 16;
373pub const ZEND_IS_EQUAL: u32 = 17;
374pub const ZEND_IS_NOT_EQUAL: u32 = 18;
375pub const ZEND_IS_SMALLER: u32 = 19;
376pub const ZEND_IS_SMALLER_OR_EQUAL: u32 = 20;
377pub const ZEND_CAST: u32 = 21;
378pub const ZEND_QM_ASSIGN: u32 = 22;
379pub const ZEND_ASSIGN_ADD: u32 = 23;
380pub const ZEND_ASSIGN_SUB: u32 = 24;
381pub const ZEND_ASSIGN_MUL: u32 = 25;
382pub const ZEND_ASSIGN_DIV: u32 = 26;
383pub const ZEND_ASSIGN_MOD: u32 = 27;
384pub const ZEND_ASSIGN_SL: u32 = 28;
385pub const ZEND_ASSIGN_SR: u32 = 29;
386pub const ZEND_ASSIGN_CONCAT: u32 = 30;
387pub const ZEND_ASSIGN_BW_OR: u32 = 31;
388pub const ZEND_ASSIGN_BW_AND: u32 = 32;
389pub const ZEND_ASSIGN_BW_XOR: u32 = 33;
390pub const ZEND_PRE_INC: u32 = 34;
391pub const ZEND_PRE_DEC: u32 = 35;
392pub const ZEND_POST_INC: u32 = 36;
393pub const ZEND_POST_DEC: u32 = 37;
394pub const ZEND_ASSIGN: u32 = 38;
395pub const ZEND_ASSIGN_REF: u32 = 39;
396pub const ZEND_ECHO: u32 = 40;
397pub const ZEND_GENERATOR_CREATE: u32 = 41;
398pub const ZEND_JMP: u32 = 42;
399pub const ZEND_JMPZ: u32 = 43;
400pub const ZEND_JMPNZ: u32 = 44;
401pub const ZEND_JMPZNZ: u32 = 45;
402pub const ZEND_JMPZ_EX: u32 = 46;
403pub const ZEND_JMPNZ_EX: u32 = 47;
404pub const ZEND_CASE: u32 = 48;
405pub const ZEND_CHECK_VAR: u32 = 49;
406pub const ZEND_SEND_VAR_NO_REF_EX: u32 = 50;
407pub const ZEND_MAKE_REF: u32 = 51;
408pub const ZEND_BOOL: u32 = 52;
409pub const ZEND_FAST_CONCAT: u32 = 53;
410pub const ZEND_ROPE_INIT: u32 = 54;
411pub const ZEND_ROPE_ADD: u32 = 55;
412pub const ZEND_ROPE_END: u32 = 56;
413pub const ZEND_BEGIN_SILENCE: u32 = 57;
414pub const ZEND_END_SILENCE: u32 = 58;
415pub const ZEND_INIT_FCALL_BY_NAME: u32 = 59;
416pub const ZEND_DO_FCALL: u32 = 60;
417pub const ZEND_INIT_FCALL: u32 = 61;
418pub const ZEND_RETURN: u32 = 62;
419pub const ZEND_RECV: u32 = 63;
420pub const ZEND_RECV_INIT: u32 = 64;
421pub const ZEND_SEND_VAL: u32 = 65;
422pub const ZEND_SEND_VAR_EX: u32 = 66;
423pub const ZEND_SEND_REF: u32 = 67;
424pub const ZEND_NEW: u32 = 68;
425pub const ZEND_INIT_NS_FCALL_BY_NAME: u32 = 69;
426pub const ZEND_FREE: u32 = 70;
427pub const ZEND_INIT_ARRAY: u32 = 71;
428pub const ZEND_ADD_ARRAY_ELEMENT: u32 = 72;
429pub const ZEND_INCLUDE_OR_EVAL: u32 = 73;
430pub const ZEND_UNSET_VAR: u32 = 74;
431pub const ZEND_UNSET_DIM: u32 = 75;
432pub const ZEND_UNSET_OBJ: u32 = 76;
433pub const ZEND_FE_RESET_R: u32 = 77;
434pub const ZEND_FE_FETCH_R: u32 = 78;
435pub const ZEND_EXIT: u32 = 79;
436pub const ZEND_FETCH_R: u32 = 80;
437pub const ZEND_FETCH_DIM_R: u32 = 81;
438pub const ZEND_FETCH_OBJ_R: u32 = 82;
439pub const ZEND_FETCH_W: u32 = 83;
440pub const ZEND_FETCH_DIM_W: u32 = 84;
441pub const ZEND_FETCH_OBJ_W: u32 = 85;
442pub const ZEND_FETCH_RW: u32 = 86;
443pub const ZEND_FETCH_DIM_RW: u32 = 87;
444pub const ZEND_FETCH_OBJ_RW: u32 = 88;
445pub const ZEND_FETCH_IS: u32 = 89;
446pub const ZEND_FETCH_DIM_IS: u32 = 90;
447pub const ZEND_FETCH_OBJ_IS: u32 = 91;
448pub const ZEND_FETCH_FUNC_ARG: u32 = 92;
449pub const ZEND_FETCH_DIM_FUNC_ARG: u32 = 93;
450pub const ZEND_FETCH_OBJ_FUNC_ARG: u32 = 94;
451pub const ZEND_FETCH_UNSET: u32 = 95;
452pub const ZEND_FETCH_DIM_UNSET: u32 = 96;
453pub const ZEND_FETCH_OBJ_UNSET: u32 = 97;
454pub const ZEND_FETCH_LIST_R: u32 = 98;
455pub const ZEND_FETCH_CONSTANT: u32 = 99;
456pub const ZEND_CHECK_FUNC_ARG: u32 = 100;
457pub const ZEND_EXT_STMT: u32 = 101;
458pub const ZEND_EXT_FCALL_BEGIN: u32 = 102;
459pub const ZEND_EXT_FCALL_END: u32 = 103;
460pub const ZEND_EXT_NOP: u32 = 104;
461pub const ZEND_TICKS: u32 = 105;
462pub const ZEND_SEND_VAR_NO_REF: u32 = 106;
463pub const ZEND_CATCH: u32 = 107;
464pub const ZEND_THROW: u32 = 108;
465pub const ZEND_FETCH_CLASS: u32 = 109;
466pub const ZEND_CLONE: u32 = 110;
467pub const ZEND_RETURN_BY_REF: u32 = 111;
468pub const ZEND_INIT_METHOD_CALL: u32 = 112;
469pub const ZEND_INIT_STATIC_METHOD_CALL: u32 = 113;
470pub const ZEND_ISSET_ISEMPTY_VAR: u32 = 114;
471pub const ZEND_ISSET_ISEMPTY_DIM_OBJ: u32 = 115;
472pub const ZEND_SEND_VAL_EX: u32 = 116;
473pub const ZEND_SEND_VAR: u32 = 117;
474pub const ZEND_INIT_USER_CALL: u32 = 118;
475pub const ZEND_SEND_ARRAY: u32 = 119;
476pub const ZEND_SEND_USER: u32 = 120;
477pub const ZEND_STRLEN: u32 = 121;
478pub const ZEND_DEFINED: u32 = 122;
479pub const ZEND_TYPE_CHECK: u32 = 123;
480pub const ZEND_VERIFY_RETURN_TYPE: u32 = 124;
481pub const ZEND_FE_RESET_RW: u32 = 125;
482pub const ZEND_FE_FETCH_RW: u32 = 126;
483pub const ZEND_FE_FREE: u32 = 127;
484pub const ZEND_INIT_DYNAMIC_CALL: u32 = 128;
485pub const ZEND_DO_ICALL: u32 = 129;
486pub const ZEND_DO_UCALL: u32 = 130;
487pub const ZEND_DO_FCALL_BY_NAME: u32 = 131;
488pub const ZEND_PRE_INC_OBJ: u32 = 132;
489pub const ZEND_PRE_DEC_OBJ: u32 = 133;
490pub const ZEND_POST_INC_OBJ: u32 = 134;
491pub const ZEND_POST_DEC_OBJ: u32 = 135;
492pub const ZEND_ASSIGN_OBJ: u32 = 136;
493pub const ZEND_OP_DATA: u32 = 137;
494pub const ZEND_INSTANCEOF: u32 = 138;
495pub const ZEND_DECLARE_CLASS: u32 = 139;
496pub const ZEND_DECLARE_INHERITED_CLASS: u32 = 140;
497pub const ZEND_DECLARE_FUNCTION: u32 = 141;
498pub const ZEND_YIELD_FROM: u32 = 142;
499pub const ZEND_DECLARE_CONST: u32 = 143;
500pub const ZEND_ADD_INTERFACE: u32 = 144;
501pub const ZEND_DECLARE_INHERITED_CLASS_DELAYED: u32 = 145;
502pub const ZEND_VERIFY_ABSTRACT_CLASS: u32 = 146;
503pub const ZEND_ASSIGN_DIM: u32 = 147;
504pub const ZEND_ISSET_ISEMPTY_PROP_OBJ: u32 = 148;
505pub const ZEND_HANDLE_EXCEPTION: u32 = 149;
506pub const ZEND_USER_OPCODE: u32 = 150;
507pub const ZEND_ASSERT_CHECK: u32 = 151;
508pub const ZEND_JMP_SET: u32 = 152;
509pub const ZEND_DECLARE_LAMBDA_FUNCTION: u32 = 153;
510pub const ZEND_ADD_TRAIT: u32 = 154;
511pub const ZEND_BIND_TRAITS: u32 = 155;
512pub const ZEND_SEPARATE: u32 = 156;
513pub const ZEND_FETCH_CLASS_NAME: u32 = 157;
514pub const ZEND_CALL_TRAMPOLINE: u32 = 158;
515pub const ZEND_DISCARD_EXCEPTION: u32 = 159;
516pub const ZEND_YIELD: u32 = 160;
517pub const ZEND_GENERATOR_RETURN: u32 = 161;
518pub const ZEND_FAST_CALL: u32 = 162;
519pub const ZEND_FAST_RET: u32 = 163;
520pub const ZEND_RECV_VARIADIC: u32 = 164;
521pub const ZEND_SEND_UNPACK: u32 = 165;
522pub const ZEND_POW: u32 = 166;
523pub const ZEND_ASSIGN_POW: u32 = 167;
524pub const ZEND_BIND_GLOBAL: u32 = 168;
525pub const ZEND_COALESCE: u32 = 169;
526pub const ZEND_SPACESHIP: u32 = 170;
527pub const ZEND_DECLARE_ANON_CLASS: u32 = 171;
528pub const ZEND_DECLARE_ANON_INHERITED_CLASS: u32 = 172;
529pub const ZEND_FETCH_STATIC_PROP_R: u32 = 173;
530pub const ZEND_FETCH_STATIC_PROP_W: u32 = 174;
531pub const ZEND_FETCH_STATIC_PROP_RW: u32 = 175;
532pub const ZEND_FETCH_STATIC_PROP_IS: u32 = 176;
533pub const ZEND_FETCH_STATIC_PROP_FUNC_ARG: u32 = 177;
534pub const ZEND_FETCH_STATIC_PROP_UNSET: u32 = 178;
535pub const ZEND_UNSET_STATIC_PROP: u32 = 179;
536pub const ZEND_ISSET_ISEMPTY_STATIC_PROP: u32 = 180;
537pub const ZEND_FETCH_CLASS_CONSTANT: u32 = 181;
538pub const ZEND_BIND_LEXICAL: u32 = 182;
539pub const ZEND_BIND_STATIC: u32 = 183;
540pub const ZEND_FETCH_THIS: u32 = 184;
541pub const ZEND_SEND_FUNC_ARG: u32 = 185;
542pub const ZEND_ISSET_ISEMPTY_THIS: u32 = 186;
543pub const ZEND_SWITCH_LONG: u32 = 187;
544pub const ZEND_SWITCH_STRING: u32 = 188;
545pub const ZEND_IN_ARRAY: u32 = 189;
546pub const ZEND_COUNT: u32 = 190;
547pub const ZEND_GET_CLASS: u32 = 191;
548pub const ZEND_GET_CALLED_CLASS: u32 = 192;
549pub const ZEND_GET_TYPE: u32 = 193;
550pub const ZEND_FUNC_NUM_ARGS: u32 = 194;
551pub const ZEND_FUNC_GET_ARGS: u32 = 195;
552pub const ZEND_UNSET_CV: u32 = 196;
553pub const ZEND_ISSET_ISEMPTY_CV: u32 = 197;
554pub const ZEND_FETCH_LIST_W: u32 = 198;
555pub const ZEND_VM_LAST_OPCODE: u32 = 198;
556pub const ZEND_FETCH_CLASS_DEFAULT: u32 = 0;
557pub const ZEND_FETCH_CLASS_SELF: u32 = 1;
558pub const ZEND_FETCH_CLASS_PARENT: u32 = 2;
559pub const ZEND_FETCH_CLASS_STATIC: u32 = 3;
560pub const ZEND_FETCH_CLASS_AUTO: u32 = 4;
561pub const ZEND_FETCH_CLASS_INTERFACE: u32 = 5;
562pub const ZEND_FETCH_CLASS_TRAIT: u32 = 6;
563pub const ZEND_FETCH_CLASS_MASK: u32 = 15;
564pub const ZEND_FETCH_CLASS_NO_AUTOLOAD: u32 = 128;
565pub const ZEND_FETCH_CLASS_SILENT: u32 = 256;
566pub const ZEND_FETCH_CLASS_EXCEPTION: u32 = 512;
567pub const ZEND_PARAM_REF: u32 = 1;
568pub const ZEND_PARAM_VARIADIC: u32 = 2;
569pub const ZEND_NAME_FQ: u32 = 0;
570pub const ZEND_NAME_NOT_FQ: u32 = 1;
571pub const ZEND_NAME_RELATIVE: u32 = 2;
572pub const ZEND_TYPE_NULLABLE: u32 = 256;
573pub const ZEND_ARRAY_SYNTAX_LIST: u32 = 1;
574pub const ZEND_ARRAY_SYNTAX_LONG: u32 = 2;
575pub const ZEND_ARRAY_SYNTAX_SHORT: u32 = 3;
576pub const ZEND_INTERNAL_FUNCTION: u32 = 1;
577pub const ZEND_USER_FUNCTION: u32 = 2;
578pub const ZEND_OVERLOADED_FUNCTION: u32 = 3;
579pub const ZEND_EVAL_CODE: u32 = 4;
580pub const ZEND_OVERLOADED_FUNCTION_TEMPORARY: u32 = 5;
581pub const ZEND_INTERNAL_CLASS: u32 = 1;
582pub const ZEND_USER_CLASS: u32 = 2;
583pub const ZEND_EVAL: u32 = 1;
584pub const ZEND_INCLUDE: u32 = 2;
585pub const ZEND_INCLUDE_ONCE: u32 = 4;
586pub const ZEND_REQUIRE: u32 = 8;
587pub const ZEND_REQUIRE_ONCE: u32 = 16;
588pub const ZEND_CT: u32 = 1;
589pub const ZEND_RT: u32 = 2;
590pub const ZEND_FETCH_GLOBAL: u32 = 2;
591pub const ZEND_FETCH_LOCAL: u32 = 4;
592pub const ZEND_FETCH_GLOBAL_LOCK: u32 = 8;
593pub const ZEND_FETCH_TYPE_MASK: u32 = 14;
594pub const ZEND_ISEMPTY: u32 = 1;
595pub const ZEND_LAST_CATCH: u32 = 1;
596pub const ZEND_FREE_ON_RETURN: u32 = 1;
597pub const ZEND_SEND_BY_VAL: u32 = 0;
598pub const ZEND_SEND_BY_REF: u32 = 1;
599pub const ZEND_SEND_PREFER_REF: u32 = 2;
600pub const ZEND_DIM_IS: u32 = 1;
601pub const IS_CONSTANT_UNQUALIFIED: u32 = 16;
602pub const IS_CONSTANT_CLASS: u32 = 128;
603pub const IS_CONSTANT_IN_NAMESPACE: u32 = 256;
604pub const ZEND_RETURN_VAL: u32 = 0;
605pub const ZEND_RETURN_REF: u32 = 1;
606pub const ZEND_BIND_VAL: u32 = 0;
607pub const ZEND_BIND_REF: u32 = 1;
608pub const ZEND_RETURNS_FUNCTION: u32 = 1;
609pub const ZEND_RETURNS_VALUE: u32 = 2;
610pub const ZEND_ARRAY_ELEMENT_REF: u32 = 1;
611pub const ZEND_ARRAY_NOT_PACKED: u32 = 2;
612pub const ZEND_ARRAY_SIZE_SHIFT: u32 = 2;
613pub const ZEND_SYMBOL_CLASS: u32 = 1;
614pub const ZEND_SYMBOL_FUNCTION: u32 = 2;
615pub const ZEND_SYMBOL_CONST: u32 = 4;
616pub const ZEND_GOTO: u32 = 253;
617pub const ZEND_BRK: u32 = 254;
618pub const ZEND_CONT: u32 = 255;
619pub const ZEND_CLONE_FUNC_NAME: &'static [u8; 8usize] = b"__clone\0";
620pub const ZEND_CONSTRUCTOR_FUNC_NAME: &'static [u8; 12usize] = b"__construct\0";
621pub const ZEND_DESTRUCTOR_FUNC_NAME: &'static [u8; 11usize] = b"__destruct\0";
622pub const ZEND_GET_FUNC_NAME: &'static [u8; 6usize] = b"__get\0";
623pub const ZEND_SET_FUNC_NAME: &'static [u8; 6usize] = b"__set\0";
624pub const ZEND_UNSET_FUNC_NAME: &'static [u8; 8usize] = b"__unset\0";
625pub const ZEND_ISSET_FUNC_NAME: &'static [u8; 8usize] = b"__isset\0";
626pub const ZEND_CALL_FUNC_NAME: &'static [u8; 7usize] = b"__call\0";
627pub const ZEND_CALLSTATIC_FUNC_NAME: &'static [u8; 13usize] = b"__callstatic\0";
628pub const ZEND_TOSTRING_FUNC_NAME: &'static [u8; 11usize] = b"__tostring\0";
629pub const ZEND_AUTOLOAD_FUNC_NAME: &'static [u8; 11usize] = b"__autoload\0";
630pub const ZEND_INVOKE_FUNC_NAME: &'static [u8; 9usize] = b"__invoke\0";
631pub const ZEND_DEBUGINFO_FUNC_NAME: &'static [u8; 12usize] = b"__debuginfo\0";
632pub const ZEND_COMPILE_EXTENDED_INFO: u32 = 1;
633pub const ZEND_COMPILE_HANDLE_OP_ARRAY: u32 = 2;
634pub const ZEND_COMPILE_IGNORE_INTERNAL_FUNCTIONS: u32 = 4;
635pub const ZEND_COMPILE_IGNORE_INTERNAL_CLASSES: u32 = 8;
636pub const ZEND_COMPILE_DELAYED_BINDING: u32 = 16;
637pub const ZEND_COMPILE_NO_CONSTANT_SUBSTITUTION: u32 = 32;
638pub const ZEND_COMPILE_NO_BUILTIN_STRLEN: u32 = 64;
639pub const ZEND_COMPILE_NO_PERSISTENT_CONSTANT_SUBSTITUTION: u32 = 128;
640pub const ZEND_COMPILE_IGNORE_USER_FUNCTIONS: u32 = 256;
641pub const ZEND_COMPILE_GUARDS: u32 = 512;
642pub const ZEND_COMPILE_NO_BUILTINS: u32 = 1024;
643pub const ZEND_COMPILE_WITH_FILE_CACHE: u32 = 2048;
644pub const ZEND_COMPILE_NO_JUMPTABLES: u32 = 4096;
645pub const ZEND_COMPILE_DEFAULT: u32 = 2;
646pub const ZEND_COMPILE_DEFAULT_FOR_EVAL: u32 = 0;
647pub const ZEND_BUILD_TS: &'static [u8; 5usize] = b",NTS\0";
648pub const ZEND_MODULE_API_NO: u32 = 20180731;
649pub const USING_ZTS: u32 = 0;
650pub const MODULE_PERSISTENT: u32 = 1;
651pub const MODULE_TEMPORARY: u32 = 2;
652pub const MODULE_DEP_REQUIRED: u32 = 1;
653pub const MODULE_DEP_CONFLICTS: u32 = 2;
654pub const MODULE_DEP_OPTIONAL: u32 = 3;
655pub const ZEND_USER_OPCODE_CONTINUE: u32 = 0;
656pub const ZEND_USER_OPCODE_RETURN: u32 = 1;
657pub const ZEND_USER_OPCODE_DISPATCH: u32 = 2;
658pub const ZEND_USER_OPCODE_ENTER: u32 = 3;
659pub const ZEND_USER_OPCODE_LEAVE: u32 = 4;
660pub const ZEND_USER_OPCODE_DISPATCH_TO: u32 = 256;
661pub const ZEND_PARSE_PARAMS_QUIET: u32 = 2;
662pub const ZEND_PARSE_PARAMS_THROW: u32 = 4;
663pub const IS_CALLABLE_CHECK_SYNTAX_ONLY: u32 = 1;
664pub const IS_CALLABLE_CHECK_NO_ACCESS: u32 = 2;
665pub const IS_CALLABLE_CHECK_IS_STATIC: u32 = 4;
666pub const IS_CALLABLE_CHECK_SILENT: u32 = 8;
667pub const IS_CALLABLE_STRICT: u32 = 4;
668pub const PHP_OS_FAMILY: &'static [u8; 6usize] = b"Linux\0";
669pub const PHP_DEBUG: u32 = 0;
670pub const PHP_DIR_SEPARATOR: u8 = 47u8;
671pub const PHP_EOL: &'static [u8; 2usize] = b"\n\0";
672pub const PHP_ADA_INCLUDE: &'static [u8; 1usize] = b"\0";
673pub const PHP_ADA_LFLAGS: &'static [u8; 1usize] = b"\0";
674pub const PHP_ADA_LIBS: &'static [u8; 1usize] = b"\0";
675pub const PHP_APACHE_INCLUDE: &'static [u8; 1usize] = b"\0";
676pub const PHP_APACHE_TARGET: &'static [u8; 1usize] = b"\0";
677pub const PHP_FHTTPD_INCLUDE: &'static [u8; 1usize] = b"\0";
678pub const PHP_FHTTPD_LIB: &'static [u8; 1usize] = b"\0";
679pub const PHP_FHTTPD_TARGET: &'static [u8; 1usize] = b"\0";
680pub const PHP_CFLAGS: &'static [u8; 40usize] = b"$(CFLAGS_CLEAN) -prefer-non-pic -static\0";
681pub const PHP_DBASE_LIB: &'static [u8; 1usize] = b"\0";
682pub const PHP_BUILD_DEBUG: &'static [u8; 1usize] = b"\0";
683pub const PHP_GDBM_INCLUDE: &'static [u8; 1usize] = b"\0";
684pub const PHP_IBASE_INCLUDE: &'static [u8; 1usize] = b"\0";
685pub const PHP_IBASE_LFLAGS: &'static [u8; 1usize] = b"\0";
686pub const PHP_IBASE_LIBS: &'static [u8; 1usize] = b"\0";
687pub const PHP_IFX_INCLUDE: &'static [u8; 1usize] = b"\0";
688pub const PHP_IFX_LFLAGS: &'static [u8; 1usize] = b"\0";
689pub const PHP_IFX_LIBS: &'static [u8; 1usize] = b"\0";
690pub const PHP_INSTALL_IT: &'static [u8; 1usize] = b"\0";
691pub const PHP_IODBC_INCLUDE: &'static [u8; 1usize] = b"\0";
692pub const PHP_IODBC_LFLAGS: &'static [u8; 1usize] = b"\0";
693pub const PHP_IODBC_LIBS: &'static [u8; 1usize] = b"\0";
694pub const PHP_MSQL_INCLUDE: &'static [u8; 1usize] = b"\0";
695pub const PHP_MSQL_LFLAGS: &'static [u8; 1usize] = b"\0";
696pub const PHP_MSQL_LIBS: &'static [u8; 1usize] = b"\0";
697pub const PHP_MYSQL_INCLUDE: &'static [u8; 16usize] = b"@MYSQL_INCLUDE@\0";
698pub const PHP_MYSQL_LIBS: &'static [u8; 13usize] = b"@MYSQL_LIBS@\0";
699pub const PHP_MYSQL_TYPE: &'static [u8; 20usize] = b"@MYSQL_MODULE_TYPE@\0";
700pub const PHP_ODBC_INCLUDE: &'static [u8; 1usize] = b"\0";
701pub const PHP_ODBC_LFLAGS: &'static [u8; 1usize] = b"\0";
702pub const PHP_ODBC_LIBS: &'static [u8; 1usize] = b"\0";
703pub const PHP_ODBC_TYPE: &'static [u8; 1usize] = b"\0";
704pub const PHP_OCI8_SHARED_LIBADD: &'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_ORACLE_SHARED_LIBADD: &'static [u8; 23usize] = b"@ORACLE_SHARED_LIBADD@\0";
708pub const PHP_ORACLE_DIR: &'static [u8; 13usize] = b"@ORACLE_DIR@\0";
709pub const PHP_ORACLE_VERSION: &'static [u8; 17usize] = b"@ORACLE_VERSION@\0";
710pub const PHP_PGSQL_INCLUDE: &'static [u8; 1usize] = b"\0";
711pub const PHP_PGSQL_LFLAGS: &'static [u8; 1usize] = b"\0";
712pub const PHP_PGSQL_LIBS: &'static [u8; 1usize] = b"\0";
713pub const PHP_PROG_SENDMAIL: &'static [u8; 19usize] = b"/usr/sbin/sendmail\0";
714pub const PHP_SOLID_INCLUDE: &'static [u8; 1usize] = b"\0";
715pub const PHP_SOLID_LIBS: &'static [u8; 1usize] = b"\0";
716pub const PHP_EMPRESS_INCLUDE: &'static [u8; 1usize] = b"\0";
717pub const PHP_EMPRESS_LIBS: &'static [u8; 1usize] = b"\0";
718pub const PHP_SYBASE_INCLUDE: &'static [u8; 1usize] = b"\0";
719pub const PHP_SYBASE_LFLAGS: &'static [u8; 1usize] = b"\0";
720pub const PHP_SYBASE_LIBS: &'static [u8; 1usize] = b"\0";
721pub const PHP_DBM_TYPE: &'static [u8; 1usize] = b"\0";
722pub const PHP_DBM_LIB: &'static [u8; 1usize] = b"\0";
723pub const PHP_LDAP_LFLAGS: &'static [u8; 1usize] = b"\0";
724pub const PHP_LDAP_INCLUDE: &'static [u8; 1usize] = b"\0";
725pub const PHP_LDAP_LIBS: &'static [u8; 1usize] = b"\0";
726pub const PHP_INCLUDE_PATH: &'static [u8; 17usize] = b".:/usr/share/php\0";
727pub const PHP_EXTENSION_DIR: &'static [u8; 22usize] = b"/usr/lib/php/20180731\0";
728pub const PHP_PREFIX: &'static [u8; 5usize] = b"/usr\0";
729pub const PHP_BINDIR: &'static [u8; 9usize] = b"/usr/bin\0";
730pub const PHP_SBINDIR: &'static [u8; 10usize] = b"/usr/sbin\0";
731pub const PHP_MANDIR: &'static [u8; 15usize] = b"/usr/share/man\0";
732pub const PHP_LIBDIR: &'static [u8; 13usize] = b"/usr/lib/php\0";
733pub const PHP_DATADIR: &'static [u8; 19usize] = b"/usr/share/php/7.3\0";
734pub const PHP_SYSCONFDIR: &'static [u8; 5usize] = b"/etc\0";
735pub const PHP_LOCALSTATEDIR: &'static [u8; 5usize] = b"/var\0";
736pub const PHP_CONFIG_FILE_PATH: &'static [u8; 17usize] = b"/etc/php/7.3/cli\0";
737pub const PHP_CONFIG_FILE_SCAN_DIR: &'static [u8; 24usize] = b"/etc/php/7.3/cli/conf.d\0";
738pub const PHP_SHLIB_SUFFIX: &'static [u8; 3usize] = b"so\0";
739pub const PHP_SHLIB_EXT_PREFIX: &'static [u8; 1usize] = b"\0";
740pub const PHP_MIME_TYPE: &'static [u8; 24usize] = b"application/x-httpd-php\0";
741pub const PHP_SYSLOG_FILTER_ALL: u32 = 0;
742pub const PHP_SYSLOG_FILTER_NO_CTRL: u32 = 1;
743pub const PHP_SYSLOG_FILTER_ASCII: u32 = 2;
744pub const PHP_SYSLOG_FILTER_RAW: u32 = 3;
745pub const PHP_OUTPUT_NEWAPI: u32 = 1;
746pub const PHP_OUTPUT_HANDLER_WRITE: u32 = 0;
747pub const PHP_OUTPUT_HANDLER_START: u32 = 1;
748pub const PHP_OUTPUT_HANDLER_CLEAN: u32 = 2;
749pub const PHP_OUTPUT_HANDLER_FLUSH: u32 = 4;
750pub const PHP_OUTPUT_HANDLER_FINAL: u32 = 8;
751pub const PHP_OUTPUT_HANDLER_CONT: u32 = 0;
752pub const PHP_OUTPUT_HANDLER_END: u32 = 8;
753pub const PHP_OUTPUT_HANDLER_INTERNAL: u32 = 0;
754pub const PHP_OUTPUT_HANDLER_USER: u32 = 1;
755pub const PHP_OUTPUT_HANDLER_CLEANABLE: u32 = 16;
756pub const PHP_OUTPUT_HANDLER_FLUSHABLE: u32 = 32;
757pub const PHP_OUTPUT_HANDLER_REMOVABLE: u32 = 64;
758pub const PHP_OUTPUT_HANDLER_STDFLAGS: u32 = 112;
759pub const PHP_OUTPUT_HANDLER_STARTED: u32 = 4096;
760pub const PHP_OUTPUT_HANDLER_DISABLED: u32 = 8192;
761pub const PHP_OUTPUT_HANDLER_PROCESSED: u32 = 16384;
762pub const PHP_OUTPUT_POP_TRY: u32 = 0;
763pub const PHP_OUTPUT_POP_FORCE: u32 = 1;
764pub const PHP_OUTPUT_POP_DISCARD: u32 = 16;
765pub const PHP_OUTPUT_POP_SILENT: u32 = 256;
766pub const PHP_OUTPUT_IMPLICITFLUSH: u32 = 1;
767pub const PHP_OUTPUT_DISABLED: u32 = 2;
768pub const PHP_OUTPUT_WRITTEN: u32 = 4;
769pub const PHP_OUTPUT_SENT: u32 = 8;
770pub const PHP_OUTPUT_ACTIVE: u32 = 16;
771pub const PHP_OUTPUT_LOCKED: u32 = 32;
772pub const PHP_OUTPUT_ACTIVATED: u32 = 1048576;
773pub const PHP_OUTPUT_HANDLER_ALIGNTO_SIZE: u32 = 4096;
774pub const PHP_OUTPUT_HANDLER_DEFAULT_SIZE: u32 = 16384;
775pub const PHP_STREAM_NOTIFIER_PROGRESS: u32 = 1;
776pub const PHP_STREAM_NOTIFY_RESOLVE: u32 = 1;
777pub const PHP_STREAM_NOTIFY_CONNECT: u32 = 2;
778pub const PHP_STREAM_NOTIFY_AUTH_REQUIRED: u32 = 3;
779pub const PHP_STREAM_NOTIFY_MIME_TYPE_IS: u32 = 4;
780pub const PHP_STREAM_NOTIFY_FILE_SIZE_IS: u32 = 5;
781pub const PHP_STREAM_NOTIFY_REDIRECTED: u32 = 6;
782pub const PHP_STREAM_NOTIFY_PROGRESS: u32 = 7;
783pub const PHP_STREAM_NOTIFY_COMPLETED: u32 = 8;
784pub const PHP_STREAM_NOTIFY_FAILURE: u32 = 9;
785pub const PHP_STREAM_NOTIFY_AUTH_RESULT: u32 = 10;
786pub const PHP_STREAM_NOTIFY_SEVERITY_INFO: u32 = 0;
787pub const PHP_STREAM_NOTIFY_SEVERITY_WARN: u32 = 1;
788pub const PHP_STREAM_NOTIFY_SEVERITY_ERR: u32 = 2;
789pub const PHP_STREAM_FILTER_READ: u32 = 1;
790pub const PHP_STREAM_FILTER_WRITE: u32 = 2;
791pub const PHP_STREAM_FILTER_ALL: u32 = 3;
792pub const PHP_STREAM_FLAG_NO_SEEK: u32 = 1;
793pub const PHP_STREAM_FLAG_NO_BUFFER: u32 = 2;
794pub const PHP_STREAM_FLAG_EOL_UNIX: u32 = 0;
795pub const PHP_STREAM_FLAG_DETECT_EOL: u32 = 4;
796pub const PHP_STREAM_FLAG_EOL_MAC: u32 = 8;
797pub const PHP_STREAM_FLAG_AVOID_BLOCKING: u32 = 16;
798pub const PHP_STREAM_FLAG_NO_CLOSE: u32 = 32;
799pub const PHP_STREAM_FLAG_IS_DIR: u32 = 64;
800pub const PHP_STREAM_FLAG_NO_FCLOSE: u32 = 128;
801pub const PHP_STREAM_FLAG_WAS_WRITTEN: u32 = 2147483648;
802pub const PHP_STREAM_FCLOSE_NONE: u32 = 0;
803pub const PHP_STREAM_FCLOSE_FDOPEN: u32 = 1;
804pub const PHP_STREAM_FCLOSE_FOPENCOOKIE: u32 = 2;
805pub const PHP_STREAM_PERSISTENT_SUCCESS: u32 = 0;
806pub const PHP_STREAM_PERSISTENT_FAILURE: u32 = 1;
807pub const PHP_STREAM_PERSISTENT_NOT_EXIST: u32 = 2;
808pub const PHP_STREAM_FREE_CALL_DTOR: u32 = 1;
809pub const PHP_STREAM_FREE_RELEASE_STREAM: u32 = 2;
810pub const PHP_STREAM_FREE_PRESERVE_HANDLE: u32 = 4;
811pub const PHP_STREAM_FREE_RSRC_DTOR: u32 = 8;
812pub const PHP_STREAM_FREE_PERSISTENT: u32 = 16;
813pub const PHP_STREAM_FREE_IGNORE_ENCLOSING: u32 = 32;
814pub const PHP_STREAM_FREE_KEEP_RSRC: u32 = 64;
815pub const PHP_STREAM_FREE_CLOSE: u32 = 3;
816pub const PHP_STREAM_FREE_CLOSE_CASTED: u32 = 7;
817pub const PHP_STREAM_FREE_CLOSE_PERSISTENT: u32 = 19;
818pub const PHP_STREAM_MKDIR_RECURSIVE: u32 = 1;
819pub const PHP_STREAM_URL_STAT_LINK: u32 = 1;
820pub const PHP_STREAM_URL_STAT_QUIET: u32 = 2;
821pub const PHP_STREAM_URL_STAT_NOCACHE: u32 = 4;
822pub const PHP_STREAM_OPTION_BLOCKING: u32 = 1;
823pub const PHP_STREAM_OPTION_READ_BUFFER: u32 = 2;
824pub const PHP_STREAM_OPTION_WRITE_BUFFER: u32 = 3;
825pub const PHP_STREAM_BUFFER_NONE: u32 = 0;
826pub const PHP_STREAM_BUFFER_LINE: u32 = 1;
827pub const PHP_STREAM_BUFFER_FULL: u32 = 2;
828pub const PHP_STREAM_OPTION_READ_TIMEOUT: u32 = 4;
829pub const PHP_STREAM_OPTION_SET_CHUNK_SIZE: u32 = 5;
830pub const PHP_STREAM_OPTION_LOCKING: u32 = 6;
831pub const PHP_STREAM_LOCK_SUPPORTED: u32 = 1;
832pub const PHP_STREAM_OPTION_XPORT_API: u32 = 7;
833pub const PHP_STREAM_OPTION_CRYPTO_API: u32 = 8;
834pub const PHP_STREAM_OPTION_MMAP_API: u32 = 9;
835pub const PHP_STREAM_OPTION_TRUNCATE_API: u32 = 10;
836pub const PHP_STREAM_TRUNCATE_SUPPORTED: u32 = 0;
837pub const PHP_STREAM_TRUNCATE_SET_SIZE: u32 = 1;
838pub const PHP_STREAM_OPTION_META_DATA_API: u32 = 11;
839pub const PHP_STREAM_OPTION_CHECK_LIVENESS: u32 = 12;
840pub const PHP_STREAM_OPTION_PIPE_BLOCKING: u32 = 13;
841pub const PHP_STREAM_OPTION_RETURN_OK: u32 = 0;
842pub const PHP_STREAM_OPTION_RETURN_ERR: i32 = -1;
843pub const PHP_STREAM_OPTION_RETURN_NOTIMPL: i32 = -2;
844pub const PHP_STREAM_MMAP_ALL: u32 = 0;
845pub const PHP_STREAM_AS_STDIO: u32 = 0;
846pub const PHP_STREAM_AS_FD: u32 = 1;
847pub const PHP_STREAM_AS_SOCKETD: u32 = 2;
848pub const PHP_STREAM_AS_FD_FOR_SELECT: u32 = 3;
849pub const PHP_STREAM_CAST_TRY_HARD: u32 = 2147483648;
850pub const PHP_STREAM_CAST_RELEASE: u32 = 1073741824;
851pub const PHP_STREAM_CAST_INTERNAL: u32 = 536870912;
852pub const PHP_STREAM_CAST_MASK: u32 = 3758096384;
853pub const PHP_STREAM_UNCHANGED: u32 = 0;
854pub const PHP_STREAM_RELEASED: u32 = 1;
855pub const PHP_STREAM_FAILED: u32 = 2;
856pub const PHP_STREAM_CRITICAL: u32 = 3;
857pub const PHP_STREAM_NO_PREFERENCE: u32 = 0;
858pub const PHP_STREAM_PREFER_STDIO: u32 = 1;
859pub const PHP_STREAM_FORCE_CONVERSION: u32 = 2;
860pub const PHP_STREAM_IS_URL: u32 = 1;
861pub const PHP_STREAM_META_TOUCH: u32 = 1;
862pub const PHP_STREAM_META_OWNER_NAME: u32 = 2;
863pub const PHP_STREAM_META_OWNER: u32 = 3;
864pub const PHP_STREAM_META_GROUP_NAME: u32 = 4;
865pub const PHP_STREAM_META_GROUP: u32 = 5;
866pub const PHP_STREAM_META_ACCESS: u32 = 6;
867pub const PHP_STREAM_MAX_MEM: u32 = 2097152;
868pub const PHP_DISPLAY_ERRORS_STDOUT: u32 = 1;
869pub const PHP_DISPLAY_ERRORS_STDERR: u32 = 2;
870pub const ZEND_INI_USER: u32 = 1;
871pub const ZEND_INI_PERDIR: u32 = 2;
872pub const ZEND_INI_SYSTEM: u32 = 4;
873pub const ZEND_INI_ALL: u32 = 7;
874pub const ZEND_INI_DISPLAY_ORIG: u32 = 1;
875pub const ZEND_INI_DISPLAY_ACTIVE: u32 = 2;
876pub const ZEND_INI_STAGE_STARTUP: u32 = 1;
877pub const ZEND_INI_STAGE_SHUTDOWN: u32 = 2;
878pub const ZEND_INI_STAGE_ACTIVATE: u32 = 4;
879pub const ZEND_INI_STAGE_DEACTIVATE: u32 = 8;
880pub const ZEND_INI_STAGE_RUNTIME: u32 = 16;
881pub const ZEND_INI_STAGE_HTACCESS: u32 = 32;
882pub const ZEND_INI_STAGE_IN_REQUEST: u32 = 60;
883pub const ZEND_INI_PARSER_ENTRY: u32 = 1;
884pub const ZEND_INI_PARSER_SECTION: u32 = 2;
885pub const ZEND_INI_PARSER_POP_ENTRY: u32 = 3;
886pub const PHP_INI_USER: u32 = 1;
887pub const PHP_INI_PERDIR: u32 = 2;
888pub const PHP_INI_SYSTEM: u32 = 4;
889pub const PHP_INI_ALL: u32 = 7;
890pub const PHP_INI_DISPLAY_ORIG: u32 = 1;
891pub const PHP_INI_DISPLAY_ACTIVE: u32 = 2;
892pub const PHP_INI_STAGE_STARTUP: u32 = 1;
893pub const PHP_INI_STAGE_SHUTDOWN: u32 = 2;
894pub const PHP_INI_STAGE_ACTIVATE: u32 = 4;
895pub const PHP_INI_STAGE_DEACTIVATE: u32 = 8;
896pub const PHP_INI_STAGE_RUNTIME: u32 = 16;
897pub const PHP_INI_STAGE_HTACCESS: u32 = 32;
898pub const PHP_USER_CONSTANT: u32 = 8388607;
899pub const ZEND_GET_CONSTANT_NO_DEPRECATION_CHECK: u32 = 4096;
900pub const PHP_CONNECTION_NORMAL: u32 = 0;
901pub const PHP_CONNECTION_ABORTED: u32 = 1;
902pub const PHP_CONNECTION_TIMEOUT: u32 = 2;
903pub const PHP_ENTRY_NAME_COLOR: &'static [u8; 5usize] = b"#ccf\0";
904pub const PHP_CONTENTS_COLOR: &'static [u8; 5usize] = b"#ccc\0";
905pub const PHP_HEADER_COLOR: &'static [u8; 5usize] = b"#99c\0";
906pub const PHP_INFO_GENERAL: u32 = 1;
907pub const PHP_INFO_CREDITS: u32 = 2;
908pub const PHP_INFO_CONFIGURATION: u32 = 4;
909pub const PHP_INFO_MODULES: u32 = 8;
910pub const PHP_INFO_ENVIRONMENT: u32 = 16;
911pub const PHP_INFO_VARIABLES: u32 = 32;
912pub const PHP_INFO_LICENSE: u32 = 64;
913pub const PHP_INFO_ALL: u32 = 4294967295;
914pub const PHP_CREDITS_GROUP: u32 = 1;
915pub const PHP_CREDITS_GENERAL: u32 = 2;
916pub const PHP_CREDITS_SAPI: u32 = 4;
917pub const PHP_CREDITS_MODULES: u32 = 8;
918pub const PHP_CREDITS_DOCS: u32 = 16;
919pub const PHP_CREDITS_FULLPAGE: u32 = 32;
920pub const PHP_CREDITS_QA: u32 = 64;
921pub const PHP_CREDITS_WEB: u32 = 128;
922pub const PHP_CREDITS_PACKAGING: u32 = 256;
923pub const PHP_CREDITS_ALL: u32 = 4294967295;
924pub 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" ;
925pub 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" ;
926pub 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" ;
927pub const ZEND_EXTENSION_API_NO: u32 = 320180731;
928pub const ZEND_EXTMSG_NEW_EXTENSION: u32 = 1;
929pub const ZEND_EXTENSIONS_HAVE_OP_ARRAY_CTOR: u32 = 1;
930pub const ZEND_EXTENSIONS_HAVE_OP_ARRAY_DTOR: u32 = 2;
931pub const ZEND_EXTENSIONS_HAVE_OP_ARRAY_HANDLER: u32 = 4;
932pub const ZEND_EXTENSIONS_HAVE_OP_ARRAY_PERSIST_CALC: u32 = 8;
933pub const ZEND_EXTENSIONS_HAVE_OP_ARRAY_PERSIST: u32 = 16;
934pub type size_t = ::std::os::raw::c_ulong;
935pub type __uint8_t = ::std::os::raw::c_uchar;
936pub type __uint16_t = ::std::os::raw::c_ushort;
937pub type __uint32_t = ::std::os::raw::c_uint;
938pub type __int64_t = ::std::os::raw::c_long;
939pub type __uint64_t = ::std::os::raw::c_ulong;
940pub type __dev_t = ::std::os::raw::c_ulong;
941pub type __uid_t = ::std::os::raw::c_uint;
942pub type __gid_t = ::std::os::raw::c_uint;
943pub type __ino_t = ::std::os::raw::c_ulong;
944pub type __mode_t = ::std::os::raw::c_uint;
945pub type __nlink_t = ::std::os::raw::c_ulong;
946pub type __off_t = ::std::os::raw::c_long;
947pub type __off64_t = ::std::os::raw::c_long;
948pub type __pid_t = ::std::os::raw::c_int;
949pub type __clock_t = ::std::os::raw::c_long;
950pub type __time_t = ::std::os::raw::c_long;
951pub type __suseconds_t = ::std::os::raw::c_long;
952pub type __blksize_t = ::std::os::raw::c_long;
953pub type __blkcnt_t = ::std::os::raw::c_long;
954pub type __syscall_slong_t = ::std::os::raw::c_long;
955pub type __socklen_t = ::std::os::raw::c_uint;
956pub type time_t = __time_t;
957#[repr(C)]
958#[derive(Debug, Copy, Clone)]
959pub struct __sigset_t {
960    pub __val: [::std::os::raw::c_ulong; 16usize],
961}
962#[test]
963fn bindgen_test_layout___sigset_t() {
964    assert_eq!(
965        ::std::mem::size_of::<__sigset_t>(),
966        128usize,
967        concat!("Size of: ", stringify!(__sigset_t))
968    );
969    assert_eq!(
970        ::std::mem::align_of::<__sigset_t>(),
971        8usize,
972        concat!("Alignment of ", stringify!(__sigset_t))
973    );
974    assert_eq!(
975        unsafe { &(*(::std::ptr::null::<__sigset_t>())).__val as *const _ as usize },
976        0usize,
977        concat!(
978            "Offset of field: ",
979            stringify!(__sigset_t),
980            "::",
981            stringify!(__val)
982        )
983    );
984}
985#[repr(C)]
986#[derive(Debug, Copy, Clone)]
987pub struct timeval {
988    pub tv_sec: __time_t,
989    pub tv_usec: __suseconds_t,
990}
991#[test]
992fn bindgen_test_layout_timeval() {
993    assert_eq!(
994        ::std::mem::size_of::<timeval>(),
995        16usize,
996        concat!("Size of: ", stringify!(timeval))
997    );
998    assert_eq!(
999        ::std::mem::align_of::<timeval>(),
1000        8usize,
1001        concat!("Alignment of ", stringify!(timeval))
1002    );
1003    assert_eq!(
1004        unsafe { &(*(::std::ptr::null::<timeval>())).tv_sec as *const _ as usize },
1005        0usize,
1006        concat!(
1007            "Offset of field: ",
1008            stringify!(timeval),
1009            "::",
1010            stringify!(tv_sec)
1011        )
1012    );
1013    assert_eq!(
1014        unsafe { &(*(::std::ptr::null::<timeval>())).tv_usec as *const _ as usize },
1015        8usize,
1016        concat!(
1017            "Offset of field: ",
1018            stringify!(timeval),
1019            "::",
1020            stringify!(tv_usec)
1021        )
1022    );
1023}
1024#[repr(C)]
1025#[derive(Debug, Copy, Clone)]
1026pub struct timespec {
1027    pub tv_sec: __time_t,
1028    pub tv_nsec: __syscall_slong_t,
1029}
1030#[test]
1031fn bindgen_test_layout_timespec() {
1032    assert_eq!(
1033        ::std::mem::size_of::<timespec>(),
1034        16usize,
1035        concat!("Size of: ", stringify!(timespec))
1036    );
1037    assert_eq!(
1038        ::std::mem::align_of::<timespec>(),
1039        8usize,
1040        concat!("Alignment of ", stringify!(timespec))
1041    );
1042    assert_eq!(
1043        unsafe { &(*(::std::ptr::null::<timespec>())).tv_sec as *const _ as usize },
1044        0usize,
1045        concat!(
1046            "Offset of field: ",
1047            stringify!(timespec),
1048            "::",
1049            stringify!(tv_sec)
1050        )
1051    );
1052    assert_eq!(
1053        unsafe { &(*(::std::ptr::null::<timespec>())).tv_nsec as *const _ as usize },
1054        8usize,
1055        concat!(
1056            "Offset of field: ",
1057            stringify!(timespec),
1058            "::",
1059            stringify!(tv_nsec)
1060        )
1061    );
1062}
1063pub type va_list = __builtin_va_list;
1064pub type FILE = _IO_FILE;
1065#[repr(C)]
1066#[derive(Debug, Copy, Clone)]
1067pub struct _IO_marker {
1068    _unused: [u8; 0],
1069}
1070#[repr(C)]
1071#[derive(Debug, Copy, Clone)]
1072pub struct _IO_codecvt {
1073    _unused: [u8; 0],
1074}
1075#[repr(C)]
1076#[derive(Debug, Copy, Clone)]
1077pub struct _IO_wide_data {
1078    _unused: [u8; 0],
1079}
1080pub type _IO_lock_t = ::std::os::raw::c_void;
1081#[repr(C)]
1082#[derive(Debug, Copy, Clone)]
1083pub struct _IO_FILE {
1084    pub _flags: ::std::os::raw::c_int,
1085    pub _IO_read_ptr: *mut ::std::os::raw::c_char,
1086    pub _IO_read_end: *mut ::std::os::raw::c_char,
1087    pub _IO_read_base: *mut ::std::os::raw::c_char,
1088    pub _IO_write_base: *mut ::std::os::raw::c_char,
1089    pub _IO_write_ptr: *mut ::std::os::raw::c_char,
1090    pub _IO_write_end: *mut ::std::os::raw::c_char,
1091    pub _IO_buf_base: *mut ::std::os::raw::c_char,
1092    pub _IO_buf_end: *mut ::std::os::raw::c_char,
1093    pub _IO_save_base: *mut ::std::os::raw::c_char,
1094    pub _IO_backup_base: *mut ::std::os::raw::c_char,
1095    pub _IO_save_end: *mut ::std::os::raw::c_char,
1096    pub _markers: *mut _IO_marker,
1097    pub _chain: *mut _IO_FILE,
1098    pub _fileno: ::std::os::raw::c_int,
1099    pub _flags2: ::std::os::raw::c_int,
1100    pub _old_offset: __off_t,
1101    pub _cur_column: ::std::os::raw::c_ushort,
1102    pub _vtable_offset: ::std::os::raw::c_schar,
1103    pub _shortbuf: [::std::os::raw::c_char; 1usize],
1104    pub _lock: *mut _IO_lock_t,
1105    pub _offset: __off64_t,
1106    pub _codecvt: *mut _IO_codecvt,
1107    pub _wide_data: *mut _IO_wide_data,
1108    pub _freeres_list: *mut _IO_FILE,
1109    pub _freeres_buf: *mut ::std::os::raw::c_void,
1110    pub __pad5: size_t,
1111    pub _mode: ::std::os::raw::c_int,
1112    pub _unused2: [::std::os::raw::c_char; 20usize],
1113}
1114#[test]
1115fn bindgen_test_layout__IO_FILE() {
1116    assert_eq!(
1117        ::std::mem::size_of::<_IO_FILE>(),
1118        216usize,
1119        concat!("Size of: ", stringify!(_IO_FILE))
1120    );
1121    assert_eq!(
1122        ::std::mem::align_of::<_IO_FILE>(),
1123        8usize,
1124        concat!("Alignment of ", stringify!(_IO_FILE))
1125    );
1126    assert_eq!(
1127        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._flags as *const _ as usize },
1128        0usize,
1129        concat!(
1130            "Offset of field: ",
1131            stringify!(_IO_FILE),
1132            "::",
1133            stringify!(_flags)
1134        )
1135    );
1136    assert_eq!(
1137        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_ptr as *const _ as usize },
1138        8usize,
1139        concat!(
1140            "Offset of field: ",
1141            stringify!(_IO_FILE),
1142            "::",
1143            stringify!(_IO_read_ptr)
1144        )
1145    );
1146    assert_eq!(
1147        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_end as *const _ as usize },
1148        16usize,
1149        concat!(
1150            "Offset of field: ",
1151            stringify!(_IO_FILE),
1152            "::",
1153            stringify!(_IO_read_end)
1154        )
1155    );
1156    assert_eq!(
1157        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_base as *const _ as usize },
1158        24usize,
1159        concat!(
1160            "Offset of field: ",
1161            stringify!(_IO_FILE),
1162            "::",
1163            stringify!(_IO_read_base)
1164        )
1165    );
1166    assert_eq!(
1167        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_base as *const _ as usize },
1168        32usize,
1169        concat!(
1170            "Offset of field: ",
1171            stringify!(_IO_FILE),
1172            "::",
1173            stringify!(_IO_write_base)
1174        )
1175    );
1176    assert_eq!(
1177        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_ptr as *const _ as usize },
1178        40usize,
1179        concat!(
1180            "Offset of field: ",
1181            stringify!(_IO_FILE),
1182            "::",
1183            stringify!(_IO_write_ptr)
1184        )
1185    );
1186    assert_eq!(
1187        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_end as *const _ as usize },
1188        48usize,
1189        concat!(
1190            "Offset of field: ",
1191            stringify!(_IO_FILE),
1192            "::",
1193            stringify!(_IO_write_end)
1194        )
1195    );
1196    assert_eq!(
1197        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_buf_base as *const _ as usize },
1198        56usize,
1199        concat!(
1200            "Offset of field: ",
1201            stringify!(_IO_FILE),
1202            "::",
1203            stringify!(_IO_buf_base)
1204        )
1205    );
1206    assert_eq!(
1207        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_buf_end as *const _ as usize },
1208        64usize,
1209        concat!(
1210            "Offset of field: ",
1211            stringify!(_IO_FILE),
1212            "::",
1213            stringify!(_IO_buf_end)
1214        )
1215    );
1216    assert_eq!(
1217        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_save_base as *const _ as usize },
1218        72usize,
1219        concat!(
1220            "Offset of field: ",
1221            stringify!(_IO_FILE),
1222            "::",
1223            stringify!(_IO_save_base)
1224        )
1225    );
1226    assert_eq!(
1227        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_backup_base as *const _ as usize },
1228        80usize,
1229        concat!(
1230            "Offset of field: ",
1231            stringify!(_IO_FILE),
1232            "::",
1233            stringify!(_IO_backup_base)
1234        )
1235    );
1236    assert_eq!(
1237        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_save_end as *const _ as usize },
1238        88usize,
1239        concat!(
1240            "Offset of field: ",
1241            stringify!(_IO_FILE),
1242            "::",
1243            stringify!(_IO_save_end)
1244        )
1245    );
1246    assert_eq!(
1247        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._markers as *const _ as usize },
1248        96usize,
1249        concat!(
1250            "Offset of field: ",
1251            stringify!(_IO_FILE),
1252            "::",
1253            stringify!(_markers)
1254        )
1255    );
1256    assert_eq!(
1257        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._chain as *const _ as usize },
1258        104usize,
1259        concat!(
1260            "Offset of field: ",
1261            stringify!(_IO_FILE),
1262            "::",
1263            stringify!(_chain)
1264        )
1265    );
1266    assert_eq!(
1267        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._fileno as *const _ as usize },
1268        112usize,
1269        concat!(
1270            "Offset of field: ",
1271            stringify!(_IO_FILE),
1272            "::",
1273            stringify!(_fileno)
1274        )
1275    );
1276    assert_eq!(
1277        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._flags2 as *const _ as usize },
1278        116usize,
1279        concat!(
1280            "Offset of field: ",
1281            stringify!(_IO_FILE),
1282            "::",
1283            stringify!(_flags2)
1284        )
1285    );
1286    assert_eq!(
1287        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._old_offset as *const _ as usize },
1288        120usize,
1289        concat!(
1290            "Offset of field: ",
1291            stringify!(_IO_FILE),
1292            "::",
1293            stringify!(_old_offset)
1294        )
1295    );
1296    assert_eq!(
1297        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._cur_column as *const _ as usize },
1298        128usize,
1299        concat!(
1300            "Offset of field: ",
1301            stringify!(_IO_FILE),
1302            "::",
1303            stringify!(_cur_column)
1304        )
1305    );
1306    assert_eq!(
1307        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._vtable_offset as *const _ as usize },
1308        130usize,
1309        concat!(
1310            "Offset of field: ",
1311            stringify!(_IO_FILE),
1312            "::",
1313            stringify!(_vtable_offset)
1314        )
1315    );
1316    assert_eq!(
1317        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._shortbuf as *const _ as usize },
1318        131usize,
1319        concat!(
1320            "Offset of field: ",
1321            stringify!(_IO_FILE),
1322            "::",
1323            stringify!(_shortbuf)
1324        )
1325    );
1326    assert_eq!(
1327        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._lock as *const _ as usize },
1328        136usize,
1329        concat!(
1330            "Offset of field: ",
1331            stringify!(_IO_FILE),
1332            "::",
1333            stringify!(_lock)
1334        )
1335    );
1336    assert_eq!(
1337        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._offset as *const _ as usize },
1338        144usize,
1339        concat!(
1340            "Offset of field: ",
1341            stringify!(_IO_FILE),
1342            "::",
1343            stringify!(_offset)
1344        )
1345    );
1346    assert_eq!(
1347        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._codecvt as *const _ as usize },
1348        152usize,
1349        concat!(
1350            "Offset of field: ",
1351            stringify!(_IO_FILE),
1352            "::",
1353            stringify!(_codecvt)
1354        )
1355    );
1356    assert_eq!(
1357        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._wide_data as *const _ as usize },
1358        160usize,
1359        concat!(
1360            "Offset of field: ",
1361            stringify!(_IO_FILE),
1362            "::",
1363            stringify!(_wide_data)
1364        )
1365    );
1366    assert_eq!(
1367        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._freeres_list as *const _ as usize },
1368        168usize,
1369        concat!(
1370            "Offset of field: ",
1371            stringify!(_IO_FILE),
1372            "::",
1373            stringify!(_freeres_list)
1374        )
1375    );
1376    assert_eq!(
1377        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._freeres_buf as *const _ as usize },
1378        176usize,
1379        concat!(
1380            "Offset of field: ",
1381            stringify!(_IO_FILE),
1382            "::",
1383            stringify!(_freeres_buf)
1384        )
1385    );
1386    assert_eq!(
1387        unsafe { &(*(::std::ptr::null::<_IO_FILE>())).__pad5 as *const _ as usize },
1388        184usize,
1389        concat!(
1390            "Offset of field: ",
1391            stringify!(_IO_FILE),
1392            "::",
1393            stringify!(__pad5)
1394        )
1395    );
1396    assert_eq!(
1397        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._mode as *const _ as usize },
1398        192usize,
1399        concat!(
1400            "Offset of field: ",
1401            stringify!(_IO_FILE),
1402            "::",
1403            stringify!(_mode)
1404        )
1405    );
1406    assert_eq!(
1407        unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._unused2 as *const _ as usize },
1408        196usize,
1409        concat!(
1410            "Offset of field: ",
1411            stringify!(_IO_FILE),
1412            "::",
1413            stringify!(_unused2)
1414        )
1415    );
1416}
1417pub type zend_long = i64;
1418pub type zend_ulong = u64;
1419pub type zend_off_t = i64;
1420pub type zend_bool = ::std::os::raw::c_uchar;
1421pub type zend_uchar = ::std::os::raw::c_uchar;
1422pub const ZEND_RESULT_CODE_SUCCESS: ZEND_RESULT_CODE = 0;
1423pub const ZEND_RESULT_CODE_FAILURE: ZEND_RESULT_CODE = -1;
1424pub type ZEND_RESULT_CODE = ::std::os::raw::c_int;
1425pub type zend_intptr_t = isize;
1426pub type zend_uintptr_t = usize;
1427pub type zend_object_handlers = _zend_object_handlers;
1428pub type zend_class_entry = _zend_class_entry;
1429pub type zend_function = _zend_function;
1430pub type zend_execute_data = _zend_execute_data;
1431pub type zval = _zval_struct;
1432pub type zend_refcounted = _zend_refcounted;
1433pub type zend_string = _zend_string;
1434pub type zend_array = _zend_array;
1435pub type zend_object = _zend_object;
1436pub type zend_resource = _zend_resource;
1437pub type zend_reference = _zend_reference;
1438pub type zend_ast_ref = _zend_ast_ref;
1439pub type zend_ast = _zend_ast;
1440pub type compare_func_t = ::std::option::Option<
1441    unsafe extern "C" fn(
1442        arg1: *const ::std::os::raw::c_void,
1443        arg2: *const ::std::os::raw::c_void,
1444    ) -> ::std::os::raw::c_int,
1445>;
1446pub type swap_func_t = ::std::option::Option<
1447    unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void, arg2: *mut ::std::os::raw::c_void),
1448>;
1449pub type sort_func_t = ::std::option::Option<
1450    unsafe extern "C" fn(
1451        arg1: *mut ::std::os::raw::c_void,
1452        arg2: size_t,
1453        arg3: size_t,
1454        arg4: compare_func_t,
1455        arg5: swap_func_t,
1456    ),
1457>;
1458pub type dtor_func_t = ::std::option::Option<unsafe extern "C" fn(pDest: *mut zval)>;
1459pub type copy_ctor_func_t = ::std::option::Option<unsafe extern "C" fn(pElement: *mut zval)>;
1460pub type zend_type = usize;
1461#[repr(C)]
1462#[derive(Copy, Clone)]
1463pub union _zend_value {
1464    pub lval: zend_long,
1465    pub dval: f64,
1466    pub counted: *mut zend_refcounted,
1467    pub str_: *mut zend_string,
1468    pub arr: *mut zend_array,
1469    pub obj: *mut zend_object,
1470    pub res: *mut zend_resource,
1471    pub ref_: *mut zend_reference,
1472    pub ast: *mut zend_ast_ref,
1473    pub zv: *mut zval,
1474    pub ptr: *mut ::std::os::raw::c_void,
1475    pub ce: *mut zend_class_entry,
1476    pub func: *mut zend_function,
1477    pub ww: _zend_value__bindgen_ty_1,
1478    _bindgen_union_align: u64,
1479}
1480#[repr(C)]
1481#[derive(Debug, Copy, Clone)]
1482pub struct _zend_value__bindgen_ty_1 {
1483    pub w1: u32,
1484    pub w2: u32,
1485}
1486#[test]
1487fn bindgen_test_layout__zend_value__bindgen_ty_1() {
1488    assert_eq!(
1489        ::std::mem::size_of::<_zend_value__bindgen_ty_1>(),
1490        8usize,
1491        concat!("Size of: ", stringify!(_zend_value__bindgen_ty_1))
1492    );
1493    assert_eq!(
1494        ::std::mem::align_of::<_zend_value__bindgen_ty_1>(),
1495        4usize,
1496        concat!("Alignment of ", stringify!(_zend_value__bindgen_ty_1))
1497    );
1498    assert_eq!(
1499        unsafe { &(*(::std::ptr::null::<_zend_value__bindgen_ty_1>())).w1 as *const _ as usize },
1500        0usize,
1501        concat!(
1502            "Offset of field: ",
1503            stringify!(_zend_value__bindgen_ty_1),
1504            "::",
1505            stringify!(w1)
1506        )
1507    );
1508    assert_eq!(
1509        unsafe { &(*(::std::ptr::null::<_zend_value__bindgen_ty_1>())).w2 as *const _ as usize },
1510        4usize,
1511        concat!(
1512            "Offset of field: ",
1513            stringify!(_zend_value__bindgen_ty_1),
1514            "::",
1515            stringify!(w2)
1516        )
1517    );
1518}
1519#[test]
1520fn bindgen_test_layout__zend_value() {
1521    assert_eq!(
1522        ::std::mem::size_of::<_zend_value>(),
1523        8usize,
1524        concat!("Size of: ", stringify!(_zend_value))
1525    );
1526    assert_eq!(
1527        ::std::mem::align_of::<_zend_value>(),
1528        8usize,
1529        concat!("Alignment of ", stringify!(_zend_value))
1530    );
1531    assert_eq!(
1532        unsafe { &(*(::std::ptr::null::<_zend_value>())).lval as *const _ as usize },
1533        0usize,
1534        concat!(
1535            "Offset of field: ",
1536            stringify!(_zend_value),
1537            "::",
1538            stringify!(lval)
1539        )
1540    );
1541    assert_eq!(
1542        unsafe { &(*(::std::ptr::null::<_zend_value>())).dval as *const _ as usize },
1543        0usize,
1544        concat!(
1545            "Offset of field: ",
1546            stringify!(_zend_value),
1547            "::",
1548            stringify!(dval)
1549        )
1550    );
1551    assert_eq!(
1552        unsafe { &(*(::std::ptr::null::<_zend_value>())).counted as *const _ as usize },
1553        0usize,
1554        concat!(
1555            "Offset of field: ",
1556            stringify!(_zend_value),
1557            "::",
1558            stringify!(counted)
1559        )
1560    );
1561    assert_eq!(
1562        unsafe { &(*(::std::ptr::null::<_zend_value>())).str_ as *const _ as usize },
1563        0usize,
1564        concat!(
1565            "Offset of field: ",
1566            stringify!(_zend_value),
1567            "::",
1568            stringify!(str_)
1569        )
1570    );
1571    assert_eq!(
1572        unsafe { &(*(::std::ptr::null::<_zend_value>())).arr as *const _ as usize },
1573        0usize,
1574        concat!(
1575            "Offset of field: ",
1576            stringify!(_zend_value),
1577            "::",
1578            stringify!(arr)
1579        )
1580    );
1581    assert_eq!(
1582        unsafe { &(*(::std::ptr::null::<_zend_value>())).obj as *const _ as usize },
1583        0usize,
1584        concat!(
1585            "Offset of field: ",
1586            stringify!(_zend_value),
1587            "::",
1588            stringify!(obj)
1589        )
1590    );
1591    assert_eq!(
1592        unsafe { &(*(::std::ptr::null::<_zend_value>())).res as *const _ as usize },
1593        0usize,
1594        concat!(
1595            "Offset of field: ",
1596            stringify!(_zend_value),
1597            "::",
1598            stringify!(res)
1599        )
1600    );
1601    assert_eq!(
1602        unsafe { &(*(::std::ptr::null::<_zend_value>())).ref_ as *const _ as usize },
1603        0usize,
1604        concat!(
1605            "Offset of field: ",
1606            stringify!(_zend_value),
1607            "::",
1608            stringify!(ref_)
1609        )
1610    );
1611    assert_eq!(
1612        unsafe { &(*(::std::ptr::null::<_zend_value>())).ast as *const _ as usize },
1613        0usize,
1614        concat!(
1615            "Offset of field: ",
1616            stringify!(_zend_value),
1617            "::",
1618            stringify!(ast)
1619        )
1620    );
1621    assert_eq!(
1622        unsafe { &(*(::std::ptr::null::<_zend_value>())).zv as *const _ as usize },
1623        0usize,
1624        concat!(
1625            "Offset of field: ",
1626            stringify!(_zend_value),
1627            "::",
1628            stringify!(zv)
1629        )
1630    );
1631    assert_eq!(
1632        unsafe { &(*(::std::ptr::null::<_zend_value>())).ptr as *const _ as usize },
1633        0usize,
1634        concat!(
1635            "Offset of field: ",
1636            stringify!(_zend_value),
1637            "::",
1638            stringify!(ptr)
1639        )
1640    );
1641    assert_eq!(
1642        unsafe { &(*(::std::ptr::null::<_zend_value>())).ce as *const _ as usize },
1643        0usize,
1644        concat!(
1645            "Offset of field: ",
1646            stringify!(_zend_value),
1647            "::",
1648            stringify!(ce)
1649        )
1650    );
1651    assert_eq!(
1652        unsafe { &(*(::std::ptr::null::<_zend_value>())).func as *const _ as usize },
1653        0usize,
1654        concat!(
1655            "Offset of field: ",
1656            stringify!(_zend_value),
1657            "::",
1658            stringify!(func)
1659        )
1660    );
1661    assert_eq!(
1662        unsafe { &(*(::std::ptr::null::<_zend_value>())).ww as *const _ as usize },
1663        0usize,
1664        concat!(
1665            "Offset of field: ",
1666            stringify!(_zend_value),
1667            "::",
1668            stringify!(ww)
1669        )
1670    );
1671}
1672pub type zend_value = _zend_value;
1673#[repr(C)]
1674#[derive(Copy, Clone)]
1675pub struct _zval_struct {
1676    pub value: zend_value,
1677    pub u1: _zval_struct__bindgen_ty_1,
1678    pub u2: _zval_struct__bindgen_ty_2,
1679}
1680#[repr(C)]
1681#[derive(Copy, Clone)]
1682pub union _zval_struct__bindgen_ty_1 {
1683    pub v: _zval_struct__bindgen_ty_1__bindgen_ty_1,
1684    pub type_info: u32,
1685    _bindgen_union_align: u32,
1686}
1687#[repr(C)]
1688#[derive(Copy, Clone)]
1689pub struct _zval_struct__bindgen_ty_1__bindgen_ty_1 {
1690    pub type_: zend_uchar,
1691    pub type_flags: zend_uchar,
1692    pub u: _zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1,
1693}
1694#[repr(C)]
1695#[derive(Copy, Clone)]
1696pub union _zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 {
1697    pub call_info: u16,
1698    pub extra: u16,
1699    _bindgen_union_align: u16,
1700}
1701#[test]
1702fn bindgen_test_layout__zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1() {
1703    assert_eq!(
1704        ::std::mem::size_of::<_zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1>(),
1705        2usize,
1706        concat!(
1707            "Size of: ",
1708            stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1)
1709        )
1710    );
1711    assert_eq!(
1712        ::std::mem::align_of::<_zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1>(),
1713        2usize,
1714        concat!(
1715            "Alignment of ",
1716            stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1)
1717        )
1718    );
1719    assert_eq!(
1720        unsafe {
1721            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1>()))
1722                .call_info as *const _ as usize
1723        },
1724        0usize,
1725        concat!(
1726            "Offset of field: ",
1727            stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1),
1728            "::",
1729            stringify!(call_info)
1730        )
1731    );
1732    assert_eq!(
1733        unsafe {
1734            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1>())).extra
1735                as *const _ as usize
1736        },
1737        0usize,
1738        concat!(
1739            "Offset of field: ",
1740            stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1),
1741            "::",
1742            stringify!(extra)
1743        )
1744    );
1745}
1746#[test]
1747fn bindgen_test_layout__zval_struct__bindgen_ty_1__bindgen_ty_1() {
1748    assert_eq!(
1749        ::std::mem::size_of::<_zval_struct__bindgen_ty_1__bindgen_ty_1>(),
1750        4usize,
1751        concat!(
1752            "Size of: ",
1753            stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1)
1754        )
1755    );
1756    assert_eq!(
1757        ::std::mem::align_of::<_zval_struct__bindgen_ty_1__bindgen_ty_1>(),
1758        2usize,
1759        concat!(
1760            "Alignment of ",
1761            stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1)
1762        )
1763    );
1764    assert_eq!(
1765        unsafe {
1766            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_1__bindgen_ty_1>())).type_ as *const _
1767                as usize
1768        },
1769        0usize,
1770        concat!(
1771            "Offset of field: ",
1772            stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1),
1773            "::",
1774            stringify!(type_)
1775        )
1776    );
1777    assert_eq!(
1778        unsafe {
1779            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_1__bindgen_ty_1>())).type_flags
1780                as *const _ as usize
1781        },
1782        1usize,
1783        concat!(
1784            "Offset of field: ",
1785            stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1),
1786            "::",
1787            stringify!(type_flags)
1788        )
1789    );
1790    assert_eq!(
1791        unsafe {
1792            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_1__bindgen_ty_1>())).u as *const _
1793                as usize
1794        },
1795        2usize,
1796        concat!(
1797            "Offset of field: ",
1798            stringify!(_zval_struct__bindgen_ty_1__bindgen_ty_1),
1799            "::",
1800            stringify!(u)
1801        )
1802    );
1803}
1804#[test]
1805fn bindgen_test_layout__zval_struct__bindgen_ty_1() {
1806    assert_eq!(
1807        ::std::mem::size_of::<_zval_struct__bindgen_ty_1>(),
1808        4usize,
1809        concat!("Size of: ", stringify!(_zval_struct__bindgen_ty_1))
1810    );
1811    assert_eq!(
1812        ::std::mem::align_of::<_zval_struct__bindgen_ty_1>(),
1813        4usize,
1814        concat!("Alignment of ", stringify!(_zval_struct__bindgen_ty_1))
1815    );
1816    assert_eq!(
1817        unsafe { &(*(::std::ptr::null::<_zval_struct__bindgen_ty_1>())).v as *const _ as usize },
1818        0usize,
1819        concat!(
1820            "Offset of field: ",
1821            stringify!(_zval_struct__bindgen_ty_1),
1822            "::",
1823            stringify!(v)
1824        )
1825    );
1826    assert_eq!(
1827        unsafe {
1828            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_1>())).type_info as *const _ as usize
1829        },
1830        0usize,
1831        concat!(
1832            "Offset of field: ",
1833            stringify!(_zval_struct__bindgen_ty_1),
1834            "::",
1835            stringify!(type_info)
1836        )
1837    );
1838}
1839#[repr(C)]
1840#[derive(Copy, Clone)]
1841pub union _zval_struct__bindgen_ty_2 {
1842    pub next: u32,
1843    pub cache_slot: u32,
1844    pub opline_num: u32,
1845    pub lineno: u32,
1846    pub num_args: u32,
1847    pub fe_pos: u32,
1848    pub fe_iter_idx: u32,
1849    pub access_flags: u32,
1850    pub property_guard: u32,
1851    pub constant_flags: u32,
1852    pub extra: u32,
1853    _bindgen_union_align: u32,
1854}
1855#[test]
1856fn bindgen_test_layout__zval_struct__bindgen_ty_2() {
1857    assert_eq!(
1858        ::std::mem::size_of::<_zval_struct__bindgen_ty_2>(),
1859        4usize,
1860        concat!("Size of: ", stringify!(_zval_struct__bindgen_ty_2))
1861    );
1862    assert_eq!(
1863        ::std::mem::align_of::<_zval_struct__bindgen_ty_2>(),
1864        4usize,
1865        concat!("Alignment of ", stringify!(_zval_struct__bindgen_ty_2))
1866    );
1867    assert_eq!(
1868        unsafe { &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).next as *const _ as usize },
1869        0usize,
1870        concat!(
1871            "Offset of field: ",
1872            stringify!(_zval_struct__bindgen_ty_2),
1873            "::",
1874            stringify!(next)
1875        )
1876    );
1877    assert_eq!(
1878        unsafe {
1879            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).cache_slot as *const _ as usize
1880        },
1881        0usize,
1882        concat!(
1883            "Offset of field: ",
1884            stringify!(_zval_struct__bindgen_ty_2),
1885            "::",
1886            stringify!(cache_slot)
1887        )
1888    );
1889    assert_eq!(
1890        unsafe {
1891            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).opline_num as *const _ as usize
1892        },
1893        0usize,
1894        concat!(
1895            "Offset of field: ",
1896            stringify!(_zval_struct__bindgen_ty_2),
1897            "::",
1898            stringify!(opline_num)
1899        )
1900    );
1901    assert_eq!(
1902        unsafe {
1903            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).lineno as *const _ as usize
1904        },
1905        0usize,
1906        concat!(
1907            "Offset of field: ",
1908            stringify!(_zval_struct__bindgen_ty_2),
1909            "::",
1910            stringify!(lineno)
1911        )
1912    );
1913    assert_eq!(
1914        unsafe {
1915            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).num_args as *const _ as usize
1916        },
1917        0usize,
1918        concat!(
1919            "Offset of field: ",
1920            stringify!(_zval_struct__bindgen_ty_2),
1921            "::",
1922            stringify!(num_args)
1923        )
1924    );
1925    assert_eq!(
1926        unsafe {
1927            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).fe_pos as *const _ as usize
1928        },
1929        0usize,
1930        concat!(
1931            "Offset of field: ",
1932            stringify!(_zval_struct__bindgen_ty_2),
1933            "::",
1934            stringify!(fe_pos)
1935        )
1936    );
1937    assert_eq!(
1938        unsafe {
1939            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).fe_iter_idx as *const _ as usize
1940        },
1941        0usize,
1942        concat!(
1943            "Offset of field: ",
1944            stringify!(_zval_struct__bindgen_ty_2),
1945            "::",
1946            stringify!(fe_iter_idx)
1947        )
1948    );
1949    assert_eq!(
1950        unsafe {
1951            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).access_flags as *const _ as usize
1952        },
1953        0usize,
1954        concat!(
1955            "Offset of field: ",
1956            stringify!(_zval_struct__bindgen_ty_2),
1957            "::",
1958            stringify!(access_flags)
1959        )
1960    );
1961    assert_eq!(
1962        unsafe {
1963            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).property_guard as *const _
1964                as usize
1965        },
1966        0usize,
1967        concat!(
1968            "Offset of field: ",
1969            stringify!(_zval_struct__bindgen_ty_2),
1970            "::",
1971            stringify!(property_guard)
1972        )
1973    );
1974    assert_eq!(
1975        unsafe {
1976            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).constant_flags as *const _
1977                as usize
1978        },
1979        0usize,
1980        concat!(
1981            "Offset of field: ",
1982            stringify!(_zval_struct__bindgen_ty_2),
1983            "::",
1984            stringify!(constant_flags)
1985        )
1986    );
1987    assert_eq!(
1988        unsafe {
1989            &(*(::std::ptr::null::<_zval_struct__bindgen_ty_2>())).extra as *const _ as usize
1990        },
1991        0usize,
1992        concat!(
1993            "Offset of field: ",
1994            stringify!(_zval_struct__bindgen_ty_2),
1995            "::",
1996            stringify!(extra)
1997        )
1998    );
1999}
2000#[test]
2001fn bindgen_test_layout__zval_struct() {
2002    assert_eq!(
2003        ::std::mem::size_of::<_zval_struct>(),
2004        16usize,
2005        concat!("Size of: ", stringify!(_zval_struct))
2006    );
2007    assert_eq!(
2008        ::std::mem::align_of::<_zval_struct>(),
2009        8usize,
2010        concat!("Alignment of ", stringify!(_zval_struct))
2011    );
2012    assert_eq!(
2013        unsafe { &(*(::std::ptr::null::<_zval_struct>())).value as *const _ as usize },
2014        0usize,
2015        concat!(
2016            "Offset of field: ",
2017            stringify!(_zval_struct),
2018            "::",
2019            stringify!(value)
2020        )
2021    );
2022    assert_eq!(
2023        unsafe { &(*(::std::ptr::null::<_zval_struct>())).u1 as *const _ as usize },
2024        8usize,
2025        concat!(
2026            "Offset of field: ",
2027            stringify!(_zval_struct),
2028            "::",
2029            stringify!(u1)
2030        )
2031    );
2032    assert_eq!(
2033        unsafe { &(*(::std::ptr::null::<_zval_struct>())).u2 as *const _ as usize },
2034        12usize,
2035        concat!(
2036            "Offset of field: ",
2037            stringify!(_zval_struct),
2038            "::",
2039            stringify!(u2)
2040        )
2041    );
2042}
2043#[repr(C)]
2044#[derive(Copy, Clone)]
2045pub struct _zend_refcounted_h {
2046    pub refcount: u32,
2047    pub u: _zend_refcounted_h__bindgen_ty_1,
2048}
2049#[repr(C)]
2050#[derive(Copy, Clone)]
2051pub union _zend_refcounted_h__bindgen_ty_1 {
2052    pub type_info: u32,
2053    _bindgen_union_align: u32,
2054}
2055#[test]
2056fn bindgen_test_layout__zend_refcounted_h__bindgen_ty_1() {
2057    assert_eq!(
2058        ::std::mem::size_of::<_zend_refcounted_h__bindgen_ty_1>(),
2059        4usize,
2060        concat!("Size of: ", stringify!(_zend_refcounted_h__bindgen_ty_1))
2061    );
2062    assert_eq!(
2063        ::std::mem::align_of::<_zend_refcounted_h__bindgen_ty_1>(),
2064        4usize,
2065        concat!(
2066            "Alignment of ",
2067            stringify!(_zend_refcounted_h__bindgen_ty_1)
2068        )
2069    );
2070    assert_eq!(
2071        unsafe {
2072            &(*(::std::ptr::null::<_zend_refcounted_h__bindgen_ty_1>())).type_info as *const _
2073                as usize
2074        },
2075        0usize,
2076        concat!(
2077            "Offset of field: ",
2078            stringify!(_zend_refcounted_h__bindgen_ty_1),
2079            "::",
2080            stringify!(type_info)
2081        )
2082    );
2083}
2084#[test]
2085fn bindgen_test_layout__zend_refcounted_h() {
2086    assert_eq!(
2087        ::std::mem::size_of::<_zend_refcounted_h>(),
2088        8usize,
2089        concat!("Size of: ", stringify!(_zend_refcounted_h))
2090    );
2091    assert_eq!(
2092        ::std::mem::align_of::<_zend_refcounted_h>(),
2093        4usize,
2094        concat!("Alignment of ", stringify!(_zend_refcounted_h))
2095    );
2096    assert_eq!(
2097        unsafe { &(*(::std::ptr::null::<_zend_refcounted_h>())).refcount as *const _ as usize },
2098        0usize,
2099        concat!(
2100            "Offset of field: ",
2101            stringify!(_zend_refcounted_h),
2102            "::",
2103            stringify!(refcount)
2104        )
2105    );
2106    assert_eq!(
2107        unsafe { &(*(::std::ptr::null::<_zend_refcounted_h>())).u as *const _ as usize },
2108        4usize,
2109        concat!(
2110            "Offset of field: ",
2111            stringify!(_zend_refcounted_h),
2112            "::",
2113            stringify!(u)
2114        )
2115    );
2116}
2117pub type zend_refcounted_h = _zend_refcounted_h;
2118#[repr(C)]
2119#[derive(Copy, Clone)]
2120pub struct _zend_refcounted {
2121    pub gc: zend_refcounted_h,
2122}
2123#[test]
2124fn bindgen_test_layout__zend_refcounted() {
2125    assert_eq!(
2126        ::std::mem::size_of::<_zend_refcounted>(),
2127        8usize,
2128        concat!("Size of: ", stringify!(_zend_refcounted))
2129    );
2130    assert_eq!(
2131        ::std::mem::align_of::<_zend_refcounted>(),
2132        4usize,
2133        concat!("Alignment of ", stringify!(_zend_refcounted))
2134    );
2135    assert_eq!(
2136        unsafe { &(*(::std::ptr::null::<_zend_refcounted>())).gc as *const _ as usize },
2137        0usize,
2138        concat!(
2139            "Offset of field: ",
2140            stringify!(_zend_refcounted),
2141            "::",
2142            stringify!(gc)
2143        )
2144    );
2145}
2146#[repr(C)]
2147#[derive(Copy, Clone)]
2148pub struct _zend_string {
2149    pub gc: zend_refcounted_h,
2150    pub h: zend_ulong,
2151    pub len: size_t,
2152    pub val: [::std::os::raw::c_char; 1usize],
2153}
2154#[test]
2155fn bindgen_test_layout__zend_string() {
2156    assert_eq!(
2157        ::std::mem::size_of::<_zend_string>(),
2158        32usize,
2159        concat!("Size of: ", stringify!(_zend_string))
2160    );
2161    assert_eq!(
2162        ::std::mem::align_of::<_zend_string>(),
2163        8usize,
2164        concat!("Alignment of ", stringify!(_zend_string))
2165    );
2166    assert_eq!(
2167        unsafe { &(*(::std::ptr::null::<_zend_string>())).gc as *const _ as usize },
2168        0usize,
2169        concat!(
2170            "Offset of field: ",
2171            stringify!(_zend_string),
2172            "::",
2173            stringify!(gc)
2174        )
2175    );
2176    assert_eq!(
2177        unsafe { &(*(::std::ptr::null::<_zend_string>())).h as *const _ as usize },
2178        8usize,
2179        concat!(
2180            "Offset of field: ",
2181            stringify!(_zend_string),
2182            "::",
2183            stringify!(h)
2184        )
2185    );
2186    assert_eq!(
2187        unsafe { &(*(::std::ptr::null::<_zend_string>())).len as *const _ as usize },
2188        16usize,
2189        concat!(
2190            "Offset of field: ",
2191            stringify!(_zend_string),
2192            "::",
2193            stringify!(len)
2194        )
2195    );
2196    assert_eq!(
2197        unsafe { &(*(::std::ptr::null::<_zend_string>())).val as *const _ as usize },
2198        24usize,
2199        concat!(
2200            "Offset of field: ",
2201            stringify!(_zend_string),
2202            "::",
2203            stringify!(val)
2204        )
2205    );
2206}
2207#[repr(C)]
2208#[derive(Copy, Clone)]
2209pub struct _Bucket {
2210    pub val: zval,
2211    pub h: zend_ulong,
2212    pub key: *mut zend_string,
2213}
2214#[test]
2215fn bindgen_test_layout__Bucket() {
2216    assert_eq!(
2217        ::std::mem::size_of::<_Bucket>(),
2218        32usize,
2219        concat!("Size of: ", stringify!(_Bucket))
2220    );
2221    assert_eq!(
2222        ::std::mem::align_of::<_Bucket>(),
2223        8usize,
2224        concat!("Alignment of ", stringify!(_Bucket))
2225    );
2226    assert_eq!(
2227        unsafe { &(*(::std::ptr::null::<_Bucket>())).val as *const _ as usize },
2228        0usize,
2229        concat!(
2230            "Offset of field: ",
2231            stringify!(_Bucket),
2232            "::",
2233            stringify!(val)
2234        )
2235    );
2236    assert_eq!(
2237        unsafe { &(*(::std::ptr::null::<_Bucket>())).h as *const _ as usize },
2238        16usize,
2239        concat!(
2240            "Offset of field: ",
2241            stringify!(_Bucket),
2242            "::",
2243            stringify!(h)
2244        )
2245    );
2246    assert_eq!(
2247        unsafe { &(*(::std::ptr::null::<_Bucket>())).key as *const _ as usize },
2248        24usize,
2249        concat!(
2250            "Offset of field: ",
2251            stringify!(_Bucket),
2252            "::",
2253            stringify!(key)
2254        )
2255    );
2256}
2257pub type Bucket = _Bucket;
2258pub type HashTable = _zend_array;
2259#[repr(C)]
2260#[derive(Copy, Clone)]
2261pub struct _zend_array {
2262    pub gc: zend_refcounted_h,
2263    pub u: _zend_array__bindgen_ty_1,
2264    pub nTableMask: u32,
2265    pub arData: *mut Bucket,
2266    pub nNumUsed: u32,
2267    pub nNumOfElements: u32,
2268    pub nTableSize: u32,
2269    pub nInternalPointer: u32,
2270    pub nNextFreeElement: zend_long,
2271    pub pDestructor: dtor_func_t,
2272}
2273#[repr(C)]
2274#[derive(Copy, Clone)]
2275pub union _zend_array__bindgen_ty_1 {
2276    pub v: _zend_array__bindgen_ty_1__bindgen_ty_1,
2277    pub flags: u32,
2278    _bindgen_union_align: u32,
2279}
2280#[repr(C)]
2281#[derive(Debug, Copy, Clone)]
2282pub struct _zend_array__bindgen_ty_1__bindgen_ty_1 {
2283    pub flags: zend_uchar,
2284    pub _unused: zend_uchar,
2285    pub nIteratorsCount: zend_uchar,
2286    pub _unused2: zend_uchar,
2287}
2288#[test]
2289fn bindgen_test_layout__zend_array__bindgen_ty_1__bindgen_ty_1() {
2290    assert_eq!(
2291        ::std::mem::size_of::<_zend_array__bindgen_ty_1__bindgen_ty_1>(),
2292        4usize,
2293        concat!(
2294            "Size of: ",
2295            stringify!(_zend_array__bindgen_ty_1__bindgen_ty_1)
2296        )
2297    );
2298    assert_eq!(
2299        ::std::mem::align_of::<_zend_array__bindgen_ty_1__bindgen_ty_1>(),
2300        1usize,
2301        concat!(
2302            "Alignment of ",
2303            stringify!(_zend_array__bindgen_ty_1__bindgen_ty_1)
2304        )
2305    );
2306    assert_eq!(
2307        unsafe {
2308            &(*(::std::ptr::null::<_zend_array__bindgen_ty_1__bindgen_ty_1>())).flags as *const _
2309                as usize
2310        },
2311        0usize,
2312        concat!(
2313            "Offset of field: ",
2314            stringify!(_zend_array__bindgen_ty_1__bindgen_ty_1),
2315            "::",
2316            stringify!(flags)
2317        )
2318    );
2319    assert_eq!(
2320        unsafe {
2321            &(*(::std::ptr::null::<_zend_array__bindgen_ty_1__bindgen_ty_1>()))._unused as *const _
2322                as usize
2323        },
2324        1usize,
2325        concat!(
2326            "Offset of field: ",
2327            stringify!(_zend_array__bindgen_ty_1__bindgen_ty_1),
2328            "::",
2329            stringify!(_unused)
2330        )
2331    );
2332    assert_eq!(
2333        unsafe {
2334            &(*(::std::ptr::null::<_zend_array__bindgen_ty_1__bindgen_ty_1>())).nIteratorsCount
2335                as *const _ as usize
2336        },
2337        2usize,
2338        concat!(
2339            "Offset of field: ",
2340            stringify!(_zend_array__bindgen_ty_1__bindgen_ty_1),
2341            "::",
2342            stringify!(nIteratorsCount)
2343        )
2344    );
2345    assert_eq!(
2346        unsafe {
2347            &(*(::std::ptr::null::<_zend_array__bindgen_ty_1__bindgen_ty_1>()))._unused2 as *const _
2348                as usize
2349        },
2350        3usize,
2351        concat!(
2352            "Offset of field: ",
2353            stringify!(_zend_array__bindgen_ty_1__bindgen_ty_1),
2354            "::",
2355            stringify!(_unused2)
2356        )
2357    );
2358}
2359#[test]
2360fn bindgen_test_layout__zend_array__bindgen_ty_1() {
2361    assert_eq!(
2362        ::std::mem::size_of::<_zend_array__bindgen_ty_1>(),
2363        4usize,
2364        concat!("Size of: ", stringify!(_zend_array__bindgen_ty_1))
2365    );
2366    assert_eq!(
2367        ::std::mem::align_of::<_zend_array__bindgen_ty_1>(),
2368        4usize,
2369        concat!("Alignment of ", stringify!(_zend_array__bindgen_ty_1))
2370    );
2371    assert_eq!(
2372        unsafe { &(*(::std::ptr::null::<_zend_array__bindgen_ty_1>())).v as *const _ as usize },
2373        0usize,
2374        concat!(
2375            "Offset of field: ",
2376            stringify!(_zend_array__bindgen_ty_1),
2377            "::",
2378            stringify!(v)
2379        )
2380    );
2381    assert_eq!(
2382        unsafe { &(*(::std::ptr::null::<_zend_array__bindgen_ty_1>())).flags as *const _ as usize },
2383        0usize,
2384        concat!(
2385            "Offset of field: ",
2386            stringify!(_zend_array__bindgen_ty_1),
2387            "::",
2388            stringify!(flags)
2389        )
2390    );
2391}
2392#[test]
2393fn bindgen_test_layout__zend_array() {
2394    assert_eq!(
2395        ::std::mem::size_of::<_zend_array>(),
2396        56usize,
2397        concat!("Size of: ", stringify!(_zend_array))
2398    );
2399    assert_eq!(
2400        ::std::mem::align_of::<_zend_array>(),
2401        8usize,
2402        concat!("Alignment of ", stringify!(_zend_array))
2403    );
2404    assert_eq!(
2405        unsafe { &(*(::std::ptr::null::<_zend_array>())).gc as *const _ as usize },
2406        0usize,
2407        concat!(
2408            "Offset of field: ",
2409            stringify!(_zend_array),
2410            "::",
2411            stringify!(gc)
2412        )
2413    );
2414    assert_eq!(
2415        unsafe { &(*(::std::ptr::null::<_zend_array>())).u as *const _ as usize },
2416        8usize,
2417        concat!(
2418            "Offset of field: ",
2419            stringify!(_zend_array),
2420            "::",
2421            stringify!(u)
2422        )
2423    );
2424    assert_eq!(
2425        unsafe { &(*(::std::ptr::null::<_zend_array>())).nTableMask as *const _ as usize },
2426        12usize,
2427        concat!(
2428            "Offset of field: ",
2429            stringify!(_zend_array),
2430            "::",
2431            stringify!(nTableMask)
2432        )
2433    );
2434    assert_eq!(
2435        unsafe { &(*(::std::ptr::null::<_zend_array>())).arData as *const _ as usize },
2436        16usize,
2437        concat!(
2438            "Offset of field: ",
2439            stringify!(_zend_array),
2440            "::",
2441            stringify!(arData)
2442        )
2443    );
2444    assert_eq!(
2445        unsafe { &(*(::std::ptr::null::<_zend_array>())).nNumUsed as *const _ as usize },
2446        24usize,
2447        concat!(
2448            "Offset of field: ",
2449            stringify!(_zend_array),
2450            "::",
2451            stringify!(nNumUsed)
2452        )
2453    );
2454    assert_eq!(
2455        unsafe { &(*(::std::ptr::null::<_zend_array>())).nNumOfElements as *const _ as usize },
2456        28usize,
2457        concat!(
2458            "Offset of field: ",
2459            stringify!(_zend_array),
2460            "::",
2461            stringify!(nNumOfElements)
2462        )
2463    );
2464    assert_eq!(
2465        unsafe { &(*(::std::ptr::null::<_zend_array>())).nTableSize as *const _ as usize },
2466        32usize,
2467        concat!(
2468            "Offset of field: ",
2469            stringify!(_zend_array),
2470            "::",
2471            stringify!(nTableSize)
2472        )
2473    );
2474    assert_eq!(
2475        unsafe { &(*(::std::ptr::null::<_zend_array>())).nInternalPointer as *const _ as usize },
2476        36usize,
2477        concat!(
2478            "Offset of field: ",
2479            stringify!(_zend_array),
2480            "::",
2481            stringify!(nInternalPointer)
2482        )
2483    );
2484    assert_eq!(
2485        unsafe { &(*(::std::ptr::null::<_zend_array>())).nNextFreeElement as *const _ as usize },
2486        40usize,
2487        concat!(
2488            "Offset of field: ",
2489            stringify!(_zend_array),
2490            "::",
2491            stringify!(nNextFreeElement)
2492        )
2493    );
2494    assert_eq!(
2495        unsafe { &(*(::std::ptr::null::<_zend_array>())).pDestructor as *const _ as usize },
2496        48usize,
2497        concat!(
2498            "Offset of field: ",
2499            stringify!(_zend_array),
2500            "::",
2501            stringify!(pDestructor)
2502        )
2503    );
2504}
2505pub type HashPosition = u32;
2506#[repr(C)]
2507#[derive(Debug, Copy, Clone)]
2508pub struct _HashTableIterator {
2509    pub ht: *mut HashTable,
2510    pub pos: HashPosition,
2511}
2512#[test]
2513fn bindgen_test_layout__HashTableIterator() {
2514    assert_eq!(
2515        ::std::mem::size_of::<_HashTableIterator>(),
2516        16usize,
2517        concat!("Size of: ", stringify!(_HashTableIterator))
2518    );
2519    assert_eq!(
2520        ::std::mem::align_of::<_HashTableIterator>(),
2521        8usize,
2522        concat!("Alignment of ", stringify!(_HashTableIterator))
2523    );
2524    assert_eq!(
2525        unsafe { &(*(::std::ptr::null::<_HashTableIterator>())).ht as *const _ as usize },
2526        0usize,
2527        concat!(
2528            "Offset of field: ",
2529            stringify!(_HashTableIterator),
2530            "::",
2531            stringify!(ht)
2532        )
2533    );
2534    assert_eq!(
2535        unsafe { &(*(::std::ptr::null::<_HashTableIterator>())).pos as *const _ as usize },
2536        8usize,
2537        concat!(
2538            "Offset of field: ",
2539            stringify!(_HashTableIterator),
2540            "::",
2541            stringify!(pos)
2542        )
2543    );
2544}
2545pub type HashTableIterator = _HashTableIterator;
2546#[repr(C)]
2547#[derive(Copy, Clone)]
2548pub struct _zend_object {
2549    pub gc: zend_refcounted_h,
2550    pub handle: u32,
2551    pub ce: *mut zend_class_entry,
2552    pub handlers: *const zend_object_handlers,
2553    pub properties: *mut HashTable,
2554    pub properties_table: [zval; 1usize],
2555}
2556#[test]
2557fn bindgen_test_layout__zend_object() {
2558    assert_eq!(
2559        ::std::mem::size_of::<_zend_object>(),
2560        56usize,
2561        concat!("Size of: ", stringify!(_zend_object))
2562    );
2563    assert_eq!(
2564        ::std::mem::align_of::<_zend_object>(),
2565        8usize,
2566        concat!("Alignment of ", stringify!(_zend_object))
2567    );
2568    assert_eq!(
2569        unsafe { &(*(::std::ptr::null::<_zend_object>())).gc as *const _ as usize },
2570        0usize,
2571        concat!(
2572            "Offset of field: ",
2573            stringify!(_zend_object),
2574            "::",
2575            stringify!(gc)
2576        )
2577    );
2578    assert_eq!(
2579        unsafe { &(*(::std::ptr::null::<_zend_object>())).handle as *const _ as usize },
2580        8usize,
2581        concat!(
2582            "Offset of field: ",
2583            stringify!(_zend_object),
2584            "::",
2585            stringify!(handle)
2586        )
2587    );
2588    assert_eq!(
2589        unsafe { &(*(::std::ptr::null::<_zend_object>())).ce as *const _ as usize },
2590        16usize,
2591        concat!(
2592            "Offset of field: ",
2593            stringify!(_zend_object),
2594            "::",
2595            stringify!(ce)
2596        )
2597    );
2598    assert_eq!(
2599        unsafe { &(*(::std::ptr::null::<_zend_object>())).handlers as *const _ as usize },
2600        24usize,
2601        concat!(
2602            "Offset of field: ",
2603            stringify!(_zend_object),
2604            "::",
2605            stringify!(handlers)
2606        )
2607    );
2608    assert_eq!(
2609        unsafe { &(*(::std::ptr::null::<_zend_object>())).properties as *const _ as usize },
2610        32usize,
2611        concat!(
2612            "Offset of field: ",
2613            stringify!(_zend_object),
2614            "::",
2615            stringify!(properties)
2616        )
2617    );
2618    assert_eq!(
2619        unsafe { &(*(::std::ptr::null::<_zend_object>())).properties_table as *const _ as usize },
2620        40usize,
2621        concat!(
2622            "Offset of field: ",
2623            stringify!(_zend_object),
2624            "::",
2625            stringify!(properties_table)
2626        )
2627    );
2628}
2629#[repr(C)]
2630#[derive(Copy, Clone)]
2631pub struct _zend_resource {
2632    pub gc: zend_refcounted_h,
2633    pub handle: ::std::os::raw::c_int,
2634    pub type_: ::std::os::raw::c_int,
2635    pub ptr: *mut ::std::os::raw::c_void,
2636}
2637#[test]
2638fn bindgen_test_layout__zend_resource() {
2639    assert_eq!(
2640        ::std::mem::size_of::<_zend_resource>(),
2641        24usize,
2642        concat!("Size of: ", stringify!(_zend_resource))
2643    );
2644    assert_eq!(
2645        ::std::mem::align_of::<_zend_resource>(),
2646        8usize,
2647        concat!("Alignment of ", stringify!(_zend_resource))
2648    );
2649    assert_eq!(
2650        unsafe { &(*(::std::ptr::null::<_zend_resource>())).gc as *const _ as usize },
2651        0usize,
2652        concat!(
2653            "Offset of field: ",
2654            stringify!(_zend_resource),
2655            "::",
2656            stringify!(gc)
2657        )
2658    );
2659    assert_eq!(
2660        unsafe { &(*(::std::ptr::null::<_zend_resource>())).handle as *const _ as usize },
2661        8usize,
2662        concat!(
2663            "Offset of field: ",
2664            stringify!(_zend_resource),
2665            "::",
2666            stringify!(handle)
2667        )
2668    );
2669    assert_eq!(
2670        unsafe { &(*(::std::ptr::null::<_zend_resource>())).type_ as *const _ as usize },
2671        12usize,
2672        concat!(
2673            "Offset of field: ",
2674            stringify!(_zend_resource),
2675            "::",
2676            stringify!(type_)
2677        )
2678    );
2679    assert_eq!(
2680        unsafe { &(*(::std::ptr::null::<_zend_resource>())).ptr as *const _ as usize },
2681        16usize,
2682        concat!(
2683            "Offset of field: ",
2684            stringify!(_zend_resource),
2685            "::",
2686            stringify!(ptr)
2687        )
2688    );
2689}
2690#[repr(C)]
2691#[derive(Copy, Clone)]
2692pub struct _zend_reference {
2693    pub gc: zend_refcounted_h,
2694    pub val: zval,
2695}
2696#[test]
2697fn bindgen_test_layout__zend_reference() {
2698    assert_eq!(
2699        ::std::mem::size_of::<_zend_reference>(),
2700        24usize,
2701        concat!("Size of: ", stringify!(_zend_reference))
2702    );
2703    assert_eq!(
2704        ::std::mem::align_of::<_zend_reference>(),
2705        8usize,
2706        concat!("Alignment of ", stringify!(_zend_reference))
2707    );
2708    assert_eq!(
2709        unsafe { &(*(::std::ptr::null::<_zend_reference>())).gc as *const _ as usize },
2710        0usize,
2711        concat!(
2712            "Offset of field: ",
2713            stringify!(_zend_reference),
2714            "::",
2715            stringify!(gc)
2716        )
2717    );
2718    assert_eq!(
2719        unsafe { &(*(::std::ptr::null::<_zend_reference>())).val as *const _ as usize },
2720        8usize,
2721        concat!(
2722            "Offset of field: ",
2723            stringify!(_zend_reference),
2724            "::",
2725            stringify!(val)
2726        )
2727    );
2728}
2729#[repr(C)]
2730#[derive(Copy, Clone)]
2731pub struct _zend_ast_ref {
2732    pub gc: zend_refcounted_h,
2733}
2734#[test]
2735fn bindgen_test_layout__zend_ast_ref() {
2736    assert_eq!(
2737        ::std::mem::size_of::<_zend_ast_ref>(),
2738        8usize,
2739        concat!("Size of: ", stringify!(_zend_ast_ref))
2740    );
2741    assert_eq!(
2742        ::std::mem::align_of::<_zend_ast_ref>(),
2743        4usize,
2744        concat!("Alignment of ", stringify!(_zend_ast_ref))
2745    );
2746    assert_eq!(
2747        unsafe { &(*(::std::ptr::null::<_zend_ast_ref>())).gc as *const _ as usize },
2748        0usize,
2749        concat!(
2750            "Offset of field: ",
2751            stringify!(_zend_ast_ref),
2752            "::",
2753            stringify!(gc)
2754        )
2755    );
2756}
2757#[repr(C)]
2758#[derive(Debug, Copy, Clone)]
2759pub struct _zend_leak_info {
2760    pub addr: *mut ::std::os::raw::c_void,
2761    pub size: size_t,
2762    pub filename: *const ::std::os::raw::c_char,
2763    pub orig_filename: *const ::std::os::raw::c_char,
2764    pub lineno: u32,
2765    pub orig_lineno: u32,
2766}
2767#[test]
2768fn bindgen_test_layout__zend_leak_info() {
2769    assert_eq!(
2770        ::std::mem::size_of::<_zend_leak_info>(),
2771        40usize,
2772        concat!("Size of: ", stringify!(_zend_leak_info))
2773    );
2774    assert_eq!(
2775        ::std::mem::align_of::<_zend_leak_info>(),
2776        8usize,
2777        concat!("Alignment of ", stringify!(_zend_leak_info))
2778    );
2779    assert_eq!(
2780        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).addr as *const _ as usize },
2781        0usize,
2782        concat!(
2783            "Offset of field: ",
2784            stringify!(_zend_leak_info),
2785            "::",
2786            stringify!(addr)
2787        )
2788    );
2789    assert_eq!(
2790        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).size as *const _ as usize },
2791        8usize,
2792        concat!(
2793            "Offset of field: ",
2794            stringify!(_zend_leak_info),
2795            "::",
2796            stringify!(size)
2797        )
2798    );
2799    assert_eq!(
2800        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).filename as *const _ as usize },
2801        16usize,
2802        concat!(
2803            "Offset of field: ",
2804            stringify!(_zend_leak_info),
2805            "::",
2806            stringify!(filename)
2807        )
2808    );
2809    assert_eq!(
2810        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).orig_filename as *const _ as usize },
2811        24usize,
2812        concat!(
2813            "Offset of field: ",
2814            stringify!(_zend_leak_info),
2815            "::",
2816            stringify!(orig_filename)
2817        )
2818    );
2819    assert_eq!(
2820        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).lineno as *const _ as usize },
2821        32usize,
2822        concat!(
2823            "Offset of field: ",
2824            stringify!(_zend_leak_info),
2825            "::",
2826            stringify!(lineno)
2827        )
2828    );
2829    assert_eq!(
2830        unsafe { &(*(::std::ptr::null::<_zend_leak_info>())).orig_lineno as *const _ as usize },
2831        36usize,
2832        concat!(
2833            "Offset of field: ",
2834            stringify!(_zend_leak_info),
2835            "::",
2836            stringify!(orig_lineno)
2837        )
2838    );
2839}
2840pub type zend_leak_info = _zend_leak_info;
2841extern "C" {
2842    pub fn zend_strndup(
2843        s: *const ::std::os::raw::c_char,
2844        length: size_t,
2845    ) -> *mut ::std::os::raw::c_char;
2846}
2847extern "C" {
2848    pub fn _zend_mem_block_size(ptr: *mut ::std::os::raw::c_void) -> size_t;
2849}
2850extern "C" {
2851    pub fn zend_set_memory_limit(memory_limit: size_t) -> ::std::os::raw::c_int;
2852}
2853extern "C" {
2854    pub fn zend_memory_usage(real_usage: ::std::os::raw::c_int) -> size_t;
2855}
2856extern "C" {
2857    pub fn zend_memory_peak_usage(real_usage: ::std::os::raw::c_int) -> size_t;
2858}
2859#[repr(C)]
2860#[derive(Debug, Copy, Clone)]
2861pub struct _zend_mm_heap {
2862    _unused: [u8; 0],
2863}
2864pub type zend_mm_heap = _zend_mm_heap;
2865extern "C" {
2866    pub fn zend_mm_startup() -> *mut zend_mm_heap;
2867}
2868extern "C" {
2869    pub fn zend_mm_shutdown(
2870        heap: *mut zend_mm_heap,
2871        full_shutdown: ::std::os::raw::c_int,
2872        silent: ::std::os::raw::c_int,
2873    );
2874}
2875extern "C" {
2876    pub fn _zend_mm_alloc(heap: *mut zend_mm_heap, size: size_t) -> *mut ::std::os::raw::c_void;
2877}
2878extern "C" {
2879    pub fn _zend_mm_free(heap: *mut zend_mm_heap, p: *mut ::std::os::raw::c_void);
2880}
2881extern "C" {
2882    pub fn _zend_mm_realloc(
2883        heap: *mut zend_mm_heap,
2884        p: *mut ::std::os::raw::c_void,
2885        size: size_t,
2886    ) -> *mut ::std::os::raw::c_void;
2887}
2888extern "C" {
2889    pub fn _zend_mm_realloc2(
2890        heap: *mut zend_mm_heap,
2891        p: *mut ::std::os::raw::c_void,
2892        size: size_t,
2893        copy_size: size_t,
2894    ) -> *mut ::std::os::raw::c_void;
2895}
2896extern "C" {
2897    pub fn _zend_mm_block_size(heap: *mut zend_mm_heap, p: *mut ::std::os::raw::c_void) -> size_t;
2898}
2899extern "C" {
2900    pub fn zend_mm_set_heap(new_heap: *mut zend_mm_heap) -> *mut zend_mm_heap;
2901}
2902extern "C" {
2903    pub fn zend_mm_get_heap() -> *mut zend_mm_heap;
2904}
2905extern "C" {
2906    pub fn zend_mm_gc(heap: *mut zend_mm_heap) -> size_t;
2907}
2908extern "C" {
2909    pub fn zend_mm_is_custom_heap(new_heap: *mut zend_mm_heap) -> ::std::os::raw::c_int;
2910}
2911extern "C" {
2912    pub fn zend_mm_set_custom_handlers(
2913        heap: *mut zend_mm_heap,
2914        _malloc: ::std::option::Option<
2915            unsafe extern "C" fn(arg1: size_t) -> *mut ::std::os::raw::c_void,
2916        >,
2917        _free: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
2918        _realloc: ::std::option::Option<
2919            unsafe extern "C" fn(
2920                arg1: *mut ::std::os::raw::c_void,
2921                arg2: size_t,
2922            ) -> *mut ::std::os::raw::c_void,
2923        >,
2924    );
2925}
2926extern "C" {
2927    pub fn zend_mm_get_custom_handlers(
2928        heap: *mut zend_mm_heap,
2929        _malloc: *mut ::std::option::Option<
2930            unsafe extern "C" fn(arg1: size_t) -> *mut ::std::os::raw::c_void,
2931        >,
2932        _free: *mut ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
2933        _realloc: *mut ::std::option::Option<
2934            unsafe extern "C" fn(
2935                arg1: *mut ::std::os::raw::c_void,
2936                arg2: size_t,
2937            ) -> *mut ::std::os::raw::c_void,
2938        >,
2939    );
2940}
2941pub type zend_mm_storage = _zend_mm_storage;
2942pub type zend_mm_chunk_alloc_t = ::std::option::Option<
2943    unsafe extern "C" fn(
2944        storage: *mut zend_mm_storage,
2945        size: size_t,
2946        alignment: size_t,
2947    ) -> *mut ::std::os::raw::c_void,
2948>;
2949pub type zend_mm_chunk_free_t = ::std::option::Option<
2950    unsafe extern "C" fn(
2951        storage: *mut zend_mm_storage,
2952        chunk: *mut ::std::os::raw::c_void,
2953        size: size_t,
2954    ),
2955>;
2956pub type zend_mm_chunk_truncate_t = ::std::option::Option<
2957    unsafe extern "C" fn(
2958        storage: *mut zend_mm_storage,
2959        chunk: *mut ::std::os::raw::c_void,
2960        old_size: size_t,
2961        new_size: size_t,
2962    ) -> ::std::os::raw::c_int,
2963>;
2964pub type zend_mm_chunk_extend_t = ::std::option::Option<
2965    unsafe extern "C" fn(
2966        storage: *mut zend_mm_storage,
2967        chunk: *mut ::std::os::raw::c_void,
2968        old_size: size_t,
2969        new_size: size_t,
2970    ) -> ::std::os::raw::c_int,
2971>;
2972#[repr(C)]
2973#[derive(Debug, Copy, Clone)]
2974pub struct _zend_mm_handlers {
2975    pub chunk_alloc: zend_mm_chunk_alloc_t,
2976    pub chunk_free: zend_mm_chunk_free_t,
2977    pub chunk_truncate: zend_mm_chunk_truncate_t,
2978    pub chunk_extend: zend_mm_chunk_extend_t,
2979}
2980#[test]
2981fn bindgen_test_layout__zend_mm_handlers() {
2982    assert_eq!(
2983        ::std::mem::size_of::<_zend_mm_handlers>(),
2984        32usize,
2985        concat!("Size of: ", stringify!(_zend_mm_handlers))
2986    );
2987    assert_eq!(
2988        ::std::mem::align_of::<_zend_mm_handlers>(),
2989        8usize,
2990        concat!("Alignment of ", stringify!(_zend_mm_handlers))
2991    );
2992    assert_eq!(
2993        unsafe { &(*(::std::ptr::null::<_zend_mm_handlers>())).chunk_alloc as *const _ as usize },
2994        0usize,
2995        concat!(
2996            "Offset of field: ",
2997            stringify!(_zend_mm_handlers),
2998            "::",
2999            stringify!(chunk_alloc)
3000        )
3001    );
3002    assert_eq!(
3003        unsafe { &(*(::std::ptr::null::<_zend_mm_handlers>())).chunk_free as *const _ as usize },
3004        8usize,
3005        concat!(
3006            "Offset of field: ",
3007            stringify!(_zend_mm_handlers),
3008            "::",
3009            stringify!(chunk_free)
3010        )
3011    );
3012    assert_eq!(
3013        unsafe {
3014            &(*(::std::ptr::null::<_zend_mm_handlers>())).chunk_truncate as *const _ as usize
3015        },
3016        16usize,
3017        concat!(
3018            "Offset of field: ",
3019            stringify!(_zend_mm_handlers),
3020            "::",
3021            stringify!(chunk_truncate)
3022        )
3023    );
3024    assert_eq!(
3025        unsafe { &(*(::std::ptr::null::<_zend_mm_handlers>())).chunk_extend as *const _ as usize },
3026        24usize,
3027        concat!(
3028            "Offset of field: ",
3029            stringify!(_zend_mm_handlers),
3030            "::",
3031            stringify!(chunk_extend)
3032        )
3033    );
3034}
3035pub type zend_mm_handlers = _zend_mm_handlers;
3036#[repr(C)]
3037#[derive(Debug, Copy, Clone)]
3038pub struct _zend_mm_storage {
3039    pub handlers: zend_mm_handlers,
3040    pub data: *mut ::std::os::raw::c_void,
3041}
3042#[test]
3043fn bindgen_test_layout__zend_mm_storage() {
3044    assert_eq!(
3045        ::std::mem::size_of::<_zend_mm_storage>(),
3046        40usize,
3047        concat!("Size of: ", stringify!(_zend_mm_storage))
3048    );
3049    assert_eq!(
3050        ::std::mem::align_of::<_zend_mm_storage>(),
3051        8usize,
3052        concat!("Alignment of ", stringify!(_zend_mm_storage))
3053    );
3054    assert_eq!(
3055        unsafe { &(*(::std::ptr::null::<_zend_mm_storage>())).handlers as *const _ as usize },
3056        0usize,
3057        concat!(
3058            "Offset of field: ",
3059            stringify!(_zend_mm_storage),
3060            "::",
3061            stringify!(handlers)
3062        )
3063    );
3064    assert_eq!(
3065        unsafe { &(*(::std::ptr::null::<_zend_mm_storage>())).data as *const _ as usize },
3066        32usize,
3067        concat!(
3068            "Offset of field: ",
3069            stringify!(_zend_mm_storage),
3070            "::",
3071            stringify!(data)
3072        )
3073    );
3074}
3075extern "C" {
3076    pub fn zend_mm_get_storage(heap: *mut zend_mm_heap) -> *mut zend_mm_storage;
3077}
3078extern "C" {
3079    pub fn zend_mm_startup_ex(
3080        handlers: *const zend_mm_handlers,
3081        data: *mut ::std::os::raw::c_void,
3082        data_size: size_t,
3083    ) -> *mut zend_mm_heap;
3084}
3085#[repr(C)]
3086#[derive(Debug, Copy, Clone)]
3087pub struct _zend_llist_element {
3088    pub next: *mut _zend_llist_element,
3089    pub prev: *mut _zend_llist_element,
3090    pub data: [::std::os::raw::c_char; 1usize],
3091}
3092#[test]
3093fn bindgen_test_layout__zend_llist_element() {
3094    assert_eq!(
3095        ::std::mem::size_of::<_zend_llist_element>(),
3096        24usize,
3097        concat!("Size of: ", stringify!(_zend_llist_element))
3098    );
3099    assert_eq!(
3100        ::std::mem::align_of::<_zend_llist_element>(),
3101        8usize,
3102        concat!("Alignment of ", stringify!(_zend_llist_element))
3103    );
3104    assert_eq!(
3105        unsafe { &(*(::std::ptr::null::<_zend_llist_element>())).next as *const _ as usize },
3106        0usize,
3107        concat!(
3108            "Offset of field: ",
3109            stringify!(_zend_llist_element),
3110            "::",
3111            stringify!(next)
3112        )
3113    );
3114    assert_eq!(
3115        unsafe { &(*(::std::ptr::null::<_zend_llist_element>())).prev as *const _ as usize },
3116        8usize,
3117        concat!(
3118            "Offset of field: ",
3119            stringify!(_zend_llist_element),
3120            "::",
3121            stringify!(prev)
3122        )
3123    );
3124    assert_eq!(
3125        unsafe { &(*(::std::ptr::null::<_zend_llist_element>())).data as *const _ as usize },
3126        16usize,
3127        concat!(
3128            "Offset of field: ",
3129            stringify!(_zend_llist_element),
3130            "::",
3131            stringify!(data)
3132        )
3133    );
3134}
3135pub type zend_llist_element = _zend_llist_element;
3136pub type llist_dtor_func_t =
3137    ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>;
3138pub type llist_compare_func_t = ::std::option::Option<
3139    unsafe extern "C" fn(
3140        arg1: *mut *const zend_llist_element,
3141        arg2: *mut *const zend_llist_element,
3142    ) -> ::std::os::raw::c_int,
3143>;
3144pub type llist_apply_with_args_func_t = ::std::option::Option<
3145    unsafe extern "C" fn(
3146        data: *mut ::std::os::raw::c_void,
3147        num_args: ::std::os::raw::c_int,
3148        args: *mut __va_list_tag,
3149    ),
3150>;
3151pub type llist_apply_with_arg_func_t = ::std::option::Option<
3152    unsafe extern "C" fn(data: *mut ::std::os::raw::c_void, arg: *mut ::std::os::raw::c_void),
3153>;
3154pub type llist_apply_func_t =
3155    ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>;
3156#[repr(C)]
3157#[derive(Debug, Copy, Clone)]
3158pub struct _zend_llist {
3159    pub head: *mut zend_llist_element,
3160    pub tail: *mut zend_llist_element,
3161    pub count: size_t,
3162    pub size: size_t,
3163    pub dtor: llist_dtor_func_t,
3164    pub persistent: ::std::os::raw::c_uchar,
3165    pub traverse_ptr: *mut zend_llist_element,
3166}
3167#[test]
3168fn bindgen_test_layout__zend_llist() {
3169    assert_eq!(
3170        ::std::mem::size_of::<_zend_llist>(),
3171        56usize,
3172        concat!("Size of: ", stringify!(_zend_llist))
3173    );
3174    assert_eq!(
3175        ::std::mem::align_of::<_zend_llist>(),
3176        8usize,
3177        concat!("Alignment of ", stringify!(_zend_llist))
3178    );
3179    assert_eq!(
3180        unsafe { &(*(::std::ptr::null::<_zend_llist>())).head as *const _ as usize },
3181        0usize,
3182        concat!(
3183            "Offset of field: ",
3184            stringify!(_zend_llist),
3185            "::",
3186            stringify!(head)
3187        )
3188    );
3189    assert_eq!(
3190        unsafe { &(*(::std::ptr::null::<_zend_llist>())).tail as *const _ as usize },
3191        8usize,
3192        concat!(
3193            "Offset of field: ",
3194            stringify!(_zend_llist),
3195            "::",
3196            stringify!(tail)
3197        )
3198    );
3199    assert_eq!(
3200        unsafe { &(*(::std::ptr::null::<_zend_llist>())).count as *const _ as usize },
3201        16usize,
3202        concat!(
3203            "Offset of field: ",
3204            stringify!(_zend_llist),
3205            "::",
3206            stringify!(count)
3207        )
3208    );
3209    assert_eq!(
3210        unsafe { &(*(::std::ptr::null::<_zend_llist>())).size as *const _ as usize },
3211        24usize,
3212        concat!(
3213            "Offset of field: ",
3214            stringify!(_zend_llist),
3215            "::",
3216            stringify!(size)
3217        )
3218    );
3219    assert_eq!(
3220        unsafe { &(*(::std::ptr::null::<_zend_llist>())).dtor as *const _ as usize },
3221        32usize,
3222        concat!(
3223            "Offset of field: ",
3224            stringify!(_zend_llist),
3225            "::",
3226            stringify!(dtor)
3227        )
3228    );
3229    assert_eq!(
3230        unsafe { &(*(::std::ptr::null::<_zend_llist>())).persistent as *const _ as usize },
3231        40usize,
3232        concat!(
3233            "Offset of field: ",
3234            stringify!(_zend_llist),
3235            "::",
3236            stringify!(persistent)
3237        )
3238    );
3239    assert_eq!(
3240        unsafe { &(*(::std::ptr::null::<_zend_llist>())).traverse_ptr as *const _ as usize },
3241        48usize,
3242        concat!(
3243            "Offset of field: ",
3244            stringify!(_zend_llist),
3245            "::",
3246            stringify!(traverse_ptr)
3247        )
3248    );
3249}
3250pub type zend_llist = _zend_llist;
3251pub type zend_llist_position = *mut zend_llist_element;
3252extern "C" {
3253    pub fn zend_llist_init(
3254        l: *mut zend_llist,
3255        size: size_t,
3256        dtor: llist_dtor_func_t,
3257        persistent: ::std::os::raw::c_uchar,
3258    );
3259}
3260extern "C" {
3261    pub fn zend_llist_add_element(l: *mut zend_llist, element: *mut ::std::os::raw::c_void);
3262}
3263extern "C" {
3264    pub fn zend_llist_prepend_element(l: *mut zend_llist, element: *mut ::std::os::raw::c_void);
3265}
3266extern "C" {
3267    pub fn zend_llist_del_element(
3268        l: *mut zend_llist,
3269        element: *mut ::std::os::raw::c_void,
3270        compare: ::std::option::Option<
3271            unsafe extern "C" fn(
3272                element1: *mut ::std::os::raw::c_void,
3273                element2: *mut ::std::os::raw::c_void,
3274            ) -> ::std::os::raw::c_int,
3275        >,
3276    );
3277}
3278extern "C" {
3279    pub fn zend_llist_destroy(l: *mut zend_llist);
3280}
3281extern "C" {
3282    pub fn zend_llist_clean(l: *mut zend_llist);
3283}
3284extern "C" {
3285    pub fn zend_llist_remove_tail(l: *mut zend_llist);
3286}
3287extern "C" {
3288    pub fn zend_llist_copy(dst: *mut zend_llist, src: *mut zend_llist);
3289}
3290extern "C" {
3291    pub fn zend_llist_apply(l: *mut zend_llist, func: llist_apply_func_t);
3292}
3293extern "C" {
3294    pub fn zend_llist_apply_with_del(
3295        l: *mut zend_llist,
3296        func: ::std::option::Option<
3297            unsafe extern "C" fn(data: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
3298        >,
3299    );
3300}
3301extern "C" {
3302    pub fn zend_llist_apply_with_argument(
3303        l: *mut zend_llist,
3304        func: llist_apply_with_arg_func_t,
3305        arg: *mut ::std::os::raw::c_void,
3306    );
3307}
3308extern "C" {
3309    pub fn zend_llist_apply_with_arguments(
3310        l: *mut zend_llist,
3311        func: llist_apply_with_args_func_t,
3312        num_args: ::std::os::raw::c_int,
3313        ...
3314    );
3315}
3316extern "C" {
3317    pub fn zend_llist_count(l: *mut zend_llist) -> size_t;
3318}
3319extern "C" {
3320    pub fn zend_llist_sort(l: *mut zend_llist, comp_func: llist_compare_func_t);
3321}
3322extern "C" {
3323    pub fn zend_llist_get_first_ex(
3324        l: *mut zend_llist,
3325        pos: *mut zend_llist_position,
3326    ) -> *mut ::std::os::raw::c_void;
3327}
3328extern "C" {
3329    pub fn zend_llist_get_last_ex(
3330        l: *mut zend_llist,
3331        pos: *mut zend_llist_position,
3332    ) -> *mut ::std::os::raw::c_void;
3333}
3334extern "C" {
3335    pub fn zend_llist_get_next_ex(
3336        l: *mut zend_llist,
3337        pos: *mut zend_llist_position,
3338    ) -> *mut ::std::os::raw::c_void;
3339}
3340extern "C" {
3341    pub fn zend_llist_get_prev_ex(
3342        l: *mut zend_llist,
3343        pos: *mut zend_llist_position,
3344    ) -> *mut ::std::os::raw::c_void;
3345}
3346pub type zend_string_copy_storage_func_t = ::std::option::Option<unsafe extern "C" fn()>;
3347pub type zend_new_interned_string_func_t =
3348    ::std::option::Option<unsafe extern "C" fn(str_: *mut zend_string) -> *mut zend_string>;
3349pub type zend_string_init_interned_func_t = ::std::option::Option<
3350    unsafe extern "C" fn(
3351        str_: *const ::std::os::raw::c_char,
3352        size: size_t,
3353        permanent: ::std::os::raw::c_int,
3354    ) -> *mut zend_string,
3355>;
3356extern "C" {
3357    pub static mut zend_new_interned_string: zend_new_interned_string_func_t;
3358}
3359extern "C" {
3360    pub static mut zend_string_init_interned: zend_string_init_interned_func_t;
3361}
3362extern "C" {
3363    pub fn zend_string_hash_func(str_: *mut zend_string) -> zend_ulong;
3364}
3365extern "C" {
3366    pub fn zend_hash_func(str_: *const ::std::os::raw::c_char, len: size_t) -> zend_ulong;
3367}
3368extern "C" {
3369    pub fn zend_interned_string_find_permanent(str_: *mut zend_string) -> *mut zend_string;
3370}
3371extern "C" {
3372    pub fn zend_interned_strings_init();
3373}
3374extern "C" {
3375    pub fn zend_interned_strings_dtor();
3376}
3377extern "C" {
3378    pub fn zend_interned_strings_activate();
3379}
3380extern "C" {
3381    pub fn zend_interned_strings_deactivate();
3382}
3383extern "C" {
3384    pub fn zend_interned_strings_set_request_storage_handlers(
3385        handler: zend_new_interned_string_func_t,
3386        init_handler: zend_string_init_interned_func_t,
3387    );
3388}
3389extern "C" {
3390    pub fn zend_interned_strings_set_permanent_storage_copy_handlers(
3391        copy_handler: zend_string_copy_storage_func_t,
3392        restore_handler: zend_string_copy_storage_func_t,
3393    );
3394}
3395extern "C" {
3396    pub fn zend_interned_strings_switch_storage(request: zend_bool);
3397}
3398extern "C" {
3399    pub static mut zend_empty_string: *mut zend_string;
3400}
3401extern "C" {
3402    pub static mut zend_one_char_string: [*mut zend_string; 256usize];
3403}
3404extern "C" {
3405    pub static mut zend_known_strings: *mut *mut zend_string;
3406}
3407extern "C" {
3408    pub fn zend_string_equal_val(s1: *mut zend_string, s2: *mut zend_string) -> zend_bool;
3409}
3410pub const _zend_known_string_id_ZEND_STR_FILE: _zend_known_string_id = 0;
3411pub const _zend_known_string_id_ZEND_STR_LINE: _zend_known_string_id = 1;
3412pub const _zend_known_string_id_ZEND_STR_FUNCTION: _zend_known_string_id = 2;
3413pub const _zend_known_string_id_ZEND_STR_CLASS: _zend_known_string_id = 3;
3414pub const _zend_known_string_id_ZEND_STR_OBJECT: _zend_known_string_id = 4;
3415pub const _zend_known_string_id_ZEND_STR_TYPE: _zend_known_string_id = 5;
3416pub const _zend_known_string_id_ZEND_STR_OBJECT_OPERATOR: _zend_known_string_id = 6;
3417pub const _zend_known_string_id_ZEND_STR_PAAMAYIM_NEKUDOTAYIM: _zend_known_string_id = 7;
3418pub const _zend_known_string_id_ZEND_STR_ARGS: _zend_known_string_id = 8;
3419pub const _zend_known_string_id_ZEND_STR_UNKNOWN: _zend_known_string_id = 9;
3420pub const _zend_known_string_id_ZEND_STR_EVAL: _zend_known_string_id = 10;
3421pub const _zend_known_string_id_ZEND_STR_INCLUDE: _zend_known_string_id = 11;
3422pub const _zend_known_string_id_ZEND_STR_REQUIRE: _zend_known_string_id = 12;
3423pub const _zend_known_string_id_ZEND_STR_INCLUDE_ONCE: _zend_known_string_id = 13;
3424pub const _zend_known_string_id_ZEND_STR_REQUIRE_ONCE: _zend_known_string_id = 14;
3425pub const _zend_known_string_id_ZEND_STR_SCALAR: _zend_known_string_id = 15;
3426pub const _zend_known_string_id_ZEND_STR_ERROR_REPORTING: _zend_known_string_id = 16;
3427pub const _zend_known_string_id_ZEND_STR_STATIC: _zend_known_string_id = 17;
3428pub const _zend_known_string_id_ZEND_STR_THIS: _zend_known_string_id = 18;
3429pub const _zend_known_string_id_ZEND_STR_VALUE: _zend_known_string_id = 19;
3430pub const _zend_known_string_id_ZEND_STR_KEY: _zend_known_string_id = 20;
3431pub const _zend_known_string_id_ZEND_STR_MAGIC_AUTOLOAD: _zend_known_string_id = 21;
3432pub const _zend_known_string_id_ZEND_STR_MAGIC_INVOKE: _zend_known_string_id = 22;
3433pub const _zend_known_string_id_ZEND_STR_PREVIOUS: _zend_known_string_id = 23;
3434pub const _zend_known_string_id_ZEND_STR_CODE: _zend_known_string_id = 24;
3435pub const _zend_known_string_id_ZEND_STR_MESSAGE: _zend_known_string_id = 25;
3436pub const _zend_known_string_id_ZEND_STR_SEVERITY: _zend_known_string_id = 26;
3437pub const _zend_known_string_id_ZEND_STR_STRING: _zend_known_string_id = 27;
3438pub const _zend_known_string_id_ZEND_STR_TRACE: _zend_known_string_id = 28;
3439pub const _zend_known_string_id_ZEND_STR_SCHEME: _zend_known_string_id = 29;
3440pub const _zend_known_string_id_ZEND_STR_HOST: _zend_known_string_id = 30;
3441pub const _zend_known_string_id_ZEND_STR_PORT: _zend_known_string_id = 31;
3442pub const _zend_known_string_id_ZEND_STR_USER: _zend_known_string_id = 32;
3443pub const _zend_known_string_id_ZEND_STR_PASS: _zend_known_string_id = 33;
3444pub const _zend_known_string_id_ZEND_STR_PATH: _zend_known_string_id = 34;
3445pub const _zend_known_string_id_ZEND_STR_QUERY: _zend_known_string_id = 35;
3446pub const _zend_known_string_id_ZEND_STR_FRAGMENT: _zend_known_string_id = 36;
3447pub const _zend_known_string_id_ZEND_STR_NULL: _zend_known_string_id = 37;
3448pub const _zend_known_string_id_ZEND_STR_BOOLEAN: _zend_known_string_id = 38;
3449pub const _zend_known_string_id_ZEND_STR_INTEGER: _zend_known_string_id = 39;
3450pub const _zend_known_string_id_ZEND_STR_DOUBLE: _zend_known_string_id = 40;
3451pub const _zend_known_string_id_ZEND_STR_ARRAY: _zend_known_string_id = 41;
3452pub const _zend_known_string_id_ZEND_STR_RESOURCE: _zend_known_string_id = 42;
3453pub const _zend_known_string_id_ZEND_STR_CLOSED_RESOURCE: _zend_known_string_id = 43;
3454pub const _zend_known_string_id_ZEND_STR_NAME: _zend_known_string_id = 44;
3455pub const _zend_known_string_id_ZEND_STR_ARGV: _zend_known_string_id = 45;
3456pub const _zend_known_string_id_ZEND_STR_ARGC: _zend_known_string_id = 46;
3457pub const _zend_known_string_id_ZEND_STR_LAST_KNOWN: _zend_known_string_id = 47;
3458pub type _zend_known_string_id = ::std::os::raw::c_uint;
3459pub use self::_zend_known_string_id as zend_known_string_id;
3460extern "C" {
3461    pub static zend_empty_array: HashTable;
3462}
3463#[repr(C)]
3464#[derive(Debug, Copy, Clone)]
3465pub struct _zend_hash_key {
3466    pub h: zend_ulong,
3467    pub key: *mut zend_string,
3468}
3469#[test]
3470fn bindgen_test_layout__zend_hash_key() {
3471    assert_eq!(
3472        ::std::mem::size_of::<_zend_hash_key>(),
3473        16usize,
3474        concat!("Size of: ", stringify!(_zend_hash_key))
3475    );
3476    assert_eq!(
3477        ::std::mem::align_of::<_zend_hash_key>(),
3478        8usize,
3479        concat!("Alignment of ", stringify!(_zend_hash_key))
3480    );
3481    assert_eq!(
3482        unsafe { &(*(::std::ptr::null::<_zend_hash_key>())).h as *const _ as usize },
3483        0usize,
3484        concat!(
3485            "Offset of field: ",
3486            stringify!(_zend_hash_key),
3487            "::",
3488            stringify!(h)
3489        )
3490    );
3491    assert_eq!(
3492        unsafe { &(*(::std::ptr::null::<_zend_hash_key>())).key as *const _ as usize },
3493        8usize,
3494        concat!(
3495            "Offset of field: ",
3496            stringify!(_zend_hash_key),
3497            "::",
3498            stringify!(key)
3499        )
3500    );
3501}
3502pub type zend_hash_key = _zend_hash_key;
3503pub type merge_checker_func_t = ::std::option::Option<
3504    unsafe extern "C" fn(
3505        target_ht: *mut HashTable,
3506        source_data: *mut zval,
3507        hash_key: *mut zend_hash_key,
3508        pParam: *mut ::std::os::raw::c_void,
3509    ) -> zend_bool,
3510>;
3511extern "C" {
3512    pub fn _zend_hash_init(
3513        ht: *mut HashTable,
3514        nSize: u32,
3515        pDestructor: dtor_func_t,
3516        persistent: zend_bool,
3517    );
3518}
3519extern "C" {
3520    pub fn zend_hash_destroy(ht: *mut HashTable);
3521}
3522extern "C" {
3523    pub fn zend_hash_clean(ht: *mut HashTable);
3524}
3525extern "C" {
3526    pub fn zend_hash_real_init(ht: *mut HashTable, packed: zend_bool);
3527}
3528extern "C" {
3529    pub fn zend_hash_real_init_packed(ht: *mut HashTable);
3530}
3531extern "C" {
3532    pub fn zend_hash_real_init_mixed(ht: *mut HashTable);
3533}
3534extern "C" {
3535    pub fn zend_hash_packed_to_hash(ht: *mut HashTable);
3536}
3537extern "C" {
3538    pub fn zend_hash_to_packed(ht: *mut HashTable);
3539}
3540extern "C" {
3541    pub fn zend_hash_extend(ht: *mut HashTable, nSize: u32, packed: zend_bool);
3542}
3543extern "C" {
3544    pub fn zend_hash_discard(ht: *mut HashTable, nNumUsed: u32);
3545}
3546extern "C" {
3547    pub fn zend_hash_add_or_update(
3548        ht: *mut HashTable,
3549        key: *mut zend_string,
3550        pData: *mut zval,
3551        flag: u32,
3552    ) -> *mut zval;
3553}
3554extern "C" {
3555    pub fn zend_hash_update(
3556        ht: *mut HashTable,
3557        key: *mut zend_string,
3558        pData: *mut zval,
3559    ) -> *mut zval;
3560}
3561extern "C" {
3562    pub fn zend_hash_update_ind(
3563        ht: *mut HashTable,
3564        key: *mut zend_string,
3565        pData: *mut zval,
3566    ) -> *mut zval;
3567}
3568extern "C" {
3569    pub fn zend_hash_add(ht: *mut HashTable, key: *mut zend_string, pData: *mut zval) -> *mut zval;
3570}
3571extern "C" {
3572    pub fn zend_hash_add_new(
3573        ht: *mut HashTable,
3574        key: *mut zend_string,
3575        pData: *mut zval,
3576    ) -> *mut zval;
3577}
3578extern "C" {
3579    pub fn zend_hash_str_add_or_update(
3580        ht: *mut HashTable,
3581        key: *const ::std::os::raw::c_char,
3582        len: size_t,
3583        pData: *mut zval,
3584        flag: u32,
3585    ) -> *mut zval;
3586}
3587extern "C" {
3588    pub fn zend_hash_str_update(
3589        ht: *mut HashTable,
3590        key: *const ::std::os::raw::c_char,
3591        len: size_t,
3592        pData: *mut zval,
3593    ) -> *mut zval;
3594}
3595extern "C" {
3596    pub fn zend_hash_str_update_ind(
3597        ht: *mut HashTable,
3598        key: *const ::std::os::raw::c_char,
3599        len: size_t,
3600        pData: *mut zval,
3601    ) -> *mut zval;
3602}
3603extern "C" {
3604    pub fn zend_hash_str_add(
3605        ht: *mut HashTable,
3606        key: *const ::std::os::raw::c_char,
3607        len: size_t,
3608        pData: *mut zval,
3609    ) -> *mut zval;
3610}
3611extern "C" {
3612    pub fn zend_hash_str_add_new(
3613        ht: *mut HashTable,
3614        key: *const ::std::os::raw::c_char,
3615        len: size_t,
3616        pData: *mut zval,
3617    ) -> *mut zval;
3618}
3619extern "C" {
3620    pub fn zend_hash_index_add_or_update(
3621        ht: *mut HashTable,
3622        h: zend_ulong,
3623        pData: *mut zval,
3624        flag: u32,
3625    ) -> *mut zval;
3626}
3627extern "C" {
3628    pub fn zend_hash_index_add(ht: *mut HashTable, h: zend_ulong, pData: *mut zval) -> *mut zval;
3629}
3630extern "C" {
3631    pub fn zend_hash_index_add_new(
3632        ht: *mut HashTable,
3633        h: zend_ulong,
3634        pData: *mut zval,
3635    ) -> *mut zval;
3636}
3637extern "C" {
3638    pub fn zend_hash_index_update(ht: *mut HashTable, h: zend_ulong, pData: *mut zval)
3639        -> *mut zval;
3640}
3641extern "C" {
3642    pub fn zend_hash_next_index_insert(ht: *mut HashTable, pData: *mut zval) -> *mut zval;
3643}
3644extern "C" {
3645    pub fn zend_hash_next_index_insert_new(ht: *mut HashTable, pData: *mut zval) -> *mut zval;
3646}
3647extern "C" {
3648    pub fn zend_hash_index_add_empty_element(ht: *mut HashTable, h: zend_ulong) -> *mut zval;
3649}
3650extern "C" {
3651    pub fn zend_hash_add_empty_element(ht: *mut HashTable, key: *mut zend_string) -> *mut zval;
3652}
3653extern "C" {
3654    pub fn zend_hash_str_add_empty_element(
3655        ht: *mut HashTable,
3656        key: *const ::std::os::raw::c_char,
3657        len: size_t,
3658    ) -> *mut zval;
3659}
3660pub type apply_func_t =
3661    ::std::option::Option<unsafe extern "C" fn(pDest: *mut zval) -> ::std::os::raw::c_int>;
3662pub type apply_func_arg_t = ::std::option::Option<
3663    unsafe extern "C" fn(
3664        pDest: *mut zval,
3665        argument: *mut ::std::os::raw::c_void,
3666    ) -> ::std::os::raw::c_int,
3667>;
3668pub type apply_func_args_t = ::std::option::Option<
3669    unsafe extern "C" fn(
3670        pDest: *mut zval,
3671        num_args: ::std::os::raw::c_int,
3672        args: *mut __va_list_tag,
3673        hash_key: *mut zend_hash_key,
3674    ) -> ::std::os::raw::c_int,
3675>;
3676extern "C" {
3677    pub fn zend_hash_graceful_destroy(ht: *mut HashTable);
3678}
3679extern "C" {
3680    pub fn zend_hash_graceful_reverse_destroy(ht: *mut HashTable);
3681}
3682extern "C" {
3683    pub fn zend_hash_apply(ht: *mut HashTable, apply_func: apply_func_t);
3684}
3685extern "C" {
3686    pub fn zend_hash_apply_with_argument(
3687        ht: *mut HashTable,
3688        apply_func: apply_func_arg_t,
3689        arg1: *mut ::std::os::raw::c_void,
3690    );
3691}
3692extern "C" {
3693    pub fn zend_hash_apply_with_arguments(
3694        ht: *mut HashTable,
3695        apply_func: apply_func_args_t,
3696        arg1: ::std::os::raw::c_int,
3697        ...
3698    );
3699}
3700extern "C" {
3701    pub fn zend_hash_reverse_apply(ht: *mut HashTable, apply_func: apply_func_t);
3702}
3703extern "C" {
3704    pub fn zend_hash_del(ht: *mut HashTable, key: *mut zend_string) -> ::std::os::raw::c_int;
3705}
3706extern "C" {
3707    pub fn zend_hash_del_ind(ht: *mut HashTable, key: *mut zend_string) -> ::std::os::raw::c_int;
3708}
3709extern "C" {
3710    pub fn zend_hash_str_del(
3711        ht: *mut HashTable,
3712        key: *const ::std::os::raw::c_char,
3713        len: size_t,
3714    ) -> ::std::os::raw::c_int;
3715}
3716extern "C" {
3717    pub fn zend_hash_str_del_ind(
3718        ht: *mut HashTable,
3719        key: *const ::std::os::raw::c_char,
3720        len: size_t,
3721    ) -> ::std::os::raw::c_int;
3722}
3723extern "C" {
3724    pub fn zend_hash_index_del(ht: *mut HashTable, h: zend_ulong) -> ::std::os::raw::c_int;
3725}
3726extern "C" {
3727    pub fn zend_hash_del_bucket(ht: *mut HashTable, p: *mut Bucket);
3728}
3729extern "C" {
3730    pub fn zend_hash_find(ht: *const HashTable, key: *mut zend_string) -> *mut zval;
3731}
3732extern "C" {
3733    pub fn zend_hash_str_find(
3734        ht: *const HashTable,
3735        key: *const ::std::os::raw::c_char,
3736        len: size_t,
3737    ) -> *mut zval;
3738}
3739extern "C" {
3740    pub fn zend_hash_index_find(ht: *const HashTable, h: zend_ulong) -> *mut zval;
3741}
3742extern "C" {
3743    pub fn _zend_hash_index_find(ht: *const HashTable, h: zend_ulong) -> *mut zval;
3744}
3745extern "C" {
3746    pub fn _zend_hash_find_known_hash(ht: *const HashTable, key: *mut zend_string) -> *mut zval;
3747}
3748extern "C" {
3749    pub fn zend_hash_exists(ht: *const HashTable, key: *mut zend_string) -> zend_bool;
3750}
3751extern "C" {
3752    pub fn zend_hash_str_exists(
3753        ht: *const HashTable,
3754        str_: *const ::std::os::raw::c_char,
3755        len: size_t,
3756    ) -> zend_bool;
3757}
3758extern "C" {
3759    pub fn zend_hash_index_exists(ht: *const HashTable, h: zend_ulong) -> zend_bool;
3760}
3761extern "C" {
3762    pub fn zend_hash_get_current_pos(ht: *const HashTable) -> HashPosition;
3763}
3764extern "C" {
3765    pub fn zend_hash_move_forward_ex(
3766        ht: *mut HashTable,
3767        pos: *mut HashPosition,
3768    ) -> ::std::os::raw::c_int;
3769}
3770extern "C" {
3771    pub fn zend_hash_move_backwards_ex(
3772        ht: *mut HashTable,
3773        pos: *mut HashPosition,
3774    ) -> ::std::os::raw::c_int;
3775}
3776extern "C" {
3777    pub fn zend_hash_get_current_key_ex(
3778        ht: *const HashTable,
3779        str_index: *mut *mut zend_string,
3780        num_index: *mut zend_ulong,
3781        pos: *mut HashPosition,
3782    ) -> ::std::os::raw::c_int;
3783}
3784extern "C" {
3785    pub fn zend_hash_get_current_key_zval_ex(
3786        ht: *const HashTable,
3787        key: *mut zval,
3788        pos: *mut HashPosition,
3789    );
3790}
3791extern "C" {
3792    pub fn zend_hash_get_current_key_type_ex(
3793        ht: *mut HashTable,
3794        pos: *mut HashPosition,
3795    ) -> ::std::os::raw::c_int;
3796}
3797extern "C" {
3798    pub fn zend_hash_get_current_data_ex(ht: *mut HashTable, pos: *mut HashPosition) -> *mut zval;
3799}
3800extern "C" {
3801    pub fn zend_hash_internal_pointer_reset_ex(ht: *mut HashTable, pos: *mut HashPosition);
3802}
3803extern "C" {
3804    pub fn zend_hash_internal_pointer_end_ex(ht: *mut HashTable, pos: *mut HashPosition);
3805}
3806extern "C" {
3807    pub fn zend_hash_copy(
3808        target: *mut HashTable,
3809        source: *mut HashTable,
3810        pCopyConstructor: copy_ctor_func_t,
3811    );
3812}
3813extern "C" {
3814    pub fn zend_hash_merge(
3815        target: *mut HashTable,
3816        source: *mut HashTable,
3817        pCopyConstructor: copy_ctor_func_t,
3818        overwrite: zend_bool,
3819    );
3820}
3821extern "C" {
3822    pub fn zend_hash_merge_ex(
3823        target: *mut HashTable,
3824        source: *mut HashTable,
3825        pCopyConstructor: copy_ctor_func_t,
3826        pMergeSource: merge_checker_func_t,
3827        pParam: *mut ::std::os::raw::c_void,
3828    );
3829}
3830extern "C" {
3831    pub fn zend_hash_bucket_swap(p: *mut Bucket, q: *mut Bucket);
3832}
3833extern "C" {
3834    pub fn zend_hash_bucket_renum_swap(p: *mut Bucket, q: *mut Bucket);
3835}
3836extern "C" {
3837    pub fn zend_hash_bucket_packed_swap(p: *mut Bucket, q: *mut Bucket);
3838}
3839extern "C" {
3840    pub fn zend_hash_compare(
3841        ht1: *mut HashTable,
3842        ht2: *mut HashTable,
3843        compar: compare_func_t,
3844        ordered: zend_bool,
3845    ) -> ::std::os::raw::c_int;
3846}
3847extern "C" {
3848    pub fn zend_hash_sort_ex(
3849        ht: *mut HashTable,
3850        sort_func: sort_func_t,
3851        compare_func: compare_func_t,
3852        renumber: zend_bool,
3853    ) -> ::std::os::raw::c_int;
3854}
3855extern "C" {
3856    pub fn zend_hash_minmax(ht: *const HashTable, compar: compare_func_t, flag: u32) -> *mut zval;
3857}
3858extern "C" {
3859    pub fn zend_hash_rehash(ht: *mut HashTable) -> ::std::os::raw::c_int;
3860}
3861extern "C" {
3862    pub fn _zend_new_array_0() -> *mut HashTable;
3863}
3864extern "C" {
3865    pub fn _zend_new_array(size: u32) -> *mut HashTable;
3866}
3867extern "C" {
3868    pub fn zend_array_count(ht: *mut HashTable) -> u32;
3869}
3870extern "C" {
3871    pub fn zend_array_dup(source: *mut HashTable) -> *mut HashTable;
3872}
3873extern "C" {
3874    pub fn zend_array_destroy(ht: *mut HashTable);
3875}
3876extern "C" {
3877    pub fn zend_symtable_clean(ht: *mut HashTable);
3878}
3879extern "C" {
3880    pub fn zend_symtable_to_proptable(ht: *mut HashTable) -> *mut HashTable;
3881}
3882extern "C" {
3883    pub fn zend_proptable_to_symtable(
3884        ht: *mut HashTable,
3885        always_duplicate: zend_bool,
3886    ) -> *mut HashTable;
3887}
3888extern "C" {
3889    pub fn _zend_handle_numeric_str_ex(
3890        key: *const ::std::os::raw::c_char,
3891        length: size_t,
3892        idx: *mut zend_ulong,
3893    ) -> ::std::os::raw::c_int;
3894}
3895extern "C" {
3896    pub fn zend_hash_iterator_add(ht: *mut HashTable, pos: HashPosition) -> u32;
3897}
3898extern "C" {
3899    pub fn zend_hash_iterator_pos(idx: u32, ht: *mut HashTable) -> HashPosition;
3900}
3901extern "C" {
3902    pub fn zend_hash_iterator_pos_ex(idx: u32, array: *mut zval) -> HashPosition;
3903}
3904extern "C" {
3905    pub fn zend_hash_iterator_del(idx: u32);
3906}
3907extern "C" {
3908    pub fn zend_hash_iterators_lower_pos(ht: *mut HashTable, start: HashPosition) -> HashPosition;
3909}
3910extern "C" {
3911    pub fn _zend_hash_iterators_update(ht: *mut HashTable, from: HashPosition, to: HashPosition);
3912}
3913extern "C" {
3914    pub fn zend_hash_iterators_advance(ht: *mut HashTable, step: HashPosition);
3915}
3916pub type zend_ast_kind = u16;
3917pub type zend_ast_attr = u16;
3918#[repr(C)]
3919#[derive(Debug, Copy, Clone)]
3920pub struct _zend_ast {
3921    pub kind: zend_ast_kind,
3922    pub attr: zend_ast_attr,
3923    pub lineno: u32,
3924    pub child: [*mut zend_ast; 1usize],
3925}
3926#[test]
3927fn bindgen_test_layout__zend_ast() {
3928    assert_eq!(
3929        ::std::mem::size_of::<_zend_ast>(),
3930        16usize,
3931        concat!("Size of: ", stringify!(_zend_ast))
3932    );
3933    assert_eq!(
3934        ::std::mem::align_of::<_zend_ast>(),
3935        8usize,
3936        concat!("Alignment of ", stringify!(_zend_ast))
3937    );
3938    assert_eq!(
3939        unsafe { &(*(::std::ptr::null::<_zend_ast>())).kind as *const _ as usize },
3940        0usize,
3941        concat!(
3942            "Offset of field: ",
3943            stringify!(_zend_ast),
3944            "::",
3945            stringify!(kind)
3946        )
3947    );
3948    assert_eq!(
3949        unsafe { &(*(::std::ptr::null::<_zend_ast>())).attr as *const _ as usize },
3950        2usize,
3951        concat!(
3952            "Offset of field: ",
3953            stringify!(_zend_ast),
3954            "::",
3955            stringify!(attr)
3956        )
3957    );
3958    assert_eq!(
3959        unsafe { &(*(::std::ptr::null::<_zend_ast>())).lineno as *const _ as usize },
3960        4usize,
3961        concat!(
3962            "Offset of field: ",
3963            stringify!(_zend_ast),
3964            "::",
3965            stringify!(lineno)
3966        )
3967    );
3968    assert_eq!(
3969        unsafe { &(*(::std::ptr::null::<_zend_ast>())).child as *const _ as usize },
3970        8usize,
3971        concat!(
3972            "Offset of field: ",
3973            stringify!(_zend_ast),
3974            "::",
3975            stringify!(child)
3976        )
3977    );
3978}
3979#[repr(C)]
3980#[derive(Debug, Copy, Clone)]
3981pub struct _zend_ast_list {
3982    pub kind: zend_ast_kind,
3983    pub attr: zend_ast_attr,
3984    pub lineno: u32,
3985    pub children: u32,
3986    pub child: [*mut zend_ast; 1usize],
3987}
3988#[test]
3989fn bindgen_test_layout__zend_ast_list() {
3990    assert_eq!(
3991        ::std::mem::size_of::<_zend_ast_list>(),
3992        24usize,
3993        concat!("Size of: ", stringify!(_zend_ast_list))
3994    );
3995    assert_eq!(
3996        ::std::mem::align_of::<_zend_ast_list>(),
3997        8usize,
3998        concat!("Alignment of ", stringify!(_zend_ast_list))
3999    );
4000    assert_eq!(
4001        unsafe { &(*(::std::ptr::null::<_zend_ast_list>())).kind as *const _ as usize },
4002        0usize,
4003        concat!(
4004            "Offset of field: ",
4005            stringify!(_zend_ast_list),
4006            "::",
4007            stringify!(kind)
4008        )
4009    );
4010    assert_eq!(
4011        unsafe { &(*(::std::ptr::null::<_zend_ast_list>())).attr as *const _ as usize },
4012        2usize,
4013        concat!(
4014            "Offset of field: ",
4015            stringify!(_zend_ast_list),
4016            "::",
4017            stringify!(attr)
4018        )
4019    );
4020    assert_eq!(
4021        unsafe { &(*(::std::ptr::null::<_zend_ast_list>())).lineno as *const _ as usize },
4022        4usize,
4023        concat!(
4024            "Offset of field: ",
4025            stringify!(_zend_ast_list),
4026            "::",
4027            stringify!(lineno)
4028        )
4029    );
4030    assert_eq!(
4031        unsafe { &(*(::std::ptr::null::<_zend_ast_list>())).children as *const _ as usize },
4032        8usize,
4033        concat!(
4034            "Offset of field: ",
4035            stringify!(_zend_ast_list),
4036            "::",
4037            stringify!(children)
4038        )
4039    );
4040    assert_eq!(
4041        unsafe { &(*(::std::ptr::null::<_zend_ast_list>())).child as *const _ as usize },
4042        16usize,
4043        concat!(
4044            "Offset of field: ",
4045            stringify!(_zend_ast_list),
4046            "::",
4047            stringify!(child)
4048        )
4049    );
4050}
4051pub type zend_ast_list = _zend_ast_list;
4052#[repr(C)]
4053#[derive(Copy, Clone)]
4054pub struct _zend_ast_zval {
4055    pub kind: zend_ast_kind,
4056    pub attr: zend_ast_attr,
4057    pub val: zval,
4058}
4059#[test]
4060fn bindgen_test_layout__zend_ast_zval() {
4061    assert_eq!(
4062        ::std::mem::size_of::<_zend_ast_zval>(),
4063        24usize,
4064        concat!("Size of: ", stringify!(_zend_ast_zval))
4065    );
4066    assert_eq!(
4067        ::std::mem::align_of::<_zend_ast_zval>(),
4068        8usize,
4069        concat!("Alignment of ", stringify!(_zend_ast_zval))
4070    );
4071    assert_eq!(
4072        unsafe { &(*(::std::ptr::null::<_zend_ast_zval>())).kind as *const _ as usize },
4073        0usize,
4074        concat!(
4075            "Offset of field: ",
4076            stringify!(_zend_ast_zval),
4077            "::",
4078            stringify!(kind)
4079        )
4080    );
4081    assert_eq!(
4082        unsafe { &(*(::std::ptr::null::<_zend_ast_zval>())).attr as *const _ as usize },
4083        2usize,
4084        concat!(
4085            "Offset of field: ",
4086            stringify!(_zend_ast_zval),
4087            "::",
4088            stringify!(attr)
4089        )
4090    );
4091    assert_eq!(
4092        unsafe { &(*(::std::ptr::null::<_zend_ast_zval>())).val as *const _ as usize },
4093        8usize,
4094        concat!(
4095            "Offset of field: ",
4096            stringify!(_zend_ast_zval),
4097            "::",
4098            stringify!(val)
4099        )
4100    );
4101}
4102pub type zend_ast_zval = _zend_ast_zval;
4103#[repr(C)]
4104#[derive(Debug, Copy, Clone)]
4105pub struct _zend_ast_decl {
4106    pub kind: zend_ast_kind,
4107    pub attr: zend_ast_attr,
4108    pub start_lineno: u32,
4109    pub end_lineno: u32,
4110    pub flags: u32,
4111    pub lex_pos: *mut ::std::os::raw::c_uchar,
4112    pub doc_comment: *mut zend_string,
4113    pub name: *mut zend_string,
4114    pub child: [*mut zend_ast; 4usize],
4115}
4116#[test]
4117fn bindgen_test_layout__zend_ast_decl() {
4118    assert_eq!(
4119        ::std::mem::size_of::<_zend_ast_decl>(),
4120        72usize,
4121        concat!("Size of: ", stringify!(_zend_ast_decl))
4122    );
4123    assert_eq!(
4124        ::std::mem::align_of::<_zend_ast_decl>(),
4125        8usize,
4126        concat!("Alignment of ", stringify!(_zend_ast_decl))
4127    );
4128    assert_eq!(
4129        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).kind as *const _ as usize },
4130        0usize,
4131        concat!(
4132            "Offset of field: ",
4133            stringify!(_zend_ast_decl),
4134            "::",
4135            stringify!(kind)
4136        )
4137    );
4138    assert_eq!(
4139        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).attr as *const _ as usize },
4140        2usize,
4141        concat!(
4142            "Offset of field: ",
4143            stringify!(_zend_ast_decl),
4144            "::",
4145            stringify!(attr)
4146        )
4147    );
4148    assert_eq!(
4149        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).start_lineno as *const _ as usize },
4150        4usize,
4151        concat!(
4152            "Offset of field: ",
4153            stringify!(_zend_ast_decl),
4154            "::",
4155            stringify!(start_lineno)
4156        )
4157    );
4158    assert_eq!(
4159        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).end_lineno as *const _ as usize },
4160        8usize,
4161        concat!(
4162            "Offset of field: ",
4163            stringify!(_zend_ast_decl),
4164            "::",
4165            stringify!(end_lineno)
4166        )
4167    );
4168    assert_eq!(
4169        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).flags as *const _ as usize },
4170        12usize,
4171        concat!(
4172            "Offset of field: ",
4173            stringify!(_zend_ast_decl),
4174            "::",
4175            stringify!(flags)
4176        )
4177    );
4178    assert_eq!(
4179        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).lex_pos as *const _ as usize },
4180        16usize,
4181        concat!(
4182            "Offset of field: ",
4183            stringify!(_zend_ast_decl),
4184            "::",
4185            stringify!(lex_pos)
4186        )
4187    );
4188    assert_eq!(
4189        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).doc_comment as *const _ as usize },
4190        24usize,
4191        concat!(
4192            "Offset of field: ",
4193            stringify!(_zend_ast_decl),
4194            "::",
4195            stringify!(doc_comment)
4196        )
4197    );
4198    assert_eq!(
4199        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).name as *const _ as usize },
4200        32usize,
4201        concat!(
4202            "Offset of field: ",
4203            stringify!(_zend_ast_decl),
4204            "::",
4205            stringify!(name)
4206        )
4207    );
4208    assert_eq!(
4209        unsafe { &(*(::std::ptr::null::<_zend_ast_decl>())).child as *const _ as usize },
4210        40usize,
4211        concat!(
4212            "Offset of field: ",
4213            stringify!(_zend_ast_decl),
4214            "::",
4215            stringify!(child)
4216        )
4217    );
4218}
4219pub type zend_ast_decl = _zend_ast_decl;
4220pub type zend_ast_process_t = ::std::option::Option<unsafe extern "C" fn(ast: *mut zend_ast)>;
4221extern "C" {
4222    pub static mut zend_ast_process: zend_ast_process_t;
4223}
4224extern "C" {
4225    pub fn zend_ast_create_zval_with_lineno(zv: *mut zval, lineno: u32) -> *mut zend_ast;
4226}
4227extern "C" {
4228    pub fn zend_ast_create_zval_ex(zv: *mut zval, attr: zend_ast_attr) -> *mut zend_ast;
4229}
4230extern "C" {
4231    pub fn zend_ast_create_zval(zv: *mut zval) -> *mut zend_ast;
4232}
4233extern "C" {
4234    pub fn zend_ast_create_zval_from_str(str_: *mut zend_string) -> *mut zend_ast;
4235}
4236extern "C" {
4237    pub fn zend_ast_create_zval_from_long(lval: zend_long) -> *mut zend_ast;
4238}
4239extern "C" {
4240    pub fn zend_ast_create_constant(name: *mut zend_string, attr: zend_ast_attr) -> *mut zend_ast;
4241}
4242extern "C" {
4243    pub fn zend_ast_create_0(kind: zend_ast_kind) -> *mut zend_ast;
4244}
4245extern "C" {
4246    pub fn zend_ast_create_1(kind: zend_ast_kind, child: *mut zend_ast) -> *mut zend_ast;
4247}
4248extern "C" {
4249    pub fn zend_ast_create_2(
4250        kind: zend_ast_kind,
4251        child1: *mut zend_ast,
4252        child2: *mut zend_ast,
4253    ) -> *mut zend_ast;
4254}
4255extern "C" {
4256    pub fn zend_ast_create_3(
4257        kind: zend_ast_kind,
4258        child1: *mut zend_ast,
4259        child2: *mut zend_ast,
4260        child3: *mut zend_ast,
4261    ) -> *mut zend_ast;
4262}
4263extern "C" {
4264    pub fn zend_ast_create_4(
4265        kind: zend_ast_kind,
4266        child1: *mut zend_ast,
4267        child2: *mut zend_ast,
4268        child3: *mut zend_ast,
4269        child4: *mut zend_ast,
4270    ) -> *mut zend_ast;
4271}
4272extern "C" {
4273    pub fn zend_ast_create_list_0(kind: zend_ast_kind) -> *mut zend_ast;
4274}
4275extern "C" {
4276    pub fn zend_ast_create_list_1(kind: zend_ast_kind, child: *mut zend_ast) -> *mut zend_ast;
4277}
4278extern "C" {
4279    pub fn zend_ast_create_list_2(
4280        kind: zend_ast_kind,
4281        child1: *mut zend_ast,
4282        child2: *mut zend_ast,
4283    ) -> *mut zend_ast;
4284}
4285extern "C" {
4286    pub fn zend_ast_list_add(list: *mut zend_ast, op: *mut zend_ast) -> *mut zend_ast;
4287}
4288extern "C" {
4289    pub fn zend_ast_create_decl(
4290        kind: zend_ast_kind,
4291        flags: u32,
4292        start_lineno: u32,
4293        doc_comment: *mut zend_string,
4294        name: *mut zend_string,
4295        child0: *mut zend_ast,
4296        child1: *mut zend_ast,
4297        child2: *mut zend_ast,
4298        child3: *mut zend_ast,
4299    ) -> *mut zend_ast;
4300}
4301extern "C" {
4302    pub fn zend_ast_evaluate(
4303        result: *mut zval,
4304        ast: *mut zend_ast,
4305        scope: *mut zend_class_entry,
4306    ) -> ::std::os::raw::c_int;
4307}
4308extern "C" {
4309    pub fn zend_ast_export(
4310        prefix: *const ::std::os::raw::c_char,
4311        ast: *mut zend_ast,
4312        suffix: *const ::std::os::raw::c_char,
4313    ) -> *mut zend_string;
4314}
4315extern "C" {
4316    pub fn zend_ast_copy(ast: *mut zend_ast) -> *mut zend_ast_ref;
4317}
4318extern "C" {
4319    pub fn zend_ast_destroy(ast: *mut zend_ast);
4320}
4321extern "C" {
4322    pub fn zend_ast_ref_destroy(ast: *mut zend_ast_ref);
4323}
4324pub type zend_ast_apply_func =
4325    ::std::option::Option<unsafe extern "C" fn(ast_ptr: *mut *mut zend_ast)>;
4326extern "C" {
4327    pub fn zend_ast_apply(ast: *mut zend_ast, fn_: zend_ast_apply_func);
4328}
4329#[repr(C)]
4330#[derive(Debug, Copy, Clone)]
4331pub struct _zend_gc_status {
4332    pub runs: u32,
4333    pub collected: u32,
4334    pub threshold: u32,
4335    pub num_roots: u32,
4336}
4337#[test]
4338fn bindgen_test_layout__zend_gc_status() {
4339    assert_eq!(
4340        ::std::mem::size_of::<_zend_gc_status>(),
4341        16usize,
4342        concat!("Size of: ", stringify!(_zend_gc_status))
4343    );
4344    assert_eq!(
4345        ::std::mem::align_of::<_zend_gc_status>(),
4346        4usize,
4347        concat!("Alignment of ", stringify!(_zend_gc_status))
4348    );
4349    assert_eq!(
4350        unsafe { &(*(::std::ptr::null::<_zend_gc_status>())).runs as *const _ as usize },
4351        0usize,
4352        concat!(
4353            "Offset of field: ",
4354            stringify!(_zend_gc_status),
4355            "::",
4356            stringify!(runs)
4357        )
4358    );
4359    assert_eq!(
4360        unsafe { &(*(::std::ptr::null::<_zend_gc_status>())).collected as *const _ as usize },
4361        4usize,
4362        concat!(
4363            "Offset of field: ",
4364            stringify!(_zend_gc_status),
4365            "::",
4366            stringify!(collected)
4367        )
4368    );
4369    assert_eq!(
4370        unsafe { &(*(::std::ptr::null::<_zend_gc_status>())).threshold as *const _ as usize },
4371        8usize,
4372        concat!(
4373            "Offset of field: ",
4374            stringify!(_zend_gc_status),
4375            "::",
4376            stringify!(threshold)
4377        )
4378    );
4379    assert_eq!(
4380        unsafe { &(*(::std::ptr::null::<_zend_gc_status>())).num_roots as *const _ as usize },
4381        12usize,
4382        concat!(
4383            "Offset of field: ",
4384            stringify!(_zend_gc_status),
4385            "::",
4386            stringify!(num_roots)
4387        )
4388    );
4389}
4390pub type zend_gc_status = _zend_gc_status;
4391extern "C" {
4392    pub static mut gc_collect_cycles:
4393        ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_int>;
4394}
4395extern "C" {
4396    pub fn zend_gc_collect_cycles() -> ::std::os::raw::c_int;
4397}
4398extern "C" {
4399    pub fn zend_gc_get_status(status: *mut zend_gc_status);
4400}
4401pub type zend_object_iterator = _zend_object_iterator;
4402#[repr(C)]
4403#[derive(Debug, Copy, Clone)]
4404pub struct _zend_object_iterator_funcs {
4405    pub dtor: ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
4406    pub valid: ::std::option::Option<
4407        unsafe extern "C" fn(iter: *mut zend_object_iterator) -> ::std::os::raw::c_int,
4408    >,
4409    pub get_current_data:
4410        ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator) -> *mut zval>,
4411    pub get_current_key: ::std::option::Option<
4412        unsafe extern "C" fn(iter: *mut zend_object_iterator, key: *mut zval),
4413    >,
4414    pub move_forward: ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
4415    pub rewind: ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
4416    pub invalidate_current:
4417        ::std::option::Option<unsafe extern "C" fn(iter: *mut zend_object_iterator)>,
4418}
4419#[test]
4420fn bindgen_test_layout__zend_object_iterator_funcs() {
4421    assert_eq!(
4422        ::std::mem::size_of::<_zend_object_iterator_funcs>(),
4423        56usize,
4424        concat!("Size of: ", stringify!(_zend_object_iterator_funcs))
4425    );
4426    assert_eq!(
4427        ::std::mem::align_of::<_zend_object_iterator_funcs>(),
4428        8usize,
4429        concat!("Alignment of ", stringify!(_zend_object_iterator_funcs))
4430    );
4431    assert_eq!(
4432        unsafe {
4433            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).dtor as *const _ as usize
4434        },
4435        0usize,
4436        concat!(
4437            "Offset of field: ",
4438            stringify!(_zend_object_iterator_funcs),
4439            "::",
4440            stringify!(dtor)
4441        )
4442    );
4443    assert_eq!(
4444        unsafe {
4445            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).valid as *const _ as usize
4446        },
4447        8usize,
4448        concat!(
4449            "Offset of field: ",
4450            stringify!(_zend_object_iterator_funcs),
4451            "::",
4452            stringify!(valid)
4453        )
4454    );
4455    assert_eq!(
4456        unsafe {
4457            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).get_current_data as *const _
4458                as usize
4459        },
4460        16usize,
4461        concat!(
4462            "Offset of field: ",
4463            stringify!(_zend_object_iterator_funcs),
4464            "::",
4465            stringify!(get_current_data)
4466        )
4467    );
4468    assert_eq!(
4469        unsafe {
4470            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).get_current_key as *const _
4471                as usize
4472        },
4473        24usize,
4474        concat!(
4475            "Offset of field: ",
4476            stringify!(_zend_object_iterator_funcs),
4477            "::",
4478            stringify!(get_current_key)
4479        )
4480    );
4481    assert_eq!(
4482        unsafe {
4483            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).move_forward as *const _
4484                as usize
4485        },
4486        32usize,
4487        concat!(
4488            "Offset of field: ",
4489            stringify!(_zend_object_iterator_funcs),
4490            "::",
4491            stringify!(move_forward)
4492        )
4493    );
4494    assert_eq!(
4495        unsafe {
4496            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).rewind as *const _ as usize
4497        },
4498        40usize,
4499        concat!(
4500            "Offset of field: ",
4501            stringify!(_zend_object_iterator_funcs),
4502            "::",
4503            stringify!(rewind)
4504        )
4505    );
4506    assert_eq!(
4507        unsafe {
4508            &(*(::std::ptr::null::<_zend_object_iterator_funcs>())).invalidate_current as *const _
4509                as usize
4510        },
4511        48usize,
4512        concat!(
4513            "Offset of field: ",
4514            stringify!(_zend_object_iterator_funcs),
4515            "::",
4516            stringify!(invalidate_current)
4517        )
4518    );
4519}
4520pub type zend_object_iterator_funcs = _zend_object_iterator_funcs;
4521#[repr(C)]
4522#[derive(Copy, Clone)]
4523pub struct _zend_object_iterator {
4524    pub std: zend_object,
4525    pub data: zval,
4526    pub funcs: *const zend_object_iterator_funcs,
4527    pub index: zend_ulong,
4528}
4529#[test]
4530fn bindgen_test_layout__zend_object_iterator() {
4531    assert_eq!(
4532        ::std::mem::size_of::<_zend_object_iterator>(),
4533        88usize,
4534        concat!("Size of: ", stringify!(_zend_object_iterator))
4535    );
4536    assert_eq!(
4537        ::std::mem::align_of::<_zend_object_iterator>(),
4538        8usize,
4539        concat!("Alignment of ", stringify!(_zend_object_iterator))
4540    );
4541    assert_eq!(
4542        unsafe { &(*(::std::ptr::null::<_zend_object_iterator>())).std as *const _ as usize },
4543        0usize,
4544        concat!(
4545            "Offset of field: ",
4546            stringify!(_zend_object_iterator),
4547            "::",
4548            stringify!(std)
4549        )
4550    );
4551    assert_eq!(
4552        unsafe { &(*(::std::ptr::null::<_zend_object_iterator>())).data as *const _ as usize },
4553        56usize,
4554        concat!(
4555            "Offset of field: ",
4556            stringify!(_zend_object_iterator),
4557            "::",
4558            stringify!(data)
4559        )
4560    );
4561    assert_eq!(
4562        unsafe { &(*(::std::ptr::null::<_zend_object_iterator>())).funcs as *const _ as usize },
4563        72usize,
4564        concat!(
4565            "Offset of field: ",
4566            stringify!(_zend_object_iterator),
4567            "::",
4568            stringify!(funcs)
4569        )
4570    );
4571    assert_eq!(
4572        unsafe { &(*(::std::ptr::null::<_zend_object_iterator>())).index as *const _ as usize },
4573        80usize,
4574        concat!(
4575            "Offset of field: ",
4576            stringify!(_zend_object_iterator),
4577            "::",
4578            stringify!(index)
4579        )
4580    );
4581}
4582#[repr(C)]
4583#[derive(Debug, Copy, Clone)]
4584pub struct _zend_class_iterator_funcs {
4585    pub zf_new_iterator: *mut _zend_function,
4586    pub zf_valid: *mut _zend_function,
4587    pub zf_current: *mut _zend_function,
4588    pub zf_key: *mut _zend_function,
4589    pub zf_next: *mut _zend_function,
4590    pub zf_rewind: *mut _zend_function,
4591}
4592#[test]
4593fn bindgen_test_layout__zend_class_iterator_funcs() {
4594    assert_eq!(
4595        ::std::mem::size_of::<_zend_class_iterator_funcs>(),
4596        48usize,
4597        concat!("Size of: ", stringify!(_zend_class_iterator_funcs))
4598    );
4599    assert_eq!(
4600        ::std::mem::align_of::<_zend_class_iterator_funcs>(),
4601        8usize,
4602        concat!("Alignment of ", stringify!(_zend_class_iterator_funcs))
4603    );
4604    assert_eq!(
4605        unsafe {
4606            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_new_iterator as *const _
4607                as usize
4608        },
4609        0usize,
4610        concat!(
4611            "Offset of field: ",
4612            stringify!(_zend_class_iterator_funcs),
4613            "::",
4614            stringify!(zf_new_iterator)
4615        )
4616    );
4617    assert_eq!(
4618        unsafe {
4619            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_valid as *const _ as usize
4620        },
4621        8usize,
4622        concat!(
4623            "Offset of field: ",
4624            stringify!(_zend_class_iterator_funcs),
4625            "::",
4626            stringify!(zf_valid)
4627        )
4628    );
4629    assert_eq!(
4630        unsafe {
4631            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_current as *const _ as usize
4632        },
4633        16usize,
4634        concat!(
4635            "Offset of field: ",
4636            stringify!(_zend_class_iterator_funcs),
4637            "::",
4638            stringify!(zf_current)
4639        )
4640    );
4641    assert_eq!(
4642        unsafe {
4643            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_key as *const _ as usize
4644        },
4645        24usize,
4646        concat!(
4647            "Offset of field: ",
4648            stringify!(_zend_class_iterator_funcs),
4649            "::",
4650            stringify!(zf_key)
4651        )
4652    );
4653    assert_eq!(
4654        unsafe {
4655            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_next as *const _ as usize
4656        },
4657        32usize,
4658        concat!(
4659            "Offset of field: ",
4660            stringify!(_zend_class_iterator_funcs),
4661            "::",
4662            stringify!(zf_next)
4663        )
4664    );
4665    assert_eq!(
4666        unsafe {
4667            &(*(::std::ptr::null::<_zend_class_iterator_funcs>())).zf_rewind as *const _ as usize
4668        },
4669        40usize,
4670        concat!(
4671            "Offset of field: ",
4672            stringify!(_zend_class_iterator_funcs),
4673            "::",
4674            stringify!(zf_rewind)
4675        )
4676    );
4677}
4678pub type zend_class_iterator_funcs = _zend_class_iterator_funcs;
4679extern "C" {
4680    pub fn zend_iterator_unwrap(array_ptr: *mut zval) -> *mut zend_object_iterator;
4681}
4682extern "C" {
4683    pub fn zend_iterator_init(iter: *mut zend_object_iterator);
4684}
4685extern "C" {
4686    pub fn zend_iterator_dtor(iter: *mut zend_object_iterator);
4687}
4688extern "C" {
4689    pub fn zend_register_iterator_wrapper();
4690}
4691#[repr(C)]
4692#[derive(Debug, Copy, Clone)]
4693pub struct stat {
4694    pub st_dev: __dev_t,
4695    pub st_ino: __ino_t,
4696    pub st_nlink: __nlink_t,
4697    pub st_mode: __mode_t,
4698    pub st_uid: __uid_t,
4699    pub st_gid: __gid_t,
4700    pub __pad0: ::std::os::raw::c_int,
4701    pub st_rdev: __dev_t,
4702    pub st_size: __off_t,
4703    pub st_blksize: __blksize_t,
4704    pub st_blocks: __blkcnt_t,
4705    pub st_atim: timespec,
4706    pub st_mtim: timespec,
4707    pub st_ctim: timespec,
4708    pub __glibc_reserved: [__syscall_slong_t; 3usize],
4709}
4710#[test]
4711fn bindgen_test_layout_stat() {
4712    assert_eq!(
4713        ::std::mem::size_of::<stat>(),
4714        144usize,
4715        concat!("Size of: ", stringify!(stat))
4716    );
4717    assert_eq!(
4718        ::std::mem::align_of::<stat>(),
4719        8usize,
4720        concat!("Alignment of ", stringify!(stat))
4721    );
4722    assert_eq!(
4723        unsafe { &(*(::std::ptr::null::<stat>())).st_dev as *const _ as usize },
4724        0usize,
4725        concat!(
4726            "Offset of field: ",
4727            stringify!(stat),
4728            "::",
4729            stringify!(st_dev)
4730        )
4731    );
4732    assert_eq!(
4733        unsafe { &(*(::std::ptr::null::<stat>())).st_ino as *const _ as usize },
4734        8usize,
4735        concat!(
4736            "Offset of field: ",
4737            stringify!(stat),
4738            "::",
4739            stringify!(st_ino)
4740        )
4741    );
4742    assert_eq!(
4743        unsafe { &(*(::std::ptr::null::<stat>())).st_nlink as *const _ as usize },
4744        16usize,
4745        concat!(
4746            "Offset of field: ",
4747            stringify!(stat),
4748            "::",
4749            stringify!(st_nlink)
4750        )
4751    );
4752    assert_eq!(
4753        unsafe { &(*(::std::ptr::null::<stat>())).st_mode as *const _ as usize },
4754        24usize,
4755        concat!(
4756            "Offset of field: ",
4757            stringify!(stat),
4758            "::",
4759            stringify!(st_mode)
4760        )
4761    );
4762    assert_eq!(
4763        unsafe { &(*(::std::ptr::null::<stat>())).st_uid as *const _ as usize },
4764        28usize,
4765        concat!(
4766            "Offset of field: ",
4767            stringify!(stat),
4768            "::",
4769            stringify!(st_uid)
4770        )
4771    );
4772    assert_eq!(
4773        unsafe { &(*(::std::ptr::null::<stat>())).st_gid as *const _ as usize },
4774        32usize,
4775        concat!(
4776            "Offset of field: ",
4777            stringify!(stat),
4778            "::",
4779            stringify!(st_gid)
4780        )
4781    );
4782    assert_eq!(
4783        unsafe { &(*(::std::ptr::null::<stat>())).__pad0 as *const _ as usize },
4784        36usize,
4785        concat!(
4786            "Offset of field: ",
4787            stringify!(stat),
4788            "::",
4789            stringify!(__pad0)
4790        )
4791    );
4792    assert_eq!(
4793        unsafe { &(*(::std::ptr::null::<stat>())).st_rdev as *const _ as usize },
4794        40usize,
4795        concat!(
4796            "Offset of field: ",
4797            stringify!(stat),
4798            "::",
4799            stringify!(st_rdev)
4800        )
4801    );
4802    assert_eq!(
4803        unsafe { &(*(::std::ptr::null::<stat>())).st_size as *const _ as usize },
4804        48usize,
4805        concat!(
4806            "Offset of field: ",
4807            stringify!(stat),
4808            "::",
4809            stringify!(st_size)
4810        )
4811    );
4812    assert_eq!(
4813        unsafe { &(*(::std::ptr::null::<stat>())).st_blksize as *const _ as usize },
4814        56usize,
4815        concat!(
4816            "Offset of field: ",
4817            stringify!(stat),
4818            "::",
4819            stringify!(st_blksize)
4820        )
4821    );
4822    assert_eq!(
4823        unsafe { &(*(::std::ptr::null::<stat>())).st_blocks as *const _ as usize },
4824        64usize,
4825        concat!(
4826            "Offset of field: ",
4827            stringify!(stat),
4828            "::",
4829            stringify!(st_blocks)
4830        )
4831    );
4832    assert_eq!(
4833        unsafe { &(*(::std::ptr::null::<stat>())).st_atim as *const _ as usize },
4834        72usize,
4835        concat!(
4836            "Offset of field: ",
4837            stringify!(stat),
4838            "::",
4839            stringify!(st_atim)
4840        )
4841    );
4842    assert_eq!(
4843        unsafe { &(*(::std::ptr::null::<stat>())).st_mtim as *const _ as usize },
4844        88usize,
4845        concat!(
4846            "Offset of field: ",
4847            stringify!(stat),
4848            "::",
4849            stringify!(st_mtim)
4850        )
4851    );
4852    assert_eq!(
4853        unsafe { &(*(::std::ptr::null::<stat>())).st_ctim as *const _ as usize },
4854        104usize,
4855        concat!(
4856            "Offset of field: ",
4857            stringify!(stat),
4858            "::",
4859            stringify!(st_ctim)
4860        )
4861    );
4862    assert_eq!(
4863        unsafe { &(*(::std::ptr::null::<stat>())).__glibc_reserved as *const _ as usize },
4864        120usize,
4865        concat!(
4866            "Offset of field: ",
4867            stringify!(stat),
4868            "::",
4869            stringify!(__glibc_reserved)
4870        )
4871    );
4872}
4873pub type zend_stream_fsizer_t =
4874    ::std::option::Option<unsafe extern "C" fn(handle: *mut ::std::os::raw::c_void) -> size_t>;
4875pub type zend_stream_reader_t = ::std::option::Option<
4876    unsafe extern "C" fn(
4877        handle: *mut ::std::os::raw::c_void,
4878        buf: *mut ::std::os::raw::c_char,
4879        len: size_t,
4880    ) -> size_t,
4881>;
4882pub type zend_stream_closer_t =
4883    ::std::option::Option<unsafe extern "C" fn(handle: *mut ::std::os::raw::c_void)>;
4884pub const zend_stream_type_ZEND_HANDLE_FILENAME: zend_stream_type = 0;
4885pub const zend_stream_type_ZEND_HANDLE_FD: zend_stream_type = 1;
4886pub const zend_stream_type_ZEND_HANDLE_FP: zend_stream_type = 2;
4887pub const zend_stream_type_ZEND_HANDLE_STREAM: zend_stream_type = 3;
4888pub const zend_stream_type_ZEND_HANDLE_MAPPED: zend_stream_type = 4;
4889pub type zend_stream_type = ::std::os::raw::c_uint;
4890#[repr(C)]
4891#[derive(Debug, Copy, Clone)]
4892pub struct _zend_mmap {
4893    pub len: size_t,
4894    pub pos: size_t,
4895    pub map: *mut ::std::os::raw::c_void,
4896    pub buf: *mut ::std::os::raw::c_char,
4897    pub old_handle: *mut ::std::os::raw::c_void,
4898    pub old_closer: zend_stream_closer_t,
4899}
4900#[test]
4901fn bindgen_test_layout__zend_mmap() {
4902    assert_eq!(
4903        ::std::mem::size_of::<_zend_mmap>(),
4904        48usize,
4905        concat!("Size of: ", stringify!(_zend_mmap))
4906    );
4907    assert_eq!(
4908        ::std::mem::align_of::<_zend_mmap>(),
4909        8usize,
4910        concat!("Alignment of ", stringify!(_zend_mmap))
4911    );
4912    assert_eq!(
4913        unsafe { &(*(::std::ptr::null::<_zend_mmap>())).len as *const _ as usize },
4914        0usize,
4915        concat!(
4916            "Offset of field: ",
4917            stringify!(_zend_mmap),
4918            "::",
4919            stringify!(len)
4920        )
4921    );
4922    assert_eq!(
4923        unsafe { &(*(::std::ptr::null::<_zend_mmap>())).pos as *const _ as usize },
4924        8usize,
4925        concat!(
4926            "Offset of field: ",
4927            stringify!(_zend_mmap),
4928            "::",
4929            stringify!(pos)
4930        )
4931    );
4932    assert_eq!(
4933        unsafe { &(*(::std::ptr::null::<_zend_mmap>())).map as *const _ as usize },
4934        16usize,
4935        concat!(
4936            "Offset of field: ",
4937            stringify!(_zend_mmap),
4938            "::",
4939            stringify!(map)
4940        )
4941    );
4942    assert_eq!(
4943        unsafe { &(*(::std::ptr::null::<_zend_mmap>())).buf as *const _ as usize },
4944        24usize,
4945        concat!(
4946            "Offset of field: ",
4947            stringify!(_zend_mmap),
4948            "::",
4949            stringify!(buf)
4950        )
4951    );
4952    assert_eq!(
4953        unsafe { &(*(::std::ptr::null::<_zend_mmap>())).old_handle as *const _ as usize },
4954        32usize,
4955        concat!(
4956            "Offset of field: ",
4957            stringify!(_zend_mmap),
4958            "::",
4959            stringify!(old_handle)
4960        )
4961    );
4962    assert_eq!(
4963        unsafe { &(*(::std::ptr::null::<_zend_mmap>())).old_closer as *const _ as usize },
4964        40usize,
4965        concat!(
4966            "Offset of field: ",
4967            stringify!(_zend_mmap),
4968            "::",
4969            stringify!(old_closer)
4970        )
4971    );
4972}
4973pub type zend_mmap = _zend_mmap;
4974#[repr(C)]
4975#[derive(Debug, Copy, Clone)]
4976pub struct _zend_stream {
4977    pub handle: *mut ::std::os::raw::c_void,
4978    pub isatty: ::std::os::raw::c_int,
4979    pub mmap: zend_mmap,
4980    pub reader: zend_stream_reader_t,
4981    pub fsizer: zend_stream_fsizer_t,
4982    pub closer: zend_stream_closer_t,
4983}
4984#[test]
4985fn bindgen_test_layout__zend_stream() {
4986    assert_eq!(
4987        ::std::mem::size_of::<_zend_stream>(),
4988        88usize,
4989        concat!("Size of: ", stringify!(_zend_stream))
4990    );
4991    assert_eq!(
4992        ::std::mem::align_of::<_zend_stream>(),
4993        8usize,
4994        concat!("Alignment of ", stringify!(_zend_stream))
4995    );
4996    assert_eq!(
4997        unsafe { &(*(::std::ptr::null::<_zend_stream>())).handle as *const _ as usize },
4998        0usize,
4999        concat!(
5000            "Offset of field: ",
5001            stringify!(_zend_stream),
5002            "::",
5003            stringify!(handle)
5004        )
5005    );
5006    assert_eq!(
5007        unsafe { &(*(::std::ptr::null::<_zend_stream>())).isatty as *const _ as usize },
5008        8usize,
5009        concat!(
5010            "Offset of field: ",
5011            stringify!(_zend_stream),
5012            "::",
5013            stringify!(isatty)
5014        )
5015    );
5016    assert_eq!(
5017        unsafe { &(*(::std::ptr::null::<_zend_stream>())).mmap as *const _ as usize },
5018        16usize,
5019        concat!(
5020            "Offset of field: ",
5021            stringify!(_zend_stream),
5022            "::",
5023            stringify!(mmap)
5024        )
5025    );
5026    assert_eq!(
5027        unsafe { &(*(::std::ptr::null::<_zend_stream>())).reader as *const _ as usize },
5028        64usize,
5029        concat!(
5030            "Offset of field: ",
5031            stringify!(_zend_stream),
5032            "::",
5033            stringify!(reader)
5034        )
5035    );
5036    assert_eq!(
5037        unsafe { &(*(::std::ptr::null::<_zend_stream>())).fsizer as *const _ as usize },
5038        72usize,
5039        concat!(
5040            "Offset of field: ",
5041            stringify!(_zend_stream),
5042            "::",
5043            stringify!(fsizer)
5044        )
5045    );
5046    assert_eq!(
5047        unsafe { &(*(::std::ptr::null::<_zend_stream>())).closer as *const _ as usize },
5048        80usize,
5049        concat!(
5050            "Offset of field: ",
5051            stringify!(_zend_stream),
5052            "::",
5053            stringify!(closer)
5054        )
5055    );
5056}
5057pub type zend_stream = _zend_stream;
5058#[repr(C)]
5059#[derive(Copy, Clone)]
5060pub struct _zend_file_handle {
5061    pub handle: _zend_file_handle__bindgen_ty_1,
5062    pub filename: *const ::std::os::raw::c_char,
5063    pub opened_path: *mut zend_string,
5064    pub type_: zend_stream_type,
5065    pub free_filename: zend_bool,
5066}
5067#[repr(C)]
5068#[derive(Copy, Clone)]
5069pub union _zend_file_handle__bindgen_ty_1 {
5070    pub fd: ::std::os::raw::c_int,
5071    pub fp: *mut FILE,
5072    pub stream: zend_stream,
5073    _bindgen_union_align: [u64; 11usize],
5074}
5075#[test]
5076fn bindgen_test_layout__zend_file_handle__bindgen_ty_1() {
5077    assert_eq!(
5078        ::std::mem::size_of::<_zend_file_handle__bindgen_ty_1>(),
5079        88usize,
5080        concat!("Size of: ", stringify!(_zend_file_handle__bindgen_ty_1))
5081    );
5082    assert_eq!(
5083        ::std::mem::align_of::<_zend_file_handle__bindgen_ty_1>(),
5084        8usize,
5085        concat!("Alignment of ", stringify!(_zend_file_handle__bindgen_ty_1))
5086    );
5087    assert_eq!(
5088        unsafe {
5089            &(*(::std::ptr::null::<_zend_file_handle__bindgen_ty_1>())).fd as *const _ as usize
5090        },
5091        0usize,
5092        concat!(
5093            "Offset of field: ",
5094            stringify!(_zend_file_handle__bindgen_ty_1),
5095            "::",
5096            stringify!(fd)
5097        )
5098    );
5099    assert_eq!(
5100        unsafe {
5101            &(*(::std::ptr::null::<_zend_file_handle__bindgen_ty_1>())).fp as *const _ as usize
5102        },
5103        0usize,
5104        concat!(
5105            "Offset of field: ",
5106            stringify!(_zend_file_handle__bindgen_ty_1),
5107            "::",
5108            stringify!(fp)
5109        )
5110    );
5111    assert_eq!(
5112        unsafe {
5113            &(*(::std::ptr::null::<_zend_file_handle__bindgen_ty_1>())).stream as *const _ as usize
5114        },
5115        0usize,
5116        concat!(
5117            "Offset of field: ",
5118            stringify!(_zend_file_handle__bindgen_ty_1),
5119            "::",
5120            stringify!(stream)
5121        )
5122    );
5123}
5124#[test]
5125fn bindgen_test_layout__zend_file_handle() {
5126    assert_eq!(
5127        ::std::mem::size_of::<_zend_file_handle>(),
5128        112usize,
5129        concat!("Size of: ", stringify!(_zend_file_handle))
5130    );
5131    assert_eq!(
5132        ::std::mem::align_of::<_zend_file_handle>(),
5133        8usize,
5134        concat!("Alignment of ", stringify!(_zend_file_handle))
5135    );
5136    assert_eq!(
5137        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).handle as *const _ as usize },
5138        0usize,
5139        concat!(
5140            "Offset of field: ",
5141            stringify!(_zend_file_handle),
5142            "::",
5143            stringify!(handle)
5144        )
5145    );
5146    assert_eq!(
5147        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).filename as *const _ as usize },
5148        88usize,
5149        concat!(
5150            "Offset of field: ",
5151            stringify!(_zend_file_handle),
5152            "::",
5153            stringify!(filename)
5154        )
5155    );
5156    assert_eq!(
5157        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).opened_path as *const _ as usize },
5158        96usize,
5159        concat!(
5160            "Offset of field: ",
5161            stringify!(_zend_file_handle),
5162            "::",
5163            stringify!(opened_path)
5164        )
5165    );
5166    assert_eq!(
5167        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).type_ as *const _ as usize },
5168        104usize,
5169        concat!(
5170            "Offset of field: ",
5171            stringify!(_zend_file_handle),
5172            "::",
5173            stringify!(type_)
5174        )
5175    );
5176    assert_eq!(
5177        unsafe { &(*(::std::ptr::null::<_zend_file_handle>())).free_filename as *const _ as usize },
5178        108usize,
5179        concat!(
5180            "Offset of field: ",
5181            stringify!(_zend_file_handle),
5182            "::",
5183            stringify!(free_filename)
5184        )
5185    );
5186}
5187pub type zend_file_handle = _zend_file_handle;
5188extern "C" {
5189    pub fn zend_stream_open(
5190        filename: *const ::std::os::raw::c_char,
5191        handle: *mut zend_file_handle,
5192    ) -> ::std::os::raw::c_int;
5193}
5194extern "C" {
5195    pub fn zend_stream_fixup(
5196        file_handle: *mut zend_file_handle,
5197        buf: *mut *mut ::std::os::raw::c_char,
5198        len: *mut size_t,
5199    ) -> ::std::os::raw::c_int;
5200}
5201extern "C" {
5202    pub fn zend_file_handle_dtor(fh: *mut zend_file_handle);
5203}
5204extern "C" {
5205    pub fn zend_compare_file_handles(
5206        fh1: *mut zend_file_handle,
5207        fh2: *mut zend_file_handle,
5208    ) -> ::std::os::raw::c_int;
5209}
5210pub type zend_stat_t = stat;
5211#[repr(C)]
5212#[derive(Debug, Copy, Clone)]
5213pub struct smart_str {
5214    pub s: *mut zend_string,
5215    pub a: size_t,
5216}
5217#[test]
5218fn bindgen_test_layout_smart_str() {
5219    assert_eq!(
5220        ::std::mem::size_of::<smart_str>(),
5221        16usize,
5222        concat!("Size of: ", stringify!(smart_str))
5223    );
5224    assert_eq!(
5225        ::std::mem::align_of::<smart_str>(),
5226        8usize,
5227        concat!("Alignment of ", stringify!(smart_str))
5228    );
5229    assert_eq!(
5230        unsafe { &(*(::std::ptr::null::<smart_str>())).s as *const _ as usize },
5231        0usize,
5232        concat!(
5233            "Offset of field: ",
5234            stringify!(smart_str),
5235            "::",
5236            stringify!(s)
5237        )
5238    );
5239    assert_eq!(
5240        unsafe { &(*(::std::ptr::null::<smart_str>())).a as *const _ as usize },
5241        8usize,
5242        concat!(
5243            "Offset of field: ",
5244            stringify!(smart_str),
5245            "::",
5246            stringify!(a)
5247        )
5248    );
5249}
5250#[repr(C)]
5251#[derive(Debug, Copy, Clone)]
5252pub struct smart_string {
5253    pub c: *mut ::std::os::raw::c_char,
5254    pub len: size_t,
5255    pub a: size_t,
5256}
5257#[test]
5258fn bindgen_test_layout_smart_string() {
5259    assert_eq!(
5260        ::std::mem::size_of::<smart_string>(),
5261        24usize,
5262        concat!("Size of: ", stringify!(smart_string))
5263    );
5264    assert_eq!(
5265        ::std::mem::align_of::<smart_string>(),
5266        8usize,
5267        concat!("Alignment of ", stringify!(smart_string))
5268    );
5269    assert_eq!(
5270        unsafe { &(*(::std::ptr::null::<smart_string>())).c as *const _ as usize },
5271        0usize,
5272        concat!(
5273            "Offset of field: ",
5274            stringify!(smart_string),
5275            "::",
5276            stringify!(c)
5277        )
5278    );
5279    assert_eq!(
5280        unsafe { &(*(::std::ptr::null::<smart_string>())).len as *const _ as usize },
5281        8usize,
5282        concat!(
5283            "Offset of field: ",
5284            stringify!(smart_string),
5285            "::",
5286            stringify!(len)
5287        )
5288    );
5289    assert_eq!(
5290        unsafe { &(*(::std::ptr::null::<smart_string>())).a as *const _ as usize },
5291        16usize,
5292        concat!(
5293            "Offset of field: ",
5294            stringify!(smart_string),
5295            "::",
5296            stringify!(a)
5297        )
5298    );
5299}
5300#[repr(C)]
5301#[derive(Copy, Clone)]
5302pub union sigval {
5303    pub sival_int: ::std::os::raw::c_int,
5304    pub sival_ptr: *mut ::std::os::raw::c_void,
5305    _bindgen_union_align: u64,
5306}
5307#[test]
5308fn bindgen_test_layout_sigval() {
5309    assert_eq!(
5310        ::std::mem::size_of::<sigval>(),
5311        8usize,
5312        concat!("Size of: ", stringify!(sigval))
5313    );
5314    assert_eq!(
5315        ::std::mem::align_of::<sigval>(),
5316        8usize,
5317        concat!("Alignment of ", stringify!(sigval))
5318    );
5319    assert_eq!(
5320        unsafe { &(*(::std::ptr::null::<sigval>())).sival_int as *const _ as usize },
5321        0usize,
5322        concat!(
5323            "Offset of field: ",
5324            stringify!(sigval),
5325            "::",
5326            stringify!(sival_int)
5327        )
5328    );
5329    assert_eq!(
5330        unsafe { &(*(::std::ptr::null::<sigval>())).sival_ptr as *const _ as usize },
5331        0usize,
5332        concat!(
5333            "Offset of field: ",
5334            stringify!(sigval),
5335            "::",
5336            stringify!(sival_ptr)
5337        )
5338    );
5339}
5340pub type __sigval_t = sigval;
5341#[repr(C)]
5342#[derive(Copy, Clone)]
5343pub struct siginfo_t {
5344    pub si_signo: ::std::os::raw::c_int,
5345    pub si_errno: ::std::os::raw::c_int,
5346    pub si_code: ::std::os::raw::c_int,
5347    pub __pad0: ::std::os::raw::c_int,
5348    pub _sifields: siginfo_t__bindgen_ty_1,
5349}
5350#[repr(C)]
5351#[derive(Copy, Clone)]
5352pub union siginfo_t__bindgen_ty_1 {
5353    pub _pad: [::std::os::raw::c_int; 28usize],
5354    pub _kill: siginfo_t__bindgen_ty_1__bindgen_ty_1,
5355    pub _timer: siginfo_t__bindgen_ty_1__bindgen_ty_2,
5356    pub _rt: siginfo_t__bindgen_ty_1__bindgen_ty_3,
5357    pub _sigchld: siginfo_t__bindgen_ty_1__bindgen_ty_4,
5358    pub _sigfault: siginfo_t__bindgen_ty_1__bindgen_ty_5,
5359    pub _sigpoll: siginfo_t__bindgen_ty_1__bindgen_ty_6,
5360    pub _sigsys: siginfo_t__bindgen_ty_1__bindgen_ty_7,
5361    _bindgen_union_align: [u64; 14usize],
5362}
5363#[repr(C)]
5364#[derive(Debug, Copy, Clone)]
5365pub struct siginfo_t__bindgen_ty_1__bindgen_ty_1 {
5366    pub si_pid: __pid_t,
5367    pub si_uid: __uid_t,
5368}
5369#[test]
5370fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_1() {
5371    assert_eq!(
5372        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_1>(),
5373        8usize,
5374        concat!(
5375            "Size of: ",
5376            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_1)
5377        )
5378    );
5379    assert_eq!(
5380        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_1>(),
5381        4usize,
5382        concat!(
5383            "Alignment of ",
5384            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_1)
5385        )
5386    );
5387    assert_eq!(
5388        unsafe {
5389            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_1>())).si_pid as *const _
5390                as usize
5391        },
5392        0usize,
5393        concat!(
5394            "Offset of field: ",
5395            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_1),
5396            "::",
5397            stringify!(si_pid)
5398        )
5399    );
5400    assert_eq!(
5401        unsafe {
5402            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_1>())).si_uid as *const _
5403                as usize
5404        },
5405        4usize,
5406        concat!(
5407            "Offset of field: ",
5408            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_1),
5409            "::",
5410            stringify!(si_uid)
5411        )
5412    );
5413}
5414#[repr(C)]
5415#[derive(Copy, Clone)]
5416pub struct siginfo_t__bindgen_ty_1__bindgen_ty_2 {
5417    pub si_tid: ::std::os::raw::c_int,
5418    pub si_overrun: ::std::os::raw::c_int,
5419    pub si_sigval: __sigval_t,
5420}
5421#[test]
5422fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_2() {
5423    assert_eq!(
5424        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_2>(),
5425        16usize,
5426        concat!(
5427            "Size of: ",
5428            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_2)
5429        )
5430    );
5431    assert_eq!(
5432        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_2>(),
5433        8usize,
5434        concat!(
5435            "Alignment of ",
5436            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_2)
5437        )
5438    );
5439    assert_eq!(
5440        unsafe {
5441            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_2>())).si_tid as *const _
5442                as usize
5443        },
5444        0usize,
5445        concat!(
5446            "Offset of field: ",
5447            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_2),
5448            "::",
5449            stringify!(si_tid)
5450        )
5451    );
5452    assert_eq!(
5453        unsafe {
5454            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_2>())).si_overrun as *const _
5455                as usize
5456        },
5457        4usize,
5458        concat!(
5459            "Offset of field: ",
5460            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_2),
5461            "::",
5462            stringify!(si_overrun)
5463        )
5464    );
5465    assert_eq!(
5466        unsafe {
5467            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_2>())).si_sigval as *const _
5468                as usize
5469        },
5470        8usize,
5471        concat!(
5472            "Offset of field: ",
5473            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_2),
5474            "::",
5475            stringify!(si_sigval)
5476        )
5477    );
5478}
5479#[repr(C)]
5480#[derive(Copy, Clone)]
5481pub struct siginfo_t__bindgen_ty_1__bindgen_ty_3 {
5482    pub si_pid: __pid_t,
5483    pub si_uid: __uid_t,
5484    pub si_sigval: __sigval_t,
5485}
5486#[test]
5487fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_3() {
5488    assert_eq!(
5489        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_3>(),
5490        16usize,
5491        concat!(
5492            "Size of: ",
5493            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_3)
5494        )
5495    );
5496    assert_eq!(
5497        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_3>(),
5498        8usize,
5499        concat!(
5500            "Alignment of ",
5501            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_3)
5502        )
5503    );
5504    assert_eq!(
5505        unsafe {
5506            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_3>())).si_pid as *const _
5507                as usize
5508        },
5509        0usize,
5510        concat!(
5511            "Offset of field: ",
5512            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_3),
5513            "::",
5514            stringify!(si_pid)
5515        )
5516    );
5517    assert_eq!(
5518        unsafe {
5519            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_3>())).si_uid as *const _
5520                as usize
5521        },
5522        4usize,
5523        concat!(
5524            "Offset of field: ",
5525            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_3),
5526            "::",
5527            stringify!(si_uid)
5528        )
5529    );
5530    assert_eq!(
5531        unsafe {
5532            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_3>())).si_sigval as *const _
5533                as usize
5534        },
5535        8usize,
5536        concat!(
5537            "Offset of field: ",
5538            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_3),
5539            "::",
5540            stringify!(si_sigval)
5541        )
5542    );
5543}
5544#[repr(C)]
5545#[derive(Debug, Copy, Clone)]
5546pub struct siginfo_t__bindgen_ty_1__bindgen_ty_4 {
5547    pub si_pid: __pid_t,
5548    pub si_uid: __uid_t,
5549    pub si_status: ::std::os::raw::c_int,
5550    pub si_utime: __clock_t,
5551    pub si_stime: __clock_t,
5552}
5553#[test]
5554fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_4() {
5555    assert_eq!(
5556        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_4>(),
5557        32usize,
5558        concat!(
5559            "Size of: ",
5560            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4)
5561        )
5562    );
5563    assert_eq!(
5564        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_4>(),
5565        8usize,
5566        concat!(
5567            "Alignment of ",
5568            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4)
5569        )
5570    );
5571    assert_eq!(
5572        unsafe {
5573            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_4>())).si_pid as *const _
5574                as usize
5575        },
5576        0usize,
5577        concat!(
5578            "Offset of field: ",
5579            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4),
5580            "::",
5581            stringify!(si_pid)
5582        )
5583    );
5584    assert_eq!(
5585        unsafe {
5586            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_4>())).si_uid as *const _
5587                as usize
5588        },
5589        4usize,
5590        concat!(
5591            "Offset of field: ",
5592            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4),
5593            "::",
5594            stringify!(si_uid)
5595        )
5596    );
5597    assert_eq!(
5598        unsafe {
5599            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_4>())).si_status as *const _
5600                as usize
5601        },
5602        8usize,
5603        concat!(
5604            "Offset of field: ",
5605            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4),
5606            "::",
5607            stringify!(si_status)
5608        )
5609    );
5610    assert_eq!(
5611        unsafe {
5612            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_4>())).si_utime as *const _
5613                as usize
5614        },
5615        16usize,
5616        concat!(
5617            "Offset of field: ",
5618            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4),
5619            "::",
5620            stringify!(si_utime)
5621        )
5622    );
5623    assert_eq!(
5624        unsafe {
5625            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_4>())).si_stime as *const _
5626                as usize
5627        },
5628        24usize,
5629        concat!(
5630            "Offset of field: ",
5631            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_4),
5632            "::",
5633            stringify!(si_stime)
5634        )
5635    );
5636}
5637#[repr(C)]
5638#[derive(Copy, Clone)]
5639pub struct siginfo_t__bindgen_ty_1__bindgen_ty_5 {
5640    pub si_addr: *mut ::std::os::raw::c_void,
5641    pub si_addr_lsb: ::std::os::raw::c_short,
5642    pub _bounds: siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1,
5643}
5644#[repr(C)]
5645#[derive(Copy, Clone)]
5646pub union siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1 {
5647    pub _addr_bnd: siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1,
5648    pub _pkey: __uint32_t,
5649    _bindgen_union_align: [u64; 2usize],
5650}
5651#[repr(C)]
5652#[derive(Debug, Copy, Clone)]
5653pub struct siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 {
5654    pub _lower: *mut ::std::os::raw::c_void,
5655    pub _upper: *mut ::std::os::raw::c_void,
5656}
5657#[test]
5658fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1() {
5659    assert_eq!(
5660        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1>(),
5661        16usize,
5662        concat!(
5663            "Size of: ",
5664            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1)
5665        )
5666    );
5667    assert_eq!(
5668        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1>(),
5669        8usize,
5670        concat!(
5671            "Alignment of ",
5672            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1)
5673        )
5674    );
5675    assert_eq!(
5676        unsafe {
5677            &(*(::std::ptr::null::<
5678                siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1,
5679            >()))
5680            ._lower as *const _ as usize
5681        },
5682        0usize,
5683        concat!(
5684            "Offset of field: ",
5685            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1),
5686            "::",
5687            stringify!(_lower)
5688        )
5689    );
5690    assert_eq!(
5691        unsafe {
5692            &(*(::std::ptr::null::<
5693                siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1,
5694            >()))
5695            ._upper as *const _ as usize
5696        },
5697        8usize,
5698        concat!(
5699            "Offset of field: ",
5700            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1),
5701            "::",
5702            stringify!(_upper)
5703        )
5704    );
5705}
5706#[test]
5707fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1() {
5708    assert_eq!(
5709        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1>(),
5710        16usize,
5711        concat!(
5712            "Size of: ",
5713            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1)
5714        )
5715    );
5716    assert_eq!(
5717        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1>(),
5718        8usize,
5719        concat!(
5720            "Alignment of ",
5721            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1)
5722        )
5723    );
5724    assert_eq!(
5725        unsafe {
5726            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1>()))
5727                ._addr_bnd as *const _ as usize
5728        },
5729        0usize,
5730        concat!(
5731            "Offset of field: ",
5732            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1),
5733            "::",
5734            stringify!(_addr_bnd)
5735        )
5736    );
5737    assert_eq!(
5738        unsafe {
5739            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1>()))._pkey
5740                as *const _ as usize
5741        },
5742        0usize,
5743        concat!(
5744            "Offset of field: ",
5745            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1),
5746            "::",
5747            stringify!(_pkey)
5748        )
5749    );
5750}
5751#[test]
5752fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_5() {
5753    assert_eq!(
5754        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5>(),
5755        32usize,
5756        concat!(
5757            "Size of: ",
5758            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5)
5759        )
5760    );
5761    assert_eq!(
5762        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_5>(),
5763        8usize,
5764        concat!(
5765            "Alignment of ",
5766            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5)
5767        )
5768    );
5769    assert_eq!(
5770        unsafe {
5771            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_5>())).si_addr as *const _
5772                as usize
5773        },
5774        0usize,
5775        concat!(
5776            "Offset of field: ",
5777            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5),
5778            "::",
5779            stringify!(si_addr)
5780        )
5781    );
5782    assert_eq!(
5783        unsafe {
5784            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_5>())).si_addr_lsb
5785                as *const _ as usize
5786        },
5787        8usize,
5788        concat!(
5789            "Offset of field: ",
5790            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5),
5791            "::",
5792            stringify!(si_addr_lsb)
5793        )
5794    );
5795    assert_eq!(
5796        unsafe {
5797            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_5>()))._bounds as *const _
5798                as usize
5799        },
5800        16usize,
5801        concat!(
5802            "Offset of field: ",
5803            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_5),
5804            "::",
5805            stringify!(_bounds)
5806        )
5807    );
5808}
5809#[repr(C)]
5810#[derive(Debug, Copy, Clone)]
5811pub struct siginfo_t__bindgen_ty_1__bindgen_ty_6 {
5812    pub si_band: ::std::os::raw::c_long,
5813    pub si_fd: ::std::os::raw::c_int,
5814}
5815#[test]
5816fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_6() {
5817    assert_eq!(
5818        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_6>(),
5819        16usize,
5820        concat!(
5821            "Size of: ",
5822            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_6)
5823        )
5824    );
5825    assert_eq!(
5826        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_6>(),
5827        8usize,
5828        concat!(
5829            "Alignment of ",
5830            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_6)
5831        )
5832    );
5833    assert_eq!(
5834        unsafe {
5835            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_6>())).si_band as *const _
5836                as usize
5837        },
5838        0usize,
5839        concat!(
5840            "Offset of field: ",
5841            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_6),
5842            "::",
5843            stringify!(si_band)
5844        )
5845    );
5846    assert_eq!(
5847        unsafe {
5848            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_6>())).si_fd as *const _
5849                as usize
5850        },
5851        8usize,
5852        concat!(
5853            "Offset of field: ",
5854            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_6),
5855            "::",
5856            stringify!(si_fd)
5857        )
5858    );
5859}
5860#[repr(C)]
5861#[derive(Debug, Copy, Clone)]
5862pub struct siginfo_t__bindgen_ty_1__bindgen_ty_7 {
5863    pub _call_addr: *mut ::std::os::raw::c_void,
5864    pub _syscall: ::std::os::raw::c_int,
5865    pub _arch: ::std::os::raw::c_uint,
5866}
5867#[test]
5868fn bindgen_test_layout_siginfo_t__bindgen_ty_1__bindgen_ty_7() {
5869    assert_eq!(
5870        ::std::mem::size_of::<siginfo_t__bindgen_ty_1__bindgen_ty_7>(),
5871        16usize,
5872        concat!(
5873            "Size of: ",
5874            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_7)
5875        )
5876    );
5877    assert_eq!(
5878        ::std::mem::align_of::<siginfo_t__bindgen_ty_1__bindgen_ty_7>(),
5879        8usize,
5880        concat!(
5881            "Alignment of ",
5882            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_7)
5883        )
5884    );
5885    assert_eq!(
5886        unsafe {
5887            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_7>()))._call_addr as *const _
5888                as usize
5889        },
5890        0usize,
5891        concat!(
5892            "Offset of field: ",
5893            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_7),
5894            "::",
5895            stringify!(_call_addr)
5896        )
5897    );
5898    assert_eq!(
5899        unsafe {
5900            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_7>()))._syscall as *const _
5901                as usize
5902        },
5903        8usize,
5904        concat!(
5905            "Offset of field: ",
5906            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_7),
5907            "::",
5908            stringify!(_syscall)
5909        )
5910    );
5911    assert_eq!(
5912        unsafe {
5913            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1__bindgen_ty_7>()))._arch as *const _
5914                as usize
5915        },
5916        12usize,
5917        concat!(
5918            "Offset of field: ",
5919            stringify!(siginfo_t__bindgen_ty_1__bindgen_ty_7),
5920            "::",
5921            stringify!(_arch)
5922        )
5923    );
5924}
5925#[test]
5926fn bindgen_test_layout_siginfo_t__bindgen_ty_1() {
5927    assert_eq!(
5928        ::std::mem::size_of::<siginfo_t__bindgen_ty_1>(),
5929        112usize,
5930        concat!("Size of: ", stringify!(siginfo_t__bindgen_ty_1))
5931    );
5932    assert_eq!(
5933        ::std::mem::align_of::<siginfo_t__bindgen_ty_1>(),
5934        8usize,
5935        concat!("Alignment of ", stringify!(siginfo_t__bindgen_ty_1))
5936    );
5937    assert_eq!(
5938        unsafe { &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1>()))._pad as *const _ as usize },
5939        0usize,
5940        concat!(
5941            "Offset of field: ",
5942            stringify!(siginfo_t__bindgen_ty_1),
5943            "::",
5944            stringify!(_pad)
5945        )
5946    );
5947    assert_eq!(
5948        unsafe { &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1>()))._kill as *const _ as usize },
5949        0usize,
5950        concat!(
5951            "Offset of field: ",
5952            stringify!(siginfo_t__bindgen_ty_1),
5953            "::",
5954            stringify!(_kill)
5955        )
5956    );
5957    assert_eq!(
5958        unsafe { &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1>()))._timer as *const _ as usize },
5959        0usize,
5960        concat!(
5961            "Offset of field: ",
5962            stringify!(siginfo_t__bindgen_ty_1),
5963            "::",
5964            stringify!(_timer)
5965        )
5966    );
5967    assert_eq!(
5968        unsafe { &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1>()))._rt as *const _ as usize },
5969        0usize,
5970        concat!(
5971            "Offset of field: ",
5972            stringify!(siginfo_t__bindgen_ty_1),
5973            "::",
5974            stringify!(_rt)
5975        )
5976    );
5977    assert_eq!(
5978        unsafe {
5979            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1>()))._sigchld as *const _ as usize
5980        },
5981        0usize,
5982        concat!(
5983            "Offset of field: ",
5984            stringify!(siginfo_t__bindgen_ty_1),
5985            "::",
5986            stringify!(_sigchld)
5987        )
5988    );
5989    assert_eq!(
5990        unsafe {
5991            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1>()))._sigfault as *const _ as usize
5992        },
5993        0usize,
5994        concat!(
5995            "Offset of field: ",
5996            stringify!(siginfo_t__bindgen_ty_1),
5997            "::",
5998            stringify!(_sigfault)
5999        )
6000    );
6001    assert_eq!(
6002        unsafe {
6003            &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1>()))._sigpoll as *const _ as usize
6004        },
6005        0usize,
6006        concat!(
6007            "Offset of field: ",
6008            stringify!(siginfo_t__bindgen_ty_1),
6009            "::",
6010            stringify!(_sigpoll)
6011        )
6012    );
6013    assert_eq!(
6014        unsafe { &(*(::std::ptr::null::<siginfo_t__bindgen_ty_1>()))._sigsys as *const _ as usize },
6015        0usize,
6016        concat!(
6017            "Offset of field: ",
6018            stringify!(siginfo_t__bindgen_ty_1),
6019            "::",
6020            stringify!(_sigsys)
6021        )
6022    );
6023}
6024#[test]
6025fn bindgen_test_layout_siginfo_t() {
6026    assert_eq!(
6027        ::std::mem::size_of::<siginfo_t>(),
6028        128usize,
6029        concat!("Size of: ", stringify!(siginfo_t))
6030    );
6031    assert_eq!(
6032        ::std::mem::align_of::<siginfo_t>(),
6033        8usize,
6034        concat!("Alignment of ", stringify!(siginfo_t))
6035    );
6036    assert_eq!(
6037        unsafe { &(*(::std::ptr::null::<siginfo_t>())).si_signo as *const _ as usize },
6038        0usize,
6039        concat!(
6040            "Offset of field: ",
6041            stringify!(siginfo_t),
6042            "::",
6043            stringify!(si_signo)
6044        )
6045    );
6046    assert_eq!(
6047        unsafe { &(*(::std::ptr::null::<siginfo_t>())).si_errno as *const _ as usize },
6048        4usize,
6049        concat!(
6050            "Offset of field: ",
6051            stringify!(siginfo_t),
6052            "::",
6053            stringify!(si_errno)
6054        )
6055    );
6056    assert_eq!(
6057        unsafe { &(*(::std::ptr::null::<siginfo_t>())).si_code as *const _ as usize },
6058        8usize,
6059        concat!(
6060            "Offset of field: ",
6061            stringify!(siginfo_t),
6062            "::",
6063            stringify!(si_code)
6064        )
6065    );
6066    assert_eq!(
6067        unsafe { &(*(::std::ptr::null::<siginfo_t>())).__pad0 as *const _ as usize },
6068        12usize,
6069        concat!(
6070            "Offset of field: ",
6071            stringify!(siginfo_t),
6072            "::",
6073            stringify!(__pad0)
6074        )
6075    );
6076    assert_eq!(
6077        unsafe { &(*(::std::ptr::null::<siginfo_t>()))._sifields as *const _ as usize },
6078        16usize,
6079        concat!(
6080            "Offset of field: ",
6081            stringify!(siginfo_t),
6082            "::",
6083            stringify!(_sifields)
6084        )
6085    );
6086}
6087pub type __sighandler_t = ::std::option::Option<unsafe extern "C" fn(arg1: ::std::os::raw::c_int)>;
6088#[repr(C)]
6089#[derive(Copy, Clone)]
6090pub struct sigaction {
6091    pub __sigaction_handler: sigaction__bindgen_ty_1,
6092    pub sa_mask: __sigset_t,
6093    pub sa_flags: ::std::os::raw::c_int,
6094    pub sa_restorer: ::std::option::Option<unsafe extern "C" fn()>,
6095}
6096#[repr(C)]
6097#[derive(Copy, Clone)]
6098pub union sigaction__bindgen_ty_1 {
6099    pub sa_handler: __sighandler_t,
6100    pub sa_sigaction: ::std::option::Option<
6101        unsafe extern "C" fn(
6102            arg1: ::std::os::raw::c_int,
6103            arg2: *mut siginfo_t,
6104            arg3: *mut ::std::os::raw::c_void,
6105        ),
6106    >,
6107    _bindgen_union_align: u64,
6108}
6109#[test]
6110fn bindgen_test_layout_sigaction__bindgen_ty_1() {
6111    assert_eq!(
6112        ::std::mem::size_of::<sigaction__bindgen_ty_1>(),
6113        8usize,
6114        concat!("Size of: ", stringify!(sigaction__bindgen_ty_1))
6115    );
6116    assert_eq!(
6117        ::std::mem::align_of::<sigaction__bindgen_ty_1>(),
6118        8usize,
6119        concat!("Alignment of ", stringify!(sigaction__bindgen_ty_1))
6120    );
6121    assert_eq!(
6122        unsafe {
6123            &(*(::std::ptr::null::<sigaction__bindgen_ty_1>())).sa_handler as *const _ as usize
6124        },
6125        0usize,
6126        concat!(
6127            "Offset of field: ",
6128            stringify!(sigaction__bindgen_ty_1),
6129            "::",
6130            stringify!(sa_handler)
6131        )
6132    );
6133    assert_eq!(
6134        unsafe {
6135            &(*(::std::ptr::null::<sigaction__bindgen_ty_1>())).sa_sigaction as *const _ as usize
6136        },
6137        0usize,
6138        concat!(
6139            "Offset of field: ",
6140            stringify!(sigaction__bindgen_ty_1),
6141            "::",
6142            stringify!(sa_sigaction)
6143        )
6144    );
6145}
6146#[test]
6147fn bindgen_test_layout_sigaction() {
6148    assert_eq!(
6149        ::std::mem::size_of::<sigaction>(),
6150        152usize,
6151        concat!("Size of: ", stringify!(sigaction))
6152    );
6153    assert_eq!(
6154        ::std::mem::align_of::<sigaction>(),
6155        8usize,
6156        concat!("Alignment of ", stringify!(sigaction))
6157    );
6158    assert_eq!(
6159        unsafe { &(*(::std::ptr::null::<sigaction>())).__sigaction_handler as *const _ as usize },
6160        0usize,
6161        concat!(
6162            "Offset of field: ",
6163            stringify!(sigaction),
6164            "::",
6165            stringify!(__sigaction_handler)
6166        )
6167    );
6168    assert_eq!(
6169        unsafe { &(*(::std::ptr::null::<sigaction>())).sa_mask as *const _ as usize },
6170        8usize,
6171        concat!(
6172            "Offset of field: ",
6173            stringify!(sigaction),
6174            "::",
6175            stringify!(sa_mask)
6176        )
6177    );
6178    assert_eq!(
6179        unsafe { &(*(::std::ptr::null::<sigaction>())).sa_flags as *const _ as usize },
6180        136usize,
6181        concat!(
6182            "Offset of field: ",
6183            stringify!(sigaction),
6184            "::",
6185            stringify!(sa_flags)
6186        )
6187    );
6188    assert_eq!(
6189        unsafe { &(*(::std::ptr::null::<sigaction>())).sa_restorer as *const _ as usize },
6190        144usize,
6191        concat!(
6192            "Offset of field: ",
6193            stringify!(sigaction),
6194            "::",
6195            stringify!(sa_restorer)
6196        )
6197    );
6198}
6199#[repr(C)]
6200#[derive(Debug, Copy, Clone)]
6201pub struct _zend_signal_entry_t {
6202    pub flags: ::std::os::raw::c_int,
6203    pub handler: *mut ::std::os::raw::c_void,
6204}
6205#[test]
6206fn bindgen_test_layout__zend_signal_entry_t() {
6207    assert_eq!(
6208        ::std::mem::size_of::<_zend_signal_entry_t>(),
6209        16usize,
6210        concat!("Size of: ", stringify!(_zend_signal_entry_t))
6211    );
6212    assert_eq!(
6213        ::std::mem::align_of::<_zend_signal_entry_t>(),
6214        8usize,
6215        concat!("Alignment of ", stringify!(_zend_signal_entry_t))
6216    );
6217    assert_eq!(
6218        unsafe { &(*(::std::ptr::null::<_zend_signal_entry_t>())).flags as *const _ as usize },
6219        0usize,
6220        concat!(
6221            "Offset of field: ",
6222            stringify!(_zend_signal_entry_t),
6223            "::",
6224            stringify!(flags)
6225        )
6226    );
6227    assert_eq!(
6228        unsafe { &(*(::std::ptr::null::<_zend_signal_entry_t>())).handler as *const _ as usize },
6229        8usize,
6230        concat!(
6231            "Offset of field: ",
6232            stringify!(_zend_signal_entry_t),
6233            "::",
6234            stringify!(handler)
6235        )
6236    );
6237}
6238pub type zend_signal_entry_t = _zend_signal_entry_t;
6239#[repr(C)]
6240#[derive(Debug, Copy, Clone)]
6241pub struct _zend_signal_t {
6242    pub signo: ::std::os::raw::c_int,
6243    pub siginfo: *mut siginfo_t,
6244    pub context: *mut ::std::os::raw::c_void,
6245}
6246#[test]
6247fn bindgen_test_layout__zend_signal_t() {
6248    assert_eq!(
6249        ::std::mem::size_of::<_zend_signal_t>(),
6250        24usize,
6251        concat!("Size of: ", stringify!(_zend_signal_t))
6252    );
6253    assert_eq!(
6254        ::std::mem::align_of::<_zend_signal_t>(),
6255        8usize,
6256        concat!("Alignment of ", stringify!(_zend_signal_t))
6257    );
6258    assert_eq!(
6259        unsafe { &(*(::std::ptr::null::<_zend_signal_t>())).signo as *const _ as usize },
6260        0usize,
6261        concat!(
6262            "Offset of field: ",
6263            stringify!(_zend_signal_t),
6264            "::",
6265            stringify!(signo)
6266        )
6267    );
6268    assert_eq!(
6269        unsafe { &(*(::std::ptr::null::<_zend_signal_t>())).siginfo as *const _ as usize },
6270        8usize,
6271        concat!(
6272            "Offset of field: ",
6273            stringify!(_zend_signal_t),
6274            "::",
6275            stringify!(siginfo)
6276        )
6277    );
6278    assert_eq!(
6279        unsafe { &(*(::std::ptr::null::<_zend_signal_t>())).context as *const _ as usize },
6280        16usize,
6281        concat!(
6282            "Offset of field: ",
6283            stringify!(_zend_signal_t),
6284            "::",
6285            stringify!(context)
6286        )
6287    );
6288}
6289pub type zend_signal_t = _zend_signal_t;
6290#[repr(C)]
6291#[derive(Debug, Copy, Clone)]
6292pub struct _zend_signal_queue_t {
6293    pub zend_signal: zend_signal_t,
6294    pub next: *mut _zend_signal_queue_t,
6295}
6296#[test]
6297fn bindgen_test_layout__zend_signal_queue_t() {
6298    assert_eq!(
6299        ::std::mem::size_of::<_zend_signal_queue_t>(),
6300        32usize,
6301        concat!("Size of: ", stringify!(_zend_signal_queue_t))
6302    );
6303    assert_eq!(
6304        ::std::mem::align_of::<_zend_signal_queue_t>(),
6305        8usize,
6306        concat!("Alignment of ", stringify!(_zend_signal_queue_t))
6307    );
6308    assert_eq!(
6309        unsafe {
6310            &(*(::std::ptr::null::<_zend_signal_queue_t>())).zend_signal as *const _ as usize
6311        },
6312        0usize,
6313        concat!(
6314            "Offset of field: ",
6315            stringify!(_zend_signal_queue_t),
6316            "::",
6317            stringify!(zend_signal)
6318        )
6319    );
6320    assert_eq!(
6321        unsafe { &(*(::std::ptr::null::<_zend_signal_queue_t>())).next as *const _ as usize },
6322        24usize,
6323        concat!(
6324            "Offset of field: ",
6325            stringify!(_zend_signal_queue_t),
6326            "::",
6327            stringify!(next)
6328        )
6329    );
6330}
6331pub type zend_signal_queue_t = _zend_signal_queue_t;
6332#[repr(C)]
6333#[derive(Copy, Clone)]
6334pub struct _zend_signal_globals_t {
6335    pub depth: ::std::os::raw::c_int,
6336    pub blocked: ::std::os::raw::c_int,
6337    pub running: ::std::os::raw::c_int,
6338    pub active: ::std::os::raw::c_int,
6339    pub check: zend_bool,
6340    pub handlers: [zend_signal_entry_t; 65usize],
6341    pub pstorage: [zend_signal_queue_t; 64usize],
6342    pub phead: *mut zend_signal_queue_t,
6343    pub ptail: *mut zend_signal_queue_t,
6344    pub pavail: *mut zend_signal_queue_t,
6345}
6346#[test]
6347fn bindgen_test_layout__zend_signal_globals_t() {
6348    assert_eq!(
6349        ::std::mem::size_of::<_zend_signal_globals_t>(),
6350        3136usize,
6351        concat!("Size of: ", stringify!(_zend_signal_globals_t))
6352    );
6353    assert_eq!(
6354        ::std::mem::align_of::<_zend_signal_globals_t>(),
6355        8usize,
6356        concat!("Alignment of ", stringify!(_zend_signal_globals_t))
6357    );
6358    assert_eq!(
6359        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).depth as *const _ as usize },
6360        0usize,
6361        concat!(
6362            "Offset of field: ",
6363            stringify!(_zend_signal_globals_t),
6364            "::",
6365            stringify!(depth)
6366        )
6367    );
6368    assert_eq!(
6369        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).blocked as *const _ as usize },
6370        4usize,
6371        concat!(
6372            "Offset of field: ",
6373            stringify!(_zend_signal_globals_t),
6374            "::",
6375            stringify!(blocked)
6376        )
6377    );
6378    assert_eq!(
6379        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).running as *const _ as usize },
6380        8usize,
6381        concat!(
6382            "Offset of field: ",
6383            stringify!(_zend_signal_globals_t),
6384            "::",
6385            stringify!(running)
6386        )
6387    );
6388    assert_eq!(
6389        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).active as *const _ as usize },
6390        12usize,
6391        concat!(
6392            "Offset of field: ",
6393            stringify!(_zend_signal_globals_t),
6394            "::",
6395            stringify!(active)
6396        )
6397    );
6398    assert_eq!(
6399        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).check as *const _ as usize },
6400        16usize,
6401        concat!(
6402            "Offset of field: ",
6403            stringify!(_zend_signal_globals_t),
6404            "::",
6405            stringify!(check)
6406        )
6407    );
6408    assert_eq!(
6409        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).handlers as *const _ as usize },
6410        24usize,
6411        concat!(
6412            "Offset of field: ",
6413            stringify!(_zend_signal_globals_t),
6414            "::",
6415            stringify!(handlers)
6416        )
6417    );
6418    assert_eq!(
6419        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).pstorage as *const _ as usize },
6420        1064usize,
6421        concat!(
6422            "Offset of field: ",
6423            stringify!(_zend_signal_globals_t),
6424            "::",
6425            stringify!(pstorage)
6426        )
6427    );
6428    assert_eq!(
6429        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).phead as *const _ as usize },
6430        3112usize,
6431        concat!(
6432            "Offset of field: ",
6433            stringify!(_zend_signal_globals_t),
6434            "::",
6435            stringify!(phead)
6436        )
6437    );
6438    assert_eq!(
6439        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).ptail as *const _ as usize },
6440        3120usize,
6441        concat!(
6442            "Offset of field: ",
6443            stringify!(_zend_signal_globals_t),
6444            "::",
6445            stringify!(ptail)
6446        )
6447    );
6448    assert_eq!(
6449        unsafe { &(*(::std::ptr::null::<_zend_signal_globals_t>())).pavail as *const _ as usize },
6450        3128usize,
6451        concat!(
6452            "Offset of field: ",
6453            stringify!(_zend_signal_globals_t),
6454            "::",
6455            stringify!(pavail)
6456        )
6457    );
6458}
6459pub type zend_signal_globals_t = _zend_signal_globals_t;
6460extern "C" {
6461    pub static mut zend_signal_globals: zend_signal_globals_t;
6462}
6463extern "C" {
6464    pub fn zend_signal_handler_unblock();
6465}
6466extern "C" {
6467    pub fn zend_signal_activate();
6468}
6469extern "C" {
6470    pub fn zend_signal_deactivate();
6471}
6472extern "C" {
6473    pub fn zend_signal_startup();
6474}
6475extern "C" {
6476    pub fn zend_signal_init();
6477}
6478extern "C" {
6479    pub fn zend_signal(
6480        signo: ::std::os::raw::c_int,
6481        handler: ::std::option::Option<unsafe extern "C" fn(arg1: ::std::os::raw::c_int)>,
6482    ) -> ::std::os::raw::c_int;
6483}
6484extern "C" {
6485    pub fn zend_sigaction(
6486        signo: ::std::os::raw::c_int,
6487        act: *const sigaction,
6488        oldact: *mut sigaction,
6489    ) -> ::std::os::raw::c_int;
6490}
6491extern "C" {
6492    pub fn zend_error_noreturn(
6493        type_: ::std::os::raw::c_int,
6494        format: *const ::std::os::raw::c_char,
6495        ...
6496    );
6497}
6498#[repr(C)]
6499#[derive(Debug, Copy, Clone)]
6500pub struct _zend_serialize_data {
6501    _unused: [u8; 0],
6502}
6503#[repr(C)]
6504#[derive(Debug, Copy, Clone)]
6505pub struct _zend_unserialize_data {
6506    _unused: [u8; 0],
6507}
6508pub type zend_serialize_data = _zend_serialize_data;
6509pub type zend_unserialize_data = _zend_unserialize_data;
6510#[repr(C)]
6511#[derive(Debug, Copy, Clone)]
6512pub struct _zend_trait_method_reference {
6513    pub method_name: *mut zend_string,
6514    pub class_name: *mut zend_string,
6515}
6516#[test]
6517fn bindgen_test_layout__zend_trait_method_reference() {
6518    assert_eq!(
6519        ::std::mem::size_of::<_zend_trait_method_reference>(),
6520        16usize,
6521        concat!("Size of: ", stringify!(_zend_trait_method_reference))
6522    );
6523    assert_eq!(
6524        ::std::mem::align_of::<_zend_trait_method_reference>(),
6525        8usize,
6526        concat!("Alignment of ", stringify!(_zend_trait_method_reference))
6527    );
6528    assert_eq!(
6529        unsafe {
6530            &(*(::std::ptr::null::<_zend_trait_method_reference>())).method_name as *const _
6531                as usize
6532        },
6533        0usize,
6534        concat!(
6535            "Offset of field: ",
6536            stringify!(_zend_trait_method_reference),
6537            "::",
6538            stringify!(method_name)
6539        )
6540    );
6541    assert_eq!(
6542        unsafe {
6543            &(*(::std::ptr::null::<_zend_trait_method_reference>())).class_name as *const _ as usize
6544        },
6545        8usize,
6546        concat!(
6547            "Offset of field: ",
6548            stringify!(_zend_trait_method_reference),
6549            "::",
6550            stringify!(class_name)
6551        )
6552    );
6553}
6554pub type zend_trait_method_reference = _zend_trait_method_reference;
6555#[repr(C)]
6556#[derive(Debug, Copy, Clone)]
6557pub struct _zend_trait_precedence {
6558    pub trait_method: zend_trait_method_reference,
6559    pub num_excludes: u32,
6560    pub exclude_class_names: [*mut zend_string; 1usize],
6561}
6562#[test]
6563fn bindgen_test_layout__zend_trait_precedence() {
6564    assert_eq!(
6565        ::std::mem::size_of::<_zend_trait_precedence>(),
6566        32usize,
6567        concat!("Size of: ", stringify!(_zend_trait_precedence))
6568    );
6569    assert_eq!(
6570        ::std::mem::align_of::<_zend_trait_precedence>(),
6571        8usize,
6572        concat!("Alignment of ", stringify!(_zend_trait_precedence))
6573    );
6574    assert_eq!(
6575        unsafe {
6576            &(*(::std::ptr::null::<_zend_trait_precedence>())).trait_method as *const _ as usize
6577        },
6578        0usize,
6579        concat!(
6580            "Offset of field: ",
6581            stringify!(_zend_trait_precedence),
6582            "::",
6583            stringify!(trait_method)
6584        )
6585    );
6586    assert_eq!(
6587        unsafe {
6588            &(*(::std::ptr::null::<_zend_trait_precedence>())).num_excludes as *const _ as usize
6589        },
6590        16usize,
6591        concat!(
6592            "Offset of field: ",
6593            stringify!(_zend_trait_precedence),
6594            "::",
6595            stringify!(num_excludes)
6596        )
6597    );
6598    assert_eq!(
6599        unsafe {
6600            &(*(::std::ptr::null::<_zend_trait_precedence>())).exclude_class_names as *const _
6601                as usize
6602        },
6603        24usize,
6604        concat!(
6605            "Offset of field: ",
6606            stringify!(_zend_trait_precedence),
6607            "::",
6608            stringify!(exclude_class_names)
6609        )
6610    );
6611}
6612pub type zend_trait_precedence = _zend_trait_precedence;
6613#[repr(C)]
6614#[derive(Debug, Copy, Clone)]
6615pub struct _zend_trait_alias {
6616    pub trait_method: zend_trait_method_reference,
6617    #[doc = " name for method to be added"]
6618    pub alias: *mut zend_string,
6619    #[doc = " modifiers to be set on trait method"]
6620    pub modifiers: u32,
6621}
6622#[test]
6623fn bindgen_test_layout__zend_trait_alias() {
6624    assert_eq!(
6625        ::std::mem::size_of::<_zend_trait_alias>(),
6626        32usize,
6627        concat!("Size of: ", stringify!(_zend_trait_alias))
6628    );
6629    assert_eq!(
6630        ::std::mem::align_of::<_zend_trait_alias>(),
6631        8usize,
6632        concat!("Alignment of ", stringify!(_zend_trait_alias))
6633    );
6634    assert_eq!(
6635        unsafe { &(*(::std::ptr::null::<_zend_trait_alias>())).trait_method as *const _ as usize },
6636        0usize,
6637        concat!(
6638            "Offset of field: ",
6639            stringify!(_zend_trait_alias),
6640            "::",
6641            stringify!(trait_method)
6642        )
6643    );
6644    assert_eq!(
6645        unsafe { &(*(::std::ptr::null::<_zend_trait_alias>())).alias as *const _ as usize },
6646        16usize,
6647        concat!(
6648            "Offset of field: ",
6649            stringify!(_zend_trait_alias),
6650            "::",
6651            stringify!(alias)
6652        )
6653    );
6654    assert_eq!(
6655        unsafe { &(*(::std::ptr::null::<_zend_trait_alias>())).modifiers as *const _ as usize },
6656        24usize,
6657        concat!(
6658            "Offset of field: ",
6659            stringify!(_zend_trait_alias),
6660            "::",
6661            stringify!(modifiers)
6662        )
6663    );
6664}
6665pub type zend_trait_alias = _zend_trait_alias;
6666#[repr(C)]
6667#[derive(Copy, Clone)]
6668pub struct _zend_class_entry {
6669    pub type_: ::std::os::raw::c_char,
6670    pub name: *mut zend_string,
6671    pub parent: *mut _zend_class_entry,
6672    pub refcount: ::std::os::raw::c_int,
6673    pub ce_flags: u32,
6674    pub default_properties_count: ::std::os::raw::c_int,
6675    pub default_static_members_count: ::std::os::raw::c_int,
6676    pub default_properties_table: *mut zval,
6677    pub default_static_members_table: *mut zval,
6678    pub static_members_table: *mut zval,
6679    pub function_table: HashTable,
6680    pub properties_info: HashTable,
6681    pub constants_table: HashTable,
6682    pub constructor: *mut _zend_function,
6683    pub destructor: *mut _zend_function,
6684    pub clone: *mut _zend_function,
6685    pub __get: *mut _zend_function,
6686    pub __set: *mut _zend_function,
6687    pub __unset: *mut _zend_function,
6688    pub __isset: *mut _zend_function,
6689    pub __call: *mut _zend_function,
6690    pub __callstatic: *mut _zend_function,
6691    pub __tostring: *mut _zend_function,
6692    pub __debugInfo: *mut _zend_function,
6693    pub serialize_func: *mut _zend_function,
6694    pub unserialize_func: *mut _zend_function,
6695    pub iterator_funcs_ptr: *mut zend_class_iterator_funcs,
6696    pub __bindgen_anon_1: _zend_class_entry__bindgen_ty_1,
6697    pub get_iterator: ::std::option::Option<
6698        unsafe extern "C" fn(
6699            ce: *mut zend_class_entry,
6700            object: *mut zval,
6701            by_ref: ::std::os::raw::c_int,
6702        ) -> *mut zend_object_iterator,
6703    >,
6704    pub get_static_method: ::std::option::Option<
6705        unsafe extern "C" fn(
6706            ce: *mut zend_class_entry,
6707            method: *mut zend_string,
6708        ) -> *mut _zend_function,
6709    >,
6710    pub serialize: ::std::option::Option<
6711        unsafe extern "C" fn(
6712            object: *mut zval,
6713            buffer: *mut *mut ::std::os::raw::c_uchar,
6714            buf_len: *mut size_t,
6715            data: *mut zend_serialize_data,
6716        ) -> ::std::os::raw::c_int,
6717    >,
6718    pub unserialize: ::std::option::Option<
6719        unsafe extern "C" fn(
6720            object: *mut zval,
6721            ce: *mut zend_class_entry,
6722            buf: *const ::std::os::raw::c_uchar,
6723            buf_len: size_t,
6724            data: *mut zend_unserialize_data,
6725        ) -> ::std::os::raw::c_int,
6726    >,
6727    pub num_interfaces: u32,
6728    pub num_traits: u32,
6729    pub interfaces: *mut *mut zend_class_entry,
6730    pub traits: *mut *mut zend_class_entry,
6731    pub trait_aliases: *mut *mut zend_trait_alias,
6732    pub trait_precedences: *mut *mut zend_trait_precedence,
6733    pub info: _zend_class_entry__bindgen_ty_2,
6734}
6735#[repr(C)]
6736#[derive(Copy, Clone)]
6737pub union _zend_class_entry__bindgen_ty_1 {
6738    pub create_object: ::std::option::Option<
6739        unsafe extern "C" fn(class_type: *mut zend_class_entry) -> *mut zend_object,
6740    >,
6741    pub interface_gets_implemented: ::std::option::Option<
6742        unsafe extern "C" fn(
6743            iface: *mut zend_class_entry,
6744            class_type: *mut zend_class_entry,
6745        ) -> ::std::os::raw::c_int,
6746    >,
6747    _bindgen_union_align: u64,
6748}
6749#[test]
6750fn bindgen_test_layout__zend_class_entry__bindgen_ty_1() {
6751    assert_eq!(
6752        ::std::mem::size_of::<_zend_class_entry__bindgen_ty_1>(),
6753        8usize,
6754        concat!("Size of: ", stringify!(_zend_class_entry__bindgen_ty_1))
6755    );
6756    assert_eq!(
6757        ::std::mem::align_of::<_zend_class_entry__bindgen_ty_1>(),
6758        8usize,
6759        concat!("Alignment of ", stringify!(_zend_class_entry__bindgen_ty_1))
6760    );
6761    assert_eq!(
6762        unsafe {
6763            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1>())).create_object as *const _
6764                as usize
6765        },
6766        0usize,
6767        concat!(
6768            "Offset of field: ",
6769            stringify!(_zend_class_entry__bindgen_ty_1),
6770            "::",
6771            stringify!(create_object)
6772        )
6773    );
6774    assert_eq!(
6775        unsafe {
6776            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_1>())).interface_gets_implemented
6777                as *const _ as usize
6778        },
6779        0usize,
6780        concat!(
6781            "Offset of field: ",
6782            stringify!(_zend_class_entry__bindgen_ty_1),
6783            "::",
6784            stringify!(interface_gets_implemented)
6785        )
6786    );
6787}
6788#[repr(C)]
6789#[derive(Copy, Clone)]
6790pub union _zend_class_entry__bindgen_ty_2 {
6791    pub user: _zend_class_entry__bindgen_ty_2__bindgen_ty_1,
6792    pub internal: _zend_class_entry__bindgen_ty_2__bindgen_ty_2,
6793    _bindgen_union_align: [u64; 3usize],
6794}
6795#[repr(C)]
6796#[derive(Debug, Copy, Clone)]
6797pub struct _zend_class_entry__bindgen_ty_2__bindgen_ty_1 {
6798    pub filename: *mut zend_string,
6799    pub line_start: u32,
6800    pub line_end: u32,
6801    pub doc_comment: *mut zend_string,
6802}
6803#[test]
6804fn bindgen_test_layout__zend_class_entry__bindgen_ty_2__bindgen_ty_1() {
6805    assert_eq!(
6806        ::std::mem::size_of::<_zend_class_entry__bindgen_ty_2__bindgen_ty_1>(),
6807        24usize,
6808        concat!(
6809            "Size of: ",
6810            stringify!(_zend_class_entry__bindgen_ty_2__bindgen_ty_1)
6811        )
6812    );
6813    assert_eq!(
6814        ::std::mem::align_of::<_zend_class_entry__bindgen_ty_2__bindgen_ty_1>(),
6815        8usize,
6816        concat!(
6817            "Alignment of ",
6818            stringify!(_zend_class_entry__bindgen_ty_2__bindgen_ty_1)
6819        )
6820    );
6821    assert_eq!(
6822        unsafe {
6823            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_2__bindgen_ty_1>())).filename
6824                as *const _ as usize
6825        },
6826        0usize,
6827        concat!(
6828            "Offset of field: ",
6829            stringify!(_zend_class_entry__bindgen_ty_2__bindgen_ty_1),
6830            "::",
6831            stringify!(filename)
6832        )
6833    );
6834    assert_eq!(
6835        unsafe {
6836            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_2__bindgen_ty_1>())).line_start
6837                as *const _ as usize
6838        },
6839        8usize,
6840        concat!(
6841            "Offset of field: ",
6842            stringify!(_zend_class_entry__bindgen_ty_2__bindgen_ty_1),
6843            "::",
6844            stringify!(line_start)
6845        )
6846    );
6847    assert_eq!(
6848        unsafe {
6849            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_2__bindgen_ty_1>())).line_end
6850                as *const _ as usize
6851        },
6852        12usize,
6853        concat!(
6854            "Offset of field: ",
6855            stringify!(_zend_class_entry__bindgen_ty_2__bindgen_ty_1),
6856            "::",
6857            stringify!(line_end)
6858        )
6859    );
6860    assert_eq!(
6861        unsafe {
6862            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_2__bindgen_ty_1>())).doc_comment
6863                as *const _ as usize
6864        },
6865        16usize,
6866        concat!(
6867            "Offset of field: ",
6868            stringify!(_zend_class_entry__bindgen_ty_2__bindgen_ty_1),
6869            "::",
6870            stringify!(doc_comment)
6871        )
6872    );
6873}
6874#[repr(C)]
6875#[derive(Debug, Copy, Clone)]
6876pub struct _zend_class_entry__bindgen_ty_2__bindgen_ty_2 {
6877    pub builtin_functions: *const _zend_function_entry,
6878    pub module: *mut _zend_module_entry,
6879}
6880#[test]
6881fn bindgen_test_layout__zend_class_entry__bindgen_ty_2__bindgen_ty_2() {
6882    assert_eq!(
6883        ::std::mem::size_of::<_zend_class_entry__bindgen_ty_2__bindgen_ty_2>(),
6884        16usize,
6885        concat!(
6886            "Size of: ",
6887            stringify!(_zend_class_entry__bindgen_ty_2__bindgen_ty_2)
6888        )
6889    );
6890    assert_eq!(
6891        ::std::mem::align_of::<_zend_class_entry__bindgen_ty_2__bindgen_ty_2>(),
6892        8usize,
6893        concat!(
6894            "Alignment of ",
6895            stringify!(_zend_class_entry__bindgen_ty_2__bindgen_ty_2)
6896        )
6897    );
6898    assert_eq!(
6899        unsafe {
6900            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_2__bindgen_ty_2>()))
6901                .builtin_functions as *const _ as usize
6902        },
6903        0usize,
6904        concat!(
6905            "Offset of field: ",
6906            stringify!(_zend_class_entry__bindgen_ty_2__bindgen_ty_2),
6907            "::",
6908            stringify!(builtin_functions)
6909        )
6910    );
6911    assert_eq!(
6912        unsafe {
6913            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_2__bindgen_ty_2>())).module
6914                as *const _ as usize
6915        },
6916        8usize,
6917        concat!(
6918            "Offset of field: ",
6919            stringify!(_zend_class_entry__bindgen_ty_2__bindgen_ty_2),
6920            "::",
6921            stringify!(module)
6922        )
6923    );
6924}
6925#[test]
6926fn bindgen_test_layout__zend_class_entry__bindgen_ty_2() {
6927    assert_eq!(
6928        ::std::mem::size_of::<_zend_class_entry__bindgen_ty_2>(),
6929        24usize,
6930        concat!("Size of: ", stringify!(_zend_class_entry__bindgen_ty_2))
6931    );
6932    assert_eq!(
6933        ::std::mem::align_of::<_zend_class_entry__bindgen_ty_2>(),
6934        8usize,
6935        concat!("Alignment of ", stringify!(_zend_class_entry__bindgen_ty_2))
6936    );
6937    assert_eq!(
6938        unsafe {
6939            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_2>())).user as *const _ as usize
6940        },
6941        0usize,
6942        concat!(
6943            "Offset of field: ",
6944            stringify!(_zend_class_entry__bindgen_ty_2),
6945            "::",
6946            stringify!(user)
6947        )
6948    );
6949    assert_eq!(
6950        unsafe {
6951            &(*(::std::ptr::null::<_zend_class_entry__bindgen_ty_2>())).internal as *const _
6952                as usize
6953        },
6954        0usize,
6955        concat!(
6956            "Offset of field: ",
6957            stringify!(_zend_class_entry__bindgen_ty_2),
6958            "::",
6959            stringify!(internal)
6960        )
6961    );
6962}
6963#[test]
6964fn bindgen_test_layout__zend_class_entry() {
6965    assert_eq!(
6966        ::std::mem::size_of::<_zend_class_entry>(),
6967        448usize,
6968        concat!("Size of: ", stringify!(_zend_class_entry))
6969    );
6970    assert_eq!(
6971        ::std::mem::align_of::<_zend_class_entry>(),
6972        8usize,
6973        concat!("Alignment of ", stringify!(_zend_class_entry))
6974    );
6975    assert_eq!(
6976        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).type_ as *const _ as usize },
6977        0usize,
6978        concat!(
6979            "Offset of field: ",
6980            stringify!(_zend_class_entry),
6981            "::",
6982            stringify!(type_)
6983        )
6984    );
6985    assert_eq!(
6986        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).name as *const _ as usize },
6987        8usize,
6988        concat!(
6989            "Offset of field: ",
6990            stringify!(_zend_class_entry),
6991            "::",
6992            stringify!(name)
6993        )
6994    );
6995    assert_eq!(
6996        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).parent as *const _ as usize },
6997        16usize,
6998        concat!(
6999            "Offset of field: ",
7000            stringify!(_zend_class_entry),
7001            "::",
7002            stringify!(parent)
7003        )
7004    );
7005    assert_eq!(
7006        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).refcount as *const _ as usize },
7007        24usize,
7008        concat!(
7009            "Offset of field: ",
7010            stringify!(_zend_class_entry),
7011            "::",
7012            stringify!(refcount)
7013        )
7014    );
7015    assert_eq!(
7016        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).ce_flags as *const _ as usize },
7017        28usize,
7018        concat!(
7019            "Offset of field: ",
7020            stringify!(_zend_class_entry),
7021            "::",
7022            stringify!(ce_flags)
7023        )
7024    );
7025    assert_eq!(
7026        unsafe {
7027            &(*(::std::ptr::null::<_zend_class_entry>())).default_properties_count as *const _
7028                as usize
7029        },
7030        32usize,
7031        concat!(
7032            "Offset of field: ",
7033            stringify!(_zend_class_entry),
7034            "::",
7035            stringify!(default_properties_count)
7036        )
7037    );
7038    assert_eq!(
7039        unsafe {
7040            &(*(::std::ptr::null::<_zend_class_entry>())).default_static_members_count as *const _
7041                as usize
7042        },
7043        36usize,
7044        concat!(
7045            "Offset of field: ",
7046            stringify!(_zend_class_entry),
7047            "::",
7048            stringify!(default_static_members_count)
7049        )
7050    );
7051    assert_eq!(
7052        unsafe {
7053            &(*(::std::ptr::null::<_zend_class_entry>())).default_properties_table as *const _
7054                as usize
7055        },
7056        40usize,
7057        concat!(
7058            "Offset of field: ",
7059            stringify!(_zend_class_entry),
7060            "::",
7061            stringify!(default_properties_table)
7062        )
7063    );
7064    assert_eq!(
7065        unsafe {
7066            &(*(::std::ptr::null::<_zend_class_entry>())).default_static_members_table as *const _
7067                as usize
7068        },
7069        48usize,
7070        concat!(
7071            "Offset of field: ",
7072            stringify!(_zend_class_entry),
7073            "::",
7074            stringify!(default_static_members_table)
7075        )
7076    );
7077    assert_eq!(
7078        unsafe {
7079            &(*(::std::ptr::null::<_zend_class_entry>())).static_members_table as *const _ as usize
7080        },
7081        56usize,
7082        concat!(
7083            "Offset of field: ",
7084            stringify!(_zend_class_entry),
7085            "::",
7086            stringify!(static_members_table)
7087        )
7088    );
7089    assert_eq!(
7090        unsafe {
7091            &(*(::std::ptr::null::<_zend_class_entry>())).function_table as *const _ as usize
7092        },
7093        64usize,
7094        concat!(
7095            "Offset of field: ",
7096            stringify!(_zend_class_entry),
7097            "::",
7098            stringify!(function_table)
7099        )
7100    );
7101    assert_eq!(
7102        unsafe {
7103            &(*(::std::ptr::null::<_zend_class_entry>())).properties_info as *const _ as usize
7104        },
7105        120usize,
7106        concat!(
7107            "Offset of field: ",
7108            stringify!(_zend_class_entry),
7109            "::",
7110            stringify!(properties_info)
7111        )
7112    );
7113    assert_eq!(
7114        unsafe {
7115            &(*(::std::ptr::null::<_zend_class_entry>())).constants_table as *const _ as usize
7116        },
7117        176usize,
7118        concat!(
7119            "Offset of field: ",
7120            stringify!(_zend_class_entry),
7121            "::",
7122            stringify!(constants_table)
7123        )
7124    );
7125    assert_eq!(
7126        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).constructor as *const _ as usize },
7127        232usize,
7128        concat!(
7129            "Offset of field: ",
7130            stringify!(_zend_class_entry),
7131            "::",
7132            stringify!(constructor)
7133        )
7134    );
7135    assert_eq!(
7136        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).destructor as *const _ as usize },
7137        240usize,
7138        concat!(
7139            "Offset of field: ",
7140            stringify!(_zend_class_entry),
7141            "::",
7142            stringify!(destructor)
7143        )
7144    );
7145    assert_eq!(
7146        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).clone as *const _ as usize },
7147        248usize,
7148        concat!(
7149            "Offset of field: ",
7150            stringify!(_zend_class_entry),
7151            "::",
7152            stringify!(clone)
7153        )
7154    );
7155    assert_eq!(
7156        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__get as *const _ as usize },
7157        256usize,
7158        concat!(
7159            "Offset of field: ",
7160            stringify!(_zend_class_entry),
7161            "::",
7162            stringify!(__get)
7163        )
7164    );
7165    assert_eq!(
7166        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__set as *const _ as usize },
7167        264usize,
7168        concat!(
7169            "Offset of field: ",
7170            stringify!(_zend_class_entry),
7171            "::",
7172            stringify!(__set)
7173        )
7174    );
7175    assert_eq!(
7176        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__unset as *const _ as usize },
7177        272usize,
7178        concat!(
7179            "Offset of field: ",
7180            stringify!(_zend_class_entry),
7181            "::",
7182            stringify!(__unset)
7183        )
7184    );
7185    assert_eq!(
7186        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__isset as *const _ as usize },
7187        280usize,
7188        concat!(
7189            "Offset of field: ",
7190            stringify!(_zend_class_entry),
7191            "::",
7192            stringify!(__isset)
7193        )
7194    );
7195    assert_eq!(
7196        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__call as *const _ as usize },
7197        288usize,
7198        concat!(
7199            "Offset of field: ",
7200            stringify!(_zend_class_entry),
7201            "::",
7202            stringify!(__call)
7203        )
7204    );
7205    assert_eq!(
7206        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__callstatic as *const _ as usize },
7207        296usize,
7208        concat!(
7209            "Offset of field: ",
7210            stringify!(_zend_class_entry),
7211            "::",
7212            stringify!(__callstatic)
7213        )
7214    );
7215    assert_eq!(
7216        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__tostring as *const _ as usize },
7217        304usize,
7218        concat!(
7219            "Offset of field: ",
7220            stringify!(_zend_class_entry),
7221            "::",
7222            stringify!(__tostring)
7223        )
7224    );
7225    assert_eq!(
7226        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).__debugInfo as *const _ as usize },
7227        312usize,
7228        concat!(
7229            "Offset of field: ",
7230            stringify!(_zend_class_entry),
7231            "::",
7232            stringify!(__debugInfo)
7233        )
7234    );
7235    assert_eq!(
7236        unsafe {
7237            &(*(::std::ptr::null::<_zend_class_entry>())).serialize_func as *const _ as usize
7238        },
7239        320usize,
7240        concat!(
7241            "Offset of field: ",
7242            stringify!(_zend_class_entry),
7243            "::",
7244            stringify!(serialize_func)
7245        )
7246    );
7247    assert_eq!(
7248        unsafe {
7249            &(*(::std::ptr::null::<_zend_class_entry>())).unserialize_func as *const _ as usize
7250        },
7251        328usize,
7252        concat!(
7253            "Offset of field: ",
7254            stringify!(_zend_class_entry),
7255            "::",
7256            stringify!(unserialize_func)
7257        )
7258    );
7259    assert_eq!(
7260        unsafe {
7261            &(*(::std::ptr::null::<_zend_class_entry>())).iterator_funcs_ptr as *const _ as usize
7262        },
7263        336usize,
7264        concat!(
7265            "Offset of field: ",
7266            stringify!(_zend_class_entry),
7267            "::",
7268            stringify!(iterator_funcs_ptr)
7269        )
7270    );
7271    assert_eq!(
7272        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).get_iterator as *const _ as usize },
7273        352usize,
7274        concat!(
7275            "Offset of field: ",
7276            stringify!(_zend_class_entry),
7277            "::",
7278            stringify!(get_iterator)
7279        )
7280    );
7281    assert_eq!(
7282        unsafe {
7283            &(*(::std::ptr::null::<_zend_class_entry>())).get_static_method as *const _ as usize
7284        },
7285        360usize,
7286        concat!(
7287            "Offset of field: ",
7288            stringify!(_zend_class_entry),
7289            "::",
7290            stringify!(get_static_method)
7291        )
7292    );
7293    assert_eq!(
7294        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).serialize as *const _ as usize },
7295        368usize,
7296        concat!(
7297            "Offset of field: ",
7298            stringify!(_zend_class_entry),
7299            "::",
7300            stringify!(serialize)
7301        )
7302    );
7303    assert_eq!(
7304        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).unserialize as *const _ as usize },
7305        376usize,
7306        concat!(
7307            "Offset of field: ",
7308            stringify!(_zend_class_entry),
7309            "::",
7310            stringify!(unserialize)
7311        )
7312    );
7313    assert_eq!(
7314        unsafe {
7315            &(*(::std::ptr::null::<_zend_class_entry>())).num_interfaces as *const _ as usize
7316        },
7317        384usize,
7318        concat!(
7319            "Offset of field: ",
7320            stringify!(_zend_class_entry),
7321            "::",
7322            stringify!(num_interfaces)
7323        )
7324    );
7325    assert_eq!(
7326        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).num_traits as *const _ as usize },
7327        388usize,
7328        concat!(
7329            "Offset of field: ",
7330            stringify!(_zend_class_entry),
7331            "::",
7332            stringify!(num_traits)
7333        )
7334    );
7335    assert_eq!(
7336        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).interfaces as *const _ as usize },
7337        392usize,
7338        concat!(
7339            "Offset of field: ",
7340            stringify!(_zend_class_entry),
7341            "::",
7342            stringify!(interfaces)
7343        )
7344    );
7345    assert_eq!(
7346        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).traits as *const _ as usize },
7347        400usize,
7348        concat!(
7349            "Offset of field: ",
7350            stringify!(_zend_class_entry),
7351            "::",
7352            stringify!(traits)
7353        )
7354    );
7355    assert_eq!(
7356        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).trait_aliases as *const _ as usize },
7357        408usize,
7358        concat!(
7359            "Offset of field: ",
7360            stringify!(_zend_class_entry),
7361            "::",
7362            stringify!(trait_aliases)
7363        )
7364    );
7365    assert_eq!(
7366        unsafe {
7367            &(*(::std::ptr::null::<_zend_class_entry>())).trait_precedences as *const _ as usize
7368        },
7369        416usize,
7370        concat!(
7371            "Offset of field: ",
7372            stringify!(_zend_class_entry),
7373            "::",
7374            stringify!(trait_precedences)
7375        )
7376    );
7377    assert_eq!(
7378        unsafe { &(*(::std::ptr::null::<_zend_class_entry>())).info as *const _ as usize },
7379        424usize,
7380        concat!(
7381            "Offset of field: ",
7382            stringify!(_zend_class_entry),
7383            "::",
7384            stringify!(info)
7385        )
7386    );
7387}
7388#[repr(C)]
7389#[derive(Debug, Copy, Clone)]
7390pub struct _zend_utility_functions {
7391    pub error_function: ::std::option::Option<
7392        unsafe extern "C" fn(
7393            type_: ::std::os::raw::c_int,
7394            error_filename: *const ::std::os::raw::c_char,
7395            error_lineno: u32,
7396            format: *const ::std::os::raw::c_char,
7397            args: *mut __va_list_tag,
7398        ),
7399    >,
7400    pub printf_function: ::std::option::Option<
7401        unsafe extern "C" fn(format: *const ::std::os::raw::c_char, ...) -> size_t,
7402    >,
7403    pub write_function: ::std::option::Option<
7404        unsafe extern "C" fn(str_: *const ::std::os::raw::c_char, str_length: size_t) -> size_t,
7405    >,
7406    pub fopen_function: ::std::option::Option<
7407        unsafe extern "C" fn(
7408            filename: *const ::std::os::raw::c_char,
7409            opened_path: *mut *mut zend_string,
7410        ) -> *mut FILE,
7411    >,
7412    pub message_handler: ::std::option::Option<
7413        unsafe extern "C" fn(message: zend_long, data: *const ::std::os::raw::c_void),
7414    >,
7415    pub get_configuration_directive:
7416        ::std::option::Option<unsafe extern "C" fn(name: *mut zend_string) -> *mut zval>,
7417    pub ticks_function: ::std::option::Option<unsafe extern "C" fn(ticks: ::std::os::raw::c_int)>,
7418    pub on_timeout: ::std::option::Option<unsafe extern "C" fn(seconds: ::std::os::raw::c_int)>,
7419    pub stream_open_function: ::std::option::Option<
7420        unsafe extern "C" fn(
7421            filename: *const ::std::os::raw::c_char,
7422            handle: *mut zend_file_handle,
7423        ) -> ::std::os::raw::c_int,
7424    >,
7425    pub printf_to_smart_string_function: ::std::option::Option<
7426        unsafe extern "C" fn(
7427            buf: *mut smart_string,
7428            format: *const ::std::os::raw::c_char,
7429            ap: *mut __va_list_tag,
7430        ),
7431    >,
7432    pub printf_to_smart_str_function: ::std::option::Option<
7433        unsafe extern "C" fn(
7434            buf: *mut smart_str,
7435            format: *const ::std::os::raw::c_char,
7436            ap: *mut __va_list_tag,
7437        ),
7438    >,
7439    pub getenv_function: ::std::option::Option<
7440        unsafe extern "C" fn(
7441            name: *mut ::std::os::raw::c_char,
7442            name_len: size_t,
7443        ) -> *mut ::std::os::raw::c_char,
7444    >,
7445    pub resolve_path_function: ::std::option::Option<
7446        unsafe extern "C" fn(
7447            filename: *const ::std::os::raw::c_char,
7448            filename_len: size_t,
7449        ) -> *mut zend_string,
7450    >,
7451}
7452#[test]
7453fn bindgen_test_layout__zend_utility_functions() {
7454    assert_eq!(
7455        ::std::mem::size_of::<_zend_utility_functions>(),
7456        104usize,
7457        concat!("Size of: ", stringify!(_zend_utility_functions))
7458    );
7459    assert_eq!(
7460        ::std::mem::align_of::<_zend_utility_functions>(),
7461        8usize,
7462        concat!("Alignment of ", stringify!(_zend_utility_functions))
7463    );
7464    assert_eq!(
7465        unsafe {
7466            &(*(::std::ptr::null::<_zend_utility_functions>())).error_function as *const _ as usize
7467        },
7468        0usize,
7469        concat!(
7470            "Offset of field: ",
7471            stringify!(_zend_utility_functions),
7472            "::",
7473            stringify!(error_function)
7474        )
7475    );
7476    assert_eq!(
7477        unsafe {
7478            &(*(::std::ptr::null::<_zend_utility_functions>())).printf_function as *const _ as usize
7479        },
7480        8usize,
7481        concat!(
7482            "Offset of field: ",
7483            stringify!(_zend_utility_functions),
7484            "::",
7485            stringify!(printf_function)
7486        )
7487    );
7488    assert_eq!(
7489        unsafe {
7490            &(*(::std::ptr::null::<_zend_utility_functions>())).write_function as *const _ as usize
7491        },
7492        16usize,
7493        concat!(
7494            "Offset of field: ",
7495            stringify!(_zend_utility_functions),
7496            "::",
7497            stringify!(write_function)
7498        )
7499    );
7500    assert_eq!(
7501        unsafe {
7502            &(*(::std::ptr::null::<_zend_utility_functions>())).fopen_function as *const _ as usize
7503        },
7504        24usize,
7505        concat!(
7506            "Offset of field: ",
7507            stringify!(_zend_utility_functions),
7508            "::",
7509            stringify!(fopen_function)
7510        )
7511    );
7512    assert_eq!(
7513        unsafe {
7514            &(*(::std::ptr::null::<_zend_utility_functions>())).message_handler as *const _ as usize
7515        },
7516        32usize,
7517        concat!(
7518            "Offset of field: ",
7519            stringify!(_zend_utility_functions),
7520            "::",
7521            stringify!(message_handler)
7522        )
7523    );
7524    assert_eq!(
7525        unsafe {
7526            &(*(::std::ptr::null::<_zend_utility_functions>())).get_configuration_directive
7527                as *const _ as usize
7528        },
7529        40usize,
7530        concat!(
7531            "Offset of field: ",
7532            stringify!(_zend_utility_functions),
7533            "::",
7534            stringify!(get_configuration_directive)
7535        )
7536    );
7537    assert_eq!(
7538        unsafe {
7539            &(*(::std::ptr::null::<_zend_utility_functions>())).ticks_function as *const _ as usize
7540        },
7541        48usize,
7542        concat!(
7543            "Offset of field: ",
7544            stringify!(_zend_utility_functions),
7545            "::",
7546            stringify!(ticks_function)
7547        )
7548    );
7549    assert_eq!(
7550        unsafe {
7551            &(*(::std::ptr::null::<_zend_utility_functions>())).on_timeout as *const _ as usize
7552        },
7553        56usize,
7554        concat!(
7555            "Offset of field: ",
7556            stringify!(_zend_utility_functions),
7557            "::",
7558            stringify!(on_timeout)
7559        )
7560    );
7561    assert_eq!(
7562        unsafe {
7563            &(*(::std::ptr::null::<_zend_utility_functions>())).stream_open_function as *const _
7564                as usize
7565        },
7566        64usize,
7567        concat!(
7568            "Offset of field: ",
7569            stringify!(_zend_utility_functions),
7570            "::",
7571            stringify!(stream_open_function)
7572        )
7573    );
7574    assert_eq!(
7575        unsafe {
7576            &(*(::std::ptr::null::<_zend_utility_functions>())).printf_to_smart_string_function
7577                as *const _ as usize
7578        },
7579        72usize,
7580        concat!(
7581            "Offset of field: ",
7582            stringify!(_zend_utility_functions),
7583            "::",
7584            stringify!(printf_to_smart_string_function)
7585        )
7586    );
7587    assert_eq!(
7588        unsafe {
7589            &(*(::std::ptr::null::<_zend_utility_functions>())).printf_to_smart_str_function
7590                as *const _ as usize
7591        },
7592        80usize,
7593        concat!(
7594            "Offset of field: ",
7595            stringify!(_zend_utility_functions),
7596            "::",
7597            stringify!(printf_to_smart_str_function)
7598        )
7599    );
7600    assert_eq!(
7601        unsafe {
7602            &(*(::std::ptr::null::<_zend_utility_functions>())).getenv_function as *const _ as usize
7603        },
7604        88usize,
7605        concat!(
7606            "Offset of field: ",
7607            stringify!(_zend_utility_functions),
7608            "::",
7609            stringify!(getenv_function)
7610        )
7611    );
7612    assert_eq!(
7613        unsafe {
7614            &(*(::std::ptr::null::<_zend_utility_functions>())).resolve_path_function as *const _
7615                as usize
7616        },
7617        96usize,
7618        concat!(
7619            "Offset of field: ",
7620            stringify!(_zend_utility_functions),
7621            "::",
7622            stringify!(resolve_path_function)
7623        )
7624    );
7625}
7626pub type zend_utility_functions = _zend_utility_functions;
7627#[repr(C)]
7628#[derive(Debug, Copy, Clone)]
7629pub struct _zend_utility_values {
7630    pub import_use_extension: *mut ::std::os::raw::c_char,
7631    pub import_use_extension_length: u32,
7632    pub html_errors: zend_bool,
7633}
7634#[test]
7635fn bindgen_test_layout__zend_utility_values() {
7636    assert_eq!(
7637        ::std::mem::size_of::<_zend_utility_values>(),
7638        16usize,
7639        concat!("Size of: ", stringify!(_zend_utility_values))
7640    );
7641    assert_eq!(
7642        ::std::mem::align_of::<_zend_utility_values>(),
7643        8usize,
7644        concat!("Alignment of ", stringify!(_zend_utility_values))
7645    );
7646    assert_eq!(
7647        unsafe {
7648            &(*(::std::ptr::null::<_zend_utility_values>())).import_use_extension as *const _
7649                as usize
7650        },
7651        0usize,
7652        concat!(
7653            "Offset of field: ",
7654            stringify!(_zend_utility_values),
7655            "::",
7656            stringify!(import_use_extension)
7657        )
7658    );
7659    assert_eq!(
7660        unsafe {
7661            &(*(::std::ptr::null::<_zend_utility_values>())).import_use_extension_length as *const _
7662                as usize
7663        },
7664        8usize,
7665        concat!(
7666            "Offset of field: ",
7667            stringify!(_zend_utility_values),
7668            "::",
7669            stringify!(import_use_extension_length)
7670        )
7671    );
7672    assert_eq!(
7673        unsafe {
7674            &(*(::std::ptr::null::<_zend_utility_values>())).html_errors as *const _ as usize
7675        },
7676        12usize,
7677        concat!(
7678            "Offset of field: ",
7679            stringify!(_zend_utility_values),
7680            "::",
7681            stringify!(html_errors)
7682        )
7683    );
7684}
7685pub type zend_utility_values = _zend_utility_values;
7686pub type zend_write_func_t = ::std::option::Option<
7687    unsafe extern "C" fn(
7688        str_: *const ::std::os::raw::c_char,
7689        str_length: size_t,
7690    ) -> ::std::os::raw::c_int,
7691>;
7692extern "C" {
7693    pub fn zend_startup(
7694        utility_functions: *mut zend_utility_functions,
7695        extensions: *mut *mut ::std::os::raw::c_char,
7696    ) -> ::std::os::raw::c_int;
7697}
7698extern "C" {
7699    pub fn zend_shutdown();
7700}
7701extern "C" {
7702    pub fn zend_register_standard_ini_entries();
7703}
7704extern "C" {
7705    pub fn zend_post_startup() -> ::std::os::raw::c_int;
7706}
7707extern "C" {
7708    pub fn zend_set_utility_values(utility_values: *mut zend_utility_values);
7709}
7710extern "C" {
7711    pub fn _zend_bailout(filename: *const ::std::os::raw::c_char, lineno: u32);
7712}
7713extern "C" {
7714    pub fn zend_vspprintf(
7715        pbuf: *mut *mut ::std::os::raw::c_char,
7716        max_len: size_t,
7717        format: *const ::std::os::raw::c_char,
7718        ap: *mut __va_list_tag,
7719    ) -> size_t;
7720}
7721extern "C" {
7722    pub fn zend_spprintf(
7723        message: *mut *mut ::std::os::raw::c_char,
7724        max_len: size_t,
7725        format: *const ::std::os::raw::c_char,
7726        ...
7727    ) -> size_t;
7728}
7729extern "C" {
7730    pub fn zend_vstrpprintf(
7731        max_len: size_t,
7732        format: *const ::std::os::raw::c_char,
7733        ap: *mut __va_list_tag,
7734    ) -> *mut zend_string;
7735}
7736extern "C" {
7737    pub fn zend_strpprintf(
7738        max_len: size_t,
7739        format: *const ::std::os::raw::c_char,
7740        ...
7741    ) -> *mut zend_string;
7742}
7743extern "C" {
7744    pub fn zend_spprintf_unchecked(
7745        message: *mut *mut ::std::os::raw::c_char,
7746        max_len: size_t,
7747        format: *const ::std::os::raw::c_char,
7748        ...
7749    ) -> size_t;
7750}
7751extern "C" {
7752    pub fn zend_strpprintf_unchecked(
7753        max_len: size_t,
7754        format: *const ::std::os::raw::c_char,
7755        ...
7756    ) -> *mut zend_string;
7757}
7758extern "C" {
7759    pub fn zend_make_printable_zval(expr: *mut zval, expr_copy: *mut zval)
7760        -> ::std::os::raw::c_int;
7761}
7762extern "C" {
7763    pub fn zend_print_zval(expr: *mut zval, indent: ::std::os::raw::c_int) -> size_t;
7764}
7765extern "C" {
7766    pub fn zend_print_zval_r(expr: *mut zval, indent: ::std::os::raw::c_int);
7767}
7768extern "C" {
7769    pub fn zend_print_zval_r_to_str(
7770        expr: *mut zval,
7771        indent: ::std::os::raw::c_int,
7772    ) -> *mut zend_string;
7773}
7774extern "C" {
7775    pub fn zend_print_flat_zval_r(expr: *mut zval);
7776}
7777extern "C" {
7778    pub fn zend_output_debug_string(
7779        trigger_break: zend_bool,
7780        format: *const ::std::os::raw::c_char,
7781        ...
7782    );
7783}
7784extern "C" {
7785    pub fn zend_activate();
7786}
7787extern "C" {
7788    pub fn zend_deactivate();
7789}
7790extern "C" {
7791    pub fn zend_call_destructors();
7792}
7793extern "C" {
7794    pub fn zend_activate_modules();
7795}
7796extern "C" {
7797    pub fn zend_deactivate_modules();
7798}
7799extern "C" {
7800    pub fn zend_post_deactivate_modules();
7801}
7802extern "C" {
7803    pub static mut zend_printf: ::std::option::Option<
7804        unsafe extern "C" fn(format: *const ::std::os::raw::c_char, ...) -> size_t,
7805    >;
7806}
7807extern "C" {
7808    pub static mut zend_write: zend_write_func_t;
7809}
7810extern "C" {
7811    pub static mut zend_fopen: ::std::option::Option<
7812        unsafe extern "C" fn(
7813            filename: *const ::std::os::raw::c_char,
7814            opened_path: *mut *mut zend_string,
7815        ) -> *mut FILE,
7816    >;
7817}
7818extern "C" {
7819    pub static mut zend_ticks_function:
7820        ::std::option::Option<unsafe extern "C" fn(ticks: ::std::os::raw::c_int)>;
7821}
7822extern "C" {
7823    pub static mut zend_interrupt_function:
7824        ::std::option::Option<unsafe extern "C" fn(execute_data: *mut zend_execute_data)>;
7825}
7826extern "C" {
7827    pub static mut zend_error_cb: ::std::option::Option<
7828        unsafe extern "C" fn(
7829            type_: ::std::os::raw::c_int,
7830            error_filename: *const ::std::os::raw::c_char,
7831            error_lineno: u32,
7832            format: *const ::std::os::raw::c_char,
7833            args: *mut __va_list_tag,
7834        ),
7835    >;
7836}
7837extern "C" {
7838    pub static mut zend_on_timeout:
7839        ::std::option::Option<unsafe extern "C" fn(seconds: ::std::os::raw::c_int)>;
7840}
7841extern "C" {
7842    pub static mut zend_stream_open_function: ::std::option::Option<
7843        unsafe extern "C" fn(
7844            filename: *const ::std::os::raw::c_char,
7845            handle: *mut zend_file_handle,
7846        ) -> ::std::os::raw::c_int,
7847    >;
7848}
7849extern "C" {
7850    pub static mut zend_printf_to_smart_string: ::std::option::Option<
7851        unsafe extern "C" fn(
7852            buf: *mut smart_string,
7853            format: *const ::std::os::raw::c_char,
7854            ap: *mut __va_list_tag,
7855        ),
7856    >;
7857}
7858extern "C" {
7859    pub static mut zend_printf_to_smart_str: ::std::option::Option<
7860        unsafe extern "C" fn(
7861            buf: *mut smart_str,
7862            format: *const ::std::os::raw::c_char,
7863            ap: *mut __va_list_tag,
7864        ),
7865    >;
7866}
7867extern "C" {
7868    pub static mut zend_getenv: ::std::option::Option<
7869        unsafe extern "C" fn(
7870            name: *mut ::std::os::raw::c_char,
7871            name_len: size_t,
7872        ) -> *mut ::std::os::raw::c_char,
7873    >;
7874}
7875extern "C" {
7876    pub static mut zend_resolve_path: ::std::option::Option<
7877        unsafe extern "C" fn(
7878            filename: *const ::std::os::raw::c_char,
7879            filename_len: size_t,
7880        ) -> *mut zend_string,
7881    >;
7882}
7883extern "C" {
7884    pub static mut zend_post_startup_cb:
7885        ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_int>;
7886}
7887extern "C" {
7888    pub fn zend_error(type_: ::std::os::raw::c_int, format: *const ::std::os::raw::c_char, ...);
7889}
7890extern "C" {
7891    pub fn zend_throw_error(
7892        exception_ce: *mut zend_class_entry,
7893        format: *const ::std::os::raw::c_char,
7894        ...
7895    );
7896}
7897extern "C" {
7898    pub fn zend_type_error(format: *const ::std::os::raw::c_char, ...);
7899}
7900extern "C" {
7901    pub fn zend_internal_type_error(
7902        throw_exception: zend_bool,
7903        format: *const ::std::os::raw::c_char,
7904        ...
7905    );
7906}
7907extern "C" {
7908    pub fn zend_internal_argument_count_error(
7909        throw_exception: zend_bool,
7910        format: *const ::std::os::raw::c_char,
7911        ...
7912    );
7913}
7914extern "C" {
7915    pub fn zenderror(error: *const ::std::os::raw::c_char);
7916}
7917extern "C" {
7918    pub static mut zend_standard_class_def: *mut zend_class_entry;
7919}
7920extern "C" {
7921    pub static mut zend_uv: zend_utility_values;
7922}
7923extern "C" {
7924    pub static mut zend_dtrace_enabled: zend_bool;
7925}
7926extern "C" {
7927    pub fn zend_message_dispatcher(message: zend_long, data: *const ::std::os::raw::c_void);
7928}
7929extern "C" {
7930    pub fn zend_get_configuration_directive(name: *mut zend_string) -> *mut zval;
7931}
7932pub const zend_error_handling_t_EH_NORMAL: zend_error_handling_t = 0;
7933pub const zend_error_handling_t_EH_THROW: zend_error_handling_t = 1;
7934pub type zend_error_handling_t = ::std::os::raw::c_uint;
7935#[repr(C)]
7936#[derive(Copy, Clone)]
7937pub struct zend_error_handling {
7938    pub handling: zend_error_handling_t,
7939    pub exception: *mut zend_class_entry,
7940    pub user_handler: zval,
7941}
7942#[test]
7943fn bindgen_test_layout_zend_error_handling() {
7944    assert_eq!(
7945        ::std::mem::size_of::<zend_error_handling>(),
7946        32usize,
7947        concat!("Size of: ", stringify!(zend_error_handling))
7948    );
7949    assert_eq!(
7950        ::std::mem::align_of::<zend_error_handling>(),
7951        8usize,
7952        concat!("Alignment of ", stringify!(zend_error_handling))
7953    );
7954    assert_eq!(
7955        unsafe { &(*(::std::ptr::null::<zend_error_handling>())).handling as *const _ as usize },
7956        0usize,
7957        concat!(
7958            "Offset of field: ",
7959            stringify!(zend_error_handling),
7960            "::",
7961            stringify!(handling)
7962        )
7963    );
7964    assert_eq!(
7965        unsafe { &(*(::std::ptr::null::<zend_error_handling>())).exception as *const _ as usize },
7966        8usize,
7967        concat!(
7968            "Offset of field: ",
7969            stringify!(zend_error_handling),
7970            "::",
7971            stringify!(exception)
7972        )
7973    );
7974    assert_eq!(
7975        unsafe {
7976            &(*(::std::ptr::null::<zend_error_handling>())).user_handler as *const _ as usize
7977        },
7978        16usize,
7979        concat!(
7980            "Offset of field: ",
7981            stringify!(zend_error_handling),
7982            "::",
7983            stringify!(user_handler)
7984        )
7985    );
7986}
7987extern "C" {
7988    pub fn zend_save_error_handling(current: *mut zend_error_handling);
7989}
7990extern "C" {
7991    pub fn zend_replace_error_handling(
7992        error_handling: zend_error_handling_t,
7993        exception_class: *mut zend_class_entry,
7994        current: *mut zend_error_handling,
7995    );
7996}
7997extern "C" {
7998    pub fn zend_restore_error_handling(saved: *mut zend_error_handling);
7999}
8000pub type zend_object_read_property_t = ::std::option::Option<
8001    unsafe extern "C" fn(
8002        object: *mut zval,
8003        member: *mut zval,
8004        type_: ::std::os::raw::c_int,
8005        cache_slot: *mut *mut ::std::os::raw::c_void,
8006        rv: *mut zval,
8007    ) -> *mut zval,
8008>;
8009pub type zend_object_read_dimension_t = ::std::option::Option<
8010    unsafe extern "C" fn(
8011        object: *mut zval,
8012        offset: *mut zval,
8013        type_: ::std::os::raw::c_int,
8014        rv: *mut zval,
8015    ) -> *mut zval,
8016>;
8017pub type zend_object_write_property_t = ::std::option::Option<
8018    unsafe extern "C" fn(
8019        object: *mut zval,
8020        member: *mut zval,
8021        value: *mut zval,
8022        cache_slot: *mut *mut ::std::os::raw::c_void,
8023    ),
8024>;
8025pub type zend_object_write_dimension_t = ::std::option::Option<
8026    unsafe extern "C" fn(object: *mut zval, offset: *mut zval, value: *mut zval),
8027>;
8028pub type zend_object_get_property_ptr_ptr_t = ::std::option::Option<
8029    unsafe extern "C" fn(
8030        object: *mut zval,
8031        member: *mut zval,
8032        type_: ::std::os::raw::c_int,
8033        cache_slot: *mut *mut ::std::os::raw::c_void,
8034    ) -> *mut zval,
8035>;
8036pub type zend_object_set_t =
8037    ::std::option::Option<unsafe extern "C" fn(object: *mut zval, value: *mut zval)>;
8038pub type zend_object_get_t =
8039    ::std::option::Option<unsafe extern "C" fn(object: *mut zval, rv: *mut zval) -> *mut zval>;
8040pub type zend_object_has_property_t = ::std::option::Option<
8041    unsafe extern "C" fn(
8042        object: *mut zval,
8043        member: *mut zval,
8044        has_set_exists: ::std::os::raw::c_int,
8045        cache_slot: *mut *mut ::std::os::raw::c_void,
8046    ) -> ::std::os::raw::c_int,
8047>;
8048pub type zend_object_has_dimension_t = ::std::option::Option<
8049    unsafe extern "C" fn(
8050        object: *mut zval,
8051        member: *mut zval,
8052        check_empty: ::std::os::raw::c_int,
8053    ) -> ::std::os::raw::c_int,
8054>;
8055pub type zend_object_unset_property_t = ::std::option::Option<
8056    unsafe extern "C" fn(
8057        object: *mut zval,
8058        member: *mut zval,
8059        cache_slot: *mut *mut ::std::os::raw::c_void,
8060    ),
8061>;
8062pub type zend_object_unset_dimension_t =
8063    ::std::option::Option<unsafe extern "C" fn(object: *mut zval, offset: *mut zval)>;
8064pub type zend_object_get_properties_t =
8065    ::std::option::Option<unsafe extern "C" fn(object: *mut zval) -> *mut HashTable>;
8066pub type zend_object_get_debug_info_t = ::std::option::Option<
8067    unsafe extern "C" fn(object: *mut zval, is_temp: *mut ::std::os::raw::c_int) -> *mut HashTable,
8068>;
8069pub type zend_object_call_method_t = ::std::option::Option<
8070    unsafe extern "C" fn(
8071        method: *mut zend_string,
8072        object: *mut zend_object,
8073        execute_data: *mut zend_execute_data,
8074        return_value: *mut zval,
8075    ) -> ::std::os::raw::c_int,
8076>;
8077pub type zend_object_get_method_t = ::std::option::Option<
8078    unsafe extern "C" fn(
8079        object: *mut *mut zend_object,
8080        method: *mut zend_string,
8081        key: *const zval,
8082    ) -> *mut zend_function,
8083>;
8084pub type zend_object_get_constructor_t =
8085    ::std::option::Option<unsafe extern "C" fn(object: *mut zend_object) -> *mut zend_function>;
8086pub type zend_object_dtor_obj_t =
8087    ::std::option::Option<unsafe extern "C" fn(object: *mut zend_object)>;
8088pub type zend_object_free_obj_t =
8089    ::std::option::Option<unsafe extern "C" fn(object: *mut zend_object)>;
8090pub type zend_object_clone_obj_t =
8091    ::std::option::Option<unsafe extern "C" fn(object: *mut zval) -> *mut zend_object>;
8092pub type zend_object_get_class_name_t =
8093    ::std::option::Option<unsafe extern "C" fn(object: *const zend_object) -> *mut zend_string>;
8094pub type zend_object_compare_t = ::std::option::Option<
8095    unsafe extern "C" fn(object1: *mut zval, object2: *mut zval) -> ::std::os::raw::c_int,
8096>;
8097pub type zend_object_compare_zvals_t = ::std::option::Option<
8098    unsafe extern "C" fn(resul: *mut zval, op1: *mut zval, op2: *mut zval) -> ::std::os::raw::c_int,
8099>;
8100pub type zend_object_cast_t = ::std::option::Option<
8101    unsafe extern "C" fn(
8102        readobj: *mut zval,
8103        retval: *mut zval,
8104        type_: ::std::os::raw::c_int,
8105    ) -> ::std::os::raw::c_int,
8106>;
8107pub type zend_object_count_elements_t = ::std::option::Option<
8108    unsafe extern "C" fn(object: *mut zval, count: *mut zend_long) -> ::std::os::raw::c_int,
8109>;
8110pub type zend_object_get_closure_t = ::std::option::Option<
8111    unsafe extern "C" fn(
8112        obj: *mut zval,
8113        ce_ptr: *mut *mut zend_class_entry,
8114        fptr_ptr: *mut *mut zend_function,
8115        obj_ptr: *mut *mut zend_object,
8116    ) -> ::std::os::raw::c_int,
8117>;
8118pub type zend_object_get_gc_t = ::std::option::Option<
8119    unsafe extern "C" fn(
8120        object: *mut zval,
8121        table: *mut *mut zval,
8122        n: *mut ::std::os::raw::c_int,
8123    ) -> *mut HashTable,
8124>;
8125pub type zend_object_do_operation_t = ::std::option::Option<
8126    unsafe extern "C" fn(
8127        opcode: zend_uchar,
8128        result: *mut zval,
8129        op1: *mut zval,
8130        op2: *mut zval,
8131    ) -> ::std::os::raw::c_int,
8132>;
8133#[repr(C)]
8134#[derive(Debug, Copy, Clone)]
8135pub struct _zend_object_handlers {
8136    pub offset: ::std::os::raw::c_int,
8137    pub free_obj: zend_object_free_obj_t,
8138    pub dtor_obj: zend_object_dtor_obj_t,
8139    pub clone_obj: zend_object_clone_obj_t,
8140    pub read_property: zend_object_read_property_t,
8141    pub write_property: zend_object_write_property_t,
8142    pub read_dimension: zend_object_read_dimension_t,
8143    pub write_dimension: zend_object_write_dimension_t,
8144    pub get_property_ptr_ptr: zend_object_get_property_ptr_ptr_t,
8145    pub get: zend_object_get_t,
8146    pub set: zend_object_set_t,
8147    pub has_property: zend_object_has_property_t,
8148    pub unset_property: zend_object_unset_property_t,
8149    pub has_dimension: zend_object_has_dimension_t,
8150    pub unset_dimension: zend_object_unset_dimension_t,
8151    pub get_properties: zend_object_get_properties_t,
8152    pub get_method: zend_object_get_method_t,
8153    pub call_method: zend_object_call_method_t,
8154    pub get_constructor: zend_object_get_constructor_t,
8155    pub get_class_name: zend_object_get_class_name_t,
8156    pub compare_objects: zend_object_compare_t,
8157    pub cast_object: zend_object_cast_t,
8158    pub count_elements: zend_object_count_elements_t,
8159    pub get_debug_info: zend_object_get_debug_info_t,
8160    pub get_closure: zend_object_get_closure_t,
8161    pub get_gc: zend_object_get_gc_t,
8162    pub do_operation: zend_object_do_operation_t,
8163    pub compare: zend_object_compare_zvals_t,
8164}
8165#[test]
8166fn bindgen_test_layout__zend_object_handlers() {
8167    assert_eq!(
8168        ::std::mem::size_of::<_zend_object_handlers>(),
8169        224usize,
8170        concat!("Size of: ", stringify!(_zend_object_handlers))
8171    );
8172    assert_eq!(
8173        ::std::mem::align_of::<_zend_object_handlers>(),
8174        8usize,
8175        concat!("Alignment of ", stringify!(_zend_object_handlers))
8176    );
8177    assert_eq!(
8178        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).offset as *const _ as usize },
8179        0usize,
8180        concat!(
8181            "Offset of field: ",
8182            stringify!(_zend_object_handlers),
8183            "::",
8184            stringify!(offset)
8185        )
8186    );
8187    assert_eq!(
8188        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).free_obj as *const _ as usize },
8189        8usize,
8190        concat!(
8191            "Offset of field: ",
8192            stringify!(_zend_object_handlers),
8193            "::",
8194            stringify!(free_obj)
8195        )
8196    );
8197    assert_eq!(
8198        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).dtor_obj as *const _ as usize },
8199        16usize,
8200        concat!(
8201            "Offset of field: ",
8202            stringify!(_zend_object_handlers),
8203            "::",
8204            stringify!(dtor_obj)
8205        )
8206    );
8207    assert_eq!(
8208        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).clone_obj as *const _ as usize },
8209        24usize,
8210        concat!(
8211            "Offset of field: ",
8212            stringify!(_zend_object_handlers),
8213            "::",
8214            stringify!(clone_obj)
8215        )
8216    );
8217    assert_eq!(
8218        unsafe {
8219            &(*(::std::ptr::null::<_zend_object_handlers>())).read_property as *const _ as usize
8220        },
8221        32usize,
8222        concat!(
8223            "Offset of field: ",
8224            stringify!(_zend_object_handlers),
8225            "::",
8226            stringify!(read_property)
8227        )
8228    );
8229    assert_eq!(
8230        unsafe {
8231            &(*(::std::ptr::null::<_zend_object_handlers>())).write_property as *const _ as usize
8232        },
8233        40usize,
8234        concat!(
8235            "Offset of field: ",
8236            stringify!(_zend_object_handlers),
8237            "::",
8238            stringify!(write_property)
8239        )
8240    );
8241    assert_eq!(
8242        unsafe {
8243            &(*(::std::ptr::null::<_zend_object_handlers>())).read_dimension as *const _ as usize
8244        },
8245        48usize,
8246        concat!(
8247            "Offset of field: ",
8248            stringify!(_zend_object_handlers),
8249            "::",
8250            stringify!(read_dimension)
8251        )
8252    );
8253    assert_eq!(
8254        unsafe {
8255            &(*(::std::ptr::null::<_zend_object_handlers>())).write_dimension as *const _ as usize
8256        },
8257        56usize,
8258        concat!(
8259            "Offset of field: ",
8260            stringify!(_zend_object_handlers),
8261            "::",
8262            stringify!(write_dimension)
8263        )
8264    );
8265    assert_eq!(
8266        unsafe {
8267            &(*(::std::ptr::null::<_zend_object_handlers>())).get_property_ptr_ptr as *const _
8268                as usize
8269        },
8270        64usize,
8271        concat!(
8272            "Offset of field: ",
8273            stringify!(_zend_object_handlers),
8274            "::",
8275            stringify!(get_property_ptr_ptr)
8276        )
8277    );
8278    assert_eq!(
8279        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).get as *const _ as usize },
8280        72usize,
8281        concat!(
8282            "Offset of field: ",
8283            stringify!(_zend_object_handlers),
8284            "::",
8285            stringify!(get)
8286        )
8287    );
8288    assert_eq!(
8289        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).set as *const _ as usize },
8290        80usize,
8291        concat!(
8292            "Offset of field: ",
8293            stringify!(_zend_object_handlers),
8294            "::",
8295            stringify!(set)
8296        )
8297    );
8298    assert_eq!(
8299        unsafe {
8300            &(*(::std::ptr::null::<_zend_object_handlers>())).has_property as *const _ as usize
8301        },
8302        88usize,
8303        concat!(
8304            "Offset of field: ",
8305            stringify!(_zend_object_handlers),
8306            "::",
8307            stringify!(has_property)
8308        )
8309    );
8310    assert_eq!(
8311        unsafe {
8312            &(*(::std::ptr::null::<_zend_object_handlers>())).unset_property as *const _ as usize
8313        },
8314        96usize,
8315        concat!(
8316            "Offset of field: ",
8317            stringify!(_zend_object_handlers),
8318            "::",
8319            stringify!(unset_property)
8320        )
8321    );
8322    assert_eq!(
8323        unsafe {
8324            &(*(::std::ptr::null::<_zend_object_handlers>())).has_dimension as *const _ as usize
8325        },
8326        104usize,
8327        concat!(
8328            "Offset of field: ",
8329            stringify!(_zend_object_handlers),
8330            "::",
8331            stringify!(has_dimension)
8332        )
8333    );
8334    assert_eq!(
8335        unsafe {
8336            &(*(::std::ptr::null::<_zend_object_handlers>())).unset_dimension as *const _ as usize
8337        },
8338        112usize,
8339        concat!(
8340            "Offset of field: ",
8341            stringify!(_zend_object_handlers),
8342            "::",
8343            stringify!(unset_dimension)
8344        )
8345    );
8346    assert_eq!(
8347        unsafe {
8348            &(*(::std::ptr::null::<_zend_object_handlers>())).get_properties as *const _ as usize
8349        },
8350        120usize,
8351        concat!(
8352            "Offset of field: ",
8353            stringify!(_zend_object_handlers),
8354            "::",
8355            stringify!(get_properties)
8356        )
8357    );
8358    assert_eq!(
8359        unsafe {
8360            &(*(::std::ptr::null::<_zend_object_handlers>())).get_method as *const _ as usize
8361        },
8362        128usize,
8363        concat!(
8364            "Offset of field: ",
8365            stringify!(_zend_object_handlers),
8366            "::",
8367            stringify!(get_method)
8368        )
8369    );
8370    assert_eq!(
8371        unsafe {
8372            &(*(::std::ptr::null::<_zend_object_handlers>())).call_method as *const _ as usize
8373        },
8374        136usize,
8375        concat!(
8376            "Offset of field: ",
8377            stringify!(_zend_object_handlers),
8378            "::",
8379            stringify!(call_method)
8380        )
8381    );
8382    assert_eq!(
8383        unsafe {
8384            &(*(::std::ptr::null::<_zend_object_handlers>())).get_constructor as *const _ as usize
8385        },
8386        144usize,
8387        concat!(
8388            "Offset of field: ",
8389            stringify!(_zend_object_handlers),
8390            "::",
8391            stringify!(get_constructor)
8392        )
8393    );
8394    assert_eq!(
8395        unsafe {
8396            &(*(::std::ptr::null::<_zend_object_handlers>())).get_class_name as *const _ as usize
8397        },
8398        152usize,
8399        concat!(
8400            "Offset of field: ",
8401            stringify!(_zend_object_handlers),
8402            "::",
8403            stringify!(get_class_name)
8404        )
8405    );
8406    assert_eq!(
8407        unsafe {
8408            &(*(::std::ptr::null::<_zend_object_handlers>())).compare_objects as *const _ as usize
8409        },
8410        160usize,
8411        concat!(
8412            "Offset of field: ",
8413            stringify!(_zend_object_handlers),
8414            "::",
8415            stringify!(compare_objects)
8416        )
8417    );
8418    assert_eq!(
8419        unsafe {
8420            &(*(::std::ptr::null::<_zend_object_handlers>())).cast_object as *const _ as usize
8421        },
8422        168usize,
8423        concat!(
8424            "Offset of field: ",
8425            stringify!(_zend_object_handlers),
8426            "::",
8427            stringify!(cast_object)
8428        )
8429    );
8430    assert_eq!(
8431        unsafe {
8432            &(*(::std::ptr::null::<_zend_object_handlers>())).count_elements as *const _ as usize
8433        },
8434        176usize,
8435        concat!(
8436            "Offset of field: ",
8437            stringify!(_zend_object_handlers),
8438            "::",
8439            stringify!(count_elements)
8440        )
8441    );
8442    assert_eq!(
8443        unsafe {
8444            &(*(::std::ptr::null::<_zend_object_handlers>())).get_debug_info as *const _ as usize
8445        },
8446        184usize,
8447        concat!(
8448            "Offset of field: ",
8449            stringify!(_zend_object_handlers),
8450            "::",
8451            stringify!(get_debug_info)
8452        )
8453    );
8454    assert_eq!(
8455        unsafe {
8456            &(*(::std::ptr::null::<_zend_object_handlers>())).get_closure as *const _ as usize
8457        },
8458        192usize,
8459        concat!(
8460            "Offset of field: ",
8461            stringify!(_zend_object_handlers),
8462            "::",
8463            stringify!(get_closure)
8464        )
8465    );
8466    assert_eq!(
8467        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).get_gc as *const _ as usize },
8468        200usize,
8469        concat!(
8470            "Offset of field: ",
8471            stringify!(_zend_object_handlers),
8472            "::",
8473            stringify!(get_gc)
8474        )
8475    );
8476    assert_eq!(
8477        unsafe {
8478            &(*(::std::ptr::null::<_zend_object_handlers>())).do_operation as *const _ as usize
8479        },
8480        208usize,
8481        concat!(
8482            "Offset of field: ",
8483            stringify!(_zend_object_handlers),
8484            "::",
8485            stringify!(do_operation)
8486        )
8487    );
8488    assert_eq!(
8489        unsafe { &(*(::std::ptr::null::<_zend_object_handlers>())).compare as *const _ as usize },
8490        216usize,
8491        concat!(
8492            "Offset of field: ",
8493            stringify!(_zend_object_handlers),
8494            "::",
8495            stringify!(compare)
8496        )
8497    );
8498}
8499extern "C" {
8500    pub static std_object_handlers: zend_object_handlers;
8501}
8502extern "C" {
8503    pub fn zend_class_init_statics(ce: *mut zend_class_entry);
8504}
8505extern "C" {
8506    pub fn zend_std_get_static_method(
8507        ce: *mut zend_class_entry,
8508        function_name_strval: *mut zend_string,
8509        key: *const zval,
8510    ) -> *mut zend_function;
8511}
8512extern "C" {
8513    pub fn zend_std_get_static_property(
8514        ce: *mut zend_class_entry,
8515        property_name: *mut zend_string,
8516        silent: zend_bool,
8517    ) -> *mut zval;
8518}
8519extern "C" {
8520    pub fn zend_std_unset_static_property(
8521        ce: *mut zend_class_entry,
8522        property_name: *mut zend_string,
8523    ) -> zend_bool;
8524}
8525extern "C" {
8526    pub fn zend_std_get_constructor(object: *mut zend_object) -> *mut zend_function;
8527}
8528extern "C" {
8529    pub fn zend_get_property_info(
8530        ce: *mut zend_class_entry,
8531        member: *mut zend_string,
8532        silent: ::std::os::raw::c_int,
8533    ) -> *mut _zend_property_info;
8534}
8535extern "C" {
8536    pub fn zend_std_get_properties(object: *mut zval) -> *mut HashTable;
8537}
8538extern "C" {
8539    pub fn zend_std_get_gc(
8540        object: *mut zval,
8541        table: *mut *mut zval,
8542        n: *mut ::std::os::raw::c_int,
8543    ) -> *mut HashTable;
8544}
8545extern "C" {
8546    pub fn zend_std_get_debug_info(
8547        object: *mut zval,
8548        is_temp: *mut ::std::os::raw::c_int,
8549    ) -> *mut HashTable;
8550}
8551extern "C" {
8552    pub fn zend_std_cast_object_tostring(
8553        readobj: *mut zval,
8554        writeobj: *mut zval,
8555        type_: ::std::os::raw::c_int,
8556    ) -> ::std::os::raw::c_int;
8557}
8558extern "C" {
8559    pub fn zend_std_get_property_ptr_ptr(
8560        object: *mut zval,
8561        member: *mut zval,
8562        type_: ::std::os::raw::c_int,
8563        cache_slot: *mut *mut ::std::os::raw::c_void,
8564    ) -> *mut zval;
8565}
8566extern "C" {
8567    pub fn zend_std_read_property(
8568        object: *mut zval,
8569        member: *mut zval,
8570        type_: ::std::os::raw::c_int,
8571        cache_slot: *mut *mut ::std::os::raw::c_void,
8572        rv: *mut zval,
8573    ) -> *mut zval;
8574}
8575extern "C" {
8576    pub fn zend_std_write_property(
8577        object: *mut zval,
8578        member: *mut zval,
8579        value: *mut zval,
8580        cache_slot: *mut *mut ::std::os::raw::c_void,
8581    );
8582}
8583extern "C" {
8584    pub fn zend_std_has_property(
8585        object: *mut zval,
8586        member: *mut zval,
8587        has_set_exists: ::std::os::raw::c_int,
8588        cache_slot: *mut *mut ::std::os::raw::c_void,
8589    ) -> ::std::os::raw::c_int;
8590}
8591extern "C" {
8592    pub fn zend_std_unset_property(
8593        object: *mut zval,
8594        member: *mut zval,
8595        cache_slot: *mut *mut ::std::os::raw::c_void,
8596    );
8597}
8598extern "C" {
8599    pub fn zend_std_read_dimension(
8600        object: *mut zval,
8601        offset: *mut zval,
8602        type_: ::std::os::raw::c_int,
8603        rv: *mut zval,
8604    ) -> *mut zval;
8605}
8606extern "C" {
8607    pub fn zend_std_write_dimension(object: *mut zval, offset: *mut zval, value: *mut zval);
8608}
8609extern "C" {
8610    pub fn zend_std_has_dimension(
8611        object: *mut zval,
8612        offset: *mut zval,
8613        check_empty: ::std::os::raw::c_int,
8614    ) -> ::std::os::raw::c_int;
8615}
8616extern "C" {
8617    pub fn zend_std_unset_dimension(object: *mut zval, offset: *mut zval);
8618}
8619extern "C" {
8620    pub fn zend_std_get_method(
8621        obj_ptr: *mut *mut zend_object,
8622        method_name: *mut zend_string,
8623        key: *const zval,
8624    ) -> *mut zend_function;
8625}
8626extern "C" {
8627    pub fn zend_std_get_class_name(zobj: *const zend_object) -> *mut zend_string;
8628}
8629extern "C" {
8630    pub fn zend_std_compare_objects(o1: *mut zval, o2: *mut zval) -> ::std::os::raw::c_int;
8631}
8632extern "C" {
8633    pub fn zend_std_get_closure(
8634        obj: *mut zval,
8635        ce_ptr: *mut *mut zend_class_entry,
8636        fptr_ptr: *mut *mut zend_function,
8637        obj_ptr: *mut *mut zend_object,
8638    ) -> ::std::os::raw::c_int;
8639}
8640extern "C" {
8641    pub fn zend_check_private(
8642        fbc: *mut zend_function,
8643        ce: *mut zend_class_entry,
8644        function_name: *mut zend_string,
8645    ) -> ::std::os::raw::c_int;
8646}
8647extern "C" {
8648    pub fn zend_check_protected(
8649        ce: *mut zend_class_entry,
8650        scope: *mut zend_class_entry,
8651    ) -> ::std::os::raw::c_int;
8652}
8653extern "C" {
8654    pub fn zend_check_property_access(
8655        zobj: *mut zend_object,
8656        prop_info_name: *mut zend_string,
8657    ) -> ::std::os::raw::c_int;
8658}
8659extern "C" {
8660    pub fn zend_get_call_trampoline_func(
8661        ce: *mut zend_class_entry,
8662        method_name: *mut zend_string,
8663        is_static: ::std::os::raw::c_int,
8664    ) -> *mut zend_function;
8665}
8666extern "C" {
8667    pub fn zend_get_property_guard(zobj: *mut zend_object, member: *mut zend_string) -> *mut u32;
8668}
8669extern "C" {
8670    pub fn zend_freedtoa(s: *mut ::std::os::raw::c_char);
8671}
8672extern "C" {
8673    pub fn zend_dtoa(
8674        _d: f64,
8675        mode: ::std::os::raw::c_int,
8676        ndigits: ::std::os::raw::c_int,
8677        decpt: *mut ::std::os::raw::c_int,
8678        sign: *mut ::std::os::raw::c_int,
8679        rve: *mut *mut ::std::os::raw::c_char,
8680    ) -> *mut ::std::os::raw::c_char;
8681}
8682extern "C" {
8683    pub fn zend_strtod(
8684        s00: *const ::std::os::raw::c_char,
8685        se: *mut *const ::std::os::raw::c_char,
8686    ) -> f64;
8687}
8688extern "C" {
8689    pub fn zend_hex_strtod(
8690        str_: *const ::std::os::raw::c_char,
8691        endptr: *mut *const ::std::os::raw::c_char,
8692    ) -> f64;
8693}
8694extern "C" {
8695    pub fn zend_oct_strtod(
8696        str_: *const ::std::os::raw::c_char,
8697        endptr: *mut *const ::std::os::raw::c_char,
8698    ) -> f64;
8699}
8700extern "C" {
8701    pub fn zend_bin_strtod(
8702        str_: *const ::std::os::raw::c_char,
8703        endptr: *mut *const ::std::os::raw::c_char,
8704    ) -> f64;
8705}
8706extern "C" {
8707    pub fn zend_startup_strtod() -> ::std::os::raw::c_int;
8708}
8709extern "C" {
8710    pub fn zend_shutdown_strtod() -> ::std::os::raw::c_int;
8711}
8712extern "C" {
8713    pub fn zend_is_identical(op1: *mut zval, op2: *mut zval) -> ::std::os::raw::c_int;
8714}
8715extern "C" {
8716    pub fn zend_memnstr_ex(
8717        haystack: *const ::std::os::raw::c_char,
8718        needle: *const ::std::os::raw::c_char,
8719        needle_len: size_t,
8720        end: *const ::std::os::raw::c_char,
8721    ) -> *const ::std::os::raw::c_char;
8722}
8723extern "C" {
8724    pub fn zend_memnrstr_ex(
8725        haystack: *const ::std::os::raw::c_char,
8726        needle: *const ::std::os::raw::c_char,
8727        needle_len: size_t,
8728        end: *const ::std::os::raw::c_char,
8729    ) -> *const ::std::os::raw::c_char;
8730}
8731extern "C" {
8732    pub fn zend_dval_to_lval_slow(d: f64) -> zend_long;
8733}
8734extern "C" {
8735    pub fn zend_is_true(op: *mut zval) -> ::std::os::raw::c_int;
8736}
8737extern "C" {
8738    pub fn zend_object_is_true(op: *mut zval) -> ::std::os::raw::c_int;
8739}
8740extern "C" {
8741    pub fn zend_str_tolower(str_: *mut ::std::os::raw::c_char, length: size_t);
8742}
8743extern "C" {
8744    pub fn zend_str_tolower_copy(
8745        dest: *mut ::std::os::raw::c_char,
8746        source: *const ::std::os::raw::c_char,
8747        length: size_t,
8748    ) -> *mut ::std::os::raw::c_char;
8749}
8750extern "C" {
8751    pub fn zend_str_tolower_dup(
8752        source: *const ::std::os::raw::c_char,
8753        length: size_t,
8754    ) -> *mut ::std::os::raw::c_char;
8755}
8756extern "C" {
8757    pub fn zend_str_tolower_dup_ex(
8758        source: *const ::std::os::raw::c_char,
8759        length: size_t,
8760    ) -> *mut ::std::os::raw::c_char;
8761}
8762extern "C" {
8763    pub fn zend_string_tolower_ex(
8764        str_: *mut zend_string,
8765        persistent: ::std::os::raw::c_int,
8766    ) -> *mut zend_string;
8767}
8768extern "C" {
8769    pub fn zend_binary_zval_strcmp(s1: *mut zval, s2: *mut zval) -> ::std::os::raw::c_int;
8770}
8771extern "C" {
8772    pub fn zend_binary_zval_strncmp(
8773        s1: *mut zval,
8774        s2: *mut zval,
8775        s3: *mut zval,
8776    ) -> ::std::os::raw::c_int;
8777}
8778extern "C" {
8779    pub fn zend_binary_zval_strcasecmp(s1: *mut zval, s2: *mut zval) -> ::std::os::raw::c_int;
8780}
8781extern "C" {
8782    pub fn zend_binary_zval_strncasecmp(
8783        s1: *mut zval,
8784        s2: *mut zval,
8785        s3: *mut zval,
8786    ) -> ::std::os::raw::c_int;
8787}
8788extern "C" {
8789    pub fn zend_binary_strcmp(
8790        s1: *const ::std::os::raw::c_char,
8791        len1: size_t,
8792        s2: *const ::std::os::raw::c_char,
8793        len2: size_t,
8794    ) -> ::std::os::raw::c_int;
8795}
8796extern "C" {
8797    pub fn zend_binary_strncmp(
8798        s1: *const ::std::os::raw::c_char,
8799        len1: size_t,
8800        s2: *const ::std::os::raw::c_char,
8801        len2: size_t,
8802        length: size_t,
8803    ) -> ::std::os::raw::c_int;
8804}
8805extern "C" {
8806    pub fn zend_binary_strcasecmp(
8807        s1: *const ::std::os::raw::c_char,
8808        len1: size_t,
8809        s2: *const ::std::os::raw::c_char,
8810        len2: size_t,
8811    ) -> ::std::os::raw::c_int;
8812}
8813extern "C" {
8814    pub fn zend_binary_strncasecmp(
8815        s1: *const ::std::os::raw::c_char,
8816        len1: size_t,
8817        s2: *const ::std::os::raw::c_char,
8818        len2: size_t,
8819        length: size_t,
8820    ) -> ::std::os::raw::c_int;
8821}
8822extern "C" {
8823    pub fn zend_binary_strcasecmp_l(
8824        s1: *const ::std::os::raw::c_char,
8825        len1: size_t,
8826        s2: *const ::std::os::raw::c_char,
8827        len2: size_t,
8828    ) -> ::std::os::raw::c_int;
8829}
8830extern "C" {
8831    pub fn zend_binary_strncasecmp_l(
8832        s1: *const ::std::os::raw::c_char,
8833        len1: size_t,
8834        s2: *const ::std::os::raw::c_char,
8835        len2: size_t,
8836        length: size_t,
8837    ) -> ::std::os::raw::c_int;
8838}
8839extern "C" {
8840    pub fn zendi_smart_streq(s1: *mut zend_string, s2: *mut zend_string) -> ::std::os::raw::c_int;
8841}
8842extern "C" {
8843    pub fn zendi_smart_strcmp(s1: *mut zend_string, s2: *mut zend_string) -> ::std::os::raw::c_int;
8844}
8845extern "C" {
8846    pub fn zend_compare_symbol_tables(
8847        ht1: *mut HashTable,
8848        ht2: *mut HashTable,
8849    ) -> ::std::os::raw::c_int;
8850}
8851extern "C" {
8852    pub fn zend_compare_arrays(a1: *mut zval, a2: *mut zval) -> ::std::os::raw::c_int;
8853}
8854extern "C" {
8855    pub fn zend_compare_objects(o1: *mut zval, o2: *mut zval) -> ::std::os::raw::c_int;
8856}
8857extern "C" {
8858    pub fn zend_atoi(str_: *const ::std::os::raw::c_char, str_len: size_t)
8859        -> ::std::os::raw::c_int;
8860}
8861extern "C" {
8862    pub fn zend_atol(str_: *const ::std::os::raw::c_char, str_len: size_t) -> zend_long;
8863}
8864extern "C" {
8865    pub fn zend_locale_sprintf_double(op: *mut zval);
8866}
8867extern "C" {
8868    pub fn zend_long_to_str(num: zend_long) -> *mut zend_string;
8869}
8870extern "C" {
8871    pub fn zend_qsort(
8872        base: *mut ::std::os::raw::c_void,
8873        nmemb: size_t,
8874        siz: size_t,
8875        cmp: compare_func_t,
8876        swp: swap_func_t,
8877    );
8878}
8879extern "C" {
8880    pub fn zend_sort(
8881        base: *mut ::std::os::raw::c_void,
8882        nmemb: size_t,
8883        siz: size_t,
8884        cmp: compare_func_t,
8885        swp: swap_func_t,
8886    );
8887}
8888extern "C" {
8889    pub fn zend_insert_sort(
8890        base: *mut ::std::os::raw::c_void,
8891        nmemb: size_t,
8892        siz: size_t,
8893        cmp: compare_func_t,
8894        swp: swap_func_t,
8895    );
8896}
8897pub type zend_op_array = _zend_op_array;
8898pub type zend_op = _zend_op;
8899#[repr(C)]
8900#[derive(Copy, Clone)]
8901pub union _znode_op {
8902    pub constant: u32,
8903    pub var: u32,
8904    pub num: u32,
8905    pub opline_num: u32,
8906    pub jmp_offset: u32,
8907    _bindgen_union_align: u32,
8908}
8909#[test]
8910fn bindgen_test_layout__znode_op() {
8911    assert_eq!(
8912        ::std::mem::size_of::<_znode_op>(),
8913        4usize,
8914        concat!("Size of: ", stringify!(_znode_op))
8915    );
8916    assert_eq!(
8917        ::std::mem::align_of::<_znode_op>(),
8918        4usize,
8919        concat!("Alignment of ", stringify!(_znode_op))
8920    );
8921    assert_eq!(
8922        unsafe { &(*(::std::ptr::null::<_znode_op>())).constant as *const _ as usize },
8923        0usize,
8924        concat!(
8925            "Offset of field: ",
8926            stringify!(_znode_op),
8927            "::",
8928            stringify!(constant)
8929        )
8930    );
8931    assert_eq!(
8932        unsafe { &(*(::std::ptr::null::<_znode_op>())).var as *const _ as usize },
8933        0usize,
8934        concat!(
8935            "Offset of field: ",
8936            stringify!(_znode_op),
8937            "::",
8938            stringify!(var)
8939        )
8940    );
8941    assert_eq!(
8942        unsafe { &(*(::std::ptr::null::<_znode_op>())).num as *const _ as usize },
8943        0usize,
8944        concat!(
8945            "Offset of field: ",
8946            stringify!(_znode_op),
8947            "::",
8948            stringify!(num)
8949        )
8950    );
8951    assert_eq!(
8952        unsafe { &(*(::std::ptr::null::<_znode_op>())).opline_num as *const _ as usize },
8953        0usize,
8954        concat!(
8955            "Offset of field: ",
8956            stringify!(_znode_op),
8957            "::",
8958            stringify!(opline_num)
8959        )
8960    );
8961    assert_eq!(
8962        unsafe { &(*(::std::ptr::null::<_znode_op>())).jmp_offset as *const _ as usize },
8963        0usize,
8964        concat!(
8965            "Offset of field: ",
8966            stringify!(_znode_op),
8967            "::",
8968            stringify!(jmp_offset)
8969        )
8970    );
8971}
8972pub type znode_op = _znode_op;
8973#[repr(C)]
8974#[derive(Copy, Clone)]
8975pub struct _znode {
8976    pub op_type: zend_uchar,
8977    pub flag: zend_uchar,
8978    pub u: _znode__bindgen_ty_1,
8979}
8980#[repr(C)]
8981#[derive(Copy, Clone)]
8982pub union _znode__bindgen_ty_1 {
8983    pub op: znode_op,
8984    pub constant: zval,
8985    _bindgen_union_align: [u64; 2usize],
8986}
8987#[test]
8988fn bindgen_test_layout__znode__bindgen_ty_1() {
8989    assert_eq!(
8990        ::std::mem::size_of::<_znode__bindgen_ty_1>(),
8991        16usize,
8992        concat!("Size of: ", stringify!(_znode__bindgen_ty_1))
8993    );
8994    assert_eq!(
8995        ::std::mem::align_of::<_znode__bindgen_ty_1>(),
8996        8usize,
8997        concat!("Alignment of ", stringify!(_znode__bindgen_ty_1))
8998    );
8999    assert_eq!(
9000        unsafe { &(*(::std::ptr::null::<_znode__bindgen_ty_1>())).op as *const _ as usize },
9001        0usize,
9002        concat!(
9003            "Offset of field: ",
9004            stringify!(_znode__bindgen_ty_1),
9005            "::",
9006            stringify!(op)
9007        )
9008    );
9009    assert_eq!(
9010        unsafe { &(*(::std::ptr::null::<_znode__bindgen_ty_1>())).constant as *const _ as usize },
9011        0usize,
9012        concat!(
9013            "Offset of field: ",
9014            stringify!(_znode__bindgen_ty_1),
9015            "::",
9016            stringify!(constant)
9017        )
9018    );
9019}
9020#[test]
9021fn bindgen_test_layout__znode() {
9022    assert_eq!(
9023        ::std::mem::size_of::<_znode>(),
9024        24usize,
9025        concat!("Size of: ", stringify!(_znode))
9026    );
9027    assert_eq!(
9028        ::std::mem::align_of::<_znode>(),
9029        8usize,
9030        concat!("Alignment of ", stringify!(_znode))
9031    );
9032    assert_eq!(
9033        unsafe { &(*(::std::ptr::null::<_znode>())).op_type as *const _ as usize },
9034        0usize,
9035        concat!(
9036            "Offset of field: ",
9037            stringify!(_znode),
9038            "::",
9039            stringify!(op_type)
9040        )
9041    );
9042    assert_eq!(
9043        unsafe { &(*(::std::ptr::null::<_znode>())).flag as *const _ as usize },
9044        1usize,
9045        concat!(
9046            "Offset of field: ",
9047            stringify!(_znode),
9048            "::",
9049            stringify!(flag)
9050        )
9051    );
9052    assert_eq!(
9053        unsafe { &(*(::std::ptr::null::<_znode>())).u as *const _ as usize },
9054        8usize,
9055        concat!("Offset of field: ", stringify!(_znode), "::", stringify!(u))
9056    );
9057}
9058pub type znode = _znode;
9059#[repr(C)]
9060#[derive(Copy, Clone)]
9061pub struct _zend_ast_znode {
9062    pub kind: zend_ast_kind,
9063    pub attr: zend_ast_attr,
9064    pub lineno: u32,
9065    pub node: znode,
9066}
9067#[test]
9068fn bindgen_test_layout__zend_ast_znode() {
9069    assert_eq!(
9070        ::std::mem::size_of::<_zend_ast_znode>(),
9071        32usize,
9072        concat!("Size of: ", stringify!(_zend_ast_znode))
9073    );
9074    assert_eq!(
9075        ::std::mem::align_of::<_zend_ast_znode>(),
9076        8usize,
9077        concat!("Alignment of ", stringify!(_zend_ast_znode))
9078    );
9079    assert_eq!(
9080        unsafe { &(*(::std::ptr::null::<_zend_ast_znode>())).kind as *const _ as usize },
9081        0usize,
9082        concat!(
9083            "Offset of field: ",
9084            stringify!(_zend_ast_znode),
9085            "::",
9086            stringify!(kind)
9087        )
9088    );
9089    assert_eq!(
9090        unsafe { &(*(::std::ptr::null::<_zend_ast_znode>())).attr as *const _ as usize },
9091        2usize,
9092        concat!(
9093            "Offset of field: ",
9094            stringify!(_zend_ast_znode),
9095            "::",
9096            stringify!(attr)
9097        )
9098    );
9099    assert_eq!(
9100        unsafe { &(*(::std::ptr::null::<_zend_ast_znode>())).lineno as *const _ as usize },
9101        4usize,
9102        concat!(
9103            "Offset of field: ",
9104            stringify!(_zend_ast_znode),
9105            "::",
9106            stringify!(lineno)
9107        )
9108    );
9109    assert_eq!(
9110        unsafe { &(*(::std::ptr::null::<_zend_ast_znode>())).node as *const _ as usize },
9111        8usize,
9112        concat!(
9113            "Offset of field: ",
9114            stringify!(_zend_ast_znode),
9115            "::",
9116            stringify!(node)
9117        )
9118    );
9119}
9120pub type zend_ast_znode = _zend_ast_znode;
9121extern "C" {
9122    pub fn zend_ast_create_znode(node: *mut znode) -> *mut zend_ast;
9123}
9124#[repr(C)]
9125#[derive(Debug, Copy, Clone)]
9126pub struct _zend_declarables {
9127    pub ticks: zend_long,
9128}
9129#[test]
9130fn bindgen_test_layout__zend_declarables() {
9131    assert_eq!(
9132        ::std::mem::size_of::<_zend_declarables>(),
9133        8usize,
9134        concat!("Size of: ", stringify!(_zend_declarables))
9135    );
9136    assert_eq!(
9137        ::std::mem::align_of::<_zend_declarables>(),
9138        8usize,
9139        concat!("Alignment of ", stringify!(_zend_declarables))
9140    );
9141    assert_eq!(
9142        unsafe { &(*(::std::ptr::null::<_zend_declarables>())).ticks as *const _ as usize },
9143        0usize,
9144        concat!(
9145            "Offset of field: ",
9146            stringify!(_zend_declarables),
9147            "::",
9148            stringify!(ticks)
9149        )
9150    );
9151}
9152pub type zend_declarables = _zend_declarables;
9153#[repr(C)]
9154#[derive(Copy, Clone)]
9155pub struct _zend_file_context {
9156    pub declarables: zend_declarables,
9157    pub implementing_class: znode,
9158    pub current_namespace: *mut zend_string,
9159    pub in_namespace: zend_bool,
9160    pub has_bracketed_namespaces: zend_bool,
9161    pub imports: *mut HashTable,
9162    pub imports_function: *mut HashTable,
9163    pub imports_const: *mut HashTable,
9164    pub seen_symbols: HashTable,
9165}
9166#[test]
9167fn bindgen_test_layout__zend_file_context() {
9168    assert_eq!(
9169        ::std::mem::size_of::<_zend_file_context>(),
9170        128usize,
9171        concat!("Size of: ", stringify!(_zend_file_context))
9172    );
9173    assert_eq!(
9174        ::std::mem::align_of::<_zend_file_context>(),
9175        8usize,
9176        concat!("Alignment of ", stringify!(_zend_file_context))
9177    );
9178    assert_eq!(
9179        unsafe { &(*(::std::ptr::null::<_zend_file_context>())).declarables as *const _ as usize },
9180        0usize,
9181        concat!(
9182            "Offset of field: ",
9183            stringify!(_zend_file_context),
9184            "::",
9185            stringify!(declarables)
9186        )
9187    );
9188    assert_eq!(
9189        unsafe {
9190            &(*(::std::ptr::null::<_zend_file_context>())).implementing_class as *const _ as usize
9191        },
9192        8usize,
9193        concat!(
9194            "Offset of field: ",
9195            stringify!(_zend_file_context),
9196            "::",
9197            stringify!(implementing_class)
9198        )
9199    );
9200    assert_eq!(
9201        unsafe {
9202            &(*(::std::ptr::null::<_zend_file_context>())).current_namespace as *const _ as usize
9203        },
9204        32usize,
9205        concat!(
9206            "Offset of field: ",
9207            stringify!(_zend_file_context),
9208            "::",
9209            stringify!(current_namespace)
9210        )
9211    );
9212    assert_eq!(
9213        unsafe { &(*(::std::ptr::null::<_zend_file_context>())).in_namespace as *const _ as usize },
9214        40usize,
9215        concat!(
9216            "Offset of field: ",
9217            stringify!(_zend_file_context),
9218            "::",
9219            stringify!(in_namespace)
9220        )
9221    );
9222    assert_eq!(
9223        unsafe {
9224            &(*(::std::ptr::null::<_zend_file_context>())).has_bracketed_namespaces as *const _
9225                as usize
9226        },
9227        41usize,
9228        concat!(
9229            "Offset of field: ",
9230            stringify!(_zend_file_context),
9231            "::",
9232            stringify!(has_bracketed_namespaces)
9233        )
9234    );
9235    assert_eq!(
9236        unsafe { &(*(::std::ptr::null::<_zend_file_context>())).imports as *const _ as usize },
9237        48usize,
9238        concat!(
9239            "Offset of field: ",
9240            stringify!(_zend_file_context),
9241            "::",
9242            stringify!(imports)
9243        )
9244    );
9245    assert_eq!(
9246        unsafe {
9247            &(*(::std::ptr::null::<_zend_file_context>())).imports_function as *const _ as usize
9248        },
9249        56usize,
9250        concat!(
9251            "Offset of field: ",
9252            stringify!(_zend_file_context),
9253            "::",
9254            stringify!(imports_function)
9255        )
9256    );
9257    assert_eq!(
9258        unsafe {
9259            &(*(::std::ptr::null::<_zend_file_context>())).imports_const as *const _ as usize
9260        },
9261        64usize,
9262        concat!(
9263            "Offset of field: ",
9264            stringify!(_zend_file_context),
9265            "::",
9266            stringify!(imports_const)
9267        )
9268    );
9269    assert_eq!(
9270        unsafe { &(*(::std::ptr::null::<_zend_file_context>())).seen_symbols as *const _ as usize },
9271        72usize,
9272        concat!(
9273            "Offset of field: ",
9274            stringify!(_zend_file_context),
9275            "::",
9276            stringify!(seen_symbols)
9277        )
9278    );
9279}
9280pub type zend_file_context = _zend_file_context;
9281#[repr(C)]
9282#[derive(Copy, Clone)]
9283pub union _zend_parser_stack_elem {
9284    pub ast: *mut zend_ast,
9285    pub str_: *mut zend_string,
9286    pub num: zend_ulong,
9287    _bindgen_union_align: u64,
9288}
9289#[test]
9290fn bindgen_test_layout__zend_parser_stack_elem() {
9291    assert_eq!(
9292        ::std::mem::size_of::<_zend_parser_stack_elem>(),
9293        8usize,
9294        concat!("Size of: ", stringify!(_zend_parser_stack_elem))
9295    );
9296    assert_eq!(
9297        ::std::mem::align_of::<_zend_parser_stack_elem>(),
9298        8usize,
9299        concat!("Alignment of ", stringify!(_zend_parser_stack_elem))
9300    );
9301    assert_eq!(
9302        unsafe { &(*(::std::ptr::null::<_zend_parser_stack_elem>())).ast as *const _ as usize },
9303        0usize,
9304        concat!(
9305            "Offset of field: ",
9306            stringify!(_zend_parser_stack_elem),
9307            "::",
9308            stringify!(ast)
9309        )
9310    );
9311    assert_eq!(
9312        unsafe { &(*(::std::ptr::null::<_zend_parser_stack_elem>())).str_ as *const _ as usize },
9313        0usize,
9314        concat!(
9315            "Offset of field: ",
9316            stringify!(_zend_parser_stack_elem),
9317            "::",
9318            stringify!(str_)
9319        )
9320    );
9321    assert_eq!(
9322        unsafe { &(*(::std::ptr::null::<_zend_parser_stack_elem>())).num as *const _ as usize },
9323        0usize,
9324        concat!(
9325            "Offset of field: ",
9326            stringify!(_zend_parser_stack_elem),
9327            "::",
9328            stringify!(num)
9329        )
9330    );
9331}
9332pub type zend_parser_stack_elem = _zend_parser_stack_elem;
9333extern "C" {
9334    pub fn zend_compile_top_stmt(ast: *mut zend_ast);
9335}
9336extern "C" {
9337    pub fn zend_compile_stmt(ast: *mut zend_ast);
9338}
9339extern "C" {
9340    pub fn zend_compile_expr(node: *mut znode, ast: *mut zend_ast);
9341}
9342extern "C" {
9343    pub fn zend_compile_var(node: *mut znode, ast: *mut zend_ast, type_: u32);
9344}
9345extern "C" {
9346    pub fn zend_eval_const_expr(ast_ptr: *mut *mut zend_ast);
9347}
9348extern "C" {
9349    pub fn zend_const_expr_to_zval(result: *mut zval, ast: *mut zend_ast);
9350}
9351pub type user_opcode_handler_t = ::std::option::Option<
9352    unsafe extern "C" fn(execute_data: *mut zend_execute_data) -> ::std::os::raw::c_int,
9353>;
9354#[repr(C)]
9355#[derive(Copy, Clone)]
9356pub struct _zend_op {
9357    pub handler: *const ::std::os::raw::c_void,
9358    pub op1: znode_op,
9359    pub op2: znode_op,
9360    pub result: znode_op,
9361    pub extended_value: u32,
9362    pub lineno: u32,
9363    pub opcode: zend_uchar,
9364    pub op1_type: zend_uchar,
9365    pub op2_type: zend_uchar,
9366    pub result_type: zend_uchar,
9367}
9368#[test]
9369fn bindgen_test_layout__zend_op() {
9370    assert_eq!(
9371        ::std::mem::size_of::<_zend_op>(),
9372        32usize,
9373        concat!("Size of: ", stringify!(_zend_op))
9374    );
9375    assert_eq!(
9376        ::std::mem::align_of::<_zend_op>(),
9377        8usize,
9378        concat!("Alignment of ", stringify!(_zend_op))
9379    );
9380    assert_eq!(
9381        unsafe { &(*(::std::ptr::null::<_zend_op>())).handler as *const _ as usize },
9382        0usize,
9383        concat!(
9384            "Offset of field: ",
9385            stringify!(_zend_op),
9386            "::",
9387            stringify!(handler)
9388        )
9389    );
9390    assert_eq!(
9391        unsafe { &(*(::std::ptr::null::<_zend_op>())).op1 as *const _ as usize },
9392        8usize,
9393        concat!(
9394            "Offset of field: ",
9395            stringify!(_zend_op),
9396            "::",
9397            stringify!(op1)
9398        )
9399    );
9400    assert_eq!(
9401        unsafe { &(*(::std::ptr::null::<_zend_op>())).op2 as *const _ as usize },
9402        12usize,
9403        concat!(
9404            "Offset of field: ",
9405            stringify!(_zend_op),
9406            "::",
9407            stringify!(op2)
9408        )
9409    );
9410    assert_eq!(
9411        unsafe { &(*(::std::ptr::null::<_zend_op>())).result as *const _ as usize },
9412        16usize,
9413        concat!(
9414            "Offset of field: ",
9415            stringify!(_zend_op),
9416            "::",
9417            stringify!(result)
9418        )
9419    );
9420    assert_eq!(
9421        unsafe { &(*(::std::ptr::null::<_zend_op>())).extended_value as *const _ as usize },
9422        20usize,
9423        concat!(
9424            "Offset of field: ",
9425            stringify!(_zend_op),
9426            "::",
9427            stringify!(extended_value)
9428        )
9429    );
9430    assert_eq!(
9431        unsafe { &(*(::std::ptr::null::<_zend_op>())).lineno as *const _ as usize },
9432        24usize,
9433        concat!(
9434            "Offset of field: ",
9435            stringify!(_zend_op),
9436            "::",
9437            stringify!(lineno)
9438        )
9439    );
9440    assert_eq!(
9441        unsafe { &(*(::std::ptr::null::<_zend_op>())).opcode as *const _ as usize },
9442        28usize,
9443        concat!(
9444            "Offset of field: ",
9445            stringify!(_zend_op),
9446            "::",
9447            stringify!(opcode)
9448        )
9449    );
9450    assert_eq!(
9451        unsafe { &(*(::std::ptr::null::<_zend_op>())).op1_type as *const _ as usize },
9452        29usize,
9453        concat!(
9454            "Offset of field: ",
9455            stringify!(_zend_op),
9456            "::",
9457            stringify!(op1_type)
9458        )
9459    );
9460    assert_eq!(
9461        unsafe { &(*(::std::ptr::null::<_zend_op>())).op2_type as *const _ as usize },
9462        30usize,
9463        concat!(
9464            "Offset of field: ",
9465            stringify!(_zend_op),
9466            "::",
9467            stringify!(op2_type)
9468        )
9469    );
9470    assert_eq!(
9471        unsafe { &(*(::std::ptr::null::<_zend_op>())).result_type as *const _ as usize },
9472        31usize,
9473        concat!(
9474            "Offset of field: ",
9475            stringify!(_zend_op),
9476            "::",
9477            stringify!(result_type)
9478        )
9479    );
9480}
9481#[repr(C)]
9482#[derive(Debug, Copy, Clone)]
9483pub struct _zend_brk_cont_element {
9484    pub start: ::std::os::raw::c_int,
9485    pub cont: ::std::os::raw::c_int,
9486    pub brk: ::std::os::raw::c_int,
9487    pub parent: ::std::os::raw::c_int,
9488    pub is_switch: zend_bool,
9489}
9490#[test]
9491fn bindgen_test_layout__zend_brk_cont_element() {
9492    assert_eq!(
9493        ::std::mem::size_of::<_zend_brk_cont_element>(),
9494        20usize,
9495        concat!("Size of: ", stringify!(_zend_brk_cont_element))
9496    );
9497    assert_eq!(
9498        ::std::mem::align_of::<_zend_brk_cont_element>(),
9499        4usize,
9500        concat!("Alignment of ", stringify!(_zend_brk_cont_element))
9501    );
9502    assert_eq!(
9503        unsafe { &(*(::std::ptr::null::<_zend_brk_cont_element>())).start as *const _ as usize },
9504        0usize,
9505        concat!(
9506            "Offset of field: ",
9507            stringify!(_zend_brk_cont_element),
9508            "::",
9509            stringify!(start)
9510        )
9511    );
9512    assert_eq!(
9513        unsafe { &(*(::std::ptr::null::<_zend_brk_cont_element>())).cont as *const _ as usize },
9514        4usize,
9515        concat!(
9516            "Offset of field: ",
9517            stringify!(_zend_brk_cont_element),
9518            "::",
9519            stringify!(cont)
9520        )
9521    );
9522    assert_eq!(
9523        unsafe { &(*(::std::ptr::null::<_zend_brk_cont_element>())).brk as *const _ as usize },
9524        8usize,
9525        concat!(
9526            "Offset of field: ",
9527            stringify!(_zend_brk_cont_element),
9528            "::",
9529            stringify!(brk)
9530        )
9531    );
9532    assert_eq!(
9533        unsafe { &(*(::std::ptr::null::<_zend_brk_cont_element>())).parent as *const _ as usize },
9534        12usize,
9535        concat!(
9536            "Offset of field: ",
9537            stringify!(_zend_brk_cont_element),
9538            "::",
9539            stringify!(parent)
9540        )
9541    );
9542    assert_eq!(
9543        unsafe {
9544            &(*(::std::ptr::null::<_zend_brk_cont_element>())).is_switch as *const _ as usize
9545        },
9546        16usize,
9547        concat!(
9548            "Offset of field: ",
9549            stringify!(_zend_brk_cont_element),
9550            "::",
9551            stringify!(is_switch)
9552        )
9553    );
9554}
9555pub type zend_brk_cont_element = _zend_brk_cont_element;
9556#[repr(C)]
9557#[derive(Debug, Copy, Clone)]
9558pub struct _zend_label {
9559    pub brk_cont: ::std::os::raw::c_int,
9560    pub opline_num: u32,
9561}
9562#[test]
9563fn bindgen_test_layout__zend_label() {
9564    assert_eq!(
9565        ::std::mem::size_of::<_zend_label>(),
9566        8usize,
9567        concat!("Size of: ", stringify!(_zend_label))
9568    );
9569    assert_eq!(
9570        ::std::mem::align_of::<_zend_label>(),
9571        4usize,
9572        concat!("Alignment of ", stringify!(_zend_label))
9573    );
9574    assert_eq!(
9575        unsafe { &(*(::std::ptr::null::<_zend_label>())).brk_cont as *const _ as usize },
9576        0usize,
9577        concat!(
9578            "Offset of field: ",
9579            stringify!(_zend_label),
9580            "::",
9581            stringify!(brk_cont)
9582        )
9583    );
9584    assert_eq!(
9585        unsafe { &(*(::std::ptr::null::<_zend_label>())).opline_num as *const _ as usize },
9586        4usize,
9587        concat!(
9588            "Offset of field: ",
9589            stringify!(_zend_label),
9590            "::",
9591            stringify!(opline_num)
9592        )
9593    );
9594}
9595pub type zend_label = _zend_label;
9596#[repr(C)]
9597#[derive(Debug, Copy, Clone)]
9598pub struct _zend_try_catch_element {
9599    pub try_op: u32,
9600    pub catch_op: u32,
9601    pub finally_op: u32,
9602    pub finally_end: u32,
9603}
9604#[test]
9605fn bindgen_test_layout__zend_try_catch_element() {
9606    assert_eq!(
9607        ::std::mem::size_of::<_zend_try_catch_element>(),
9608        16usize,
9609        concat!("Size of: ", stringify!(_zend_try_catch_element))
9610    );
9611    assert_eq!(
9612        ::std::mem::align_of::<_zend_try_catch_element>(),
9613        4usize,
9614        concat!("Alignment of ", stringify!(_zend_try_catch_element))
9615    );
9616    assert_eq!(
9617        unsafe { &(*(::std::ptr::null::<_zend_try_catch_element>())).try_op as *const _ as usize },
9618        0usize,
9619        concat!(
9620            "Offset of field: ",
9621            stringify!(_zend_try_catch_element),
9622            "::",
9623            stringify!(try_op)
9624        )
9625    );
9626    assert_eq!(
9627        unsafe {
9628            &(*(::std::ptr::null::<_zend_try_catch_element>())).catch_op as *const _ as usize
9629        },
9630        4usize,
9631        concat!(
9632            "Offset of field: ",
9633            stringify!(_zend_try_catch_element),
9634            "::",
9635            stringify!(catch_op)
9636        )
9637    );
9638    assert_eq!(
9639        unsafe {
9640            &(*(::std::ptr::null::<_zend_try_catch_element>())).finally_op as *const _ as usize
9641        },
9642        8usize,
9643        concat!(
9644            "Offset of field: ",
9645            stringify!(_zend_try_catch_element),
9646            "::",
9647            stringify!(finally_op)
9648        )
9649    );
9650    assert_eq!(
9651        unsafe {
9652            &(*(::std::ptr::null::<_zend_try_catch_element>())).finally_end as *const _ as usize
9653        },
9654        12usize,
9655        concat!(
9656            "Offset of field: ",
9657            stringify!(_zend_try_catch_element),
9658            "::",
9659            stringify!(finally_end)
9660        )
9661    );
9662}
9663pub type zend_try_catch_element = _zend_try_catch_element;
9664#[repr(C)]
9665#[derive(Debug, Copy, Clone)]
9666pub struct _zend_live_range {
9667    pub var: u32,
9668    pub start: u32,
9669    pub end: u32,
9670}
9671#[test]
9672fn bindgen_test_layout__zend_live_range() {
9673    assert_eq!(
9674        ::std::mem::size_of::<_zend_live_range>(),
9675        12usize,
9676        concat!("Size of: ", stringify!(_zend_live_range))
9677    );
9678    assert_eq!(
9679        ::std::mem::align_of::<_zend_live_range>(),
9680        4usize,
9681        concat!("Alignment of ", stringify!(_zend_live_range))
9682    );
9683    assert_eq!(
9684        unsafe { &(*(::std::ptr::null::<_zend_live_range>())).var as *const _ as usize },
9685        0usize,
9686        concat!(
9687            "Offset of field: ",
9688            stringify!(_zend_live_range),
9689            "::",
9690            stringify!(var)
9691        )
9692    );
9693    assert_eq!(
9694        unsafe { &(*(::std::ptr::null::<_zend_live_range>())).start as *const _ as usize },
9695        4usize,
9696        concat!(
9697            "Offset of field: ",
9698            stringify!(_zend_live_range),
9699            "::",
9700            stringify!(start)
9701        )
9702    );
9703    assert_eq!(
9704        unsafe { &(*(::std::ptr::null::<_zend_live_range>())).end as *const _ as usize },
9705        8usize,
9706        concat!(
9707            "Offset of field: ",
9708            stringify!(_zend_live_range),
9709            "::",
9710            stringify!(end)
9711        )
9712    );
9713}
9714pub type zend_live_range = _zend_live_range;
9715#[repr(C)]
9716#[derive(Debug, Copy, Clone)]
9717pub struct _zend_oparray_context {
9718    pub opcodes_size: u32,
9719    pub vars_size: ::std::os::raw::c_int,
9720    pub literals_size: ::std::os::raw::c_int,
9721    pub backpatch_count: ::std::os::raw::c_int,
9722    pub fast_call_var: u32,
9723    pub try_catch_offset: u32,
9724    pub current_brk_cont: ::std::os::raw::c_int,
9725    pub last_brk_cont: ::std::os::raw::c_int,
9726    pub brk_cont_array: *mut zend_brk_cont_element,
9727    pub labels: *mut HashTable,
9728}
9729#[test]
9730fn bindgen_test_layout__zend_oparray_context() {
9731    assert_eq!(
9732        ::std::mem::size_of::<_zend_oparray_context>(),
9733        48usize,
9734        concat!("Size of: ", stringify!(_zend_oparray_context))
9735    );
9736    assert_eq!(
9737        ::std::mem::align_of::<_zend_oparray_context>(),
9738        8usize,
9739        concat!("Alignment of ", stringify!(_zend_oparray_context))
9740    );
9741    assert_eq!(
9742        unsafe {
9743            &(*(::std::ptr::null::<_zend_oparray_context>())).opcodes_size as *const _ as usize
9744        },
9745        0usize,
9746        concat!(
9747            "Offset of field: ",
9748            stringify!(_zend_oparray_context),
9749            "::",
9750            stringify!(opcodes_size)
9751        )
9752    );
9753    assert_eq!(
9754        unsafe { &(*(::std::ptr::null::<_zend_oparray_context>())).vars_size as *const _ as usize },
9755        4usize,
9756        concat!(
9757            "Offset of field: ",
9758            stringify!(_zend_oparray_context),
9759            "::",
9760            stringify!(vars_size)
9761        )
9762    );
9763    assert_eq!(
9764        unsafe {
9765            &(*(::std::ptr::null::<_zend_oparray_context>())).literals_size as *const _ as usize
9766        },
9767        8usize,
9768        concat!(
9769            "Offset of field: ",
9770            stringify!(_zend_oparray_context),
9771            "::",
9772            stringify!(literals_size)
9773        )
9774    );
9775    assert_eq!(
9776        unsafe {
9777            &(*(::std::ptr::null::<_zend_oparray_context>())).backpatch_count as *const _ as usize
9778        },
9779        12usize,
9780        concat!(
9781            "Offset of field: ",
9782            stringify!(_zend_oparray_context),
9783            "::",
9784            stringify!(backpatch_count)
9785        )
9786    );
9787    assert_eq!(
9788        unsafe {
9789            &(*(::std::ptr::null::<_zend_oparray_context>())).fast_call_var as *const _ as usize
9790        },
9791        16usize,
9792        concat!(
9793            "Offset of field: ",
9794            stringify!(_zend_oparray_context),
9795            "::",
9796            stringify!(fast_call_var)
9797        )
9798    );
9799    assert_eq!(
9800        unsafe {
9801            &(*(::std::ptr::null::<_zend_oparray_context>())).try_catch_offset as *const _ as usize
9802        },
9803        20usize,
9804        concat!(
9805            "Offset of field: ",
9806            stringify!(_zend_oparray_context),
9807            "::",
9808            stringify!(try_catch_offset)
9809        )
9810    );
9811    assert_eq!(
9812        unsafe {
9813            &(*(::std::ptr::null::<_zend_oparray_context>())).current_brk_cont as *const _ as usize
9814        },
9815        24usize,
9816        concat!(
9817            "Offset of field: ",
9818            stringify!(_zend_oparray_context),
9819            "::",
9820            stringify!(current_brk_cont)
9821        )
9822    );
9823    assert_eq!(
9824        unsafe {
9825            &(*(::std::ptr::null::<_zend_oparray_context>())).last_brk_cont as *const _ as usize
9826        },
9827        28usize,
9828        concat!(
9829            "Offset of field: ",
9830            stringify!(_zend_oparray_context),
9831            "::",
9832            stringify!(last_brk_cont)
9833        )
9834    );
9835    assert_eq!(
9836        unsafe {
9837            &(*(::std::ptr::null::<_zend_oparray_context>())).brk_cont_array as *const _ as usize
9838        },
9839        32usize,
9840        concat!(
9841            "Offset of field: ",
9842            stringify!(_zend_oparray_context),
9843            "::",
9844            stringify!(brk_cont_array)
9845        )
9846    );
9847    assert_eq!(
9848        unsafe { &(*(::std::ptr::null::<_zend_oparray_context>())).labels as *const _ as usize },
9849        40usize,
9850        concat!(
9851            "Offset of field: ",
9852            stringify!(_zend_oparray_context),
9853            "::",
9854            stringify!(labels)
9855        )
9856    );
9857}
9858pub type zend_oparray_context = _zend_oparray_context;
9859extern "C" {
9860    pub fn zend_visibility_string(fn_flags: u32) -> *mut ::std::os::raw::c_char;
9861}
9862#[repr(C)]
9863#[derive(Debug, Copy, Clone)]
9864pub struct _zend_property_info {
9865    pub offset: u32,
9866    pub flags: u32,
9867    pub name: *mut zend_string,
9868    pub doc_comment: *mut zend_string,
9869    pub ce: *mut zend_class_entry,
9870}
9871#[test]
9872fn bindgen_test_layout__zend_property_info() {
9873    assert_eq!(
9874        ::std::mem::size_of::<_zend_property_info>(),
9875        32usize,
9876        concat!("Size of: ", stringify!(_zend_property_info))
9877    );
9878    assert_eq!(
9879        ::std::mem::align_of::<_zend_property_info>(),
9880        8usize,
9881        concat!("Alignment of ", stringify!(_zend_property_info))
9882    );
9883    assert_eq!(
9884        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).offset as *const _ as usize },
9885        0usize,
9886        concat!(
9887            "Offset of field: ",
9888            stringify!(_zend_property_info),
9889            "::",
9890            stringify!(offset)
9891        )
9892    );
9893    assert_eq!(
9894        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).flags as *const _ as usize },
9895        4usize,
9896        concat!(
9897            "Offset of field: ",
9898            stringify!(_zend_property_info),
9899            "::",
9900            stringify!(flags)
9901        )
9902    );
9903    assert_eq!(
9904        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).name as *const _ as usize },
9905        8usize,
9906        concat!(
9907            "Offset of field: ",
9908            stringify!(_zend_property_info),
9909            "::",
9910            stringify!(name)
9911        )
9912    );
9913    assert_eq!(
9914        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).doc_comment as *const _ as usize },
9915        16usize,
9916        concat!(
9917            "Offset of field: ",
9918            stringify!(_zend_property_info),
9919            "::",
9920            stringify!(doc_comment)
9921        )
9922    );
9923    assert_eq!(
9924        unsafe { &(*(::std::ptr::null::<_zend_property_info>())).ce as *const _ as usize },
9925        24usize,
9926        concat!(
9927            "Offset of field: ",
9928            stringify!(_zend_property_info),
9929            "::",
9930            stringify!(ce)
9931        )
9932    );
9933}
9934pub type zend_property_info = _zend_property_info;
9935#[repr(C)]
9936#[derive(Copy, Clone)]
9937pub struct _zend_class_constant {
9938    pub value: zval,
9939    pub doc_comment: *mut zend_string,
9940    pub ce: *mut zend_class_entry,
9941}
9942#[test]
9943fn bindgen_test_layout__zend_class_constant() {
9944    assert_eq!(
9945        ::std::mem::size_of::<_zend_class_constant>(),
9946        32usize,
9947        concat!("Size of: ", stringify!(_zend_class_constant))
9948    );
9949    assert_eq!(
9950        ::std::mem::align_of::<_zend_class_constant>(),
9951        8usize,
9952        concat!("Alignment of ", stringify!(_zend_class_constant))
9953    );
9954    assert_eq!(
9955        unsafe { &(*(::std::ptr::null::<_zend_class_constant>())).value as *const _ as usize },
9956        0usize,
9957        concat!(
9958            "Offset of field: ",
9959            stringify!(_zend_class_constant),
9960            "::",
9961            stringify!(value)
9962        )
9963    );
9964    assert_eq!(
9965        unsafe {
9966            &(*(::std::ptr::null::<_zend_class_constant>())).doc_comment as *const _ as usize
9967        },
9968        16usize,
9969        concat!(
9970            "Offset of field: ",
9971            stringify!(_zend_class_constant),
9972            "::",
9973            stringify!(doc_comment)
9974        )
9975    );
9976    assert_eq!(
9977        unsafe { &(*(::std::ptr::null::<_zend_class_constant>())).ce as *const _ as usize },
9978        24usize,
9979        concat!(
9980            "Offset of field: ",
9981            stringify!(_zend_class_constant),
9982            "::",
9983            stringify!(ce)
9984        )
9985    );
9986}
9987pub type zend_class_constant = _zend_class_constant;
9988#[repr(C)]
9989#[derive(Debug, Copy, Clone)]
9990pub struct _zend_internal_arg_info {
9991    pub name: *const ::std::os::raw::c_char,
9992    pub type_: zend_type,
9993    pub pass_by_reference: zend_uchar,
9994    pub is_variadic: zend_bool,
9995}
9996#[test]
9997fn bindgen_test_layout__zend_internal_arg_info() {
9998    assert_eq!(
9999        ::std::mem::size_of::<_zend_internal_arg_info>(),
10000        24usize,
10001        concat!("Size of: ", stringify!(_zend_internal_arg_info))
10002    );
10003    assert_eq!(
10004        ::std::mem::align_of::<_zend_internal_arg_info>(),
10005        8usize,
10006        concat!("Alignment of ", stringify!(_zend_internal_arg_info))
10007    );
10008    assert_eq!(
10009        unsafe { &(*(::std::ptr::null::<_zend_internal_arg_info>())).name as *const _ as usize },
10010        0usize,
10011        concat!(
10012            "Offset of field: ",
10013            stringify!(_zend_internal_arg_info),
10014            "::",
10015            stringify!(name)
10016        )
10017    );
10018    assert_eq!(
10019        unsafe { &(*(::std::ptr::null::<_zend_internal_arg_info>())).type_ as *const _ as usize },
10020        8usize,
10021        concat!(
10022            "Offset of field: ",
10023            stringify!(_zend_internal_arg_info),
10024            "::",
10025            stringify!(type_)
10026        )
10027    );
10028    assert_eq!(
10029        unsafe {
10030            &(*(::std::ptr::null::<_zend_internal_arg_info>())).pass_by_reference as *const _
10031                as usize
10032        },
10033        16usize,
10034        concat!(
10035            "Offset of field: ",
10036            stringify!(_zend_internal_arg_info),
10037            "::",
10038            stringify!(pass_by_reference)
10039        )
10040    );
10041    assert_eq!(
10042        unsafe {
10043            &(*(::std::ptr::null::<_zend_internal_arg_info>())).is_variadic as *const _ as usize
10044        },
10045        17usize,
10046        concat!(
10047            "Offset of field: ",
10048            stringify!(_zend_internal_arg_info),
10049            "::",
10050            stringify!(is_variadic)
10051        )
10052    );
10053}
10054pub type zend_internal_arg_info = _zend_internal_arg_info;
10055#[repr(C)]
10056#[derive(Debug, Copy, Clone)]
10057pub struct _zend_arg_info {
10058    pub name: *mut zend_string,
10059    pub type_: zend_type,
10060    pub pass_by_reference: zend_uchar,
10061    pub is_variadic: zend_bool,
10062}
10063#[test]
10064fn bindgen_test_layout__zend_arg_info() {
10065    assert_eq!(
10066        ::std::mem::size_of::<_zend_arg_info>(),
10067        24usize,
10068        concat!("Size of: ", stringify!(_zend_arg_info))
10069    );
10070    assert_eq!(
10071        ::std::mem::align_of::<_zend_arg_info>(),
10072        8usize,
10073        concat!("Alignment of ", stringify!(_zend_arg_info))
10074    );
10075    assert_eq!(
10076        unsafe { &(*(::std::ptr::null::<_zend_arg_info>())).name as *const _ as usize },
10077        0usize,
10078        concat!(
10079            "Offset of field: ",
10080            stringify!(_zend_arg_info),
10081            "::",
10082            stringify!(name)
10083        )
10084    );
10085    assert_eq!(
10086        unsafe { &(*(::std::ptr::null::<_zend_arg_info>())).type_ as *const _ as usize },
10087        8usize,
10088        concat!(
10089            "Offset of field: ",
10090            stringify!(_zend_arg_info),
10091            "::",
10092            stringify!(type_)
10093        )
10094    );
10095    assert_eq!(
10096        unsafe {
10097            &(*(::std::ptr::null::<_zend_arg_info>())).pass_by_reference as *const _ as usize
10098        },
10099        16usize,
10100        concat!(
10101            "Offset of field: ",
10102            stringify!(_zend_arg_info),
10103            "::",
10104            stringify!(pass_by_reference)
10105        )
10106    );
10107    assert_eq!(
10108        unsafe { &(*(::std::ptr::null::<_zend_arg_info>())).is_variadic as *const _ as usize },
10109        17usize,
10110        concat!(
10111            "Offset of field: ",
10112            stringify!(_zend_arg_info),
10113            "::",
10114            stringify!(is_variadic)
10115        )
10116    );
10117}
10118pub type zend_arg_info = _zend_arg_info;
10119#[repr(C)]
10120#[derive(Debug, Copy, Clone)]
10121pub struct _zend_internal_function_info {
10122    pub required_num_args: zend_uintptr_t,
10123    pub type_: zend_type,
10124    pub return_reference: zend_bool,
10125    pub _is_variadic: zend_bool,
10126}
10127#[test]
10128fn bindgen_test_layout__zend_internal_function_info() {
10129    assert_eq!(
10130        ::std::mem::size_of::<_zend_internal_function_info>(),
10131        24usize,
10132        concat!("Size of: ", stringify!(_zend_internal_function_info))
10133    );
10134    assert_eq!(
10135        ::std::mem::align_of::<_zend_internal_function_info>(),
10136        8usize,
10137        concat!("Alignment of ", stringify!(_zend_internal_function_info))
10138    );
10139    assert_eq!(
10140        unsafe {
10141            &(*(::std::ptr::null::<_zend_internal_function_info>())).required_num_args as *const _
10142                as usize
10143        },
10144        0usize,
10145        concat!(
10146            "Offset of field: ",
10147            stringify!(_zend_internal_function_info),
10148            "::",
10149            stringify!(required_num_args)
10150        )
10151    );
10152    assert_eq!(
10153        unsafe {
10154            &(*(::std::ptr::null::<_zend_internal_function_info>())).type_ as *const _ as usize
10155        },
10156        8usize,
10157        concat!(
10158            "Offset of field: ",
10159            stringify!(_zend_internal_function_info),
10160            "::",
10161            stringify!(type_)
10162        )
10163    );
10164    assert_eq!(
10165        unsafe {
10166            &(*(::std::ptr::null::<_zend_internal_function_info>())).return_reference as *const _
10167                as usize
10168        },
10169        16usize,
10170        concat!(
10171            "Offset of field: ",
10172            stringify!(_zend_internal_function_info),
10173            "::",
10174            stringify!(return_reference)
10175        )
10176    );
10177    assert_eq!(
10178        unsafe {
10179            &(*(::std::ptr::null::<_zend_internal_function_info>()))._is_variadic as *const _
10180                as usize
10181        },
10182        17usize,
10183        concat!(
10184            "Offset of field: ",
10185            stringify!(_zend_internal_function_info),
10186            "::",
10187            stringify!(_is_variadic)
10188        )
10189    );
10190}
10191pub type zend_internal_function_info = _zend_internal_function_info;
10192#[repr(C)]
10193#[derive(Debug, Copy, Clone)]
10194pub struct _zend_op_array {
10195    pub type_: zend_uchar,
10196    pub arg_flags: [zend_uchar; 3usize],
10197    pub fn_flags: u32,
10198    pub function_name: *mut zend_string,
10199    pub scope: *mut zend_class_entry,
10200    pub prototype: *mut zend_function,
10201    pub num_args: u32,
10202    pub required_num_args: u32,
10203    pub arg_info: *mut zend_arg_info,
10204    pub cache_size: ::std::os::raw::c_int,
10205    pub last_var: ::std::os::raw::c_int,
10206    pub T: u32,
10207    pub last: u32,
10208    pub opcodes: *mut zend_op,
10209    pub run_time_cache: *mut *mut ::std::os::raw::c_void,
10210    pub static_variables: *mut HashTable,
10211    pub vars: *mut *mut zend_string,
10212    pub refcount: *mut u32,
10213    pub last_live_range: ::std::os::raw::c_int,
10214    pub last_try_catch: ::std::os::raw::c_int,
10215    pub live_range: *mut zend_live_range,
10216    pub try_catch_array: *mut zend_try_catch_element,
10217    pub filename: *mut zend_string,
10218    pub line_start: u32,
10219    pub line_end: u32,
10220    pub doc_comment: *mut zend_string,
10221    pub last_literal: ::std::os::raw::c_int,
10222    pub literals: *mut zval,
10223    pub reserved: [*mut ::std::os::raw::c_void; 6usize],
10224}
10225#[test]
10226fn bindgen_test_layout__zend_op_array() {
10227    assert_eq!(
10228        ::std::mem::size_of::<_zend_op_array>(),
10229        216usize,
10230        concat!("Size of: ", stringify!(_zend_op_array))
10231    );
10232    assert_eq!(
10233        ::std::mem::align_of::<_zend_op_array>(),
10234        8usize,
10235        concat!("Alignment of ", stringify!(_zend_op_array))
10236    );
10237    assert_eq!(
10238        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).type_ as *const _ as usize },
10239        0usize,
10240        concat!(
10241            "Offset of field: ",
10242            stringify!(_zend_op_array),
10243            "::",
10244            stringify!(type_)
10245        )
10246    );
10247    assert_eq!(
10248        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).arg_flags as *const _ as usize },
10249        1usize,
10250        concat!(
10251            "Offset of field: ",
10252            stringify!(_zend_op_array),
10253            "::",
10254            stringify!(arg_flags)
10255        )
10256    );
10257    assert_eq!(
10258        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).fn_flags as *const _ as usize },
10259        4usize,
10260        concat!(
10261            "Offset of field: ",
10262            stringify!(_zend_op_array),
10263            "::",
10264            stringify!(fn_flags)
10265        )
10266    );
10267    assert_eq!(
10268        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).function_name as *const _ as usize },
10269        8usize,
10270        concat!(
10271            "Offset of field: ",
10272            stringify!(_zend_op_array),
10273            "::",
10274            stringify!(function_name)
10275        )
10276    );
10277    assert_eq!(
10278        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).scope as *const _ as usize },
10279        16usize,
10280        concat!(
10281            "Offset of field: ",
10282            stringify!(_zend_op_array),
10283            "::",
10284            stringify!(scope)
10285        )
10286    );
10287    assert_eq!(
10288        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).prototype as *const _ as usize },
10289        24usize,
10290        concat!(
10291            "Offset of field: ",
10292            stringify!(_zend_op_array),
10293            "::",
10294            stringify!(prototype)
10295        )
10296    );
10297    assert_eq!(
10298        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).num_args as *const _ as usize },
10299        32usize,
10300        concat!(
10301            "Offset of field: ",
10302            stringify!(_zend_op_array),
10303            "::",
10304            stringify!(num_args)
10305        )
10306    );
10307    assert_eq!(
10308        unsafe {
10309            &(*(::std::ptr::null::<_zend_op_array>())).required_num_args as *const _ as usize
10310        },
10311        36usize,
10312        concat!(
10313            "Offset of field: ",
10314            stringify!(_zend_op_array),
10315            "::",
10316            stringify!(required_num_args)
10317        )
10318    );
10319    assert_eq!(
10320        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).arg_info as *const _ as usize },
10321        40usize,
10322        concat!(
10323            "Offset of field: ",
10324            stringify!(_zend_op_array),
10325            "::",
10326            stringify!(arg_info)
10327        )
10328    );
10329    assert_eq!(
10330        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).cache_size as *const _ as usize },
10331        48usize,
10332        concat!(
10333            "Offset of field: ",
10334            stringify!(_zend_op_array),
10335            "::",
10336            stringify!(cache_size)
10337        )
10338    );
10339    assert_eq!(
10340        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last_var as *const _ as usize },
10341        52usize,
10342        concat!(
10343            "Offset of field: ",
10344            stringify!(_zend_op_array),
10345            "::",
10346            stringify!(last_var)
10347        )
10348    );
10349    assert_eq!(
10350        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).T as *const _ as usize },
10351        56usize,
10352        concat!(
10353            "Offset of field: ",
10354            stringify!(_zend_op_array),
10355            "::",
10356            stringify!(T)
10357        )
10358    );
10359    assert_eq!(
10360        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last as *const _ as usize },
10361        60usize,
10362        concat!(
10363            "Offset of field: ",
10364            stringify!(_zend_op_array),
10365            "::",
10366            stringify!(last)
10367        )
10368    );
10369    assert_eq!(
10370        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).opcodes as *const _ as usize },
10371        64usize,
10372        concat!(
10373            "Offset of field: ",
10374            stringify!(_zend_op_array),
10375            "::",
10376            stringify!(opcodes)
10377        )
10378    );
10379    assert_eq!(
10380        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).run_time_cache as *const _ as usize },
10381        72usize,
10382        concat!(
10383            "Offset of field: ",
10384            stringify!(_zend_op_array),
10385            "::",
10386            stringify!(run_time_cache)
10387        )
10388    );
10389    assert_eq!(
10390        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).static_variables as *const _ as usize },
10391        80usize,
10392        concat!(
10393            "Offset of field: ",
10394            stringify!(_zend_op_array),
10395            "::",
10396            stringify!(static_variables)
10397        )
10398    );
10399    assert_eq!(
10400        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).vars as *const _ as usize },
10401        88usize,
10402        concat!(
10403            "Offset of field: ",
10404            stringify!(_zend_op_array),
10405            "::",
10406            stringify!(vars)
10407        )
10408    );
10409    assert_eq!(
10410        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).refcount as *const _ as usize },
10411        96usize,
10412        concat!(
10413            "Offset of field: ",
10414            stringify!(_zend_op_array),
10415            "::",
10416            stringify!(refcount)
10417        )
10418    );
10419    assert_eq!(
10420        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last_live_range as *const _ as usize },
10421        104usize,
10422        concat!(
10423            "Offset of field: ",
10424            stringify!(_zend_op_array),
10425            "::",
10426            stringify!(last_live_range)
10427        )
10428    );
10429    assert_eq!(
10430        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last_try_catch as *const _ as usize },
10431        108usize,
10432        concat!(
10433            "Offset of field: ",
10434            stringify!(_zend_op_array),
10435            "::",
10436            stringify!(last_try_catch)
10437        )
10438    );
10439    assert_eq!(
10440        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).live_range as *const _ as usize },
10441        112usize,
10442        concat!(
10443            "Offset of field: ",
10444            stringify!(_zend_op_array),
10445            "::",
10446            stringify!(live_range)
10447        )
10448    );
10449    assert_eq!(
10450        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).try_catch_array as *const _ as usize },
10451        120usize,
10452        concat!(
10453            "Offset of field: ",
10454            stringify!(_zend_op_array),
10455            "::",
10456            stringify!(try_catch_array)
10457        )
10458    );
10459    assert_eq!(
10460        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).filename as *const _ as usize },
10461        128usize,
10462        concat!(
10463            "Offset of field: ",
10464            stringify!(_zend_op_array),
10465            "::",
10466            stringify!(filename)
10467        )
10468    );
10469    assert_eq!(
10470        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).line_start as *const _ as usize },
10471        136usize,
10472        concat!(
10473            "Offset of field: ",
10474            stringify!(_zend_op_array),
10475            "::",
10476            stringify!(line_start)
10477        )
10478    );
10479    assert_eq!(
10480        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).line_end as *const _ as usize },
10481        140usize,
10482        concat!(
10483            "Offset of field: ",
10484            stringify!(_zend_op_array),
10485            "::",
10486            stringify!(line_end)
10487        )
10488    );
10489    assert_eq!(
10490        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).doc_comment as *const _ as usize },
10491        144usize,
10492        concat!(
10493            "Offset of field: ",
10494            stringify!(_zend_op_array),
10495            "::",
10496            stringify!(doc_comment)
10497        )
10498    );
10499    assert_eq!(
10500        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).last_literal as *const _ as usize },
10501        152usize,
10502        concat!(
10503            "Offset of field: ",
10504            stringify!(_zend_op_array),
10505            "::",
10506            stringify!(last_literal)
10507        )
10508    );
10509    assert_eq!(
10510        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).literals as *const _ as usize },
10511        160usize,
10512        concat!(
10513            "Offset of field: ",
10514            stringify!(_zend_op_array),
10515            "::",
10516            stringify!(literals)
10517        )
10518    );
10519    assert_eq!(
10520        unsafe { &(*(::std::ptr::null::<_zend_op_array>())).reserved as *const _ as usize },
10521        168usize,
10522        concat!(
10523            "Offset of field: ",
10524            stringify!(_zend_op_array),
10525            "::",
10526            stringify!(reserved)
10527        )
10528    );
10529}
10530pub type zif_handler = ::std::option::Option<
10531    unsafe extern "C" fn(execute_data: *mut zend_execute_data, return_value: *mut zval),
10532>;
10533#[repr(C)]
10534#[derive(Debug, Copy, Clone)]
10535pub struct _zend_internal_function {
10536    pub type_: zend_uchar,
10537    pub arg_flags: [zend_uchar; 3usize],
10538    pub fn_flags: u32,
10539    pub function_name: *mut zend_string,
10540    pub scope: *mut zend_class_entry,
10541    pub prototype: *mut zend_function,
10542    pub num_args: u32,
10543    pub required_num_args: u32,
10544    pub arg_info: *mut zend_internal_arg_info,
10545    pub handler: zif_handler,
10546    pub module: *mut _zend_module_entry,
10547    pub reserved: [*mut ::std::os::raw::c_void; 6usize],
10548}
10549#[test]
10550fn bindgen_test_layout__zend_internal_function() {
10551    assert_eq!(
10552        ::std::mem::size_of::<_zend_internal_function>(),
10553        112usize,
10554        concat!("Size of: ", stringify!(_zend_internal_function))
10555    );
10556    assert_eq!(
10557        ::std::mem::align_of::<_zend_internal_function>(),
10558        8usize,
10559        concat!("Alignment of ", stringify!(_zend_internal_function))
10560    );
10561    assert_eq!(
10562        unsafe { &(*(::std::ptr::null::<_zend_internal_function>())).type_ as *const _ as usize },
10563        0usize,
10564        concat!(
10565            "Offset of field: ",
10566            stringify!(_zend_internal_function),
10567            "::",
10568            stringify!(type_)
10569        )
10570    );
10571    assert_eq!(
10572        unsafe {
10573            &(*(::std::ptr::null::<_zend_internal_function>())).arg_flags as *const _ as usize
10574        },
10575        1usize,
10576        concat!(
10577            "Offset of field: ",
10578            stringify!(_zend_internal_function),
10579            "::",
10580            stringify!(arg_flags)
10581        )
10582    );
10583    assert_eq!(
10584        unsafe {
10585            &(*(::std::ptr::null::<_zend_internal_function>())).fn_flags as *const _ as usize
10586        },
10587        4usize,
10588        concat!(
10589            "Offset of field: ",
10590            stringify!(_zend_internal_function),
10591            "::",
10592            stringify!(fn_flags)
10593        )
10594    );
10595    assert_eq!(
10596        unsafe {
10597            &(*(::std::ptr::null::<_zend_internal_function>())).function_name as *const _ as usize
10598        },
10599        8usize,
10600        concat!(
10601            "Offset of field: ",
10602            stringify!(_zend_internal_function),
10603            "::",
10604            stringify!(function_name)
10605        )
10606    );
10607    assert_eq!(
10608        unsafe { &(*(::std::ptr::null::<_zend_internal_function>())).scope as *const _ as usize },
10609        16usize,
10610        concat!(
10611            "Offset of field: ",
10612            stringify!(_zend_internal_function),
10613            "::",
10614            stringify!(scope)
10615        )
10616    );
10617    assert_eq!(
10618        unsafe {
10619            &(*(::std::ptr::null::<_zend_internal_function>())).prototype as *const _ as usize
10620        },
10621        24usize,
10622        concat!(
10623            "Offset of field: ",
10624            stringify!(_zend_internal_function),
10625            "::",
10626            stringify!(prototype)
10627        )
10628    );
10629    assert_eq!(
10630        unsafe {
10631            &(*(::std::ptr::null::<_zend_internal_function>())).num_args as *const _ as usize
10632        },
10633        32usize,
10634        concat!(
10635            "Offset of field: ",
10636            stringify!(_zend_internal_function),
10637            "::",
10638            stringify!(num_args)
10639        )
10640    );
10641    assert_eq!(
10642        unsafe {
10643            &(*(::std::ptr::null::<_zend_internal_function>())).required_num_args as *const _
10644                as usize
10645        },
10646        36usize,
10647        concat!(
10648            "Offset of field: ",
10649            stringify!(_zend_internal_function),
10650            "::",
10651            stringify!(required_num_args)
10652        )
10653    );
10654    assert_eq!(
10655        unsafe {
10656            &(*(::std::ptr::null::<_zend_internal_function>())).arg_info as *const _ as usize
10657        },
10658        40usize,
10659        concat!(
10660            "Offset of field: ",
10661            stringify!(_zend_internal_function),
10662            "::",
10663            stringify!(arg_info)
10664        )
10665    );
10666    assert_eq!(
10667        unsafe { &(*(::std::ptr::null::<_zend_internal_function>())).handler as *const _ as usize },
10668        48usize,
10669        concat!(
10670            "Offset of field: ",
10671            stringify!(_zend_internal_function),
10672            "::",
10673            stringify!(handler)
10674        )
10675    );
10676    assert_eq!(
10677        unsafe { &(*(::std::ptr::null::<_zend_internal_function>())).module as *const _ as usize },
10678        56usize,
10679        concat!(
10680            "Offset of field: ",
10681            stringify!(_zend_internal_function),
10682            "::",
10683            stringify!(module)
10684        )
10685    );
10686    assert_eq!(
10687        unsafe {
10688            &(*(::std::ptr::null::<_zend_internal_function>())).reserved as *const _ as usize
10689        },
10690        64usize,
10691        concat!(
10692            "Offset of field: ",
10693            stringify!(_zend_internal_function),
10694            "::",
10695            stringify!(reserved)
10696        )
10697    );
10698}
10699pub type zend_internal_function = _zend_internal_function;
10700#[repr(C)]
10701#[derive(Copy, Clone)]
10702pub union _zend_function {
10703    pub type_: zend_uchar,
10704    pub quick_arg_flags: u32,
10705    pub common: _zend_function__bindgen_ty_1,
10706    pub op_array: zend_op_array,
10707    pub internal_function: zend_internal_function,
10708    _bindgen_union_align: [u64; 27usize],
10709}
10710#[repr(C)]
10711#[derive(Debug, Copy, Clone)]
10712pub struct _zend_function__bindgen_ty_1 {
10713    pub type_: zend_uchar,
10714    pub arg_flags: [zend_uchar; 3usize],
10715    pub fn_flags: u32,
10716    pub function_name: *mut zend_string,
10717    pub scope: *mut zend_class_entry,
10718    pub prototype: *mut _zend_function,
10719    pub num_args: u32,
10720    pub required_num_args: u32,
10721    pub arg_info: *mut zend_arg_info,
10722}
10723#[test]
10724fn bindgen_test_layout__zend_function__bindgen_ty_1() {
10725    assert_eq!(
10726        ::std::mem::size_of::<_zend_function__bindgen_ty_1>(),
10727        48usize,
10728        concat!("Size of: ", stringify!(_zend_function__bindgen_ty_1))
10729    );
10730    assert_eq!(
10731        ::std::mem::align_of::<_zend_function__bindgen_ty_1>(),
10732        8usize,
10733        concat!("Alignment of ", stringify!(_zend_function__bindgen_ty_1))
10734    );
10735    assert_eq!(
10736        unsafe {
10737            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).type_ as *const _ as usize
10738        },
10739        0usize,
10740        concat!(
10741            "Offset of field: ",
10742            stringify!(_zend_function__bindgen_ty_1),
10743            "::",
10744            stringify!(type_)
10745        )
10746    );
10747    assert_eq!(
10748        unsafe {
10749            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).arg_flags as *const _ as usize
10750        },
10751        1usize,
10752        concat!(
10753            "Offset of field: ",
10754            stringify!(_zend_function__bindgen_ty_1),
10755            "::",
10756            stringify!(arg_flags)
10757        )
10758    );
10759    assert_eq!(
10760        unsafe {
10761            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).fn_flags as *const _ as usize
10762        },
10763        4usize,
10764        concat!(
10765            "Offset of field: ",
10766            stringify!(_zend_function__bindgen_ty_1),
10767            "::",
10768            stringify!(fn_flags)
10769        )
10770    );
10771    assert_eq!(
10772        unsafe {
10773            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).function_name as *const _
10774                as usize
10775        },
10776        8usize,
10777        concat!(
10778            "Offset of field: ",
10779            stringify!(_zend_function__bindgen_ty_1),
10780            "::",
10781            stringify!(function_name)
10782        )
10783    );
10784    assert_eq!(
10785        unsafe {
10786            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).scope as *const _ as usize
10787        },
10788        16usize,
10789        concat!(
10790            "Offset of field: ",
10791            stringify!(_zend_function__bindgen_ty_1),
10792            "::",
10793            stringify!(scope)
10794        )
10795    );
10796    assert_eq!(
10797        unsafe {
10798            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).prototype as *const _ as usize
10799        },
10800        24usize,
10801        concat!(
10802            "Offset of field: ",
10803            stringify!(_zend_function__bindgen_ty_1),
10804            "::",
10805            stringify!(prototype)
10806        )
10807    );
10808    assert_eq!(
10809        unsafe {
10810            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).num_args as *const _ as usize
10811        },
10812        32usize,
10813        concat!(
10814            "Offset of field: ",
10815            stringify!(_zend_function__bindgen_ty_1),
10816            "::",
10817            stringify!(num_args)
10818        )
10819    );
10820    assert_eq!(
10821        unsafe {
10822            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).required_num_args as *const _
10823                as usize
10824        },
10825        36usize,
10826        concat!(
10827            "Offset of field: ",
10828            stringify!(_zend_function__bindgen_ty_1),
10829            "::",
10830            stringify!(required_num_args)
10831        )
10832    );
10833    assert_eq!(
10834        unsafe {
10835            &(*(::std::ptr::null::<_zend_function__bindgen_ty_1>())).arg_info as *const _ as usize
10836        },
10837        40usize,
10838        concat!(
10839            "Offset of field: ",
10840            stringify!(_zend_function__bindgen_ty_1),
10841            "::",
10842            stringify!(arg_info)
10843        )
10844    );
10845}
10846#[test]
10847fn bindgen_test_layout__zend_function() {
10848    assert_eq!(
10849        ::std::mem::size_of::<_zend_function>(),
10850        216usize,
10851        concat!("Size of: ", stringify!(_zend_function))
10852    );
10853    assert_eq!(
10854        ::std::mem::align_of::<_zend_function>(),
10855        8usize,
10856        concat!("Alignment of ", stringify!(_zend_function))
10857    );
10858    assert_eq!(
10859        unsafe { &(*(::std::ptr::null::<_zend_function>())).type_ as *const _ as usize },
10860        0usize,
10861        concat!(
10862            "Offset of field: ",
10863            stringify!(_zend_function),
10864            "::",
10865            stringify!(type_)
10866        )
10867    );
10868    assert_eq!(
10869        unsafe { &(*(::std::ptr::null::<_zend_function>())).quick_arg_flags as *const _ as usize },
10870        0usize,
10871        concat!(
10872            "Offset of field: ",
10873            stringify!(_zend_function),
10874            "::",
10875            stringify!(quick_arg_flags)
10876        )
10877    );
10878    assert_eq!(
10879        unsafe { &(*(::std::ptr::null::<_zend_function>())).common as *const _ as usize },
10880        0usize,
10881        concat!(
10882            "Offset of field: ",
10883            stringify!(_zend_function),
10884            "::",
10885            stringify!(common)
10886        )
10887    );
10888    assert_eq!(
10889        unsafe { &(*(::std::ptr::null::<_zend_function>())).op_array as *const _ as usize },
10890        0usize,
10891        concat!(
10892            "Offset of field: ",
10893            stringify!(_zend_function),
10894            "::",
10895            stringify!(op_array)
10896        )
10897    );
10898    assert_eq!(
10899        unsafe {
10900            &(*(::std::ptr::null::<_zend_function>())).internal_function as *const _ as usize
10901        },
10902        0usize,
10903        concat!(
10904            "Offset of field: ",
10905            stringify!(_zend_function),
10906            "::",
10907            stringify!(internal_function)
10908        )
10909    );
10910}
10911pub const _zend_call_kind_ZEND_CALL_NESTED_FUNCTION: _zend_call_kind = 0;
10912pub const _zend_call_kind_ZEND_CALL_NESTED_CODE: _zend_call_kind = 1;
10913pub const _zend_call_kind_ZEND_CALL_TOP_FUNCTION: _zend_call_kind = 2;
10914pub const _zend_call_kind_ZEND_CALL_TOP_CODE: _zend_call_kind = 3;
10915pub type _zend_call_kind = ::std::os::raw::c_uint;
10916pub use self::_zend_call_kind as zend_call_kind;
10917#[repr(C)]
10918#[derive(Copy, Clone)]
10919pub struct _zend_execute_data {
10920    pub opline: *const zend_op,
10921    pub call: *mut zend_execute_data,
10922    pub return_value: *mut zval,
10923    pub func: *mut zend_function,
10924    pub This: zval,
10925    pub prev_execute_data: *mut zend_execute_data,
10926    pub symbol_table: *mut zend_array,
10927    pub run_time_cache: *mut *mut ::std::os::raw::c_void,
10928}
10929#[test]
10930fn bindgen_test_layout__zend_execute_data() {
10931    assert_eq!(
10932        ::std::mem::size_of::<_zend_execute_data>(),
10933        72usize,
10934        concat!("Size of: ", stringify!(_zend_execute_data))
10935    );
10936    assert_eq!(
10937        ::std::mem::align_of::<_zend_execute_data>(),
10938        8usize,
10939        concat!("Alignment of ", stringify!(_zend_execute_data))
10940    );
10941    assert_eq!(
10942        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).opline as *const _ as usize },
10943        0usize,
10944        concat!(
10945            "Offset of field: ",
10946            stringify!(_zend_execute_data),
10947            "::",
10948            stringify!(opline)
10949        )
10950    );
10951    assert_eq!(
10952        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).call as *const _ as usize },
10953        8usize,
10954        concat!(
10955            "Offset of field: ",
10956            stringify!(_zend_execute_data),
10957            "::",
10958            stringify!(call)
10959        )
10960    );
10961    assert_eq!(
10962        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).return_value as *const _ as usize },
10963        16usize,
10964        concat!(
10965            "Offset of field: ",
10966            stringify!(_zend_execute_data),
10967            "::",
10968            stringify!(return_value)
10969        )
10970    );
10971    assert_eq!(
10972        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).func as *const _ as usize },
10973        24usize,
10974        concat!(
10975            "Offset of field: ",
10976            stringify!(_zend_execute_data),
10977            "::",
10978            stringify!(func)
10979        )
10980    );
10981    assert_eq!(
10982        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).This as *const _ as usize },
10983        32usize,
10984        concat!(
10985            "Offset of field: ",
10986            stringify!(_zend_execute_data),
10987            "::",
10988            stringify!(This)
10989        )
10990    );
10991    assert_eq!(
10992        unsafe {
10993            &(*(::std::ptr::null::<_zend_execute_data>())).prev_execute_data as *const _ as usize
10994        },
10995        48usize,
10996        concat!(
10997            "Offset of field: ",
10998            stringify!(_zend_execute_data),
10999            "::",
11000            stringify!(prev_execute_data)
11001        )
11002    );
11003    assert_eq!(
11004        unsafe { &(*(::std::ptr::null::<_zend_execute_data>())).symbol_table as *const _ as usize },
11005        56usize,
11006        concat!(
11007            "Offset of field: ",
11008            stringify!(_zend_execute_data),
11009            "::",
11010            stringify!(symbol_table)
11011        )
11012    );
11013    assert_eq!(
11014        unsafe {
11015            &(*(::std::ptr::null::<_zend_execute_data>())).run_time_cache as *const _ as usize
11016        },
11017        64usize,
11018        concat!(
11019            "Offset of field: ",
11020            stringify!(_zend_execute_data),
11021            "::",
11022            stringify!(run_time_cache)
11023        )
11024    );
11025}
11026pub type __jmp_buf = [::std::os::raw::c_long; 8usize];
11027#[repr(C)]
11028#[derive(Debug, Copy, Clone)]
11029pub struct __jmp_buf_tag {
11030    pub __jmpbuf: __jmp_buf,
11031    pub __mask_was_saved: ::std::os::raw::c_int,
11032    pub __saved_mask: __sigset_t,
11033}
11034#[test]
11035fn bindgen_test_layout___jmp_buf_tag() {
11036    assert_eq!(
11037        ::std::mem::size_of::<__jmp_buf_tag>(),
11038        200usize,
11039        concat!("Size of: ", stringify!(__jmp_buf_tag))
11040    );
11041    assert_eq!(
11042        ::std::mem::align_of::<__jmp_buf_tag>(),
11043        8usize,
11044        concat!("Alignment of ", stringify!(__jmp_buf_tag))
11045    );
11046    assert_eq!(
11047        unsafe { &(*(::std::ptr::null::<__jmp_buf_tag>())).__jmpbuf as *const _ as usize },
11048        0usize,
11049        concat!(
11050            "Offset of field: ",
11051            stringify!(__jmp_buf_tag),
11052            "::",
11053            stringify!(__jmpbuf)
11054        )
11055    );
11056    assert_eq!(
11057        unsafe { &(*(::std::ptr::null::<__jmp_buf_tag>())).__mask_was_saved as *const _ as usize },
11058        64usize,
11059        concat!(
11060            "Offset of field: ",
11061            stringify!(__jmp_buf_tag),
11062            "::",
11063            stringify!(__mask_was_saved)
11064        )
11065    );
11066    assert_eq!(
11067        unsafe { &(*(::std::ptr::null::<__jmp_buf_tag>())).__saved_mask as *const _ as usize },
11068        72usize,
11069        concat!(
11070            "Offset of field: ",
11071            stringify!(__jmp_buf_tag),
11072            "::",
11073            stringify!(__saved_mask)
11074        )
11075    );
11076}
11077pub type jmp_buf = [__jmp_buf_tag; 1usize];
11078pub type zend_compiler_globals = _zend_compiler_globals;
11079pub type zend_executor_globals = _zend_executor_globals;
11080pub type zend_php_scanner_globals = _zend_php_scanner_globals;
11081pub type zend_ini_scanner_globals = _zend_ini_scanner_globals;
11082#[repr(C)]
11083#[derive(Copy, Clone)]
11084pub struct _zend_compiler_globals {
11085    pub loop_var_stack: zend_stack,
11086    pub active_class_entry: *mut zend_class_entry,
11087    pub compiled_filename: *mut zend_string,
11088    pub zend_lineno: ::std::os::raw::c_int,
11089    pub active_op_array: *mut zend_op_array,
11090    pub function_table: *mut HashTable,
11091    pub class_table: *mut HashTable,
11092    pub filenames_table: HashTable,
11093    pub auto_globals: *mut HashTable,
11094    pub parse_error: zend_bool,
11095    pub in_compilation: zend_bool,
11096    pub short_tags: zend_bool,
11097    pub unclean_shutdown: zend_bool,
11098    pub ini_parser_unbuffered_errors: zend_bool,
11099    pub open_files: zend_llist,
11100    pub ini_parser_param: *mut _zend_ini_parser_param,
11101    pub start_lineno: u32,
11102    pub increment_lineno: zend_bool,
11103    pub doc_comment: *mut zend_string,
11104    pub extra_fn_flags: u32,
11105    pub compiler_options: u32,
11106    pub context: zend_oparray_context,
11107    pub file_context: zend_file_context,
11108    pub arena: *mut zend_arena,
11109    pub interned_strings: HashTable,
11110    pub script_encoding_list: *mut *const zend_encoding,
11111    pub script_encoding_list_size: size_t,
11112    pub multibyte: zend_bool,
11113    pub detect_unicode: zend_bool,
11114    pub encoding_declared: zend_bool,
11115    pub ast: *mut zend_ast,
11116    pub ast_arena: *mut zend_arena,
11117    pub delayed_oplines_stack: zend_stack,
11118}
11119#[test]
11120fn bindgen_test_layout__zend_compiler_globals() {
11121    assert_eq!(
11122        ::std::mem::size_of::<_zend_compiler_globals>(),
11123        536usize,
11124        concat!("Size of: ", stringify!(_zend_compiler_globals))
11125    );
11126    assert_eq!(
11127        ::std::mem::align_of::<_zend_compiler_globals>(),
11128        8usize,
11129        concat!("Alignment of ", stringify!(_zend_compiler_globals))
11130    );
11131    assert_eq!(
11132        unsafe {
11133            &(*(::std::ptr::null::<_zend_compiler_globals>())).loop_var_stack as *const _ as usize
11134        },
11135        0usize,
11136        concat!(
11137            "Offset of field: ",
11138            stringify!(_zend_compiler_globals),
11139            "::",
11140            stringify!(loop_var_stack)
11141        )
11142    );
11143    assert_eq!(
11144        unsafe {
11145            &(*(::std::ptr::null::<_zend_compiler_globals>())).active_class_entry as *const _
11146                as usize
11147        },
11148        24usize,
11149        concat!(
11150            "Offset of field: ",
11151            stringify!(_zend_compiler_globals),
11152            "::",
11153            stringify!(active_class_entry)
11154        )
11155    );
11156    assert_eq!(
11157        unsafe {
11158            &(*(::std::ptr::null::<_zend_compiler_globals>())).compiled_filename as *const _
11159                as usize
11160        },
11161        32usize,
11162        concat!(
11163            "Offset of field: ",
11164            stringify!(_zend_compiler_globals),
11165            "::",
11166            stringify!(compiled_filename)
11167        )
11168    );
11169    assert_eq!(
11170        unsafe {
11171            &(*(::std::ptr::null::<_zend_compiler_globals>())).zend_lineno as *const _ as usize
11172        },
11173        40usize,
11174        concat!(
11175            "Offset of field: ",
11176            stringify!(_zend_compiler_globals),
11177            "::",
11178            stringify!(zend_lineno)
11179        )
11180    );
11181    assert_eq!(
11182        unsafe {
11183            &(*(::std::ptr::null::<_zend_compiler_globals>())).active_op_array as *const _ as usize
11184        },
11185        48usize,
11186        concat!(
11187            "Offset of field: ",
11188            stringify!(_zend_compiler_globals),
11189            "::",
11190            stringify!(active_op_array)
11191        )
11192    );
11193    assert_eq!(
11194        unsafe {
11195            &(*(::std::ptr::null::<_zend_compiler_globals>())).function_table as *const _ as usize
11196        },
11197        56usize,
11198        concat!(
11199            "Offset of field: ",
11200            stringify!(_zend_compiler_globals),
11201            "::",
11202            stringify!(function_table)
11203        )
11204    );
11205    assert_eq!(
11206        unsafe {
11207            &(*(::std::ptr::null::<_zend_compiler_globals>())).class_table as *const _ as usize
11208        },
11209        64usize,
11210        concat!(
11211            "Offset of field: ",
11212            stringify!(_zend_compiler_globals),
11213            "::",
11214            stringify!(class_table)
11215        )
11216    );
11217    assert_eq!(
11218        unsafe {
11219            &(*(::std::ptr::null::<_zend_compiler_globals>())).filenames_table as *const _ as usize
11220        },
11221        72usize,
11222        concat!(
11223            "Offset of field: ",
11224            stringify!(_zend_compiler_globals),
11225            "::",
11226            stringify!(filenames_table)
11227        )
11228    );
11229    assert_eq!(
11230        unsafe {
11231            &(*(::std::ptr::null::<_zend_compiler_globals>())).auto_globals as *const _ as usize
11232        },
11233        128usize,
11234        concat!(
11235            "Offset of field: ",
11236            stringify!(_zend_compiler_globals),
11237            "::",
11238            stringify!(auto_globals)
11239        )
11240    );
11241    assert_eq!(
11242        unsafe {
11243            &(*(::std::ptr::null::<_zend_compiler_globals>())).parse_error as *const _ as usize
11244        },
11245        136usize,
11246        concat!(
11247            "Offset of field: ",
11248            stringify!(_zend_compiler_globals),
11249            "::",
11250            stringify!(parse_error)
11251        )
11252    );
11253    assert_eq!(
11254        unsafe {
11255            &(*(::std::ptr::null::<_zend_compiler_globals>())).in_compilation as *const _ as usize
11256        },
11257        137usize,
11258        concat!(
11259            "Offset of field: ",
11260            stringify!(_zend_compiler_globals),
11261            "::",
11262            stringify!(in_compilation)
11263        )
11264    );
11265    assert_eq!(
11266        unsafe {
11267            &(*(::std::ptr::null::<_zend_compiler_globals>())).short_tags as *const _ as usize
11268        },
11269        138usize,
11270        concat!(
11271            "Offset of field: ",
11272            stringify!(_zend_compiler_globals),
11273            "::",
11274            stringify!(short_tags)
11275        )
11276    );
11277    assert_eq!(
11278        unsafe {
11279            &(*(::std::ptr::null::<_zend_compiler_globals>())).unclean_shutdown as *const _ as usize
11280        },
11281        139usize,
11282        concat!(
11283            "Offset of field: ",
11284            stringify!(_zend_compiler_globals),
11285            "::",
11286            stringify!(unclean_shutdown)
11287        )
11288    );
11289    assert_eq!(
11290        unsafe {
11291            &(*(::std::ptr::null::<_zend_compiler_globals>())).ini_parser_unbuffered_errors
11292                as *const _ as usize
11293        },
11294        140usize,
11295        concat!(
11296            "Offset of field: ",
11297            stringify!(_zend_compiler_globals),
11298            "::",
11299            stringify!(ini_parser_unbuffered_errors)
11300        )
11301    );
11302    assert_eq!(
11303        unsafe {
11304            &(*(::std::ptr::null::<_zend_compiler_globals>())).open_files as *const _ as usize
11305        },
11306        144usize,
11307        concat!(
11308            "Offset of field: ",
11309            stringify!(_zend_compiler_globals),
11310            "::",
11311            stringify!(open_files)
11312        )
11313    );
11314    assert_eq!(
11315        unsafe {
11316            &(*(::std::ptr::null::<_zend_compiler_globals>())).ini_parser_param as *const _ as usize
11317        },
11318        200usize,
11319        concat!(
11320            "Offset of field: ",
11321            stringify!(_zend_compiler_globals),
11322            "::",
11323            stringify!(ini_parser_param)
11324        )
11325    );
11326    assert_eq!(
11327        unsafe {
11328            &(*(::std::ptr::null::<_zend_compiler_globals>())).start_lineno as *const _ as usize
11329        },
11330        208usize,
11331        concat!(
11332            "Offset of field: ",
11333            stringify!(_zend_compiler_globals),
11334            "::",
11335            stringify!(start_lineno)
11336        )
11337    );
11338    assert_eq!(
11339        unsafe {
11340            &(*(::std::ptr::null::<_zend_compiler_globals>())).increment_lineno as *const _ as usize
11341        },
11342        212usize,
11343        concat!(
11344            "Offset of field: ",
11345            stringify!(_zend_compiler_globals),
11346            "::",
11347            stringify!(increment_lineno)
11348        )
11349    );
11350    assert_eq!(
11351        unsafe {
11352            &(*(::std::ptr::null::<_zend_compiler_globals>())).doc_comment as *const _ as usize
11353        },
11354        216usize,
11355        concat!(
11356            "Offset of field: ",
11357            stringify!(_zend_compiler_globals),
11358            "::",
11359            stringify!(doc_comment)
11360        )
11361    );
11362    assert_eq!(
11363        unsafe {
11364            &(*(::std::ptr::null::<_zend_compiler_globals>())).extra_fn_flags as *const _ as usize
11365        },
11366        224usize,
11367        concat!(
11368            "Offset of field: ",
11369            stringify!(_zend_compiler_globals),
11370            "::",
11371            stringify!(extra_fn_flags)
11372        )
11373    );
11374    assert_eq!(
11375        unsafe {
11376            &(*(::std::ptr::null::<_zend_compiler_globals>())).compiler_options as *const _ as usize
11377        },
11378        228usize,
11379        concat!(
11380            "Offset of field: ",
11381            stringify!(_zend_compiler_globals),
11382            "::",
11383            stringify!(compiler_options)
11384        )
11385    );
11386    assert_eq!(
11387        unsafe { &(*(::std::ptr::null::<_zend_compiler_globals>())).context as *const _ as usize },
11388        232usize,
11389        concat!(
11390            "Offset of field: ",
11391            stringify!(_zend_compiler_globals),
11392            "::",
11393            stringify!(context)
11394        )
11395    );
11396    assert_eq!(
11397        unsafe {
11398            &(*(::std::ptr::null::<_zend_compiler_globals>())).file_context as *const _ as usize
11399        },
11400        280usize,
11401        concat!(
11402            "Offset of field: ",
11403            stringify!(_zend_compiler_globals),
11404            "::",
11405            stringify!(file_context)
11406        )
11407    );
11408    assert_eq!(
11409        unsafe { &(*(::std::ptr::null::<_zend_compiler_globals>())).arena as *const _ as usize },
11410        408usize,
11411        concat!(
11412            "Offset of field: ",
11413            stringify!(_zend_compiler_globals),
11414            "::",
11415            stringify!(arena)
11416        )
11417    );
11418    assert_eq!(
11419        unsafe {
11420            &(*(::std::ptr::null::<_zend_compiler_globals>())).interned_strings as *const _ as usize
11421        },
11422        416usize,
11423        concat!(
11424            "Offset of field: ",
11425            stringify!(_zend_compiler_globals),
11426            "::",
11427            stringify!(interned_strings)
11428        )
11429    );
11430    assert_eq!(
11431        unsafe {
11432            &(*(::std::ptr::null::<_zend_compiler_globals>())).script_encoding_list as *const _
11433                as usize
11434        },
11435        472usize,
11436        concat!(
11437            "Offset of field: ",
11438            stringify!(_zend_compiler_globals),
11439            "::",
11440            stringify!(script_encoding_list)
11441        )
11442    );
11443    assert_eq!(
11444        unsafe {
11445            &(*(::std::ptr::null::<_zend_compiler_globals>())).script_encoding_list_size as *const _
11446                as usize
11447        },
11448        480usize,
11449        concat!(
11450            "Offset of field: ",
11451            stringify!(_zend_compiler_globals),
11452            "::",
11453            stringify!(script_encoding_list_size)
11454        )
11455    );
11456    assert_eq!(
11457        unsafe {
11458            &(*(::std::ptr::null::<_zend_compiler_globals>())).multibyte as *const _ as usize
11459        },
11460        488usize,
11461        concat!(
11462            "Offset of field: ",
11463            stringify!(_zend_compiler_globals),
11464            "::",
11465            stringify!(multibyte)
11466        )
11467    );
11468    assert_eq!(
11469        unsafe {
11470            &(*(::std::ptr::null::<_zend_compiler_globals>())).detect_unicode as *const _ as usize
11471        },
11472        489usize,
11473        concat!(
11474            "Offset of field: ",
11475            stringify!(_zend_compiler_globals),
11476            "::",
11477            stringify!(detect_unicode)
11478        )
11479    );
11480    assert_eq!(
11481        unsafe {
11482            &(*(::std::ptr::null::<_zend_compiler_globals>())).encoding_declared as *const _
11483                as usize
11484        },
11485        490usize,
11486        concat!(
11487            "Offset of field: ",
11488            stringify!(_zend_compiler_globals),
11489            "::",
11490            stringify!(encoding_declared)
11491        )
11492    );
11493    assert_eq!(
11494        unsafe { &(*(::std::ptr::null::<_zend_compiler_globals>())).ast as *const _ as usize },
11495        496usize,
11496        concat!(
11497            "Offset of field: ",
11498            stringify!(_zend_compiler_globals),
11499            "::",
11500            stringify!(ast)
11501        )
11502    );
11503    assert_eq!(
11504        unsafe {
11505            &(*(::std::ptr::null::<_zend_compiler_globals>())).ast_arena as *const _ as usize
11506        },
11507        504usize,
11508        concat!(
11509            "Offset of field: ",
11510            stringify!(_zend_compiler_globals),
11511            "::",
11512            stringify!(ast_arena)
11513        )
11514    );
11515    assert_eq!(
11516        unsafe {
11517            &(*(::std::ptr::null::<_zend_compiler_globals>())).delayed_oplines_stack as *const _
11518                as usize
11519        },
11520        512usize,
11521        concat!(
11522            "Offset of field: ",
11523            stringify!(_zend_compiler_globals),
11524            "::",
11525            stringify!(delayed_oplines_stack)
11526        )
11527    );
11528}
11529extern "C" {
11530    pub static mut compiler_globals: _zend_compiler_globals;
11531}
11532extern "C" {
11533    pub fn zendparse() -> ::std::os::raw::c_int;
11534}
11535extern "C" {
11536    pub static mut executor_globals: zend_executor_globals;
11537}
11538extern "C" {
11539    pub static mut language_scanner_globals: zend_php_scanner_globals;
11540}
11541extern "C" {
11542    pub static mut ini_scanner_globals: zend_ini_scanner_globals;
11543}
11544#[repr(C)]
11545#[derive(Debug, Copy, Clone)]
11546pub struct _zend_stack {
11547    pub size: ::std::os::raw::c_int,
11548    pub top: ::std::os::raw::c_int,
11549    pub max: ::std::os::raw::c_int,
11550    pub elements: *mut ::std::os::raw::c_void,
11551}
11552#[test]
11553fn bindgen_test_layout__zend_stack() {
11554    assert_eq!(
11555        ::std::mem::size_of::<_zend_stack>(),
11556        24usize,
11557        concat!("Size of: ", stringify!(_zend_stack))
11558    );
11559    assert_eq!(
11560        ::std::mem::align_of::<_zend_stack>(),
11561        8usize,
11562        concat!("Alignment of ", stringify!(_zend_stack))
11563    );
11564    assert_eq!(
11565        unsafe { &(*(::std::ptr::null::<_zend_stack>())).size as *const _ as usize },
11566        0usize,
11567        concat!(
11568            "Offset of field: ",
11569            stringify!(_zend_stack),
11570            "::",
11571            stringify!(size)
11572        )
11573    );
11574    assert_eq!(
11575        unsafe { &(*(::std::ptr::null::<_zend_stack>())).top as *const _ as usize },
11576        4usize,
11577        concat!(
11578            "Offset of field: ",
11579            stringify!(_zend_stack),
11580            "::",
11581            stringify!(top)
11582        )
11583    );
11584    assert_eq!(
11585        unsafe { &(*(::std::ptr::null::<_zend_stack>())).max as *const _ as usize },
11586        8usize,
11587        concat!(
11588            "Offset of field: ",
11589            stringify!(_zend_stack),
11590            "::",
11591            stringify!(max)
11592        )
11593    );
11594    assert_eq!(
11595        unsafe { &(*(::std::ptr::null::<_zend_stack>())).elements as *const _ as usize },
11596        16usize,
11597        concat!(
11598            "Offset of field: ",
11599            stringify!(_zend_stack),
11600            "::",
11601            stringify!(elements)
11602        )
11603    );
11604}
11605pub type zend_stack = _zend_stack;
11606extern "C" {
11607    pub fn zend_stack_init(
11608        stack: *mut zend_stack,
11609        size: ::std::os::raw::c_int,
11610    ) -> ::std::os::raw::c_int;
11611}
11612extern "C" {
11613    pub fn zend_stack_push(
11614        stack: *mut zend_stack,
11615        element: *const ::std::os::raw::c_void,
11616    ) -> ::std::os::raw::c_int;
11617}
11618extern "C" {
11619    pub fn zend_stack_top(stack: *const zend_stack) -> *mut ::std::os::raw::c_void;
11620}
11621extern "C" {
11622    pub fn zend_stack_del_top(stack: *mut zend_stack) -> ::std::os::raw::c_int;
11623}
11624extern "C" {
11625    pub fn zend_stack_int_top(stack: *const zend_stack) -> ::std::os::raw::c_int;
11626}
11627extern "C" {
11628    pub fn zend_stack_is_empty(stack: *const zend_stack) -> ::std::os::raw::c_int;
11629}
11630extern "C" {
11631    pub fn zend_stack_destroy(stack: *mut zend_stack) -> ::std::os::raw::c_int;
11632}
11633extern "C" {
11634    pub fn zend_stack_base(stack: *const zend_stack) -> *mut ::std::os::raw::c_void;
11635}
11636extern "C" {
11637    pub fn zend_stack_count(stack: *const zend_stack) -> ::std::os::raw::c_int;
11638}
11639extern "C" {
11640    pub fn zend_stack_apply(
11641        stack: *mut zend_stack,
11642        type_: ::std::os::raw::c_int,
11643        apply_function: ::std::option::Option<
11644            unsafe extern "C" fn(element: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
11645        >,
11646    );
11647}
11648extern "C" {
11649    pub fn zend_stack_apply_with_argument(
11650        stack: *mut zend_stack,
11651        type_: ::std::os::raw::c_int,
11652        apply_function: ::std::option::Option<
11653            unsafe extern "C" fn(
11654                element: *mut ::std::os::raw::c_void,
11655                arg: *mut ::std::os::raw::c_void,
11656            ) -> ::std::os::raw::c_int,
11657        >,
11658        arg: *mut ::std::os::raw::c_void,
11659    );
11660}
11661extern "C" {
11662    pub fn zend_stack_clean(
11663        stack: *mut zend_stack,
11664        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
11665        free_elements: zend_bool,
11666    );
11667}
11668#[repr(C)]
11669#[derive(Debug, Copy, Clone)]
11670pub struct _zend_ptr_stack {
11671    pub top: ::std::os::raw::c_int,
11672    pub max: ::std::os::raw::c_int,
11673    pub elements: *mut *mut ::std::os::raw::c_void,
11674    pub top_element: *mut *mut ::std::os::raw::c_void,
11675    pub persistent: zend_bool,
11676}
11677#[test]
11678fn bindgen_test_layout__zend_ptr_stack() {
11679    assert_eq!(
11680        ::std::mem::size_of::<_zend_ptr_stack>(),
11681        32usize,
11682        concat!("Size of: ", stringify!(_zend_ptr_stack))
11683    );
11684    assert_eq!(
11685        ::std::mem::align_of::<_zend_ptr_stack>(),
11686        8usize,
11687        concat!("Alignment of ", stringify!(_zend_ptr_stack))
11688    );
11689    assert_eq!(
11690        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).top as *const _ as usize },
11691        0usize,
11692        concat!(
11693            "Offset of field: ",
11694            stringify!(_zend_ptr_stack),
11695            "::",
11696            stringify!(top)
11697        )
11698    );
11699    assert_eq!(
11700        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).max as *const _ as usize },
11701        4usize,
11702        concat!(
11703            "Offset of field: ",
11704            stringify!(_zend_ptr_stack),
11705            "::",
11706            stringify!(max)
11707        )
11708    );
11709    assert_eq!(
11710        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).elements as *const _ as usize },
11711        8usize,
11712        concat!(
11713            "Offset of field: ",
11714            stringify!(_zend_ptr_stack),
11715            "::",
11716            stringify!(elements)
11717        )
11718    );
11719    assert_eq!(
11720        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).top_element as *const _ as usize },
11721        16usize,
11722        concat!(
11723            "Offset of field: ",
11724            stringify!(_zend_ptr_stack),
11725            "::",
11726            stringify!(top_element)
11727        )
11728    );
11729    assert_eq!(
11730        unsafe { &(*(::std::ptr::null::<_zend_ptr_stack>())).persistent as *const _ as usize },
11731        24usize,
11732        concat!(
11733            "Offset of field: ",
11734            stringify!(_zend_ptr_stack),
11735            "::",
11736            stringify!(persistent)
11737        )
11738    );
11739}
11740pub type zend_ptr_stack = _zend_ptr_stack;
11741extern "C" {
11742    pub fn zend_ptr_stack_init(stack: *mut zend_ptr_stack);
11743}
11744extern "C" {
11745    pub fn zend_ptr_stack_init_ex(stack: *mut zend_ptr_stack, persistent: zend_bool);
11746}
11747extern "C" {
11748    pub fn zend_ptr_stack_n_push(stack: *mut zend_ptr_stack, count: ::std::os::raw::c_int, ...);
11749}
11750extern "C" {
11751    pub fn zend_ptr_stack_n_pop(stack: *mut zend_ptr_stack, count: ::std::os::raw::c_int, ...);
11752}
11753extern "C" {
11754    pub fn zend_ptr_stack_destroy(stack: *mut zend_ptr_stack);
11755}
11756extern "C" {
11757    pub fn zend_ptr_stack_apply(
11758        stack: *mut zend_ptr_stack,
11759        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
11760    );
11761}
11762extern "C" {
11763    pub fn zend_ptr_stack_reverse_apply(
11764        stack: *mut zend_ptr_stack,
11765        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
11766    );
11767}
11768extern "C" {
11769    pub fn zend_ptr_stack_clean(
11770        stack: *mut zend_ptr_stack,
11771        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
11772        free_elements: zend_bool,
11773    );
11774}
11775extern "C" {
11776    pub fn zend_ptr_stack_num_elements(stack: *mut zend_ptr_stack) -> ::std::os::raw::c_int;
11777}
11778extern "C" {
11779    pub fn zend_object_std_init(object: *mut zend_object, ce: *mut zend_class_entry);
11780}
11781extern "C" {
11782    pub fn zend_objects_new(ce: *mut zend_class_entry) -> *mut zend_object;
11783}
11784extern "C" {
11785    pub fn zend_objects_clone_members(new_object: *mut zend_object, old_object: *mut zend_object);
11786}
11787extern "C" {
11788    pub fn zend_object_std_dtor(object: *mut zend_object);
11789}
11790extern "C" {
11791    pub fn zend_objects_destroy_object(object: *mut zend_object);
11792}
11793extern "C" {
11794    pub fn zend_objects_clone_obj(object: *mut zval) -> *mut zend_object;
11795}
11796#[repr(C)]
11797#[derive(Debug, Copy, Clone)]
11798pub struct _zend_objects_store {
11799    pub object_buckets: *mut *mut zend_object,
11800    pub top: u32,
11801    pub size: u32,
11802    pub free_list_head: ::std::os::raw::c_int,
11803}
11804#[test]
11805fn bindgen_test_layout__zend_objects_store() {
11806    assert_eq!(
11807        ::std::mem::size_of::<_zend_objects_store>(),
11808        24usize,
11809        concat!("Size of: ", stringify!(_zend_objects_store))
11810    );
11811    assert_eq!(
11812        ::std::mem::align_of::<_zend_objects_store>(),
11813        8usize,
11814        concat!("Alignment of ", stringify!(_zend_objects_store))
11815    );
11816    assert_eq!(
11817        unsafe {
11818            &(*(::std::ptr::null::<_zend_objects_store>())).object_buckets as *const _ as usize
11819        },
11820        0usize,
11821        concat!(
11822            "Offset of field: ",
11823            stringify!(_zend_objects_store),
11824            "::",
11825            stringify!(object_buckets)
11826        )
11827    );
11828    assert_eq!(
11829        unsafe { &(*(::std::ptr::null::<_zend_objects_store>())).top as *const _ as usize },
11830        8usize,
11831        concat!(
11832            "Offset of field: ",
11833            stringify!(_zend_objects_store),
11834            "::",
11835            stringify!(top)
11836        )
11837    );
11838    assert_eq!(
11839        unsafe { &(*(::std::ptr::null::<_zend_objects_store>())).size as *const _ as usize },
11840        12usize,
11841        concat!(
11842            "Offset of field: ",
11843            stringify!(_zend_objects_store),
11844            "::",
11845            stringify!(size)
11846        )
11847    );
11848    assert_eq!(
11849        unsafe {
11850            &(*(::std::ptr::null::<_zend_objects_store>())).free_list_head as *const _ as usize
11851        },
11852        16usize,
11853        concat!(
11854            "Offset of field: ",
11855            stringify!(_zend_objects_store),
11856            "::",
11857            stringify!(free_list_head)
11858        )
11859    );
11860}
11861pub type zend_objects_store = _zend_objects_store;
11862extern "C" {
11863    pub fn zend_objects_store_init(objects: *mut zend_objects_store, init_size: u32);
11864}
11865extern "C" {
11866    pub fn zend_objects_store_call_destructors(objects: *mut zend_objects_store);
11867}
11868extern "C" {
11869    pub fn zend_objects_store_mark_destructed(objects: *mut zend_objects_store);
11870}
11871extern "C" {
11872    pub fn zend_objects_store_free_object_storage(
11873        objects: *mut zend_objects_store,
11874        fast_shutdown: zend_bool,
11875    );
11876}
11877extern "C" {
11878    pub fn zend_objects_store_destroy(objects: *mut zend_objects_store);
11879}
11880extern "C" {
11881    pub fn zend_objects_store_put(object: *mut zend_object);
11882}
11883extern "C" {
11884    pub fn zend_objects_store_del(object: *mut zend_object);
11885}
11886extern "C" {
11887    pub fn zend_init_fpu();
11888}
11889extern "C" {
11890    pub fn zend_shutdown_fpu();
11891}
11892extern "C" {
11893    pub fn zend_ensure_fpu_mode();
11894}
11895pub type fpu_control_t = ::std::os::raw::c_ushort;
11896#[repr(C)]
11897#[derive(Debug, Copy, Clone)]
11898pub struct _zend_encoding {
11899    _unused: [u8; 0],
11900}
11901pub type zend_encoding = _zend_encoding;
11902pub type zend_encoding_filter = ::std::option::Option<
11903    unsafe extern "C" fn(
11904        str_: *mut *mut ::std::os::raw::c_uchar,
11905        str_length: *mut size_t,
11906        buf: *const ::std::os::raw::c_uchar,
11907        length: size_t,
11908    ) -> size_t,
11909>;
11910pub type zend_encoding_fetcher = ::std::option::Option<
11911    unsafe extern "C" fn(encoding_name: *const ::std::os::raw::c_char) -> *const zend_encoding,
11912>;
11913pub type zend_encoding_name_getter = ::std::option::Option<
11914    unsafe extern "C" fn(encoding: *const zend_encoding) -> *const ::std::os::raw::c_char,
11915>;
11916pub type zend_encoding_lexer_compatibility_checker = ::std::option::Option<
11917    unsafe extern "C" fn(encoding: *const zend_encoding) -> ::std::os::raw::c_int,
11918>;
11919pub type zend_encoding_detector = ::std::option::Option<
11920    unsafe extern "C" fn(
11921        string: *const ::std::os::raw::c_uchar,
11922        length: size_t,
11923        list: *mut *const zend_encoding,
11924        list_size: size_t,
11925    ) -> *const zend_encoding,
11926>;
11927pub type zend_encoding_converter = ::std::option::Option<
11928    unsafe extern "C" fn(
11929        to: *mut *mut ::std::os::raw::c_uchar,
11930        to_length: *mut size_t,
11931        from: *const ::std::os::raw::c_uchar,
11932        from_length: size_t,
11933        encoding_to: *const zend_encoding,
11934        encoding_from: *const zend_encoding,
11935    ) -> size_t,
11936>;
11937pub type zend_encoding_list_parser = ::std::option::Option<
11938    unsafe extern "C" fn(
11939        encoding_list: *const ::std::os::raw::c_char,
11940        encoding_list_len: size_t,
11941        return_list: *mut *mut *const zend_encoding,
11942        return_size: *mut size_t,
11943        persistent: ::std::os::raw::c_int,
11944    ) -> ::std::os::raw::c_int,
11945>;
11946pub type zend_encoding_internal_encoding_getter =
11947    ::std::option::Option<unsafe extern "C" fn() -> *const zend_encoding>;
11948pub type zend_encoding_internal_encoding_setter = ::std::option::Option<
11949    unsafe extern "C" fn(encoding: *const zend_encoding) -> ::std::os::raw::c_int,
11950>;
11951#[repr(C)]
11952#[derive(Debug, Copy, Clone)]
11953pub struct _zend_multibyte_functions {
11954    pub provider_name: *const ::std::os::raw::c_char,
11955    pub encoding_fetcher: zend_encoding_fetcher,
11956    pub encoding_name_getter: zend_encoding_name_getter,
11957    pub lexer_compatibility_checker: zend_encoding_lexer_compatibility_checker,
11958    pub encoding_detector: zend_encoding_detector,
11959    pub encoding_converter: zend_encoding_converter,
11960    pub encoding_list_parser: zend_encoding_list_parser,
11961    pub internal_encoding_getter: zend_encoding_internal_encoding_getter,
11962    pub internal_encoding_setter: zend_encoding_internal_encoding_setter,
11963}
11964#[test]
11965fn bindgen_test_layout__zend_multibyte_functions() {
11966    assert_eq!(
11967        ::std::mem::size_of::<_zend_multibyte_functions>(),
11968        72usize,
11969        concat!("Size of: ", stringify!(_zend_multibyte_functions))
11970    );
11971    assert_eq!(
11972        ::std::mem::align_of::<_zend_multibyte_functions>(),
11973        8usize,
11974        concat!("Alignment of ", stringify!(_zend_multibyte_functions))
11975    );
11976    assert_eq!(
11977        unsafe {
11978            &(*(::std::ptr::null::<_zend_multibyte_functions>())).provider_name as *const _ as usize
11979        },
11980        0usize,
11981        concat!(
11982            "Offset of field: ",
11983            stringify!(_zend_multibyte_functions),
11984            "::",
11985            stringify!(provider_name)
11986        )
11987    );
11988    assert_eq!(
11989        unsafe {
11990            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_fetcher as *const _
11991                as usize
11992        },
11993        8usize,
11994        concat!(
11995            "Offset of field: ",
11996            stringify!(_zend_multibyte_functions),
11997            "::",
11998            stringify!(encoding_fetcher)
11999        )
12000    );
12001    assert_eq!(
12002        unsafe {
12003            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_name_getter as *const _
12004                as usize
12005        },
12006        16usize,
12007        concat!(
12008            "Offset of field: ",
12009            stringify!(_zend_multibyte_functions),
12010            "::",
12011            stringify!(encoding_name_getter)
12012        )
12013    );
12014    assert_eq!(
12015        unsafe {
12016            &(*(::std::ptr::null::<_zend_multibyte_functions>())).lexer_compatibility_checker
12017                as *const _ as usize
12018        },
12019        24usize,
12020        concat!(
12021            "Offset of field: ",
12022            stringify!(_zend_multibyte_functions),
12023            "::",
12024            stringify!(lexer_compatibility_checker)
12025        )
12026    );
12027    assert_eq!(
12028        unsafe {
12029            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_detector as *const _
12030                as usize
12031        },
12032        32usize,
12033        concat!(
12034            "Offset of field: ",
12035            stringify!(_zend_multibyte_functions),
12036            "::",
12037            stringify!(encoding_detector)
12038        )
12039    );
12040    assert_eq!(
12041        unsafe {
12042            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_converter as *const _
12043                as usize
12044        },
12045        40usize,
12046        concat!(
12047            "Offset of field: ",
12048            stringify!(_zend_multibyte_functions),
12049            "::",
12050            stringify!(encoding_converter)
12051        )
12052    );
12053    assert_eq!(
12054        unsafe {
12055            &(*(::std::ptr::null::<_zend_multibyte_functions>())).encoding_list_parser as *const _
12056                as usize
12057        },
12058        48usize,
12059        concat!(
12060            "Offset of field: ",
12061            stringify!(_zend_multibyte_functions),
12062            "::",
12063            stringify!(encoding_list_parser)
12064        )
12065    );
12066    assert_eq!(
12067        unsafe {
12068            &(*(::std::ptr::null::<_zend_multibyte_functions>())).internal_encoding_getter
12069                as *const _ as usize
12070        },
12071        56usize,
12072        concat!(
12073            "Offset of field: ",
12074            stringify!(_zend_multibyte_functions),
12075            "::",
12076            stringify!(internal_encoding_getter)
12077        )
12078    );
12079    assert_eq!(
12080        unsafe {
12081            &(*(::std::ptr::null::<_zend_multibyte_functions>())).internal_encoding_setter
12082                as *const _ as usize
12083        },
12084        64usize,
12085        concat!(
12086            "Offset of field: ",
12087            stringify!(_zend_multibyte_functions),
12088            "::",
12089            stringify!(internal_encoding_setter)
12090        )
12091    );
12092}
12093pub type zend_multibyte_functions = _zend_multibyte_functions;
12094extern "C" {
12095    pub static mut zend_multibyte_encoding_utf32be: *const zend_encoding;
12096}
12097extern "C" {
12098    pub static mut zend_multibyte_encoding_utf32le: *const zend_encoding;
12099}
12100extern "C" {
12101    pub static mut zend_multibyte_encoding_utf16be: *const zend_encoding;
12102}
12103extern "C" {
12104    pub static mut zend_multibyte_encoding_utf16le: *const zend_encoding;
12105}
12106extern "C" {
12107    pub static mut zend_multibyte_encoding_utf8: *const zend_encoding;
12108}
12109extern "C" {
12110    pub fn zend_multibyte_set_functions(
12111        functions: *const zend_multibyte_functions,
12112    ) -> ::std::os::raw::c_int;
12113}
12114extern "C" {
12115    pub fn zend_multibyte_restore_functions();
12116}
12117extern "C" {
12118    pub fn zend_multibyte_get_functions() -> *const zend_multibyte_functions;
12119}
12120extern "C" {
12121    pub fn zend_multibyte_fetch_encoding(
12122        name: *const ::std::os::raw::c_char,
12123    ) -> *const zend_encoding;
12124}
12125extern "C" {
12126    pub fn zend_multibyte_get_encoding_name(
12127        encoding: *const zend_encoding,
12128    ) -> *const ::std::os::raw::c_char;
12129}
12130extern "C" {
12131    pub fn zend_multibyte_check_lexer_compatibility(
12132        encoding: *const zend_encoding,
12133    ) -> ::std::os::raw::c_int;
12134}
12135extern "C" {
12136    pub fn zend_multibyte_encoding_detector(
12137        string: *const ::std::os::raw::c_uchar,
12138        length: size_t,
12139        list: *mut *const zend_encoding,
12140        list_size: size_t,
12141    ) -> *const zend_encoding;
12142}
12143extern "C" {
12144    pub fn zend_multibyte_encoding_converter(
12145        to: *mut *mut ::std::os::raw::c_uchar,
12146        to_length: *mut size_t,
12147        from: *const ::std::os::raw::c_uchar,
12148        from_length: size_t,
12149        encoding_to: *const zend_encoding,
12150        encoding_from: *const zend_encoding,
12151    ) -> size_t;
12152}
12153extern "C" {
12154    pub fn zend_multibyte_parse_encoding_list(
12155        encoding_list: *const ::std::os::raw::c_char,
12156        encoding_list_len: size_t,
12157        return_list: *mut *mut *const zend_encoding,
12158        return_size: *mut size_t,
12159        persistent: ::std::os::raw::c_int,
12160    ) -> ::std::os::raw::c_int;
12161}
12162extern "C" {
12163    pub fn zend_multibyte_get_internal_encoding() -> *const zend_encoding;
12164}
12165extern "C" {
12166    pub fn zend_multibyte_get_script_encoding() -> *const zend_encoding;
12167}
12168extern "C" {
12169    pub fn zend_multibyte_set_script_encoding(
12170        encoding_list: *mut *const zend_encoding,
12171        encoding_list_size: size_t,
12172    ) -> ::std::os::raw::c_int;
12173}
12174extern "C" {
12175    pub fn zend_multibyte_set_internal_encoding(
12176        encoding: *const zend_encoding,
12177    ) -> ::std::os::raw::c_int;
12178}
12179extern "C" {
12180    pub fn zend_multibyte_set_script_encoding_by_string(
12181        new_value: *const ::std::os::raw::c_char,
12182        new_value_length: size_t,
12183    ) -> ::std::os::raw::c_int;
12184}
12185pub type zend_arena = _zend_arena;
12186#[repr(C)]
12187#[derive(Debug, Copy, Clone)]
12188pub struct _zend_arena {
12189    pub ptr: *mut ::std::os::raw::c_char,
12190    pub end: *mut ::std::os::raw::c_char,
12191    pub prev: *mut zend_arena,
12192}
12193#[test]
12194fn bindgen_test_layout__zend_arena() {
12195    assert_eq!(
12196        ::std::mem::size_of::<_zend_arena>(),
12197        24usize,
12198        concat!("Size of: ", stringify!(_zend_arena))
12199    );
12200    assert_eq!(
12201        ::std::mem::align_of::<_zend_arena>(),
12202        8usize,
12203        concat!("Alignment of ", stringify!(_zend_arena))
12204    );
12205    assert_eq!(
12206        unsafe { &(*(::std::ptr::null::<_zend_arena>())).ptr as *const _ as usize },
12207        0usize,
12208        concat!(
12209            "Offset of field: ",
12210            stringify!(_zend_arena),
12211            "::",
12212            stringify!(ptr)
12213        )
12214    );
12215    assert_eq!(
12216        unsafe { &(*(::std::ptr::null::<_zend_arena>())).end as *const _ as usize },
12217        8usize,
12218        concat!(
12219            "Offset of field: ",
12220            stringify!(_zend_arena),
12221            "::",
12222            stringify!(end)
12223        )
12224    );
12225    assert_eq!(
12226        unsafe { &(*(::std::ptr::null::<_zend_arena>())).prev as *const _ as usize },
12227        16usize,
12228        concat!(
12229            "Offset of field: ",
12230            stringify!(_zend_arena),
12231            "::",
12232            stringify!(prev)
12233        )
12234    );
12235}
12236pub type zend_vm_stack = *mut _zend_vm_stack;
12237pub type zend_ini_entry = _zend_ini_entry;
12238#[repr(C)]
12239#[derive(Copy, Clone)]
12240pub struct _zend_executor_globals {
12241    pub uninitialized_zval: zval,
12242    pub error_zval: zval,
12243    pub symtable_cache: [*mut zend_array; 32usize],
12244    pub symtable_cache_limit: *mut *mut zend_array,
12245    pub symtable_cache_ptr: *mut *mut zend_array,
12246    pub symbol_table: zend_array,
12247    pub included_files: HashTable,
12248    pub bailout: *mut jmp_buf,
12249    pub error_reporting: ::std::os::raw::c_int,
12250    pub exit_status: ::std::os::raw::c_int,
12251    pub function_table: *mut HashTable,
12252    pub class_table: *mut HashTable,
12253    pub zend_constants: *mut HashTable,
12254    pub vm_stack_top: *mut zval,
12255    pub vm_stack_end: *mut zval,
12256    pub vm_stack: zend_vm_stack,
12257    pub vm_stack_page_size: size_t,
12258    pub current_execute_data: *mut _zend_execute_data,
12259    pub fake_scope: *mut zend_class_entry,
12260    pub precision: zend_long,
12261    pub ticks_count: ::std::os::raw::c_int,
12262    pub persistent_constants_count: u32,
12263    pub persistent_functions_count: u32,
12264    pub persistent_classes_count: u32,
12265    pub in_autoload: *mut HashTable,
12266    pub autoload_func: *mut zend_function,
12267    pub full_tables_cleanup: zend_bool,
12268    pub no_extensions: zend_bool,
12269    pub vm_interrupt: zend_bool,
12270    pub timed_out: zend_bool,
12271    pub hard_timeout: zend_long,
12272    pub regular_list: HashTable,
12273    pub persistent_list: HashTable,
12274    pub user_error_handler_error_reporting: ::std::os::raw::c_int,
12275    pub user_error_handler: zval,
12276    pub user_exception_handler: zval,
12277    pub user_error_handlers_error_reporting: zend_stack,
12278    pub user_error_handlers: zend_stack,
12279    pub user_exception_handlers: zend_stack,
12280    pub error_handling: zend_error_handling_t,
12281    pub exception_class: *mut zend_class_entry,
12282    pub timeout_seconds: zend_long,
12283    pub lambda_count: ::std::os::raw::c_int,
12284    pub ini_directives: *mut HashTable,
12285    pub modified_ini_directives: *mut HashTable,
12286    pub error_reporting_ini_entry: *mut zend_ini_entry,
12287    pub objects_store: zend_objects_store,
12288    pub exception: *mut zend_object,
12289    pub prev_exception: *mut zend_object,
12290    pub opline_before_exception: *const zend_op,
12291    pub exception_op: [zend_op; 3usize],
12292    pub current_module: *mut _zend_module_entry,
12293    pub active: zend_bool,
12294    pub flags: zend_uchar,
12295    pub assertions: zend_long,
12296    pub ht_iterators_count: u32,
12297    pub ht_iterators_used: u32,
12298    pub ht_iterators: *mut HashTableIterator,
12299    pub ht_iterators_slots: [HashTableIterator; 16usize],
12300    pub saved_fpu_cw_ptr: *mut ::std::os::raw::c_void,
12301    pub saved_fpu_cw: fpu_control_t,
12302    pub trampoline: zend_function,
12303    pub call_trampoline_op: zend_op,
12304    pub each_deprecation_thrown: zend_bool,
12305    pub reserved: [*mut ::std::os::raw::c_void; 6usize],
12306}
12307#[test]
12308fn bindgen_test_layout__zend_executor_globals() {
12309    assert_eq!(
12310        ::std::mem::size_of::<_zend_executor_globals>(),
12311        1600usize,
12312        concat!("Size of: ", stringify!(_zend_executor_globals))
12313    );
12314    assert_eq!(
12315        ::std::mem::align_of::<_zend_executor_globals>(),
12316        8usize,
12317        concat!("Alignment of ", stringify!(_zend_executor_globals))
12318    );
12319    assert_eq!(
12320        unsafe {
12321            &(*(::std::ptr::null::<_zend_executor_globals>())).uninitialized_zval as *const _
12322                as usize
12323        },
12324        0usize,
12325        concat!(
12326            "Offset of field: ",
12327            stringify!(_zend_executor_globals),
12328            "::",
12329            stringify!(uninitialized_zval)
12330        )
12331    );
12332    assert_eq!(
12333        unsafe {
12334            &(*(::std::ptr::null::<_zend_executor_globals>())).error_zval as *const _ as usize
12335        },
12336        16usize,
12337        concat!(
12338            "Offset of field: ",
12339            stringify!(_zend_executor_globals),
12340            "::",
12341            stringify!(error_zval)
12342        )
12343    );
12344    assert_eq!(
12345        unsafe {
12346            &(*(::std::ptr::null::<_zend_executor_globals>())).symtable_cache as *const _ as usize
12347        },
12348        32usize,
12349        concat!(
12350            "Offset of field: ",
12351            stringify!(_zend_executor_globals),
12352            "::",
12353            stringify!(symtable_cache)
12354        )
12355    );
12356    assert_eq!(
12357        unsafe {
12358            &(*(::std::ptr::null::<_zend_executor_globals>())).symtable_cache_limit as *const _
12359                as usize
12360        },
12361        288usize,
12362        concat!(
12363            "Offset of field: ",
12364            stringify!(_zend_executor_globals),
12365            "::",
12366            stringify!(symtable_cache_limit)
12367        )
12368    );
12369    assert_eq!(
12370        unsafe {
12371            &(*(::std::ptr::null::<_zend_executor_globals>())).symtable_cache_ptr as *const _
12372                as usize
12373        },
12374        296usize,
12375        concat!(
12376            "Offset of field: ",
12377            stringify!(_zend_executor_globals),
12378            "::",
12379            stringify!(symtable_cache_ptr)
12380        )
12381    );
12382    assert_eq!(
12383        unsafe {
12384            &(*(::std::ptr::null::<_zend_executor_globals>())).symbol_table as *const _ as usize
12385        },
12386        304usize,
12387        concat!(
12388            "Offset of field: ",
12389            stringify!(_zend_executor_globals),
12390            "::",
12391            stringify!(symbol_table)
12392        )
12393    );
12394    assert_eq!(
12395        unsafe {
12396            &(*(::std::ptr::null::<_zend_executor_globals>())).included_files as *const _ as usize
12397        },
12398        360usize,
12399        concat!(
12400            "Offset of field: ",
12401            stringify!(_zend_executor_globals),
12402            "::",
12403            stringify!(included_files)
12404        )
12405    );
12406    assert_eq!(
12407        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).bailout as *const _ as usize },
12408        416usize,
12409        concat!(
12410            "Offset of field: ",
12411            stringify!(_zend_executor_globals),
12412            "::",
12413            stringify!(bailout)
12414        )
12415    );
12416    assert_eq!(
12417        unsafe {
12418            &(*(::std::ptr::null::<_zend_executor_globals>())).error_reporting as *const _ as usize
12419        },
12420        424usize,
12421        concat!(
12422            "Offset of field: ",
12423            stringify!(_zend_executor_globals),
12424            "::",
12425            stringify!(error_reporting)
12426        )
12427    );
12428    assert_eq!(
12429        unsafe {
12430            &(*(::std::ptr::null::<_zend_executor_globals>())).exit_status as *const _ as usize
12431        },
12432        428usize,
12433        concat!(
12434            "Offset of field: ",
12435            stringify!(_zend_executor_globals),
12436            "::",
12437            stringify!(exit_status)
12438        )
12439    );
12440    assert_eq!(
12441        unsafe {
12442            &(*(::std::ptr::null::<_zend_executor_globals>())).function_table as *const _ as usize
12443        },
12444        432usize,
12445        concat!(
12446            "Offset of field: ",
12447            stringify!(_zend_executor_globals),
12448            "::",
12449            stringify!(function_table)
12450        )
12451    );
12452    assert_eq!(
12453        unsafe {
12454            &(*(::std::ptr::null::<_zend_executor_globals>())).class_table as *const _ as usize
12455        },
12456        440usize,
12457        concat!(
12458            "Offset of field: ",
12459            stringify!(_zend_executor_globals),
12460            "::",
12461            stringify!(class_table)
12462        )
12463    );
12464    assert_eq!(
12465        unsafe {
12466            &(*(::std::ptr::null::<_zend_executor_globals>())).zend_constants as *const _ as usize
12467        },
12468        448usize,
12469        concat!(
12470            "Offset of field: ",
12471            stringify!(_zend_executor_globals),
12472            "::",
12473            stringify!(zend_constants)
12474        )
12475    );
12476    assert_eq!(
12477        unsafe {
12478            &(*(::std::ptr::null::<_zend_executor_globals>())).vm_stack_top as *const _ as usize
12479        },
12480        456usize,
12481        concat!(
12482            "Offset of field: ",
12483            stringify!(_zend_executor_globals),
12484            "::",
12485            stringify!(vm_stack_top)
12486        )
12487    );
12488    assert_eq!(
12489        unsafe {
12490            &(*(::std::ptr::null::<_zend_executor_globals>())).vm_stack_end as *const _ as usize
12491        },
12492        464usize,
12493        concat!(
12494            "Offset of field: ",
12495            stringify!(_zend_executor_globals),
12496            "::",
12497            stringify!(vm_stack_end)
12498        )
12499    );
12500    assert_eq!(
12501        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).vm_stack as *const _ as usize },
12502        472usize,
12503        concat!(
12504            "Offset of field: ",
12505            stringify!(_zend_executor_globals),
12506            "::",
12507            stringify!(vm_stack)
12508        )
12509    );
12510    assert_eq!(
12511        unsafe {
12512            &(*(::std::ptr::null::<_zend_executor_globals>())).vm_stack_page_size as *const _
12513                as usize
12514        },
12515        480usize,
12516        concat!(
12517            "Offset of field: ",
12518            stringify!(_zend_executor_globals),
12519            "::",
12520            stringify!(vm_stack_page_size)
12521        )
12522    );
12523    assert_eq!(
12524        unsafe {
12525            &(*(::std::ptr::null::<_zend_executor_globals>())).current_execute_data as *const _
12526                as usize
12527        },
12528        488usize,
12529        concat!(
12530            "Offset of field: ",
12531            stringify!(_zend_executor_globals),
12532            "::",
12533            stringify!(current_execute_data)
12534        )
12535    );
12536    assert_eq!(
12537        unsafe {
12538            &(*(::std::ptr::null::<_zend_executor_globals>())).fake_scope as *const _ as usize
12539        },
12540        496usize,
12541        concat!(
12542            "Offset of field: ",
12543            stringify!(_zend_executor_globals),
12544            "::",
12545            stringify!(fake_scope)
12546        )
12547    );
12548    assert_eq!(
12549        unsafe {
12550            &(*(::std::ptr::null::<_zend_executor_globals>())).precision as *const _ as usize
12551        },
12552        504usize,
12553        concat!(
12554            "Offset of field: ",
12555            stringify!(_zend_executor_globals),
12556            "::",
12557            stringify!(precision)
12558        )
12559    );
12560    assert_eq!(
12561        unsafe {
12562            &(*(::std::ptr::null::<_zend_executor_globals>())).ticks_count as *const _ as usize
12563        },
12564        512usize,
12565        concat!(
12566            "Offset of field: ",
12567            stringify!(_zend_executor_globals),
12568            "::",
12569            stringify!(ticks_count)
12570        )
12571    );
12572    assert_eq!(
12573        unsafe {
12574            &(*(::std::ptr::null::<_zend_executor_globals>())).persistent_constants_count
12575                as *const _ as usize
12576        },
12577        516usize,
12578        concat!(
12579            "Offset of field: ",
12580            stringify!(_zend_executor_globals),
12581            "::",
12582            stringify!(persistent_constants_count)
12583        )
12584    );
12585    assert_eq!(
12586        unsafe {
12587            &(*(::std::ptr::null::<_zend_executor_globals>())).persistent_functions_count
12588                as *const _ as usize
12589        },
12590        520usize,
12591        concat!(
12592            "Offset of field: ",
12593            stringify!(_zend_executor_globals),
12594            "::",
12595            stringify!(persistent_functions_count)
12596        )
12597    );
12598    assert_eq!(
12599        unsafe {
12600            &(*(::std::ptr::null::<_zend_executor_globals>())).persistent_classes_count as *const _
12601                as usize
12602        },
12603        524usize,
12604        concat!(
12605            "Offset of field: ",
12606            stringify!(_zend_executor_globals),
12607            "::",
12608            stringify!(persistent_classes_count)
12609        )
12610    );
12611    assert_eq!(
12612        unsafe {
12613            &(*(::std::ptr::null::<_zend_executor_globals>())).in_autoload as *const _ as usize
12614        },
12615        528usize,
12616        concat!(
12617            "Offset of field: ",
12618            stringify!(_zend_executor_globals),
12619            "::",
12620            stringify!(in_autoload)
12621        )
12622    );
12623    assert_eq!(
12624        unsafe {
12625            &(*(::std::ptr::null::<_zend_executor_globals>())).autoload_func as *const _ as usize
12626        },
12627        536usize,
12628        concat!(
12629            "Offset of field: ",
12630            stringify!(_zend_executor_globals),
12631            "::",
12632            stringify!(autoload_func)
12633        )
12634    );
12635    assert_eq!(
12636        unsafe {
12637            &(*(::std::ptr::null::<_zend_executor_globals>())).full_tables_cleanup as *const _
12638                as usize
12639        },
12640        544usize,
12641        concat!(
12642            "Offset of field: ",
12643            stringify!(_zend_executor_globals),
12644            "::",
12645            stringify!(full_tables_cleanup)
12646        )
12647    );
12648    assert_eq!(
12649        unsafe {
12650            &(*(::std::ptr::null::<_zend_executor_globals>())).no_extensions as *const _ as usize
12651        },
12652        545usize,
12653        concat!(
12654            "Offset of field: ",
12655            stringify!(_zend_executor_globals),
12656            "::",
12657            stringify!(no_extensions)
12658        )
12659    );
12660    assert_eq!(
12661        unsafe {
12662            &(*(::std::ptr::null::<_zend_executor_globals>())).vm_interrupt as *const _ as usize
12663        },
12664        546usize,
12665        concat!(
12666            "Offset of field: ",
12667            stringify!(_zend_executor_globals),
12668            "::",
12669            stringify!(vm_interrupt)
12670        )
12671    );
12672    assert_eq!(
12673        unsafe {
12674            &(*(::std::ptr::null::<_zend_executor_globals>())).timed_out as *const _ as usize
12675        },
12676        547usize,
12677        concat!(
12678            "Offset of field: ",
12679            stringify!(_zend_executor_globals),
12680            "::",
12681            stringify!(timed_out)
12682        )
12683    );
12684    assert_eq!(
12685        unsafe {
12686            &(*(::std::ptr::null::<_zend_executor_globals>())).hard_timeout as *const _ as usize
12687        },
12688        552usize,
12689        concat!(
12690            "Offset of field: ",
12691            stringify!(_zend_executor_globals),
12692            "::",
12693            stringify!(hard_timeout)
12694        )
12695    );
12696    assert_eq!(
12697        unsafe {
12698            &(*(::std::ptr::null::<_zend_executor_globals>())).regular_list as *const _ as usize
12699        },
12700        560usize,
12701        concat!(
12702            "Offset of field: ",
12703            stringify!(_zend_executor_globals),
12704            "::",
12705            stringify!(regular_list)
12706        )
12707    );
12708    assert_eq!(
12709        unsafe {
12710            &(*(::std::ptr::null::<_zend_executor_globals>())).persistent_list as *const _ as usize
12711        },
12712        616usize,
12713        concat!(
12714            "Offset of field: ",
12715            stringify!(_zend_executor_globals),
12716            "::",
12717            stringify!(persistent_list)
12718        )
12719    );
12720    assert_eq!(
12721        unsafe {
12722            &(*(::std::ptr::null::<_zend_executor_globals>())).user_error_handler_error_reporting
12723                as *const _ as usize
12724        },
12725        672usize,
12726        concat!(
12727            "Offset of field: ",
12728            stringify!(_zend_executor_globals),
12729            "::",
12730            stringify!(user_error_handler_error_reporting)
12731        )
12732    );
12733    assert_eq!(
12734        unsafe {
12735            &(*(::std::ptr::null::<_zend_executor_globals>())).user_error_handler as *const _
12736                as usize
12737        },
12738        680usize,
12739        concat!(
12740            "Offset of field: ",
12741            stringify!(_zend_executor_globals),
12742            "::",
12743            stringify!(user_error_handler)
12744        )
12745    );
12746    assert_eq!(
12747        unsafe {
12748            &(*(::std::ptr::null::<_zend_executor_globals>())).user_exception_handler as *const _
12749                as usize
12750        },
12751        696usize,
12752        concat!(
12753            "Offset of field: ",
12754            stringify!(_zend_executor_globals),
12755            "::",
12756            stringify!(user_exception_handler)
12757        )
12758    );
12759    assert_eq!(
12760        unsafe {
12761            &(*(::std::ptr::null::<_zend_executor_globals>())).user_error_handlers_error_reporting
12762                as *const _ as usize
12763        },
12764        712usize,
12765        concat!(
12766            "Offset of field: ",
12767            stringify!(_zend_executor_globals),
12768            "::",
12769            stringify!(user_error_handlers_error_reporting)
12770        )
12771    );
12772    assert_eq!(
12773        unsafe {
12774            &(*(::std::ptr::null::<_zend_executor_globals>())).user_error_handlers as *const _
12775                as usize
12776        },
12777        736usize,
12778        concat!(
12779            "Offset of field: ",
12780            stringify!(_zend_executor_globals),
12781            "::",
12782            stringify!(user_error_handlers)
12783        )
12784    );
12785    assert_eq!(
12786        unsafe {
12787            &(*(::std::ptr::null::<_zend_executor_globals>())).user_exception_handlers as *const _
12788                as usize
12789        },
12790        760usize,
12791        concat!(
12792            "Offset of field: ",
12793            stringify!(_zend_executor_globals),
12794            "::",
12795            stringify!(user_exception_handlers)
12796        )
12797    );
12798    assert_eq!(
12799        unsafe {
12800            &(*(::std::ptr::null::<_zend_executor_globals>())).error_handling as *const _ as usize
12801        },
12802        784usize,
12803        concat!(
12804            "Offset of field: ",
12805            stringify!(_zend_executor_globals),
12806            "::",
12807            stringify!(error_handling)
12808        )
12809    );
12810    assert_eq!(
12811        unsafe {
12812            &(*(::std::ptr::null::<_zend_executor_globals>())).exception_class as *const _ as usize
12813        },
12814        792usize,
12815        concat!(
12816            "Offset of field: ",
12817            stringify!(_zend_executor_globals),
12818            "::",
12819            stringify!(exception_class)
12820        )
12821    );
12822    assert_eq!(
12823        unsafe {
12824            &(*(::std::ptr::null::<_zend_executor_globals>())).timeout_seconds as *const _ as usize
12825        },
12826        800usize,
12827        concat!(
12828            "Offset of field: ",
12829            stringify!(_zend_executor_globals),
12830            "::",
12831            stringify!(timeout_seconds)
12832        )
12833    );
12834    assert_eq!(
12835        unsafe {
12836            &(*(::std::ptr::null::<_zend_executor_globals>())).lambda_count as *const _ as usize
12837        },
12838        808usize,
12839        concat!(
12840            "Offset of field: ",
12841            stringify!(_zend_executor_globals),
12842            "::",
12843            stringify!(lambda_count)
12844        )
12845    );
12846    assert_eq!(
12847        unsafe {
12848            &(*(::std::ptr::null::<_zend_executor_globals>())).ini_directives as *const _ as usize
12849        },
12850        816usize,
12851        concat!(
12852            "Offset of field: ",
12853            stringify!(_zend_executor_globals),
12854            "::",
12855            stringify!(ini_directives)
12856        )
12857    );
12858    assert_eq!(
12859        unsafe {
12860            &(*(::std::ptr::null::<_zend_executor_globals>())).modified_ini_directives as *const _
12861                as usize
12862        },
12863        824usize,
12864        concat!(
12865            "Offset of field: ",
12866            stringify!(_zend_executor_globals),
12867            "::",
12868            stringify!(modified_ini_directives)
12869        )
12870    );
12871    assert_eq!(
12872        unsafe {
12873            &(*(::std::ptr::null::<_zend_executor_globals>())).error_reporting_ini_entry as *const _
12874                as usize
12875        },
12876        832usize,
12877        concat!(
12878            "Offset of field: ",
12879            stringify!(_zend_executor_globals),
12880            "::",
12881            stringify!(error_reporting_ini_entry)
12882        )
12883    );
12884    assert_eq!(
12885        unsafe {
12886            &(*(::std::ptr::null::<_zend_executor_globals>())).objects_store as *const _ as usize
12887        },
12888        840usize,
12889        concat!(
12890            "Offset of field: ",
12891            stringify!(_zend_executor_globals),
12892            "::",
12893            stringify!(objects_store)
12894        )
12895    );
12896    assert_eq!(
12897        unsafe {
12898            &(*(::std::ptr::null::<_zend_executor_globals>())).exception as *const _ as usize
12899        },
12900        864usize,
12901        concat!(
12902            "Offset of field: ",
12903            stringify!(_zend_executor_globals),
12904            "::",
12905            stringify!(exception)
12906        )
12907    );
12908    assert_eq!(
12909        unsafe {
12910            &(*(::std::ptr::null::<_zend_executor_globals>())).prev_exception as *const _ as usize
12911        },
12912        872usize,
12913        concat!(
12914            "Offset of field: ",
12915            stringify!(_zend_executor_globals),
12916            "::",
12917            stringify!(prev_exception)
12918        )
12919    );
12920    assert_eq!(
12921        unsafe {
12922            &(*(::std::ptr::null::<_zend_executor_globals>())).opline_before_exception as *const _
12923                as usize
12924        },
12925        880usize,
12926        concat!(
12927            "Offset of field: ",
12928            stringify!(_zend_executor_globals),
12929            "::",
12930            stringify!(opline_before_exception)
12931        )
12932    );
12933    assert_eq!(
12934        unsafe {
12935            &(*(::std::ptr::null::<_zend_executor_globals>())).exception_op as *const _ as usize
12936        },
12937        888usize,
12938        concat!(
12939            "Offset of field: ",
12940            stringify!(_zend_executor_globals),
12941            "::",
12942            stringify!(exception_op)
12943        )
12944    );
12945    assert_eq!(
12946        unsafe {
12947            &(*(::std::ptr::null::<_zend_executor_globals>())).current_module as *const _ as usize
12948        },
12949        984usize,
12950        concat!(
12951            "Offset of field: ",
12952            stringify!(_zend_executor_globals),
12953            "::",
12954            stringify!(current_module)
12955        )
12956    );
12957    assert_eq!(
12958        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).active as *const _ as usize },
12959        992usize,
12960        concat!(
12961            "Offset of field: ",
12962            stringify!(_zend_executor_globals),
12963            "::",
12964            stringify!(active)
12965        )
12966    );
12967    assert_eq!(
12968        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).flags as *const _ as usize },
12969        993usize,
12970        concat!(
12971            "Offset of field: ",
12972            stringify!(_zend_executor_globals),
12973            "::",
12974            stringify!(flags)
12975        )
12976    );
12977    assert_eq!(
12978        unsafe {
12979            &(*(::std::ptr::null::<_zend_executor_globals>())).assertions as *const _ as usize
12980        },
12981        1000usize,
12982        concat!(
12983            "Offset of field: ",
12984            stringify!(_zend_executor_globals),
12985            "::",
12986            stringify!(assertions)
12987        )
12988    );
12989    assert_eq!(
12990        unsafe {
12991            &(*(::std::ptr::null::<_zend_executor_globals>())).ht_iterators_count as *const _
12992                as usize
12993        },
12994        1008usize,
12995        concat!(
12996            "Offset of field: ",
12997            stringify!(_zend_executor_globals),
12998            "::",
12999            stringify!(ht_iterators_count)
13000        )
13001    );
13002    assert_eq!(
13003        unsafe {
13004            &(*(::std::ptr::null::<_zend_executor_globals>())).ht_iterators_used as *const _
13005                as usize
13006        },
13007        1012usize,
13008        concat!(
13009            "Offset of field: ",
13010            stringify!(_zend_executor_globals),
13011            "::",
13012            stringify!(ht_iterators_used)
13013        )
13014    );
13015    assert_eq!(
13016        unsafe {
13017            &(*(::std::ptr::null::<_zend_executor_globals>())).ht_iterators as *const _ as usize
13018        },
13019        1016usize,
13020        concat!(
13021            "Offset of field: ",
13022            stringify!(_zend_executor_globals),
13023            "::",
13024            stringify!(ht_iterators)
13025        )
13026    );
13027    assert_eq!(
13028        unsafe {
13029            &(*(::std::ptr::null::<_zend_executor_globals>())).ht_iterators_slots as *const _
13030                as usize
13031        },
13032        1024usize,
13033        concat!(
13034            "Offset of field: ",
13035            stringify!(_zend_executor_globals),
13036            "::",
13037            stringify!(ht_iterators_slots)
13038        )
13039    );
13040    assert_eq!(
13041        unsafe {
13042            &(*(::std::ptr::null::<_zend_executor_globals>())).saved_fpu_cw_ptr as *const _ as usize
13043        },
13044        1280usize,
13045        concat!(
13046            "Offset of field: ",
13047            stringify!(_zend_executor_globals),
13048            "::",
13049            stringify!(saved_fpu_cw_ptr)
13050        )
13051    );
13052    assert_eq!(
13053        unsafe {
13054            &(*(::std::ptr::null::<_zend_executor_globals>())).saved_fpu_cw as *const _ as usize
13055        },
13056        1288usize,
13057        concat!(
13058            "Offset of field: ",
13059            stringify!(_zend_executor_globals),
13060            "::",
13061            stringify!(saved_fpu_cw)
13062        )
13063    );
13064    assert_eq!(
13065        unsafe {
13066            &(*(::std::ptr::null::<_zend_executor_globals>())).trampoline as *const _ as usize
13067        },
13068        1296usize,
13069        concat!(
13070            "Offset of field: ",
13071            stringify!(_zend_executor_globals),
13072            "::",
13073            stringify!(trampoline)
13074        )
13075    );
13076    assert_eq!(
13077        unsafe {
13078            &(*(::std::ptr::null::<_zend_executor_globals>())).call_trampoline_op as *const _
13079                as usize
13080        },
13081        1512usize,
13082        concat!(
13083            "Offset of field: ",
13084            stringify!(_zend_executor_globals),
13085            "::",
13086            stringify!(call_trampoline_op)
13087        )
13088    );
13089    assert_eq!(
13090        unsafe {
13091            &(*(::std::ptr::null::<_zend_executor_globals>())).each_deprecation_thrown as *const _
13092                as usize
13093        },
13094        1544usize,
13095        concat!(
13096            "Offset of field: ",
13097            stringify!(_zend_executor_globals),
13098            "::",
13099            stringify!(each_deprecation_thrown)
13100        )
13101    );
13102    assert_eq!(
13103        unsafe { &(*(::std::ptr::null::<_zend_executor_globals>())).reserved as *const _ as usize },
13104        1552usize,
13105        concat!(
13106            "Offset of field: ",
13107            stringify!(_zend_executor_globals),
13108            "::",
13109            stringify!(reserved)
13110        )
13111    );
13112}
13113#[repr(C)]
13114#[derive(Debug, Copy, Clone)]
13115pub struct _zend_ini_scanner_globals {
13116    pub yy_in: *mut zend_file_handle,
13117    pub yy_out: *mut zend_file_handle,
13118    pub yy_leng: ::std::os::raw::c_uint,
13119    pub yy_start: *mut ::std::os::raw::c_uchar,
13120    pub yy_text: *mut ::std::os::raw::c_uchar,
13121    pub yy_cursor: *mut ::std::os::raw::c_uchar,
13122    pub yy_marker: *mut ::std::os::raw::c_uchar,
13123    pub yy_limit: *mut ::std::os::raw::c_uchar,
13124    pub yy_state: ::std::os::raw::c_int,
13125    pub state_stack: zend_stack,
13126    pub filename: *mut ::std::os::raw::c_char,
13127    pub lineno: ::std::os::raw::c_int,
13128    pub scanner_mode: ::std::os::raw::c_int,
13129}
13130#[test]
13131fn bindgen_test_layout__zend_ini_scanner_globals() {
13132    assert_eq!(
13133        ::std::mem::size_of::<_zend_ini_scanner_globals>(),
13134        112usize,
13135        concat!("Size of: ", stringify!(_zend_ini_scanner_globals))
13136    );
13137    assert_eq!(
13138        ::std::mem::align_of::<_zend_ini_scanner_globals>(),
13139        8usize,
13140        concat!("Alignment of ", stringify!(_zend_ini_scanner_globals))
13141    );
13142    assert_eq!(
13143        unsafe { &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_in as *const _ as usize },
13144        0usize,
13145        concat!(
13146            "Offset of field: ",
13147            stringify!(_zend_ini_scanner_globals),
13148            "::",
13149            stringify!(yy_in)
13150        )
13151    );
13152    assert_eq!(
13153        unsafe {
13154            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_out as *const _ as usize
13155        },
13156        8usize,
13157        concat!(
13158            "Offset of field: ",
13159            stringify!(_zend_ini_scanner_globals),
13160            "::",
13161            stringify!(yy_out)
13162        )
13163    );
13164    assert_eq!(
13165        unsafe {
13166            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_leng as *const _ as usize
13167        },
13168        16usize,
13169        concat!(
13170            "Offset of field: ",
13171            stringify!(_zend_ini_scanner_globals),
13172            "::",
13173            stringify!(yy_leng)
13174        )
13175    );
13176    assert_eq!(
13177        unsafe {
13178            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_start as *const _ as usize
13179        },
13180        24usize,
13181        concat!(
13182            "Offset of field: ",
13183            stringify!(_zend_ini_scanner_globals),
13184            "::",
13185            stringify!(yy_start)
13186        )
13187    );
13188    assert_eq!(
13189        unsafe {
13190            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_text as *const _ as usize
13191        },
13192        32usize,
13193        concat!(
13194            "Offset of field: ",
13195            stringify!(_zend_ini_scanner_globals),
13196            "::",
13197            stringify!(yy_text)
13198        )
13199    );
13200    assert_eq!(
13201        unsafe {
13202            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_cursor as *const _ as usize
13203        },
13204        40usize,
13205        concat!(
13206            "Offset of field: ",
13207            stringify!(_zend_ini_scanner_globals),
13208            "::",
13209            stringify!(yy_cursor)
13210        )
13211    );
13212    assert_eq!(
13213        unsafe {
13214            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_marker as *const _ as usize
13215        },
13216        48usize,
13217        concat!(
13218            "Offset of field: ",
13219            stringify!(_zend_ini_scanner_globals),
13220            "::",
13221            stringify!(yy_marker)
13222        )
13223    );
13224    assert_eq!(
13225        unsafe {
13226            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_limit as *const _ as usize
13227        },
13228        56usize,
13229        concat!(
13230            "Offset of field: ",
13231            stringify!(_zend_ini_scanner_globals),
13232            "::",
13233            stringify!(yy_limit)
13234        )
13235    );
13236    assert_eq!(
13237        unsafe {
13238            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).yy_state as *const _ as usize
13239        },
13240        64usize,
13241        concat!(
13242            "Offset of field: ",
13243            stringify!(_zend_ini_scanner_globals),
13244            "::",
13245            stringify!(yy_state)
13246        )
13247    );
13248    assert_eq!(
13249        unsafe {
13250            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).state_stack as *const _ as usize
13251        },
13252        72usize,
13253        concat!(
13254            "Offset of field: ",
13255            stringify!(_zend_ini_scanner_globals),
13256            "::",
13257            stringify!(state_stack)
13258        )
13259    );
13260    assert_eq!(
13261        unsafe {
13262            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).filename as *const _ as usize
13263        },
13264        96usize,
13265        concat!(
13266            "Offset of field: ",
13267            stringify!(_zend_ini_scanner_globals),
13268            "::",
13269            stringify!(filename)
13270        )
13271    );
13272    assert_eq!(
13273        unsafe {
13274            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).lineno as *const _ as usize
13275        },
13276        104usize,
13277        concat!(
13278            "Offset of field: ",
13279            stringify!(_zend_ini_scanner_globals),
13280            "::",
13281            stringify!(lineno)
13282        )
13283    );
13284    assert_eq!(
13285        unsafe {
13286            &(*(::std::ptr::null::<_zend_ini_scanner_globals>())).scanner_mode as *const _ as usize
13287        },
13288        108usize,
13289        concat!(
13290            "Offset of field: ",
13291            stringify!(_zend_ini_scanner_globals),
13292            "::",
13293            stringify!(scanner_mode)
13294        )
13295    );
13296}
13297pub const zend_php_scanner_event_ON_TOKEN: zend_php_scanner_event = 0;
13298pub const zend_php_scanner_event_ON_FEEDBACK: zend_php_scanner_event = 1;
13299pub const zend_php_scanner_event_ON_STOP: zend_php_scanner_event = 2;
13300pub type zend_php_scanner_event = ::std::os::raw::c_uint;
13301#[repr(C)]
13302#[derive(Debug, Copy, Clone)]
13303pub struct _zend_php_scanner_globals {
13304    pub yy_in: *mut zend_file_handle,
13305    pub yy_out: *mut zend_file_handle,
13306    pub yy_leng: ::std::os::raw::c_uint,
13307    pub yy_start: *mut ::std::os::raw::c_uchar,
13308    pub yy_text: *mut ::std::os::raw::c_uchar,
13309    pub yy_cursor: *mut ::std::os::raw::c_uchar,
13310    pub yy_marker: *mut ::std::os::raw::c_uchar,
13311    pub yy_limit: *mut ::std::os::raw::c_uchar,
13312    pub yy_state: ::std::os::raw::c_int,
13313    pub state_stack: zend_stack,
13314    pub heredoc_label_stack: zend_ptr_stack,
13315    pub heredoc_scan_ahead: zend_bool,
13316    pub heredoc_indentation: ::std::os::raw::c_int,
13317    pub heredoc_indentation_uses_spaces: zend_bool,
13318    pub script_org: *mut ::std::os::raw::c_uchar,
13319    pub script_org_size: size_t,
13320    pub script_filtered: *mut ::std::os::raw::c_uchar,
13321    pub script_filtered_size: size_t,
13322    pub input_filter: zend_encoding_filter,
13323    pub output_filter: zend_encoding_filter,
13324    pub script_encoding: *const zend_encoding,
13325    pub scanned_string_len: ::std::os::raw::c_int,
13326    pub on_event: ::std::option::Option<
13327        unsafe extern "C" fn(
13328            event: zend_php_scanner_event,
13329            token: ::std::os::raw::c_int,
13330            line: ::std::os::raw::c_int,
13331            context: *mut ::std::os::raw::c_void,
13332        ),
13333    >,
13334    pub on_event_context: *mut ::std::os::raw::c_void,
13335}
13336#[test]
13337fn bindgen_test_layout__zend_php_scanner_globals() {
13338    assert_eq!(
13339        ::std::mem::size_of::<_zend_php_scanner_globals>(),
13340        224usize,
13341        concat!("Size of: ", stringify!(_zend_php_scanner_globals))
13342    );
13343    assert_eq!(
13344        ::std::mem::align_of::<_zend_php_scanner_globals>(),
13345        8usize,
13346        concat!("Alignment of ", stringify!(_zend_php_scanner_globals))
13347    );
13348    assert_eq!(
13349        unsafe { &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_in as *const _ as usize },
13350        0usize,
13351        concat!(
13352            "Offset of field: ",
13353            stringify!(_zend_php_scanner_globals),
13354            "::",
13355            stringify!(yy_in)
13356        )
13357    );
13358    assert_eq!(
13359        unsafe {
13360            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_out as *const _ as usize
13361        },
13362        8usize,
13363        concat!(
13364            "Offset of field: ",
13365            stringify!(_zend_php_scanner_globals),
13366            "::",
13367            stringify!(yy_out)
13368        )
13369    );
13370    assert_eq!(
13371        unsafe {
13372            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_leng as *const _ as usize
13373        },
13374        16usize,
13375        concat!(
13376            "Offset of field: ",
13377            stringify!(_zend_php_scanner_globals),
13378            "::",
13379            stringify!(yy_leng)
13380        )
13381    );
13382    assert_eq!(
13383        unsafe {
13384            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_start as *const _ as usize
13385        },
13386        24usize,
13387        concat!(
13388            "Offset of field: ",
13389            stringify!(_zend_php_scanner_globals),
13390            "::",
13391            stringify!(yy_start)
13392        )
13393    );
13394    assert_eq!(
13395        unsafe {
13396            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_text as *const _ as usize
13397        },
13398        32usize,
13399        concat!(
13400            "Offset of field: ",
13401            stringify!(_zend_php_scanner_globals),
13402            "::",
13403            stringify!(yy_text)
13404        )
13405    );
13406    assert_eq!(
13407        unsafe {
13408            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_cursor as *const _ as usize
13409        },
13410        40usize,
13411        concat!(
13412            "Offset of field: ",
13413            stringify!(_zend_php_scanner_globals),
13414            "::",
13415            stringify!(yy_cursor)
13416        )
13417    );
13418    assert_eq!(
13419        unsafe {
13420            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_marker as *const _ as usize
13421        },
13422        48usize,
13423        concat!(
13424            "Offset of field: ",
13425            stringify!(_zend_php_scanner_globals),
13426            "::",
13427            stringify!(yy_marker)
13428        )
13429    );
13430    assert_eq!(
13431        unsafe {
13432            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_limit as *const _ as usize
13433        },
13434        56usize,
13435        concat!(
13436            "Offset of field: ",
13437            stringify!(_zend_php_scanner_globals),
13438            "::",
13439            stringify!(yy_limit)
13440        )
13441    );
13442    assert_eq!(
13443        unsafe {
13444            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).yy_state as *const _ as usize
13445        },
13446        64usize,
13447        concat!(
13448            "Offset of field: ",
13449            stringify!(_zend_php_scanner_globals),
13450            "::",
13451            stringify!(yy_state)
13452        )
13453    );
13454    assert_eq!(
13455        unsafe {
13456            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).state_stack as *const _ as usize
13457        },
13458        72usize,
13459        concat!(
13460            "Offset of field: ",
13461            stringify!(_zend_php_scanner_globals),
13462            "::",
13463            stringify!(state_stack)
13464        )
13465    );
13466    assert_eq!(
13467        unsafe {
13468            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).heredoc_label_stack as *const _
13469                as usize
13470        },
13471        96usize,
13472        concat!(
13473            "Offset of field: ",
13474            stringify!(_zend_php_scanner_globals),
13475            "::",
13476            stringify!(heredoc_label_stack)
13477        )
13478    );
13479    assert_eq!(
13480        unsafe {
13481            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).heredoc_scan_ahead as *const _
13482                as usize
13483        },
13484        128usize,
13485        concat!(
13486            "Offset of field: ",
13487            stringify!(_zend_php_scanner_globals),
13488            "::",
13489            stringify!(heredoc_scan_ahead)
13490        )
13491    );
13492    assert_eq!(
13493        unsafe {
13494            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).heredoc_indentation as *const _
13495                as usize
13496        },
13497        132usize,
13498        concat!(
13499            "Offset of field: ",
13500            stringify!(_zend_php_scanner_globals),
13501            "::",
13502            stringify!(heredoc_indentation)
13503        )
13504    );
13505    assert_eq!(
13506        unsafe {
13507            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).heredoc_indentation_uses_spaces
13508                as *const _ as usize
13509        },
13510        136usize,
13511        concat!(
13512            "Offset of field: ",
13513            stringify!(_zend_php_scanner_globals),
13514            "::",
13515            stringify!(heredoc_indentation_uses_spaces)
13516        )
13517    );
13518    assert_eq!(
13519        unsafe {
13520            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_org as *const _ as usize
13521        },
13522        144usize,
13523        concat!(
13524            "Offset of field: ",
13525            stringify!(_zend_php_scanner_globals),
13526            "::",
13527            stringify!(script_org)
13528        )
13529    );
13530    assert_eq!(
13531        unsafe {
13532            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_org_size as *const _
13533                as usize
13534        },
13535        152usize,
13536        concat!(
13537            "Offset of field: ",
13538            stringify!(_zend_php_scanner_globals),
13539            "::",
13540            stringify!(script_org_size)
13541        )
13542    );
13543    assert_eq!(
13544        unsafe {
13545            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_filtered as *const _
13546                as usize
13547        },
13548        160usize,
13549        concat!(
13550            "Offset of field: ",
13551            stringify!(_zend_php_scanner_globals),
13552            "::",
13553            stringify!(script_filtered)
13554        )
13555    );
13556    assert_eq!(
13557        unsafe {
13558            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_filtered_size as *const _
13559                as usize
13560        },
13561        168usize,
13562        concat!(
13563            "Offset of field: ",
13564            stringify!(_zend_php_scanner_globals),
13565            "::",
13566            stringify!(script_filtered_size)
13567        )
13568    );
13569    assert_eq!(
13570        unsafe {
13571            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).input_filter as *const _ as usize
13572        },
13573        176usize,
13574        concat!(
13575            "Offset of field: ",
13576            stringify!(_zend_php_scanner_globals),
13577            "::",
13578            stringify!(input_filter)
13579        )
13580    );
13581    assert_eq!(
13582        unsafe {
13583            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).output_filter as *const _ as usize
13584        },
13585        184usize,
13586        concat!(
13587            "Offset of field: ",
13588            stringify!(_zend_php_scanner_globals),
13589            "::",
13590            stringify!(output_filter)
13591        )
13592    );
13593    assert_eq!(
13594        unsafe {
13595            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).script_encoding as *const _
13596                as usize
13597        },
13598        192usize,
13599        concat!(
13600            "Offset of field: ",
13601            stringify!(_zend_php_scanner_globals),
13602            "::",
13603            stringify!(script_encoding)
13604        )
13605    );
13606    assert_eq!(
13607        unsafe {
13608            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).scanned_string_len as *const _
13609                as usize
13610        },
13611        200usize,
13612        concat!(
13613            "Offset of field: ",
13614            stringify!(_zend_php_scanner_globals),
13615            "::",
13616            stringify!(scanned_string_len)
13617        )
13618    );
13619    assert_eq!(
13620        unsafe {
13621            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).on_event as *const _ as usize
13622        },
13623        208usize,
13624        concat!(
13625            "Offset of field: ",
13626            stringify!(_zend_php_scanner_globals),
13627            "::",
13628            stringify!(on_event)
13629        )
13630    );
13631    assert_eq!(
13632        unsafe {
13633            &(*(::std::ptr::null::<_zend_php_scanner_globals>())).on_event_context as *const _
13634                as usize
13635        },
13636        216usize,
13637        concat!(
13638            "Offset of field: ",
13639            stringify!(_zend_php_scanner_globals),
13640            "::",
13641            stringify!(on_event_context)
13642        )
13643    );
13644}
13645extern "C" {
13646    pub fn zend_init_compiler_data_structures();
13647}
13648extern "C" {
13649    pub fn zend_oparray_context_begin(prev_context: *mut zend_oparray_context);
13650}
13651extern "C" {
13652    pub fn zend_oparray_context_end(prev_context: *mut zend_oparray_context);
13653}
13654extern "C" {
13655    pub fn zend_file_context_begin(prev_context: *mut zend_file_context);
13656}
13657extern "C" {
13658    pub fn zend_file_context_end(prev_context: *mut zend_file_context);
13659}
13660extern "C" {
13661    pub static mut zend_compile_file: ::std::option::Option<
13662        unsafe extern "C" fn(
13663            file_handle: *mut zend_file_handle,
13664            type_: ::std::os::raw::c_int,
13665        ) -> *mut zend_op_array,
13666    >;
13667}
13668extern "C" {
13669    pub static mut zend_compile_string: ::std::option::Option<
13670        unsafe extern "C" fn(
13671            source_string: *mut zval,
13672            filename: *mut ::std::os::raw::c_char,
13673        ) -> *mut zend_op_array,
13674    >;
13675}
13676extern "C" {
13677    pub fn zend_set_compiled_filename(new_compiled_filename: *mut zend_string) -> *mut zend_string;
13678}
13679extern "C" {
13680    pub fn zend_restore_compiled_filename(original_compiled_filename: *mut zend_string);
13681}
13682extern "C" {
13683    pub fn zend_get_compiled_filename() -> *mut zend_string;
13684}
13685extern "C" {
13686    pub fn zend_get_compiled_lineno() -> ::std::os::raw::c_int;
13687}
13688extern "C" {
13689    pub fn zend_get_scanned_file_offset() -> size_t;
13690}
13691extern "C" {
13692    pub fn zend_get_compiled_variable_name(
13693        op_array: *const zend_op_array,
13694        var: u32,
13695    ) -> *mut zend_string;
13696}
13697extern "C" {
13698    pub fn zend_stop_lexing();
13699}
13700extern "C" {
13701    pub fn zend_emit_final_return(return_one: ::std::os::raw::c_int);
13702}
13703extern "C" {
13704    pub fn zend_ast_append_str(left: *mut zend_ast, right: *mut zend_ast) -> *mut zend_ast;
13705}
13706extern "C" {
13707    pub fn zend_negate_num_string(ast: *mut zend_ast) -> *mut zend_ast;
13708}
13709extern "C" {
13710    pub fn zend_add_class_modifier(flags: u32, new_flag: u32) -> u32;
13711}
13712extern "C" {
13713    pub fn zend_add_member_modifier(flags: u32, new_flag: u32) -> u32;
13714}
13715extern "C" {
13716    pub fn zend_handle_encoding_declaration(ast: *mut zend_ast) -> zend_bool;
13717}
13718extern "C" {
13719    pub fn zend_do_free(op1: *mut znode);
13720}
13721extern "C" {
13722    pub fn zend_build_delayed_early_binding_list(op_array: *const zend_op_array) -> u32;
13723}
13724extern "C" {
13725    pub fn zend_do_delayed_early_binding(
13726        op_array: *const zend_op_array,
13727        first_early_binding_opline: u32,
13728    );
13729}
13730extern "C" {
13731    pub fn zend_do_extended_info();
13732}
13733extern "C" {
13734    pub fn zend_do_extended_fcall_begin();
13735}
13736extern "C" {
13737    pub fn zend_do_extended_fcall_end();
13738}
13739extern "C" {
13740    pub fn zend_verify_namespace();
13741}
13742extern "C" {
13743    pub fn zend_resolve_goto_label(op_array: *mut zend_op_array, opline: *mut zend_op);
13744}
13745extern "C" {
13746    pub fn zend_try_exception_handler();
13747}
13748extern "C" {
13749    pub fn zend_execute_scripts(
13750        type_: ::std::os::raw::c_int,
13751        retval: *mut zval,
13752        file_count: ::std::os::raw::c_int,
13753        ...
13754    ) -> ::std::os::raw::c_int;
13755}
13756extern "C" {
13757    pub fn zend_destroy_file_handle(file_handle: *mut zend_file_handle);
13758}
13759extern "C" {
13760    pub fn zend_cleanup_internal_class_data(ce: *mut zend_class_entry);
13761}
13762extern "C" {
13763    pub fn zend_cleanup_internal_classes();
13764}
13765extern "C" {
13766    pub fn zend_function_dtor(zv: *mut zval);
13767}
13768extern "C" {
13769    pub fn zend_class_add_ref(zv: *mut zval);
13770}
13771extern "C" {
13772    pub fn zend_mangle_property_name(
13773        src1: *const ::std::os::raw::c_char,
13774        src1_length: size_t,
13775        src2: *const ::std::os::raw::c_char,
13776        src2_length: size_t,
13777        internal: ::std::os::raw::c_int,
13778    ) -> *mut zend_string;
13779}
13780extern "C" {
13781    pub fn zend_unmangle_property_name_ex(
13782        name: *const zend_string,
13783        class_name: *mut *const ::std::os::raw::c_char,
13784        prop_name: *mut *const ::std::os::raw::c_char,
13785        prop_len: *mut size_t,
13786    ) -> ::std::os::raw::c_int;
13787}
13788extern "C" {
13789    pub fn zend_is_compiling() -> zend_bool;
13790}
13791extern "C" {
13792    pub fn zend_make_compiled_string_description(
13793        name: *const ::std::os::raw::c_char,
13794    ) -> *mut ::std::os::raw::c_char;
13795}
13796extern "C" {
13797    pub fn zend_initialize_class_data(ce: *mut zend_class_entry, nullify_handlers: zend_bool);
13798}
13799extern "C" {
13800    pub fn zend_get_class_fetch_type(name: *mut zend_string) -> u32;
13801}
13802extern "C" {
13803    pub fn zend_get_call_op(init_op: *const zend_op, fbc: *mut zend_function) -> zend_uchar;
13804}
13805extern "C" {
13806    pub fn zend_is_smart_branch(opline: *mut zend_op) -> ::std::os::raw::c_int;
13807}
13808pub type zend_auto_global_callback =
13809    ::std::option::Option<unsafe extern "C" fn(name: *mut zend_string) -> zend_bool>;
13810#[repr(C)]
13811#[derive(Debug, Copy, Clone)]
13812pub struct _zend_auto_global {
13813    pub name: *mut zend_string,
13814    pub auto_global_callback: zend_auto_global_callback,
13815    pub jit: zend_bool,
13816    pub armed: zend_bool,
13817}
13818#[test]
13819fn bindgen_test_layout__zend_auto_global() {
13820    assert_eq!(
13821        ::std::mem::size_of::<_zend_auto_global>(),
13822        24usize,
13823        concat!("Size of: ", stringify!(_zend_auto_global))
13824    );
13825    assert_eq!(
13826        ::std::mem::align_of::<_zend_auto_global>(),
13827        8usize,
13828        concat!("Alignment of ", stringify!(_zend_auto_global))
13829    );
13830    assert_eq!(
13831        unsafe { &(*(::std::ptr::null::<_zend_auto_global>())).name as *const _ as usize },
13832        0usize,
13833        concat!(
13834            "Offset of field: ",
13835            stringify!(_zend_auto_global),
13836            "::",
13837            stringify!(name)
13838        )
13839    );
13840    assert_eq!(
13841        unsafe {
13842            &(*(::std::ptr::null::<_zend_auto_global>())).auto_global_callback as *const _ as usize
13843        },
13844        8usize,
13845        concat!(
13846            "Offset of field: ",
13847            stringify!(_zend_auto_global),
13848            "::",
13849            stringify!(auto_global_callback)
13850        )
13851    );
13852    assert_eq!(
13853        unsafe { &(*(::std::ptr::null::<_zend_auto_global>())).jit as *const _ as usize },
13854        16usize,
13855        concat!(
13856            "Offset of field: ",
13857            stringify!(_zend_auto_global),
13858            "::",
13859            stringify!(jit)
13860        )
13861    );
13862    assert_eq!(
13863        unsafe { &(*(::std::ptr::null::<_zend_auto_global>())).armed as *const _ as usize },
13864        17usize,
13865        concat!(
13866            "Offset of field: ",
13867            stringify!(_zend_auto_global),
13868            "::",
13869            stringify!(armed)
13870        )
13871    );
13872}
13873pub type zend_auto_global = _zend_auto_global;
13874extern "C" {
13875    pub fn zend_register_auto_global(
13876        name: *mut zend_string,
13877        jit: zend_bool,
13878        auto_global_callback: zend_auto_global_callback,
13879    ) -> ::std::os::raw::c_int;
13880}
13881extern "C" {
13882    pub fn zend_activate_auto_globals();
13883}
13884extern "C" {
13885    pub fn zend_is_auto_global(name: *mut zend_string) -> zend_bool;
13886}
13887extern "C" {
13888    pub fn zend_is_auto_global_str(name: *mut ::std::os::raw::c_char, len: size_t) -> zend_bool;
13889}
13890extern "C" {
13891    pub fn zend_dirname(path: *mut ::std::os::raw::c_char, len: size_t) -> size_t;
13892}
13893extern "C" {
13894    pub fn zend_set_function_arg_flags(func: *mut zend_function);
13895}
13896extern "C" {
13897    pub fn zendlex(elem: *mut zend_parser_stack_elem) -> ::std::os::raw::c_int;
13898}
13899extern "C" {
13900    pub fn zend_add_literal(op_array: *mut zend_op_array, zv: *mut zval) -> ::std::os::raw::c_int;
13901}
13902extern "C" {
13903    pub fn zend_assert_valid_class_name(const_name: *const zend_string);
13904}
13905extern "C" {
13906    pub fn zend_get_opcode_name(opcode: zend_uchar) -> *const ::std::os::raw::c_char;
13907}
13908extern "C" {
13909    pub fn zend_get_opcode_flags(opcode: zend_uchar) -> u32;
13910}
13911extern "C" {
13912    pub fn zend_binary_op_produces_numeric_string_error(
13913        opcode: u32,
13914        op1: *mut zval,
13915        op2: *mut zval,
13916    ) -> zend_bool;
13917}
13918pub type zend_module_entry = _zend_module_entry;
13919pub type zend_module_dep = _zend_module_dep;
13920#[repr(C)]
13921#[derive(Debug, Copy, Clone)]
13922pub struct _zend_module_entry {
13923    pub size: ::std::os::raw::c_ushort,
13924    pub zend_api: ::std::os::raw::c_uint,
13925    pub zend_debug: ::std::os::raw::c_uchar,
13926    pub zts: ::std::os::raw::c_uchar,
13927    pub ini_entry: *const _zend_ini_entry,
13928    pub deps: *const _zend_module_dep,
13929    pub name: *const ::std::os::raw::c_char,
13930    pub functions: *const _zend_function_entry,
13931    pub module_startup_func: ::std::option::Option<
13932        unsafe extern "C" fn(
13933            type_: ::std::os::raw::c_int,
13934            module_number: ::std::os::raw::c_int,
13935        ) -> ::std::os::raw::c_int,
13936    >,
13937    pub module_shutdown_func: ::std::option::Option<
13938        unsafe extern "C" fn(
13939            type_: ::std::os::raw::c_int,
13940            module_number: ::std::os::raw::c_int,
13941        ) -> ::std::os::raw::c_int,
13942    >,
13943    pub request_startup_func: ::std::option::Option<
13944        unsafe extern "C" fn(
13945            type_: ::std::os::raw::c_int,
13946            module_number: ::std::os::raw::c_int,
13947        ) -> ::std::os::raw::c_int,
13948    >,
13949    pub request_shutdown_func: ::std::option::Option<
13950        unsafe extern "C" fn(
13951            type_: ::std::os::raw::c_int,
13952            module_number: ::std::os::raw::c_int,
13953        ) -> ::std::os::raw::c_int,
13954    >,
13955    pub info_func: ::std::option::Option<unsafe extern "C" fn(zend_module: *mut zend_module_entry)>,
13956    pub version: *const ::std::os::raw::c_char,
13957    pub globals_size: size_t,
13958    pub globals_ptr: *mut ::std::os::raw::c_void,
13959    pub globals_ctor:
13960        ::std::option::Option<unsafe extern "C" fn(global: *mut ::std::os::raw::c_void)>,
13961    pub globals_dtor:
13962        ::std::option::Option<unsafe extern "C" fn(global: *mut ::std::os::raw::c_void)>,
13963    pub post_deactivate_func:
13964        ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_int>,
13965    pub module_started: ::std::os::raw::c_int,
13966    pub type_: ::std::os::raw::c_uchar,
13967    pub handle: *mut ::std::os::raw::c_void,
13968    pub module_number: ::std::os::raw::c_int,
13969    pub build_id: *const ::std::os::raw::c_char,
13970}
13971#[test]
13972fn bindgen_test_layout__zend_module_entry() {
13973    assert_eq!(
13974        ::std::mem::size_of::<_zend_module_entry>(),
13975        168usize,
13976        concat!("Size of: ", stringify!(_zend_module_entry))
13977    );
13978    assert_eq!(
13979        ::std::mem::align_of::<_zend_module_entry>(),
13980        8usize,
13981        concat!("Alignment of ", stringify!(_zend_module_entry))
13982    );
13983    assert_eq!(
13984        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).size as *const _ as usize },
13985        0usize,
13986        concat!(
13987            "Offset of field: ",
13988            stringify!(_zend_module_entry),
13989            "::",
13990            stringify!(size)
13991        )
13992    );
13993    assert_eq!(
13994        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).zend_api as *const _ as usize },
13995        4usize,
13996        concat!(
13997            "Offset of field: ",
13998            stringify!(_zend_module_entry),
13999            "::",
14000            stringify!(zend_api)
14001        )
14002    );
14003    assert_eq!(
14004        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).zend_debug as *const _ as usize },
14005        8usize,
14006        concat!(
14007            "Offset of field: ",
14008            stringify!(_zend_module_entry),
14009            "::",
14010            stringify!(zend_debug)
14011        )
14012    );
14013    assert_eq!(
14014        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).zts as *const _ as usize },
14015        9usize,
14016        concat!(
14017            "Offset of field: ",
14018            stringify!(_zend_module_entry),
14019            "::",
14020            stringify!(zts)
14021        )
14022    );
14023    assert_eq!(
14024        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).ini_entry as *const _ as usize },
14025        16usize,
14026        concat!(
14027            "Offset of field: ",
14028            stringify!(_zend_module_entry),
14029            "::",
14030            stringify!(ini_entry)
14031        )
14032    );
14033    assert_eq!(
14034        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).deps as *const _ as usize },
14035        24usize,
14036        concat!(
14037            "Offset of field: ",
14038            stringify!(_zend_module_entry),
14039            "::",
14040            stringify!(deps)
14041        )
14042    );
14043    assert_eq!(
14044        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).name as *const _ as usize },
14045        32usize,
14046        concat!(
14047            "Offset of field: ",
14048            stringify!(_zend_module_entry),
14049            "::",
14050            stringify!(name)
14051        )
14052    );
14053    assert_eq!(
14054        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).functions as *const _ as usize },
14055        40usize,
14056        concat!(
14057            "Offset of field: ",
14058            stringify!(_zend_module_entry),
14059            "::",
14060            stringify!(functions)
14061        )
14062    );
14063    assert_eq!(
14064        unsafe {
14065            &(*(::std::ptr::null::<_zend_module_entry>())).module_startup_func as *const _ as usize
14066        },
14067        48usize,
14068        concat!(
14069            "Offset of field: ",
14070            stringify!(_zend_module_entry),
14071            "::",
14072            stringify!(module_startup_func)
14073        )
14074    );
14075    assert_eq!(
14076        unsafe {
14077            &(*(::std::ptr::null::<_zend_module_entry>())).module_shutdown_func as *const _ as usize
14078        },
14079        56usize,
14080        concat!(
14081            "Offset of field: ",
14082            stringify!(_zend_module_entry),
14083            "::",
14084            stringify!(module_shutdown_func)
14085        )
14086    );
14087    assert_eq!(
14088        unsafe {
14089            &(*(::std::ptr::null::<_zend_module_entry>())).request_startup_func as *const _ as usize
14090        },
14091        64usize,
14092        concat!(
14093            "Offset of field: ",
14094            stringify!(_zend_module_entry),
14095            "::",
14096            stringify!(request_startup_func)
14097        )
14098    );
14099    assert_eq!(
14100        unsafe {
14101            &(*(::std::ptr::null::<_zend_module_entry>())).request_shutdown_func as *const _
14102                as usize
14103        },
14104        72usize,
14105        concat!(
14106            "Offset of field: ",
14107            stringify!(_zend_module_entry),
14108            "::",
14109            stringify!(request_shutdown_func)
14110        )
14111    );
14112    assert_eq!(
14113        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).info_func as *const _ as usize },
14114        80usize,
14115        concat!(
14116            "Offset of field: ",
14117            stringify!(_zend_module_entry),
14118            "::",
14119            stringify!(info_func)
14120        )
14121    );
14122    assert_eq!(
14123        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).version as *const _ as usize },
14124        88usize,
14125        concat!(
14126            "Offset of field: ",
14127            stringify!(_zend_module_entry),
14128            "::",
14129            stringify!(version)
14130        )
14131    );
14132    assert_eq!(
14133        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).globals_size as *const _ as usize },
14134        96usize,
14135        concat!(
14136            "Offset of field: ",
14137            stringify!(_zend_module_entry),
14138            "::",
14139            stringify!(globals_size)
14140        )
14141    );
14142    assert_eq!(
14143        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).globals_ptr as *const _ as usize },
14144        104usize,
14145        concat!(
14146            "Offset of field: ",
14147            stringify!(_zend_module_entry),
14148            "::",
14149            stringify!(globals_ptr)
14150        )
14151    );
14152    assert_eq!(
14153        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).globals_ctor as *const _ as usize },
14154        112usize,
14155        concat!(
14156            "Offset of field: ",
14157            stringify!(_zend_module_entry),
14158            "::",
14159            stringify!(globals_ctor)
14160        )
14161    );
14162    assert_eq!(
14163        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).globals_dtor as *const _ as usize },
14164        120usize,
14165        concat!(
14166            "Offset of field: ",
14167            stringify!(_zend_module_entry),
14168            "::",
14169            stringify!(globals_dtor)
14170        )
14171    );
14172    assert_eq!(
14173        unsafe {
14174            &(*(::std::ptr::null::<_zend_module_entry>())).post_deactivate_func as *const _ as usize
14175        },
14176        128usize,
14177        concat!(
14178            "Offset of field: ",
14179            stringify!(_zend_module_entry),
14180            "::",
14181            stringify!(post_deactivate_func)
14182        )
14183    );
14184    assert_eq!(
14185        unsafe {
14186            &(*(::std::ptr::null::<_zend_module_entry>())).module_started as *const _ as usize
14187        },
14188        136usize,
14189        concat!(
14190            "Offset of field: ",
14191            stringify!(_zend_module_entry),
14192            "::",
14193            stringify!(module_started)
14194        )
14195    );
14196    assert_eq!(
14197        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).type_ as *const _ as usize },
14198        140usize,
14199        concat!(
14200            "Offset of field: ",
14201            stringify!(_zend_module_entry),
14202            "::",
14203            stringify!(type_)
14204        )
14205    );
14206    assert_eq!(
14207        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).handle as *const _ as usize },
14208        144usize,
14209        concat!(
14210            "Offset of field: ",
14211            stringify!(_zend_module_entry),
14212            "::",
14213            stringify!(handle)
14214        )
14215    );
14216    assert_eq!(
14217        unsafe {
14218            &(*(::std::ptr::null::<_zend_module_entry>())).module_number as *const _ as usize
14219        },
14220        152usize,
14221        concat!(
14222            "Offset of field: ",
14223            stringify!(_zend_module_entry),
14224            "::",
14225            stringify!(module_number)
14226        )
14227    );
14228    assert_eq!(
14229        unsafe { &(*(::std::ptr::null::<_zend_module_entry>())).build_id as *const _ as usize },
14230        160usize,
14231        concat!(
14232            "Offset of field: ",
14233            stringify!(_zend_module_entry),
14234            "::",
14235            stringify!(build_id)
14236        )
14237    );
14238}
14239#[repr(C)]
14240#[derive(Debug, Copy, Clone)]
14241pub struct _zend_module_dep {
14242    pub name: *const ::std::os::raw::c_char,
14243    pub rel: *const ::std::os::raw::c_char,
14244    pub version: *const ::std::os::raw::c_char,
14245    pub type_: ::std::os::raw::c_uchar,
14246}
14247#[test]
14248fn bindgen_test_layout__zend_module_dep() {
14249    assert_eq!(
14250        ::std::mem::size_of::<_zend_module_dep>(),
14251        32usize,
14252        concat!("Size of: ", stringify!(_zend_module_dep))
14253    );
14254    assert_eq!(
14255        ::std::mem::align_of::<_zend_module_dep>(),
14256        8usize,
14257        concat!("Alignment of ", stringify!(_zend_module_dep))
14258    );
14259    assert_eq!(
14260        unsafe { &(*(::std::ptr::null::<_zend_module_dep>())).name as *const _ as usize },
14261        0usize,
14262        concat!(
14263            "Offset of field: ",
14264            stringify!(_zend_module_dep),
14265            "::",
14266            stringify!(name)
14267        )
14268    );
14269    assert_eq!(
14270        unsafe { &(*(::std::ptr::null::<_zend_module_dep>())).rel as *const _ as usize },
14271        8usize,
14272        concat!(
14273            "Offset of field: ",
14274            stringify!(_zend_module_dep),
14275            "::",
14276            stringify!(rel)
14277        )
14278    );
14279    assert_eq!(
14280        unsafe { &(*(::std::ptr::null::<_zend_module_dep>())).version as *const _ as usize },
14281        16usize,
14282        concat!(
14283            "Offset of field: ",
14284            stringify!(_zend_module_dep),
14285            "::",
14286            stringify!(version)
14287        )
14288    );
14289    assert_eq!(
14290        unsafe { &(*(::std::ptr::null::<_zend_module_dep>())).type_ as *const _ as usize },
14291        24usize,
14292        concat!(
14293            "Offset of field: ",
14294            stringify!(_zend_module_dep),
14295            "::",
14296            stringify!(type_)
14297        )
14298    );
14299}
14300extern "C" {
14301    pub static mut module_registry: HashTable;
14302}
14303pub type rsrc_dtor_func_t = ::std::option::Option<unsafe extern "C" fn(res: *mut zend_resource)>;
14304#[repr(C)]
14305#[derive(Debug, Copy, Clone)]
14306pub struct _zend_rsrc_list_dtors_entry {
14307    pub list_dtor_ex: rsrc_dtor_func_t,
14308    pub plist_dtor_ex: rsrc_dtor_func_t,
14309    pub type_name: *const ::std::os::raw::c_char,
14310    pub module_number: ::std::os::raw::c_int,
14311    pub resource_id: ::std::os::raw::c_int,
14312}
14313#[test]
14314fn bindgen_test_layout__zend_rsrc_list_dtors_entry() {
14315    assert_eq!(
14316        ::std::mem::size_of::<_zend_rsrc_list_dtors_entry>(),
14317        32usize,
14318        concat!("Size of: ", stringify!(_zend_rsrc_list_dtors_entry))
14319    );
14320    assert_eq!(
14321        ::std::mem::align_of::<_zend_rsrc_list_dtors_entry>(),
14322        8usize,
14323        concat!("Alignment of ", stringify!(_zend_rsrc_list_dtors_entry))
14324    );
14325    assert_eq!(
14326        unsafe {
14327            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).list_dtor_ex as *const _
14328                as usize
14329        },
14330        0usize,
14331        concat!(
14332            "Offset of field: ",
14333            stringify!(_zend_rsrc_list_dtors_entry),
14334            "::",
14335            stringify!(list_dtor_ex)
14336        )
14337    );
14338    assert_eq!(
14339        unsafe {
14340            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).plist_dtor_ex as *const _
14341                as usize
14342        },
14343        8usize,
14344        concat!(
14345            "Offset of field: ",
14346            stringify!(_zend_rsrc_list_dtors_entry),
14347            "::",
14348            stringify!(plist_dtor_ex)
14349        )
14350    );
14351    assert_eq!(
14352        unsafe {
14353            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).type_name as *const _ as usize
14354        },
14355        16usize,
14356        concat!(
14357            "Offset of field: ",
14358            stringify!(_zend_rsrc_list_dtors_entry),
14359            "::",
14360            stringify!(type_name)
14361        )
14362    );
14363    assert_eq!(
14364        unsafe {
14365            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).module_number as *const _
14366                as usize
14367        },
14368        24usize,
14369        concat!(
14370            "Offset of field: ",
14371            stringify!(_zend_rsrc_list_dtors_entry),
14372            "::",
14373            stringify!(module_number)
14374        )
14375    );
14376    assert_eq!(
14377        unsafe {
14378            &(*(::std::ptr::null::<_zend_rsrc_list_dtors_entry>())).resource_id as *const _ as usize
14379        },
14380        28usize,
14381        concat!(
14382            "Offset of field: ",
14383            stringify!(_zend_rsrc_list_dtors_entry),
14384            "::",
14385            stringify!(resource_id)
14386        )
14387    );
14388}
14389pub type zend_rsrc_list_dtors_entry = _zend_rsrc_list_dtors_entry;
14390extern "C" {
14391    pub fn zend_register_list_destructors_ex(
14392        ld: rsrc_dtor_func_t,
14393        pld: rsrc_dtor_func_t,
14394        type_name: *const ::std::os::raw::c_char,
14395        module_number: ::std::os::raw::c_int,
14396    ) -> ::std::os::raw::c_int;
14397}
14398extern "C" {
14399    pub fn zend_clean_module_rsrc_dtors(module_number: ::std::os::raw::c_int);
14400}
14401extern "C" {
14402    pub fn zend_init_rsrc_list() -> ::std::os::raw::c_int;
14403}
14404extern "C" {
14405    pub fn zend_init_rsrc_plist() -> ::std::os::raw::c_int;
14406}
14407extern "C" {
14408    pub fn zend_close_rsrc_list(ht: *mut HashTable);
14409}
14410extern "C" {
14411    pub fn zend_destroy_rsrc_list(ht: *mut HashTable);
14412}
14413extern "C" {
14414    pub fn zend_init_rsrc_list_dtors() -> ::std::os::raw::c_int;
14415}
14416extern "C" {
14417    pub fn zend_destroy_rsrc_list_dtors();
14418}
14419extern "C" {
14420    pub fn zend_list_insert(
14421        ptr: *mut ::std::os::raw::c_void,
14422        type_: ::std::os::raw::c_int,
14423    ) -> *mut zval;
14424}
14425extern "C" {
14426    pub fn zend_list_free(res: *mut zend_resource) -> ::std::os::raw::c_int;
14427}
14428extern "C" {
14429    pub fn zend_list_delete(res: *mut zend_resource) -> ::std::os::raw::c_int;
14430}
14431extern "C" {
14432    pub fn zend_list_close(res: *mut zend_resource) -> ::std::os::raw::c_int;
14433}
14434extern "C" {
14435    pub fn zend_register_resource(
14436        rsrc_pointer: *mut ::std::os::raw::c_void,
14437        rsrc_type: ::std::os::raw::c_int,
14438    ) -> *mut zend_resource;
14439}
14440extern "C" {
14441    pub fn zend_fetch_resource(
14442        res: *mut zend_resource,
14443        resource_type_name: *const ::std::os::raw::c_char,
14444        resource_type: ::std::os::raw::c_int,
14445    ) -> *mut ::std::os::raw::c_void;
14446}
14447extern "C" {
14448    pub fn zend_fetch_resource2(
14449        res: *mut zend_resource,
14450        resource_type_name: *const ::std::os::raw::c_char,
14451        resource_type: ::std::os::raw::c_int,
14452        resource_type2: ::std::os::raw::c_int,
14453    ) -> *mut ::std::os::raw::c_void;
14454}
14455extern "C" {
14456    pub fn zend_fetch_resource_ex(
14457        res: *mut zval,
14458        resource_type_name: *const ::std::os::raw::c_char,
14459        resource_type: ::std::os::raw::c_int,
14460    ) -> *mut ::std::os::raw::c_void;
14461}
14462extern "C" {
14463    pub fn zend_fetch_resource2_ex(
14464        res: *mut zval,
14465        resource_type_name: *const ::std::os::raw::c_char,
14466        resource_type: ::std::os::raw::c_int,
14467        resource_type2: ::std::os::raw::c_int,
14468    ) -> *mut ::std::os::raw::c_void;
14469}
14470extern "C" {
14471    pub fn zend_rsrc_list_get_rsrc_type(res: *mut zend_resource) -> *const ::std::os::raw::c_char;
14472}
14473extern "C" {
14474    pub fn zend_fetch_list_dtor_id(
14475        type_name: *const ::std::os::raw::c_char,
14476    ) -> ::std::os::raw::c_int;
14477}
14478extern "C" {
14479    pub fn zend_register_persistent_resource(
14480        key: *const ::std::os::raw::c_char,
14481        key_len: size_t,
14482        rsrc_pointer: *mut ::std::os::raw::c_void,
14483        rsrc_type: ::std::os::raw::c_int,
14484    ) -> *mut zend_resource;
14485}
14486extern "C" {
14487    pub fn zend_register_persistent_resource_ex(
14488        key: *mut zend_string,
14489        rsrc_pointer: *mut ::std::os::raw::c_void,
14490        rsrc_type: ::std::os::raw::c_int,
14491    ) -> *mut zend_resource;
14492}
14493extern "C" {
14494    pub static mut zend_execute_ex:
14495        ::std::option::Option<unsafe extern "C" fn(execute_data: *mut zend_execute_data)>;
14496}
14497extern "C" {
14498    pub static mut zend_execute_internal: ::std::option::Option<
14499        unsafe extern "C" fn(execute_data: *mut zend_execute_data, return_value: *mut zval),
14500    >;
14501}
14502extern "C" {
14503    pub fn zend_init_execute_data(
14504        execute_data: *mut zend_execute_data,
14505        op_array: *mut zend_op_array,
14506        return_value: *mut zval,
14507    );
14508}
14509extern "C" {
14510    pub fn zend_init_func_execute_data(
14511        execute_data: *mut zend_execute_data,
14512        op_array: *mut zend_op_array,
14513        return_value: *mut zval,
14514    );
14515}
14516extern "C" {
14517    pub fn zend_init_code_execute_data(
14518        execute_data: *mut zend_execute_data,
14519        op_array: *mut zend_op_array,
14520        return_value: *mut zval,
14521    );
14522}
14523extern "C" {
14524    pub fn zend_execute(op_array: *mut zend_op_array, return_value: *mut zval);
14525}
14526extern "C" {
14527    pub fn zend_lookup_class(name: *mut zend_string) -> *mut zend_class_entry;
14528}
14529extern "C" {
14530    pub fn zend_lookup_class_ex(
14531        name: *mut zend_string,
14532        key: *const zval,
14533        use_autoload: ::std::os::raw::c_int,
14534    ) -> *mut zend_class_entry;
14535}
14536extern "C" {
14537    pub fn zend_get_called_scope(ex: *mut zend_execute_data) -> *mut zend_class_entry;
14538}
14539extern "C" {
14540    pub fn zend_get_this_object(ex: *mut zend_execute_data) -> *mut zend_object;
14541}
14542extern "C" {
14543    pub fn zend_eval_string(
14544        str_: *mut ::std::os::raw::c_char,
14545        retval_ptr: *mut zval,
14546        string_name: *mut ::std::os::raw::c_char,
14547    ) -> ::std::os::raw::c_int;
14548}
14549extern "C" {
14550    pub fn zend_eval_stringl(
14551        str_: *mut ::std::os::raw::c_char,
14552        str_len: size_t,
14553        retval_ptr: *mut zval,
14554        string_name: *mut ::std::os::raw::c_char,
14555    ) -> ::std::os::raw::c_int;
14556}
14557extern "C" {
14558    pub fn zend_eval_string_ex(
14559        str_: *mut ::std::os::raw::c_char,
14560        retval_ptr: *mut zval,
14561        string_name: *mut ::std::os::raw::c_char,
14562        handle_exceptions: ::std::os::raw::c_int,
14563    ) -> ::std::os::raw::c_int;
14564}
14565extern "C" {
14566    pub fn zend_eval_stringl_ex(
14567        str_: *mut ::std::os::raw::c_char,
14568        str_len: size_t,
14569        retval_ptr: *mut zval,
14570        string_name: *mut ::std::os::raw::c_char,
14571        handle_exceptions: ::std::os::raw::c_int,
14572    ) -> ::std::os::raw::c_int;
14573}
14574extern "C" {
14575    pub static zend_pass_function: zend_internal_function;
14576}
14577extern "C" {
14578    pub fn zend_check_internal_arg_type(zf: *mut zend_function, arg_num: u32, arg: *mut zval);
14579}
14580extern "C" {
14581    pub fn zend_check_arg_type(
14582        zf: *mut zend_function,
14583        arg_num: u32,
14584        arg: *mut zval,
14585        default_value: *mut zval,
14586        cache_slot: *mut *mut ::std::os::raw::c_void,
14587    ) -> ::std::os::raw::c_int;
14588}
14589extern "C" {
14590    pub fn zend_missing_arg_error(execute_data: *mut zend_execute_data);
14591}
14592extern "C" {
14593    pub fn zend_use_undefined_constant(
14594        name: *mut zend_string,
14595        attr: zend_ast_attr,
14596        result: *mut zval,
14597    ) -> ::std::os::raw::c_int;
14598}
14599#[repr(C)]
14600#[derive(Debug, Copy, Clone)]
14601pub struct _zend_vm_stack {
14602    pub top: *mut zval,
14603    pub end: *mut zval,
14604    pub prev: zend_vm_stack,
14605}
14606#[test]
14607fn bindgen_test_layout__zend_vm_stack() {
14608    assert_eq!(
14609        ::std::mem::size_of::<_zend_vm_stack>(),
14610        24usize,
14611        concat!("Size of: ", stringify!(_zend_vm_stack))
14612    );
14613    assert_eq!(
14614        ::std::mem::align_of::<_zend_vm_stack>(),
14615        8usize,
14616        concat!("Alignment of ", stringify!(_zend_vm_stack))
14617    );
14618    assert_eq!(
14619        unsafe { &(*(::std::ptr::null::<_zend_vm_stack>())).top as *const _ as usize },
14620        0usize,
14621        concat!(
14622            "Offset of field: ",
14623            stringify!(_zend_vm_stack),
14624            "::",
14625            stringify!(top)
14626        )
14627    );
14628    assert_eq!(
14629        unsafe { &(*(::std::ptr::null::<_zend_vm_stack>())).end as *const _ as usize },
14630        8usize,
14631        concat!(
14632            "Offset of field: ",
14633            stringify!(_zend_vm_stack),
14634            "::",
14635            stringify!(end)
14636        )
14637    );
14638    assert_eq!(
14639        unsafe { &(*(::std::ptr::null::<_zend_vm_stack>())).prev as *const _ as usize },
14640        16usize,
14641        concat!(
14642            "Offset of field: ",
14643            stringify!(_zend_vm_stack),
14644            "::",
14645            stringify!(prev)
14646        )
14647    );
14648}
14649extern "C" {
14650    pub fn zend_vm_stack_init();
14651}
14652extern "C" {
14653    pub fn zend_vm_stack_init_ex(page_size: size_t);
14654}
14655extern "C" {
14656    pub fn zend_vm_stack_destroy();
14657}
14658extern "C" {
14659    pub fn zend_vm_stack_extend(size: size_t) -> *mut ::std::os::raw::c_void;
14660}
14661extern "C" {
14662    pub fn zend_get_executed_filename() -> *const ::std::os::raw::c_char;
14663}
14664extern "C" {
14665    pub fn zend_get_executed_filename_ex() -> *mut zend_string;
14666}
14667extern "C" {
14668    pub fn zend_get_executed_lineno() -> u32;
14669}
14670extern "C" {
14671    pub fn zend_get_executed_scope() -> *mut zend_class_entry;
14672}
14673extern "C" {
14674    pub fn zend_is_executing() -> zend_bool;
14675}
14676extern "C" {
14677    pub fn zend_set_timeout(seconds: zend_long, reset_signals: ::std::os::raw::c_int);
14678}
14679extern "C" {
14680    pub fn zend_unset_timeout();
14681}
14682extern "C" {
14683    pub fn zend_timeout(dummy: ::std::os::raw::c_int);
14684}
14685extern "C" {
14686    pub fn zend_fetch_class(
14687        class_name: *mut zend_string,
14688        fetch_type: ::std::os::raw::c_int,
14689    ) -> *mut zend_class_entry;
14690}
14691extern "C" {
14692    pub fn zend_fetch_class_by_name(
14693        class_name: *mut zend_string,
14694        key: *const zval,
14695        fetch_type: ::std::os::raw::c_int,
14696    ) -> *mut zend_class_entry;
14697}
14698extern "C" {
14699    pub fn zend_verify_abstract_class(ce: *mut zend_class_entry);
14700}
14701extern "C" {
14702    pub fn zend_fetch_function(name: *mut zend_string) -> *mut zend_function;
14703}
14704extern "C" {
14705    pub fn zend_fetch_function_str(
14706        name: *const ::std::os::raw::c_char,
14707        len: size_t,
14708    ) -> *mut zend_function;
14709}
14710extern "C" {
14711    pub fn zend_fetch_dimension_const(
14712        result: *mut zval,
14713        container: *mut zval,
14714        dim: *mut zval,
14715        type_: ::std::os::raw::c_int,
14716    );
14717}
14718extern "C" {
14719    pub fn zend_get_compiled_variable_value(
14720        execute_data_ptr: *const zend_execute_data,
14721        var: u32,
14722    ) -> *mut zval;
14723}
14724extern "C" {
14725    pub fn zend_set_user_opcode_handler(
14726        opcode: zend_uchar,
14727        handler: user_opcode_handler_t,
14728    ) -> ::std::os::raw::c_int;
14729}
14730extern "C" {
14731    pub fn zend_get_user_opcode_handler(opcode: zend_uchar) -> user_opcode_handler_t;
14732}
14733pub type zend_free_op = *mut zval;
14734extern "C" {
14735    pub fn zend_get_zval_ptr(
14736        opline: *const zend_op,
14737        op_type: ::std::os::raw::c_int,
14738        node: *const znode_op,
14739        execute_data: *const zend_execute_data,
14740        should_free: *mut zend_free_op,
14741        type_: ::std::os::raw::c_int,
14742    ) -> *mut zval;
14743}
14744extern "C" {
14745    pub fn zend_clean_and_cache_symbol_table(symbol_table: *mut zend_array);
14746}
14747extern "C" {
14748    pub fn zend_free_compiled_variables(execute_data: *mut zend_execute_data);
14749}
14750extern "C" {
14751    pub fn zend_cleanup_unfinished_execution(
14752        execute_data: *mut zend_execute_data,
14753        op_num: u32,
14754        catch_op_num: u32,
14755    );
14756}
14757extern "C" {
14758    pub fn zend_do_fcall_overloaded(
14759        call: *mut zend_execute_data,
14760        ret: *mut zval,
14761    ) -> ::std::os::raw::c_int;
14762}
14763#[repr(C)]
14764#[derive(Debug, Copy, Clone)]
14765pub struct _zend_function_entry {
14766    pub fname: *const ::std::os::raw::c_char,
14767    pub handler: zif_handler,
14768    pub arg_info: *const _zend_internal_arg_info,
14769    pub num_args: u32,
14770    pub flags: u32,
14771}
14772#[test]
14773fn bindgen_test_layout__zend_function_entry() {
14774    assert_eq!(
14775        ::std::mem::size_of::<_zend_function_entry>(),
14776        32usize,
14777        concat!("Size of: ", stringify!(_zend_function_entry))
14778    );
14779    assert_eq!(
14780        ::std::mem::align_of::<_zend_function_entry>(),
14781        8usize,
14782        concat!("Alignment of ", stringify!(_zend_function_entry))
14783    );
14784    assert_eq!(
14785        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).fname as *const _ as usize },
14786        0usize,
14787        concat!(
14788            "Offset of field: ",
14789            stringify!(_zend_function_entry),
14790            "::",
14791            stringify!(fname)
14792        )
14793    );
14794    assert_eq!(
14795        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).handler as *const _ as usize },
14796        8usize,
14797        concat!(
14798            "Offset of field: ",
14799            stringify!(_zend_function_entry),
14800            "::",
14801            stringify!(handler)
14802        )
14803    );
14804    assert_eq!(
14805        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).arg_info as *const _ as usize },
14806        16usize,
14807        concat!(
14808            "Offset of field: ",
14809            stringify!(_zend_function_entry),
14810            "::",
14811            stringify!(arg_info)
14812        )
14813    );
14814    assert_eq!(
14815        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).num_args as *const _ as usize },
14816        24usize,
14817        concat!(
14818            "Offset of field: ",
14819            stringify!(_zend_function_entry),
14820            "::",
14821            stringify!(num_args)
14822        )
14823    );
14824    assert_eq!(
14825        unsafe { &(*(::std::ptr::null::<_zend_function_entry>())).flags as *const _ as usize },
14826        28usize,
14827        concat!(
14828            "Offset of field: ",
14829            stringify!(_zend_function_entry),
14830            "::",
14831            stringify!(flags)
14832        )
14833    );
14834}
14835pub type zend_function_entry = _zend_function_entry;
14836#[repr(C)]
14837#[derive(Copy, Clone)]
14838pub struct _zend_fcall_info {
14839    pub size: size_t,
14840    pub function_name: zval,
14841    pub retval: *mut zval,
14842    pub params: *mut zval,
14843    pub object: *mut zend_object,
14844    pub no_separation: zend_bool,
14845    pub param_count: u32,
14846}
14847#[test]
14848fn bindgen_test_layout__zend_fcall_info() {
14849    assert_eq!(
14850        ::std::mem::size_of::<_zend_fcall_info>(),
14851        56usize,
14852        concat!("Size of: ", stringify!(_zend_fcall_info))
14853    );
14854    assert_eq!(
14855        ::std::mem::align_of::<_zend_fcall_info>(),
14856        8usize,
14857        concat!("Alignment of ", stringify!(_zend_fcall_info))
14858    );
14859    assert_eq!(
14860        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).size as *const _ as usize },
14861        0usize,
14862        concat!(
14863            "Offset of field: ",
14864            stringify!(_zend_fcall_info),
14865            "::",
14866            stringify!(size)
14867        )
14868    );
14869    assert_eq!(
14870        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).function_name as *const _ as usize },
14871        8usize,
14872        concat!(
14873            "Offset of field: ",
14874            stringify!(_zend_fcall_info),
14875            "::",
14876            stringify!(function_name)
14877        )
14878    );
14879    assert_eq!(
14880        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).retval as *const _ as usize },
14881        24usize,
14882        concat!(
14883            "Offset of field: ",
14884            stringify!(_zend_fcall_info),
14885            "::",
14886            stringify!(retval)
14887        )
14888    );
14889    assert_eq!(
14890        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).params as *const _ as usize },
14891        32usize,
14892        concat!(
14893            "Offset of field: ",
14894            stringify!(_zend_fcall_info),
14895            "::",
14896            stringify!(params)
14897        )
14898    );
14899    assert_eq!(
14900        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).object as *const _ as usize },
14901        40usize,
14902        concat!(
14903            "Offset of field: ",
14904            stringify!(_zend_fcall_info),
14905            "::",
14906            stringify!(object)
14907        )
14908    );
14909    assert_eq!(
14910        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).no_separation as *const _ as usize },
14911        48usize,
14912        concat!(
14913            "Offset of field: ",
14914            stringify!(_zend_fcall_info),
14915            "::",
14916            stringify!(no_separation)
14917        )
14918    );
14919    assert_eq!(
14920        unsafe { &(*(::std::ptr::null::<_zend_fcall_info>())).param_count as *const _ as usize },
14921        52usize,
14922        concat!(
14923            "Offset of field: ",
14924            stringify!(_zend_fcall_info),
14925            "::",
14926            stringify!(param_count)
14927        )
14928    );
14929}
14930pub type zend_fcall_info = _zend_fcall_info;
14931#[repr(C)]
14932#[derive(Debug, Copy, Clone)]
14933pub struct _zend_fcall_info_cache {
14934    pub function_handler: *mut zend_function,
14935    pub calling_scope: *mut zend_class_entry,
14936    pub called_scope: *mut zend_class_entry,
14937    pub object: *mut zend_object,
14938}
14939#[test]
14940fn bindgen_test_layout__zend_fcall_info_cache() {
14941    assert_eq!(
14942        ::std::mem::size_of::<_zend_fcall_info_cache>(),
14943        32usize,
14944        concat!("Size of: ", stringify!(_zend_fcall_info_cache))
14945    );
14946    assert_eq!(
14947        ::std::mem::align_of::<_zend_fcall_info_cache>(),
14948        8usize,
14949        concat!("Alignment of ", stringify!(_zend_fcall_info_cache))
14950    );
14951    assert_eq!(
14952        unsafe {
14953            &(*(::std::ptr::null::<_zend_fcall_info_cache>())).function_handler as *const _ as usize
14954        },
14955        0usize,
14956        concat!(
14957            "Offset of field: ",
14958            stringify!(_zend_fcall_info_cache),
14959            "::",
14960            stringify!(function_handler)
14961        )
14962    );
14963    assert_eq!(
14964        unsafe {
14965            &(*(::std::ptr::null::<_zend_fcall_info_cache>())).calling_scope as *const _ as usize
14966        },
14967        8usize,
14968        concat!(
14969            "Offset of field: ",
14970            stringify!(_zend_fcall_info_cache),
14971            "::",
14972            stringify!(calling_scope)
14973        )
14974    );
14975    assert_eq!(
14976        unsafe {
14977            &(*(::std::ptr::null::<_zend_fcall_info_cache>())).called_scope as *const _ as usize
14978        },
14979        16usize,
14980        concat!(
14981            "Offset of field: ",
14982            stringify!(_zend_fcall_info_cache),
14983            "::",
14984            stringify!(called_scope)
14985        )
14986    );
14987    assert_eq!(
14988        unsafe { &(*(::std::ptr::null::<_zend_fcall_info_cache>())).object as *const _ as usize },
14989        24usize,
14990        concat!(
14991            "Offset of field: ",
14992            stringify!(_zend_fcall_info_cache),
14993            "::",
14994            stringify!(object)
14995        )
14996    );
14997}
14998pub type zend_fcall_info_cache = _zend_fcall_info_cache;
14999extern "C" {
15000    pub fn zend_next_free_module() -> ::std::os::raw::c_int;
15001}
15002extern "C" {
15003    pub fn _zend_get_parameters_array_ex(
15004        param_count: ::std::os::raw::c_int,
15005        argument_array: *mut zval,
15006    ) -> ::std::os::raw::c_int;
15007}
15008extern "C" {
15009    pub fn zend_copy_parameters_array(
15010        param_count: ::std::os::raw::c_int,
15011        argument_array: *mut zval,
15012    ) -> ::std::os::raw::c_int;
15013}
15014extern "C" {
15015    pub fn zend_parse_parameters(
15016        num_args: ::std::os::raw::c_int,
15017        type_spec: *const ::std::os::raw::c_char,
15018        ...
15019    ) -> ::std::os::raw::c_int;
15020}
15021extern "C" {
15022    pub fn zend_parse_parameters_ex(
15023        flags: ::std::os::raw::c_int,
15024        num_args: ::std::os::raw::c_int,
15025        type_spec: *const ::std::os::raw::c_char,
15026        ...
15027    ) -> ::std::os::raw::c_int;
15028}
15029extern "C" {
15030    pub fn zend_parse_parameters_throw(
15031        num_args: ::std::os::raw::c_int,
15032        type_spec: *const ::std::os::raw::c_char,
15033        ...
15034    ) -> ::std::os::raw::c_int;
15035}
15036extern "C" {
15037    pub fn zend_zval_type_name(arg: *const zval) -> *mut ::std::os::raw::c_char;
15038}
15039extern "C" {
15040    pub fn zend_zval_get_type(arg: *const zval) -> *mut zend_string;
15041}
15042extern "C" {
15043    pub fn zend_parse_method_parameters(
15044        num_args: ::std::os::raw::c_int,
15045        this_ptr: *mut zval,
15046        type_spec: *const ::std::os::raw::c_char,
15047        ...
15048    ) -> ::std::os::raw::c_int;
15049}
15050extern "C" {
15051    pub fn zend_parse_method_parameters_ex(
15052        flags: ::std::os::raw::c_int,
15053        num_args: ::std::os::raw::c_int,
15054        this_ptr: *mut zval,
15055        type_spec: *const ::std::os::raw::c_char,
15056        ...
15057    ) -> ::std::os::raw::c_int;
15058}
15059extern "C" {
15060    pub fn zend_parse_parameter(
15061        flags: ::std::os::raw::c_int,
15062        arg_num: ::std::os::raw::c_int,
15063        arg: *mut zval,
15064        spec: *const ::std::os::raw::c_char,
15065        ...
15066    ) -> ::std::os::raw::c_int;
15067}
15068extern "C" {
15069    pub fn zend_register_functions(
15070        scope: *mut zend_class_entry,
15071        functions: *const zend_function_entry,
15072        function_table: *mut HashTable,
15073        type_: ::std::os::raw::c_int,
15074    ) -> ::std::os::raw::c_int;
15075}
15076extern "C" {
15077    pub fn zend_unregister_functions(
15078        functions: *const zend_function_entry,
15079        count: ::std::os::raw::c_int,
15080        function_table: *mut HashTable,
15081    );
15082}
15083extern "C" {
15084    pub fn zend_startup_module(module_entry: *mut zend_module_entry) -> ::std::os::raw::c_int;
15085}
15086extern "C" {
15087    pub fn zend_register_internal_module(
15088        module_entry: *mut zend_module_entry,
15089    ) -> *mut zend_module_entry;
15090}
15091extern "C" {
15092    pub fn zend_register_module_ex(module: *mut zend_module_entry) -> *mut zend_module_entry;
15093}
15094extern "C" {
15095    pub fn zend_startup_module_ex(module: *mut zend_module_entry) -> ::std::os::raw::c_int;
15096}
15097extern "C" {
15098    pub fn zend_startup_modules() -> ::std::os::raw::c_int;
15099}
15100extern "C" {
15101    pub fn zend_collect_module_handlers();
15102}
15103extern "C" {
15104    pub fn zend_destroy_modules();
15105}
15106extern "C" {
15107    pub fn zend_check_magic_method_implementation(
15108        ce: *const zend_class_entry,
15109        fptr: *const zend_function,
15110        error_type: ::std::os::raw::c_int,
15111    );
15112}
15113extern "C" {
15114    pub fn zend_register_internal_class(
15115        class_entry: *mut zend_class_entry,
15116    ) -> *mut zend_class_entry;
15117}
15118extern "C" {
15119    pub fn zend_register_internal_class_ex(
15120        class_entry: *mut zend_class_entry,
15121        parent_ce: *mut zend_class_entry,
15122    ) -> *mut zend_class_entry;
15123}
15124extern "C" {
15125    pub fn zend_register_internal_interface(
15126        orig_class_entry: *mut zend_class_entry,
15127    ) -> *mut zend_class_entry;
15128}
15129extern "C" {
15130    pub fn zend_class_implements(
15131        class_entry: *mut zend_class_entry,
15132        num_interfaces: ::std::os::raw::c_int,
15133        ...
15134    );
15135}
15136extern "C" {
15137    pub fn zend_register_class_alias_ex(
15138        name: *const ::std::os::raw::c_char,
15139        name_len: size_t,
15140        ce: *mut zend_class_entry,
15141        persistent: ::std::os::raw::c_int,
15142    ) -> ::std::os::raw::c_int;
15143}
15144extern "C" {
15145    pub fn zend_disable_function(
15146        function_name: *mut ::std::os::raw::c_char,
15147        function_name_length: size_t,
15148    ) -> ::std::os::raw::c_int;
15149}
15150extern "C" {
15151    pub fn zend_disable_class(
15152        class_name: *mut ::std::os::raw::c_char,
15153        class_name_length: size_t,
15154    ) -> ::std::os::raw::c_int;
15155}
15156extern "C" {
15157    pub fn zend_wrong_param_count();
15158}
15159extern "C" {
15160    pub fn zend_get_callable_name_ex(
15161        callable: *mut zval,
15162        object: *mut zend_object,
15163    ) -> *mut zend_string;
15164}
15165extern "C" {
15166    pub fn zend_get_callable_name(callable: *mut zval) -> *mut zend_string;
15167}
15168extern "C" {
15169    pub fn zend_is_callable_ex(
15170        callable: *mut zval,
15171        object: *mut zend_object,
15172        check_flags: u32,
15173        callable_name: *mut *mut zend_string,
15174        fcc: *mut zend_fcall_info_cache,
15175        error: *mut *mut ::std::os::raw::c_char,
15176    ) -> zend_bool;
15177}
15178extern "C" {
15179    pub fn zend_is_callable(
15180        callable: *mut zval,
15181        check_flags: u32,
15182        callable_name: *mut *mut zend_string,
15183    ) -> zend_bool;
15184}
15185extern "C" {
15186    pub fn zend_make_callable(
15187        callable: *mut zval,
15188        callable_name: *mut *mut zend_string,
15189    ) -> zend_bool;
15190}
15191extern "C" {
15192    pub fn zend_get_module_version(
15193        module_name: *const ::std::os::raw::c_char,
15194    ) -> *const ::std::os::raw::c_char;
15195}
15196extern "C" {
15197    pub fn zend_get_module_started(
15198        module_name: *const ::std::os::raw::c_char,
15199    ) -> ::std::os::raw::c_int;
15200}
15201extern "C" {
15202    pub fn zend_declare_property_ex(
15203        ce: *mut zend_class_entry,
15204        name: *mut zend_string,
15205        property: *mut zval,
15206        access_type: ::std::os::raw::c_int,
15207        doc_comment: *mut zend_string,
15208    ) -> ::std::os::raw::c_int;
15209}
15210extern "C" {
15211    pub fn zend_declare_property(
15212        ce: *mut zend_class_entry,
15213        name: *const ::std::os::raw::c_char,
15214        name_length: size_t,
15215        property: *mut zval,
15216        access_type: ::std::os::raw::c_int,
15217    ) -> ::std::os::raw::c_int;
15218}
15219extern "C" {
15220    pub fn zend_declare_property_null(
15221        ce: *mut zend_class_entry,
15222        name: *const ::std::os::raw::c_char,
15223        name_length: size_t,
15224        access_type: ::std::os::raw::c_int,
15225    ) -> ::std::os::raw::c_int;
15226}
15227extern "C" {
15228    pub fn zend_declare_property_bool(
15229        ce: *mut zend_class_entry,
15230        name: *const ::std::os::raw::c_char,
15231        name_length: size_t,
15232        value: zend_long,
15233        access_type: ::std::os::raw::c_int,
15234    ) -> ::std::os::raw::c_int;
15235}
15236extern "C" {
15237    pub fn zend_declare_property_long(
15238        ce: *mut zend_class_entry,
15239        name: *const ::std::os::raw::c_char,
15240        name_length: size_t,
15241        value: zend_long,
15242        access_type: ::std::os::raw::c_int,
15243    ) -> ::std::os::raw::c_int;
15244}
15245extern "C" {
15246    pub fn zend_declare_property_double(
15247        ce: *mut zend_class_entry,
15248        name: *const ::std::os::raw::c_char,
15249        name_length: size_t,
15250        value: f64,
15251        access_type: ::std::os::raw::c_int,
15252    ) -> ::std::os::raw::c_int;
15253}
15254extern "C" {
15255    pub fn zend_declare_property_string(
15256        ce: *mut zend_class_entry,
15257        name: *const ::std::os::raw::c_char,
15258        name_length: size_t,
15259        value: *const ::std::os::raw::c_char,
15260        access_type: ::std::os::raw::c_int,
15261    ) -> ::std::os::raw::c_int;
15262}
15263extern "C" {
15264    pub fn zend_declare_property_stringl(
15265        ce: *mut zend_class_entry,
15266        name: *const ::std::os::raw::c_char,
15267        name_length: size_t,
15268        value: *const ::std::os::raw::c_char,
15269        value_len: size_t,
15270        access_type: ::std::os::raw::c_int,
15271    ) -> ::std::os::raw::c_int;
15272}
15273extern "C" {
15274    pub fn zend_declare_class_constant_ex(
15275        ce: *mut zend_class_entry,
15276        name: *mut zend_string,
15277        value: *mut zval,
15278        access_type: ::std::os::raw::c_int,
15279        doc_comment: *mut zend_string,
15280    ) -> ::std::os::raw::c_int;
15281}
15282extern "C" {
15283    pub fn zend_declare_class_constant(
15284        ce: *mut zend_class_entry,
15285        name: *const ::std::os::raw::c_char,
15286        name_length: size_t,
15287        value: *mut zval,
15288    ) -> ::std::os::raw::c_int;
15289}
15290extern "C" {
15291    pub fn zend_declare_class_constant_null(
15292        ce: *mut zend_class_entry,
15293        name: *const ::std::os::raw::c_char,
15294        name_length: size_t,
15295    ) -> ::std::os::raw::c_int;
15296}
15297extern "C" {
15298    pub fn zend_declare_class_constant_long(
15299        ce: *mut zend_class_entry,
15300        name: *const ::std::os::raw::c_char,
15301        name_length: size_t,
15302        value: zend_long,
15303    ) -> ::std::os::raw::c_int;
15304}
15305extern "C" {
15306    pub fn zend_declare_class_constant_bool(
15307        ce: *mut zend_class_entry,
15308        name: *const ::std::os::raw::c_char,
15309        name_length: size_t,
15310        value: zend_bool,
15311    ) -> ::std::os::raw::c_int;
15312}
15313extern "C" {
15314    pub fn zend_declare_class_constant_double(
15315        ce: *mut zend_class_entry,
15316        name: *const ::std::os::raw::c_char,
15317        name_length: size_t,
15318        value: f64,
15319    ) -> ::std::os::raw::c_int;
15320}
15321extern "C" {
15322    pub fn zend_declare_class_constant_stringl(
15323        ce: *mut zend_class_entry,
15324        name: *const ::std::os::raw::c_char,
15325        name_length: size_t,
15326        value: *const ::std::os::raw::c_char,
15327        value_length: size_t,
15328    ) -> ::std::os::raw::c_int;
15329}
15330extern "C" {
15331    pub fn zend_declare_class_constant_string(
15332        ce: *mut zend_class_entry,
15333        name: *const ::std::os::raw::c_char,
15334        name_length: size_t,
15335        value: *const ::std::os::raw::c_char,
15336    ) -> ::std::os::raw::c_int;
15337}
15338extern "C" {
15339    pub fn zend_update_class_constants(class_type: *mut zend_class_entry) -> ::std::os::raw::c_int;
15340}
15341extern "C" {
15342    pub fn zend_update_property_ex(
15343        scope: *mut zend_class_entry,
15344        object: *mut zval,
15345        name: *mut zend_string,
15346        value: *mut zval,
15347    );
15348}
15349extern "C" {
15350    pub fn zend_update_property(
15351        scope: *mut zend_class_entry,
15352        object: *mut zval,
15353        name: *const ::std::os::raw::c_char,
15354        name_length: size_t,
15355        value: *mut zval,
15356    );
15357}
15358extern "C" {
15359    pub fn zend_update_property_null(
15360        scope: *mut zend_class_entry,
15361        object: *mut zval,
15362        name: *const ::std::os::raw::c_char,
15363        name_length: size_t,
15364    );
15365}
15366extern "C" {
15367    pub fn zend_update_property_bool(
15368        scope: *mut zend_class_entry,
15369        object: *mut zval,
15370        name: *const ::std::os::raw::c_char,
15371        name_length: size_t,
15372        value: zend_long,
15373    );
15374}
15375extern "C" {
15376    pub fn zend_update_property_long(
15377        scope: *mut zend_class_entry,
15378        object: *mut zval,
15379        name: *const ::std::os::raw::c_char,
15380        name_length: size_t,
15381        value: zend_long,
15382    );
15383}
15384extern "C" {
15385    pub fn zend_update_property_double(
15386        scope: *mut zend_class_entry,
15387        object: *mut zval,
15388        name: *const ::std::os::raw::c_char,
15389        name_length: size_t,
15390        value: f64,
15391    );
15392}
15393extern "C" {
15394    pub fn zend_update_property_str(
15395        scope: *mut zend_class_entry,
15396        object: *mut zval,
15397        name: *const ::std::os::raw::c_char,
15398        name_length: size_t,
15399        value: *mut zend_string,
15400    );
15401}
15402extern "C" {
15403    pub fn zend_update_property_string(
15404        scope: *mut zend_class_entry,
15405        object: *mut zval,
15406        name: *const ::std::os::raw::c_char,
15407        name_length: size_t,
15408        value: *const ::std::os::raw::c_char,
15409    );
15410}
15411extern "C" {
15412    pub fn zend_update_property_stringl(
15413        scope: *mut zend_class_entry,
15414        object: *mut zval,
15415        name: *const ::std::os::raw::c_char,
15416        name_length: size_t,
15417        value: *const ::std::os::raw::c_char,
15418        value_length: size_t,
15419    );
15420}
15421extern "C" {
15422    pub fn zend_unset_property(
15423        scope: *mut zend_class_entry,
15424        object: *mut zval,
15425        name: *const ::std::os::raw::c_char,
15426        name_length: size_t,
15427    );
15428}
15429extern "C" {
15430    pub fn zend_update_static_property_ex(
15431        scope: *mut zend_class_entry,
15432        name: *mut zend_string,
15433        value: *mut zval,
15434    ) -> ::std::os::raw::c_int;
15435}
15436extern "C" {
15437    pub fn zend_update_static_property(
15438        scope: *mut zend_class_entry,
15439        name: *const ::std::os::raw::c_char,
15440        name_length: size_t,
15441        value: *mut zval,
15442    ) -> ::std::os::raw::c_int;
15443}
15444extern "C" {
15445    pub fn zend_update_static_property_null(
15446        scope: *mut zend_class_entry,
15447        name: *const ::std::os::raw::c_char,
15448        name_length: size_t,
15449    ) -> ::std::os::raw::c_int;
15450}
15451extern "C" {
15452    pub fn zend_update_static_property_bool(
15453        scope: *mut zend_class_entry,
15454        name: *const ::std::os::raw::c_char,
15455        name_length: size_t,
15456        value: zend_long,
15457    ) -> ::std::os::raw::c_int;
15458}
15459extern "C" {
15460    pub fn zend_update_static_property_long(
15461        scope: *mut zend_class_entry,
15462        name: *const ::std::os::raw::c_char,
15463        name_length: size_t,
15464        value: zend_long,
15465    ) -> ::std::os::raw::c_int;
15466}
15467extern "C" {
15468    pub fn zend_update_static_property_double(
15469        scope: *mut zend_class_entry,
15470        name: *const ::std::os::raw::c_char,
15471        name_length: size_t,
15472        value: f64,
15473    ) -> ::std::os::raw::c_int;
15474}
15475extern "C" {
15476    pub fn zend_update_static_property_string(
15477        scope: *mut zend_class_entry,
15478        name: *const ::std::os::raw::c_char,
15479        name_length: size_t,
15480        value: *const ::std::os::raw::c_char,
15481    ) -> ::std::os::raw::c_int;
15482}
15483extern "C" {
15484    pub fn zend_update_static_property_stringl(
15485        scope: *mut zend_class_entry,
15486        name: *const ::std::os::raw::c_char,
15487        name_length: size_t,
15488        value: *const ::std::os::raw::c_char,
15489        value_length: size_t,
15490    ) -> ::std::os::raw::c_int;
15491}
15492extern "C" {
15493    pub fn zend_read_property_ex(
15494        scope: *mut zend_class_entry,
15495        object: *mut zval,
15496        name: *mut zend_string,
15497        silent: zend_bool,
15498        rv: *mut zval,
15499    ) -> *mut zval;
15500}
15501extern "C" {
15502    pub fn zend_read_property(
15503        scope: *mut zend_class_entry,
15504        object: *mut zval,
15505        name: *const ::std::os::raw::c_char,
15506        name_length: size_t,
15507        silent: zend_bool,
15508        rv: *mut zval,
15509    ) -> *mut zval;
15510}
15511extern "C" {
15512    pub fn zend_read_static_property_ex(
15513        scope: *mut zend_class_entry,
15514        name: *mut zend_string,
15515        silent: zend_bool,
15516    ) -> *mut zval;
15517}
15518extern "C" {
15519    pub fn zend_read_static_property(
15520        scope: *mut zend_class_entry,
15521        name: *const ::std::os::raw::c_char,
15522        name_length: size_t,
15523        silent: zend_bool,
15524    ) -> *mut zval;
15525}
15526extern "C" {
15527    pub fn zend_get_type_by_const(type_: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char;
15528}
15529extern "C" {
15530    pub fn zend_merge_properties(obj: *mut zval, properties: *mut HashTable);
15531}
15532extern "C" {
15533    pub static empty_fcall_info: zend_fcall_info;
15534}
15535extern "C" {
15536    pub static empty_fcall_info_cache: zend_fcall_info_cache;
15537}
15538extern "C" {
15539    #[doc = " Build zend_call_info/cache from a zval*"]
15540    #[doc = ""]
15541    #[doc = " Caller is responsible to provide a return value (fci->retval), otherwise the we will crash."]
15542    #[doc = " In order to pass parameters the following members need to be set:"]
15543    #[doc = " fci->param_count = 0;"]
15544    #[doc = " fci->params = NULL;"]
15545    #[doc = " The callable_name argument may be NULL."]
15546    #[doc = " Set check_flags to IS_CALLABLE_STRICT for every new usage!"]
15547    pub fn zend_fcall_info_init(
15548        callable: *mut zval,
15549        check_flags: u32,
15550        fci: *mut zend_fcall_info,
15551        fcc: *mut zend_fcall_info_cache,
15552        callable_name: *mut *mut zend_string,
15553        error: *mut *mut ::std::os::raw::c_char,
15554    ) -> ::std::os::raw::c_int;
15555}
15556extern "C" {
15557    #[doc = " Clear arguments connected with zend_fcall_info *fci"]
15558    #[doc = " If free_mem is not zero then the params array gets free'd as well"]
15559    pub fn zend_fcall_info_args_clear(fci: *mut zend_fcall_info, free_mem: ::std::os::raw::c_int);
15560}
15561extern "C" {
15562    #[doc = " Save current arguments from zend_fcall_info *fci"]
15563    #[doc = " params array will be set to NULL"]
15564    pub fn zend_fcall_info_args_save(
15565        fci: *mut zend_fcall_info,
15566        param_count: *mut ::std::os::raw::c_int,
15567        params: *mut *mut zval,
15568    );
15569}
15570extern "C" {
15571    #[doc = " Free arguments connected with zend_fcall_info *fci andset back saved ones."]
15572    pub fn zend_fcall_info_args_restore(
15573        fci: *mut zend_fcall_info,
15574        param_count: ::std::os::raw::c_int,
15575        params: *mut zval,
15576    );
15577}
15578extern "C" {
15579    #[doc = " Set or clear the arguments in the zend_call_info struct taking care of"]
15580    #[doc = " refcount. If args is NULL and arguments are set then those are cleared."]
15581    pub fn zend_fcall_info_args(
15582        fci: *mut zend_fcall_info,
15583        args: *mut zval,
15584    ) -> ::std::os::raw::c_int;
15585}
15586extern "C" {
15587    pub fn zend_fcall_info_args_ex(
15588        fci: *mut zend_fcall_info,
15589        func: *mut zend_function,
15590        args: *mut zval,
15591    ) -> ::std::os::raw::c_int;
15592}
15593extern "C" {
15594    #[doc = " Set arguments in the zend_fcall_info struct taking care of refcount."]
15595    #[doc = " If argc is 0 the arguments which are set will be cleared, else pass"]
15596    #[doc = " a variable amount of zval** arguments."]
15597    pub fn zend_fcall_info_argp(
15598        fci: *mut zend_fcall_info,
15599        argc: ::std::os::raw::c_int,
15600        argv: *mut zval,
15601    ) -> ::std::os::raw::c_int;
15602}
15603extern "C" {
15604    #[doc = " Set arguments in the zend_fcall_info struct taking care of refcount."]
15605    #[doc = " If argc is 0 the arguments which are set will be cleared, else pass"]
15606    #[doc = " a variable amount of zval** arguments."]
15607    pub fn zend_fcall_info_argv(
15608        fci: *mut zend_fcall_info,
15609        argc: ::std::os::raw::c_int,
15610        argv: *mut va_list,
15611    ) -> ::std::os::raw::c_int;
15612}
15613extern "C" {
15614    #[doc = " Set arguments in the zend_fcall_info struct taking care of refcount."]
15615    #[doc = " If argc is 0 the arguments which are set will be cleared, else pass"]
15616    #[doc = " a variable amount of zval** arguments."]
15617    pub fn zend_fcall_info_argn(
15618        fci: *mut zend_fcall_info,
15619        argc: ::std::os::raw::c_int,
15620        ...
15621    ) -> ::std::os::raw::c_int;
15622}
15623extern "C" {
15624    #[doc = " Call a function using information created by zend_fcall_info_init()/args()."]
15625    #[doc = " If args is given then those replace the argument info in fci is temporarily."]
15626    pub fn zend_fcall_info_call(
15627        fci: *mut zend_fcall_info,
15628        fcc: *mut zend_fcall_info_cache,
15629        retval: *mut zval,
15630        args: *mut zval,
15631    ) -> ::std::os::raw::c_int;
15632}
15633extern "C" {
15634    pub fn zend_call_function(
15635        fci: *mut zend_fcall_info,
15636        fci_cache: *mut zend_fcall_info_cache,
15637    ) -> ::std::os::raw::c_int;
15638}
15639extern "C" {
15640    pub fn zend_set_hash_symbol(
15641        symbol: *mut zval,
15642        name: *const ::std::os::raw::c_char,
15643        name_length: ::std::os::raw::c_int,
15644        is_ref: zend_bool,
15645        num_symbol_tables: ::std::os::raw::c_int,
15646        ...
15647    ) -> ::std::os::raw::c_int;
15648}
15649extern "C" {
15650    pub fn zend_delete_global_variable(name: *mut zend_string) -> ::std::os::raw::c_int;
15651}
15652extern "C" {
15653    pub fn zend_rebuild_symbol_table() -> *mut zend_array;
15654}
15655extern "C" {
15656    pub fn zend_attach_symbol_table(execute_data: *mut zend_execute_data);
15657}
15658extern "C" {
15659    pub fn zend_detach_symbol_table(execute_data: *mut zend_execute_data);
15660}
15661extern "C" {
15662    pub fn zend_set_local_var(
15663        name: *mut zend_string,
15664        value: *mut zval,
15665        force: ::std::os::raw::c_int,
15666    ) -> ::std::os::raw::c_int;
15667}
15668extern "C" {
15669    pub fn zend_set_local_var_str(
15670        name: *const ::std::os::raw::c_char,
15671        len: size_t,
15672        value: *mut zval,
15673        force: ::std::os::raw::c_int,
15674    ) -> ::std::os::raw::c_int;
15675}
15676extern "C" {
15677    pub fn zend_forbid_dynamic_call(
15678        func_name: *const ::std::os::raw::c_char,
15679    ) -> ::std::os::raw::c_int;
15680}
15681extern "C" {
15682    pub fn zend_find_alias_name(
15683        ce: *mut zend_class_entry,
15684        name: *mut zend_string,
15685    ) -> *mut zend_string;
15686}
15687extern "C" {
15688    pub fn zend_resolve_method_name(
15689        ce: *mut zend_class_entry,
15690        f: *mut zend_function,
15691    ) -> *mut zend_string;
15692}
15693extern "C" {
15694    pub fn zend_get_object_type(ce: *const zend_class_entry) -> *const ::std::os::raw::c_char;
15695}
15696extern "C" {
15697    pub fn zend_is_iterable(iterable: *mut zval) -> zend_bool;
15698}
15699extern "C" {
15700    pub fn zend_is_countable(countable: *mut zval) -> zend_bool;
15701}
15702pub const _zend_expected_type_Z_EXPECTED_LONG: _zend_expected_type = 0;
15703pub const _zend_expected_type_Z_EXPECTED_BOOL: _zend_expected_type = 1;
15704pub const _zend_expected_type_Z_EXPECTED_STRING: _zend_expected_type = 2;
15705pub const _zend_expected_type_Z_EXPECTED_ARRAY: _zend_expected_type = 3;
15706pub const _zend_expected_type_Z_EXPECTED_FUNC: _zend_expected_type = 4;
15707pub const _zend_expected_type_Z_EXPECTED_RESOURCE: _zend_expected_type = 5;
15708pub const _zend_expected_type_Z_EXPECTED_PATH: _zend_expected_type = 6;
15709pub const _zend_expected_type_Z_EXPECTED_OBJECT: _zend_expected_type = 7;
15710pub const _zend_expected_type_Z_EXPECTED_DOUBLE: _zend_expected_type = 8;
15711pub const _zend_expected_type_Z_EXPECTED_LAST: _zend_expected_type = 9;
15712pub type _zend_expected_type = ::std::os::raw::c_uint;
15713pub use self::_zend_expected_type as zend_expected_type;
15714extern "C" {
15715    pub fn zend_wrong_parameters_none_error() -> ::std::os::raw::c_int;
15716}
15717extern "C" {
15718    pub fn zend_wrong_parameters_none_exception() -> ::std::os::raw::c_int;
15719}
15720extern "C" {
15721    pub fn zend_wrong_parameters_count_error(
15722        min_num_args: ::std::os::raw::c_int,
15723        max_num_args: ::std::os::raw::c_int,
15724    );
15725}
15726extern "C" {
15727    pub fn zend_wrong_parameters_count_exception(
15728        min_num_args: ::std::os::raw::c_int,
15729        max_num_args: ::std::os::raw::c_int,
15730    );
15731}
15732extern "C" {
15733    pub fn zend_wrong_parameter_type_error(
15734        num: ::std::os::raw::c_int,
15735        expected_type: zend_expected_type,
15736        arg: *mut zval,
15737    );
15738}
15739extern "C" {
15740    pub fn zend_wrong_parameter_type_exception(
15741        num: ::std::os::raw::c_int,
15742        expected_type: zend_expected_type,
15743        arg: *mut zval,
15744    );
15745}
15746extern "C" {
15747    pub fn zend_wrong_parameter_class_error(
15748        num: ::std::os::raw::c_int,
15749        name: *mut ::std::os::raw::c_char,
15750        arg: *mut zval,
15751    );
15752}
15753extern "C" {
15754    pub fn zend_wrong_parameter_class_exception(
15755        num: ::std::os::raw::c_int,
15756        name: *mut ::std::os::raw::c_char,
15757        arg: *mut zval,
15758    );
15759}
15760extern "C" {
15761    pub fn zend_wrong_callback_error(
15762        num: ::std::os::raw::c_int,
15763        error: *mut ::std::os::raw::c_char,
15764    );
15765}
15766extern "C" {
15767    pub fn zend_wrong_callback_deprecated(
15768        num: ::std::os::raw::c_int,
15769        error: *mut ::std::os::raw::c_char,
15770    );
15771}
15772extern "C" {
15773    pub fn zend_wrong_callback_exception(
15774        num: ::std::os::raw::c_int,
15775        error: *mut ::std::os::raw::c_char,
15776    );
15777}
15778extern "C" {
15779    pub fn zend_parse_arg_class(
15780        arg: *mut zval,
15781        pce: *mut *mut zend_class_entry,
15782        num: ::std::os::raw::c_int,
15783        check_null: ::std::os::raw::c_int,
15784    ) -> ::std::os::raw::c_int;
15785}
15786extern "C" {
15787    pub fn zend_parse_arg_bool_slow(arg: *mut zval, dest: *mut zend_bool) -> ::std::os::raw::c_int;
15788}
15789extern "C" {
15790    pub fn zend_parse_arg_bool_weak(arg: *mut zval, dest: *mut zend_bool) -> ::std::os::raw::c_int;
15791}
15792extern "C" {
15793    pub fn zend_parse_arg_long_slow(arg: *mut zval, dest: *mut zend_long) -> ::std::os::raw::c_int;
15794}
15795extern "C" {
15796    pub fn zend_parse_arg_long_weak(arg: *mut zval, dest: *mut zend_long) -> ::std::os::raw::c_int;
15797}
15798extern "C" {
15799    pub fn zend_parse_arg_long_cap_slow(
15800        arg: *mut zval,
15801        dest: *mut zend_long,
15802    ) -> ::std::os::raw::c_int;
15803}
15804extern "C" {
15805    pub fn zend_parse_arg_long_cap_weak(
15806        arg: *mut zval,
15807        dest: *mut zend_long,
15808    ) -> ::std::os::raw::c_int;
15809}
15810extern "C" {
15811    pub fn zend_parse_arg_double_slow(arg: *mut zval, dest: *mut f64) -> ::std::os::raw::c_int;
15812}
15813extern "C" {
15814    pub fn zend_parse_arg_double_weak(arg: *mut zval, dest: *mut f64) -> ::std::os::raw::c_int;
15815}
15816extern "C" {
15817    pub fn zend_parse_arg_str_slow(
15818        arg: *mut zval,
15819        dest: *mut *mut zend_string,
15820    ) -> ::std::os::raw::c_int;
15821}
15822extern "C" {
15823    pub fn zend_parse_arg_str_weak(
15824        arg: *mut zval,
15825        dest: *mut *mut zend_string,
15826    ) -> ::std::os::raw::c_int;
15827}
15828extern "C" {
15829    pub fn php_strlcpy(
15830        dst: *mut ::std::os::raw::c_char,
15831        src: *const ::std::os::raw::c_char,
15832        siz: size_t,
15833    ) -> size_t;
15834}
15835extern "C" {
15836    pub fn php_strlcat(
15837        dst: *mut ::std::os::raw::c_char,
15838        src: *const ::std::os::raw::c_char,
15839        siz: size_t,
15840    ) -> size_t;
15841}
15842extern "C" {
15843    pub fn php_explicit_bzero(dst: *mut ::std::os::raw::c_void, siz: size_t);
15844}
15845pub type socklen_t = __socklen_t;
15846pub type bool_int = ::std::os::raw::c_int;
15847pub const boolean_e_NO: boolean_e = 0;
15848pub const boolean_e_YES: boolean_e = 1;
15849pub type boolean_e = ::std::os::raw::c_uint;
15850extern "C" {
15851    pub fn php_sprintf(
15852        s: *mut ::std::os::raw::c_char,
15853        format: *const ::std::os::raw::c_char,
15854        ...
15855    ) -> ::std::os::raw::c_int;
15856}
15857extern "C" {
15858    pub fn php_gcvt(
15859        value: f64,
15860        ndigit: ::std::os::raw::c_int,
15861        dec_point: ::std::os::raw::c_char,
15862        exponent: ::std::os::raw::c_char,
15863        buf: *mut ::std::os::raw::c_char,
15864    ) -> *mut ::std::os::raw::c_char;
15865}
15866extern "C" {
15867    pub fn php_0cvt(
15868        value: f64,
15869        ndigit: ::std::os::raw::c_int,
15870        dec_point: ::std::os::raw::c_char,
15871        exponent: ::std::os::raw::c_char,
15872        buf: *mut ::std::os::raw::c_char,
15873    ) -> *mut ::std::os::raw::c_char;
15874}
15875extern "C" {
15876    pub fn php_conv_fp(
15877        format: ::std::os::raw::c_char,
15878        num: f64,
15879        add_dp: boolean_e,
15880        precision: ::std::os::raw::c_int,
15881        dec_point: ::std::os::raw::c_char,
15882        is_negative: *mut bool_int,
15883        buf: *mut ::std::os::raw::c_char,
15884        len: *mut size_t,
15885    ) -> *mut ::std::os::raw::c_char;
15886}
15887extern "C" {
15888    pub fn php_printf_to_smart_string(
15889        buf: *mut smart_string,
15890        format: *const ::std::os::raw::c_char,
15891        ap: *mut __va_list_tag,
15892    );
15893}
15894extern "C" {
15895    pub fn php_printf_to_smart_str(
15896        buf: *mut smart_str,
15897        format: *const ::std::os::raw::c_char,
15898        ap: *mut __va_list_tag,
15899    );
15900}
15901extern "C" {
15902    pub fn php_write(buf: *mut ::std::os::raw::c_void, size: size_t) -> size_t;
15903}
15904extern "C" {
15905    pub fn php_printf(format: *const ::std::os::raw::c_char, ...) -> size_t;
15906}
15907extern "C" {
15908    pub fn php_get_module_initialized() -> ::std::os::raw::c_int;
15909}
15910extern "C" {
15911    pub fn php_syslog(arg1: ::std::os::raw::c_int, format: *const ::std::os::raw::c_char, ...);
15912}
15913extern "C" {
15914    pub fn php_openlog(
15915        arg1: *const ::std::os::raw::c_char,
15916        arg2: ::std::os::raw::c_int,
15917        arg3: ::std::os::raw::c_int,
15918    );
15919}
15920extern "C" {
15921    pub fn php_log_err_with_severity(
15922        log_message: *mut ::std::os::raw::c_char,
15923        syslog_type_int: ::std::os::raw::c_int,
15924    );
15925}
15926extern "C" {
15927    pub fn php_verror(
15928        docref: *const ::std::os::raw::c_char,
15929        params: *const ::std::os::raw::c_char,
15930        type_: ::std::os::raw::c_int,
15931        format: *const ::std::os::raw::c_char,
15932        args: *mut __va_list_tag,
15933    );
15934}
15935extern "C" {
15936    pub fn php_error_docref0(
15937        docref: *const ::std::os::raw::c_char,
15938        type_: ::std::os::raw::c_int,
15939        format: *const ::std::os::raw::c_char,
15940        ...
15941    );
15942}
15943extern "C" {
15944    pub fn php_error_docref1(
15945        docref: *const ::std::os::raw::c_char,
15946        param1: *const ::std::os::raw::c_char,
15947        type_: ::std::os::raw::c_int,
15948        format: *const ::std::os::raw::c_char,
15949        ...
15950    );
15951}
15952extern "C" {
15953    pub fn php_error_docref2(
15954        docref: *const ::std::os::raw::c_char,
15955        param1: *const ::std::os::raw::c_char,
15956        param2: *const ::std::os::raw::c_char,
15957        type_: ::std::os::raw::c_int,
15958        format: *const ::std::os::raw::c_char,
15959        ...
15960    );
15961}
15962extern "C" {
15963    pub static mut php_register_internal_extensions_func:
15964        ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_int>;
15965}
15966extern "C" {
15967    pub fn php_register_internal_extensions() -> ::std::os::raw::c_int;
15968}
15969extern "C" {
15970    pub fn php_mergesort(
15971        base: *mut ::std::os::raw::c_void,
15972        nmemb: size_t,
15973        size: size_t,
15974        cmp: ::std::option::Option<
15975            unsafe extern "C" fn(
15976                arg1: *const ::std::os::raw::c_void,
15977                arg2: *const ::std::os::raw::c_void,
15978            ) -> ::std::os::raw::c_int,
15979        >,
15980    ) -> ::std::os::raw::c_int;
15981}
15982extern "C" {
15983    pub fn php_register_pre_request_shutdown(
15984        func: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
15985        userdata: *mut ::std::os::raw::c_void,
15986    );
15987}
15988extern "C" {
15989    pub fn php_com_initialize();
15990}
15991extern "C" {
15992    pub fn php_get_current_user() -> *mut ::std::os::raw::c_char;
15993}
15994pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_GET_OPAQ: _php_output_handler_hook_t =
15995    0;
15996pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_GET_FLAGS: _php_output_handler_hook_t =
15997    1;
15998pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_GET_LEVEL: _php_output_handler_hook_t =
15999    2;
16000pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_IMMUTABLE: _php_output_handler_hook_t =
16001    3;
16002pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_DISABLE: _php_output_handler_hook_t =
16003    4;
16004pub const _php_output_handler_hook_t_PHP_OUTPUT_HANDLER_HOOK_LAST: _php_output_handler_hook_t = 5;
16005pub type _php_output_handler_hook_t = ::std::os::raw::c_uint;
16006pub use self::_php_output_handler_hook_t as php_output_handler_hook_t;
16007#[repr(C)]
16008#[derive(Debug, Copy, Clone)]
16009pub struct _php_output_buffer {
16010    pub data: *mut ::std::os::raw::c_char,
16011    pub size: size_t,
16012    pub used: size_t,
16013    pub _bitfield_align_1: [u32; 0],
16014    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>,
16015    pub __bindgen_padding_0: u32,
16016}
16017#[test]
16018fn bindgen_test_layout__php_output_buffer() {
16019    assert_eq!(
16020        ::std::mem::size_of::<_php_output_buffer>(),
16021        32usize,
16022        concat!("Size of: ", stringify!(_php_output_buffer))
16023    );
16024    assert_eq!(
16025        ::std::mem::align_of::<_php_output_buffer>(),
16026        8usize,
16027        concat!("Alignment of ", stringify!(_php_output_buffer))
16028    );
16029    assert_eq!(
16030        unsafe { &(*(::std::ptr::null::<_php_output_buffer>())).data as *const _ as usize },
16031        0usize,
16032        concat!(
16033            "Offset of field: ",
16034            stringify!(_php_output_buffer),
16035            "::",
16036            stringify!(data)
16037        )
16038    );
16039    assert_eq!(
16040        unsafe { &(*(::std::ptr::null::<_php_output_buffer>())).size as *const _ as usize },
16041        8usize,
16042        concat!(
16043            "Offset of field: ",
16044            stringify!(_php_output_buffer),
16045            "::",
16046            stringify!(size)
16047        )
16048    );
16049    assert_eq!(
16050        unsafe { &(*(::std::ptr::null::<_php_output_buffer>())).used as *const _ as usize },
16051        16usize,
16052        concat!(
16053            "Offset of field: ",
16054            stringify!(_php_output_buffer),
16055            "::",
16056            stringify!(used)
16057        )
16058    );
16059}
16060impl _php_output_buffer {
16061    #[inline]
16062    pub fn free(&self) -> u32 {
16063        unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) }
16064    }
16065    #[inline]
16066    pub fn set_free(&mut self, val: u32) {
16067        unsafe {
16068            let val: u32 = ::std::mem::transmute(val);
16069            self._bitfield_1.set(0usize, 1u8, val as u64)
16070        }
16071    }
16072    #[inline]
16073    pub fn _reserved(&self) -> u32 {
16074        unsafe { ::std::mem::transmute(self._bitfield_1.get(1usize, 31u8) as u32) }
16075    }
16076    #[inline]
16077    pub fn set__reserved(&mut self, val: u32) {
16078        unsafe {
16079            let val: u32 = ::std::mem::transmute(val);
16080            self._bitfield_1.set(1usize, 31u8, val as u64)
16081        }
16082    }
16083    #[inline]
16084    pub fn new_bitfield_1(free: u32, _reserved: u32) -> __BindgenBitfieldUnit<[u8; 4usize]> {
16085        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default();
16086        __bindgen_bitfield_unit.set(0usize, 1u8, {
16087            let free: u32 = unsafe { ::std::mem::transmute(free) };
16088            free as u64
16089        });
16090        __bindgen_bitfield_unit.set(1usize, 31u8, {
16091            let _reserved: u32 = unsafe { ::std::mem::transmute(_reserved) };
16092            _reserved as u64
16093        });
16094        __bindgen_bitfield_unit
16095    }
16096}
16097pub type php_output_buffer = _php_output_buffer;
16098#[repr(C)]
16099#[derive(Debug, Copy, Clone)]
16100pub struct _php_output_context {
16101    pub op: ::std::os::raw::c_int,
16102    pub in_: php_output_buffer,
16103    pub out: php_output_buffer,
16104}
16105#[test]
16106fn bindgen_test_layout__php_output_context() {
16107    assert_eq!(
16108        ::std::mem::size_of::<_php_output_context>(),
16109        72usize,
16110        concat!("Size of: ", stringify!(_php_output_context))
16111    );
16112    assert_eq!(
16113        ::std::mem::align_of::<_php_output_context>(),
16114        8usize,
16115        concat!("Alignment of ", stringify!(_php_output_context))
16116    );
16117    assert_eq!(
16118        unsafe { &(*(::std::ptr::null::<_php_output_context>())).op as *const _ as usize },
16119        0usize,
16120        concat!(
16121            "Offset of field: ",
16122            stringify!(_php_output_context),
16123            "::",
16124            stringify!(op)
16125        )
16126    );
16127    assert_eq!(
16128        unsafe { &(*(::std::ptr::null::<_php_output_context>())).in_ as *const _ as usize },
16129        8usize,
16130        concat!(
16131            "Offset of field: ",
16132            stringify!(_php_output_context),
16133            "::",
16134            stringify!(in_)
16135        )
16136    );
16137    assert_eq!(
16138        unsafe { &(*(::std::ptr::null::<_php_output_context>())).out as *const _ as usize },
16139        40usize,
16140        concat!(
16141            "Offset of field: ",
16142            stringify!(_php_output_context),
16143            "::",
16144            stringify!(out)
16145        )
16146    );
16147}
16148pub type php_output_context = _php_output_context;
16149pub type php_output_handler_func_t = ::std::option::Option<
16150    unsafe extern "C" fn(
16151        output: *mut ::std::os::raw::c_char,
16152        output_len: size_t,
16153        handled_output: *mut *mut ::std::os::raw::c_char,
16154        handled_output_len: *mut size_t,
16155        mode: ::std::os::raw::c_int,
16156    ),
16157>;
16158pub type php_output_handler_context_func_t = ::std::option::Option<
16159    unsafe extern "C" fn(
16160        handler_context: *mut *mut ::std::os::raw::c_void,
16161        output_context: *mut php_output_context,
16162    ) -> ::std::os::raw::c_int,
16163>;
16164pub type php_output_handler_conflict_check_t = ::std::option::Option<
16165    unsafe extern "C" fn(
16166        handler_name: *const ::std::os::raw::c_char,
16167        handler_name_len: size_t,
16168    ) -> ::std::os::raw::c_int,
16169>;
16170pub type php_output_handler_alias_ctor_t = ::std::option::Option<
16171    unsafe extern "C" fn(
16172        handler_name: *const ::std::os::raw::c_char,
16173        handler_name_len: size_t,
16174        chunk_size: size_t,
16175        flags: ::std::os::raw::c_int,
16176    ) -> *mut _php_output_handler,
16177>;
16178#[repr(C)]
16179#[derive(Copy, Clone)]
16180pub struct _php_output_handler_user_func_t {
16181    pub fci: zend_fcall_info,
16182    pub fcc: zend_fcall_info_cache,
16183    pub zoh: zval,
16184}
16185#[test]
16186fn bindgen_test_layout__php_output_handler_user_func_t() {
16187    assert_eq!(
16188        ::std::mem::size_of::<_php_output_handler_user_func_t>(),
16189        104usize,
16190        concat!("Size of: ", stringify!(_php_output_handler_user_func_t))
16191    );
16192    assert_eq!(
16193        ::std::mem::align_of::<_php_output_handler_user_func_t>(),
16194        8usize,
16195        concat!("Alignment of ", stringify!(_php_output_handler_user_func_t))
16196    );
16197    assert_eq!(
16198        unsafe {
16199            &(*(::std::ptr::null::<_php_output_handler_user_func_t>())).fci as *const _ as usize
16200        },
16201        0usize,
16202        concat!(
16203            "Offset of field: ",
16204            stringify!(_php_output_handler_user_func_t),
16205            "::",
16206            stringify!(fci)
16207        )
16208    );
16209    assert_eq!(
16210        unsafe {
16211            &(*(::std::ptr::null::<_php_output_handler_user_func_t>())).fcc as *const _ as usize
16212        },
16213        56usize,
16214        concat!(
16215            "Offset of field: ",
16216            stringify!(_php_output_handler_user_func_t),
16217            "::",
16218            stringify!(fcc)
16219        )
16220    );
16221    assert_eq!(
16222        unsafe {
16223            &(*(::std::ptr::null::<_php_output_handler_user_func_t>())).zoh as *const _ as usize
16224        },
16225        88usize,
16226        concat!(
16227            "Offset of field: ",
16228            stringify!(_php_output_handler_user_func_t),
16229            "::",
16230            stringify!(zoh)
16231        )
16232    );
16233}
16234pub type php_output_handler_user_func_t = _php_output_handler_user_func_t;
16235#[repr(C)]
16236#[derive(Copy, Clone)]
16237pub struct _php_output_handler {
16238    pub name: *mut zend_string,
16239    pub flags: ::std::os::raw::c_int,
16240    pub level: ::std::os::raw::c_int,
16241    pub size: size_t,
16242    pub buffer: php_output_buffer,
16243    pub opaq: *mut ::std::os::raw::c_void,
16244    pub dtor: ::std::option::Option<unsafe extern "C" fn(opaq: *mut ::std::os::raw::c_void)>,
16245    pub func: _php_output_handler__bindgen_ty_1,
16246}
16247#[repr(C)]
16248#[derive(Copy, Clone)]
16249pub union _php_output_handler__bindgen_ty_1 {
16250    pub user: *mut php_output_handler_user_func_t,
16251    pub internal: php_output_handler_context_func_t,
16252    _bindgen_union_align: u64,
16253}
16254#[test]
16255fn bindgen_test_layout__php_output_handler__bindgen_ty_1() {
16256    assert_eq!(
16257        ::std::mem::size_of::<_php_output_handler__bindgen_ty_1>(),
16258        8usize,
16259        concat!("Size of: ", stringify!(_php_output_handler__bindgen_ty_1))
16260    );
16261    assert_eq!(
16262        ::std::mem::align_of::<_php_output_handler__bindgen_ty_1>(),
16263        8usize,
16264        concat!(
16265            "Alignment of ",
16266            stringify!(_php_output_handler__bindgen_ty_1)
16267        )
16268    );
16269    assert_eq!(
16270        unsafe {
16271            &(*(::std::ptr::null::<_php_output_handler__bindgen_ty_1>())).user as *const _ as usize
16272        },
16273        0usize,
16274        concat!(
16275            "Offset of field: ",
16276            stringify!(_php_output_handler__bindgen_ty_1),
16277            "::",
16278            stringify!(user)
16279        )
16280    );
16281    assert_eq!(
16282        unsafe {
16283            &(*(::std::ptr::null::<_php_output_handler__bindgen_ty_1>())).internal as *const _
16284                as usize
16285        },
16286        0usize,
16287        concat!(
16288            "Offset of field: ",
16289            stringify!(_php_output_handler__bindgen_ty_1),
16290            "::",
16291            stringify!(internal)
16292        )
16293    );
16294}
16295#[test]
16296fn bindgen_test_layout__php_output_handler() {
16297    assert_eq!(
16298        ::std::mem::size_of::<_php_output_handler>(),
16299        80usize,
16300        concat!("Size of: ", stringify!(_php_output_handler))
16301    );
16302    assert_eq!(
16303        ::std::mem::align_of::<_php_output_handler>(),
16304        8usize,
16305        concat!("Alignment of ", stringify!(_php_output_handler))
16306    );
16307    assert_eq!(
16308        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).name as *const _ as usize },
16309        0usize,
16310        concat!(
16311            "Offset of field: ",
16312            stringify!(_php_output_handler),
16313            "::",
16314            stringify!(name)
16315        )
16316    );
16317    assert_eq!(
16318        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).flags as *const _ as usize },
16319        8usize,
16320        concat!(
16321            "Offset of field: ",
16322            stringify!(_php_output_handler),
16323            "::",
16324            stringify!(flags)
16325        )
16326    );
16327    assert_eq!(
16328        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).level as *const _ as usize },
16329        12usize,
16330        concat!(
16331            "Offset of field: ",
16332            stringify!(_php_output_handler),
16333            "::",
16334            stringify!(level)
16335        )
16336    );
16337    assert_eq!(
16338        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).size as *const _ as usize },
16339        16usize,
16340        concat!(
16341            "Offset of field: ",
16342            stringify!(_php_output_handler),
16343            "::",
16344            stringify!(size)
16345        )
16346    );
16347    assert_eq!(
16348        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).buffer as *const _ as usize },
16349        24usize,
16350        concat!(
16351            "Offset of field: ",
16352            stringify!(_php_output_handler),
16353            "::",
16354            stringify!(buffer)
16355        )
16356    );
16357    assert_eq!(
16358        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).opaq as *const _ as usize },
16359        56usize,
16360        concat!(
16361            "Offset of field: ",
16362            stringify!(_php_output_handler),
16363            "::",
16364            stringify!(opaq)
16365        )
16366    );
16367    assert_eq!(
16368        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).dtor as *const _ as usize },
16369        64usize,
16370        concat!(
16371            "Offset of field: ",
16372            stringify!(_php_output_handler),
16373            "::",
16374            stringify!(dtor)
16375        )
16376    );
16377    assert_eq!(
16378        unsafe { &(*(::std::ptr::null::<_php_output_handler>())).func as *const _ as usize },
16379        72usize,
16380        concat!(
16381            "Offset of field: ",
16382            stringify!(_php_output_handler),
16383            "::",
16384            stringify!(func)
16385        )
16386    );
16387}
16388pub type php_output_handler = _php_output_handler;
16389#[repr(C)]
16390#[derive(Debug, Copy, Clone)]
16391pub struct _zend_output_globals {
16392    pub handlers: zend_stack,
16393    pub active: *mut php_output_handler,
16394    pub running: *mut php_output_handler,
16395    pub output_start_filename: *const ::std::os::raw::c_char,
16396    pub output_start_lineno: ::std::os::raw::c_int,
16397    pub flags: ::std::os::raw::c_int,
16398}
16399#[test]
16400fn bindgen_test_layout__zend_output_globals() {
16401    assert_eq!(
16402        ::std::mem::size_of::<_zend_output_globals>(),
16403        56usize,
16404        concat!("Size of: ", stringify!(_zend_output_globals))
16405    );
16406    assert_eq!(
16407        ::std::mem::align_of::<_zend_output_globals>(),
16408        8usize,
16409        concat!("Alignment of ", stringify!(_zend_output_globals))
16410    );
16411    assert_eq!(
16412        unsafe { &(*(::std::ptr::null::<_zend_output_globals>())).handlers as *const _ as usize },
16413        0usize,
16414        concat!(
16415            "Offset of field: ",
16416            stringify!(_zend_output_globals),
16417            "::",
16418            stringify!(handlers)
16419        )
16420    );
16421    assert_eq!(
16422        unsafe { &(*(::std::ptr::null::<_zend_output_globals>())).active as *const _ as usize },
16423        24usize,
16424        concat!(
16425            "Offset of field: ",
16426            stringify!(_zend_output_globals),
16427            "::",
16428            stringify!(active)
16429        )
16430    );
16431    assert_eq!(
16432        unsafe { &(*(::std::ptr::null::<_zend_output_globals>())).running as *const _ as usize },
16433        32usize,
16434        concat!(
16435            "Offset of field: ",
16436            stringify!(_zend_output_globals),
16437            "::",
16438            stringify!(running)
16439        )
16440    );
16441    assert_eq!(
16442        unsafe {
16443            &(*(::std::ptr::null::<_zend_output_globals>())).output_start_filename as *const _
16444                as usize
16445        },
16446        40usize,
16447        concat!(
16448            "Offset of field: ",
16449            stringify!(_zend_output_globals),
16450            "::",
16451            stringify!(output_start_filename)
16452        )
16453    );
16454    assert_eq!(
16455        unsafe {
16456            &(*(::std::ptr::null::<_zend_output_globals>())).output_start_lineno as *const _
16457                as usize
16458        },
16459        48usize,
16460        concat!(
16461            "Offset of field: ",
16462            stringify!(_zend_output_globals),
16463            "::",
16464            stringify!(output_start_lineno)
16465        )
16466    );
16467    assert_eq!(
16468        unsafe { &(*(::std::ptr::null::<_zend_output_globals>())).flags as *const _ as usize },
16469        52usize,
16470        concat!(
16471            "Offset of field: ",
16472            stringify!(_zend_output_globals),
16473            "::",
16474            stringify!(flags)
16475        )
16476    );
16477}
16478pub type zend_output_globals = _zend_output_globals;
16479extern "C" {
16480    pub static mut output_globals: zend_output_globals;
16481}
16482extern "C" {
16483    pub static php_output_default_handler_name: [::std::os::raw::c_char; 23usize];
16484}
16485extern "C" {
16486    pub static php_output_devnull_handler_name: [::std::os::raw::c_char; 20usize];
16487}
16488extern "C" {
16489    pub fn php_output_startup();
16490}
16491extern "C" {
16492    pub fn php_output_shutdown();
16493}
16494extern "C" {
16495    pub fn php_output_register_constants();
16496}
16497extern "C" {
16498    pub fn php_output_activate() -> ::std::os::raw::c_int;
16499}
16500extern "C" {
16501    pub fn php_output_deactivate();
16502}
16503extern "C" {
16504    pub fn php_output_set_status(status: ::std::os::raw::c_int);
16505}
16506extern "C" {
16507    pub fn php_output_get_status() -> ::std::os::raw::c_int;
16508}
16509extern "C" {
16510    pub fn php_output_set_implicit_flush(flush: ::std::os::raw::c_int);
16511}
16512extern "C" {
16513    pub fn php_output_get_start_filename() -> *const ::std::os::raw::c_char;
16514}
16515extern "C" {
16516    pub fn php_output_get_start_lineno() -> ::std::os::raw::c_int;
16517}
16518extern "C" {
16519    pub fn php_output_write_unbuffered(str_: *const ::std::os::raw::c_char, len: size_t) -> size_t;
16520}
16521extern "C" {
16522    pub fn php_output_write(str_: *const ::std::os::raw::c_char, len: size_t) -> size_t;
16523}
16524extern "C" {
16525    pub fn php_output_flush() -> ::std::os::raw::c_int;
16526}
16527extern "C" {
16528    pub fn php_output_flush_all();
16529}
16530extern "C" {
16531    pub fn php_output_clean() -> ::std::os::raw::c_int;
16532}
16533extern "C" {
16534    pub fn php_output_clean_all();
16535}
16536extern "C" {
16537    pub fn php_output_end() -> ::std::os::raw::c_int;
16538}
16539extern "C" {
16540    pub fn php_output_end_all();
16541}
16542extern "C" {
16543    pub fn php_output_discard() -> ::std::os::raw::c_int;
16544}
16545extern "C" {
16546    pub fn php_output_discard_all();
16547}
16548extern "C" {
16549    pub fn php_output_get_contents(p: *mut zval) -> ::std::os::raw::c_int;
16550}
16551extern "C" {
16552    pub fn php_output_get_length(p: *mut zval) -> ::std::os::raw::c_int;
16553}
16554extern "C" {
16555    pub fn php_output_get_level() -> ::std::os::raw::c_int;
16556}
16557extern "C" {
16558    pub fn php_output_get_active_handler() -> *mut php_output_handler;
16559}
16560extern "C" {
16561    pub fn php_output_start_default() -> ::std::os::raw::c_int;
16562}
16563extern "C" {
16564    pub fn php_output_start_devnull() -> ::std::os::raw::c_int;
16565}
16566extern "C" {
16567    pub fn php_output_start_user(
16568        output_handler: *mut zval,
16569        chunk_size: size_t,
16570        flags: ::std::os::raw::c_int,
16571    ) -> ::std::os::raw::c_int;
16572}
16573extern "C" {
16574    pub fn php_output_start_internal(
16575        name: *const ::std::os::raw::c_char,
16576        name_len: size_t,
16577        output_handler: php_output_handler_func_t,
16578        chunk_size: size_t,
16579        flags: ::std::os::raw::c_int,
16580    ) -> ::std::os::raw::c_int;
16581}
16582extern "C" {
16583    pub fn php_output_handler_create_user(
16584        handler: *mut zval,
16585        chunk_size: size_t,
16586        flags: ::std::os::raw::c_int,
16587    ) -> *mut php_output_handler;
16588}
16589extern "C" {
16590    pub fn php_output_handler_create_internal(
16591        name: *const ::std::os::raw::c_char,
16592        name_len: size_t,
16593        handler: php_output_handler_context_func_t,
16594        chunk_size: size_t,
16595        flags: ::std::os::raw::c_int,
16596    ) -> *mut php_output_handler;
16597}
16598extern "C" {
16599    pub fn php_output_handler_set_context(
16600        handler: *mut php_output_handler,
16601        opaq: *mut ::std::os::raw::c_void,
16602        dtor: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
16603    );
16604}
16605extern "C" {
16606    pub fn php_output_handler_start(handler: *mut php_output_handler) -> ::std::os::raw::c_int;
16607}
16608extern "C" {
16609    pub fn php_output_handler_started(
16610        name: *const ::std::os::raw::c_char,
16611        name_len: size_t,
16612    ) -> ::std::os::raw::c_int;
16613}
16614extern "C" {
16615    pub fn php_output_handler_hook(
16616        type_: php_output_handler_hook_t,
16617        arg: *mut ::std::os::raw::c_void,
16618    ) -> ::std::os::raw::c_int;
16619}
16620extern "C" {
16621    pub fn php_output_handler_dtor(handler: *mut php_output_handler);
16622}
16623extern "C" {
16624    pub fn php_output_handler_free(handler: *mut *mut php_output_handler);
16625}
16626extern "C" {
16627    pub fn php_output_handler_conflict(
16628        handler_new: *const ::std::os::raw::c_char,
16629        handler_new_len: size_t,
16630        handler_set: *const ::std::os::raw::c_char,
16631        handler_set_len: size_t,
16632    ) -> ::std::os::raw::c_int;
16633}
16634extern "C" {
16635    pub fn php_output_handler_conflict_register(
16636        handler_name: *const ::std::os::raw::c_char,
16637        handler_name_len: size_t,
16638        check_func: php_output_handler_conflict_check_t,
16639    ) -> ::std::os::raw::c_int;
16640}
16641extern "C" {
16642    pub fn php_output_handler_reverse_conflict_register(
16643        handler_name: *const ::std::os::raw::c_char,
16644        handler_name_len: size_t,
16645        check_func: php_output_handler_conflict_check_t,
16646    ) -> ::std::os::raw::c_int;
16647}
16648extern "C" {
16649    pub fn php_output_handler_alias(
16650        handler_name: *const ::std::os::raw::c_char,
16651        handler_name_len: size_t,
16652    ) -> php_output_handler_alias_ctor_t;
16653}
16654extern "C" {
16655    pub fn php_output_handler_alias_register(
16656        handler_name: *const ::std::os::raw::c_char,
16657        handler_name_len: size_t,
16658        func: php_output_handler_alias_ctor_t,
16659    ) -> ::std::os::raw::c_int;
16660}
16661extern "C" {
16662    pub fn php_file_le_stream() -> ::std::os::raw::c_int;
16663}
16664extern "C" {
16665    pub fn php_file_le_pstream() -> ::std::os::raw::c_int;
16666}
16667extern "C" {
16668    pub fn php_file_le_stream_filter() -> ::std::os::raw::c_int;
16669}
16670pub type php_stream = _php_stream;
16671pub type php_stream_wrapper = _php_stream_wrapper;
16672pub type php_stream_context = _php_stream_context;
16673pub type php_stream_filter = _php_stream_filter;
16674pub type php_stream_notification_func = ::std::option::Option<
16675    unsafe extern "C" fn(
16676        context: *mut php_stream_context,
16677        notifycode: ::std::os::raw::c_int,
16678        severity: ::std::os::raw::c_int,
16679        xmsg: *mut ::std::os::raw::c_char,
16680        xcode: ::std::os::raw::c_int,
16681        bytes_sofar: size_t,
16682        bytes_max: size_t,
16683        ptr: *mut ::std::os::raw::c_void,
16684    ),
16685>;
16686pub type php_stream_notifier = _php_stream_notifier;
16687#[repr(C)]
16688#[derive(Copy, Clone)]
16689pub struct _php_stream_notifier {
16690    pub func: php_stream_notification_func,
16691    pub dtor: ::std::option::Option<unsafe extern "C" fn(notifier: *mut php_stream_notifier)>,
16692    pub ptr: zval,
16693    pub mask: ::std::os::raw::c_int,
16694    pub progress: size_t,
16695    pub progress_max: size_t,
16696}
16697#[test]
16698fn bindgen_test_layout__php_stream_notifier() {
16699    assert_eq!(
16700        ::std::mem::size_of::<_php_stream_notifier>(),
16701        56usize,
16702        concat!("Size of: ", stringify!(_php_stream_notifier))
16703    );
16704    assert_eq!(
16705        ::std::mem::align_of::<_php_stream_notifier>(),
16706        8usize,
16707        concat!("Alignment of ", stringify!(_php_stream_notifier))
16708    );
16709    assert_eq!(
16710        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).func as *const _ as usize },
16711        0usize,
16712        concat!(
16713            "Offset of field: ",
16714            stringify!(_php_stream_notifier),
16715            "::",
16716            stringify!(func)
16717        )
16718    );
16719    assert_eq!(
16720        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).dtor as *const _ as usize },
16721        8usize,
16722        concat!(
16723            "Offset of field: ",
16724            stringify!(_php_stream_notifier),
16725            "::",
16726            stringify!(dtor)
16727        )
16728    );
16729    assert_eq!(
16730        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).ptr as *const _ as usize },
16731        16usize,
16732        concat!(
16733            "Offset of field: ",
16734            stringify!(_php_stream_notifier),
16735            "::",
16736            stringify!(ptr)
16737        )
16738    );
16739    assert_eq!(
16740        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).mask as *const _ as usize },
16741        32usize,
16742        concat!(
16743            "Offset of field: ",
16744            stringify!(_php_stream_notifier),
16745            "::",
16746            stringify!(mask)
16747        )
16748    );
16749    assert_eq!(
16750        unsafe { &(*(::std::ptr::null::<_php_stream_notifier>())).progress as *const _ as usize },
16751        40usize,
16752        concat!(
16753            "Offset of field: ",
16754            stringify!(_php_stream_notifier),
16755            "::",
16756            stringify!(progress)
16757        )
16758    );
16759    assert_eq!(
16760        unsafe {
16761            &(*(::std::ptr::null::<_php_stream_notifier>())).progress_max as *const _ as usize
16762        },
16763        48usize,
16764        concat!(
16765            "Offset of field: ",
16766            stringify!(_php_stream_notifier),
16767            "::",
16768            stringify!(progress_max)
16769        )
16770    );
16771}
16772#[repr(C)]
16773#[derive(Copy, Clone)]
16774pub struct _php_stream_context {
16775    pub notifier: *mut php_stream_notifier,
16776    pub options: zval,
16777    pub res: *mut zend_resource,
16778}
16779#[test]
16780fn bindgen_test_layout__php_stream_context() {
16781    assert_eq!(
16782        ::std::mem::size_of::<_php_stream_context>(),
16783        32usize,
16784        concat!("Size of: ", stringify!(_php_stream_context))
16785    );
16786    assert_eq!(
16787        ::std::mem::align_of::<_php_stream_context>(),
16788        8usize,
16789        concat!("Alignment of ", stringify!(_php_stream_context))
16790    );
16791    assert_eq!(
16792        unsafe { &(*(::std::ptr::null::<_php_stream_context>())).notifier as *const _ as usize },
16793        0usize,
16794        concat!(
16795            "Offset of field: ",
16796            stringify!(_php_stream_context),
16797            "::",
16798            stringify!(notifier)
16799        )
16800    );
16801    assert_eq!(
16802        unsafe { &(*(::std::ptr::null::<_php_stream_context>())).options as *const _ as usize },
16803        8usize,
16804        concat!(
16805            "Offset of field: ",
16806            stringify!(_php_stream_context),
16807            "::",
16808            stringify!(options)
16809        )
16810    );
16811    assert_eq!(
16812        unsafe { &(*(::std::ptr::null::<_php_stream_context>())).res as *const _ as usize },
16813        24usize,
16814        concat!(
16815            "Offset of field: ",
16816            stringify!(_php_stream_context),
16817            "::",
16818            stringify!(res)
16819        )
16820    );
16821}
16822extern "C" {
16823    pub fn php_stream_context_free(context: *mut php_stream_context);
16824}
16825extern "C" {
16826    pub fn php_stream_context_alloc() -> *mut php_stream_context;
16827}
16828extern "C" {
16829    pub fn php_stream_context_get_option(
16830        context: *mut php_stream_context,
16831        wrappername: *const ::std::os::raw::c_char,
16832        optionname: *const ::std::os::raw::c_char,
16833    ) -> *mut zval;
16834}
16835extern "C" {
16836    pub fn php_stream_context_set_option(
16837        context: *mut php_stream_context,
16838        wrappername: *const ::std::os::raw::c_char,
16839        optionname: *const ::std::os::raw::c_char,
16840        optionvalue: *mut zval,
16841    ) -> ::std::os::raw::c_int;
16842}
16843extern "C" {
16844    pub fn php_stream_notification_alloc() -> *mut php_stream_notifier;
16845}
16846extern "C" {
16847    pub fn php_stream_notification_free(notifier: *mut php_stream_notifier);
16848}
16849extern "C" {
16850    pub fn php_stream_notification_notify(
16851        context: *mut php_stream_context,
16852        notifycode: ::std::os::raw::c_int,
16853        severity: ::std::os::raw::c_int,
16854        xmsg: *mut ::std::os::raw::c_char,
16855        xcode: ::std::os::raw::c_int,
16856        bytes_sofar: size_t,
16857        bytes_max: size_t,
16858        ptr: *mut ::std::os::raw::c_void,
16859    );
16860}
16861extern "C" {
16862    pub fn php_stream_context_set(
16863        stream: *mut php_stream,
16864        context: *mut php_stream_context,
16865    ) -> *mut php_stream_context;
16866}
16867pub type php_stream_bucket = _php_stream_bucket;
16868pub type php_stream_bucket_brigade = _php_stream_bucket_brigade;
16869#[repr(C)]
16870#[derive(Debug, Copy, Clone)]
16871pub struct _php_stream_bucket {
16872    pub next: *mut php_stream_bucket,
16873    pub prev: *mut php_stream_bucket,
16874    pub brigade: *mut php_stream_bucket_brigade,
16875    pub buf: *mut ::std::os::raw::c_char,
16876    pub buflen: size_t,
16877    pub own_buf: u8,
16878    pub is_persistent: u8,
16879    pub refcount: ::std::os::raw::c_int,
16880}
16881#[test]
16882fn bindgen_test_layout__php_stream_bucket() {
16883    assert_eq!(
16884        ::std::mem::size_of::<_php_stream_bucket>(),
16885        48usize,
16886        concat!("Size of: ", stringify!(_php_stream_bucket))
16887    );
16888    assert_eq!(
16889        ::std::mem::align_of::<_php_stream_bucket>(),
16890        8usize,
16891        concat!("Alignment of ", stringify!(_php_stream_bucket))
16892    );
16893    assert_eq!(
16894        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).next as *const _ as usize },
16895        0usize,
16896        concat!(
16897            "Offset of field: ",
16898            stringify!(_php_stream_bucket),
16899            "::",
16900            stringify!(next)
16901        )
16902    );
16903    assert_eq!(
16904        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).prev as *const _ as usize },
16905        8usize,
16906        concat!(
16907            "Offset of field: ",
16908            stringify!(_php_stream_bucket),
16909            "::",
16910            stringify!(prev)
16911        )
16912    );
16913    assert_eq!(
16914        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).brigade as *const _ as usize },
16915        16usize,
16916        concat!(
16917            "Offset of field: ",
16918            stringify!(_php_stream_bucket),
16919            "::",
16920            stringify!(brigade)
16921        )
16922    );
16923    assert_eq!(
16924        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).buf as *const _ as usize },
16925        24usize,
16926        concat!(
16927            "Offset of field: ",
16928            stringify!(_php_stream_bucket),
16929            "::",
16930            stringify!(buf)
16931        )
16932    );
16933    assert_eq!(
16934        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).buflen as *const _ as usize },
16935        32usize,
16936        concat!(
16937            "Offset of field: ",
16938            stringify!(_php_stream_bucket),
16939            "::",
16940            stringify!(buflen)
16941        )
16942    );
16943    assert_eq!(
16944        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).own_buf as *const _ as usize },
16945        40usize,
16946        concat!(
16947            "Offset of field: ",
16948            stringify!(_php_stream_bucket),
16949            "::",
16950            stringify!(own_buf)
16951        )
16952    );
16953    assert_eq!(
16954        unsafe {
16955            &(*(::std::ptr::null::<_php_stream_bucket>())).is_persistent as *const _ as usize
16956        },
16957        41usize,
16958        concat!(
16959            "Offset of field: ",
16960            stringify!(_php_stream_bucket),
16961            "::",
16962            stringify!(is_persistent)
16963        )
16964    );
16965    assert_eq!(
16966        unsafe { &(*(::std::ptr::null::<_php_stream_bucket>())).refcount as *const _ as usize },
16967        44usize,
16968        concat!(
16969            "Offset of field: ",
16970            stringify!(_php_stream_bucket),
16971            "::",
16972            stringify!(refcount)
16973        )
16974    );
16975}
16976#[repr(C)]
16977#[derive(Debug, Copy, Clone)]
16978pub struct _php_stream_bucket_brigade {
16979    pub head: *mut php_stream_bucket,
16980    pub tail: *mut php_stream_bucket,
16981}
16982#[test]
16983fn bindgen_test_layout__php_stream_bucket_brigade() {
16984    assert_eq!(
16985        ::std::mem::size_of::<_php_stream_bucket_brigade>(),
16986        16usize,
16987        concat!("Size of: ", stringify!(_php_stream_bucket_brigade))
16988    );
16989    assert_eq!(
16990        ::std::mem::align_of::<_php_stream_bucket_brigade>(),
16991        8usize,
16992        concat!("Alignment of ", stringify!(_php_stream_bucket_brigade))
16993    );
16994    assert_eq!(
16995        unsafe { &(*(::std::ptr::null::<_php_stream_bucket_brigade>())).head as *const _ as usize },
16996        0usize,
16997        concat!(
16998            "Offset of field: ",
16999            stringify!(_php_stream_bucket_brigade),
17000            "::",
17001            stringify!(head)
17002        )
17003    );
17004    assert_eq!(
17005        unsafe { &(*(::std::ptr::null::<_php_stream_bucket_brigade>())).tail as *const _ as usize },
17006        8usize,
17007        concat!(
17008            "Offset of field: ",
17009            stringify!(_php_stream_bucket_brigade),
17010            "::",
17011            stringify!(tail)
17012        )
17013    );
17014}
17015pub const php_stream_filter_status_t_PSFS_ERR_FATAL: php_stream_filter_status_t = 0;
17016pub const php_stream_filter_status_t_PSFS_FEED_ME: php_stream_filter_status_t = 1;
17017pub const php_stream_filter_status_t_PSFS_PASS_ON: php_stream_filter_status_t = 2;
17018pub type php_stream_filter_status_t = ::std::os::raw::c_uint;
17019extern "C" {
17020    pub fn php_stream_bucket_new(
17021        stream: *mut php_stream,
17022        buf: *mut ::std::os::raw::c_char,
17023        buflen: size_t,
17024        own_buf: u8,
17025        buf_persistent: u8,
17026    ) -> *mut php_stream_bucket;
17027}
17028extern "C" {
17029    pub fn php_stream_bucket_split(
17030        in_: *mut php_stream_bucket,
17031        left: *mut *mut php_stream_bucket,
17032        right: *mut *mut php_stream_bucket,
17033        length: size_t,
17034    ) -> ::std::os::raw::c_int;
17035}
17036extern "C" {
17037    pub fn php_stream_bucket_delref(bucket: *mut php_stream_bucket);
17038}
17039extern "C" {
17040    pub fn php_stream_bucket_prepend(
17041        brigade: *mut php_stream_bucket_brigade,
17042        bucket: *mut php_stream_bucket,
17043    );
17044}
17045extern "C" {
17046    pub fn php_stream_bucket_append(
17047        brigade: *mut php_stream_bucket_brigade,
17048        bucket: *mut php_stream_bucket,
17049    );
17050}
17051extern "C" {
17052    pub fn php_stream_bucket_unlink(bucket: *mut php_stream_bucket);
17053}
17054extern "C" {
17055    pub fn php_stream_bucket_make_writeable(
17056        bucket: *mut php_stream_bucket,
17057    ) -> *mut php_stream_bucket;
17058}
17059#[repr(C)]
17060#[derive(Debug, Copy, Clone)]
17061pub struct _php_stream_filter_ops {
17062    pub filter: ::std::option::Option<
17063        unsafe extern "C" fn(
17064            stream: *mut php_stream,
17065            thisfilter: *mut php_stream_filter,
17066            buckets_in: *mut php_stream_bucket_brigade,
17067            buckets_out: *mut php_stream_bucket_brigade,
17068            bytes_consumed: *mut size_t,
17069            flags: ::std::os::raw::c_int,
17070        ) -> php_stream_filter_status_t,
17071    >,
17072    pub dtor: ::std::option::Option<unsafe extern "C" fn(thisfilter: *mut php_stream_filter)>,
17073    pub label: *const ::std::os::raw::c_char,
17074}
17075#[test]
17076fn bindgen_test_layout__php_stream_filter_ops() {
17077    assert_eq!(
17078        ::std::mem::size_of::<_php_stream_filter_ops>(),
17079        24usize,
17080        concat!("Size of: ", stringify!(_php_stream_filter_ops))
17081    );
17082    assert_eq!(
17083        ::std::mem::align_of::<_php_stream_filter_ops>(),
17084        8usize,
17085        concat!("Alignment of ", stringify!(_php_stream_filter_ops))
17086    );
17087    assert_eq!(
17088        unsafe { &(*(::std::ptr::null::<_php_stream_filter_ops>())).filter as *const _ as usize },
17089        0usize,
17090        concat!(
17091            "Offset of field: ",
17092            stringify!(_php_stream_filter_ops),
17093            "::",
17094            stringify!(filter)
17095        )
17096    );
17097    assert_eq!(
17098        unsafe { &(*(::std::ptr::null::<_php_stream_filter_ops>())).dtor as *const _ as usize },
17099        8usize,
17100        concat!(
17101            "Offset of field: ",
17102            stringify!(_php_stream_filter_ops),
17103            "::",
17104            stringify!(dtor)
17105        )
17106    );
17107    assert_eq!(
17108        unsafe { &(*(::std::ptr::null::<_php_stream_filter_ops>())).label as *const _ as usize },
17109        16usize,
17110        concat!(
17111            "Offset of field: ",
17112            stringify!(_php_stream_filter_ops),
17113            "::",
17114            stringify!(label)
17115        )
17116    );
17117}
17118pub type php_stream_filter_ops = _php_stream_filter_ops;
17119#[repr(C)]
17120#[derive(Debug, Copy, Clone)]
17121pub struct _php_stream_filter_chain {
17122    pub head: *mut php_stream_filter,
17123    pub tail: *mut php_stream_filter,
17124    pub stream: *mut php_stream,
17125}
17126#[test]
17127fn bindgen_test_layout__php_stream_filter_chain() {
17128    assert_eq!(
17129        ::std::mem::size_of::<_php_stream_filter_chain>(),
17130        24usize,
17131        concat!("Size of: ", stringify!(_php_stream_filter_chain))
17132    );
17133    assert_eq!(
17134        ::std::mem::align_of::<_php_stream_filter_chain>(),
17135        8usize,
17136        concat!("Alignment of ", stringify!(_php_stream_filter_chain))
17137    );
17138    assert_eq!(
17139        unsafe { &(*(::std::ptr::null::<_php_stream_filter_chain>())).head as *const _ as usize },
17140        0usize,
17141        concat!(
17142            "Offset of field: ",
17143            stringify!(_php_stream_filter_chain),
17144            "::",
17145            stringify!(head)
17146        )
17147    );
17148    assert_eq!(
17149        unsafe { &(*(::std::ptr::null::<_php_stream_filter_chain>())).tail as *const _ as usize },
17150        8usize,
17151        concat!(
17152            "Offset of field: ",
17153            stringify!(_php_stream_filter_chain),
17154            "::",
17155            stringify!(tail)
17156        )
17157    );
17158    assert_eq!(
17159        unsafe { &(*(::std::ptr::null::<_php_stream_filter_chain>())).stream as *const _ as usize },
17160        16usize,
17161        concat!(
17162            "Offset of field: ",
17163            stringify!(_php_stream_filter_chain),
17164            "::",
17165            stringify!(stream)
17166        )
17167    );
17168}
17169pub type php_stream_filter_chain = _php_stream_filter_chain;
17170#[repr(C)]
17171#[derive(Copy, Clone)]
17172pub struct _php_stream_filter {
17173    pub fops: *const php_stream_filter_ops,
17174    pub abstract_: zval,
17175    pub next: *mut php_stream_filter,
17176    pub prev: *mut php_stream_filter,
17177    pub is_persistent: ::std::os::raw::c_int,
17178    pub chain: *mut php_stream_filter_chain,
17179    pub buffer: php_stream_bucket_brigade,
17180    pub res: *mut zend_resource,
17181}
17182#[test]
17183fn bindgen_test_layout__php_stream_filter() {
17184    assert_eq!(
17185        ::std::mem::size_of::<_php_stream_filter>(),
17186        80usize,
17187        concat!("Size of: ", stringify!(_php_stream_filter))
17188    );
17189    assert_eq!(
17190        ::std::mem::align_of::<_php_stream_filter>(),
17191        8usize,
17192        concat!("Alignment of ", stringify!(_php_stream_filter))
17193    );
17194    assert_eq!(
17195        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).fops as *const _ as usize },
17196        0usize,
17197        concat!(
17198            "Offset of field: ",
17199            stringify!(_php_stream_filter),
17200            "::",
17201            stringify!(fops)
17202        )
17203    );
17204    assert_eq!(
17205        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).abstract_ as *const _ as usize },
17206        8usize,
17207        concat!(
17208            "Offset of field: ",
17209            stringify!(_php_stream_filter),
17210            "::",
17211            stringify!(abstract_)
17212        )
17213    );
17214    assert_eq!(
17215        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).next as *const _ as usize },
17216        24usize,
17217        concat!(
17218            "Offset of field: ",
17219            stringify!(_php_stream_filter),
17220            "::",
17221            stringify!(next)
17222        )
17223    );
17224    assert_eq!(
17225        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).prev as *const _ as usize },
17226        32usize,
17227        concat!(
17228            "Offset of field: ",
17229            stringify!(_php_stream_filter),
17230            "::",
17231            stringify!(prev)
17232        )
17233    );
17234    assert_eq!(
17235        unsafe {
17236            &(*(::std::ptr::null::<_php_stream_filter>())).is_persistent as *const _ as usize
17237        },
17238        40usize,
17239        concat!(
17240            "Offset of field: ",
17241            stringify!(_php_stream_filter),
17242            "::",
17243            stringify!(is_persistent)
17244        )
17245    );
17246    assert_eq!(
17247        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).chain as *const _ as usize },
17248        48usize,
17249        concat!(
17250            "Offset of field: ",
17251            stringify!(_php_stream_filter),
17252            "::",
17253            stringify!(chain)
17254        )
17255    );
17256    assert_eq!(
17257        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).buffer as *const _ as usize },
17258        56usize,
17259        concat!(
17260            "Offset of field: ",
17261            stringify!(_php_stream_filter),
17262            "::",
17263            stringify!(buffer)
17264        )
17265    );
17266    assert_eq!(
17267        unsafe { &(*(::std::ptr::null::<_php_stream_filter>())).res as *const _ as usize },
17268        72usize,
17269        concat!(
17270            "Offset of field: ",
17271            stringify!(_php_stream_filter),
17272            "::",
17273            stringify!(res)
17274        )
17275    );
17276}
17277extern "C" {
17278    pub fn php_stream_filter_prepend_ex(
17279        chain: *mut php_stream_filter_chain,
17280        filter: *mut php_stream_filter,
17281    ) -> ::std::os::raw::c_int;
17282}
17283extern "C" {
17284    pub fn php_stream_filter_append_ex(
17285        chain: *mut php_stream_filter_chain,
17286        filter: *mut php_stream_filter,
17287    ) -> ::std::os::raw::c_int;
17288}
17289extern "C" {
17290    pub fn php_stream_filter_remove(
17291        filter: *mut php_stream_filter,
17292        call_dtor: ::std::os::raw::c_int,
17293    ) -> *mut php_stream_filter;
17294}
17295extern "C" {
17296    pub fn php_stream_filter_free(filter: *mut php_stream_filter);
17297}
17298#[repr(C)]
17299#[derive(Debug, Copy, Clone)]
17300pub struct _php_stream_filter_factory {
17301    pub create_filter: ::std::option::Option<
17302        unsafe extern "C" fn(
17303            filtername: *const ::std::os::raw::c_char,
17304            filterparams: *mut zval,
17305            persistent: u8,
17306        ) -> *mut php_stream_filter,
17307    >,
17308}
17309#[test]
17310fn bindgen_test_layout__php_stream_filter_factory() {
17311    assert_eq!(
17312        ::std::mem::size_of::<_php_stream_filter_factory>(),
17313        8usize,
17314        concat!("Size of: ", stringify!(_php_stream_filter_factory))
17315    );
17316    assert_eq!(
17317        ::std::mem::align_of::<_php_stream_filter_factory>(),
17318        8usize,
17319        concat!("Alignment of ", stringify!(_php_stream_filter_factory))
17320    );
17321    assert_eq!(
17322        unsafe {
17323            &(*(::std::ptr::null::<_php_stream_filter_factory>())).create_filter as *const _
17324                as usize
17325        },
17326        0usize,
17327        concat!(
17328            "Offset of field: ",
17329            stringify!(_php_stream_filter_factory),
17330            "::",
17331            stringify!(create_filter)
17332        )
17333    );
17334}
17335pub type php_stream_filter_factory = _php_stream_filter_factory;
17336extern "C" {
17337    pub fn php_stream_filter_register_factory(
17338        filterpattern: *const ::std::os::raw::c_char,
17339        factory: *const php_stream_filter_factory,
17340    ) -> ::std::os::raw::c_int;
17341}
17342extern "C" {
17343    pub fn php_stream_filter_unregister_factory(
17344        filterpattern: *const ::std::os::raw::c_char,
17345    ) -> ::std::os::raw::c_int;
17346}
17347extern "C" {
17348    pub fn php_stream_filter_register_factory_volatile(
17349        filterpattern: *mut zend_string,
17350        factory: *const php_stream_filter_factory,
17351    ) -> ::std::os::raw::c_int;
17352}
17353extern "C" {
17354    pub fn php_stream_filter_create(
17355        filtername: *const ::std::os::raw::c_char,
17356        filterparams: *mut zval,
17357        persistent: u8,
17358    ) -> *mut php_stream_filter;
17359}
17360#[repr(C)]
17361#[derive(Debug, Copy, Clone)]
17362pub struct _php_stream_statbuf {
17363    pub sb: zend_stat_t,
17364}
17365#[test]
17366fn bindgen_test_layout__php_stream_statbuf() {
17367    assert_eq!(
17368        ::std::mem::size_of::<_php_stream_statbuf>(),
17369        144usize,
17370        concat!("Size of: ", stringify!(_php_stream_statbuf))
17371    );
17372    assert_eq!(
17373        ::std::mem::align_of::<_php_stream_statbuf>(),
17374        8usize,
17375        concat!("Alignment of ", stringify!(_php_stream_statbuf))
17376    );
17377    assert_eq!(
17378        unsafe { &(*(::std::ptr::null::<_php_stream_statbuf>())).sb as *const _ as usize },
17379        0usize,
17380        concat!(
17381            "Offset of field: ",
17382            stringify!(_php_stream_statbuf),
17383            "::",
17384            stringify!(sb)
17385        )
17386    );
17387}
17388pub type php_stream_statbuf = _php_stream_statbuf;
17389#[repr(C)]
17390#[derive(Debug, Copy, Clone)]
17391pub struct _php_stream_ops {
17392    pub write: ::std::option::Option<
17393        unsafe extern "C" fn(
17394            stream: *mut php_stream,
17395            buf: *const ::std::os::raw::c_char,
17396            count: size_t,
17397        ) -> size_t,
17398    >,
17399    pub read: ::std::option::Option<
17400        unsafe extern "C" fn(
17401            stream: *mut php_stream,
17402            buf: *mut ::std::os::raw::c_char,
17403            count: size_t,
17404        ) -> size_t,
17405    >,
17406    pub close: ::std::option::Option<
17407        unsafe extern "C" fn(
17408            stream: *mut php_stream,
17409            close_handle: ::std::os::raw::c_int,
17410        ) -> ::std::os::raw::c_int,
17411    >,
17412    pub flush: ::std::option::Option<
17413        unsafe extern "C" fn(stream: *mut php_stream) -> ::std::os::raw::c_int,
17414    >,
17415    pub label: *const ::std::os::raw::c_char,
17416    pub seek: ::std::option::Option<
17417        unsafe extern "C" fn(
17418            stream: *mut php_stream,
17419            offset: zend_off_t,
17420            whence: ::std::os::raw::c_int,
17421            newoffset: *mut zend_off_t,
17422        ) -> ::std::os::raw::c_int,
17423    >,
17424    pub cast: ::std::option::Option<
17425        unsafe extern "C" fn(
17426            stream: *mut php_stream,
17427            castas: ::std::os::raw::c_int,
17428            ret: *mut *mut ::std::os::raw::c_void,
17429        ) -> ::std::os::raw::c_int,
17430    >,
17431    pub stat: ::std::option::Option<
17432        unsafe extern "C" fn(
17433            stream: *mut php_stream,
17434            ssb: *mut php_stream_statbuf,
17435        ) -> ::std::os::raw::c_int,
17436    >,
17437    pub set_option: ::std::option::Option<
17438        unsafe extern "C" fn(
17439            stream: *mut php_stream,
17440            option: ::std::os::raw::c_int,
17441            value: ::std::os::raw::c_int,
17442            ptrparam: *mut ::std::os::raw::c_void,
17443        ) -> ::std::os::raw::c_int,
17444    >,
17445}
17446#[test]
17447fn bindgen_test_layout__php_stream_ops() {
17448    assert_eq!(
17449        ::std::mem::size_of::<_php_stream_ops>(),
17450        72usize,
17451        concat!("Size of: ", stringify!(_php_stream_ops))
17452    );
17453    assert_eq!(
17454        ::std::mem::align_of::<_php_stream_ops>(),
17455        8usize,
17456        concat!("Alignment of ", stringify!(_php_stream_ops))
17457    );
17458    assert_eq!(
17459        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).write as *const _ as usize },
17460        0usize,
17461        concat!(
17462            "Offset of field: ",
17463            stringify!(_php_stream_ops),
17464            "::",
17465            stringify!(write)
17466        )
17467    );
17468    assert_eq!(
17469        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).read as *const _ as usize },
17470        8usize,
17471        concat!(
17472            "Offset of field: ",
17473            stringify!(_php_stream_ops),
17474            "::",
17475            stringify!(read)
17476        )
17477    );
17478    assert_eq!(
17479        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).close as *const _ as usize },
17480        16usize,
17481        concat!(
17482            "Offset of field: ",
17483            stringify!(_php_stream_ops),
17484            "::",
17485            stringify!(close)
17486        )
17487    );
17488    assert_eq!(
17489        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).flush as *const _ as usize },
17490        24usize,
17491        concat!(
17492            "Offset of field: ",
17493            stringify!(_php_stream_ops),
17494            "::",
17495            stringify!(flush)
17496        )
17497    );
17498    assert_eq!(
17499        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).label as *const _ as usize },
17500        32usize,
17501        concat!(
17502            "Offset of field: ",
17503            stringify!(_php_stream_ops),
17504            "::",
17505            stringify!(label)
17506        )
17507    );
17508    assert_eq!(
17509        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).seek as *const _ as usize },
17510        40usize,
17511        concat!(
17512            "Offset of field: ",
17513            stringify!(_php_stream_ops),
17514            "::",
17515            stringify!(seek)
17516        )
17517    );
17518    assert_eq!(
17519        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).cast as *const _ as usize },
17520        48usize,
17521        concat!(
17522            "Offset of field: ",
17523            stringify!(_php_stream_ops),
17524            "::",
17525            stringify!(cast)
17526        )
17527    );
17528    assert_eq!(
17529        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).stat as *const _ as usize },
17530        56usize,
17531        concat!(
17532            "Offset of field: ",
17533            stringify!(_php_stream_ops),
17534            "::",
17535            stringify!(stat)
17536        )
17537    );
17538    assert_eq!(
17539        unsafe { &(*(::std::ptr::null::<_php_stream_ops>())).set_option as *const _ as usize },
17540        64usize,
17541        concat!(
17542            "Offset of field: ",
17543            stringify!(_php_stream_ops),
17544            "::",
17545            stringify!(set_option)
17546        )
17547    );
17548}
17549pub type php_stream_ops = _php_stream_ops;
17550#[repr(C)]
17551#[derive(Debug, Copy, Clone)]
17552pub struct _php_stream_wrapper_ops {
17553    pub stream_opener: ::std::option::Option<
17554        unsafe extern "C" fn(
17555            wrapper: *mut php_stream_wrapper,
17556            filename: *const ::std::os::raw::c_char,
17557            mode: *const ::std::os::raw::c_char,
17558            options: ::std::os::raw::c_int,
17559            opened_path: *mut *mut zend_string,
17560            context: *mut php_stream_context,
17561        ) -> *mut php_stream,
17562    >,
17563    pub stream_closer: ::std::option::Option<
17564        unsafe extern "C" fn(
17565            wrapper: *mut php_stream_wrapper,
17566            stream: *mut php_stream,
17567        ) -> ::std::os::raw::c_int,
17568    >,
17569    pub stream_stat: ::std::option::Option<
17570        unsafe extern "C" fn(
17571            wrapper: *mut php_stream_wrapper,
17572            stream: *mut php_stream,
17573            ssb: *mut php_stream_statbuf,
17574        ) -> ::std::os::raw::c_int,
17575    >,
17576    pub url_stat: ::std::option::Option<
17577        unsafe extern "C" fn(
17578            wrapper: *mut php_stream_wrapper,
17579            url: *const ::std::os::raw::c_char,
17580            flags: ::std::os::raw::c_int,
17581            ssb: *mut php_stream_statbuf,
17582            context: *mut php_stream_context,
17583        ) -> ::std::os::raw::c_int,
17584    >,
17585    pub dir_opener: ::std::option::Option<
17586        unsafe extern "C" fn(
17587            wrapper: *mut php_stream_wrapper,
17588            filename: *const ::std::os::raw::c_char,
17589            mode: *const ::std::os::raw::c_char,
17590            options: ::std::os::raw::c_int,
17591            opened_path: *mut *mut zend_string,
17592            context: *mut php_stream_context,
17593        ) -> *mut php_stream,
17594    >,
17595    pub label: *const ::std::os::raw::c_char,
17596    pub unlink: ::std::option::Option<
17597        unsafe extern "C" fn(
17598            wrapper: *mut php_stream_wrapper,
17599            url: *const ::std::os::raw::c_char,
17600            options: ::std::os::raw::c_int,
17601            context: *mut php_stream_context,
17602        ) -> ::std::os::raw::c_int,
17603    >,
17604    pub rename: ::std::option::Option<
17605        unsafe extern "C" fn(
17606            wrapper: *mut php_stream_wrapper,
17607            url_from: *const ::std::os::raw::c_char,
17608            url_to: *const ::std::os::raw::c_char,
17609            options: ::std::os::raw::c_int,
17610            context: *mut php_stream_context,
17611        ) -> ::std::os::raw::c_int,
17612    >,
17613    pub stream_mkdir: ::std::option::Option<
17614        unsafe extern "C" fn(
17615            wrapper: *mut php_stream_wrapper,
17616            url: *const ::std::os::raw::c_char,
17617            mode: ::std::os::raw::c_int,
17618            options: ::std::os::raw::c_int,
17619            context: *mut php_stream_context,
17620        ) -> ::std::os::raw::c_int,
17621    >,
17622    pub stream_rmdir: ::std::option::Option<
17623        unsafe extern "C" fn(
17624            wrapper: *mut php_stream_wrapper,
17625            url: *const ::std::os::raw::c_char,
17626            options: ::std::os::raw::c_int,
17627            context: *mut php_stream_context,
17628        ) -> ::std::os::raw::c_int,
17629    >,
17630    pub stream_metadata: ::std::option::Option<
17631        unsafe extern "C" fn(
17632            wrapper: *mut php_stream_wrapper,
17633            url: *const ::std::os::raw::c_char,
17634            options: ::std::os::raw::c_int,
17635            value: *mut ::std::os::raw::c_void,
17636            context: *mut php_stream_context,
17637        ) -> ::std::os::raw::c_int,
17638    >,
17639}
17640#[test]
17641fn bindgen_test_layout__php_stream_wrapper_ops() {
17642    assert_eq!(
17643        ::std::mem::size_of::<_php_stream_wrapper_ops>(),
17644        88usize,
17645        concat!("Size of: ", stringify!(_php_stream_wrapper_ops))
17646    );
17647    assert_eq!(
17648        ::std::mem::align_of::<_php_stream_wrapper_ops>(),
17649        8usize,
17650        concat!("Alignment of ", stringify!(_php_stream_wrapper_ops))
17651    );
17652    assert_eq!(
17653        unsafe {
17654            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_opener as *const _ as usize
17655        },
17656        0usize,
17657        concat!(
17658            "Offset of field: ",
17659            stringify!(_php_stream_wrapper_ops),
17660            "::",
17661            stringify!(stream_opener)
17662        )
17663    );
17664    assert_eq!(
17665        unsafe {
17666            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_closer as *const _ as usize
17667        },
17668        8usize,
17669        concat!(
17670            "Offset of field: ",
17671            stringify!(_php_stream_wrapper_ops),
17672            "::",
17673            stringify!(stream_closer)
17674        )
17675    );
17676    assert_eq!(
17677        unsafe {
17678            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_stat as *const _ as usize
17679        },
17680        16usize,
17681        concat!(
17682            "Offset of field: ",
17683            stringify!(_php_stream_wrapper_ops),
17684            "::",
17685            stringify!(stream_stat)
17686        )
17687    );
17688    assert_eq!(
17689        unsafe {
17690            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).url_stat as *const _ as usize
17691        },
17692        24usize,
17693        concat!(
17694            "Offset of field: ",
17695            stringify!(_php_stream_wrapper_ops),
17696            "::",
17697            stringify!(url_stat)
17698        )
17699    );
17700    assert_eq!(
17701        unsafe {
17702            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).dir_opener as *const _ as usize
17703        },
17704        32usize,
17705        concat!(
17706            "Offset of field: ",
17707            stringify!(_php_stream_wrapper_ops),
17708            "::",
17709            stringify!(dir_opener)
17710        )
17711    );
17712    assert_eq!(
17713        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).label as *const _ as usize },
17714        40usize,
17715        concat!(
17716            "Offset of field: ",
17717            stringify!(_php_stream_wrapper_ops),
17718            "::",
17719            stringify!(label)
17720        )
17721    );
17722    assert_eq!(
17723        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).unlink as *const _ as usize },
17724        48usize,
17725        concat!(
17726            "Offset of field: ",
17727            stringify!(_php_stream_wrapper_ops),
17728            "::",
17729            stringify!(unlink)
17730        )
17731    );
17732    assert_eq!(
17733        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).rename as *const _ as usize },
17734        56usize,
17735        concat!(
17736            "Offset of field: ",
17737            stringify!(_php_stream_wrapper_ops),
17738            "::",
17739            stringify!(rename)
17740        )
17741    );
17742    assert_eq!(
17743        unsafe {
17744            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_mkdir as *const _ as usize
17745        },
17746        64usize,
17747        concat!(
17748            "Offset of field: ",
17749            stringify!(_php_stream_wrapper_ops),
17750            "::",
17751            stringify!(stream_mkdir)
17752        )
17753    );
17754    assert_eq!(
17755        unsafe {
17756            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_rmdir as *const _ as usize
17757        },
17758        72usize,
17759        concat!(
17760            "Offset of field: ",
17761            stringify!(_php_stream_wrapper_ops),
17762            "::",
17763            stringify!(stream_rmdir)
17764        )
17765    );
17766    assert_eq!(
17767        unsafe {
17768            &(*(::std::ptr::null::<_php_stream_wrapper_ops>())).stream_metadata as *const _ as usize
17769        },
17770        80usize,
17771        concat!(
17772            "Offset of field: ",
17773            stringify!(_php_stream_wrapper_ops),
17774            "::",
17775            stringify!(stream_metadata)
17776        )
17777    );
17778}
17779pub type php_stream_wrapper_ops = _php_stream_wrapper_ops;
17780#[repr(C)]
17781#[derive(Debug, Copy, Clone)]
17782pub struct _php_stream_wrapper {
17783    pub wops: *const php_stream_wrapper_ops,
17784    pub abstract_: *mut ::std::os::raw::c_void,
17785    pub is_url: ::std::os::raw::c_int,
17786}
17787#[test]
17788fn bindgen_test_layout__php_stream_wrapper() {
17789    assert_eq!(
17790        ::std::mem::size_of::<_php_stream_wrapper>(),
17791        24usize,
17792        concat!("Size of: ", stringify!(_php_stream_wrapper))
17793    );
17794    assert_eq!(
17795        ::std::mem::align_of::<_php_stream_wrapper>(),
17796        8usize,
17797        concat!("Alignment of ", stringify!(_php_stream_wrapper))
17798    );
17799    assert_eq!(
17800        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper>())).wops as *const _ as usize },
17801        0usize,
17802        concat!(
17803            "Offset of field: ",
17804            stringify!(_php_stream_wrapper),
17805            "::",
17806            stringify!(wops)
17807        )
17808    );
17809    assert_eq!(
17810        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper>())).abstract_ as *const _ as usize },
17811        8usize,
17812        concat!(
17813            "Offset of field: ",
17814            stringify!(_php_stream_wrapper),
17815            "::",
17816            stringify!(abstract_)
17817        )
17818    );
17819    assert_eq!(
17820        unsafe { &(*(::std::ptr::null::<_php_stream_wrapper>())).is_url as *const _ as usize },
17821        16usize,
17822        concat!(
17823            "Offset of field: ",
17824            stringify!(_php_stream_wrapper),
17825            "::",
17826            stringify!(is_url)
17827        )
17828    );
17829}
17830#[repr(C)]
17831#[derive(Copy, Clone)]
17832pub struct _php_stream {
17833    pub ops: *const php_stream_ops,
17834    pub abstract_: *mut ::std::os::raw::c_void,
17835    pub readfilters: php_stream_filter_chain,
17836    pub writefilters: php_stream_filter_chain,
17837    pub wrapper: *mut php_stream_wrapper,
17838    pub wrapperthis: *mut ::std::os::raw::c_void,
17839    pub wrapperdata: zval,
17840    pub _bitfield_align_1: [u8; 0],
17841    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
17842    pub fgetss_state: u8,
17843    pub mode: [::std::os::raw::c_char; 16usize],
17844    pub flags: u32,
17845    pub res: *mut zend_resource,
17846    pub stdiocast: *mut FILE,
17847    pub orig_path: *mut ::std::os::raw::c_char,
17848    pub ctx: *mut zend_resource,
17849    pub position: zend_off_t,
17850    pub readbuf: *mut ::std::os::raw::c_uchar,
17851    pub readbuflen: size_t,
17852    pub readpos: zend_off_t,
17853    pub writepos: zend_off_t,
17854    pub chunk_size: size_t,
17855    pub enclosing_stream: *mut _php_stream,
17856}
17857#[test]
17858fn bindgen_test_layout__php_stream() {
17859    assert_eq!(
17860        ::std::mem::size_of::<_php_stream>(),
17861        208usize,
17862        concat!("Size of: ", stringify!(_php_stream))
17863    );
17864    assert_eq!(
17865        ::std::mem::align_of::<_php_stream>(),
17866        8usize,
17867        concat!("Alignment of ", stringify!(_php_stream))
17868    );
17869    assert_eq!(
17870        unsafe { &(*(::std::ptr::null::<_php_stream>())).ops as *const _ as usize },
17871        0usize,
17872        concat!(
17873            "Offset of field: ",
17874            stringify!(_php_stream),
17875            "::",
17876            stringify!(ops)
17877        )
17878    );
17879    assert_eq!(
17880        unsafe { &(*(::std::ptr::null::<_php_stream>())).abstract_ as *const _ as usize },
17881        8usize,
17882        concat!(
17883            "Offset of field: ",
17884            stringify!(_php_stream),
17885            "::",
17886            stringify!(abstract_)
17887        )
17888    );
17889    assert_eq!(
17890        unsafe { &(*(::std::ptr::null::<_php_stream>())).readfilters as *const _ as usize },
17891        16usize,
17892        concat!(
17893            "Offset of field: ",
17894            stringify!(_php_stream),
17895            "::",
17896            stringify!(readfilters)
17897        )
17898    );
17899    assert_eq!(
17900        unsafe { &(*(::std::ptr::null::<_php_stream>())).writefilters as *const _ as usize },
17901        40usize,
17902        concat!(
17903            "Offset of field: ",
17904            stringify!(_php_stream),
17905            "::",
17906            stringify!(writefilters)
17907        )
17908    );
17909    assert_eq!(
17910        unsafe { &(*(::std::ptr::null::<_php_stream>())).wrapper as *const _ as usize },
17911        64usize,
17912        concat!(
17913            "Offset of field: ",
17914            stringify!(_php_stream),
17915            "::",
17916            stringify!(wrapper)
17917        )
17918    );
17919    assert_eq!(
17920        unsafe { &(*(::std::ptr::null::<_php_stream>())).wrapperthis as *const _ as usize },
17921        72usize,
17922        concat!(
17923            "Offset of field: ",
17924            stringify!(_php_stream),
17925            "::",
17926            stringify!(wrapperthis)
17927        )
17928    );
17929    assert_eq!(
17930        unsafe { &(*(::std::ptr::null::<_php_stream>())).wrapperdata as *const _ as usize },
17931        80usize,
17932        concat!(
17933            "Offset of field: ",
17934            stringify!(_php_stream),
17935            "::",
17936            stringify!(wrapperdata)
17937        )
17938    );
17939    assert_eq!(
17940        unsafe { &(*(::std::ptr::null::<_php_stream>())).fgetss_state as *const _ as usize },
17941        97usize,
17942        concat!(
17943            "Offset of field: ",
17944            stringify!(_php_stream),
17945            "::",
17946            stringify!(fgetss_state)
17947        )
17948    );
17949    assert_eq!(
17950        unsafe { &(*(::std::ptr::null::<_php_stream>())).mode as *const _ as usize },
17951        98usize,
17952        concat!(
17953            "Offset of field: ",
17954            stringify!(_php_stream),
17955            "::",
17956            stringify!(mode)
17957        )
17958    );
17959    assert_eq!(
17960        unsafe { &(*(::std::ptr::null::<_php_stream>())).flags as *const _ as usize },
17961        116usize,
17962        concat!(
17963            "Offset of field: ",
17964            stringify!(_php_stream),
17965            "::",
17966            stringify!(flags)
17967        )
17968    );
17969    assert_eq!(
17970        unsafe { &(*(::std::ptr::null::<_php_stream>())).res as *const _ as usize },
17971        120usize,
17972        concat!(
17973            "Offset of field: ",
17974            stringify!(_php_stream),
17975            "::",
17976            stringify!(res)
17977        )
17978    );
17979    assert_eq!(
17980        unsafe { &(*(::std::ptr::null::<_php_stream>())).stdiocast as *const _ as usize },
17981        128usize,
17982        concat!(
17983            "Offset of field: ",
17984            stringify!(_php_stream),
17985            "::",
17986            stringify!(stdiocast)
17987        )
17988    );
17989    assert_eq!(
17990        unsafe { &(*(::std::ptr::null::<_php_stream>())).orig_path as *const _ as usize },
17991        136usize,
17992        concat!(
17993            "Offset of field: ",
17994            stringify!(_php_stream),
17995            "::",
17996            stringify!(orig_path)
17997        )
17998    );
17999    assert_eq!(
18000        unsafe { &(*(::std::ptr::null::<_php_stream>())).ctx as *const _ as usize },
18001        144usize,
18002        concat!(
18003            "Offset of field: ",
18004            stringify!(_php_stream),
18005            "::",
18006            stringify!(ctx)
18007        )
18008    );
18009    assert_eq!(
18010        unsafe { &(*(::std::ptr::null::<_php_stream>())).position as *const _ as usize },
18011        152usize,
18012        concat!(
18013            "Offset of field: ",
18014            stringify!(_php_stream),
18015            "::",
18016            stringify!(position)
18017        )
18018    );
18019    assert_eq!(
18020        unsafe { &(*(::std::ptr::null::<_php_stream>())).readbuf as *const _ as usize },
18021        160usize,
18022        concat!(
18023            "Offset of field: ",
18024            stringify!(_php_stream),
18025            "::",
18026            stringify!(readbuf)
18027        )
18028    );
18029    assert_eq!(
18030        unsafe { &(*(::std::ptr::null::<_php_stream>())).readbuflen as *const _ as usize },
18031        168usize,
18032        concat!(
18033            "Offset of field: ",
18034            stringify!(_php_stream),
18035            "::",
18036            stringify!(readbuflen)
18037        )
18038    );
18039    assert_eq!(
18040        unsafe { &(*(::std::ptr::null::<_php_stream>())).readpos as *const _ as usize },
18041        176usize,
18042        concat!(
18043            "Offset of field: ",
18044            stringify!(_php_stream),
18045            "::",
18046            stringify!(readpos)
18047        )
18048    );
18049    assert_eq!(
18050        unsafe { &(*(::std::ptr::null::<_php_stream>())).writepos as *const _ as usize },
18051        184usize,
18052        concat!(
18053            "Offset of field: ",
18054            stringify!(_php_stream),
18055            "::",
18056            stringify!(writepos)
18057        )
18058    );
18059    assert_eq!(
18060        unsafe { &(*(::std::ptr::null::<_php_stream>())).chunk_size as *const _ as usize },
18061        192usize,
18062        concat!(
18063            "Offset of field: ",
18064            stringify!(_php_stream),
18065            "::",
18066            stringify!(chunk_size)
18067        )
18068    );
18069    assert_eq!(
18070        unsafe { &(*(::std::ptr::null::<_php_stream>())).enclosing_stream as *const _ as usize },
18071        200usize,
18072        concat!(
18073            "Offset of field: ",
18074            stringify!(_php_stream),
18075            "::",
18076            stringify!(enclosing_stream)
18077        )
18078    );
18079}
18080impl _php_stream {
18081    #[inline]
18082    pub fn is_persistent(&self) -> u8 {
18083        unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) }
18084    }
18085    #[inline]
18086    pub fn set_is_persistent(&mut self, val: u8) {
18087        unsafe {
18088            let val: u8 = ::std::mem::transmute(val);
18089            self._bitfield_1.set(0usize, 1u8, val as u64)
18090        }
18091    }
18092    #[inline]
18093    pub fn in_free(&self) -> u8 {
18094        unsafe { ::std::mem::transmute(self._bitfield_1.get(1usize, 2u8) as u8) }
18095    }
18096    #[inline]
18097    pub fn set_in_free(&mut self, val: u8) {
18098        unsafe {
18099            let val: u8 = ::std::mem::transmute(val);
18100            self._bitfield_1.set(1usize, 2u8, val as u64)
18101        }
18102    }
18103    #[inline]
18104    pub fn eof(&self) -> u8 {
18105        unsafe { ::std::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u8) }
18106    }
18107    #[inline]
18108    pub fn set_eof(&mut self, val: u8) {
18109        unsafe {
18110            let val: u8 = ::std::mem::transmute(val);
18111            self._bitfield_1.set(3usize, 1u8, val as u64)
18112        }
18113    }
18114    #[inline]
18115    pub fn __exposed(&self) -> u8 {
18116        unsafe { ::std::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u8) }
18117    }
18118    #[inline]
18119    pub fn set___exposed(&mut self, val: u8) {
18120        unsafe {
18121            let val: u8 = ::std::mem::transmute(val);
18122            self._bitfield_1.set(4usize, 1u8, val as u64)
18123        }
18124    }
18125    #[inline]
18126    pub fn fclose_stdiocast(&self) -> u8 {
18127        unsafe { ::std::mem::transmute(self._bitfield_1.get(5usize, 2u8) as u8) }
18128    }
18129    #[inline]
18130    pub fn set_fclose_stdiocast(&mut self, val: u8) {
18131        unsafe {
18132            let val: u8 = ::std::mem::transmute(val);
18133            self._bitfield_1.set(5usize, 2u8, val as u64)
18134        }
18135    }
18136    #[inline]
18137    pub fn new_bitfield_1(
18138        is_persistent: u8,
18139        in_free: u8,
18140        eof: u8,
18141        __exposed: u8,
18142        fclose_stdiocast: u8,
18143    ) -> __BindgenBitfieldUnit<[u8; 1usize]> {
18144        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
18145        __bindgen_bitfield_unit.set(0usize, 1u8, {
18146            let is_persistent: u8 = unsafe { ::std::mem::transmute(is_persistent) };
18147            is_persistent as u64
18148        });
18149        __bindgen_bitfield_unit.set(1usize, 2u8, {
18150            let in_free: u8 = unsafe { ::std::mem::transmute(in_free) };
18151            in_free as u64
18152        });
18153        __bindgen_bitfield_unit.set(3usize, 1u8, {
18154            let eof: u8 = unsafe { ::std::mem::transmute(eof) };
18155            eof as u64
18156        });
18157        __bindgen_bitfield_unit.set(4usize, 1u8, {
18158            let __exposed: u8 = unsafe { ::std::mem::transmute(__exposed) };
18159            __exposed as u64
18160        });
18161        __bindgen_bitfield_unit.set(5usize, 2u8, {
18162            let fclose_stdiocast: u8 = unsafe { ::std::mem::transmute(fclose_stdiocast) };
18163            fclose_stdiocast as u64
18164        });
18165        __bindgen_bitfield_unit
18166    }
18167}
18168extern "C" {
18169    pub fn php_stream_encloses(
18170        enclosing: *mut php_stream,
18171        enclosed: *mut php_stream,
18172    ) -> *mut php_stream;
18173}
18174extern "C" {
18175    pub fn php_stream_from_persistent_id(
18176        persistent_id: *const ::std::os::raw::c_char,
18177        stream: *mut *mut php_stream,
18178    ) -> ::std::os::raw::c_int;
18179}
18180extern "C" {
18181    pub fn php_stream_get_record(
18182        stream: *mut php_stream,
18183        maxlen: size_t,
18184        delim: *const ::std::os::raw::c_char,
18185        delim_len: size_t,
18186    ) -> *mut zend_string;
18187}
18188extern "C" {
18189    pub fn php_stream_dirent_alphasort(
18190        a: *mut *const zend_string,
18191        b: *mut *const zend_string,
18192    ) -> ::std::os::raw::c_int;
18193}
18194extern "C" {
18195    pub fn php_stream_dirent_alphasortr(
18196        a: *mut *const zend_string,
18197        b: *mut *const zend_string,
18198    ) -> ::std::os::raw::c_int;
18199}
18200pub type php_stream_transport_factory_func = ::std::option::Option<
18201    unsafe extern "C" fn(
18202        proto: *const ::std::os::raw::c_char,
18203        protolen: size_t,
18204        resourcename: *const ::std::os::raw::c_char,
18205        resourcenamelen: size_t,
18206        persistent_id: *const ::std::os::raw::c_char,
18207        options: ::std::os::raw::c_int,
18208        flags: ::std::os::raw::c_int,
18209        timeout: *mut timeval,
18210        context: *mut php_stream_context,
18211    ) -> *mut php_stream,
18212>;
18213pub type php_stream_transport_factory = php_stream_transport_factory_func;
18214extern "C" {
18215    pub fn php_stream_xport_register(
18216        protocol: *const ::std::os::raw::c_char,
18217        factory: php_stream_transport_factory,
18218    ) -> ::std::os::raw::c_int;
18219}
18220extern "C" {
18221    pub fn php_stream_xport_unregister(
18222        protocol: *const ::std::os::raw::c_char,
18223    ) -> ::std::os::raw::c_int;
18224}
18225extern "C" {
18226    pub fn php_stream_xport_bind(
18227        stream: *mut php_stream,
18228        name: *const ::std::os::raw::c_char,
18229        namelen: size_t,
18230        error_text: *mut *mut zend_string,
18231    ) -> ::std::os::raw::c_int;
18232}
18233extern "C" {
18234    pub fn php_stream_xport_connect(
18235        stream: *mut php_stream,
18236        name: *const ::std::os::raw::c_char,
18237        namelen: size_t,
18238        asynchronous: ::std::os::raw::c_int,
18239        timeout: *mut timeval,
18240        error_text: *mut *mut zend_string,
18241        error_code: *mut ::std::os::raw::c_int,
18242    ) -> ::std::os::raw::c_int;
18243}
18244extern "C" {
18245    pub fn php_stream_xport_listen(
18246        stream: *mut php_stream,
18247        backlog: ::std::os::raw::c_int,
18248        error_text: *mut *mut zend_string,
18249    ) -> ::std::os::raw::c_int;
18250}
18251extern "C" {
18252    pub fn php_stream_xport_accept(
18253        stream: *mut php_stream,
18254        client: *mut *mut php_stream,
18255        textaddr: *mut *mut zend_string,
18256        addr: *mut *mut ::std::os::raw::c_void,
18257        addrlen: *mut socklen_t,
18258        timeout: *mut timeval,
18259        error_text: *mut *mut zend_string,
18260    ) -> ::std::os::raw::c_int;
18261}
18262extern "C" {
18263    pub fn php_stream_xport_get_name(
18264        stream: *mut php_stream,
18265        want_peer: ::std::os::raw::c_int,
18266        textaddr: *mut *mut zend_string,
18267        addr: *mut *mut ::std::os::raw::c_void,
18268        addrlen: *mut socklen_t,
18269    ) -> ::std::os::raw::c_int;
18270}
18271extern "C" {
18272    pub fn php_stream_xport_recvfrom(
18273        stream: *mut php_stream,
18274        buf: *mut ::std::os::raw::c_char,
18275        buflen: size_t,
18276        flags: ::std::os::raw::c_int,
18277        addr: *mut *mut ::std::os::raw::c_void,
18278        addrlen: *mut socklen_t,
18279        textaddr: *mut *mut zend_string,
18280    ) -> ::std::os::raw::c_int;
18281}
18282extern "C" {
18283    pub fn php_stream_xport_sendto(
18284        stream: *mut php_stream,
18285        buf: *const ::std::os::raw::c_char,
18286        buflen: size_t,
18287        flags: ::std::os::raw::c_int,
18288        addr: *mut ::std::os::raw::c_void,
18289        addrlen: socklen_t,
18290    ) -> ::std::os::raw::c_int;
18291}
18292pub const stream_shutdown_t_STREAM_SHUT_RD: stream_shutdown_t = 0;
18293pub const stream_shutdown_t_STREAM_SHUT_WR: stream_shutdown_t = 1;
18294pub const stream_shutdown_t_STREAM_SHUT_RDWR: stream_shutdown_t = 2;
18295pub type stream_shutdown_t = ::std::os::raw::c_uint;
18296extern "C" {
18297    pub fn php_stream_xport_shutdown(
18298        stream: *mut php_stream,
18299        how: stream_shutdown_t,
18300    ) -> ::std::os::raw::c_int;
18301}
18302pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv2_CLIENT:
18303    php_stream_xport_crypt_method_t = 3;
18304pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv3_CLIENT:
18305    php_stream_xport_crypt_method_t = 5;
18306pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv23_CLIENT:
18307    php_stream_xport_crypt_method_t = 57;
18308pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_0_CLIENT:
18309    php_stream_xport_crypt_method_t = 9;
18310pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_1_CLIENT:
18311    php_stream_xport_crypt_method_t = 17;
18312pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT:
18313    php_stream_xport_crypt_method_t = 33;
18314pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLS_CLIENT:
18315    php_stream_xport_crypt_method_t = 57;
18316pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLS_ANY_CLIENT:
18317    php_stream_xport_crypt_method_t = 57;
18318pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_ANY_CLIENT:
18319    php_stream_xport_crypt_method_t = 63;
18320pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv2_SERVER:
18321    php_stream_xport_crypt_method_t = 2;
18322pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv3_SERVER:
18323    php_stream_xport_crypt_method_t = 4;
18324pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_SSLv23_SERVER:
18325    php_stream_xport_crypt_method_t = 56;
18326pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_0_SERVER:
18327    php_stream_xport_crypt_method_t = 8;
18328pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_1_SERVER:
18329    php_stream_xport_crypt_method_t = 16;
18330pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLSv1_2_SERVER:
18331    php_stream_xport_crypt_method_t = 32;
18332pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLS_SERVER:
18333    php_stream_xport_crypt_method_t = 56;
18334pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_TLS_ANY_SERVER:
18335    php_stream_xport_crypt_method_t = 56;
18336pub const php_stream_xport_crypt_method_t_STREAM_CRYPTO_METHOD_ANY_SERVER:
18337    php_stream_xport_crypt_method_t = 62;
18338pub type php_stream_xport_crypt_method_t = ::std::os::raw::c_uint;
18339extern "C" {
18340    pub fn php_stream_xport_crypto_setup(
18341        stream: *mut php_stream,
18342        crypto_method: php_stream_xport_crypt_method_t,
18343        session_stream: *mut php_stream,
18344    ) -> ::std::os::raw::c_int;
18345}
18346extern "C" {
18347    pub fn php_stream_xport_crypto_enable(
18348        stream: *mut php_stream,
18349        activate: ::std::os::raw::c_int,
18350    ) -> ::std::os::raw::c_int;
18351}
18352extern "C" {
18353    pub fn php_stream_xport_get_hash() -> *mut HashTable;
18354}
18355extern "C" {
18356    pub fn php_stream_generic_socket_factory(
18357        proto: *const ::std::os::raw::c_char,
18358        protolen: size_t,
18359        resourcename: *const ::std::os::raw::c_char,
18360        resourcenamelen: size_t,
18361        persistent_id: *const ::std::os::raw::c_char,
18362        options: ::std::os::raw::c_int,
18363        flags: ::std::os::raw::c_int,
18364        timeout: *mut timeval,
18365        context: *mut php_stream_context,
18366    ) -> *mut php_stream;
18367}
18368extern "C" {
18369    pub static mut php_stream_stdio_ops: php_stream_ops;
18370}
18371extern "C" {
18372    pub static mut php_plain_files_wrapper: php_stream_wrapper;
18373}
18374extern "C" {
18375    pub fn php_stream_parse_fopen_modes(
18376        mode: *const ::std::os::raw::c_char,
18377        open_flags: *mut ::std::os::raw::c_int,
18378    ) -> ::std::os::raw::c_int;
18379}
18380extern "C" {
18381    pub static php_glob_stream_wrapper: php_stream_wrapper;
18382}
18383extern "C" {
18384    pub static php_glob_stream_ops: php_stream_ops;
18385}
18386extern "C" {
18387    pub static php_stream_userspace_ops: php_stream_ops;
18388}
18389extern "C" {
18390    pub static php_stream_userspace_dir_ops: php_stream_ops;
18391}
18392extern "C" {
18393    pub fn php_init_stream_wrappers(module_number: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
18394}
18395extern "C" {
18396    pub fn php_shutdown_stream_wrappers(
18397        module_number: ::std::os::raw::c_int,
18398    ) -> ::std::os::raw::c_int;
18399}
18400extern "C" {
18401    pub fn php_shutdown_stream_hashes();
18402}
18403extern "C" {
18404    pub fn php_register_url_stream_wrapper(
18405        protocol: *const ::std::os::raw::c_char,
18406        wrapper: *const php_stream_wrapper,
18407    ) -> ::std::os::raw::c_int;
18408}
18409extern "C" {
18410    pub fn php_unregister_url_stream_wrapper(
18411        protocol: *const ::std::os::raw::c_char,
18412    ) -> ::std::os::raw::c_int;
18413}
18414extern "C" {
18415    pub fn php_register_url_stream_wrapper_volatile(
18416        protocol: *mut zend_string,
18417        wrapper: *mut php_stream_wrapper,
18418    ) -> ::std::os::raw::c_int;
18419}
18420extern "C" {
18421    pub fn php_unregister_url_stream_wrapper_volatile(
18422        protocol: *mut zend_string,
18423    ) -> ::std::os::raw::c_int;
18424}
18425extern "C" {
18426    pub fn php_stream_locate_url_wrapper(
18427        path: *const ::std::os::raw::c_char,
18428        path_for_open: *mut *const ::std::os::raw::c_char,
18429        options: ::std::os::raw::c_int,
18430    ) -> *mut php_stream_wrapper;
18431}
18432extern "C" {
18433    pub fn php_stream_locate_eol(
18434        stream: *mut php_stream,
18435        buf: *mut zend_string,
18436    ) -> *const ::std::os::raw::c_char;
18437}
18438extern "C" {
18439    pub fn php_stream_wrapper_log_error(
18440        wrapper: *const php_stream_wrapper,
18441        options: ::std::os::raw::c_int,
18442        fmt: *const ::std::os::raw::c_char,
18443        ...
18444    );
18445}
18446extern "C" {
18447    pub fn php_stream_get_url_stream_wrappers_hash_global() -> *mut HashTable;
18448}
18449extern "C" {
18450    pub fn php_get_stream_filters_hash_global() -> *mut HashTable;
18451}
18452extern "C" {
18453    pub static mut php_stream_user_wrapper_ops: *const php_stream_wrapper_ops;
18454}
18455extern "C" {
18456    pub fn php_stream_mode_from_str(mode: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
18457}
18458extern "C" {
18459    pub static php_stream_memory_ops: php_stream_ops;
18460}
18461extern "C" {
18462    pub static php_stream_temp_ops: php_stream_ops;
18463}
18464extern "C" {
18465    pub static php_stream_rfc2397_ops: php_stream_ops;
18466}
18467extern "C" {
18468    pub static php_stream_rfc2397_wrapper: php_stream_wrapper;
18469}
18470#[repr(C)]
18471#[derive(Copy, Clone)]
18472pub struct _php_core_globals {
18473    pub implicit_flush: zend_bool,
18474    pub output_buffering: zend_long,
18475    pub enable_dl: zend_bool,
18476    pub output_handler: *mut ::std::os::raw::c_char,
18477    pub unserialize_callback_func: *mut ::std::os::raw::c_char,
18478    pub serialize_precision: zend_long,
18479    pub memory_limit: zend_long,
18480    pub max_input_time: zend_long,
18481    pub track_errors: zend_bool,
18482    pub display_errors: zend_bool,
18483    pub display_startup_errors: zend_bool,
18484    pub log_errors: zend_bool,
18485    pub log_errors_max_len: zend_long,
18486    pub ignore_repeated_errors: zend_bool,
18487    pub ignore_repeated_source: zend_bool,
18488    pub report_memleaks: zend_bool,
18489    pub error_log: *mut ::std::os::raw::c_char,
18490    pub doc_root: *mut ::std::os::raw::c_char,
18491    pub user_dir: *mut ::std::os::raw::c_char,
18492    pub include_path: *mut ::std::os::raw::c_char,
18493    pub open_basedir: *mut ::std::os::raw::c_char,
18494    pub extension_dir: *mut ::std::os::raw::c_char,
18495    pub php_binary: *mut ::std::os::raw::c_char,
18496    pub sys_temp_dir: *mut ::std::os::raw::c_char,
18497    pub upload_tmp_dir: *mut ::std::os::raw::c_char,
18498    pub upload_max_filesize: zend_long,
18499    pub error_append_string: *mut ::std::os::raw::c_char,
18500    pub error_prepend_string: *mut ::std::os::raw::c_char,
18501    pub auto_prepend_file: *mut ::std::os::raw::c_char,
18502    pub auto_append_file: *mut ::std::os::raw::c_char,
18503    pub input_encoding: *mut ::std::os::raw::c_char,
18504    pub internal_encoding: *mut ::std::os::raw::c_char,
18505    pub output_encoding: *mut ::std::os::raw::c_char,
18506    pub arg_separator: arg_separators,
18507    pub variables_order: *mut ::std::os::raw::c_char,
18508    pub rfc1867_protected_variables: HashTable,
18509    pub connection_status: ::std::os::raw::c_short,
18510    pub ignore_user_abort: zend_bool,
18511    pub header_is_being_sent: ::std::os::raw::c_uchar,
18512    pub tick_functions: zend_llist,
18513    pub http_globals: [zval; 6usize],
18514    pub expose_php: zend_bool,
18515    pub register_argc_argv: zend_bool,
18516    pub auto_globals_jit: zend_bool,
18517    pub docref_root: *mut ::std::os::raw::c_char,
18518    pub docref_ext: *mut ::std::os::raw::c_char,
18519    pub html_errors: zend_bool,
18520    pub xmlrpc_errors: zend_bool,
18521    pub xmlrpc_error_number: zend_long,
18522    pub activated_auto_globals: [zend_bool; 8usize],
18523    pub modules_activated: zend_bool,
18524    pub file_uploads: zend_bool,
18525    pub during_request_startup: zend_bool,
18526    pub allow_url_fopen: zend_bool,
18527    pub enable_post_data_reading: zend_bool,
18528    pub report_zend_debug: zend_bool,
18529    pub last_error_type: ::std::os::raw::c_int,
18530    pub last_error_message: *mut ::std::os::raw::c_char,
18531    pub last_error_file: *mut ::std::os::raw::c_char,
18532    pub last_error_lineno: ::std::os::raw::c_int,
18533    pub php_sys_temp_dir: *mut ::std::os::raw::c_char,
18534    pub disable_functions: *mut ::std::os::raw::c_char,
18535    pub disable_classes: *mut ::std::os::raw::c_char,
18536    pub allow_url_include: zend_bool,
18537    pub max_input_nesting_level: zend_long,
18538    pub max_input_vars: zend_long,
18539    pub in_user_include: zend_bool,
18540    pub user_ini_filename: *mut ::std::os::raw::c_char,
18541    pub user_ini_cache_ttl: zend_long,
18542    pub request_order: *mut ::std::os::raw::c_char,
18543    pub mail_x_header: zend_bool,
18544    pub mail_log: *mut ::std::os::raw::c_char,
18545    pub in_error_log: zend_bool,
18546    pub syslog_facility: zend_long,
18547    pub syslog_ident: *mut ::std::os::raw::c_char,
18548    pub have_called_openlog: zend_bool,
18549    pub syslog_filter: zend_long,
18550}
18551#[test]
18552fn bindgen_test_layout__php_core_globals() {
18553    assert_eq!(
18554        ::std::mem::size_of::<_php_core_globals>(),
18555        688usize,
18556        concat!("Size of: ", stringify!(_php_core_globals))
18557    );
18558    assert_eq!(
18559        ::std::mem::align_of::<_php_core_globals>(),
18560        8usize,
18561        concat!("Alignment of ", stringify!(_php_core_globals))
18562    );
18563    assert_eq!(
18564        unsafe {
18565            &(*(::std::ptr::null::<_php_core_globals>())).implicit_flush as *const _ as usize
18566        },
18567        0usize,
18568        concat!(
18569            "Offset of field: ",
18570            stringify!(_php_core_globals),
18571            "::",
18572            stringify!(implicit_flush)
18573        )
18574    );
18575    assert_eq!(
18576        unsafe {
18577            &(*(::std::ptr::null::<_php_core_globals>())).output_buffering as *const _ as usize
18578        },
18579        8usize,
18580        concat!(
18581            "Offset of field: ",
18582            stringify!(_php_core_globals),
18583            "::",
18584            stringify!(output_buffering)
18585        )
18586    );
18587    assert_eq!(
18588        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).enable_dl as *const _ as usize },
18589        16usize,
18590        concat!(
18591            "Offset of field: ",
18592            stringify!(_php_core_globals),
18593            "::",
18594            stringify!(enable_dl)
18595        )
18596    );
18597    assert_eq!(
18598        unsafe {
18599            &(*(::std::ptr::null::<_php_core_globals>())).output_handler as *const _ as usize
18600        },
18601        24usize,
18602        concat!(
18603            "Offset of field: ",
18604            stringify!(_php_core_globals),
18605            "::",
18606            stringify!(output_handler)
18607        )
18608    );
18609    assert_eq!(
18610        unsafe {
18611            &(*(::std::ptr::null::<_php_core_globals>())).unserialize_callback_func as *const _
18612                as usize
18613        },
18614        32usize,
18615        concat!(
18616            "Offset of field: ",
18617            stringify!(_php_core_globals),
18618            "::",
18619            stringify!(unserialize_callback_func)
18620        )
18621    );
18622    assert_eq!(
18623        unsafe {
18624            &(*(::std::ptr::null::<_php_core_globals>())).serialize_precision as *const _ as usize
18625        },
18626        40usize,
18627        concat!(
18628            "Offset of field: ",
18629            stringify!(_php_core_globals),
18630            "::",
18631            stringify!(serialize_precision)
18632        )
18633    );
18634    assert_eq!(
18635        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).memory_limit as *const _ as usize },
18636        48usize,
18637        concat!(
18638            "Offset of field: ",
18639            stringify!(_php_core_globals),
18640            "::",
18641            stringify!(memory_limit)
18642        )
18643    );
18644    assert_eq!(
18645        unsafe {
18646            &(*(::std::ptr::null::<_php_core_globals>())).max_input_time as *const _ as usize
18647        },
18648        56usize,
18649        concat!(
18650            "Offset of field: ",
18651            stringify!(_php_core_globals),
18652            "::",
18653            stringify!(max_input_time)
18654        )
18655    );
18656    assert_eq!(
18657        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).track_errors as *const _ as usize },
18658        64usize,
18659        concat!(
18660            "Offset of field: ",
18661            stringify!(_php_core_globals),
18662            "::",
18663            stringify!(track_errors)
18664        )
18665    );
18666    assert_eq!(
18667        unsafe {
18668            &(*(::std::ptr::null::<_php_core_globals>())).display_errors as *const _ as usize
18669        },
18670        65usize,
18671        concat!(
18672            "Offset of field: ",
18673            stringify!(_php_core_globals),
18674            "::",
18675            stringify!(display_errors)
18676        )
18677    );
18678    assert_eq!(
18679        unsafe {
18680            &(*(::std::ptr::null::<_php_core_globals>())).display_startup_errors as *const _
18681                as usize
18682        },
18683        66usize,
18684        concat!(
18685            "Offset of field: ",
18686            stringify!(_php_core_globals),
18687            "::",
18688            stringify!(display_startup_errors)
18689        )
18690    );
18691    assert_eq!(
18692        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).log_errors as *const _ as usize },
18693        67usize,
18694        concat!(
18695            "Offset of field: ",
18696            stringify!(_php_core_globals),
18697            "::",
18698            stringify!(log_errors)
18699        )
18700    );
18701    assert_eq!(
18702        unsafe {
18703            &(*(::std::ptr::null::<_php_core_globals>())).log_errors_max_len as *const _ as usize
18704        },
18705        72usize,
18706        concat!(
18707            "Offset of field: ",
18708            stringify!(_php_core_globals),
18709            "::",
18710            stringify!(log_errors_max_len)
18711        )
18712    );
18713    assert_eq!(
18714        unsafe {
18715            &(*(::std::ptr::null::<_php_core_globals>())).ignore_repeated_errors as *const _
18716                as usize
18717        },
18718        80usize,
18719        concat!(
18720            "Offset of field: ",
18721            stringify!(_php_core_globals),
18722            "::",
18723            stringify!(ignore_repeated_errors)
18724        )
18725    );
18726    assert_eq!(
18727        unsafe {
18728            &(*(::std::ptr::null::<_php_core_globals>())).ignore_repeated_source as *const _
18729                as usize
18730        },
18731        81usize,
18732        concat!(
18733            "Offset of field: ",
18734            stringify!(_php_core_globals),
18735            "::",
18736            stringify!(ignore_repeated_source)
18737        )
18738    );
18739    assert_eq!(
18740        unsafe {
18741            &(*(::std::ptr::null::<_php_core_globals>())).report_memleaks as *const _ as usize
18742        },
18743        82usize,
18744        concat!(
18745            "Offset of field: ",
18746            stringify!(_php_core_globals),
18747            "::",
18748            stringify!(report_memleaks)
18749        )
18750    );
18751    assert_eq!(
18752        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).error_log as *const _ as usize },
18753        88usize,
18754        concat!(
18755            "Offset of field: ",
18756            stringify!(_php_core_globals),
18757            "::",
18758            stringify!(error_log)
18759        )
18760    );
18761    assert_eq!(
18762        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).doc_root as *const _ as usize },
18763        96usize,
18764        concat!(
18765            "Offset of field: ",
18766            stringify!(_php_core_globals),
18767            "::",
18768            stringify!(doc_root)
18769        )
18770    );
18771    assert_eq!(
18772        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).user_dir as *const _ as usize },
18773        104usize,
18774        concat!(
18775            "Offset of field: ",
18776            stringify!(_php_core_globals),
18777            "::",
18778            stringify!(user_dir)
18779        )
18780    );
18781    assert_eq!(
18782        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).include_path as *const _ as usize },
18783        112usize,
18784        concat!(
18785            "Offset of field: ",
18786            stringify!(_php_core_globals),
18787            "::",
18788            stringify!(include_path)
18789        )
18790    );
18791    assert_eq!(
18792        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).open_basedir as *const _ as usize },
18793        120usize,
18794        concat!(
18795            "Offset of field: ",
18796            stringify!(_php_core_globals),
18797            "::",
18798            stringify!(open_basedir)
18799        )
18800    );
18801    assert_eq!(
18802        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).extension_dir as *const _ as usize },
18803        128usize,
18804        concat!(
18805            "Offset of field: ",
18806            stringify!(_php_core_globals),
18807            "::",
18808            stringify!(extension_dir)
18809        )
18810    );
18811    assert_eq!(
18812        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).php_binary as *const _ as usize },
18813        136usize,
18814        concat!(
18815            "Offset of field: ",
18816            stringify!(_php_core_globals),
18817            "::",
18818            stringify!(php_binary)
18819        )
18820    );
18821    assert_eq!(
18822        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).sys_temp_dir as *const _ as usize },
18823        144usize,
18824        concat!(
18825            "Offset of field: ",
18826            stringify!(_php_core_globals),
18827            "::",
18828            stringify!(sys_temp_dir)
18829        )
18830    );
18831    assert_eq!(
18832        unsafe {
18833            &(*(::std::ptr::null::<_php_core_globals>())).upload_tmp_dir as *const _ as usize
18834        },
18835        152usize,
18836        concat!(
18837            "Offset of field: ",
18838            stringify!(_php_core_globals),
18839            "::",
18840            stringify!(upload_tmp_dir)
18841        )
18842    );
18843    assert_eq!(
18844        unsafe {
18845            &(*(::std::ptr::null::<_php_core_globals>())).upload_max_filesize as *const _ as usize
18846        },
18847        160usize,
18848        concat!(
18849            "Offset of field: ",
18850            stringify!(_php_core_globals),
18851            "::",
18852            stringify!(upload_max_filesize)
18853        )
18854    );
18855    assert_eq!(
18856        unsafe {
18857            &(*(::std::ptr::null::<_php_core_globals>())).error_append_string as *const _ as usize
18858        },
18859        168usize,
18860        concat!(
18861            "Offset of field: ",
18862            stringify!(_php_core_globals),
18863            "::",
18864            stringify!(error_append_string)
18865        )
18866    );
18867    assert_eq!(
18868        unsafe {
18869            &(*(::std::ptr::null::<_php_core_globals>())).error_prepend_string as *const _ as usize
18870        },
18871        176usize,
18872        concat!(
18873            "Offset of field: ",
18874            stringify!(_php_core_globals),
18875            "::",
18876            stringify!(error_prepend_string)
18877        )
18878    );
18879    assert_eq!(
18880        unsafe {
18881            &(*(::std::ptr::null::<_php_core_globals>())).auto_prepend_file as *const _ as usize
18882        },
18883        184usize,
18884        concat!(
18885            "Offset of field: ",
18886            stringify!(_php_core_globals),
18887            "::",
18888            stringify!(auto_prepend_file)
18889        )
18890    );
18891    assert_eq!(
18892        unsafe {
18893            &(*(::std::ptr::null::<_php_core_globals>())).auto_append_file as *const _ as usize
18894        },
18895        192usize,
18896        concat!(
18897            "Offset of field: ",
18898            stringify!(_php_core_globals),
18899            "::",
18900            stringify!(auto_append_file)
18901        )
18902    );
18903    assert_eq!(
18904        unsafe {
18905            &(*(::std::ptr::null::<_php_core_globals>())).input_encoding as *const _ as usize
18906        },
18907        200usize,
18908        concat!(
18909            "Offset of field: ",
18910            stringify!(_php_core_globals),
18911            "::",
18912            stringify!(input_encoding)
18913        )
18914    );
18915    assert_eq!(
18916        unsafe {
18917            &(*(::std::ptr::null::<_php_core_globals>())).internal_encoding as *const _ as usize
18918        },
18919        208usize,
18920        concat!(
18921            "Offset of field: ",
18922            stringify!(_php_core_globals),
18923            "::",
18924            stringify!(internal_encoding)
18925        )
18926    );
18927    assert_eq!(
18928        unsafe {
18929            &(*(::std::ptr::null::<_php_core_globals>())).output_encoding as *const _ as usize
18930        },
18931        216usize,
18932        concat!(
18933            "Offset of field: ",
18934            stringify!(_php_core_globals),
18935            "::",
18936            stringify!(output_encoding)
18937        )
18938    );
18939    assert_eq!(
18940        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).arg_separator as *const _ as usize },
18941        224usize,
18942        concat!(
18943            "Offset of field: ",
18944            stringify!(_php_core_globals),
18945            "::",
18946            stringify!(arg_separator)
18947        )
18948    );
18949    assert_eq!(
18950        unsafe {
18951            &(*(::std::ptr::null::<_php_core_globals>())).variables_order as *const _ as usize
18952        },
18953        240usize,
18954        concat!(
18955            "Offset of field: ",
18956            stringify!(_php_core_globals),
18957            "::",
18958            stringify!(variables_order)
18959        )
18960    );
18961    assert_eq!(
18962        unsafe {
18963            &(*(::std::ptr::null::<_php_core_globals>())).rfc1867_protected_variables as *const _
18964                as usize
18965        },
18966        248usize,
18967        concat!(
18968            "Offset of field: ",
18969            stringify!(_php_core_globals),
18970            "::",
18971            stringify!(rfc1867_protected_variables)
18972        )
18973    );
18974    assert_eq!(
18975        unsafe {
18976            &(*(::std::ptr::null::<_php_core_globals>())).connection_status as *const _ as usize
18977        },
18978        304usize,
18979        concat!(
18980            "Offset of field: ",
18981            stringify!(_php_core_globals),
18982            "::",
18983            stringify!(connection_status)
18984        )
18985    );
18986    assert_eq!(
18987        unsafe {
18988            &(*(::std::ptr::null::<_php_core_globals>())).ignore_user_abort as *const _ as usize
18989        },
18990        306usize,
18991        concat!(
18992            "Offset of field: ",
18993            stringify!(_php_core_globals),
18994            "::",
18995            stringify!(ignore_user_abort)
18996        )
18997    );
18998    assert_eq!(
18999        unsafe {
19000            &(*(::std::ptr::null::<_php_core_globals>())).header_is_being_sent as *const _ as usize
19001        },
19002        307usize,
19003        concat!(
19004            "Offset of field: ",
19005            stringify!(_php_core_globals),
19006            "::",
19007            stringify!(header_is_being_sent)
19008        )
19009    );
19010    assert_eq!(
19011        unsafe {
19012            &(*(::std::ptr::null::<_php_core_globals>())).tick_functions as *const _ as usize
19013        },
19014        312usize,
19015        concat!(
19016            "Offset of field: ",
19017            stringify!(_php_core_globals),
19018            "::",
19019            stringify!(tick_functions)
19020        )
19021    );
19022    assert_eq!(
19023        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).http_globals as *const _ as usize },
19024        368usize,
19025        concat!(
19026            "Offset of field: ",
19027            stringify!(_php_core_globals),
19028            "::",
19029            stringify!(http_globals)
19030        )
19031    );
19032    assert_eq!(
19033        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).expose_php as *const _ as usize },
19034        464usize,
19035        concat!(
19036            "Offset of field: ",
19037            stringify!(_php_core_globals),
19038            "::",
19039            stringify!(expose_php)
19040        )
19041    );
19042    assert_eq!(
19043        unsafe {
19044            &(*(::std::ptr::null::<_php_core_globals>())).register_argc_argv as *const _ as usize
19045        },
19046        465usize,
19047        concat!(
19048            "Offset of field: ",
19049            stringify!(_php_core_globals),
19050            "::",
19051            stringify!(register_argc_argv)
19052        )
19053    );
19054    assert_eq!(
19055        unsafe {
19056            &(*(::std::ptr::null::<_php_core_globals>())).auto_globals_jit as *const _ as usize
19057        },
19058        466usize,
19059        concat!(
19060            "Offset of field: ",
19061            stringify!(_php_core_globals),
19062            "::",
19063            stringify!(auto_globals_jit)
19064        )
19065    );
19066    assert_eq!(
19067        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).docref_root as *const _ as usize },
19068        472usize,
19069        concat!(
19070            "Offset of field: ",
19071            stringify!(_php_core_globals),
19072            "::",
19073            stringify!(docref_root)
19074        )
19075    );
19076    assert_eq!(
19077        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).docref_ext as *const _ as usize },
19078        480usize,
19079        concat!(
19080            "Offset of field: ",
19081            stringify!(_php_core_globals),
19082            "::",
19083            stringify!(docref_ext)
19084        )
19085    );
19086    assert_eq!(
19087        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).html_errors as *const _ as usize },
19088        488usize,
19089        concat!(
19090            "Offset of field: ",
19091            stringify!(_php_core_globals),
19092            "::",
19093            stringify!(html_errors)
19094        )
19095    );
19096    assert_eq!(
19097        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).xmlrpc_errors as *const _ as usize },
19098        489usize,
19099        concat!(
19100            "Offset of field: ",
19101            stringify!(_php_core_globals),
19102            "::",
19103            stringify!(xmlrpc_errors)
19104        )
19105    );
19106    assert_eq!(
19107        unsafe {
19108            &(*(::std::ptr::null::<_php_core_globals>())).xmlrpc_error_number as *const _ as usize
19109        },
19110        496usize,
19111        concat!(
19112            "Offset of field: ",
19113            stringify!(_php_core_globals),
19114            "::",
19115            stringify!(xmlrpc_error_number)
19116        )
19117    );
19118    assert_eq!(
19119        unsafe {
19120            &(*(::std::ptr::null::<_php_core_globals>())).activated_auto_globals as *const _
19121                as usize
19122        },
19123        504usize,
19124        concat!(
19125            "Offset of field: ",
19126            stringify!(_php_core_globals),
19127            "::",
19128            stringify!(activated_auto_globals)
19129        )
19130    );
19131    assert_eq!(
19132        unsafe {
19133            &(*(::std::ptr::null::<_php_core_globals>())).modules_activated as *const _ as usize
19134        },
19135        512usize,
19136        concat!(
19137            "Offset of field: ",
19138            stringify!(_php_core_globals),
19139            "::",
19140            stringify!(modules_activated)
19141        )
19142    );
19143    assert_eq!(
19144        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).file_uploads as *const _ as usize },
19145        513usize,
19146        concat!(
19147            "Offset of field: ",
19148            stringify!(_php_core_globals),
19149            "::",
19150            stringify!(file_uploads)
19151        )
19152    );
19153    assert_eq!(
19154        unsafe {
19155            &(*(::std::ptr::null::<_php_core_globals>())).during_request_startup as *const _
19156                as usize
19157        },
19158        514usize,
19159        concat!(
19160            "Offset of field: ",
19161            stringify!(_php_core_globals),
19162            "::",
19163            stringify!(during_request_startup)
19164        )
19165    );
19166    assert_eq!(
19167        unsafe {
19168            &(*(::std::ptr::null::<_php_core_globals>())).allow_url_fopen as *const _ as usize
19169        },
19170        515usize,
19171        concat!(
19172            "Offset of field: ",
19173            stringify!(_php_core_globals),
19174            "::",
19175            stringify!(allow_url_fopen)
19176        )
19177    );
19178    assert_eq!(
19179        unsafe {
19180            &(*(::std::ptr::null::<_php_core_globals>())).enable_post_data_reading as *const _
19181                as usize
19182        },
19183        516usize,
19184        concat!(
19185            "Offset of field: ",
19186            stringify!(_php_core_globals),
19187            "::",
19188            stringify!(enable_post_data_reading)
19189        )
19190    );
19191    assert_eq!(
19192        unsafe {
19193            &(*(::std::ptr::null::<_php_core_globals>())).report_zend_debug as *const _ as usize
19194        },
19195        517usize,
19196        concat!(
19197            "Offset of field: ",
19198            stringify!(_php_core_globals),
19199            "::",
19200            stringify!(report_zend_debug)
19201        )
19202    );
19203    assert_eq!(
19204        unsafe {
19205            &(*(::std::ptr::null::<_php_core_globals>())).last_error_type as *const _ as usize
19206        },
19207        520usize,
19208        concat!(
19209            "Offset of field: ",
19210            stringify!(_php_core_globals),
19211            "::",
19212            stringify!(last_error_type)
19213        )
19214    );
19215    assert_eq!(
19216        unsafe {
19217            &(*(::std::ptr::null::<_php_core_globals>())).last_error_message as *const _ as usize
19218        },
19219        528usize,
19220        concat!(
19221            "Offset of field: ",
19222            stringify!(_php_core_globals),
19223            "::",
19224            stringify!(last_error_message)
19225        )
19226    );
19227    assert_eq!(
19228        unsafe {
19229            &(*(::std::ptr::null::<_php_core_globals>())).last_error_file as *const _ as usize
19230        },
19231        536usize,
19232        concat!(
19233            "Offset of field: ",
19234            stringify!(_php_core_globals),
19235            "::",
19236            stringify!(last_error_file)
19237        )
19238    );
19239    assert_eq!(
19240        unsafe {
19241            &(*(::std::ptr::null::<_php_core_globals>())).last_error_lineno as *const _ as usize
19242        },
19243        544usize,
19244        concat!(
19245            "Offset of field: ",
19246            stringify!(_php_core_globals),
19247            "::",
19248            stringify!(last_error_lineno)
19249        )
19250    );
19251    assert_eq!(
19252        unsafe {
19253            &(*(::std::ptr::null::<_php_core_globals>())).php_sys_temp_dir as *const _ as usize
19254        },
19255        552usize,
19256        concat!(
19257            "Offset of field: ",
19258            stringify!(_php_core_globals),
19259            "::",
19260            stringify!(php_sys_temp_dir)
19261        )
19262    );
19263    assert_eq!(
19264        unsafe {
19265            &(*(::std::ptr::null::<_php_core_globals>())).disable_functions as *const _ as usize
19266        },
19267        560usize,
19268        concat!(
19269            "Offset of field: ",
19270            stringify!(_php_core_globals),
19271            "::",
19272            stringify!(disable_functions)
19273        )
19274    );
19275    assert_eq!(
19276        unsafe {
19277            &(*(::std::ptr::null::<_php_core_globals>())).disable_classes as *const _ as usize
19278        },
19279        568usize,
19280        concat!(
19281            "Offset of field: ",
19282            stringify!(_php_core_globals),
19283            "::",
19284            stringify!(disable_classes)
19285        )
19286    );
19287    assert_eq!(
19288        unsafe {
19289            &(*(::std::ptr::null::<_php_core_globals>())).allow_url_include as *const _ as usize
19290        },
19291        576usize,
19292        concat!(
19293            "Offset of field: ",
19294            stringify!(_php_core_globals),
19295            "::",
19296            stringify!(allow_url_include)
19297        )
19298    );
19299    assert_eq!(
19300        unsafe {
19301            &(*(::std::ptr::null::<_php_core_globals>())).max_input_nesting_level as *const _
19302                as usize
19303        },
19304        584usize,
19305        concat!(
19306            "Offset of field: ",
19307            stringify!(_php_core_globals),
19308            "::",
19309            stringify!(max_input_nesting_level)
19310        )
19311    );
19312    assert_eq!(
19313        unsafe {
19314            &(*(::std::ptr::null::<_php_core_globals>())).max_input_vars as *const _ as usize
19315        },
19316        592usize,
19317        concat!(
19318            "Offset of field: ",
19319            stringify!(_php_core_globals),
19320            "::",
19321            stringify!(max_input_vars)
19322        )
19323    );
19324    assert_eq!(
19325        unsafe {
19326            &(*(::std::ptr::null::<_php_core_globals>())).in_user_include as *const _ as usize
19327        },
19328        600usize,
19329        concat!(
19330            "Offset of field: ",
19331            stringify!(_php_core_globals),
19332            "::",
19333            stringify!(in_user_include)
19334        )
19335    );
19336    assert_eq!(
19337        unsafe {
19338            &(*(::std::ptr::null::<_php_core_globals>())).user_ini_filename as *const _ as usize
19339        },
19340        608usize,
19341        concat!(
19342            "Offset of field: ",
19343            stringify!(_php_core_globals),
19344            "::",
19345            stringify!(user_ini_filename)
19346        )
19347    );
19348    assert_eq!(
19349        unsafe {
19350            &(*(::std::ptr::null::<_php_core_globals>())).user_ini_cache_ttl as *const _ as usize
19351        },
19352        616usize,
19353        concat!(
19354            "Offset of field: ",
19355            stringify!(_php_core_globals),
19356            "::",
19357            stringify!(user_ini_cache_ttl)
19358        )
19359    );
19360    assert_eq!(
19361        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).request_order as *const _ as usize },
19362        624usize,
19363        concat!(
19364            "Offset of field: ",
19365            stringify!(_php_core_globals),
19366            "::",
19367            stringify!(request_order)
19368        )
19369    );
19370    assert_eq!(
19371        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).mail_x_header as *const _ as usize },
19372        632usize,
19373        concat!(
19374            "Offset of field: ",
19375            stringify!(_php_core_globals),
19376            "::",
19377            stringify!(mail_x_header)
19378        )
19379    );
19380    assert_eq!(
19381        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).mail_log as *const _ as usize },
19382        640usize,
19383        concat!(
19384            "Offset of field: ",
19385            stringify!(_php_core_globals),
19386            "::",
19387            stringify!(mail_log)
19388        )
19389    );
19390    assert_eq!(
19391        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).in_error_log as *const _ as usize },
19392        648usize,
19393        concat!(
19394            "Offset of field: ",
19395            stringify!(_php_core_globals),
19396            "::",
19397            stringify!(in_error_log)
19398        )
19399    );
19400    assert_eq!(
19401        unsafe {
19402            &(*(::std::ptr::null::<_php_core_globals>())).syslog_facility as *const _ as usize
19403        },
19404        656usize,
19405        concat!(
19406            "Offset of field: ",
19407            stringify!(_php_core_globals),
19408            "::",
19409            stringify!(syslog_facility)
19410        )
19411    );
19412    assert_eq!(
19413        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).syslog_ident as *const _ as usize },
19414        664usize,
19415        concat!(
19416            "Offset of field: ",
19417            stringify!(_php_core_globals),
19418            "::",
19419            stringify!(syslog_ident)
19420        )
19421    );
19422    assert_eq!(
19423        unsafe {
19424            &(*(::std::ptr::null::<_php_core_globals>())).have_called_openlog as *const _ as usize
19425        },
19426        672usize,
19427        concat!(
19428            "Offset of field: ",
19429            stringify!(_php_core_globals),
19430            "::",
19431            stringify!(have_called_openlog)
19432        )
19433    );
19434    assert_eq!(
19435        unsafe { &(*(::std::ptr::null::<_php_core_globals>())).syslog_filter as *const _ as usize },
19436        680usize,
19437        concat!(
19438            "Offset of field: ",
19439            stringify!(_php_core_globals),
19440            "::",
19441            stringify!(syslog_filter)
19442        )
19443    );
19444}
19445extern "C" {
19446    pub static mut core_globals: _php_core_globals;
19447}
19448#[repr(C)]
19449#[derive(Debug, Copy, Clone)]
19450pub struct _arg_separators {
19451    pub output: *mut ::std::os::raw::c_char,
19452    pub input: *mut ::std::os::raw::c_char,
19453}
19454#[test]
19455fn bindgen_test_layout__arg_separators() {
19456    assert_eq!(
19457        ::std::mem::size_of::<_arg_separators>(),
19458        16usize,
19459        concat!("Size of: ", stringify!(_arg_separators))
19460    );
19461    assert_eq!(
19462        ::std::mem::align_of::<_arg_separators>(),
19463        8usize,
19464        concat!("Alignment of ", stringify!(_arg_separators))
19465    );
19466    assert_eq!(
19467        unsafe { &(*(::std::ptr::null::<_arg_separators>())).output as *const _ as usize },
19468        0usize,
19469        concat!(
19470            "Offset of field: ",
19471            stringify!(_arg_separators),
19472            "::",
19473            stringify!(output)
19474        )
19475    );
19476    assert_eq!(
19477        unsafe { &(*(::std::ptr::null::<_arg_separators>())).input as *const _ as usize },
19478        8usize,
19479        concat!(
19480            "Offset of field: ",
19481            stringify!(_arg_separators),
19482            "::",
19483            stringify!(input)
19484        )
19485    );
19486}
19487pub type arg_separators = _arg_separators;
19488#[repr(C)]
19489#[derive(Debug, Copy, Clone)]
19490pub struct _zend_ini_entry_def {
19491    pub name: *const ::std::os::raw::c_char,
19492    pub on_modify: ::std::option::Option<
19493        unsafe extern "C" fn(
19494            entry: *mut zend_ini_entry,
19495            new_value: *mut zend_string,
19496            mh_arg1: *mut ::std::os::raw::c_void,
19497            mh_arg2: *mut ::std::os::raw::c_void,
19498            mh_arg3: *mut ::std::os::raw::c_void,
19499            stage: ::std::os::raw::c_int,
19500        ) -> ::std::os::raw::c_int,
19501    >,
19502    pub mh_arg1: *mut ::std::os::raw::c_void,
19503    pub mh_arg2: *mut ::std::os::raw::c_void,
19504    pub mh_arg3: *mut ::std::os::raw::c_void,
19505    pub value: *const ::std::os::raw::c_char,
19506    pub displayer: ::std::option::Option<
19507        unsafe extern "C" fn(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int),
19508    >,
19509    pub value_length: u32,
19510    pub name_length: u16,
19511    pub modifiable: u8,
19512}
19513#[test]
19514fn bindgen_test_layout__zend_ini_entry_def() {
19515    assert_eq!(
19516        ::std::mem::size_of::<_zend_ini_entry_def>(),
19517        64usize,
19518        concat!("Size of: ", stringify!(_zend_ini_entry_def))
19519    );
19520    assert_eq!(
19521        ::std::mem::align_of::<_zend_ini_entry_def>(),
19522        8usize,
19523        concat!("Alignment of ", stringify!(_zend_ini_entry_def))
19524    );
19525    assert_eq!(
19526        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).name as *const _ as usize },
19527        0usize,
19528        concat!(
19529            "Offset of field: ",
19530            stringify!(_zend_ini_entry_def),
19531            "::",
19532            stringify!(name)
19533        )
19534    );
19535    assert_eq!(
19536        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).on_modify as *const _ as usize },
19537        8usize,
19538        concat!(
19539            "Offset of field: ",
19540            stringify!(_zend_ini_entry_def),
19541            "::",
19542            stringify!(on_modify)
19543        )
19544    );
19545    assert_eq!(
19546        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).mh_arg1 as *const _ as usize },
19547        16usize,
19548        concat!(
19549            "Offset of field: ",
19550            stringify!(_zend_ini_entry_def),
19551            "::",
19552            stringify!(mh_arg1)
19553        )
19554    );
19555    assert_eq!(
19556        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).mh_arg2 as *const _ as usize },
19557        24usize,
19558        concat!(
19559            "Offset of field: ",
19560            stringify!(_zend_ini_entry_def),
19561            "::",
19562            stringify!(mh_arg2)
19563        )
19564    );
19565    assert_eq!(
19566        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).mh_arg3 as *const _ as usize },
19567        32usize,
19568        concat!(
19569            "Offset of field: ",
19570            stringify!(_zend_ini_entry_def),
19571            "::",
19572            stringify!(mh_arg3)
19573        )
19574    );
19575    assert_eq!(
19576        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).value as *const _ as usize },
19577        40usize,
19578        concat!(
19579            "Offset of field: ",
19580            stringify!(_zend_ini_entry_def),
19581            "::",
19582            stringify!(value)
19583        )
19584    );
19585    assert_eq!(
19586        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).displayer as *const _ as usize },
19587        48usize,
19588        concat!(
19589            "Offset of field: ",
19590            stringify!(_zend_ini_entry_def),
19591            "::",
19592            stringify!(displayer)
19593        )
19594    );
19595    assert_eq!(
19596        unsafe {
19597            &(*(::std::ptr::null::<_zend_ini_entry_def>())).value_length as *const _ as usize
19598        },
19599        56usize,
19600        concat!(
19601            "Offset of field: ",
19602            stringify!(_zend_ini_entry_def),
19603            "::",
19604            stringify!(value_length)
19605        )
19606    );
19607    assert_eq!(
19608        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).name_length as *const _ as usize },
19609        60usize,
19610        concat!(
19611            "Offset of field: ",
19612            stringify!(_zend_ini_entry_def),
19613            "::",
19614            stringify!(name_length)
19615        )
19616    );
19617    assert_eq!(
19618        unsafe { &(*(::std::ptr::null::<_zend_ini_entry_def>())).modifiable as *const _ as usize },
19619        62usize,
19620        concat!(
19621            "Offset of field: ",
19622            stringify!(_zend_ini_entry_def),
19623            "::",
19624            stringify!(modifiable)
19625        )
19626    );
19627}
19628pub type zend_ini_entry_def = _zend_ini_entry_def;
19629#[repr(C)]
19630#[derive(Debug, Copy, Clone)]
19631pub struct _zend_ini_entry {
19632    pub name: *mut zend_string,
19633    pub on_modify: ::std::option::Option<
19634        unsafe extern "C" fn(
19635            entry: *mut zend_ini_entry,
19636            new_value: *mut zend_string,
19637            mh_arg1: *mut ::std::os::raw::c_void,
19638            mh_arg2: *mut ::std::os::raw::c_void,
19639            mh_arg3: *mut ::std::os::raw::c_void,
19640            stage: ::std::os::raw::c_int,
19641        ) -> ::std::os::raw::c_int,
19642    >,
19643    pub mh_arg1: *mut ::std::os::raw::c_void,
19644    pub mh_arg2: *mut ::std::os::raw::c_void,
19645    pub mh_arg3: *mut ::std::os::raw::c_void,
19646    pub value: *mut zend_string,
19647    pub orig_value: *mut zend_string,
19648    pub displayer: ::std::option::Option<
19649        unsafe extern "C" fn(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int),
19650    >,
19651    pub module_number: ::std::os::raw::c_int,
19652    pub modifiable: u8,
19653    pub orig_modifiable: u8,
19654    pub modified: u8,
19655}
19656#[test]
19657fn bindgen_test_layout__zend_ini_entry() {
19658    assert_eq!(
19659        ::std::mem::size_of::<_zend_ini_entry>(),
19660        72usize,
19661        concat!("Size of: ", stringify!(_zend_ini_entry))
19662    );
19663    assert_eq!(
19664        ::std::mem::align_of::<_zend_ini_entry>(),
19665        8usize,
19666        concat!("Alignment of ", stringify!(_zend_ini_entry))
19667    );
19668    assert_eq!(
19669        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).name as *const _ as usize },
19670        0usize,
19671        concat!(
19672            "Offset of field: ",
19673            stringify!(_zend_ini_entry),
19674            "::",
19675            stringify!(name)
19676        )
19677    );
19678    assert_eq!(
19679        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).on_modify as *const _ as usize },
19680        8usize,
19681        concat!(
19682            "Offset of field: ",
19683            stringify!(_zend_ini_entry),
19684            "::",
19685            stringify!(on_modify)
19686        )
19687    );
19688    assert_eq!(
19689        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).mh_arg1 as *const _ as usize },
19690        16usize,
19691        concat!(
19692            "Offset of field: ",
19693            stringify!(_zend_ini_entry),
19694            "::",
19695            stringify!(mh_arg1)
19696        )
19697    );
19698    assert_eq!(
19699        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).mh_arg2 as *const _ as usize },
19700        24usize,
19701        concat!(
19702            "Offset of field: ",
19703            stringify!(_zend_ini_entry),
19704            "::",
19705            stringify!(mh_arg2)
19706        )
19707    );
19708    assert_eq!(
19709        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).mh_arg3 as *const _ as usize },
19710        32usize,
19711        concat!(
19712            "Offset of field: ",
19713            stringify!(_zend_ini_entry),
19714            "::",
19715            stringify!(mh_arg3)
19716        )
19717    );
19718    assert_eq!(
19719        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).value as *const _ as usize },
19720        40usize,
19721        concat!(
19722            "Offset of field: ",
19723            stringify!(_zend_ini_entry),
19724            "::",
19725            stringify!(value)
19726        )
19727    );
19728    assert_eq!(
19729        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).orig_value as *const _ as usize },
19730        48usize,
19731        concat!(
19732            "Offset of field: ",
19733            stringify!(_zend_ini_entry),
19734            "::",
19735            stringify!(orig_value)
19736        )
19737    );
19738    assert_eq!(
19739        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).displayer as *const _ as usize },
19740        56usize,
19741        concat!(
19742            "Offset of field: ",
19743            stringify!(_zend_ini_entry),
19744            "::",
19745            stringify!(displayer)
19746        )
19747    );
19748    assert_eq!(
19749        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).module_number as *const _ as usize },
19750        64usize,
19751        concat!(
19752            "Offset of field: ",
19753            stringify!(_zend_ini_entry),
19754            "::",
19755            stringify!(module_number)
19756        )
19757    );
19758    assert_eq!(
19759        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).modifiable as *const _ as usize },
19760        68usize,
19761        concat!(
19762            "Offset of field: ",
19763            stringify!(_zend_ini_entry),
19764            "::",
19765            stringify!(modifiable)
19766        )
19767    );
19768    assert_eq!(
19769        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).orig_modifiable as *const _ as usize },
19770        69usize,
19771        concat!(
19772            "Offset of field: ",
19773            stringify!(_zend_ini_entry),
19774            "::",
19775            stringify!(orig_modifiable)
19776        )
19777    );
19778    assert_eq!(
19779        unsafe { &(*(::std::ptr::null::<_zend_ini_entry>())).modified as *const _ as usize },
19780        70usize,
19781        concat!(
19782            "Offset of field: ",
19783            stringify!(_zend_ini_entry),
19784            "::",
19785            stringify!(modified)
19786        )
19787    );
19788}
19789extern "C" {
19790    pub fn zend_ini_startup() -> ::std::os::raw::c_int;
19791}
19792extern "C" {
19793    pub fn zend_ini_shutdown() -> ::std::os::raw::c_int;
19794}
19795extern "C" {
19796    pub fn zend_ini_global_shutdown() -> ::std::os::raw::c_int;
19797}
19798extern "C" {
19799    pub fn zend_ini_deactivate() -> ::std::os::raw::c_int;
19800}
19801extern "C" {
19802    pub fn zend_ini_dtor(ini_directives: *mut HashTable);
19803}
19804extern "C" {
19805    pub fn zend_copy_ini_directives() -> ::std::os::raw::c_int;
19806}
19807extern "C" {
19808    pub fn zend_ini_sort_entries();
19809}
19810extern "C" {
19811    pub fn zend_register_ini_entries(
19812        ini_entry: *const zend_ini_entry_def,
19813        module_number: ::std::os::raw::c_int,
19814    ) -> ::std::os::raw::c_int;
19815}
19816extern "C" {
19817    pub fn zend_unregister_ini_entries(module_number: ::std::os::raw::c_int);
19818}
19819extern "C" {
19820    pub fn zend_ini_refresh_caches(stage: ::std::os::raw::c_int);
19821}
19822extern "C" {
19823    pub fn zend_alter_ini_entry(
19824        name: *mut zend_string,
19825        new_value: *mut zend_string,
19826        modify_type: ::std::os::raw::c_int,
19827        stage: ::std::os::raw::c_int,
19828    ) -> ::std::os::raw::c_int;
19829}
19830extern "C" {
19831    pub fn zend_alter_ini_entry_ex(
19832        name: *mut zend_string,
19833        new_value: *mut zend_string,
19834        modify_type: ::std::os::raw::c_int,
19835        stage: ::std::os::raw::c_int,
19836        force_change: ::std::os::raw::c_int,
19837    ) -> ::std::os::raw::c_int;
19838}
19839extern "C" {
19840    pub fn zend_alter_ini_entry_chars(
19841        name: *mut zend_string,
19842        value: *const ::std::os::raw::c_char,
19843        value_length: size_t,
19844        modify_type: ::std::os::raw::c_int,
19845        stage: ::std::os::raw::c_int,
19846    ) -> ::std::os::raw::c_int;
19847}
19848extern "C" {
19849    pub fn zend_alter_ini_entry_chars_ex(
19850        name: *mut zend_string,
19851        value: *const ::std::os::raw::c_char,
19852        value_length: size_t,
19853        modify_type: ::std::os::raw::c_int,
19854        stage: ::std::os::raw::c_int,
19855        force_change: ::std::os::raw::c_int,
19856    ) -> ::std::os::raw::c_int;
19857}
19858extern "C" {
19859    pub fn zend_restore_ini_entry(
19860        name: *mut zend_string,
19861        stage: ::std::os::raw::c_int,
19862    ) -> ::std::os::raw::c_int;
19863}
19864extern "C" {
19865    pub fn zend_ini_long(
19866        name: *mut ::std::os::raw::c_char,
19867        name_length: size_t,
19868        orig: ::std::os::raw::c_int,
19869    ) -> zend_long;
19870}
19871extern "C" {
19872    pub fn zend_ini_double(
19873        name: *mut ::std::os::raw::c_char,
19874        name_length: size_t,
19875        orig: ::std::os::raw::c_int,
19876    ) -> f64;
19877}
19878extern "C" {
19879    pub fn zend_ini_string(
19880        name: *mut ::std::os::raw::c_char,
19881        name_length: size_t,
19882        orig: ::std::os::raw::c_int,
19883    ) -> *mut ::std::os::raw::c_char;
19884}
19885extern "C" {
19886    pub fn zend_ini_string_ex(
19887        name: *mut ::std::os::raw::c_char,
19888        name_length: size_t,
19889        orig: ::std::os::raw::c_int,
19890        exists: *mut zend_bool,
19891    ) -> *mut ::std::os::raw::c_char;
19892}
19893extern "C" {
19894    pub fn zend_ini_get_value(name: *mut zend_string) -> *mut zend_string;
19895}
19896extern "C" {
19897    pub fn zend_ini_parse_bool(str_: *mut zend_string) -> zend_bool;
19898}
19899extern "C" {
19900    pub fn zend_ini_register_displayer(
19901        name: *mut ::std::os::raw::c_char,
19902        name_length: u32,
19903        displayer: ::std::option::Option<
19904            unsafe extern "C" fn(ini_entry: *mut zend_ini_entry, type_: ::std::os::raw::c_int),
19905        >,
19906    ) -> ::std::os::raw::c_int;
19907}
19908extern "C" {
19909    pub fn zend_ini_boolean_displayer_cb(
19910        ini_entry: *mut zend_ini_entry,
19911        type_: ::std::os::raw::c_int,
19912    );
19913}
19914extern "C" {
19915    pub fn zend_ini_color_displayer_cb(
19916        ini_entry: *mut zend_ini_entry,
19917        type_: ::std::os::raw::c_int,
19918    );
19919}
19920pub type zend_ini_parser_cb_t = ::std::option::Option<
19921    unsafe extern "C" fn(
19922        arg1: *mut zval,
19923        arg2: *mut zval,
19924        arg3: *mut zval,
19925        callback_type: ::std::os::raw::c_int,
19926        arg: *mut ::std::os::raw::c_void,
19927    ),
19928>;
19929extern "C" {
19930    pub fn zend_parse_ini_file(
19931        fh: *mut zend_file_handle,
19932        unbuffered_errors: zend_bool,
19933        scanner_mode: ::std::os::raw::c_int,
19934        ini_parser_cb: zend_ini_parser_cb_t,
19935        arg: *mut ::std::os::raw::c_void,
19936    ) -> ::std::os::raw::c_int;
19937}
19938extern "C" {
19939    pub fn zend_parse_ini_string(
19940        str_: *mut ::std::os::raw::c_char,
19941        unbuffered_errors: zend_bool,
19942        scanner_mode: ::std::os::raw::c_int,
19943        ini_parser_cb: zend_ini_parser_cb_t,
19944        arg: *mut ::std::os::raw::c_void,
19945    ) -> ::std::os::raw::c_int;
19946}
19947#[repr(C)]
19948#[derive(Debug, Copy, Clone)]
19949pub struct _zend_ini_parser_param {
19950    pub ini_parser_cb: zend_ini_parser_cb_t,
19951    pub arg: *mut ::std::os::raw::c_void,
19952}
19953#[test]
19954fn bindgen_test_layout__zend_ini_parser_param() {
19955    assert_eq!(
19956        ::std::mem::size_of::<_zend_ini_parser_param>(),
19957        16usize,
19958        concat!("Size of: ", stringify!(_zend_ini_parser_param))
19959    );
19960    assert_eq!(
19961        ::std::mem::align_of::<_zend_ini_parser_param>(),
19962        8usize,
19963        concat!("Alignment of ", stringify!(_zend_ini_parser_param))
19964    );
19965    assert_eq!(
19966        unsafe {
19967            &(*(::std::ptr::null::<_zend_ini_parser_param>())).ini_parser_cb as *const _ as usize
19968        },
19969        0usize,
19970        concat!(
19971            "Offset of field: ",
19972            stringify!(_zend_ini_parser_param),
19973            "::",
19974            stringify!(ini_parser_cb)
19975        )
19976    );
19977    assert_eq!(
19978        unsafe { &(*(::std::ptr::null::<_zend_ini_parser_param>())).arg as *const _ as usize },
19979        8usize,
19980        concat!(
19981            "Offset of field: ",
19982            stringify!(_zend_ini_parser_param),
19983            "::",
19984            stringify!(arg)
19985        )
19986    );
19987}
19988pub type zend_ini_parser_param = _zend_ini_parser_param;
19989extern "C" {
19990    pub fn php_init_config() -> ::std::os::raw::c_int;
19991}
19992extern "C" {
19993    pub fn php_shutdown_config() -> ::std::os::raw::c_int;
19994}
19995extern "C" {
19996    pub fn php_ini_register_extensions();
19997}
19998extern "C" {
19999    pub fn php_parse_user_ini_file(
20000        dirname: *const ::std::os::raw::c_char,
20001        ini_filename: *mut ::std::os::raw::c_char,
20002        target_hash: *mut HashTable,
20003    ) -> ::std::os::raw::c_int;
20004}
20005extern "C" {
20006    pub fn php_ini_activate_config(
20007        source_hash: *mut HashTable,
20008        modify_type: ::std::os::raw::c_int,
20009        stage: ::std::os::raw::c_int,
20010    );
20011}
20012extern "C" {
20013    pub fn php_ini_has_per_dir_config() -> ::std::os::raw::c_int;
20014}
20015extern "C" {
20016    pub fn php_ini_has_per_host_config() -> ::std::os::raw::c_int;
20017}
20018extern "C" {
20019    pub fn php_ini_activate_per_dir_config(path: *mut ::std::os::raw::c_char, path_len: size_t);
20020}
20021extern "C" {
20022    pub fn php_ini_activate_per_host_config(host: *const ::std::os::raw::c_char, host_len: size_t);
20023}
20024extern "C" {
20025    pub fn php_ini_get_configuration_hash() -> *mut HashTable;
20026}
20027extern "C" {
20028    pub fn php_fopen_primary_script(file_handle: *mut zend_file_handle) -> ::std::os::raw::c_int;
20029}
20030extern "C" {
20031    pub fn php_check_open_basedir(path: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
20032}
20033extern "C" {
20034    pub fn php_check_open_basedir_ex(
20035        path: *const ::std::os::raw::c_char,
20036        warn: ::std::os::raw::c_int,
20037    ) -> ::std::os::raw::c_int;
20038}
20039extern "C" {
20040    pub fn php_check_specific_open_basedir(
20041        basedir: *const ::std::os::raw::c_char,
20042        path: *const ::std::os::raw::c_char,
20043    ) -> ::std::os::raw::c_int;
20044}
20045extern "C" {
20046    pub fn php_check_safe_mode_include_dir(
20047        path: *const ::std::os::raw::c_char,
20048    ) -> ::std::os::raw::c_int;
20049}
20050extern "C" {
20051    pub fn php_resolve_path(
20052        filename: *const ::std::os::raw::c_char,
20053        filename_len: size_t,
20054        path: *const ::std::os::raw::c_char,
20055    ) -> *mut zend_string;
20056}
20057extern "C" {
20058    pub fn php_fopen_with_path(
20059        filename: *const ::std::os::raw::c_char,
20060        mode: *const ::std::os::raw::c_char,
20061        path: *const ::std::os::raw::c_char,
20062        opened_path: *mut *mut zend_string,
20063    ) -> *mut FILE;
20064}
20065extern "C" {
20066    pub fn php_strip_url_passwd(path: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char;
20067}
20068#[repr(C)]
20069#[derive(Debug, Copy, Clone)]
20070pub struct _cwd_state {
20071    pub cwd: *mut ::std::os::raw::c_char,
20072    pub cwd_length: size_t,
20073}
20074#[test]
20075fn bindgen_test_layout__cwd_state() {
20076    assert_eq!(
20077        ::std::mem::size_of::<_cwd_state>(),
20078        16usize,
20079        concat!("Size of: ", stringify!(_cwd_state))
20080    );
20081    assert_eq!(
20082        ::std::mem::align_of::<_cwd_state>(),
20083        8usize,
20084        concat!("Alignment of ", stringify!(_cwd_state))
20085    );
20086    assert_eq!(
20087        unsafe { &(*(::std::ptr::null::<_cwd_state>())).cwd as *const _ as usize },
20088        0usize,
20089        concat!(
20090            "Offset of field: ",
20091            stringify!(_cwd_state),
20092            "::",
20093            stringify!(cwd)
20094        )
20095    );
20096    assert_eq!(
20097        unsafe { &(*(::std::ptr::null::<_cwd_state>())).cwd_length as *const _ as usize },
20098        8usize,
20099        concat!(
20100            "Offset of field: ",
20101            stringify!(_cwd_state),
20102            "::",
20103            stringify!(cwd_length)
20104        )
20105    );
20106}
20107pub type cwd_state = _cwd_state;
20108#[repr(C)]
20109#[derive(Debug, Copy, Clone)]
20110pub struct _realpath_cache_bucket {
20111    pub key: zend_ulong,
20112    pub path: *mut ::std::os::raw::c_char,
20113    pub realpath: *mut ::std::os::raw::c_char,
20114    pub next: *mut _realpath_cache_bucket,
20115    pub expires: time_t,
20116    pub path_len: u16,
20117    pub realpath_len: u16,
20118    pub _bitfield_align_1: [u8; 0],
20119    pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>,
20120    pub __bindgen_padding_0: [u8; 3usize],
20121}
20122#[test]
20123fn bindgen_test_layout__realpath_cache_bucket() {
20124    assert_eq!(
20125        ::std::mem::size_of::<_realpath_cache_bucket>(),
20126        48usize,
20127        concat!("Size of: ", stringify!(_realpath_cache_bucket))
20128    );
20129    assert_eq!(
20130        ::std::mem::align_of::<_realpath_cache_bucket>(),
20131        8usize,
20132        concat!("Alignment of ", stringify!(_realpath_cache_bucket))
20133    );
20134    assert_eq!(
20135        unsafe { &(*(::std::ptr::null::<_realpath_cache_bucket>())).key as *const _ as usize },
20136        0usize,
20137        concat!(
20138            "Offset of field: ",
20139            stringify!(_realpath_cache_bucket),
20140            "::",
20141            stringify!(key)
20142        )
20143    );
20144    assert_eq!(
20145        unsafe { &(*(::std::ptr::null::<_realpath_cache_bucket>())).path as *const _ as usize },
20146        8usize,
20147        concat!(
20148            "Offset of field: ",
20149            stringify!(_realpath_cache_bucket),
20150            "::",
20151            stringify!(path)
20152        )
20153    );
20154    assert_eq!(
20155        unsafe { &(*(::std::ptr::null::<_realpath_cache_bucket>())).realpath as *const _ as usize },
20156        16usize,
20157        concat!(
20158            "Offset of field: ",
20159            stringify!(_realpath_cache_bucket),
20160            "::",
20161            stringify!(realpath)
20162        )
20163    );
20164    assert_eq!(
20165        unsafe { &(*(::std::ptr::null::<_realpath_cache_bucket>())).next as *const _ as usize },
20166        24usize,
20167        concat!(
20168            "Offset of field: ",
20169            stringify!(_realpath_cache_bucket),
20170            "::",
20171            stringify!(next)
20172        )
20173    );
20174    assert_eq!(
20175        unsafe { &(*(::std::ptr::null::<_realpath_cache_bucket>())).expires as *const _ as usize },
20176        32usize,
20177        concat!(
20178            "Offset of field: ",
20179            stringify!(_realpath_cache_bucket),
20180            "::",
20181            stringify!(expires)
20182        )
20183    );
20184    assert_eq!(
20185        unsafe { &(*(::std::ptr::null::<_realpath_cache_bucket>())).path_len as *const _ as usize },
20186        40usize,
20187        concat!(
20188            "Offset of field: ",
20189            stringify!(_realpath_cache_bucket),
20190            "::",
20191            stringify!(path_len)
20192        )
20193    );
20194    assert_eq!(
20195        unsafe {
20196            &(*(::std::ptr::null::<_realpath_cache_bucket>())).realpath_len as *const _ as usize
20197        },
20198        42usize,
20199        concat!(
20200            "Offset of field: ",
20201            stringify!(_realpath_cache_bucket),
20202            "::",
20203            stringify!(realpath_len)
20204        )
20205    );
20206}
20207impl _realpath_cache_bucket {
20208    #[inline]
20209    pub fn is_dir(&self) -> u8 {
20210        unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u8) }
20211    }
20212    #[inline]
20213    pub fn set_is_dir(&mut self, val: u8) {
20214        unsafe {
20215            let val: u8 = ::std::mem::transmute(val);
20216            self._bitfield_1.set(0usize, 1u8, val as u64)
20217        }
20218    }
20219    #[inline]
20220    pub fn new_bitfield_1(is_dir: u8) -> __BindgenBitfieldUnit<[u8; 1usize]> {
20221        let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default();
20222        __bindgen_bitfield_unit.set(0usize, 1u8, {
20223            let is_dir: u8 = unsafe { ::std::mem::transmute(is_dir) };
20224            is_dir as u64
20225        });
20226        __bindgen_bitfield_unit
20227    }
20228}
20229pub type realpath_cache_bucket = _realpath_cache_bucket;
20230#[repr(C)]
20231#[derive(Copy, Clone)]
20232pub struct _virtual_cwd_globals {
20233    pub cwd: cwd_state,
20234    pub realpath_cache_size: zend_long,
20235    pub realpath_cache_size_limit: zend_long,
20236    pub realpath_cache_ttl: zend_long,
20237    pub realpath_cache: [*mut realpath_cache_bucket; 1024usize],
20238}
20239#[test]
20240fn bindgen_test_layout__virtual_cwd_globals() {
20241    assert_eq!(
20242        ::std::mem::size_of::<_virtual_cwd_globals>(),
20243        8232usize,
20244        concat!("Size of: ", stringify!(_virtual_cwd_globals))
20245    );
20246    assert_eq!(
20247        ::std::mem::align_of::<_virtual_cwd_globals>(),
20248        8usize,
20249        concat!("Alignment of ", stringify!(_virtual_cwd_globals))
20250    );
20251    assert_eq!(
20252        unsafe { &(*(::std::ptr::null::<_virtual_cwd_globals>())).cwd as *const _ as usize },
20253        0usize,
20254        concat!(
20255            "Offset of field: ",
20256            stringify!(_virtual_cwd_globals),
20257            "::",
20258            stringify!(cwd)
20259        )
20260    );
20261    assert_eq!(
20262        unsafe {
20263            &(*(::std::ptr::null::<_virtual_cwd_globals>())).realpath_cache_size as *const _
20264                as usize
20265        },
20266        16usize,
20267        concat!(
20268            "Offset of field: ",
20269            stringify!(_virtual_cwd_globals),
20270            "::",
20271            stringify!(realpath_cache_size)
20272        )
20273    );
20274    assert_eq!(
20275        unsafe {
20276            &(*(::std::ptr::null::<_virtual_cwd_globals>())).realpath_cache_size_limit as *const _
20277                as usize
20278        },
20279        24usize,
20280        concat!(
20281            "Offset of field: ",
20282            stringify!(_virtual_cwd_globals),
20283            "::",
20284            stringify!(realpath_cache_size_limit)
20285        )
20286    );
20287    assert_eq!(
20288        unsafe {
20289            &(*(::std::ptr::null::<_virtual_cwd_globals>())).realpath_cache_ttl as *const _ as usize
20290        },
20291        32usize,
20292        concat!(
20293            "Offset of field: ",
20294            stringify!(_virtual_cwd_globals),
20295            "::",
20296            stringify!(realpath_cache_ttl)
20297        )
20298    );
20299    assert_eq!(
20300        unsafe {
20301            &(*(::std::ptr::null::<_virtual_cwd_globals>())).realpath_cache as *const _ as usize
20302        },
20303        40usize,
20304        concat!(
20305            "Offset of field: ",
20306            stringify!(_virtual_cwd_globals),
20307            "::",
20308            stringify!(realpath_cache)
20309        )
20310    );
20311}
20312pub type virtual_cwd_globals = _virtual_cwd_globals;
20313extern "C" {
20314    pub static mut cwd_globals: virtual_cwd_globals;
20315}
20316#[repr(C)]
20317#[derive(Copy, Clone)]
20318pub struct _zend_constant {
20319    pub value: zval,
20320    pub name: *mut zend_string,
20321}
20322#[test]
20323fn bindgen_test_layout__zend_constant() {
20324    assert_eq!(
20325        ::std::mem::size_of::<_zend_constant>(),
20326        24usize,
20327        concat!("Size of: ", stringify!(_zend_constant))
20328    );
20329    assert_eq!(
20330        ::std::mem::align_of::<_zend_constant>(),
20331        8usize,
20332        concat!("Alignment of ", stringify!(_zend_constant))
20333    );
20334    assert_eq!(
20335        unsafe { &(*(::std::ptr::null::<_zend_constant>())).value as *const _ as usize },
20336        0usize,
20337        concat!(
20338            "Offset of field: ",
20339            stringify!(_zend_constant),
20340            "::",
20341            stringify!(value)
20342        )
20343    );
20344    assert_eq!(
20345        unsafe { &(*(::std::ptr::null::<_zend_constant>())).name as *const _ as usize },
20346        16usize,
20347        concat!(
20348            "Offset of field: ",
20349            stringify!(_zend_constant),
20350            "::",
20351            stringify!(name)
20352        )
20353    );
20354}
20355pub type zend_constant = _zend_constant;
20356extern "C" {
20357    pub fn zend_startup_constants() -> ::std::os::raw::c_int;
20358}
20359extern "C" {
20360    pub fn zend_shutdown_constants() -> ::std::os::raw::c_int;
20361}
20362extern "C" {
20363    pub fn zend_register_standard_constants();
20364}
20365extern "C" {
20366    pub fn zend_verify_const_access(
20367        c: *mut zend_class_constant,
20368        ce: *mut zend_class_entry,
20369    ) -> ::std::os::raw::c_int;
20370}
20371extern "C" {
20372    pub fn zend_get_constant(name: *mut zend_string) -> *mut zval;
20373}
20374extern "C" {
20375    pub fn zend_get_constant_str(
20376        name: *const ::std::os::raw::c_char,
20377        name_len: size_t,
20378    ) -> *mut zval;
20379}
20380extern "C" {
20381    pub fn zend_get_constant_ex(
20382        name: *mut zend_string,
20383        scope: *mut zend_class_entry,
20384        flags: u32,
20385    ) -> *mut zval;
20386}
20387extern "C" {
20388    pub fn zend_register_bool_constant(
20389        name: *const ::std::os::raw::c_char,
20390        name_len: size_t,
20391        bval: zend_bool,
20392        flags: ::std::os::raw::c_int,
20393        module_number: ::std::os::raw::c_int,
20394    );
20395}
20396extern "C" {
20397    pub fn zend_register_null_constant(
20398        name: *const ::std::os::raw::c_char,
20399        name_len: size_t,
20400        flags: ::std::os::raw::c_int,
20401        module_number: ::std::os::raw::c_int,
20402    );
20403}
20404extern "C" {
20405    pub fn zend_register_long_constant(
20406        name: *const ::std::os::raw::c_char,
20407        name_len: size_t,
20408        lval: zend_long,
20409        flags: ::std::os::raw::c_int,
20410        module_number: ::std::os::raw::c_int,
20411    );
20412}
20413extern "C" {
20414    pub fn zend_register_double_constant(
20415        name: *const ::std::os::raw::c_char,
20416        name_len: size_t,
20417        dval: f64,
20418        flags: ::std::os::raw::c_int,
20419        module_number: ::std::os::raw::c_int,
20420    );
20421}
20422extern "C" {
20423    pub fn zend_register_string_constant(
20424        name: *const ::std::os::raw::c_char,
20425        name_len: size_t,
20426        strval: *mut ::std::os::raw::c_char,
20427        flags: ::std::os::raw::c_int,
20428        module_number: ::std::os::raw::c_int,
20429    );
20430}
20431extern "C" {
20432    pub fn zend_register_stringl_constant(
20433        name: *const ::std::os::raw::c_char,
20434        name_len: size_t,
20435        strval: *mut ::std::os::raw::c_char,
20436        strlen: size_t,
20437        flags: ::std::os::raw::c_int,
20438        module_number: ::std::os::raw::c_int,
20439    );
20440}
20441extern "C" {
20442    pub fn zend_register_constant(c: *mut zend_constant) -> ::std::os::raw::c_int;
20443}
20444extern "C" {
20445    pub fn php_info_html_esc(string: *mut ::std::os::raw::c_char) -> *mut zend_string;
20446}
20447extern "C" {
20448    pub fn php_info_html_esc_write(
20449        string: *mut ::std::os::raw::c_char,
20450        str_len: ::std::os::raw::c_int,
20451    );
20452}
20453extern "C" {
20454    pub fn php_print_info_htmlhead();
20455}
20456extern "C" {
20457    pub fn php_print_info(flag: ::std::os::raw::c_int);
20458}
20459extern "C" {
20460    pub fn php_print_style();
20461}
20462extern "C" {
20463    pub fn php_info_print_style();
20464}
20465extern "C" {
20466    pub fn php_info_print_table_colspan_header(
20467        num_cols: ::std::os::raw::c_int,
20468        header: *mut ::std::os::raw::c_char,
20469    );
20470}
20471extern "C" {
20472    pub fn php_info_print_table_header(num_cols: ::std::os::raw::c_int, ...);
20473}
20474extern "C" {
20475    pub fn php_info_print_table_row(num_cols: ::std::os::raw::c_int, ...);
20476}
20477extern "C" {
20478    pub fn php_info_print_table_row_ex(
20479        num_cols: ::std::os::raw::c_int,
20480        arg1: *const ::std::os::raw::c_char,
20481        ...
20482    );
20483}
20484extern "C" {
20485    pub fn php_info_print_table_start();
20486}
20487extern "C" {
20488    pub fn php_info_print_table_end();
20489}
20490extern "C" {
20491    pub fn php_info_print_box_start(bg: ::std::os::raw::c_int);
20492}
20493extern "C" {
20494    pub fn php_info_print_box_end();
20495}
20496extern "C" {
20497    pub fn php_info_print_hr();
20498}
20499extern "C" {
20500    pub fn php_info_print_module(module: *mut zend_module_entry);
20501}
20502extern "C" {
20503    pub fn php_get_uname(mode: ::std::os::raw::c_char) -> *mut zend_string;
20504}
20505#[repr(C)]
20506#[derive(Debug, Copy, Clone)]
20507pub struct _zend_extension_version_info {
20508    pub zend_extension_api_no: ::std::os::raw::c_int,
20509    pub build_id: *mut ::std::os::raw::c_char,
20510}
20511#[test]
20512fn bindgen_test_layout__zend_extension_version_info() {
20513    assert_eq!(
20514        ::std::mem::size_of::<_zend_extension_version_info>(),
20515        16usize,
20516        concat!("Size of: ", stringify!(_zend_extension_version_info))
20517    );
20518    assert_eq!(
20519        ::std::mem::align_of::<_zend_extension_version_info>(),
20520        8usize,
20521        concat!("Alignment of ", stringify!(_zend_extension_version_info))
20522    );
20523    assert_eq!(
20524        unsafe {
20525            &(*(::std::ptr::null::<_zend_extension_version_info>())).zend_extension_api_no
20526                as *const _ as usize
20527        },
20528        0usize,
20529        concat!(
20530            "Offset of field: ",
20531            stringify!(_zend_extension_version_info),
20532            "::",
20533            stringify!(zend_extension_api_no)
20534        )
20535    );
20536    assert_eq!(
20537        unsafe {
20538            &(*(::std::ptr::null::<_zend_extension_version_info>())).build_id as *const _ as usize
20539        },
20540        8usize,
20541        concat!(
20542            "Offset of field: ",
20543            stringify!(_zend_extension_version_info),
20544            "::",
20545            stringify!(build_id)
20546        )
20547    );
20548}
20549pub type zend_extension_version_info = _zend_extension_version_info;
20550pub type zend_extension = _zend_extension;
20551pub type startup_func_t = ::std::option::Option<
20552    unsafe extern "C" fn(extension: *mut zend_extension) -> ::std::os::raw::c_int,
20553>;
20554pub type shutdown_func_t =
20555    ::std::option::Option<unsafe extern "C" fn(extension: *mut zend_extension)>;
20556pub type activate_func_t = ::std::option::Option<unsafe extern "C" fn()>;
20557pub type deactivate_func_t = ::std::option::Option<unsafe extern "C" fn()>;
20558pub type message_handler_func_t = ::std::option::Option<
20559    unsafe extern "C" fn(message: ::std::os::raw::c_int, arg: *mut ::std::os::raw::c_void),
20560>;
20561pub type op_array_handler_func_t =
20562    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
20563pub type statement_handler_func_t =
20564    ::std::option::Option<unsafe extern "C" fn(frame: *mut zend_execute_data)>;
20565pub type fcall_begin_handler_func_t =
20566    ::std::option::Option<unsafe extern "C" fn(frame: *mut zend_execute_data)>;
20567pub type fcall_end_handler_func_t =
20568    ::std::option::Option<unsafe extern "C" fn(frame: *mut zend_execute_data)>;
20569pub type op_array_ctor_func_t =
20570    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
20571pub type op_array_dtor_func_t =
20572    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array)>;
20573pub type op_array_persist_calc_func_t =
20574    ::std::option::Option<unsafe extern "C" fn(op_array: *mut zend_op_array) -> size_t>;
20575pub type op_array_persist_func_t = ::std::option::Option<
20576    unsafe extern "C" fn(op_array: *mut zend_op_array, mem: *mut ::std::os::raw::c_void) -> size_t,
20577>;
20578#[repr(C)]
20579#[derive(Debug, Copy, Clone)]
20580pub struct _zend_extension {
20581    pub name: *mut ::std::os::raw::c_char,
20582    pub version: *mut ::std::os::raw::c_char,
20583    pub author: *mut ::std::os::raw::c_char,
20584    pub URL: *mut ::std::os::raw::c_char,
20585    pub copyright: *mut ::std::os::raw::c_char,
20586    pub startup: startup_func_t,
20587    pub shutdown: shutdown_func_t,
20588    pub activate: activate_func_t,
20589    pub deactivate: deactivate_func_t,
20590    pub message_handler: message_handler_func_t,
20591    pub op_array_handler: op_array_handler_func_t,
20592    pub statement_handler: statement_handler_func_t,
20593    pub fcall_begin_handler: fcall_begin_handler_func_t,
20594    pub fcall_end_handler: fcall_end_handler_func_t,
20595    pub op_array_ctor: op_array_ctor_func_t,
20596    pub op_array_dtor: op_array_dtor_func_t,
20597    pub api_no_check: ::std::option::Option<
20598        unsafe extern "C" fn(api_no: ::std::os::raw::c_int) -> ::std::os::raw::c_int,
20599    >,
20600    pub build_id_check: ::std::option::Option<
20601        unsafe extern "C" fn(build_id: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int,
20602    >,
20603    pub op_array_persist_calc: op_array_persist_calc_func_t,
20604    pub op_array_persist: op_array_persist_func_t,
20605    pub reserved5: *mut ::std::os::raw::c_void,
20606    pub reserved6: *mut ::std::os::raw::c_void,
20607    pub reserved7: *mut ::std::os::raw::c_void,
20608    pub reserved8: *mut ::std::os::raw::c_void,
20609    pub handle: *mut ::std::os::raw::c_void,
20610    pub resource_number: ::std::os::raw::c_int,
20611}
20612#[test]
20613fn bindgen_test_layout__zend_extension() {
20614    assert_eq!(
20615        ::std::mem::size_of::<_zend_extension>(),
20616        208usize,
20617        concat!("Size of: ", stringify!(_zend_extension))
20618    );
20619    assert_eq!(
20620        ::std::mem::align_of::<_zend_extension>(),
20621        8usize,
20622        concat!("Alignment of ", stringify!(_zend_extension))
20623    );
20624    assert_eq!(
20625        unsafe { &(*(::std::ptr::null::<_zend_extension>())).name as *const _ as usize },
20626        0usize,
20627        concat!(
20628            "Offset of field: ",
20629            stringify!(_zend_extension),
20630            "::",
20631            stringify!(name)
20632        )
20633    );
20634    assert_eq!(
20635        unsafe { &(*(::std::ptr::null::<_zend_extension>())).version as *const _ as usize },
20636        8usize,
20637        concat!(
20638            "Offset of field: ",
20639            stringify!(_zend_extension),
20640            "::",
20641            stringify!(version)
20642        )
20643    );
20644    assert_eq!(
20645        unsafe { &(*(::std::ptr::null::<_zend_extension>())).author as *const _ as usize },
20646        16usize,
20647        concat!(
20648            "Offset of field: ",
20649            stringify!(_zend_extension),
20650            "::",
20651            stringify!(author)
20652        )
20653    );
20654    assert_eq!(
20655        unsafe { &(*(::std::ptr::null::<_zend_extension>())).URL as *const _ as usize },
20656        24usize,
20657        concat!(
20658            "Offset of field: ",
20659            stringify!(_zend_extension),
20660            "::",
20661            stringify!(URL)
20662        )
20663    );
20664    assert_eq!(
20665        unsafe { &(*(::std::ptr::null::<_zend_extension>())).copyright as *const _ as usize },
20666        32usize,
20667        concat!(
20668            "Offset of field: ",
20669            stringify!(_zend_extension),
20670            "::",
20671            stringify!(copyright)
20672        )
20673    );
20674    assert_eq!(
20675        unsafe { &(*(::std::ptr::null::<_zend_extension>())).startup as *const _ as usize },
20676        40usize,
20677        concat!(
20678            "Offset of field: ",
20679            stringify!(_zend_extension),
20680            "::",
20681            stringify!(startup)
20682        )
20683    );
20684    assert_eq!(
20685        unsafe { &(*(::std::ptr::null::<_zend_extension>())).shutdown as *const _ as usize },
20686        48usize,
20687        concat!(
20688            "Offset of field: ",
20689            stringify!(_zend_extension),
20690            "::",
20691            stringify!(shutdown)
20692        )
20693    );
20694    assert_eq!(
20695        unsafe { &(*(::std::ptr::null::<_zend_extension>())).activate as *const _ as usize },
20696        56usize,
20697        concat!(
20698            "Offset of field: ",
20699            stringify!(_zend_extension),
20700            "::",
20701            stringify!(activate)
20702        )
20703    );
20704    assert_eq!(
20705        unsafe { &(*(::std::ptr::null::<_zend_extension>())).deactivate as *const _ as usize },
20706        64usize,
20707        concat!(
20708            "Offset of field: ",
20709            stringify!(_zend_extension),
20710            "::",
20711            stringify!(deactivate)
20712        )
20713    );
20714    assert_eq!(
20715        unsafe { &(*(::std::ptr::null::<_zend_extension>())).message_handler as *const _ as usize },
20716        72usize,
20717        concat!(
20718            "Offset of field: ",
20719            stringify!(_zend_extension),
20720            "::",
20721            stringify!(message_handler)
20722        )
20723    );
20724    assert_eq!(
20725        unsafe {
20726            &(*(::std::ptr::null::<_zend_extension>())).op_array_handler as *const _ as usize
20727        },
20728        80usize,
20729        concat!(
20730            "Offset of field: ",
20731            stringify!(_zend_extension),
20732            "::",
20733            stringify!(op_array_handler)
20734        )
20735    );
20736    assert_eq!(
20737        unsafe {
20738            &(*(::std::ptr::null::<_zend_extension>())).statement_handler as *const _ as usize
20739        },
20740        88usize,
20741        concat!(
20742            "Offset of field: ",
20743            stringify!(_zend_extension),
20744            "::",
20745            stringify!(statement_handler)
20746        )
20747    );
20748    assert_eq!(
20749        unsafe {
20750            &(*(::std::ptr::null::<_zend_extension>())).fcall_begin_handler as *const _ as usize
20751        },
20752        96usize,
20753        concat!(
20754            "Offset of field: ",
20755            stringify!(_zend_extension),
20756            "::",
20757            stringify!(fcall_begin_handler)
20758        )
20759    );
20760    assert_eq!(
20761        unsafe {
20762            &(*(::std::ptr::null::<_zend_extension>())).fcall_end_handler as *const _ as usize
20763        },
20764        104usize,
20765        concat!(
20766            "Offset of field: ",
20767            stringify!(_zend_extension),
20768            "::",
20769            stringify!(fcall_end_handler)
20770        )
20771    );
20772    assert_eq!(
20773        unsafe { &(*(::std::ptr::null::<_zend_extension>())).op_array_ctor as *const _ as usize },
20774        112usize,
20775        concat!(
20776            "Offset of field: ",
20777            stringify!(_zend_extension),
20778            "::",
20779            stringify!(op_array_ctor)
20780        )
20781    );
20782    assert_eq!(
20783        unsafe { &(*(::std::ptr::null::<_zend_extension>())).op_array_dtor as *const _ as usize },
20784        120usize,
20785        concat!(
20786            "Offset of field: ",
20787            stringify!(_zend_extension),
20788            "::",
20789            stringify!(op_array_dtor)
20790        )
20791    );
20792    assert_eq!(
20793        unsafe { &(*(::std::ptr::null::<_zend_extension>())).api_no_check as *const _ as usize },
20794        128usize,
20795        concat!(
20796            "Offset of field: ",
20797            stringify!(_zend_extension),
20798            "::",
20799            stringify!(api_no_check)
20800        )
20801    );
20802    assert_eq!(
20803        unsafe { &(*(::std::ptr::null::<_zend_extension>())).build_id_check as *const _ as usize },
20804        136usize,
20805        concat!(
20806            "Offset of field: ",
20807            stringify!(_zend_extension),
20808            "::",
20809            stringify!(build_id_check)
20810        )
20811    );
20812    assert_eq!(
20813        unsafe {
20814            &(*(::std::ptr::null::<_zend_extension>())).op_array_persist_calc as *const _ as usize
20815        },
20816        144usize,
20817        concat!(
20818            "Offset of field: ",
20819            stringify!(_zend_extension),
20820            "::",
20821            stringify!(op_array_persist_calc)
20822        )
20823    );
20824    assert_eq!(
20825        unsafe {
20826            &(*(::std::ptr::null::<_zend_extension>())).op_array_persist as *const _ as usize
20827        },
20828        152usize,
20829        concat!(
20830            "Offset of field: ",
20831            stringify!(_zend_extension),
20832            "::",
20833            stringify!(op_array_persist)
20834        )
20835    );
20836    assert_eq!(
20837        unsafe { &(*(::std::ptr::null::<_zend_extension>())).reserved5 as *const _ as usize },
20838        160usize,
20839        concat!(
20840            "Offset of field: ",
20841            stringify!(_zend_extension),
20842            "::",
20843            stringify!(reserved5)
20844        )
20845    );
20846    assert_eq!(
20847        unsafe { &(*(::std::ptr::null::<_zend_extension>())).reserved6 as *const _ as usize },
20848        168usize,
20849        concat!(
20850            "Offset of field: ",
20851            stringify!(_zend_extension),
20852            "::",
20853            stringify!(reserved6)
20854        )
20855    );
20856    assert_eq!(
20857        unsafe { &(*(::std::ptr::null::<_zend_extension>())).reserved7 as *const _ as usize },
20858        176usize,
20859        concat!(
20860            "Offset of field: ",
20861            stringify!(_zend_extension),
20862            "::",
20863            stringify!(reserved7)
20864        )
20865    );
20866    assert_eq!(
20867        unsafe { &(*(::std::ptr::null::<_zend_extension>())).reserved8 as *const _ as usize },
20868        184usize,
20869        concat!(
20870            "Offset of field: ",
20871            stringify!(_zend_extension),
20872            "::",
20873            stringify!(reserved8)
20874        )
20875    );
20876    assert_eq!(
20877        unsafe { &(*(::std::ptr::null::<_zend_extension>())).handle as *const _ as usize },
20878        192usize,
20879        concat!(
20880            "Offset of field: ",
20881            stringify!(_zend_extension),
20882            "::",
20883            stringify!(handle)
20884        )
20885    );
20886    assert_eq!(
20887        unsafe { &(*(::std::ptr::null::<_zend_extension>())).resource_number as *const _ as usize },
20888        200usize,
20889        concat!(
20890            "Offset of field: ",
20891            stringify!(_zend_extension),
20892            "::",
20893            stringify!(resource_number)
20894        )
20895    );
20896}
20897extern "C" {
20898    pub fn zend_get_resource_handle(extension: *mut zend_extension) -> ::std::os::raw::c_int;
20899}
20900extern "C" {
20901    pub fn zend_extension_dispatch_message(
20902        message: ::std::os::raw::c_int,
20903        arg: *mut ::std::os::raw::c_void,
20904    );
20905}
20906extern "C" {
20907    pub static mut zend_extensions: zend_llist;
20908}
20909extern "C" {
20910    pub static mut zend_extension_flags: u32;
20911}
20912extern "C" {
20913    pub fn zend_extension_dtor(extension: *mut zend_extension);
20914}
20915extern "C" {
20916    pub fn zend_append_version_info(extension: *const zend_extension);
20917}
20918extern "C" {
20919    pub fn zend_startup_extensions_mechanism() -> ::std::os::raw::c_int;
20920}
20921extern "C" {
20922    pub fn zend_startup_extensions() -> ::std::os::raw::c_int;
20923}
20924extern "C" {
20925    pub fn zend_shutdown_extensions();
20926}
20927extern "C" {
20928    pub fn zend_load_extension(path: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
20929}
20930extern "C" {
20931    pub fn zend_load_extension_handle(
20932        handle: *mut ::std::os::raw::c_void,
20933        path: *const ::std::os::raw::c_char,
20934    ) -> ::std::os::raw::c_int;
20935}
20936extern "C" {
20937    pub fn zend_register_extension(
20938        new_extension: *mut zend_extension,
20939        handle: *mut ::std::os::raw::c_void,
20940    ) -> ::std::os::raw::c_int;
20941}
20942extern "C" {
20943    pub fn zend_get_extension(extension_name: *const ::std::os::raw::c_char)
20944        -> *mut zend_extension;
20945}
20946extern "C" {
20947    pub fn zend_extensions_op_array_persist_calc(op_array: *mut zend_op_array) -> size_t;
20948}
20949extern "C" {
20950    pub fn zend_extensions_op_array_persist(
20951        op_array: *mut zend_op_array,
20952        mem: *mut ::std::os::raw::c_void,
20953    ) -> size_t;
20954}
20955pub const ZEND_MODULE_BUILD_ID_: &'static [u8; 16usize] = b"API20180731,NTS\0";
20956pub type __builtin_va_list = [__va_list_tag; 1usize];
20957#[repr(C)]
20958#[derive(Debug, Copy, Clone)]
20959pub struct __va_list_tag {
20960    pub gp_offset: ::std::os::raw::c_uint,
20961    pub fp_offset: ::std::os::raw::c_uint,
20962    pub overflow_arg_area: *mut ::std::os::raw::c_void,
20963    pub reg_save_area: *mut ::std::os::raw::c_void,
20964}
20965#[test]
20966fn bindgen_test_layout___va_list_tag() {
20967    assert_eq!(
20968        ::std::mem::size_of::<__va_list_tag>(),
20969        24usize,
20970        concat!("Size of: ", stringify!(__va_list_tag))
20971    );
20972    assert_eq!(
20973        ::std::mem::align_of::<__va_list_tag>(),
20974        8usize,
20975        concat!("Alignment of ", stringify!(__va_list_tag))
20976    );
20977    assert_eq!(
20978        unsafe { &(*(::std::ptr::null::<__va_list_tag>())).gp_offset as *const _ as usize },
20979        0usize,
20980        concat!(
20981            "Offset of field: ",
20982            stringify!(__va_list_tag),
20983            "::",
20984            stringify!(gp_offset)
20985        )
20986    );
20987    assert_eq!(
20988        unsafe { &(*(::std::ptr::null::<__va_list_tag>())).fp_offset as *const _ as usize },
20989        4usize,
20990        concat!(
20991            "Offset of field: ",
20992            stringify!(__va_list_tag),
20993            "::",
20994            stringify!(fp_offset)
20995        )
20996    );
20997    assert_eq!(
20998        unsafe { &(*(::std::ptr::null::<__va_list_tag>())).overflow_arg_area as *const _ as usize },
20999        8usize,
21000        concat!(
21001            "Offset of field: ",
21002            stringify!(__va_list_tag),
21003            "::",
21004            stringify!(overflow_arg_area)
21005        )
21006    );
21007    assert_eq!(
21008        unsafe { &(*(::std::ptr::null::<__va_list_tag>())).reg_save_area as *const _ as usize },
21009        16usize,
21010        concat!(
21011            "Offset of field: ",
21012            stringify!(__va_list_tag),
21013            "::",
21014            stringify!(reg_save_area)
21015        )
21016    );
21017}