From bebc3a0890156b9067b19f9c56766d132647fd58 Mon Sep 17 00:00:00 2001 From: twosee Date: Sat, 19 Sep 2020 07:15:07 +0800 Subject: [PATCH] Fix PHP8 build (zend_compile_string change) (#3675) --- php_swoole_cxx.cc | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/php_swoole_cxx.cc b/php_swoole_cxx.cc index 0360cf2779..adfa535132 100644 --- a/php_swoole_cxx.cc +++ b/php_swoole_cxx.cc @@ -12,7 +12,13 @@ SW_API zend_string **sw_zend_known_strings = nullptr; //----------------------------------Swoole known string------------------------------------ -static zend_op_array *swoole_compile_string(zval *source_string, ZEND_STR_CONST char *filename); +#if PHP_VERSION_ID < 80000 +typedef zval zend_source_string_t; +#else +typedef zend_string zend_source_string_t; +#endif + +static zend_op_array *swoole_compile_string(zend_source_string_t *source_string, ZEND_STR_CONST char *filename); bool zend::include(std::string file) { zend_file_handle file_handle; @@ -51,9 +57,10 @@ bool zend::include(std::string file) { } // for compatibly with dis_eval -static zend_op_array *(*old_compile_string)(zval *source_string, ZEND_STR_CONST char *filename); -static zend_op_array *swoole_compile_string(zval *source_string, ZEND_STR_CONST char *filename) { +static zend_op_array *(*old_compile_string)(zend_source_string_t *source_string, ZEND_STR_CONST char *filename); + +static zend_op_array *swoole_compile_string(zend_source_string_t *source_string, ZEND_STR_CONST char *filename) { zend_op_array *opa = old_compile_string(source_string, filename); opa->type = ZEND_USER_FUNCTION; return opa;