<?php
interface A {
public function foo();
}
interface B extends A {
public function bar();
}
interface C {
public function exec(A $obj);
}
class TestB implements B {
public function bar() { echo 'bar';}
public function foo() { echo 'foo';}
}
class Test implements C {
public function exec(B $obj) {
$obj->foo();
}
}
$testB = new TestB;
$test = new Test;
$test->exec($testB);
Parse error: syntax error, unexpected character 0x1D, expecting "function" or "const" in /in/NlE1f on line 16
Process exited with code 255.
Output for 7.4.0 - 7.4.33
Warning: Unexpected character in input: '' (ASCII=29) state=0 in /in/NlE1f on line 16
Warning: Unexpected character in input: '' (ASCII=29) state=0 in /in/NlE1f on line 16
Fatal error: Declaration of Test::exec(B $obj) must be compatible with C::exec(A $obj) in /in/NlE1f on line 21
Process exited with code 255.
Warning: Unexpected character in input: '' (ASCII=29) state=0 in /in/NlE1f on line 16
Warning: Unexpected character in input: '' (ASCII=29) state=0 in /in/NlE1f on line 16
Fatal error: Declaration of Test::exec(B $obj) must be compatible with C::exec(A $obj) in /in/NlE1f on line 20
Process exited with code 255.
Warning: Unexpected character in input: '' (ASCII=29) state=0 in /in/NlE1f on line 16
Warning: Unexpected character in input: '' (ASCII=29) state=0 in /in/NlE1f on line 16
Fatal error: Declaration of Test::exec() must be compatible with C::exec(A $obj) in /in/NlE1f on line 20
Process exited with code 255.
Output for 5.3.0 - 5.3.29
Warning: Unexpected character in input: '' (ASCII=29) state=0 in /in/NlE1f on line 16
Warning: Unexpected character in input: '' (ASCII=29) state=0 in /in/NlE1f on line 16
Fatal error: Declaration of Test::exec() must be compatible with that of C::exec() in /in/NlE1f on line 20
Process exited with code 255.
Warning: Unexpected character in input: '' (ASCII=29) state=1 in /in/NlE1f on line 16
Warning: Unexpected character in input: '' (ASCII=29) state=1 in /in/NlE1f on line 16
Fatal error: Declaration of Test::exec() must be compatible with that of C::exec() in /in/NlE1f on line 20
Process exited with code 255.
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_STRING in /in/NlE1f on line 3
Process exited with code 255.