Skip to content

Commit 449a2e9

Browse files
committed
added CMake option ANALYZE_TYPE to use the TypeSanitizer
1 parent f18713b commit 449a2e9

File tree

3 files changed

+8
-0
lines changed

3 files changed

+8
-0
lines changed

Diff for: cmake/dynamic_analyzer_options.cmake

+6
Original file line numberDiff line numberDiff line change
@@ -31,3 +31,9 @@ if(ANALYZE_UNDEFINED)
3131
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fsanitize=nullability")
3232
endif()
3333
endif()
34+
35+
if(ANALYZE_TYPE)
36+
add_compile_options(-fsanitize=type)
37+
38+
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fsanitize=type")
39+
endif()

Diff for: cmake/options.cmake

+1
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ option(ANALYZE_MEMORY "Clang dynamic analyzer: detector of uninitialized r
1616
option(ANALYZE_ADDRESS "Clang dynamic analyzer: fast memory error detector. " OFF)
1717
option(ANALYZE_THREAD "Clang dynamic analyzer: tool that detects data races. " OFF)
1818
option(ANALYZE_UNDEFINED "Clang dynamic analyzer: undefined behavior checker. " OFF)
19+
option(ANALYZE_TYPE "Clang dynamic analyzer: type sanitizer." OFF)
1920

2021
option(WARNINGS_ARE_ERRORS "Treat warnings as errors" OFF)
2122
option(EXTERNALS_AS_SYSTEM "Treat externals as system includes" OFF)

Diff for: cmake/printInfo.cmake

+1
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ message(STATUS "ANALYZE_MEMORY = ${ANALYZE_MEMORY}")
3030
message(STATUS "ANALYZE_ADDRESS = ${ANALYZE_ADDRESS}")
3131
message(STATUS "ANALYZE_THREAD = ${ANALYZE_THREAD}")
3232
message(STATUS "ANALYZE_UNDEFINED = ${ANALYZE_UNDEFINED}")
33+
message(STATUS "ANALYZE_TYPE = ${ANALYZE_TYPE}")
3334
message(STATUS)
3435
message(STATUS "WARNINGS_ARE_ERRORS = ${WARNINGS_ARE_ERRORS}")
3536
message(STATUS "EXTERNALS_AS_SYSTEM = ${EXTERNALS_AS_SYSTEM}")

0 commit comments

Comments
 (0)