@@ -83,17 +83,31 @@ ZEND_ARG_VARIADIC_INFO(0, v) \
83
83
ZEND_END_ARG_INFO()
84
84
85
85
#if PHP_VERSION_ID >= 80000
86
- #define DS_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX (name , pass_by_ref , required_num_args , class_name , allow_null ) \
86
+ #define DS_BEGIN_ARG_WITH_RETURN_DS_INFO_EX (name , pass_by_ref , required_num_args , class_name , allow_null ) \
87
87
static const zend_internal_arg_info arginfo_##name[] = { \
88
88
{ (const char*)(zend_uintptr_t)(required_num_args), ZEND_TYPE_INIT_CLASS_CONST(PHP_DS_NS_NAME#class_name, allow_null, 0), pass_by_ref},
89
89
#elif PHP_VERSION_ID >= 70200
90
+ #define DS_BEGIN_ARG_WITH_RETURN_DS_INFO_EX (name , pass_by_ref , required_num_args , class_name , allow_null ) \
91
+ static const zend_internal_arg_info arginfo_##name[] = { \
92
+ { (const char*)(zend_uintptr_t)(required_num_args), ZEND_TYPE_ENCODE_CLASS_CONST(PHP_DS_NS_NAME#class_name, allow_null), pass_by_ref, 0 },
93
+ #else
94
+ #define DS_BEGIN_ARG_WITH_RETURN_DS_INFO_EX (name , pass_by_ref , required_num_args , class_name , allow_null ) \
95
+ static const zend_internal_arg_info arginfo_##name[] = { \
96
+ { (const char*)(zend_uintptr_t)(required_num_args), PHP_DS_NS_NAME#class_name, IS_OBJECT, pass_by_ref, allow_null, 0 },
97
+ #endif
98
+
99
+ #if PHP_VERSION_ID >= 80000
100
+ #define DS_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX (name , pass_by_ref , required_num_args , class_name , allow_null ) \
101
+ static const zend_internal_arg_info arginfo_##name[] = { \
102
+ { (const char*)(zend_uintptr_t)(required_num_args), ZEND_TYPE_INIT_CLASS_CONST(class_name, allow_null, 0), pass_by_ref},
103
+ #elif PHP_VERSION_ID >= 70200
90
104
#define DS_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX (name , pass_by_ref , required_num_args , class_name , allow_null ) \
91
105
static const zend_internal_arg_info arginfo_##name[] = { \
92
- { (const char*)(zend_uintptr_t)(required_num_args), ZEND_TYPE_ENCODE_CLASS_CONST(PHP_DS_NS_NAME# class_name, allow_null), pass_by_ref, 0 },
106
+ { (const char*)(zend_uintptr_t)(required_num_args), ZEND_TYPE_ENCODE_CLASS_CONST(class_name, allow_null), pass_by_ref, 0 },
93
107
#else
94
108
#define DS_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX (name , pass_by_ref , required_num_args , class_name , allow_null ) \
95
109
static const zend_internal_arg_info arginfo_##name[] = { \
96
- { (const char*)(zend_uintptr_t)(required_num_args), PHP_DS_NS_NAME# class_name, IS_OBJECT, pass_by_ref, allow_null, 0 },
110
+ { (const char*)(zend_uintptr_t)(required_num_args), class_name, IS_OBJECT, pass_by_ref, allow_null, 0 },
97
111
#endif
98
112
99
113
#if PHP_VERSION_ID >= 80000
@@ -116,12 +130,12 @@ ZEND_END_ARG_INFO()
116
130
ZEND_END_ARG_INFO()
117
131
118
132
#define ARGINFO_CALLABLE_RETURN_DS (name , c , col ) \
119
- DS_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX (name, 0, 1, col, 0) \
133
+ DS_BEGIN_ARG_WITH_RETURN_DS_INFO_EX (name, 0, 1, col, 0) \
120
134
ZEND_ARG_TYPE_INFO(0, c, IS_CALLABLE, 0) \
121
135
ZEND_END_ARG_INFO()
122
136
123
137
#define ARGINFO_OPTIONAL_ZVAL_RETURN_DS (name , z , col ) \
124
- DS_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX (name, 0, 0, col, 0) \
138
+ DS_BEGIN_ARG_WITH_RETURN_DS_INFO_EX (name, 0, 0, col, 0) \
125
139
ZEND_ARG_INFO(0, z) \
126
140
ZEND_END_ARG_INFO()
127
141
@@ -131,23 +145,23 @@ ZEND_END_ARG_INFO()
131
145
ZEND_END_ARG_INFO()
132
146
133
147
#define ARGINFO_ZVAL_RETURN_DS (name , z , col ) \
134
- DS_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX (name, 0, 1, col, 0) \
148
+ DS_BEGIN_ARG_WITH_RETURN_DS_INFO_EX (name, 0, 1, col, 0) \
135
149
ZEND_ARG_INFO(0, z) \
136
150
ZEND_END_ARG_INFO()
137
151
138
152
#define ARGINFO_OPTIONAL_CALLABLE_RETURN_DS (name , c , col ) \
139
- DS_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX (name, 0, 0, col, 0) \
153
+ DS_BEGIN_ARG_WITH_RETURN_DS_INFO_EX (name, 0, 0, col, 0) \
140
154
ZEND_ARG_TYPE_INFO(0, c, IS_CALLABLE, 1) \
141
155
ZEND_END_ARG_INFO()
142
156
143
157
#define ARGINFO_LONG_OPTIONAL_LONG_RETURN_DS (name , i1 , i2 , col ) \
144
- DS_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX (name, 0, 1, col, 0) \
158
+ DS_BEGIN_ARG_WITH_RETURN_DS_INFO_EX (name, 0, 1, col, 0) \
145
159
ZEND_ARG_TYPE_INFO(0, i1, IS_LONG, 0) \
146
160
ZEND_ARG_TYPE_INFO(0, i2, IS_LONG, 1) \
147
161
ZEND_END_ARG_INFO()
148
162
149
163
#define ARGINFO_LONG_RETURN_DS (name , i , col ) \
150
- DS_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX (name, 0, 1, col, 0) \
164
+ DS_BEGIN_ARG_WITH_RETURN_DS_INFO_EX (name, 0, 1, col, 0) \
151
165
ZEND_ARG_TYPE_INFO(0, i, IS_LONG, 0) \
152
166
ZEND_END_ARG_INFO()
153
167
@@ -160,11 +174,11 @@ ZEND_END_ARG_INFO()
160
174
ZEND_END_ARG_INFO()
161
175
162
176
#define ARGINFO_NONE_RETURN_DS (name , class_name ) \
163
- DS_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX (name, 0, 0, class_name, 0) \
177
+ DS_BEGIN_ARG_WITH_RETURN_DS_INFO_EX (name, 0, 0, class_name, 0) \
164
178
ZEND_END_ARG_INFO()
165
179
166
180
#define ARGINFO_NONE_RETURN_OBJ (name , class_name ) \
167
- DS_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(name, 0, 0, class_name, 1) \
181
+ DS_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(name, 0, 0, # class_name, 1) \
168
182
ZEND_END_ARG_INFO()
169
183
170
184
#define ARGINFO_NONE_RETURN_BOOL (name ) \
@@ -181,7 +195,7 @@ ZEND_END_ARG_INFO()
181
195
ZEND_END_ARG_INFO()
182
196
183
197
#define ARGINFO_DS_RETURN_DS (name , obj , cls , col ) \
184
- DS_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX (name, 0, 1, col, 0) \
198
+ DS_BEGIN_ARG_WITH_RETURN_DS_INFO_EX (name, 0, 1, col, 0) \
185
199
ZEND_ARG_OBJ_INFO(0, obj, Ds\\cls, 0) \
186
200
ZEND_END_ARG_INFO()
187
201
0 commit comments