function gen() {
$gen = yield;
- $gen->next();
+ try {
+ $gen->next();
+ } catch (EngineException $e) {
+ echo "\nException: " . $e->getMessage() . "\n";
+ }
+ $gen->next();
}
$gen = gen();
?>
--EXPECTF--
+Exception: Cannot resume an already running generator
+
Fatal error: Cannot resume an already running generator in %s on line %d
}
if (generator->flags & ZEND_GENERATOR_CURRENTLY_RUNNING) {
- zend_error_noreturn(E_ERROR, "Cannot resume an already running generator");
+ zend_error(E_EXCEPTION | E_ERROR, "Cannot resume an already running generator");
+ return;
}
/* Drop the AT_FIRST_YIELD flag */