diff --git a/libcxx/include/experimental/deque b/libcxx/include/experimental/deque --- a/libcxx/include/experimental/deque +++ b/libcxx/include/experimental/deque @@ -40,9 +40,13 @@ _LIBCPP_BEGIN_NAMESPACE_LFTS_PMR +#ifndef _LIBCPP_CXX03_LANG + template using deque = _VSTD::deque<_ValueT, polymorphic_allocator<_ValueT>>; +#endif // _LIBCPP_CXX03_LANG + _LIBCPP_END_NAMESPACE_LFTS_PMR #endif /* _LIBCPP_EXPERIMENTAL_DEQUE */ diff --git a/libcxx/include/experimental/forward_list b/libcxx/include/experimental/forward_list --- a/libcxx/include/experimental/forward_list +++ b/libcxx/include/experimental/forward_list @@ -40,9 +40,13 @@ _LIBCPP_BEGIN_NAMESPACE_LFTS_PMR +#ifndef _LIBCPP_CXX03_LANG + template using forward_list = _VSTD::forward_list<_ValueT, polymorphic_allocator<_ValueT>>; +#endif // _LIBCPP_CXX03_LANG + _LIBCPP_END_NAMESPACE_LFTS_PMR #endif /* _LIBCPP_EXPERIMENTAL_FORWARD_LIST */ diff --git a/libcxx/include/experimental/list b/libcxx/include/experimental/list --- a/libcxx/include/experimental/list +++ b/libcxx/include/experimental/list @@ -40,9 +40,13 @@ _LIBCPP_BEGIN_NAMESPACE_LFTS_PMR +#ifndef _LIBCPP_CXX03_LANG + template using list = _VSTD::list<_ValueT, polymorphic_allocator<_ValueT>>; +#endif // _LIBCPP_CXX03_LANG + _LIBCPP_END_NAMESPACE_LFTS_PMR #endif /* _LIBCPP_EXPERIMENTAL_LIST */ diff --git a/libcxx/include/experimental/map b/libcxx/include/experimental/map --- a/libcxx/include/experimental/map +++ b/libcxx/include/experimental/map @@ -45,6 +45,8 @@ _LIBCPP_BEGIN_NAMESPACE_LFTS_PMR +#ifndef _LIBCPP_CXX03_LANG + template > using map = _VSTD::map<_Key, _Value, _Compare, polymorphic_allocator>>; @@ -53,6 +55,8 @@ using multimap = _VSTD::multimap<_Key, _Value, _Compare, polymorphic_allocator>>; +#endif // _LIBCPP_CXX03_LANG + _LIBCPP_END_NAMESPACE_LFTS_PMR #endif /* _LIBCPP_EXPERIMENTAL_MAP */ diff --git a/libcxx/include/experimental/memory_resource b/libcxx/include/experimental/memory_resource --- a/libcxx/include/experimental/memory_resource +++ b/libcxx/include/experimental/memory_resource @@ -86,6 +86,8 @@ _LIBCPP_BEGIN_NAMESPACE_LFTS_PMR +#ifndef _LIBCPP_CXX03_LANG + // Round __s up to next multiple of __a. inline _LIBCPP_INLINE_VISIBILITY size_t __aligned_allocation_size(size_t __s, size_t __a) _NOEXCEPT @@ -412,6 +414,8 @@ typename allocator_traits<_Alloc>::template rebind_alloc >; +#endif // _LIBCPP_CXX03_LANG + _LIBCPP_END_NAMESPACE_LFTS_PMR _LIBCPP_POP_MACROS diff --git a/libcxx/include/experimental/regex b/libcxx/include/experimental/regex --- a/libcxx/include/experimental/regex +++ b/libcxx/include/experimental/regex @@ -48,6 +48,8 @@ _LIBCPP_BEGIN_NAMESPACE_LFTS_PMR +#ifndef _LIBCPP_CXX03_LANG + template using match_results = _VSTD::match_results<_BiDirIter, @@ -60,6 +62,8 @@ typedef match_results<_VSTD_LFTS_PMR::wstring::const_iterator> wsmatch; #endif +#endif // _LIBCPP_CXX03_LANG + _LIBCPP_END_NAMESPACE_LFTS_PMR #endif /* _LIBCPP_EXPERIMENTAL_REGEX */ diff --git a/libcxx/include/experimental/set b/libcxx/include/experimental/set --- a/libcxx/include/experimental/set +++ b/libcxx/include/experimental/set @@ -45,6 +45,8 @@ _LIBCPP_BEGIN_NAMESPACE_LFTS_PMR +#ifndef _LIBCPP_CXX03_LANG + template > using set = _VSTD::set<_Value, _Compare, polymorphic_allocator<_Value>>; @@ -53,6 +55,8 @@ using multiset = _VSTD::multiset<_Value, _Compare, polymorphic_allocator<_Value>>; +#endif // _LIBCPP_CXX03_LANG + _LIBCPP_END_NAMESPACE_LFTS_PMR #endif /* _LIBCPP_EXPERIMENTAL_SET */ diff --git a/libcxx/include/experimental/string b/libcxx/include/experimental/string --- a/libcxx/include/experimental/string +++ b/libcxx/include/experimental/string @@ -49,6 +49,8 @@ _LIBCPP_BEGIN_NAMESPACE_LFTS_PMR +#ifndef _LIBCPP_CXX03_LANG + template > using basic_string = _VSTD::basic_string<_CharT, _Traits, polymorphic_allocator<_CharT>>; @@ -60,6 +62,8 @@ typedef basic_string wstring; #endif +#endif // _LIBCPP_CXX03_LANG + _LIBCPP_END_NAMESPACE_LFTS_PMR #endif /* _LIBCPP_EXPERIMENTAL_STRING */ diff --git a/libcxx/include/experimental/unordered_map b/libcxx/include/experimental/unordered_map --- a/libcxx/include/experimental/unordered_map +++ b/libcxx/include/experimental/unordered_map @@ -59,6 +59,8 @@ _LIBCPP_BEGIN_NAMESPACE_LFTS_PMR +#ifndef _LIBCPP_CXX03_LANG + template , class _Pred = equal_to<_Key>> using unordered_map = _VSTD::unordered_map<_Key, _Value, _Hash, _Pred, @@ -69,6 +71,8 @@ using unordered_multimap = _VSTD::unordered_multimap<_Key, _Value, _Hash, _Pred, polymorphic_allocator>>; +#endif // _LIBCPP_CXX03_LANG + _LIBCPP_END_NAMESPACE_LFTS_PMR #endif /* _LIBCPP_EXPERIMENTAL_UNORDERED_MAP */ diff --git a/libcxx/include/experimental/unordered_set b/libcxx/include/experimental/unordered_set --- a/libcxx/include/experimental/unordered_set +++ b/libcxx/include/experimental/unordered_set @@ -45,6 +45,8 @@ _LIBCPP_BEGIN_NAMESPACE_LFTS_PMR +#ifndef _LIBCPP_CXX03_LANG + template , class _Pred = equal_to<_Value>> using unordered_set = _VSTD::unordered_set<_Value, _Hash, _Pred, @@ -55,6 +57,8 @@ using unordered_multiset = _VSTD::unordered_multiset<_Value, _Hash, _Pred, polymorphic_allocator<_Value>>; +#endif // _LIBCPP_CXX03_LANG + _LIBCPP_END_NAMESPACE_LFTS_PMR #endif /* _LIBCPP_EXPERIMENTAL_UNORDERED_SET */ diff --git a/libcxx/include/experimental/vector b/libcxx/include/experimental/vector --- a/libcxx/include/experimental/vector +++ b/libcxx/include/experimental/vector @@ -40,9 +40,13 @@ _LIBCPP_BEGIN_NAMESPACE_LFTS_PMR +#ifndef _LIBCPP_CXX03_LANG + template using vector = _VSTD::vector<_ValueT, polymorphic_allocator<_ValueT>>; +#endif // _LIBCPP_CXX03_LANG + _LIBCPP_END_NAMESPACE_LFTS_PMR #endif /* _LIBCPP_EXPERIMENTAL_VECTOR */