Req #10657 [Com]: Add warning about overflow to settype()
| From: | spam2 at rhsoft dot net | Date: | Tue, 14 Mar 2017 03:48:42 +0000 |
| Subject: | Req #10657 [Com]: Add warning about overflow to settype() | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-207820@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=10657&edit=1
ID: 10657
Comment by: spam2 at rhsoft dot net
Reported by: tf at tfromm dot com
Summary: Add warning about overflow to settype()
Status: Open
Type: Feature/Change Request
Package: Variables related
Operating System: linux
PHP Version: 7.1.1
Block user comment: N
Private report: N
New Comment:
NO there SHOUL DNOT be added warnings - how do you imagine to handle warnings triggered by
<?=(int)$_GET['bla']?> when it exceeds PHP_INT_MAX? there are people which running
E_ALL in production and warnings which can be properly fixed except add again @ with all it's
dirt and overhead are not helpful
Previous Comments:
------------------------------------------------------------------------
[2017-03-14 03:25:32] pollita@php.net
@nikic I disagree. It seems like warnings *should* be added for these overflow on cast cases.
It's not BC, but the existing behavior could hardly be described as "working as reasonably
expected".
------------------------------------------------------------------------
[2017-01-20 17:43:54] nikic@php.net
settype() behaves the same as an (int) cast. I highly doubt that we'd add such a warning for
(int) casting.
------------------------------------------------------------------------
[2017-01-20 17:30:39] requinix@php.net
settype is not issuing warnings.
https://3v4l.org/LSBfU - numeric string >PHP_INT_MAX to int
https://3v4l.org/LT5dX - non-numeric string to int
------------------------------------------------------------------------
[2017-01-20 17:05:31] heiglandreas@php.net
Is this still relevant?
------------------------------------------------------------------------
[2014-11-06 19:28:25] requinix@php.net
Can't be closed quite yet, Edgar: you're using a 64-bit PHP which can handle 11111111112
as an integer. Try with 9999999999999999999.
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
https://bugs.php.net/bug.php?id=10657
--
Edit this bug report at https://bugs.php.net/bug.php?id=10657&edit=1