On 27/02/2015 14:31, Sebastian Bergmann wrote:
Am 23.02.2015 um 19:15 schrieb Nikita Popov:
Voting on the engine exceptions RFC, which proposes to convert existing
fatal and recoverable fatal errors into exceptions, has opened:
https://wiki.php.net/rfc/engine_exceptions_for_php7#vote
The primary vote requires a 2/3 majority, as this is a language change.
A second vote will decide whether to use a BaseException based inheritance
hierarchy. This vote uses a simple majority.
I have voted yes on "Allow exceptions in the engine and conversion of
existing fatals?" and no on "Introduce and use BaseException?" and
would like to elaborate on the latter.
I am sorry that I was unable to raise this concern earlier (did not
really become aware of the RFC before it was put to the vote), but I
would prefer the following:
* Introduce a Throwable interface
* Let Exception implement the Throwable interface
* Introduce an Error class that implements the Throwable interface
* Use Error class as base class for exceptions raised by the engine
This would be along the lines of what Java does.
+1 on that, and as it seems the BaseException is going to pass, it might
be good to quickly draft another RFC to amend that part.
It seems people in general favor the fact that catch(Exception $e) does
not catch those new engine exceptions, but there hopefully would not be
much resistance against a cleaner scheme than a BaseException class.
Also the Error (and possibly Throwable) class/interface might be put in
a PHP namespace and then we avoid any potential BC issues, but that's
perhaps another voting point :)
Cheers
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php