PHP 4.0 Bug #6615: function "safe_free_zval_ptr" was referenced but not defined
| From: | frey at siggraph dot org | Date: | Thu, 07 Sep 2000 21:49:53 +0000 |
| Subject: | PHP 4.0 Bug #6615: function "safe_free_zval_ptr" was referenced but not defined | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-32619@lists.php.net to get a copy of this message | ||
From: frey@siggraph.org
Operating system: IRIX 6.5.6m
PHP version: 4.0.2
PHP Bug Type: Compile Failure
Bug description: function "safe_free_zval_ptr" was referenced but not defined
Here is the trace
-------------
% ./configure --with-apxs=[...] --with-mysql=[...]
% make
Making all in Zend
make[1]: Entering directory `/www/builds/php-4.0.2/Zend'
[...]
/bin/sh ../libtool --silent --mode=compile cc -DHAVE_CONFIG_H -I. -I. -I.. -DXML_BYTE_ORDER=21 -c
./zend_execute.c
"./zend_execute.h", line 57: error(1113): function "safe_free_zval_ptr" was
referenced but not defined
ZEND_API inline void safe_free_zval_ptr(zval *p)
^
"./zend_execute.h", line 71: error(1113): function "i_zend_is_true" was
referenced but not defined
ZEND_API inline int i_zend_is_true(zval *op)
^
"./zend_execute.h", line 115: error(1113): function
"zend_ptr_stack_clear_multiple" was referenced but not defined
ZEND_API inline void zend_ptr_stack_clear_multiple(ELS_D)
^
"./zend_execute.h", line 131: error(1113): function "zend_ptr_stack_get_arg"
was referenced but not defined
ZEND_API inline int zend_ptr_stack_get_arg(int requested_arg, void **data ELS_DC)
^
"./zend_execute.h", line 174: error(1113): function
"zend_assign_to_variable_reference" was referenced but not defined
ZEND_API inline void zend_assign_to_variable_reference(znode *result, zval **variable_ptr_ptr,
zval **value_ptr_ptr, temp_variable *Ts ELS_DC)
^
5 errors detected in the compilation of "./zend_execute.c".
make[1]: *** [zend_execute.lo] Error 1
make[1]: Leaving directory `/www/builds/php-4.0.2/Zend'
make: *** [all-recursive] Error 1
Comment
--------
all these functions are defined like this in zend_execute.h
ZEND_API inline <type> <function>(<arguments>)
#if defined(C9X_INLINE_SEMANTICS)
{
ELS_FETCH();
if (p!=EG(uninitialized_zval_ptr)) {
FREE_ZVAL(p);
}
}
#else
;
#endif
Apparently, C9X_INLINE_SEMANTICS is not defined, and therefore we get
ZEND_API inline <type> <function>(<arguments>);
which the compiler doesnot allow.
If I add curly braces before ';', no error is generated.