silence-operator-inside-fiber.phpt 632 B

12345678910111213141516171819202122232425262728
  1. --TEST--
  2. Silence operator does not leak out of fiber
  3. --FILE--
  4. <?php
  5. function suspend_with_warnings(): void {
  6. trigger_error("Warning A", E_USER_WARNING); // Should be silenced.
  7. Fiber::suspend();
  8. trigger_error("Warning B", E_USER_WARNING); // Should be silenced.
  9. }
  10. $fiber = new Fiber(function (): void {
  11. @suspend_with_warnings();
  12. });
  13. $fiber->start();
  14. trigger_error("Warning C", E_USER_WARNING);
  15. $fiber->resume();
  16. trigger_error("Warning D", E_USER_WARNING);
  17. ?>
  18. --EXPECTF--
  19. Warning: Warning C in %ssilence-operator-inside-fiber.php on line %d
  20. Warning: Warning D in %ssilence-operator-inside-fiber.php on line %d