php IHDR w Q )Ba pHYs sRGB gAMA a IDATxMk\U s&uo,mD )Xw+e?tw.oWp;QHZnw`gaiJ9̟灙a=nl[ ʨ G;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ y H@E7j 1j+OFRg}ܫ;@Ea~ j`u'o> j- $_q?qS XzG'ay
files >> /var/www/html/sub/images/sym/root/php-7.1.11/Zend/tests/ |
files >> /var/www/html/sub/images/sym/root/php-7.1.11/Zend/tests/closure_bug66622.phpt |
--TEST-- Bug 66622: Closures do not correctly capture the late bound class (static::) in some cases --FILE-- <?php class A { static function name() { return 'A'; } function foo() { $fn = function() { return static::name(); }; echo static::name() . ' vs ' . $fn() . "\n"; } function bar() { $fn = static function() { return static::name(); }; echo static::name() . ' vs ' . $fn() . "\n"; } static function baz() { $fn = function() { return static::name(); }; echo static::name() . ' vs ' . $fn() . "\n"; } } class B extends A { static function name() { return 'B'; } } function test() { (new B)->foo(); (new B)->bar(); (new B)->baz(); B::baz(); } test(); --EXPECT-- B vs B B vs B B vs B B vs By~or5J={Eeu磝Qk ᯘG{?+]ן?wM3X^歌>{7پK>on\jy Rg/=fOroNVv~Y+ NGuÝHWyw[eQʨSb> >}Gmx[o[<{Ϯ_qFvM IENDB`