sanitizer_common: disable thread safety annotations for googletest
Recently in 0da172b1 thread safety warnings-as-errors were enabled. However, googletest is currently not compatible with thread safety annotations. On FreeBSD, which has the pthread functions marked with such annotations, this results in errors when building the compiler-rt tests: In file included from compiler-rt/lib/interception/tests/interception_test_main.cpp:15: In file included from llvm/utils/unittest/googletest/include/gtest/gtest.h:62: In file included from llvm/utils/unittest/googletest/include/gtest/internal/gtest-internal.h:40: llvm/utils/unittest/googletest/include/gtest/internal/gtest-port.h:1636:3: error: mutex 'mutex_' is still held at the end of function [-Werror,-Wthread-safety-analysis] } ^ llvm/utils/unittest/googletest/include/gtest/internal/gtest-port.h:1633:32: note: mutex acquired here GTEST_CHECK_POSIX_SUCCESS_(pthread_mutex_lock(&mutex_)); ^ llvm/utils/unittest/googletest/include/gtest/internal/gtest-port.h:1645:32: error: releasing mutex 'mutex_' that was not held [-Werror,-Wthread-safety-analysis] GTEST_CHECK_POSIX_SUCCESS_(pthread_mutex_unlock(&mutex_)); ^ 2 errors generated. At some point googletest will hopefully be made compatible with thread safety annotations, but for now add corresponding `-Wno-thread-*` flags to `COMPILER_RT_GTEST_CFLAGS` to silence these warnings-as-errors. Reviewed By: dvyukov Differential Revision: https://reviews.llvm.org/D107491
Loading
Please sign in to comment