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:
Sorry, forget my previous comment, I misunderstood the issue
Previous Comments:
[2012-02-23 15:55:00] lepidosteus+phpbug at gmail dot com
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)
[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