Edit report at http://bugs.php.net/bug.php?id=51183&edit=1
ID: 51183 Comment by: Reported by: markus dot schiegl at lbbw dot de Summary: ext/date/php_date.c fails to compile with Sun Studio and PHP 5.2.13 Status: Open Type: Bug Package: Compile Failure Operating System: Solaris 10 (Sparc) PHP Version: 5.2.13 New Comment: Jose Marcio, thanks for the patch. Compiles and works fine now! Previous Comments: ------------------------------------------------------------------------ [2010-03-02 13:25:22] markus dot schiegl at lbbw dot de Description: ------------ PHP 5.2.13 doesn't compile with Sun Studio compiler on Solaris 10 Sparc. Configure works fine (as in 5.2.12), Make fails on ext/date/php_date.c file with: /bin/sh /opt/build/php/php-5.2.13/libtool --silent --preserve-dup-deps --mode=compile cc -Iext/date/lib -Iext/date/ -I/opt/build/php/php-5.2.13/ext/d ate/ -DPHP_ATOM_INC -I/opt/build/php/php-5.2.13/include -I/opt/build/php/php-5.2.13/main -I/opt/build/php/php-5.2.13 -I/opt/build/php/php-5.2.13/ext/ date/lib -I/opt/build/php/ext/libxml2/include/libxml2 -I/usr/sfw/include -I/opt/build/php/ext/curl/include -I/opt/build/php/ext/jpeg/include -I/opt/b uild/php/ext/freetype2/include -I/opt/build/php/ext/freetype2/include/freetype2 -I/opt/build/php/ext/gettext/include -I/opt/build/php/ext/libiconv/in clude -I/opt/build/php/php-5.2.13/ext/mbstring/oniguruma -I/opt/build/php/php-5.2.13/ext/mbstring/libmbfl -I/opt/build/php/php-5.2.13/ext/mbstring/li bmbfl/mbfl -I/opt/build/php/ext/libmcrypt/include -I/opt/build/php/ext/freetds/include -I/opt/build/php/ext/mysql/include -I/opt/build/php/ext/instan tclient/sdk/include -I/opt/build/php/ext/tidy/include -I/opt/build/php/ext/xmlrpc-epi/include -I/opt/build/php/ext/libxslt/include -I/opt/build/php/p hp-5.2.13/TSRM -I/opt/build/php/php-5.2.13/Zend -I/opt/build/php/php/ext/libiconv/include -I/opt/build/php/php/ext/gettext/include -D_POSIX_PTHREAD_ SEMANTICS -I/opt/build/php/ext/libiconv/include -O -xs -xstrconst -zlazyload -xmemalign=8s -c /opt/build/php/php-5.2.13/ext/date/php_date.c -o ext/ date/php_date.lo "/opt/build/php/php-5.2.13/ext/date/php_date.c", line 38: warning: no explicit type given "/opt/build/php/php-5.2.13/ext/date/php_date.c", line 38: syntax error before or at: long cc: acomp failed for /opt/build/php/php-5.2.13/ext/date/php_date.c *** Error code 1 make: Fatal error: Command failed for target `ext/date/php_date.lo' A diff between 5.2.12 and 5.2.13 shows the culprit (php_date_llabs vs. llabs and/or ifndef HAVE_LLABS, because of bug 50266 and bug 50930) @@ -30,14 +30,12 @@ #include "lib/timelib.h" #include <time.h> -#ifndef HAVE_LLABS -# ifdef PHP_WIN32 -static __inline __int64 llabs( __int64 i ) { return i >= 0? i: -i; } -# elif defined(__GNUC__) && __GNUC__ < 3 -static __inline __int64_t llabs( __int64_t i ) { return i >= 0 ? i : -i; } -# elif defined(NETWARE) && defined(__MWERKS__) -static __inline long long llabs( long long i ) { return i >= 0 ? i : -i; } -# endif +#ifdef PHP_WIN32 +static __inline __int64 php_date_llabs( __int64 i ) { return i >= 0? i: -i; } +#elif defined(__GNUC__) && __GNUC__ < 3 +static __inline __int64_t php_date_llabs( __int64_t i ) { return i >= 0 ? i : -i; } +#else +static __inline long long php_date_llabs( long long i ) { return i >= 0 ? i : -i; } #endif /* {{{ arginfo */ Expected result: ---------------- successful compile Actual result: -------------- compile aborts with error ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/bug.php?id=51183&edit=1