php-8.0.30-src/Zend/tests/generators/gh9750-006.phpt

34 lines
427 B
PHP

--TEST--
Bug GH-9750 006 (Generator memory leak when interrupted during argument evaluation)
--FILE--
<?php
function f(...$x) {
}
class C {
function __destruct() {
echo __METHOD__, "\n";
}
}
$gen = function ($c) use (&$gen) {
f(a: $gen, b: f(c: yield));
};
$gen = $gen(new C());
foreach ($gen as $value) {
break;
}
$gen = null;
gc_collect_cycles();
?>
==DONE==
--EXPECT--
C::__destruct
==DONE==