Skip to content


Typehint callable not supported #582

lstrojny opened this Issue · 4 comments

5 participants


PHP 5.4 introduces the callable typehint to allow closures, string $function and array($obj, 'method'). See for details. HipHop analyzes callable as UnknownClass.


HipHop does not currently support all PHP 5.4 features. We plan to add support for the "callable" typehint some time in the coming months.


It's there now: cc37fe6

@ptarjan ptarjan closed this

This is still failing for me:


function callMe(callable $b) {



callMe(function() {

    echo "hello\n";



HipHop Fatal error: Argument 1 passed to callMe() must be an instance of callable, Closure$callMe$47daeefeedcd4b135f362b25e98454cc$ given in /Users/evert/code/sabre/event/tests/foo3.php on line 7


$ hhvm --version
HipHop VM v2.3.0-dev (rel)
Compiler: heads/master-0-gf6413a9d4ca5a0646290bf180702e967ff1daf61
Repo schema: 536d56f98b940f0920eafa10249dca34d2e855de

@paroski, this seems to work only when EnableHipHopSyntax=1. Any idea why?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.