ソースを参照

k_scoped_lock: delete copy and move assignment operators

If we delete the copy and move constructor, we should also be deleting
the copy and move assignment operators (and even if this were intended,
it would be pretty odd to not document why it's done this way).
Lioncash 5 年 前
コミット
c018769016
1 ファイル変更5 行追加2 行削除
  1. 5 2
      src/core/hle/kernel/k_scoped_lock.h

+ 5 - 2
src/core/hle/kernel/k_scoped_lock.h

@@ -25,14 +25,17 @@ public:
     explicit KScopedLock(T* l) : lock_ptr(l) {
         this->lock_ptr->Lock();
     }
-    explicit KScopedLock(T& l) : KScopedLock(std::addressof(l)) { /* ... */
-    }
+    explicit KScopedLock(T& l) : KScopedLock(std::addressof(l)) {}
+
     ~KScopedLock() {
         this->lock_ptr->Unlock();
     }
 
     KScopedLock(const KScopedLock&) = delete;
+    KScopedLock& operator=(const KScopedLock&) = delete;
+
     KScopedLock(KScopedLock&&) = delete;
+    KScopedLock& operator=(KScopedLock&&) = delete;
 
 private:
     T* lock_ptr;