Req #52517 [Csd]: E_COMPILE_WARNING is not
| From: | kalle@php.net | Date: | Tue, 17 Aug 2010 18:20:12 +0000 |
| Subject: | Req #52517 [Csd]: E_COMPILE_WARNING is not | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-153529@lists.php.net to get a copy of this message | ||
Edit report at http://bugs.php.net/bug.php?id=52517&edit=1
ID: 52517
Updated by: kalle@php.net
Reported by: david at grudl dot com
Summary: E_COMPILE_WARNING is not
Status: Closed
Type: Feature/Change Request
Package: Compile Warning
PHP Version: 5.3.3
Assigned To: kalle
Block user comment: N
New Comment:
Yes it is, as declare is evaluated at compile time, not execution time
hence its not possible to catch the warning anyway as its thrown before
the executor is hit.
Previous Comments:
------------------------------------------------------------------------
[2010-08-17 18:43:36] david at grudl dot com
It is not about declare struct, it is about handing warnings & notices
by user-handler (and logging them e.g.). I am unable to catch and log
this warning. Please re-open this issue.
------------------------------------------------------------------------
[2010-08-16 21:42:34] kalle@php.net
The declare struct have meaning for the script at compile time, not
execution time hence its an E_COMPILE_WARNING.
------------------------------------------------------------------------
[2010-08-02 18:54:03] david at grudl dot com
"run-time error" -> "runtime warning"
------------------------------------------------------------------------
[2010-08-02 18:51:39] david at grudl dot com
Description:
------------
E_COMPILE_WARNING is the only run-time error not catchable by
user-defined error handler function (via set_error_handler). I suggest
change this behavior.
Test script:
---------------
<?php
declare(foo='bar'); // throws E_COMPILE_WARNING
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/bug.php?id=52517&edit=1