Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 8 additions & 10 deletions libcxx/include/map
Original file line number Diff line number Diff line change
Expand Up @@ -1353,9 +1353,8 @@ template <class _Key,
class _Allocator = allocator<pair<const _Key, _Tp>>,
class = enable_if_t<!__is_allocator<_Compare>::value, void>,
class = enable_if_t<__is_allocator<_Allocator>::value, void>>
map(initializer_list<pair<_Key, _Tp>>,
_Compare = _Compare(),
_Allocator = _Allocator()) -> map<remove_const_t<_Key>, _Tp, _Compare, _Allocator>;
map(initializer_list<pair<_Key, _Tp>>, _Compare = _Compare(), _Allocator = _Allocator())
-> map<remove_const_t<_Key>, _Tp, _Compare, _Allocator>;

template <class _InputIterator,
class _Allocator,
Expand All @@ -1374,8 +1373,8 @@ map(from_range_t, _Range&&, _Allocator)
# endif

template <class _Key, class _Tp, class _Allocator, class = enable_if_t<__is_allocator<_Allocator>::value, void>>
map(initializer_list<pair<_Key, _Tp>>,
_Allocator) -> map<remove_const_t<_Key>, _Tp, less<remove_const_t<_Key>>, _Allocator>;
map(initializer_list<pair<_Key, _Tp>>, _Allocator)
-> map<remove_const_t<_Key>, _Tp, less<remove_const_t<_Key>>, _Allocator>;
# endif

# ifndef _LIBCPP_CXX03_LANG
Expand Down Expand Up @@ -1911,9 +1910,8 @@ template <class _Key,
class _Allocator = allocator<pair<const _Key, _Tp>>,
class = enable_if_t<!__is_allocator<_Compare>::value, void>,
class = enable_if_t<__is_allocator<_Allocator>::value, void>>
multimap(initializer_list<pair<_Key, _Tp>>,
_Compare = _Compare(),
_Allocator = _Allocator()) -> multimap<remove_const_t<_Key>, _Tp, _Compare, _Allocator>;
multimap(initializer_list<pair<_Key, _Tp>>, _Compare = _Compare(), _Allocator = _Allocator())
-> multimap<remove_const_t<_Key>, _Tp, _Compare, _Allocator>;

template <class _InputIterator,
class _Allocator,
Expand All @@ -1932,8 +1930,8 @@ multimap(from_range_t, _Range&&, _Allocator)
# endif

template <class _Key, class _Tp, class _Allocator, class = enable_if_t<__is_allocator<_Allocator>::value, void>>
multimap(initializer_list<pair<_Key, _Tp>>,
_Allocator) -> multimap<remove_const_t<_Key>, _Tp, less<remove_const_t<_Key>>, _Allocator>;
multimap(initializer_list<pair<_Key, _Tp>>, _Allocator)
-> multimap<remove_const_t<_Key>, _Tp, less<remove_const_t<_Key>>, _Allocator>;
# endif

# ifndef _LIBCPP_CXX03_LANG
Expand Down
20 changes: 8 additions & 12 deletions libcxx/include/set
Original file line number Diff line number Diff line change
Expand Up @@ -925,15 +925,13 @@ template <class _InputIterator,
class _Allocator,
class = enable_if_t<__has_input_iterator_category<_InputIterator>::value, void>,
class = enable_if_t<__is_allocator<_Allocator>::value, void>>
set(_InputIterator,
_InputIterator,
_Allocator) -> set<__iter_value_type<_InputIterator>, less<__iter_value_type<_InputIterator>>, _Allocator>;
set(_InputIterator, _InputIterator, _Allocator)
-> set<__iter_value_type<_InputIterator>, less<__iter_value_type<_InputIterator>>, _Allocator>;

# if _LIBCPP_STD_VER >= 23
template <ranges::input_range _Range, class _Allocator, class = enable_if_t<__is_allocator<_Allocator>::value, void>>
set(from_range_t,
_Range&&,
_Allocator) -> set<ranges::range_value_t<_Range>, less<ranges::range_value_t<_Range>>, _Allocator>;
set(from_range_t, _Range&&, _Allocator)
-> set<ranges::range_value_t<_Range>, less<ranges::range_value_t<_Range>>, _Allocator>;
# endif

template <class _Key, class _Allocator, class = enable_if_t<__is_allocator<_Allocator>::value, void>>
Expand Down Expand Up @@ -1373,9 +1371,8 @@ template <class _Key,
class _Allocator = allocator<_Key>,
class = enable_if_t<__is_allocator<_Allocator>::value, void>,
class = enable_if_t<!__is_allocator<_Compare>::value, void>>
multiset(initializer_list<_Key>,
_Compare = _Compare(),
_Allocator = _Allocator()) -> multiset<_Key, _Compare, _Allocator>;
multiset(initializer_list<_Key>, _Compare = _Compare(), _Allocator = _Allocator())
-> multiset<_Key, _Compare, _Allocator>;

template <class _InputIterator,
class _Allocator,
Expand All @@ -1386,9 +1383,8 @@ multiset(_InputIterator, _InputIterator, _Allocator)

# if _LIBCPP_STD_VER >= 23
template <ranges::input_range _Range, class _Allocator, class = enable_if_t<__is_allocator<_Allocator>::value, void>>
multiset(from_range_t,
_Range&&,
_Allocator) -> multiset<ranges::range_value_t<_Range>, less<ranges::range_value_t<_Range>>, _Allocator>;
multiset(from_range_t, _Range&&, _Allocator)
-> multiset<ranges::range_value_t<_Range>, less<ranges::range_value_t<_Range>>, _Allocator>;
# endif

template <class _Key, class _Allocator, class = enable_if_t<__is_allocator<_Allocator>::value, void>>
Expand Down
10 changes: 4 additions & 6 deletions libcxx/include/stack
Original file line number Diff line number Diff line change
Expand Up @@ -315,14 +315,12 @@ template <class _InputIterator,
class _Alloc,
__enable_if_t<__has_input_iterator_category<_InputIterator>::value, int> = 0,
__enable_if_t<__is_allocator<_Alloc>::value, int> = 0>
stack(_InputIterator,
_InputIterator,
_Alloc) -> stack<__iter_value_type<_InputIterator>, deque<__iter_value_type<_InputIterator>, _Alloc>>;
stack(_InputIterator, _InputIterator, _Alloc)
-> stack<__iter_value_type<_InputIterator>, deque<__iter_value_type<_InputIterator>, _Alloc>>;

template <ranges::input_range _Range, class _Alloc, __enable_if_t<__is_allocator<_Alloc>::value, int> = 0>
stack(from_range_t,
_Range&&,
_Alloc) -> stack<ranges::range_value_t<_Range>, deque<ranges::range_value_t<_Range>, _Alloc>>;
stack(from_range_t, _Range&&, _Alloc)
-> stack<ranges::range_value_t<_Range>, deque<ranges::range_value_t<_Range>, _Alloc>>;

# endif

Expand Down
12 changes: 6 additions & 6 deletions libcxx/include/unordered_map
Original file line number Diff line number Diff line change
Expand Up @@ -2035,12 +2035,12 @@ template <class _Key,
class = enable_if_t<!is_integral<_Hash>::value>,
class = enable_if_t<!__is_allocator<_Pred>::value>,
class = enable_if_t<__is_allocator<_Allocator>::value>>
unordered_multimap(
initializer_list<pair<_Key, _Tp>>,
typename allocator_traits<_Allocator>::size_type = 0,
_Hash = _Hash(),
_Pred = _Pred(),
_Allocator = _Allocator()) -> unordered_multimap<remove_const_t<_Key>, _Tp, _Hash, _Pred, _Allocator>;
unordered_multimap(initializer_list<pair<_Key, _Tp>>,
typename allocator_traits<_Allocator>::size_type = 0,
_Hash = _Hash(),
_Pred = _Pred(),
_Allocator = _Allocator())
-> unordered_multimap<remove_const_t<_Key>, _Tp, _Hash, _Pred, _Allocator>;

template <class _InputIterator,
class _Allocator,
Expand Down
14 changes: 7 additions & 7 deletions libcxx/include/unordered_set
Original file line number Diff line number Diff line change
Expand Up @@ -937,13 +937,13 @@ template <ranges::input_range _Range,
class = enable_if_t<!is_integral<_Hash>::value>,
class = enable_if_t<!__is_allocator<_Pred>::value>,
class = enable_if_t<__is_allocator<_Allocator>::value>>
unordered_set(
from_range_t,
_Range&&,
typename allocator_traits<_Allocator>::size_type = 0,
_Hash = _Hash(),
_Pred = _Pred(),
_Allocator = _Allocator()) -> unordered_set<ranges::range_value_t<_Range>, _Hash, _Pred, _Allocator>; // C++23
unordered_set(from_range_t,
_Range&&,
typename allocator_traits<_Allocator>::size_type = 0,
_Hash = _Hash(),
_Pred = _Pred(),
_Allocator = _Allocator())
-> unordered_set<ranges::range_value_t<_Range>, _Hash, _Pred, _Allocator>; // C++23
# endif

template <class _Tp,
Expand Down
Loading