From d81a58423edfde297a333bb67ea25f69a5cc5f2e Mon Sep 17 00:00:00 2001
From: Nat Goodspeed <nat@lindenlab.com>
Date: Thu, 21 May 2020 10:02:13 -0400
Subject: [PATCH] DRTVWR-476: Support older compilers with LockMessageReader.

---
 indra/llmessage/message.h | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/indra/llmessage/message.h b/indra/llmessage/message.h
index a3f2829ece5..52dbf871dbc 100644
--- a/indra/llmessage/message.h
+++ b/indra/llmessage/message.h
@@ -256,14 +256,16 @@ class LLMessageReaderPointer
 class LockMessageReader
 {
 public:
-    // Because LockMessageReader contains LLCoros::LockType, it is already
-    // move-only. No need to delete the copy constructor or copy assignment.
     LockMessageReader(LLMessageReaderPointer& var, LLMessageReader* instance):
         mVar(var.mPtr),
         mLock(var.mMutex)
     {
         mVar = instance;
     }
+    // Some compilers reportedly fail to suppress generating implicit copy
+    // operations even though we have a move-only LockType data member.
+    LockMessageReader(const LockMessageReader&) = delete;
+    LockMessageReader& operator=(const LockMessageReader&) = delete;
     ~LockMessageReader()
     {
         mVar = nullptr;
-- 
GitLab