1--TEST--
2Union of int|string shouldn't warn if string semantics are used
3--FILE--
4<?php
5
6$float = 1.0;
7
8function foo(int|string $a): void {
9    var_dump($a);
10}
11
12foo(1.0);
13foo(1.5);
14foo(fdiv(0, 0));
15foo(10e120);
16foo(10e500); // Infinity
17
18
19
20?>
21--EXPECTF--
22int(1)
23
24Deprecated: Implicit conversion from float 1.5 to int loses precision in %s on line %d
25int(1)
26string(3) "NAN"
27string(8) "1.0E+121"
28string(3) "INF"
29