Req #17101 [Fbk]: Parse errors involving control structures should indicate the start of it

From: Date: Wed, 16 Jul 2014 00:55:35 +0000
Subject: Req #17101 [Fbk]: Parse errors involving control structures should indicate the start of it
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-186651@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=17101&edit=1 ID: 17101 Updated by: yohgaki@php.net Reported by: destes at ix dot netcom dot com Summary: Parse errors involving control structures should indicate the start of it Status: Feedback Type: Feature/Change Request Package: *General Issues Operating System: Irrelevant PHP Version: Any Block user comment: N Private report: N New Comment: I think this should be closed as 'wont fix'. Previous Comments: ------------------------------------------------------------------------ [2014-04-30 23:03:18] levim@php.net Is there still interest in this? ------------------------------------------------------------------------ [2003-07-13 18:43:37] madsen at sjovedyr dot dk Just reporting that a } might be missing somewhere would be a great improvement, at least until the above mentioned solution is implemented... I've had heaps of ppl asking me what the error in "this line (?>)" was.. :) ------------------------------------------------------------------------ [2002-05-08 18:36:02] destes at ix dot netcom dot com Reopening issue, see comments. ------------------------------------------------------------------------ [2002-05-08 17:08:41] destes at ix dot netcom dot com Even providing the start of the If structure that is unclosed - even if it has nested Ifs - would still provide useful functionality. When in doubt, go with the earliest one. That in itself will greatly narrow the range of possibilities. I should also note that in your example, in both possible cases, it is the closing brace for the FIRST if that is missing. Even if the second one were nested inside the first one, the missing brace would be for the first If statement, so you could safely report "Parse error: Unclosed If Structure beginning on line ____" and it would be greatly useful. I admit that there is no way to determine where the closing brace should go. However, you can (At the very least) determine the highest level If structure which was never closed - and report that line. Please let me know if i'm not making sense, which happens often =) Thanks for your blindingly-fast reply. -Steve ------------------------------------------------------------------------ [2002-05-08 14:54:41] sander@php.net There is no way how PHP can detect it. Consider the following (bogus) script: if($foo) { ... if($bar) { ... } How can PHP know which brace is missing? It can be if($foo) { ... } if($bar) { ... } but it can also be if($foo) { ... if($bar) { ... } } If you have a good idea how to detect it, please let us hear. ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at https://bugs.php.net/bug.php?id=17101 -- Edit this bug report at https://bugs.php.net/bug.php?id=17101&edit=1

« previous php.bugs (#186651) next »