Marcus Boerger wrote: > Hello Christian, > > the short form is, use interfaces. And the long form is read the upgrade > file and find out to use interfaces :-)
Sorry for nagging again, but his issue still concerns me a lot. The thing is that currently we have inheritance rules that feel a lot like interfaces (see: "rethink OO inheritance strictness"). I'm having very strong feelings against the current behavior and, if I remember correctly, I'm not alone. <quote message-id="[EMAIL PROTECTED]"> [EMAIL PROTECTED]:~/build/php-5.2-debug$ cli -d"error_reporting=8191" -r 'class c{function f(){}} class d extends c{function f($a){}}' Strict Standards: Declaration of d::f() should be compatible with that of c::f() in Command line code on line 1 [EMAIL PROTECTED]:~/build/php-unicode-debug$ cli -d"error_reporting=8191" -r 'class c{function f(){}} class d extends c{function f($a){}}' Fatal error: Declaration of d::f() must be compatible with that of c::f() in Command line code on line 1 I *really* think that this enforcements are no good idea and I _beg_ you that we leave this "area" to interfaces. </quote> I'd therefore like to conduct a serious vote on this issue. [X] (+1) please remove that redundant strictness again [ ] (-1) leave as it is, we need strict OO implementation [ ] ( 0) what the hell are you talking about? Regards, -- Michael -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php