Issue: https://github.com/php/php-src/issues/8269
Author: bwoebi
### Description
The following code:
```php
<?php
set_error_handler(function() { throw new \Error(); });
function &gen() {
try {
yield 1;
} catch (Error $e) {
print "Caught";
}
}
foreach (gen() as $y);
```
Resulted in Uncaught Error
But I expected this output instead:
```
Caught
```
I wouldn't change the longstanding behaviour in current PHP versions, but should be fixed for
PHP 8.2 possibly, for academical correctness at least.
### PHP Version
master
### Operating System
_No response_