Created on 2021-10-23.00:00:00 last changed 34 months ago
Proposed resolution:
This wording is relative to N4901.
[Drafting note: The proposed wording below contains one conditional change, it is therefore depending upon a decision]
Modify [iterator.range] as indicated:
-1- In addition to being available via inclusion of the <iterator> header, the function templates in [iterator.range] are available when any of the following headers are included: <array> ([array.syn]), <deque> ([deque.syn]), <forward_list> ([forward.list.syn]), <list> ([list.syn]), <map> ([associative.map.syn]), <regex> ([re.syn]), <set> ([associative.set.syn]), <span> ([span.syn]), <stacktrace> ([stacktrace.syn]), <string> ([string.syn]), <string_view> ([string.view.synop]), <unordered_map> ([unord.map.syn]), <unordered_set> ([unord.set.syn]), and <vector> ([vector.syn]). […]
If we decide that <initializer_list> should be included if the header has dependency on std::initializer_list (it may be introduce by std::rbegin, std::data, etc.), #include <initializer_list> should also be added to [stacktrace.syn].
[ 2022-01-29; Reflector poll ]
Set priority to 3 after reflector poll.
[ 2021-10-24; Daniel comments ]
This issue is related to LWG 3624.
Range access function templates ([iterator.range]) are available in every standard header for containers. As std::basic_stacktrace provides some container-like interfaces (member functions begin, end, size, etc.), should we add these free function templates to <stacktrace> for consistency?
History | |||
---|---|---|---|
Date | User | Action | Args |
2022-01-29 22:29:35 | admin | set | messages: + msg12293 |
2021-10-24 11:33:49 | admin | set | messages: + msg12195 |
2021-10-24 11:33:49 | admin | set | messages: + msg12194 |
2021-10-23 00:00:00 | admin | create |