Re: Re: Broken apps

From: Date: Mon, 19 Jan 2015 15:13:54 +0000
Subject: Re: Re: Broken apps
References: 1 2  Groups: php.internals 
Request: Send a blank email to [email protected] to get a copy of this message
Ferenc Kovacs wrote on 19/01/2015 13:25:
On Mon, Jan 19, 2015 at 10:49 AM, Dmitry Stogov <[email protected]> wrote:
Despite of PEAR, I also found few other apps, from my usual test list, broken - Typo3, Xoops, SugarCRM. Magento is broken long time ago by "unified variable syntax". I'm really unhappy with this direction... Thanks. Dmitry.
I guess you already reported it to the pear guys, but just to be sure: Tyrael | [17:17:14] laruence: you can ask the guys at #pear or simply report the problem Tyrael | [17:28:27] on github Tyrael | [17:28:52] https://github.com/pear/pear-core Tyrael | [17:35:55] as far as I can see all of the methods in https://github.com/pear/pear-core/blob/06b171273752dc2012018067a3a3dd3505cb9c51/PEAR/Installer/Role.php should be changed into static Tyrael | [17:36:09] they are all called statically
Hm, I wasn't aware quite how strict this change was - I'm definitely on board with not allowing $this from an incompatible context, but thought it would only be access to $this that was made illegal, not the call itself. HHVM takes the approach of simply leaving $this undefined, but appears to special case get_class($this). http://3v4l.org/gKWBD http://3v4l.org/0gabo Note that all the methods in that class are actually annotated as static using PHPDoc, but the file is annotated as compatible with both PHP 4 and 5. I suspect that there will be a lot of cases like this, where the methods are fully static, just not declared with the keyword (for compatibility with older versions, or just laziness); there is no risk of "$this from incompatible context" there. Regards, -- Rowan Collins [IMSoP]

Thread (40 messages)