* CC: fix a bug (logic error) introduced in rev 9601.

git-svn-id: https://svn.code.sf.net/p/codeblocks/code/trunk@9638 2a5c6006-c6dd-42ca-98ab-0921f2732cef
- CC: use wx_str() instead of c_str().

git-svn-id: https://svn.code.sf.net/p/codeblocks/code/trunk@9639 2a5c6006-c6dd-42ca-98ab-0921f2732cef
* CC: don't compare args in the TokenTree::TokenExists() function if the token is a container (such as a class Token), see: Topic, "Rev9537 introduce a bug which will two class labels in the symbol browser" - http://forums.codeblocks.org/index.php/topic,18917.msg129587.html#msg129587

git-svn-id: https://svn.code.sf.net/p/codeblocks/code/trunk@9640 2a5c6006-c6dd-42ca-98ab-0921f2732cef
- CC: add comments for the symbol browser related class.

git-svn-id: https://svn.code.sf.net/p/codeblocks/code/trunk@9641 2a5c6006-c6dd-42ca-98ab-0921f2732cef
* CC: improvement of the parser on handling enums. (thanks Huki)
1, Uses expression solver to calculate the enum value, expand macro assignments.
2, Supports enum assignment to a previous enum (checks under the correct parent).
3, If the expression cannot be evaluated (eg, unknown macro), leave it and the next enums blank and don't reset it to zero.
Discussions can be found here: http://forums.codeblocks.org/index.php/topic,18315.msg129491.html#msg129491

git-svn-id: https://svn.code.sf.net/p/codeblocks/code/trunk@9642 2a5c6006-c6dd-42ca-98ab-0921f2732cef
- CC: add and adjust comments, no function changed.

git-svn-id: https://svn.code.sf.net/p/codeblocks/code/trunk@9643 2a5c6006-c6dd-42ca-98ab-0921f2732cef
* cctest: add a framework of codecompletion test, the details are listed in C::B forum topic (batch codecompletion test framework - http://forums.codeblocks.org/index.php/topic,17538.msg120196.html#msg120196)
1, remove the file cctest.h and cctest.cpp, because those standalone classes/functions were moved to NativeParserTest class (derived from NativeParserBase), so a lot of functions can be reused from NativeParserBase.
2, remove CC_PARSER_TEST definition to reduce parser log messages, only show codecompletion test result and the show fail and pass testing counts. If the user need to see the full parser log messages, they should define them, which will plot a log of log messages.
3, redirect the wxLogMessage to the text ctrl of the frame.
4, fix typo in comments, and add some comments.
5, project target setting change, make it a gui app instead of console app, and redirect the wxLogMessage to the wxTextCtrl.
6, set the default parsing file to testing/cc_function_decls.cpp, not the default test.h
7, add the wxsmith file to cbp, so it can be opened quickly from the project manager.
8, by default, Token tree structure is not logged, but it can be logged by click the "Print Tree" button.
9, add some string variable to the wx and gcc search path, avoid the hard-coded path.

git-svn-id: https://svn.code.sf.net/p/codeblocks/code/trunk@9644 2a5c6006-c6dd-42ca-98ab-0921f2732cef
- CC: remove unused function: void Tokenizer::ReadToEOL(wxArrayString& tokens)
- CC: add some comments on Tokenizer class, code refactoring in function void Tokenizer::ReadParentheses(wxString& str), merge some case clauses in switch-case statement.
- CC: correct an comment error of bool Tokenizer::SkipToStringEnd(const wxChar& ch)

git-svn-id: https://svn.code.sf.net/p/codeblocks/code/trunk@9645 2a5c6006-c6dd-42ca-98ab-0921f2732cef