PHP 4.0 Bug #9250: Nested Functions are BAD, they make for inefficient debugging

From: Date: Wed, 14 Feb 2001 09:10:46 +0000
Subject: PHP 4.0 Bug #9250: Nested Functions are BAD, they make for inefficient debugging
Groups: php.dev 
Request: Send a blank email to php-dev+get-46536@lists.php.net to get a copy of this message
From: dsifry@linuxcare.com 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

« previous php.dev (#46536) next »