summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHoward Hinnant <hhinnant@apple.com>2012-11-14 21:17:15 +0000
committerHoward Hinnant <hhinnant@apple.com>2012-11-14 21:17:15 +0000
commitb5c63a2e071fc8a204a97e01a206ed783fbd437d (patch)
tree954c63836017f1b6f70852fbec3d24352c807f4b
parenta89edf6a61909aaa445203c5b984239d14c90154 (diff)
downloadbcm5719-llvm-b5c63a2e071fc8a204a97e01a206ed783fbd437d.tar.gz
bcm5719-llvm-b5c63a2e071fc8a204a97e01a206ed783fbd437d.zip
Restrict optimized __pad_and_output implementation detail to desired releases.
llvm-svn: 167980
-rw-r--r--libcxx/include/iterator9
-rw-r--r--libcxx/include/locale10
2 files changed, 19 insertions, 0 deletions
diff --git a/libcxx/include/iterator b/libcxx/include/iterator
index bcbf3ae4af8..0be7a8b3497 100644
--- a/libcxx/include/iterator
+++ b/libcxx/include/iterator
@@ -317,6 +317,10 @@ template <class T, size_t N> T* end(T (&array)[N]);
#include <type_traits>
#include <cstddef>
#include <iosfwd>
+#if __APPLE__
+#include <Availability.h>
+#endif
+
#ifdef _LIBCPP_DEBUG
#include <cassert>
#endif
@@ -882,6 +886,10 @@ public:
_LIBCPP_INLINE_VISIBILITY ostreambuf_iterator& operator++(int) {return *this;}
_LIBCPP_INLINE_VISIBILITY bool failed() const _NOEXCEPT {return __sbuf_ == 0;}
+#if !defined(__APPLE__) || \
+ (defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && __MAC_OS_X_VERSION_MIN_REQUIRED > __MAC_10_8) || \
+ (defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && __IPHONE_OS_VERSION_MIN_REQUIRED > __IPHONE_6_0)
+
template <class _Ch, class _Tr>
friend
_LIBCPP_HIDDEN
@@ -889,6 +897,7 @@ public:
__pad_and_output(ostreambuf_iterator<_Ch, _Tr> __s,
const _Ch* __ob, const _Ch* __op, const _Ch* __oe,
ios_base& __iob, _Ch __fl);
+#endif
};
template <class _Iter>
diff --git a/libcxx/include/locale b/libcxx/include/locale
index 976c4cf50a1..f04a36b4399 100644
--- a/libcxx/include/locale
+++ b/libcxx/include/locale
@@ -192,6 +192,10 @@ template <class charT> class messages_byname;
#include <nl_types.h>
#endif // !_WIN32
+#if __APPLE__
+#include <Availability.h>
+#endif
+
#include <__undef_min_max>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
@@ -1587,6 +1591,10 @@ __pad_and_output(_OutputIterator __s,
return __s;
}
+#if !defined(__APPLE__) || \
+ (defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && __MAC_OS_X_VERSION_MIN_REQUIRED > __MAC_10_8) || \
+ (defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && __IPHONE_OS_VERSION_MIN_REQUIRED > __IPHONE_6_0)
+
template <class _CharT, class _Traits>
_LIBCPP_HIDDEN
ostreambuf_iterator<_CharT, _Traits>
@@ -1633,6 +1641,8 @@ __pad_and_output(ostreambuf_iterator<_CharT, _Traits> __s,
return __s;
}
+#endif
+
template <class _CharT, class _OutputIterator>
_OutputIterator
num_put<_CharT, _OutputIterator>::do_put(iter_type __s, ios_base& __iob,
OpenPOWER on IntegriCloud