+ Lowered rate of false positives by writing a nice little script that will remove comments (// and /*), as well as strings (single quotes only, and will skip double quotes), which would be worth an extra script file just by itself (I'll probably split it eventually.) In order to ensure it's done properly, the script has to spend a long time on this, making it up to 5 or 10 times slower than before. But, hey, less false positives is better!
+ Lowered rate of false positives by writing a nice little script that will remove comments (// and /*), as well as strings (single quotes only, and will skip double quotes), which would be worth an extra script file just by itself (I'll probably split it eventually.) In order to ensure it's done properly, the script has to spend a long time on this, making it up to 5 or 10 times slower than before. But, hey, less false positives is better!

@ Note that due to this change, the fixme option is likely to be totally broken. I tried to ensure it wasn't, but I can't say for sure, and will need to test.

+ Added an ignorefp option, to prevent the script from showing potential false positives. If you're fixing files manually, this could be a blessing.

+ Added more false positive detections for undeclared globals: variables declared in function params, in foreach() loops, in list() calls, and declared as an implied array by assignment. Removed 'found in a comment' false positive, since that is no longer an issue.

* Slight cosmetic improvements. I still need to add some congratulations if your code shows no signs of a global problem.

+ Adding a time limit, if PHP allows it.

+ Adding links to the couple of non-threatening options, noclean and ignorefp.

+ Adding $modSettings to the list of globals to look for. This is a SMF global, not used in Wedge, but whatever.

! Cache folder shouldn't be checked.

Signed-off-by: Nao <21592d443e0aaae024593813d6edd76a76537c29@wedge>

Wedge/tools,PortaMx/tools