1--TEST--
2Typed property assignment must not overwrite constants
3--FILE--
4<?php
5
6class Foo {
7    public float $x = 0.0;
8};
9
10$x = new Foo;
11$y =& $x->x;
12$y = 4;
13var_dump($x, 4); /* Optimizer will merge both "4" constants, making it immediately visible */
14
15?>
16--EXPECT--
17object(Foo)#1 (1) {
18  ["x"]=>
19  &float(4)
20}
21int(4)
22