summaryrefslogtreecommitdiffstats
path: root/libcxx/test/std/thread
diff options
context:
space:
mode:
authorMehdi Amini <joker.eph@gmail.com>2017-05-04 17:08:54 +0000
committerMehdi Amini <joker.eph@gmail.com>2017-05-04 17:08:54 +0000
commite9c66ad9fa9f1c1138c2a4868610e1d77271216c (patch)
tree622d32e491f918b6603f83aabac0930f87f27d1d /libcxx/test/std/thread
parent93c68e11893e895a3f70b848c4f6589920c1d2e6 (diff)
downloadbcm5719-llvm-e9c66ad9fa9f1c1138c2a4868610e1d77271216c.tar.gz
bcm5719-llvm-e9c66ad9fa9f1c1138c2a4868610e1d77271216c.zip
Add markup for libc++ dylib availability
Libc++ is used as a system library on macOS and iOS (amongst others). In order for users to be able to compile a binary that is intended to be deployed to an older version of the platform, clang provides the availability attribute <https://clang.llvm.org/docs/AttributeReference.html#availability>_ that can be placed on declarations to describe the lifecycle of a symbol in the library. See docs/DesignDocs/AvailabilityMarkup.rst for more information. Differential Revision: https://reviews.llvm.org/D31739 llvm-svn: 302172
Diffstat (limited to 'libcxx/test/std/thread')
-rw-r--r--libcxx/test/std/thread/futures/futures.future_error/what.pass.cpp8
-rw-r--r--libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/lit.local.cfg2
-rw-r--r--libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/lit.local.cfg2
-rw-r--r--libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/lit.local.cfg2
-rw-r--r--libcxx/test/std/thread/thread.threads/thread.thread.this/sleep_for.pass.cpp10
5 files changed, 21 insertions, 3 deletions
diff --git a/libcxx/test/std/thread/futures/futures.future_error/what.pass.cpp b/libcxx/test/std/thread/futures/futures.future_error/what.pass.cpp
index cc2d978d2c2..957d530ab2a 100644
--- a/libcxx/test/std/thread/futures/futures.future_error/what.pass.cpp
+++ b/libcxx/test/std/thread/futures/futures.future_error/what.pass.cpp
@@ -12,9 +12,11 @@
// LWG 2056 changed the values of future_errc, so if we're using new headers
// with an old library we'll get incorrect messages.
//
-// XFAIL: with_system_cxx_lib=x86_64-apple-macosx10.7
-// XFAIL: with_system_cxx_lib=x86_64-apple-macosx10.8
-// XFAIL: with_system_cxx_lib=x86_64-apple-darwin13
+// XFAIL: with_system_cxx_lib=macosx10.11
+// XFAIL: with_system_cxx_lib=macosx10.10
+// XFAIL: with_system_cxx_lib=macosx10.9
+// XFAIL: with_system_cxx_lib=macosx10.7
+// XFAIL: with_system_cxx_lib=macosx10.8
// <future>
diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/lit.local.cfg b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/lit.local.cfg
new file mode 100644
index 00000000000..fd3dc778c8c
--- /dev/null
+++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/lit.local.cfg
@@ -0,0 +1,2 @@
+if 'availability' in config.available_features:
+ config.unsupported = True
diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/lit.local.cfg b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/lit.local.cfg
new file mode 100644
index 00000000000..fd3dc778c8c
--- /dev/null
+++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/lit.local.cfg
@@ -0,0 +1,2 @@
+if 'availability' in config.available_features:
+ config.unsupported = True
diff --git a/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/lit.local.cfg b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/lit.local.cfg
new file mode 100644
index 00000000000..fd3dc778c8c
--- /dev/null
+++ b/libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/lit.local.cfg
@@ -0,0 +1,2 @@
+if 'availability' in config.available_features:
+ config.unsupported = True
diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.this/sleep_for.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.this/sleep_for.pass.cpp
index 27e1d2a1d42..f7a91860700 100644
--- a/libcxx/test/std/thread/thread.threads/thread.thread.this/sleep_for.pass.cpp
+++ b/libcxx/test/std/thread/thread.threads/thread.thread.this/sleep_for.pass.cpp
@@ -9,6 +9,15 @@
//
// UNSUPPORTED: libcpp-has-no-threads
+// This test depends on signal behaviour until r210210, so some system libs
+// don't pass.
+//
+// XFAIL: with_system_cxx_lib=macosx10.11
+// XFAIL: with_system_cxx_lib=macosx10.10
+// XFAIL: with_system_cxx_lib=macosx10.9
+// XFAIL: with_system_cxx_lib=macosx10.8
+// XFAIL: with_system_cxx_lib=macosx10.7
+
// <thread>
// template <class Rep, class Period>
@@ -23,6 +32,7 @@
void sig_action(int) {}
+#include <iostream>
int main()
{
int ec;
OpenPOWER on IntegriCloud