Curious. I tend to follow PSR-12 (with few exceptions): https://www.php-fig.org/psr/psr-12/#44-methods-and-functions <https://www.php-fig.org/psr/psr-12/#44-methods-and-functions>
Which requires visibility declaration on all members (methods and properties). Would dropping the requirement make the following impossible: class SomeClass { private function __toString() {} } $instance = new SomeClass(); $instance->__toString(); It’s one thing if PHP can always reach it, it’s a different thing if I, as the developer, can make it so others can’t. Cheers, Josh > On Jul 13, 2020, at 1:32 PM, Gabriel Caruso <carusogabr...@php.net> wrote: > > Hello internals, > > During the development of https://wiki.php.net/rfc/magic-methods-signature I > found something that I'd like to share with you, and possibly propose to > drop it: there's a warning that php-src throws when a magic method is > declared with visibility different than `public`: https://3v4l.org/LKnKB. > > This warning does not make much sense as the magic method is executed > regardless of its visibility. Should it be dropped? > > > - Gabriel Caruso