Author: stl_msft
Date: Sun Feb  5 16:48:07 2017
New Revision: 294158

URL: http://llvm.org/viewvc/llvm-project?rev=294158&view=rev
Log:
[libcxx] [test] Fix Clang -Wpessimizing-move "moving a temporary object 
prevents copy elision".

N4618 30.6.6 [futures.unique_future]/12 declares "shared_future<R> share() 
noexcept;".

Fixes D29139.

Modified:
    libcxx/trunk/test/std/thread/futures/futures.unique_future/share.pass.cpp

Modified: 
libcxx/trunk/test/std/thread/futures/futures.unique_future/share.pass.cpp
URL: 
http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/thread/futures/futures.unique_future/share.pass.cpp?rev=294158&r1=294157&r2=294158&view=diff
==============================================================================
--- libcxx/trunk/test/std/thread/futures/futures.unique_future/share.pass.cpp 
(original)
+++ libcxx/trunk/test/std/thread/futures/futures.unique_future/share.pass.cpp 
Sun Feb  5 16:48:07 2017
@@ -26,7 +26,7 @@ int main()
         std::promise<T> p;
         std::future<T> f0 = p.get_future();
         static_assert( noexcept(f0.share()), "");
-        std::shared_future<T> f = std::move(f0.share());
+        std::shared_future<T> f = f0.share();
         assert(!f0.valid());
         assert(f.valid());
     }
@@ -34,7 +34,7 @@ int main()
         typedef int T;
         std::future<T> f0;
         static_assert( noexcept(f0.share()), "");
-        std::shared_future<T> f = std::move(f0.share());
+        std::shared_future<T> f = f0.share();
         assert(!f0.valid());
         assert(!f.valid());
     }
@@ -43,7 +43,7 @@ int main()
         std::promise<T> p;
         std::future<T> f0 = p.get_future();
         static_assert( noexcept(f0.share()), "");
-        std::shared_future<T> f = std::move(f0.share());
+        std::shared_future<T> f = f0.share();
         assert(!f0.valid());
         assert(f.valid());
     }
@@ -51,7 +51,7 @@ int main()
         typedef int& T;
         std::future<T> f0;
         static_assert( noexcept(f0.share()), "");
-        std::shared_future<T> f = std::move(f0.share());
+        std::shared_future<T> f = f0.share();
         assert(!f0.valid());
         assert(!f.valid());
     }
@@ -60,7 +60,7 @@ int main()
         std::promise<T> p;
         std::future<T> f0 = p.get_future();
         static_assert( noexcept(f0.share()), "");
-        std::shared_future<T> f = std::move(f0.share());
+        std::shared_future<T> f = f0.share();
         assert(!f0.valid());
         assert(f.valid());
     }
@@ -68,7 +68,7 @@ int main()
         typedef void T;
         std::future<T> f0;
         static_assert( noexcept(f0.share()), "");
-        std::shared_future<T> f = std::move(f0.share());
+        std::shared_future<T> f = f0.share();
         assert(!f0.valid());
         assert(!f.valid());
     }


_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to