From: [EMAIL PROTECTED]
Operating system: Any
PHP version: 4.0.4pl1
PHP Bug Type: Feature/Change Request
Bug description: Nested Functions are BAD, they make for inefficient debugging
If you have a missing close-bracket "}" somewhere in your code, the PHP parser tells
you that the error is at the last line. If you have a multi-hundred or thousand line
file, this makes life a bitch.
Rasmus tells me that the reason for this behavior is because functions can be nested,
which means that:
function a
{
function b
{
}
}
is OK. This is a silly feature. Why do you have it, for scoping reasons? It means
that you can't effectively tell where syntax errors occur.
Suggestion: Either make nested functions turned off by default but you can turn them
on with a PHP global variable, like $PHP_BIZARRO_NESTED_FUNCTIONS = 1;
or
have the parser syntax set up so that it marks where a possible syntax error occurred
(IOW it sees a possible nested function, but it could also be a syntax error), and if
it reaches the end of the file with a missing "}" or two, that it displays the
location where it parsed the nested function.
--
Edit Bug report at: http://bugs.php.net/?id=9250&edit=1
--
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]