Bug #70457 [Opn->Ver]: Wrong line number for E_NOTICE - undefined constant in class
| From: | requinix@php.net | Date: | Fri, 19 May 2017 10:58:54 +0000 |
| Subject: | Bug #70457 [Opn->Ver]: Wrong line number for E_NOTICE - undefined constant in class | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-209193@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=70457&edit=1
ID: 70457
Updated by: requinix@php.net
Reported by: daniel dot jaenecke at sedo dot com
Summary: Wrong line number for E_NOTICE - undefined constant
in class
-Status: Open
+Status: Verified
Type: Bug
Package: Scripting Engine problem
Operating System: Any
PHP Version: Any
Block user comment: N
Private report: N
Previous Comments:
------------------------------------------------------------------------
[2015-09-08 13:54:29] bwoebi@php.net
We currently aren't storing any line number information for class variables/constants. And as
these are only evaluated upon first use, the constant message will only appear on instantiation
here.
------------------------------------------------------------------------
[2015-09-08 09:20:33] yohgaki@php.net
https://3v4l.org/DpCPp
PHP has been emitting the error like this for a long time.
------------------------------------------------------------------------
[2015-09-08 08:46:58] daniel dot jaenecke at sedo dot com
Description:
------------
A notice complaining about an undefined constant assigned to a class property is reported for the
wrong line number.
I could reproduce this with the provided snippet for versions 5.3, 5.5 and 5.6
Test script:
---------------
<?php
class MyClass
{
private $var1 = ANOTHER_NONE_EXISTING_CONSTANT;
private $var2 = 1;
}
$obj = new MyClass();
Expected result:
----------------
A notice for the line where the undefined constant is being used, in this case Notice: Use of
undefined constant NONE_EXISTING_GLOBAL_CONSTANT [â¦] in line 6
Actual result:
--------------
Notice: Use of undefined constant ANOTHER_NONE_EXISTING_CONSTANT - assumed
'ANOTHER_NONE_EXISTING_CONSTANT' in /home/daniel/tmp/php-linenumber-bug/code.php on line
11
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=70457&edit=1