AddressSanitizer (aka ASan)
CXXFLAGS="$CXXFLAGS -g -O1 -fsanitize=address -fno-omit-frame-pointer -fno-optimize-sibling-calls" ASAN_OPTIONS='check_initialization_order=1' ASAN_SYMBOLIZER_PATH=/opt/clang/bin/llvm-symbolizer
LeakSanitizer (aka LSan)
CXXFLAGS="$CXXFLAGS -g -O1 -fsanitize=leak"
ThreadSanitizer (aka TSan)
MemorySanitizer (aka MSan)
UndefinedBehaviorSanitizer (aka UBSan)
CXXFLAGS="$CXXFLAGS -g -O1 -fsanitize=undefined,integer -fno-sanitize-recover" UBSAN_OPTIONS='print_stacktrace=1' UBSAN_SYMBOLIZER_PATH=/opt/clang/bin/llvm-symbolizer