STL_MSFT created this revision.
STL_MSFT added reviewers: EricWF, mclow.lists.
STL_MSFT added a subscriber: cfe-commits.

Avoid mixing assignment and returning. "return locked = true;" looks really 
suspicious, even though it happens to be correct here. Spend an extra statement 
to make the code clearer, and compilers happier.

Fixes MSVC warning C6282 "Incorrect operator:  assignment of constant in 
Boolean context. Consider using '==' instead."

http://reviews.llvm.org/D21582

Files:
  
test/std/thread/thread.mutex/thread.lock/thread.lock.guard/variadic_adopt_lock.pass.cpp
  
test/std/thread/thread.mutex/thread.lock/thread.lock.guard/variadic_mutex.pass.cpp

Index: 
test/std/thread/thread.mutex/thread.lock/thread.lock.guard/variadic_mutex.pass.cpp
===================================================================
--- 
test/std/thread/thread.mutex/thread.lock/thread.lock.guard/variadic_mutex.pass.cpp
+++ 
test/std/thread/thread.mutex/thread.lock/thread.lock.guard/variadic_mutex.pass.cpp
@@ -28,7 +28,7 @@
     ~TestMutex() { assert(!locked); }
 
     void lock() { assert(!locked); locked = true; }
-    bool try_lock() { if (locked) return false; return locked = true; }
+    bool try_lock() { if (locked) return false; locked = true; return true; }
     void unlock() { assert(locked); locked = false; }
 
     TestMutex(TestMutex const&) = delete;
Index: 
test/std/thread/thread.mutex/thread.lock/thread.lock.guard/variadic_adopt_lock.pass.cpp
===================================================================
--- 
test/std/thread/thread.mutex/thread.lock/thread.lock.guard/variadic_adopt_lock.pass.cpp
+++ 
test/std/thread/thread.mutex/thread.lock/thread.lock.guard/variadic_adopt_lock.pass.cpp
@@ -25,7 +25,7 @@
     TestMutex() = default;
 
     void lock() { assert(!locked); locked = true; }
-    bool try_lock() { if (locked) return false; return locked = true; }
+    bool try_lock() { if (locked) return false; locked = true; return true; }
     void unlock() { assert(locked); locked = false; }
 
     TestMutex(TestMutex const&) = delete;


Index: test/std/thread/thread.mutex/thread.lock/thread.lock.guard/variadic_mutex.pass.cpp
===================================================================
--- test/std/thread/thread.mutex/thread.lock/thread.lock.guard/variadic_mutex.pass.cpp
+++ test/std/thread/thread.mutex/thread.lock/thread.lock.guard/variadic_mutex.pass.cpp
@@ -28,7 +28,7 @@
     ~TestMutex() { assert(!locked); }
 
     void lock() { assert(!locked); locked = true; }
-    bool try_lock() { if (locked) return false; return locked = true; }
+    bool try_lock() { if (locked) return false; locked = true; return true; }
     void unlock() { assert(locked); locked = false; }
 
     TestMutex(TestMutex const&) = delete;
Index: test/std/thread/thread.mutex/thread.lock/thread.lock.guard/variadic_adopt_lock.pass.cpp
===================================================================
--- test/std/thread/thread.mutex/thread.lock/thread.lock.guard/variadic_adopt_lock.pass.cpp
+++ test/std/thread/thread.mutex/thread.lock/thread.lock.guard/variadic_adopt_lock.pass.cpp
@@ -25,7 +25,7 @@
     TestMutex() = default;
 
     void lock() { assert(!locked); locked = true; }
-    bool try_lock() { if (locked) return false; return locked = true; }
+    bool try_lock() { if (locked) return false; locked = true; return true; }
     void unlock() { assert(locked); locked = false; }
 
     TestMutex(TestMutex const&) = delete;
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to