bug71441.phpt 501 B

12345678910111213141516171819202122232425262728
  1. --TEST--
  2. Bug #71441 (Typehinted Generator with return in try/finally crashes)
  3. --FILE--
  4. <?php
  5. $num = 2000; /* to be sure to be in wild memory */
  6. $add = str_repeat("1 +", $num);
  7. $gen = (eval(<<<PHP
  8. return function (): \Generator {
  9. try {
  10. \$a = 1;
  11. \$foo = \$a + $add \$a;
  12. return yield \$foo;
  13. } finally {
  14. print "Ok\n";
  15. }
  16. };
  17. PHP
  18. ))();
  19. var_dump($gen->current());
  20. $gen->send("Success");
  21. var_dump($gen->getReturn());
  22. ?>
  23. --EXPECT--
  24. int(2002)
  25. Ok
  26. string(7) "Success"