going to try clang_sanitize with libstdc++ with g++-6 implementation

Conflicts:
	.travis.yml
	Makefile
This commit is contained in:
Daniel Cohen 2016-12-25 14:04:04 +02:00
parent d7029c37aa
commit 010ea126f3
2 changed files with 16 additions and 9 deletions

View file

@ -42,14 +42,20 @@ matrix:
- make check TEST_PREFIX="valgrind --error-exitcode=1 --leak-check=full " TEST_PATTERN="" - make check TEST_PREFIX="valgrind --error-exitcode=1 --leak-check=full " TEST_PATTERN=""
# cLang sanitizer # cLang sanitizer
# note: sadly clang's libc++ has errors when running with sanitize,
#- os: linux # so we use clang with gcc's libstdc++ which doesn't give those error.
# env: # that's why we need to install g++-6 to get the lastest version
# - LLVM_VERSION=3.8.1 - os: linux
# - SPECIAL=sanitizer env:
# compiler: clang - LLVM_VERSION=3.8.1
# before_script: - SPECIAL=sanitizer
# - make clang_sanitize addons:
apt:
sources: ['ubuntu-toolchain-r-test']
packages: g++-6
compiler: clang
before_script:
- make clang_sanitize
# cppcheck # cppcheck

View file

@ -92,8 +92,9 @@ fuzzing-stop:
cppcheck: cppcheck:
cppcheck --enable=warning --inconclusive --force --std=c++11 src/json.hpp --error-exitcode=1 cppcheck --enable=warning --inconclusive --force --std=c++11 src/json.hpp --error-exitcode=1
# run clang sanitize (we are overrding the CXXFLAGS provided by travis in order to use gcc's libstdc++)
clang_sanitize: clean clang_sanitize: clean
CXX=clang++ CXXFLAGS="-g -O2 -fsanitize=address -fsanitize=undefined -fno-omit-frame-pointer" $(MAKE) CXX=clang++ CXXFLAGS="-g -O2 -fsanitize=address -fsanitize=undefined -fno-omit-frame-pointer" $(MAKE) check -C test
########################################################################## ##########################################################################