* cleaned up compiler options related code in CMake
* moved cmake_minimum_required() and raised to latest 2.8.x version
* use proper compiler version check / print compiler version
* fixed linking of sanitized builds
* added proper version checks to newer Clang warnings and enabled them / moved tinyxml_objs flags to proper compiler
* disabled -Wdeprecated-declarations for Clang
* compileroptions.cmake: removed unnecessary check for clang++ existence - CMAKE_CXX_COMPILER_ID is determined by CMake
* printInfo.cmake: removed unnecessary message for ANALYZE_ADDRESS - LSAN is part of ASAN and enabled by default
* cleaned up if() comparisons in CMake
* added/adjusted TODOs
* fixed compilation of OSS-Fuzz clients
* added preliminary CMake target for fuzz-client - also added *_sanitized targets of dependencies (only available with Clang)
* added oss-fuzz build to Travis CI
* bug fix - de-escape double backslashes in file paths of #line directives
From merged PR danmar/simplecpp#187.
* externals/simplecpp/simplecpp.cpp:
- add static function REPLACEALL which replaces a string FROM to the
string TO at every occurance in the input string.
- simplecpp::TokenList::readfile: replace any double backslashes in any
file path of a #line directive.
* externals/simplecpp/simplecpp.cpp: astyling
* Also catch preprocessor errors possibly issued during loading files
Currently only errors that are issued during preprocessing are caught.
* Bump simplecpp, implement suggestions
Use return value checking instead of catching an exception for calling
Preprocessor::loadFiles().
Handle new enum value simplecpp::Output::EXPLICIT_INCLUDE_NOT_FOUND
where the corresponding enum is used in Cppcheck.
* Use "noloc" location if an explicit include can not be opened
* make ellipsis ... a single token
Using cppcheck -E to preprocess code with ellipsis produces output that
can't be compiled because ... is split into 3 tokens.
* try to fix addon