ID: 49828 Updated by: j...@php.net Reported By: daniel dot meister at datahouse dot ch -Status: Open +Status: Bogus Bug Type: Class/Object related Operating System: Ubuntu 09.04 PHP Version: 5.2.11 New Comment:
Thank you for taking the time to write to us, but this is not a bug. Please double-check the documentation available at http://www.php.net/manual/ and the instructions on how to report a bug at http://bugs.php.net/how-to-report.php Previous Comments: ------------------------------------------------------------------------ [2009-10-10 12:08:30] sjo...@php.net Could reproduce with PHP 5.2-HEAD and PHP 5.3-HEAD. The error occurs on the line with: const a = -INF; Note that the same error occurs with: const a = -(1); Because you can't use an expression when defining a constant. ------------------------------------------------------------------------ [2009-10-10 11:46:45] daniel dot meister at datahouse dot ch possible workarounds: define("C",-INF); class A { const a = C; } class A { const a = -1E100000000; } ------------------------------------------------------------------------ [2009-10-10 00:44:03] daniel dot meister at datahouse dot ch Description: ------------ It is not possible to set a class-constant to the value of negative infinity (-INF) while it is possible to set it to any float value or even to positive infinity (INF) or not-a-number (NAN). configuration: - no configure options - no changes to php.ini Reproduce code: --------------- class A { const a = -INF; } echo is_infinite(A::a); Expected result: ---------------- 1 Actual result: -------------- Fatal error: Unsupported operand types in /path/to/file/filename.php on line n ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=49828&edit=1