Edit report at http://bugs.php.net/bug.php?id=51803&edit=1
ID: 51803 Updated by: dtajchre...@php.net Reported by: kherge at me dot com Summary: Interface implementation silently fails -Status: Open +Status: Feedback Type: Bug Package: Reproducible crash Operating System: Windows XP SP3 PHP Version: 5.3.2 New Comment: Do you have error reporting settings at the right level.. display errors? I get a nice fatal error as expected.. da...@beirut:~$ php test.php PHP Fatal error: Access level to MyClass::_test() must be public (as in class MyInterface) in /home/david/test.php on line 9 Fatal error: Access level to MyClass::_test() must be public (as in class MyInterface) in /home/david/test.php on line 9 da...@beirut:~$ echo $? 255 Previous Comments: ------------------------------------------------------------------------ [2010-05-12 21:55:55] kherge at me dot com Description: ------------ Running the test script, PHP silently exists with the error code 255. If you remove the protected access type from the _test() function in the MyClass class, the script executes normally. Test script: --------------- <?php interface MyInterface { function _test ( ); function test ( ); } class MyClass implements MyInterface { protected function _test ( ) { echo 'My _test() function', "\n"; } public function test ( ) { self::_test( ); } } MyClass::test( ); Expected result: ---------------- Output: "My _test() function" Actual result: -------------- PHP exits with %ERRORLEVEL% = 255 ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/bug.php?id=51803&edit=1