ID: 37723 Updated by: [EMAIL PROTECTED] Reported By: matt at c dot anvas dot es -Status: Open +Status: Bogus Bug Type: Class/Object related -Operating System: Any +Operating System: * -PHP Version: 5.1.4 +PHP Version: * New Comment:
Thank you for taking the time to write to us, but this is not a bug. Please double-check the documentation available at http://www.php.net/manual/ and the instructions on how to report a bug at http://bugs.php.net/how-to-report.php Static methods are bound at compile time. At compile time function name resides in Parent. Thats it - perfectly correct. Previous Comments: ------------------------------------------------------------------------ [2006-06-09 05:21:22] matt at c dot anvas dot es See previous comment ------------------------------------------------------------------------ [2006-06-07 22:32:55] matt at c dot anvas dot es The fact that it ignores the child class if it doesn't define a matching static method and instead changes its context to that of the parent is expected? How does that make sense if it inherits the parent class? If it does, indeed, inherit the parent class, it will have the static method, not having to go to the parent and ignore the child's existence. I understand that finding methods and the like from parents can be tricky, having to navigate the inheritence tree, but it's unexpected to suddenly become the parent class when you're working with the child class. I may not sway you to keep this open as an actual bug (as I see it), but your answers will at least teach me, if nothing else, the mindset of the core developers et al. I'd like to know if late static binding is considered a feature or a bug fix. If it is a bug fix, then you're right: this bug report is just a duplicate. However, if the late static binding really is just a feature to cover this up, I see a potential problem. I'd like to know, really, if this is considered a bug or a mere inconvenience. M.T. ------------------------------------------------------------------------ [2006-06-07 22:02:21] [EMAIL PROTECTED] >hey, this is a bug, because the child class should >inheret its parents innards' That's EXACTLY what it does and I personally consider this expected. The child inherits parents context, what's wrong here? But we're working on late static binding, which would change this behaviour to the expected one, that's why there is no sense in keeping this report open. Thank you. ------------------------------------------------------------------------ [2006-06-07 21:02:04] matt at c dot anvas dot es I did search, and I see something beyond 'late static binding' here. The child class (or the parser) is leaving its context in search of the method to inheret, but it doesn't bring it into its context. In fact, it takes the user into the parent's context. It changes its context. This goes beyond simply saying that you're trying to figure out how to do 'late static binding', and more into the realm of 'hey, this is a bug, because the child class should inheret its parents innards, and _stay within its context_.' Am I mistaken in this thought? Is is perfectly OK and not a bug that the context itself is changed? I submitted this bug because I don't think the previous bug submissions adequately described the issue at hand. Please read the description. M.T. ------------------------------------------------------------------------ [2006-06-07 08:05:47] [EMAIL PROTECTED] Try to search bug DB before reporting new issues. See bug #37654 and bug #37684. ------------------------------------------------------------------------ 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 http://bugs.php.net/37723 -- Edit this bug report at http://bugs.php.net/?id=37723&edit=1