no-switch-force-close-finally.phpt 673 B

12345678910111213141516171819202122232425262728293031
  1. --TEST--
  2. Cannot start a new fiber in a finally block in a force-closed fiber
  3. --FILE--
  4. <?php
  5. $fiber = new Fiber(function() {
  6. try {
  7. Fiber::suspend();
  8. } finally {
  9. echo "finally\n";
  10. $fiber = new Fiber(function() {
  11. echo "not executed\n";
  12. });
  13. $fiber->start();
  14. }
  15. });
  16. $fiber->start();
  17. ?>
  18. --EXPECTF--
  19. finally
  20. Fatal error: Uncaught FiberError: Cannot switch fibers in current execution context in %sno-switch-force-close-finally.php:%d
  21. Stack trace:
  22. #0 %sno-switch-force-close-finally.php(%d): Fiber->start()
  23. #1 [internal function]: {closure}()
  24. #2 {main}
  25. thrown in %sno-switch-force-close-finally.php on line %d