1--TEST-- 2Overwriting a typed property that is not yet a reference 3--FILE-- 4<?php 5 6class Test { 7 public ?Test $prop; 8} 9$s = <<<'STR' 10O:4:"Test":2:{s:4:"prop";N;s:4:"prop";O:4:"Test":1:{s:4:"prop";R:2;}} 11STR; 12var_dump(unserialize($s)); 13 14?> 15--EXPECT-- 16object(Test)#1 (1) { 17 ["prop"]=> 18 &object(Test)#2 (1) { 19 ["prop"]=> 20 *RECURSION* 21 } 22} 23