php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #6615 function "safe_free_zval_ptr" was referenced but not defined
Submitted: 2000-09-07 17:49 UTC Modified: 2000-09-21 08:18 UTC
From: frey at siggraph dot org Assigned:
Status: Closed Package: Compile Failure
PHP Version: 4.0.2 OS: IRIX 6.5.6m
Private report: No CVE-ID: None
 [2000-09-07 17:49 UTC] frey at siggraph dot org
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.

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2000-09-21 08:18 UTC] sas@php.net
Try configuring with --enable-c9x-inline
 
PHP Copyright © 2001-2026 The PHP Group
All rights reserved.
Last updated: Tue Oct 13 03:00:02 2026 UTC