Re: [PATCH] D21260: Implement variadic lock_guard.

2016-06-13 Thread Marshall Clow via cfe-commits
mclow.lists accepted this revision. mclow.lists added a comment. This revision is now accepted and ready to land. LGTM. Thanks. http://reviews.llvm.org/D21260 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mail

Re: [PATCH] D21260: Implement variadic lock_guard.

2016-06-13 Thread Eric Fiselier via cfe-commits
EricWF updated this revision to Diff 60647. EricWF added a comment. Use primary template `lock_guard<_MArgs...>` for the variadic implementation instead of specialization `lock_guard<_M1, _M2, _MRest...>`. http://reviews.llvm.org/D21260 Files: include/__config include/__mutex_base includ

Re: [PATCH] D21260: Implement variadic lock_guard.

2016-06-13 Thread Eric Fiselier via cfe-commits
EricWF updated this revision to Diff 60646. EricWF marked an inline comment as done. EricWF added a comment. Add a `__unlock` helper function. http://reviews.llvm.org/D21260 Files: include/__config include/__mutex_base include/mutex test/libcxx/thread/thread.mutex/thread.lock/thread.lo

Re: [PATCH] D21260: Implement variadic lock_guard.

2016-06-13 Thread Agustín Bergé via cfe-commits
K-ballo added a subscriber: K-ballo. K-ballo added a comment. LGTM http://reviews.llvm.org/D21260 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Re: [PATCH] D21260: Implement variadic lock_guard.

2016-06-13 Thread Eric Fiselier via cfe-commits
EricWF marked an inline comment as done. Comment at: include/mutex:592-652 @@ -578,3 +591,63 @@ #endif // _LIBCPP_HAS_NO_VARIADICS + +#if defined(_LIBCPP_ABI_VARIADIC_LOCK_GUARD) \ +&& !defined(_LIBCPP_CXX03_LANG) +template <> +class _LIBCPP_TYPE_VIS_ONLY lock_guard<> { +p

Re: [PATCH] D21260: Implement variadic lock_guard.

2016-06-13 Thread Eric Fiselier via cfe-commits
EricWF updated this revision to Diff 60619. EricWF added a comment. Address review comments: - Update synopsis it `` - Add missing `// UNSUPPORTED: libcpp-has-no-threads` in tests. http://reviews.llvm.org/D21260 Files: include/__config include/__mutex_base include/mutex test/libcxx/th

Re: [PATCH] D21260: Implement variadic lock_guard.

2016-06-13 Thread Marshall Clow via cfe-commits
mclow.lists added a comment. You should only get the multi-mutex version in C++17. Comment at: include/mutex:579 @@ -578,2 +578,3 @@ #endif // _LIBCPP_HAS_NO_VARIADICS + You need to update the synopsis at the top of the file. http://reviews.llvm.org/D21260

Re: [PATCH] D21260: Implement variadic lock_guard.

2016-06-13 Thread Eric Fiselier via cfe-commits
EricWF updated this revision to Diff 60609. EricWF added a comment. - Add missing `_LIBCPP_ABI_VARIADIC_LOCK_GUARD` macro in `__config`. - Update `cxx1z_status.html`. http://reviews.llvm.org/D21260 Files: include/__config include/__mutex_base include/mutex test/libcxx/thread/thread.mut

Re: [PATCH] D21260: Implement variadic lock_guard.

2016-06-13 Thread Eric Fiselier via cfe-commits
EricWF updated this revision to Diff 60605. EricWF added a comment. Add a variadic lock_guard test that compiles in C++03. This tests the C++11 behavior of lock_guard but using the new implementation. http://reviews.llvm.org/D21260 Files: include/__mutex_base include/mutex test/libcxx/t

Re: [PATCH] D21260: Implement variadic lock_guard.

2016-06-13 Thread Eric Fiselier via cfe-commits
EricWF updated the summary for this revision. EricWF updated this revision to Diff 60602. EricWF added a comment. Address K-ballo's comments: - Remove `mutex_type` typedef when `sizeof...(MutexTypes) > 1`. - Move the variadic `lock_guard` implementation into `` instead of `<__mutex_base>`. This

[PATCH] D21260: Implement variadic lock_guard.

2016-06-11 Thread Eric Fiselier via cfe-commits
EricWF created this revision. EricWF added a reviewer: mclow.lists. EricWF added subscribers: cfe-commits, mclow.lists. This patch is incomplete (I think? I can't remember the exact state). However I'm putting it up at @mclow.lists request. http://reviews.llvm.org/D21260 Files: include/__conf