On 26 Dec 2008, at 01:46, David Grudl wrote:
This code throws *Fatal error*: Method test::__toString() must not
throw an exception
class Test1
{
public function __toString()
{
throw new Exception;
}
}
The same problem causes throwing exceptions in function __autoload.
I think this behavior is against the logic of exceptions. Excellent
feature of PHP 5.3 would be to resolve this errors.
This is down to the design of the engine, we perform casting to
strings in a lot of different places and it couldn't be guaranteed
that the engine would handle any exceptions correctly.
I'm pretty sure there is something in the internals archives about
this change.
Scott
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php