Edit report at https://bugs.php.net/bug.php?id=55300&edit=1
ID: 55300 Updated by: cataphr...@php.net Reported by: frederic dot hardy at mageekbox dot net Summary: \DirectoryIterator, parent::__construct() and \LogicException -Status: Assigned +Status: Closed Type: Bug Package: SPL related Operating System: Linux PHP Version: 5.4.0alpha2 Assigned To: cataphract Block user comment: N Private report: N New Comment: Replaced with 5.3 code. Previous Comments: ------------------------------------------------------------------------ [2011-10-29 23:17:16] cataphr...@php.net Automatic comment from SVN on behalf of cataphract Revision: http://svn.php.net/viewvc/?view=revision&revision=318566 Log: - Reverted changes that required constructor overrides to invoke the parent constructor in several SPL classes and applied 5.3 fixes instead. Related bugs: #54384, #55175 and #55300 ------------------------------------------------------------------------ [2011-09-14 15:38:41] frederic dot hardy at mageekbox dot net \Phar has the same problem, because this class extends \recursiveDirectoryIterator. And stream wrapper can not be used with it because "Phar objects can only be created from local files". ------------------------------------------------------------------------ [2011-09-02 20:03:27] krossekrabbe at gmail dot com No, it's not only a BC break. It's exactly the same, it is not possible to extend the class. Not when calling parent::__construct(), nor when not overriding __construct() at all. ------------------------------------------------------------------------ [2011-08-09 08:52:19] cataphr...@php.net I wouldn't consider these duplicates. #55175 is an actual problem, this is simply an intended BC break that turned out to have a larger impact than I expected. I'll take care of both not after the beginning of next week. ------------------------------------------------------------------------ [2011-08-09 08:46:37] s...@php.net Actually according to my test case in https://bugs.php.net/bug.php?id=55175 - it's even happening if you don't redefine the constructor at all. It prevents extending the class altogether, which makes no sense to me. ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at https://bugs.php.net/bug.php?id=55300 -- Edit this bug report at https://bugs.php.net/bug.php?id=55300&edit=1