Missing signature violation warnings suck.

From: Date: Wed, 09 Apr 2008 09:27:36 +0000
Subject: Missing signature violation warnings suck.
Groups: php.internals 
Request: Send a blank email to internals+get-36898@lists.php.net to get a copy of this message
Hello there, I've been working on some code, while developing on PHP 5.3. The code resembles the following structure: <?php interface ezcSearchQuery { public function limit( $limit, $offset = '' ); } interface ezcSearchFindQuery extends ezcSearchQuery { } class ezcSearchFindQuerySolr implements ezcSearchFindQuery { public function limit( $limit = 10, $offset = 0 ) { $this->limit = $limit; $this->offset = $offset; } } ?> No problems at all while development, no warnings, no errors. Now when I deployed this on a PHP 5.2 machine it bombed out, with the following *correct* message: Fatal error: Declaration of ezcSearchFindQuerySolr::limit() must be compatible with that of ezcSearchQuery::limit() in /tmp/tmp/index.php on line 11 And this really sucks. I made a mistake in my code (wrongly implemented interface) and I get no warning (not even E_STRICT)... and then deploy it and it bails out on me. We can't have this. We need *warnings* (actually, it should be E_FATAL) for those cases in order to avoid problems. I don't know who removed this check, but please put it back in! regards, Derick -- Derick Rethans http://derickrethans.nl | http://ezcomponents.org | http://xdebug.org

« previous php.internals (#36898) next »