ID: 32150 Updated by: [EMAIL PROTECTED] Reported By: amd at store20 dot com -Status: Open +Status: Closed Bug Type: Compile Failure Operating System: Gentoo GNU/Linux PHP Version: php5-200503041530 New Comment:
This bug has been fixed in CVS. Snapshots of the sources are packaged every three hours; this change will be in the next snapshot. You can grab the snapshot at http://snaps.php.net/. Thank you for the report, and for helping us make PHP better. Oh, missed this one. The my_free() problem was fixed this morning, using exactly the fix you proposed! Previous Comments: ------------------------------------------------------------------------ [2005-03-05 06:54:27] amd at store20 dot com Used yesterday's CVS snapshot. One problem still existed (xmlrpc). my_free is just a ugly wrapper to free. http://amd.store20.com/files/2005-Q1/php5_xmlrpc_gcc4_compile_fix_bug_32150.patch ------------------------------------------------------------------------ [2005-03-04 16:42:12] [EMAIL PROTECTED] Please try using this CVS snapshot: http://snaps.php.net/php5-latest.tar.gz For Windows: http://snaps.php.net/win32/php5-win32-latest.zip ..and if (when) it fails, provide the patche(s) against to these source (CVS HEAD branch) and put them online somewhere where we can download them. The patches get messed up in this bug system.. ------------------------------------------------------------------------ [2005-03-01 16:49:04] amd at store20 dot com After applying these two patches, it built fine. ------------------------------------------------------------------------ [2005-03-01 16:38:42] amd at store20 dot com Another catch: /bin/sh /var/tmp/portage/php-5.0.3-r1/work/php-5.0.3/libtool --silent --preserve-dup-deps --mode=compile gcc -I/var/tmp/portage/php-5.0.3-r1/work/php-5.0.3/ext/xmlrpc/libxmlrpc -DVERSION=0.50 -Iext/xmlrpc/ -I/var/tmp/portage/php-5.0.3-r1/work/php-5.0.3/ext/xmlrpc/ -DPHP_ATOM_INC -I/var/tmp/portage/php-5.0.3-r1/work/php-5.0.3/include -I/var/tmp/portage/php-5.0.3-r1/work/php-5.0.3/main -I/var/tmp/portage/php-5.0.3-r1/work/php-5.0.3 -I/var/tmp/portage/php-5.0.3-r1/work/php-5.0.3/Zend -I/usr/include/libxml2 -I/usr/include/freetype2 -I/usr/include/imap -I/var/tmp/portage/php-5.0.3-r1/work/php-5.0.3/ext/mbstring/oniguruma -I/var/tmp/portage/php-5.0.3-r1/work/php-5.0.3/ext/mbstring/libmbfl -I/var/tmp/portage/php-5.0.3-r1/work/php-5.0.3/ext/mbstring/libmbfl/mbfl -I/usr/include/mysql -I/usr/include/pspell -I/var/tmp/portage/php-5.0.3-r1/work/php-5.0.3/TSRM -O2 -mtune=pentium3 -prefer-pic -c /var/tmp/portage/php-5.0.3-r1/work/php-5.0.3/ext/xmlrpc/libxmlrpc/xml_element.c -o ext/xmlrpc/libxmlrpc/xml_element.lo /var/tmp/portage/php-5.0.3-r1/work/php-5.0.3/ext/xmlrpc/libxmlrpc/xml_element.c: In function 'xml_elem_free_non_recurse': /var/tmp/portage/php-5.0.3-r1/work/php-5.0.3/ext/xmlrpc/libxmlrpc/xml_element.c:192: error: invalid lvalue in assignment /var/tmp/portage/php-5.0.3-r1/work/php-5.0.3/ext/xmlrpc/libxmlrpc/xml_element.c: In function 'xml_elem_entity_escape': /var/tmp/portage/php-5.0.3-r1/work/php-5.0.3/ext/xmlrpc/libxmlrpc/xml_element.c:317: warning: pointer targets in assignment differ in signedness /var/tmp/portage/php-5.0.3-r1/work/php-5.0.3/ext/xmlrpc/libxmlrpc/xml_element.c:332: warning: pointer targets in assignment differ in signedness make: *** [ext/xmlrpc/libxmlrpc/xml_element.lo] Error 1 Proposed fix: decoder php-5.0.3 # for i in `ls -1 ext/xmlrpc/libxmlrpc/*.orig`; do diff -u $i ${i/\.orig/} ; done --- ext/xmlrpc/libxmlrpc/simplestring.c.orig 2005-03-01 17:33:43.000000000 +0200 +++ ext/xmlrpc/libxmlrpc/simplestring.c 2005-03-01 17:33:47.000000000 +0200 @@ -85,7 +85,7 @@ #include <string.h> #include "simplestring.h" -#define my_free(thing) if(thing) {free(thing); thing = 0;} +#define my_free(thing) if(thing) {free(thing); thing = NULL;} /*----------------------** * Begin String Functions * --- ext/xmlrpc/libxmlrpc/xml_element.c.orig 2005-03-01 17:21:12.000000000 +0200 +++ ext/xmlrpc/libxmlrpc/xml_element.c 2005-03-01 17:35:20.000000000 +0200 @@ -189,7 +189,11 @@ Q_Destroy(&root->children); Q_Destroy(&root->attrs); - my_free((char*)root->name); +// my_free((char*)root->name); + if (root->name) { + free((char *)root->name); + root->name = NULL; + } simplestring_free(&root->text); my_free(root); } ------------------------------------------------------------------------ [2005-03-01 15:46:08] amd at store20 dot com Proposed fix: --- Zend/zend_modules.h.orig 2005-03-01 16:33:58.000000000 +0200 +++ Zend/zend_modules.h 2005-03-01 16:44:48.000000000 +0200 @@ -23,6 +23,7 @@ #define MODULES_H #include "zend.h" +#include "zend_compile.h" #define INIT_FUNC_ARGS int type, int module_number TSRMLS_DC #define INIT_FUNC_ARGS_PASSTHRU type, module_number TSRMLS_CC ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/32150 -- Edit this bug report at http://bugs.php.net/?id=32150&edit=1