From 4d288ac31ced0f626b3fdbcb5957b45907299744 Mon Sep 17 00:00:00 2001 From: Casey Bodley Date: Sat, 17 Sep 2022 14:46:19 -0400 Subject: [PATCH] common/async: fix duplicate definition errors from SharedMutexImpl the linker complains that several SharedMutexImpl functions are duplicated, if "common/async/shared_mutex.h" is included by more than one translation unit added 'inline' to the function definitions so they're shared instead of duplicated Signed-off-by: Casey Bodley --- src/common/async/detail/shared_mutex.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/common/async/detail/shared_mutex.h b/src/common/async/detail/shared_mutex.h index 80a5c3bd7fd..6eae25b430d 100644 --- a/src/common/async/detail/shared_mutex.h +++ b/src/common/async/detail/shared_mutex.h @@ -156,7 +156,7 @@ inline void SharedMutexImpl::lock() } } -void SharedMutexImpl::lock(boost::system::error_code& ec) +inline void SharedMutexImpl::lock(boost::system::error_code& ec) { std::unique_lock lock{mutex}; @@ -181,7 +181,7 @@ inline bool SharedMutexImpl::try_lock() return false; } -void SharedMutexImpl::unlock() +inline void SharedMutexImpl::unlock() { RequestList granted; { @@ -245,7 +245,7 @@ inline void SharedMutexImpl::lock_shared() } } -void SharedMutexImpl::lock_shared(boost::system::error_code& ec) +inline void SharedMutexImpl::lock_shared(boost::system::error_code& ec) { std::unique_lock lock{mutex}; @@ -303,8 +303,8 @@ inline void SharedMutexImpl::cancel() complete(std::move(canceled), boost::asio::error::operation_aborted); } -void SharedMutexImpl::complete(RequestList&& requests, - boost::system::error_code ec) +inline void SharedMutexImpl::complete(RequestList&& requests, + boost::system::error_code ec) { while (!requests.empty()) { auto& request = requests.front(); -- 2.39.5