Reflection API b0rked in HEAD and PHP_5_2

php.internals

Sebastian Bergmann

20 years ago
http://phpfi.com/122573
-- Sebastian Bergmann http://www.sebastian-bergmann.de/ GnuPG Key: 0xB85B5D69 / 27A7 2B14 09E4 98CD 6277 0E5B 6867 C514 B85B 5D69

Hannes Magnusson

20 years ago
Hi Sebastian On 6/8/06, Sebastian Bergmann <sb@sebastian-bergmann.de> wrote:
> http://phpfi.com/122573
Looks like the arginfo patch broke it.., well, actually it uncovered a bug in ext/reflection. The messages are correct, ReflectionMethod::invokeArgs takes two arguments but ReflectionFunction::invokeArgs only takes one (ReflectionMethod extends ReflectionFunction) ergo=>E_STRICT in 5_2 and fatal in HEAD. The reason for it worked before is the engine has no idea about how many arguments each method takes - unless it gets that info specifically. We've got two options: don't provide the argument info (and therefor break our own OO rules) or take a deeper look into ext/reflection and fix the inherit problems.. -Hannes