On 18/11/2014 22:54, Stanislav Malyshev wrote:
It is most definitely not a bug, it's the intended behavior that has
been coded so and has been in PHP for a very long time. You may argue it
should not be so, and it should be changed, that's fine, but it's not
what is called a bug - it's not a mistake, it's how it was intended to
work.

"Been in PHP for a very long time" != "how it was intended to work". Can you explain why this would be the intention of anyone designing the language?

It seems to me that it is an unforeseen side effect of a different feature - that when raising a Fatal Error for a non-existent function or method, the runtime bails out immediately, without bothering to evaluate the arguments. That's very different from a non-existent constructor call *successfully executing* without its parameters being evaluated.

It's a mistake that was made a long time ago, and nobody's thought it worth the effort to fix, but it's still a mistake, IMHO.

--
Rowan Collins
[IMSoP]


--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to