summaryrefslogtreecommitdiffstats
path: root/build_settings.cmake
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@online.no>2022-12-09 10:26:33 +0100
committerTor Egge <Tor.Egge@online.no>2022-12-09 10:26:33 +0100
commit95a4b5ae84f5eebc8c06fca498d253503ec6e459 (patch)
tree7ab52af636c693a10b66fb4c2c86a8f65f3d517d /build_settings.cmake
parent0f15b405cad738460a8126bf9ef689ec3edfd094 (diff)
Disable vptr checks when using undefined sanitizer.
Diffstat (limited to 'build_settings.cmake')
-rw-r--r--build_settings.cmake4
1 files changed, 4 insertions, 0 deletions
diff --git a/build_settings.cmake b/build_settings.cmake
index 8383feb4e1f..ccfe61f388f 100644
--- a/build_settings.cmake
+++ b/build_settings.cmake
@@ -90,6 +90,10 @@ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -O3 -fno-omit-frame-pointer ${C_WARN_OPTS
# AddressSanitizer/ThreadSanitizer work for both GCC and Clang
if (VESPA_USE_SANITIZER)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsanitize=${VESPA_USE_SANITIZER}")
+ if (VESPA_USE_SANITIZER STREQUAL "undefined")
+ # Many false positives when checking vptr due to limited visibility
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-sanitize=vptr")
+ endif()
endif()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_C_FLAGS} ${CXX_SPECIFIC_WARN_OPTS} -std=c++2a -fdiagnostics-color=auto ${EXTRA_CXX_FLAGS}")
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "AppleClang")