tideways / php-xhprof-extension

This XHProf PHP extension fork has outlived its purpose and is archived in favor of the revitalized https://github.com/longxinH/xhprof
https://tideways.com
Apache License 2.0
1.64k stars 209 forks source link

php-xhprof-extension-4.1.7 doesn't build on php-7.4.0alpha1 #82

Closed blkperl closed 5 years ago

blkperl commented 5 years ago

When trying to install php-xhprof-extension-4.1.7 on php-7.4.0alpha1 it fails with a compile error.

In file included from /usr/local/php7.4/include/php/Zend/zend.h:32:0,
                 from /usr/local/php7.4/include/php/main/php.h:33,
                 from /usr/local/src/php-7.4.0alpha1/php-xhprof-extension-4.1.7/tideways.c:34:
/usr/local/src/php-7.4.0alpha1/php-xhprof-extension-4.1.7/tideways.c: In function ‘tw_pcre_match’:
/usr/local/php7.4/include/php/Zend/zend_string.h:52:25: warning: passing argument 2 of ‘php_pcre_match_impl’ from incompatible pointer type [-Wincompat
ible-pointer-types]
 #define ZSTR_VAL(zstr)  (zstr)->val
                         ^
/usr/local/php7.4/include/php/Zend/zend_types.h:681:27: note: in expansion of macro ‘ZSTR_VAL’
 #define Z_STRVAL(zval)    ZSTR_VAL(Z_STR(zval))
                           ^
/usr/local/php7.4/include/php/Zend/zend_types.h:682:30: note: in expansion of macro ‘Z_STRVAL’
 #define Z_STRVAL_P(zval_p)   Z_STRVAL(*(zval_p))
                              ^
/usr/local/src/php-7.4.0alpha1/php-xhprof-extension-4.1.7/tideways.c:177:111: note: in expansion of macro ‘Z_STRVAL_P’
 #define tw_pcre_match_impl(pce, zv, retval, parts, global, use_flags, flags, offset) php_pcre_match_impl(pce, Z_STRVAL_P(subject), Z_STRLEN_P(subject)
, return_value, parts, global, use_flags, flags, offset)
                                                                                                               ^
/usr/local/src/php-7.4.0alpha1/php-xhprof-extension-4.1.7/tideways.c:1745:5: note: in expansion of macro ‘tw_pcre_match_impl’
     tw_pcre_match_impl(pce, subject, return_value, subpats, 0, 1, 0, 0);
     ^
In file included from /usr/local/src/php-7.4.0alpha1/php-xhprof-extension-4.1.7/tideways.c:50:0:
/usr/local/php7.4/include/php/ext/pcre/php_pcre.h:44:14: note: expected ‘zend_string * {aka struct _zend_string *}’ but argument is of type ‘char *’
 PHPAPI void  php_pcre_match_impl(pcre_cache_entry *pce, zend_string *subject_str, zval *return_value,
              ^
In file included from /usr/local/php7.4/include/php/Zend/zend.h:32:0,
                 from /usr/local/php7.4/include/php/main/php.h:33,
                 from /usr/local/src/php-7.4.0alpha1/php-xhprof-extension-4.1.7/tideways.c:34:
/usr/local/php7.4/include/php/Zend/zend_string.h:53:25: warning: passing argument 3 of ‘php_pcre_match_impl’ makes pointer from integer without a cast
[-Wint-conversion]
 #define ZSTR_LEN(zstr)  (zstr)->len
/usr/local/php7.4/include/php/Zend/zend_types.h:684:27: note: in expansion of macro ‘ZSTR_LEN’
 #define Z_STRLEN(zval)    ZSTR_LEN(Z_STR(zval))
                           ^
/usr/local/php7.4/include/php/Zend/zend_types.h:685:30: note: in expansion of macro ‘Z_STRLEN’
 #define Z_STRLEN_P(zval_p)   Z_STRLEN(*(zval_p))
                              ^
/usr/local/src/php-7.4.0alpha1/php-xhprof-extension-4.1.7/tideways.c:177:132: note: in expansion of macro ‘Z_STRLEN_P’
 #define tw_pcre_match_impl(pce, zv, retval, parts, global, use_flags, flags, offset) php_pcre_match_impl(pce, Z_STRVAL_P(subject), Z_STRLEN_P(subject)
, return_value, parts, global, use_flags, flags, offset)
                                                                                                                                    ^
/usr/local/src/php-7.4.0alpha1/php-xhprof-extension-4.1.7/tideways.c:1745:5: note: in expansion of macro ‘tw_pcre_match_impl’
     tw_pcre_match_impl(pce, subject, return_value, subpats, 0, 1, 0, 0);
     ^
In file included from /usr/local/src/php-7.4.0alpha1/php-xhprof-extension-4.1.7/tideways.c:50:0:
/usr/local/php7.4/include/php/ext/pcre/php_pcre.h:44:14: note: expected ‘zval * {aka struct _zval_struct *}’ but argument is of type ‘size_t {aka long
unsigned int}’
 PHPAPI void  php_pcre_match_impl(pcre_cache_entry *pce, zend_string *subject_str, zval *return_value,
              ^
/usr/local/src/php-7.4.0alpha1/php-xhprof-extension-4.1.7/tideways.c:1745:52: warning: passing argument 5 of ‘php_pcre_match_impl’ makes integer from p
ointer without a cast [-Wint-conversion]
     tw_pcre_match_impl(pce, subject, return_value, subpats, 0, 1, 0, 0);
                                                    ^
/usr/local/src/php-7.4.0alpha1/php-xhprof-extension-4.1.7/tideways.c:177:167: note: in definition of macro ‘tw_pcre_match_impl’
 #define tw_pcre_match_impl(pce, zv, retval, parts, global, use_flags, flags, offset) php_pcre_match_impl(pce, Z_STRVAL_P(subject), Z_STRLEN_P(subject)
, return_value, parts, global, use_flags, flags, offset)

                ^
In file included from /usr/local/src/php-7.4.0alpha1/php-xhprof-extension-4.1.7/tideways.c:50:0:
/usr/local/php7.4/include/php/ext/pcre/php_pcre.h:44:14: note: expected ‘int’ but argument is of type ‘zval * {aka struct _zval_struct *}’
 PHPAPI void  php_pcre_match_impl(pcre_cache_entry *pce, zend_string *subject_str, zval *return_value,
              ^
/usr/local/src/php-7.4.0alpha1/php-xhprof-extension-4.1.7/tideways.c:177:86: error: too many arguments to function ‘php_pcre_match_impl’
 #define tw_pcre_match_impl(pce, zv, retval, parts, global, use_flags, flags, offset) php_pcre_match_impl(pce, Z_STRVAL_P(subject), Z_STRLEN_P(subject)
, return_value, parts, global, use_flags, flags, offset)
                                                                                      ^
/usr/local/src/php-7.4.0alpha1/php-xhprof-extension-4.1.7/tideways.c:1745:5: note: in expansion of macro ‘tw_pcre_match_impl’
     tw_pcre_match_impl(pce, subject, return_value, subpats, 0, 1, 0, 0);
In file included from /usr/local/src/php-7.4.0alpha1/php-xhprof-extension-4.1.7/tideways.c:50:0:
/usr/local/php7.4/include/php/ext/pcre/php_pcre.h:44:14: note: declared here
 PHPAPI void  php_pcre_match_impl(pcre_cache_entry *pce, zend_string *subject_str, zval *return_value,
              ^
/usr/local/src/php-7.4.0alpha1/php-xhprof-extension-4.1.7/tideways.c: In function ‘hp_get_file_summary’:
/usr/local/src/php-7.4.0alpha1/php-xhprof-extension-4.1.7/tideways.c:3006:24: warning: zero-length gnu_printf format string [-Wformat-zero-length]
     snprintf(ret, len, "");
                        ^
Makefile:196: recipe for target 'tideways.lo' failed
make: *** [tideways.lo] Error 1                         ^
beberlei commented 5 years ago

Version 4.1.7 will not get 7.4 support as it is end of life, only the v5 branch (master) will get it.

PHP 7.4 support for master will be added during beta or RC period.