FunctionList parsing bug - ?!(if|while|for)
-
I just noticed that when I tried to create a function called “format_something”, it did not show up in the function list. The reason for this is because it begins with the word “for”, which, in the default functionList.xml file, has expressions defined in a number of locations, and for a number of languages, with a portion of them having: “(?!(if|while|for))\w+”. This (and similar variants of that portion) can easily be changed to “(?!(if|while|for)\s)\w+”, as a correction, in order to ensure those keywords are followed by a space before they are discounted as function names or whatever the expression is attempting to identify with the match.
This is certainly true for PHP and it looks like C source and probably several other languages as well. Whomever manages the default functionsList.xml file should be notified and directed to fix this… (whomever that is.)
Thanks, Damian
-
Whenever I update a parser this issue gets addressed, allthough I use
\b(?!(?:if|while|for)\b)
.