<?php
function foo(Callable $a) {
echo "called\n";
}
class A {
private function foo1() {}
public function foo2() {}
}
foo([new A, 'foo2']);
foo([new A, 'foo1']);
called
Fatal error: Uncaught TypeError: foo(): Argument #1 ($a) must be of type callable, array given, called in /in/AeZXs on line 15 and defined in /in/AeZXs:3
Stack trace:
#0 /in/AeZXs(15): foo(Array)
#1 {main}
thrown in /in/AeZXs on line 3
Process exited with code 255.
called
Fatal error: Uncaught TypeError: Argument 1 passed to foo() must be callable, array given, called in /in/AeZXs on line 15 and defined in /in/AeZXs:3
Stack trace:
#0 /in/AeZXs(15): foo(Array)
#1 {main}
thrown in /in/AeZXs on line 3
Process exited with code 255.
Output for 5.5.0 - 5.5.38, 5.6.0 - 5.6.40
called
Catchable fatal error: Argument 1 passed to foo() must be callable, array given, called in /in/AeZXs on line 15 and defined in /in/AeZXs on line 3
Process exited with code 255.