1--TEST--
2extract() into typed references must respect their type
3--FILE--
4<?php
5
6class Test {
7	public int $i = 0;
8	public string $s = "";
9}
10
11$test = new Test;
12$i =& $test->i;
13$s =& $test->s;
14try {
15	extract(['i' => 'foo', 's' => 42]);
16} catch (TypeError $e) { echo $e->getMessage(), "\n"; }
17var_dump($test->i, $test->s);
18
19?>
20--EXPECT--
21Cannot assign string to reference held by property Test::$i of type int
22int(0)
23string(0) ""
24