<?php
declare(strict_types=1);
class A {}
class B extends A {}
class C extends B {}
interface InterfaceTest { public function foo(): B; }
abstract class AbstractTest {
public abstract function foo(): B;
}
class TestInterfaceCovariance implements InterfaceTest {
public function foo(): C {}
}
Fatal error: Declaration of TestInterfaceCovariance::foo(): C must be compatible with InterfaceTest::foo(): B in /in/hrOLe on line 14
Process exited with code 255.
Warning: Unsupported declare 'strict_types' in /in/hrOLe on line 3
Parse error: syntax error, unexpected ':', expecting ';' or '{' in /in/hrOLe on line 9
Process exited with code 255.