1--TEST-- 2Abstract properties correctly track virtualness 3--FILE-- 4<?php 5 6abstract class Y { 7 abstract public string $prop { 8 get; 9 set => "foo"; 10 } 11} 12 13class X extends Y { 14 public string $prop { 15 get => "bar"; 16 } 17} 18 19$x = new X; 20$x->prop = 1; 21var_dump($x->prop); 22 23?> 24--EXPECT-- 25string(3) "bar" 26