--TEST-- Closure 058: Closure scope and object --FILE-- __invoke(); $c = array($a,"__invoke"); $c(); call_user_func(array($a,"__invoke")); $z(array($a,"__invoke")); echo "\n"; $x = new A(); $b = $x->bar(); $b(); $b->__invoke(); $c = array($b,"__invoke"); $c(); call_user_func(array($b,"__invoke")); $z(array($b,"__invoke")); ?> --EXPECT-- string(1) "A" string(1) "A" string(1) "A" string(1) "A" string(1) "A" string(1) "A" string(1) "A" string(1) "A" string(1) "A" string(1) "A" string(1) "A" string(1) "A" object(A)#2 (0) { } string(1) "A" string(1) "A" object(A)#2 (0) { } string(1) "A" string(1) "A" object(A)#2 (0) { } string(1) "A" string(1) "A" object(A)#2 (0) { } string(1) "A" string(1) "A" object(A)#2 (0) { }