summaryrefslogtreecommitdiffstats
path: root/libcxx/test/std/utilities/time/time.clock/time.clock.hires/consistency.pass.cpp
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/utilities/time/time.clock/time.clock.hires/consistency.pass.cpp
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/utilities/time/time.clock/time.clock.hires/consistency.pass.cpp')
-rw-r--r--libcxx/test/std/utilities/time/time.clock/time.clock.hires/consistency.pass.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/libcxx/test/std/utilities/time/time.clock/time.clock.hires/consistency.pass.cpp b/libcxx/test/std/utilities/time/time.clock/time.clock.hires/consistency.pass.cpp
index bf2a2e58913..24847dd70f8 100644
--- a/libcxx/test/std/utilities/time/time.clock/time.clock.hires/consistency.pass.cpp
+++ b/libcxx/test/std/utilities/time/time.clock/time.clock.hires/consistency.pass.cpp
@@ -7,15 +7,15 @@
//
//===----------------------------------------------------------------------===//
//
-// This test uses new symbols that were not defined in the libc++ shipped on
-// darwin11 and darwin12:
-// XFAIL: with_system_cxx_lib=x86_64-apple-macosx10.7
-// XFAIL: with_system_cxx_lib=x86_64-apple-macosx10.8
-
// Due to C++17 inline variables ASAN flags this test as containing an ODR
// violation because Clock::is_steady is defined in both the dylib and this TU.
// UNSUPPORTED: asan
+// Starting with C++17, Clock::is_steady is inlined (but not before LLVM-3.9!),
+// but before C++17 it requires the symbol to be present in the dylib.
+// XFAIL: availability=macosx10.7 && (c++98 || c++03 || c++11 || c++14 || apple-clang-7 || apple-clang-8.0)
+// XFAIL: availability=macosx10.8 && (c++98 || c++03 || c++11 || c++14 || apple-clang-7 || apple-clang-8.0)
+
// <chrono>
// high_resolution_clock
OpenPOWER on IntegriCloud