#35437 [Fbk->Opn]: Segfault or Invalid Opcode 137/1/4

From: Date: Mon, 28 Nov 2005 16:43:50 +0000
Subject: #35437 [Fbk->Opn]: Segfault or Invalid Opcode 137/1/4
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-89262@lists.php.net to get a copy of this message
ID: 35437 User updated by: me at dither dot spb dot ru Reported By: me at dither dot spb dot ru -Status: Feedback +Status: Open Bug Type: Reproducible crash Operating System: WinXPSP2, Fedora Core 3 PHP Version: 5.1.0 New Comment: PHP 5.1.2-dev (cli) (built: Nov 27 2005 20:24:18) (Win32). No changes. Problem persists. Sorry, I dont have enought time to test latest unix snapshot. If needed, I can do some testing across different unix versions tomorrow. Omg, sorry for my bad english.. Previous Comments: ------------------------------------------------------------------------ [2005-11-28 09:13:58] sniper@php.net Please try using this CVS snapshot: http://snaps.php.net/php5-latest.tar.gz For Windows: http://snaps.php.net/win32/php5-win32-latest.zip ------------------------------------------------------------------------ [2005-11-28 04:19:49] me at dither dot spb dot ru Description: ------------ PHP 5.1 Final Release. (built: Nov 23 2005 23:59:35) Easy repoducible segfault or Invalid opcode 137/1/4 Fatal Error. Reproduce code: --------------- <?php function err2exception($errno, $errstr) { throw new Exception("Error occuried: " . $errstr); } set_error_handler('err2exception'); class TestClass { function testMethod() { //$GLOBALS['t'] = 'test'; $GLOBALS['t'] = new stdClass; } } TestClass::testMethod(); ?> Expected result: ---------------- PHP Should cause Strict level Notice "Non-static method TestClass::testMethod() should not be called statically", and after what error_handler err2exception() must be executed. Finally, it must be an Uncaught exception 'Exception' with message 'Error occuried: Non-static method TestClass::testMethod() should not be called statically'. Actual result: -------------- Segfault. Uncommenting line //$GLOBALS['t'] = 'test' causes Invalid opcode 137/1/4 Fatal Error. Commenting both $GLOBALS lines completly fixes bug. Marking method testMethod() as static (... static function testMethod() ...) fixes bug too, but no exception will be thrown. ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=35437&edit=1

« previous php.bugs (#89262) next »