adb: enable -Wthread-safety on linux/darwin.

Delete the sysdeps/mutex tests that -Wthread-safety complains about.
We're using the standard library's std::mutex on all platforms now,
anyway.

Test: mma
Change-Id: I3bf958c72604b29dfb1d9c898d3c9aa34aed2685
This commit is contained in:
Josh Gao 2017-05-03 14:01:35 -07:00
parent 483d2f9a59
commit 68f679c35b
2 changed files with 6 additions and 51 deletions

View file

@ -17,11 +17,15 @@ ADB_COMMON_CFLAGS := \
-Wvla \
-DADB_REVISION='"$(adb_version)"' \
ADB_COMMON_linux_CFLAGS := \
ADB_COMMON_posix_CFLAGS := \
-Wexit-time-destructors \
-Wthread-safety
ADB_COMMON_linux_CFLAGS := \
$(ADB_COMMON_posix_CFLAGS) \
ADB_COMMON_darwin_CFLAGS := \
-Wexit-time-destructors \
$(ADB_COMMON_posix_CFLAGS) \
# Define windows.h and tchar.h Unicode preprocessor symbols so that
# CreateFile(), _tfopen(), etc. map to versions that take wchar_t*, breaking the

View file

@ -201,55 +201,6 @@ TEST_F(sysdeps_poll, fd_count) {
}
}
TEST(sysdeps_mutex, mutex_smoke) {
static std::atomic<bool> finished(false);
static std::mutex &m = *new std::mutex();
m.lock();
ASSERT_FALSE(m.try_lock());
std::thread thread([]() {
ASSERT_FALSE(m.try_lock());
m.lock();
finished.store(true);
std::this_thread::sleep_for(200ms);
m.unlock();
});
ASSERT_FALSE(finished.load());
std::this_thread::sleep_for(100ms);
ASSERT_FALSE(finished.load());
m.unlock();
std::this_thread::sleep_for(100ms);
m.lock();
ASSERT_TRUE(finished.load());
m.unlock();
thread.join();
}
TEST(sysdeps_mutex, recursive_mutex_smoke) {
static std::recursive_mutex &m = *new std::recursive_mutex();
m.lock();
ASSERT_TRUE(m.try_lock());
m.unlock();
std::thread thread([]() {
ASSERT_FALSE(m.try_lock());
m.lock();
std::this_thread::sleep_for(500ms);
m.unlock();
});
std::this_thread::sleep_for(100ms);
m.unlock();
std::this_thread::sleep_for(100ms);
ASSERT_FALSE(m.try_lock());
m.lock();
m.unlock();
thread.join();
}
TEST(sysdeps_condition_variable, smoke) {
static std::mutex &m = *new std::mutex;
static std::condition_variable &cond = *new std::condition_variable;