From: Howard Hinnant Date: Wed, 14 Nov 2012 21:17:15 +0000 (+0000) Subject: Restrict optimized __pad_and_output implementation detail to desired releases. X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=b5c63a2e071fc8a204a97e01a206ed783fbd437d;p=platform%2Fupstream%2Fllvm.git Restrict optimized __pad_and_output implementation detail to desired releases. llvm-svn: 167980 --- diff --git a/libcxx/include/iterator b/libcxx/include/iterator index bcbf3ae..0be7a8b 100644 --- a/libcxx/include/iterator +++ b/libcxx/include/iterator @@ -317,6 +317,10 @@ template T* end(T (&array)[N]); #include #include #include +#if __APPLE__ +#include +#endif + #ifdef _LIBCPP_DEBUG #include #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 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 diff --git a/libcxx/include/locale b/libcxx/include/locale index 976c4cf..f04a36b 100644 --- a/libcxx/include/locale +++ b/libcxx/include/locale @@ -192,6 +192,10 @@ template class messages_byname; #include #endif // !_WIN32 +#if __APPLE__ +#include +#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 _LIBCPP_HIDDEN ostreambuf_iterator<_CharT, _Traits> @@ -1633,6 +1641,8 @@ __pad_and_output(ostreambuf_iterator<_CharT, _Traits> __s, return __s; } +#endif + template _OutputIterator num_put<_CharT, _OutputIterator>::do_put(iter_type __s, ios_base& __iob,