Protect lock tests under libcpp-no-exceptions

Skip tests that expect an exception to be thrown.

Differential Revision: https://reviews.llvm.org/D26184

llvm-svn: 285695
This commit is contained in:
Roger Ferrer Ibanez
2016-11-01 15:00:16 +00:00
parent 05ce4ca0dd
commit 60d6ef63a4
13 changed files with 86 additions and 18 deletions

View File

@@ -7,7 +7,6 @@
//
//===----------------------------------------------------------------------===//
//
// XFAIL: libcpp-no-exceptions
// UNSUPPORTED: libcpp-has-no-threads
// <mutex>
@@ -18,6 +17,8 @@
#include <mutex>
#include <cassert>
#include "test_macros.h"
class L0
{
bool locked_;
@@ -63,7 +64,7 @@ public:
bool try_lock()
{
throw 1;
TEST_THROW(1);
return locked_;
}
@@ -95,6 +96,7 @@ int main()
assert(!l0.locked());
assert(!l1.locked());
}
#ifndef TEST_HAS_NO_EXCEPTIONS
{
L0 l0;
L2 l1;
@@ -123,6 +125,7 @@ int main()
assert(!l1.locked());
}
}
#endif
#ifndef _LIBCPP_HAS_NO_VARIADICS
{
L0 l0;
@@ -142,6 +145,7 @@ int main()
assert(!l1.locked());
assert(!l2.locked());
}
#ifndef TEST_HAS_NO_EXCEPTIONS
{
L2 l0;
L2 l1;
@@ -167,6 +171,7 @@ int main()
assert(!l1.locked());
assert(!l2.locked());
}
#endif
{
L0 l0;
L0 l1;
@@ -194,6 +199,7 @@ int main()
assert(!l1.locked());
assert(!l2.locked());
}
#ifndef TEST_HAS_NO_EXCEPTIONS
{
L0 l0;
L0 l1;
@@ -242,6 +248,7 @@ int main()
assert(!l2.locked());
}
}
#endif
{
L1 l0;
L1 l1;
@@ -269,6 +276,7 @@ int main()
assert(!l1.locked());
assert(!l2.locked());
}
#ifndef TEST_HAS_NO_EXCEPTIONS
{
L1 l0;
L1 l1;
@@ -458,6 +466,7 @@ int main()
assert(!l2.locked());
}
}
#endif // TEST_HAS_NO_EXCEPTIONS
{
L0 l0;
L0 l1;