summaryrefslogtreecommitdiffstats
path: root/2.patch
blob: f21bd7688080c1d320746f89eb99d91ebc901315 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
From 15ec253f8eab6c2fb3bd7c0b75c990acf478995c Mon Sep 17 00:00:00 2001
From: Remi Collet <remi@remirepo.net>
Date: Tue, 14 Jan 2025 12:31:49 +0100
Subject: [PATCH] Fix #1 PHP 8.0 build

---
 aspect.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/aspect.c b/aspect.c
index e301cf1..9e8e3e7 100644
--- a/aspect.c
+++ b/aspect.c
@@ -28,7 +28,7 @@ ZEND_DECLARE_MODULE_GLOBALS(aspect)
 
 static void (*original_zend_execute_ex)(zend_execute_data *execute_data);
 
-ZEND_API static void aspect_execute_ex(zend_execute_data *execute_data);
+static void aspect_execute_ex(zend_execute_data *execute_data);
 
 static void handle_memoize_functions(zend_execute_data *execute_data);
 
@@ -111,7 +111,11 @@ static void aspect_execute_ex(zend_execute_data *execute_data) {
                     zend_type return_type = ret_info->type;
                     uint32_t type_mask = return_type.type_mask;
 
-                    if (type_mask & ((uint32_t)1 << IS_VOID) || type_mask & ((uint32_t)1 << IS_NEVER)) {
+                    if (type_mask & ((uint32_t)1 << IS_VOID)
+#if PHP_VERSION_ID >= 80100
+                        || type_mask & ((uint32_t)1 << IS_NEVER)
+#endif
+                    ) {
                         // cannot memoize functions with void or never return types
                         // @TODO: Should this be an error/exception?
                         original_zend_execute_ex(execute_data);