From 594a7afce6a8b2e6a658d14881b8247b3a63efd8 Mon Sep 17 00:00:00 2001 From: Rye Date: Mon, 3 Feb 2025 11:42:21 -0500 Subject: Fix pessimizing move warning being emitted by the compiler --- indra/llcommon/llthreadsafequeue.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'indra/llcommon/llthreadsafequeue.h') diff --git a/indra/llcommon/llthreadsafequeue.h b/indra/llcommon/llthreadsafequeue.h index 034e3f7897..1a1d06a6fd 100644 --- a/indra/llcommon/llthreadsafequeue.h +++ b/indra/llcommon/llthreadsafequeue.h @@ -452,7 +452,9 @@ ElementT LLThreadSafeQueue::pop(void) // so we can finish draining the queue. pop_result popped = pop_(lock1, value); if (popped == POPPED) - return std::move(value); + // don't use std::move when returning local value because + // it prevents the compiler from optimizing with copy elision + return value; // Once the queue is DONE, there will never be any more coming. if (popped == DONE) -- cgit v1.2.3