On Mon, Jun 23, 2008 at 2:16 AM, Jochem Maas <[EMAIL PROTECTED]> wrote:
> and the same is not true of parent::? besides which I doubt any same code > would actually break if the semantics of self:: changed, much less than > if parent:: changed at any rate. > The behavior of the parent:: as it relates to "existing" code is not changing. The only change of behavior is as it relates to the usage of static:: when parent:: is called on a method. That is why making this decision is now. Once 5.3 is released the behavior of parent:: will be locked in much the same way self:: was in 5.0 > > Is this whole discussion pointless? given that you say 'static' has already > been > implemented ... doesn't that negate the requirement for > forward_static_call() and > also the need to repurpose parent::? > static:: has been implemented for quite some time and the reason why forward_static_call was created and the reason why we want to change parent:: have been discussed at some length on this list. I'm mildly suprised you haven't seen it. Try reading: http://www.digitalsandwich.com/archives/65-Late-static-binding....sorta.htmlIt gives a pretty good description of what I disagreed with in the current patch. Then http://www.ds-o.com/archives/68-Late-Static-Binding-Changes-to-parent.htmlintroduces three patches to potentially resolve my issues. The three patches are really standalone (save a mistake I made when creating the forwarding patch that caused me to include forward_static_call()). forward_static_call patch has been implemented already. While this addresses my concerns I think it does so in a far less than optimal way. The first patch is what Etienne is talking about implementing which I am totally in favor for. The second patch is really is the same as the first, it just introduces a new keyword (which I do not think is needed.)