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