From 5becd1b8a664901a1199e435556899e31e338e69 Mon Sep 17 00:00:00 2001 From: Erik Kundiman Date: Fri, 15 Sep 2023 14:27:35 +0800 Subject: Remove std::move on Linux as it fails GCC "moving a local object in a return statement prevents copy elision [-Werror=pessimizing-move]" We're back to using GCC cause Clang somehow causes CPack to not work. --- indra/llcommon/llthreadsafequeue.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'indra') diff --git a/indra/llcommon/llthreadsafequeue.h b/indra/llcommon/llthreadsafequeue.h index f396a71e6f..3ffba7b377 100644 --- a/indra/llcommon/llthreadsafequeue.h +++ b/indra/llcommon/llthreadsafequeue.h @@ -452,7 +452,11 @@ ElementT LLThreadSafeQueue::pop(void) // so we can finish draining the queue. pop_result popped = pop_(lock1, value); if (popped == POPPED) +#if LL_LINUX + return value; +#else return std::move(value); +#endif // Once the queue is DONE, there will never be any more coming. if (popped == DONE) -- cgit v1.2.3