<?php
$drupal_version = 10.0;
if (version_compare($drupal_version, '8.0')) {
interface I {
// In Symfony 5.4 this is:
// public static function test($s, $i, $m);
// In Symfony 6.0 this is:
public static function test(string $s, int $i, mixed $m): mixed;
}
}
else {
interface I {
// In Symfony 5.4 this is:
// public static function test($s, $i, $m);
// In Symfony 6.0 this is:
public static function test($s, $i, $m);
}
}
if (version_compare($drupal_version, '8.0')) {
class A implements I {
public static function test(string $s, int $i, mixed $m): mixed {
return 'hello';
}
}
}
else {
class A implements I {
public static function test($s, $i, $m) {
return 'hello';
}
}
}
A::test('string', 1, '');
Fatal error: Uncaught TypeError: Argument 3 passed to A::test() must be an instance of mixed, string given, called in /in/QnVTu on line 37 and defined in /in/QnVTu:24
Stack trace:
#0 /in/QnVTu(37): A::test('string', 1, '')
#1 {main}
thrown in /in/QnVTu on line 24
Process exited with code 255.