#24381 [Bgs]: Inconsistence behavior of var_dump
| From: | yipkeikwok at yahoo dot com | Date: | Sun, 29 Jun 2003 00:20:15 +0000 |
| Subject: | #24381 [Bgs]: Inconsistence behavior of var_dump | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-42701@lists.php.net to get a copy of this message | ||
ID: 24381
User updated by: yipkeikwok at yahoo dot com
Reported By: yipkeikwok at yahoo dot com
Status: Bogus
Bug Type: Math related
Operating System: Windows 2000, Redhat Linux 9
PHP Version: 4.3.2
New Comment:
If the lower bound for the type "integer" is -2147483648, then,
according to
http://www.php.net/manual/en/language.types.integer.php
,var_dump() should have returned -2147483648 as int-typed instead of
float-typed.
The actual result now is
float(-2147483648)
--Yipkei Kwok
Integer overflow
If you specify a number beyond the bounds of the integer type, it will
be interpreted as a float instead. Also, if you perform an operation
that results in a number beyond the bounds of the integer type, a float
will be returned instead.
Previous Comments:
------------------------------------------------------------------------
[2003-06-28 19:05:07] pollita@php.net
Your "expected result" is based on an incorrect assumption.
The lower bound for type "integer" on a 32bit platform is in fact
-2147483648.
------------------------------------------------------------------------
[2003-06-28 18:51:35] yipkeikwok at yahoo dot com
Description:
------------
The function var_dump() returns different data type for -2147483647 and
-2147483647-1
--Yipkei Kwok
Reproduce code:
---------------
<?php
$int1 = -2147483648;
$int2 = -2147483647-1;
var_dump($int1);
var_dump($int2);
?>
Expected result:
----------------
float(-2147483648)
float(-2147483648)
The lower bound for data type integer is -2147483647. So, -2147483648
(-2147483647-1) should be regarded as float.
Actual result:
--------------
float(-2147483648)
int(-2147483648)
However, -2147483648 (-2147483647-1) is regarded as int.
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=24381&edit=1