ID: 48708 User updated by: l_faillie at yahoo dot com Reported By: l_faillie at yahoo dot com -Status: Feedback +Status: Open Bug Type: Date/time related Operating System: All PHP Version: 5.2.10 New Comment:
Unfortunately, I'm not able to compile latest 5.3 due to GCC bug this time : gcc: Internal error: Killed (program cc1) Please submit a full bug report. See <URL:http://www.netbsd.org/Misc/send-pr.html> for instructions. gmake: *** [ext/fileinfo/libmagic/apprentice.lo] Error 1 I'm planing to upgrade my system in coming weeks (during my holidays) implying a new GCC but it's not before at least 1 month. As a workaround of this bug, I'm suggesting doing year display as integer as it was on 5.2.9. Bye Laurent Previous Comments: ------------------------------------------------------------------------ [2009-06-27 20:59:45] [email protected] Please try using this CVS snapshot: http://snaps.php.net/php5.3-latest.tar.gz For Windows: http://windows.php.net/snapshots/ ------------------------------------------------------------------------ [2009-06-27 16:04:36] l_faillie at yahoo dot com In ext/date/php_date.c, t->y (years) are stored as wide_int which is 'long long int' 64 bits but vararg or main/snprintf.c retrieve it as 'long int' (32 bits). As consequence, on big endian system, only upper part is take in account and contains only 0. Tested on NetBSD / Sparc system but I guess reproducible on all big endian system (IBM, sparc, 68000, ...). Bye the way, what is the need having 64b years which as been introduced w/ 5.2.10 ? Bye Laurent ------------------------------------------------------------------------ [2009-06-27 15:58:02] l_faillie at yahoo dot com Description: ------------ In ext/date/php_date.c, years are stored as 64b integers but displayed using "%04ld" (32b integers). Only work on little endian system Reproduce code: --------------- echo date('Y y o'); "0000 09 2009". Expected result: ---------------- "2009 09 2009" Actual result: -------------- "0000 09 2009" ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=48708&edit=1
