Edit report at https://bugs.php.net/bug.php?id=61095&edit=1

 ID:                 61095
 Comment by:         lepidosteus+phpbug at gmail dot com
 Reported by:        tomek at przeslij dot pl
 Summary:            PHP can't add hex numbers
 Status:             Assigned
 Type:               Bug
 Package:            Scripting Engine problem
 Operating System:   Windows XP
 PHP Version:        5.3.10
 Assigned To:        colder
 Block user comment: N
 Private report:     N

 New Comment:

Correct behavior for me in 5.3.3-7+squeeze3

$ php -r "var_dump(0x02+0x00);"
int(2)
$ php -r "var_dump(0x02+0);"
int(2)
$ php -r "var_dump('0x02'+0);"
int(2)


Previous Comments:
------------------------------------------------------------------------
[2012-02-20 18:28:55] col...@php.net

Automatic comment from SVN on behalf of colder
Revision: http://svn.php.net/viewvc/?view=revision&revision=323394
Log: Fix #61095 (Lexing 0x0*+<NUM> incorrectly)

------------------------------------------------------------------------
[2012-02-15 16:24:03] ni...@php.net

Nice catch!

This can be fixed by adding a len == 0 check after the while loop in 
http://lxr.php.net/xref/PHP_TRUNK/Zend/zend_language_scanner.l#1515 (and 
returning 0 in that case).

------------------------------------------------------------------------
[2012-02-15 15:54:47] anon at anon dot anon

That is fan-tastic!

http://i.imgur.com/uPC2b.gif

------------------------------------------------------------------------
[2012-02-15 15:32:20] tomek at przeslij dot pl

Description:
------------
These echoes 4:
echo (0x00+2);
echo (0x00+0x02);
but they should echo 2! This echoes 2 as expected:
echo (0x00 + 2);

Test script:
---------------
echo (0x00+2);

Expected result:
----------------
2

Actual result:
--------------
4


------------------------------------------------------------------------



-- 
Edit this bug report at https://bugs.php.net/bug.php?id=61095&edit=1

Reply via email to