1--TEST-- 2JIT ASSIGN_OBJ_OP: memory leak 3--INI-- 4opcache.enable=1 5opcache.enable_cli=1 6opcache.file_update_protection=0 7opcache.jit_buffer_size=1M 8--FILE-- 9<?php 10class A { 11 public string $prop = "222"; 12} 13 14class B { 15 public function __toString() { 16 global $a; 17 $a->prop .= $a->prop . "leak"; 18 return "test"; 19 } 20} 21 22$a = new A; 23$prop = &$a->prop; 24$a->prop = new B; 25var_dump($a); 26?> 27--EXPECT-- 28object(A)#1 (1) { 29 ["prop"]=> 30 &string(4) "test" 31} 32