mirror of
https://github.com/php/php-src.git
synced 2026-03-24 16:22:37 +01:00
When opcache is enabled, error handling is altered in the following ways: * Errors emitted during compilation bypass the user-defined error handler * Exceptions emitted during class linking are turned into fatal errors Changes here make the behavior consistent regardless of opcache being enabled or not: * Errors emitted during compilation and class linking are always delayed and handled after compilation or class linking. During handling, user-defined error handlers are not bypassed. Fatal errors emitted during compilation or class linking cause any delayed errors to be handled immediately (without calling user-defined error handlers, as it would be unsafe). * Exceptions thrown by user-defined error handlers when handling class linking error are not promoted to fatal errors anymore and do not prevent linking. Fixes GH-17422. Closes GH-18541. Closes GH-17627. Co-authored-by: Tim Düsterhus <tim@bastelstu.be>