Description
The following code:
<?php
class Demo {
public function __construct(
final string $foo,
final public string $bar,
) {}
}
$d = new Demo("first", "second");
var_dump($d);
Resulted in this output:
object(Demo)#1 (1) {
["foo"]=>
uninitialized(string)
["bar"]=>
string(6) "second"
}
But I expected this output instead:
object(Demo)#1 (1) {
["foo"]=>
string(5) "first"
["bar"]=>
string(6) "second"
}
Looks like I didn't implement #17861 properly - the property is recognized as final, but is not initialized
PHP Version
Operating System
No response