1--TEST-- 2Repeated assign of a variable to mismatched property type must not succeed 3--FILE-- 4<?php 5 6class A { 7 public int $foo; 8} 9 10class B { 11 public A $foo; 12} 13 14$objs = [new A, new A]; 15$v = 1; 16 17foreach ($objs as $obj) { 18 $obj->foo = $v; 19 $v = new A; 20 $obj = new B; 21 $obj->foo = $v; 22} 23 24var_dump($objs); 25 26?> 27--EXPECTF-- 28Fatal error: Uncaught TypeError: Typed property A::$foo must be int, A used in %s:%d 29Stack trace: 30#0 {main} 31 thrown in %s on line %d 32