--TEST-- GH-15330 005: Do not scan generator frames more than once --FILE-- current()); $f = $iterable->next(...); $f(); var_dump("not executed"); }); $canary->value = $fiber; $fiber->start(); $iterable->current(); $fiber = $iterable = $canary = null; gc_collect_cycles(); ?> ==DONE== --EXPECTF-- object(Canary)#%d (1) { ["value"]=> object(Fiber)#%d (0) { } } string(3) "foo" string(18) "Canary::__destruct" ==DONE==