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