1--TEST-- 2Live range construction should not break if coalesce assign branch is optimized away 3--FILE-- 4<?php 5function test() { 6 $a[X] ??= Y; 7 var_dump($a); 8} 9function test2(string $b, int $c) { 10 $a[~$b] ??= $c; 11} 12define('X', 1); 13define('Y', 2); 14test(); 15test2("", 0); 16?> 17--EXPECT-- 18array(1) { 19 [1]=> 20 int(2) 21} 22