build: PHP-7.2 compat
authorMichael Wallner <mike@php.net>
Tue, 5 Sep 2017 06:55:27 +0000 (08:55 +0200)
committerMichael Wallner <mike@php.net>
Tue, 5 Sep 2017 06:55:27 +0000 (08:55 +0200)
src/call.c

index 6c924c8fa8872e1f475239d1ff74256b1e302287..ce439bf0cbc52bd8c0fb44f10f81c0afdf42b9a9 100644 (file)
@@ -250,6 +250,11 @@ struct psi_context *psi_call_frame_get_context(struct psi_call_frame *frame) {
        return frame->context;
 }
 
+#if PHP_VERSION_ID < 70200
+#      define PARAM_PROLOGUE(separate) Z_PARAM_PROPLOGUE(separate)
+#else
+#      define PARAM_PROLOGUE(separate) Z_PARAM_PROLOGUE(1, separate)
+#endif
 ZEND_RESULT_CODE psi_call_frame_parse_args(struct psi_call_frame *frame,
                zend_execute_data *execute_data) {
        size_t i, argc = psi_plist_count(frame->impl->func->args);
@@ -300,9 +305,9 @@ ZEND_RESULT_CODE psi_call_frame_parse_args(struct psi_call_frame *frame,
                        Z_PARAM_ARRAY_EX(tmp, _optional || iarg->var->reference,
                                        iarg->var->reference);
                } else if (PSI_T_OBJECT == iarg->type->type) {
-                       Z_PARAM_PROLOGUE(iarg->var->reference);
+                       PARAM_PROLOGUE(iarg->var->reference);
                } else if (PSI_T_MIXED == iarg->type->type) {
-                       Z_PARAM_PROLOGUE(iarg->var->reference);
+                       PARAM_PROLOGUE(iarg->var->reference);
                } else if (PSI_T_CALLABLE == iarg->type->type) {
                        zend_fcall_info fci;
                        zend_fcall_info_cache fcc;