Made static local variable non-static (thread-safety, #5934)
Fixed #error handling:
- Reporting them once is enough
- Don't report them if --force is used - since we silently drop these configurations when we check multiple configurations. Without the fix, -f combined with -D resulted in #error being shown erroneously.
- No redundant preprocessor instance to report them
Fixed test_matchcompiler.py
travis: run test_matchcompiler.py
Updated WiX installer and VS solution to VS12 and Qt5
Refactorizations optimizing std::string usage:
1) Added global const std::string emptyString; object. It is used for:
- Empty string passed to a function, which takes the parameter by reference
-> Avoids constructor call (std::string::string(""))
=> Reduces binary size (25% for testrunner.exe, 5% for cppcheck-core.dll)
=> Avoids unnecessary calls
- Functions, that return a string by reference
-> Even functions that return an empty string in some branches can return by reference now.

2) Added overloads for TestFixture::assertEquals for the most common use cases:
-> Moves conversion from const char[] to std::string into a function, reducing code duplication in binary.
Visual Studio: Use testsuite.h as precompiled header (compiled into testrunner.cpp)
-> Reduces build time of project testrunner by 13 seconds (16%)
Refactorization: Moved condition in Token::tokAt() out of loop.
Keep console open in testrunner
Use C++11 std::sto* instead of std::ato* where appropriate (emulated in cxx11emu.h)
Added AST validation