1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
--TEST-- Return types allowed in namespace --FILE-- <?php namespace Collections; interface Collection { function values(): Collection; } class Vector implements Collection { function values(): Collection { return $this; } } $v = new Vector; var_dump($v->values()); --EXPECTF-- object(Collections\Vector)#%d (%d) { }