diff options
author | Arthur O'Dwyer <arthur.j.odwyer@gmail.com> | 2022-01-05 19:31:24 -0500 |
---|---|---|
committer | Arthur O'Dwyer <arthur.j.odwyer@gmail.com> | 2022-01-08 16:03:30 -0500 |
commit | 8a21e0c10cc83b8ac16241bbe31cb0ad60bc34aa (patch) | |
tree | 0e8f6a9bd12e1c20711ab063193e24ea803ed387 | |
parent | fe230bfc00a845b59af4f2a5100571ed3e6257a7 (diff) | |
download | llvm-8a21e0c10cc83b8ac16241bbe31cb0ad60bc34aa.tar.gz |
[libc++] [test] Remove `UNSUPPORTED: stdlib=msvc` from lock.pass.cpp.
Casey Carter says, "We run std/thread/thread.mutex/thread.lock.algorithm/lock.pass.cpp
on every CI and it works fine with MSVC STL. I'm guessing this annotation predates
Billy's rewrite of std::lock in 2017-ish."
Differential Revision: https://reviews.llvm.org/D116712
-rw-r--r-- | libcxx/test/std/thread/thread.mutex/thread.lock.algorithm/lock.pass.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock.algorithm/lock.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock.algorithm/lock.pass.cpp index ccf476c81c9d..8dd837b0a06c 100644 --- a/libcxx/test/std/thread/thread.mutex/thread.lock.algorithm/lock.pass.cpp +++ b/libcxx/test/std/thread/thread.mutex/thread.lock.algorithm/lock.pass.cpp @@ -8,10 +8,14 @@ // // UNSUPPORTED: libcpp-has-no-threads -// This test hangs forever when built against libstdc++ and MSVC. In order to allow -// validation of the test suite against other STLs we have to mark it -// unsupported. -// UNSUPPORTED: stdlib=libstdc++, stdlib=msvc +// This test hangs forever when built against libstdc++ (Oct 2016). +// UNSUPPORTED: stdlib=libstdc++ + +// This test isn't quite standards-conforming: it's testing our specific +// algorithm, where when lx.try_lock() fails we start the next attempt +// with an unconditional lx.lock(). Thus our algorithm can handle a list +// of mutexes where at-most-one of them is of the evil type `class L1`, +// but will loop forever if two or more of them are `class L1`. // <mutex> |