bug70965.phpt 411 B

1234567891011121314151617181920212223242526272829303132
  1. --TEST--
  2. Bug #70965 (yield from with a common iterator primes too much)
  3. --FILE--
  4. <?php
  5. function it() {
  6. yield from [1, 2, 3, 4, 5];
  7. }
  8. function bar($g) {
  9. yield from $g;
  10. }
  11. $gen = it();
  12. $gens[] = bar($gen);
  13. $gens[] = bar($gen);
  14. do {
  15. foreach($gens as $g) {
  16. var_dump($g->current());
  17. $gen->next();
  18. }
  19. } while ($gen->valid());
  20. ?>
  21. --EXPECT--
  22. int(1)
  23. int(2)
  24. int(3)
  25. int(4)
  26. int(5)
  27. int(5)