Please note that the error report is slightly disabled, as PHP will log this message at any time when you have the E_STRICT error E_STRICT (or, more recently, regardless of your error level, provided that you have installed a custom error handler).
PHP visibility rules clearly demonstrate that the child does not have the ability to see their parental private members, and I doubt that this is all surprising to everyone. If the child does not see his parental methods, I do not understand how he can fulfill his definitions.
I personally believe that a mistake marked as fictitious without explaining why it was not a real flaw (since it is not obvious, and I could not find mention of this in the documentation), this is a little wrong, but yes. As an aside, I believe that line 2669 in zend_compile.c should look like this:
} else if (child->prototype && (EG(error_reporting) & E_STRICT || EG(user_error_handler))) {
... that would avoid the error when the parent method was marked as private. Considering that you always have the opportunity not to register E_STRICT , although in fact this does not negatively affect me, I believe this is not very important. I definitely don't see how this could have been intentional, but I'm not a PHP developer either.
Tim stone
source share