(Previous meta-issue: #1446)
At the February 2021 virtual plenary meeting, the following LWG issues were resolved in the C++ Working Paper.
❔ Not yet analyzed
For each of these issues, we've determined whether they are:
✖️ Not applicable
If an issue requires no action from implementers, we mark it as N/A. Categories:
- Pure wording clarifications with nothing to implement (these can be changes to non-normative text like examples and informative notes, or wording cleanups to normative text that don't impact observable behavior)
- Something that increases the restrictions placed on users, but implementers aren't expected to enforce those restrictions
- Fixes for obviously broken wording, where implementers would have done the right thing anyways
😸 Already implemented
Sometimes we cite LWG issues in product code comments as we're implementing their proposed resolutions. When the resolutions are officially accepted, we should remove the citations (as the default assumption is that we're implementing what the Standard says). If something is especially subtle, we can convert the citation to mention the relevant Standard section.
Sometimes we should add test coverage - e.g. when the Standard begins requiring something that we were already doing, but weren't explicitly testing for.
🩹 Patches an unimplemented feature
We should record this LWG issue in the GitHub issue tracking the feature. That way, we'll remember to verify it, but it doesn't represent net new work.
🪲 Not yet implemented
We should file a GitHub issue labeled LWG; see those existing examples.
(Previous meta-issue: #1446)
At the February 2021 virtual plenary meeting, the following LWG issues were resolved in the C++ Working Paper.
❔ Not yet analyzed
For each of these issues, we've determined whether they are:
✖️ Not applicable
If an issue requires no action from implementers, we mark it as N/A. Categories:
constexpr laundermakes pointers to inactive members of unions usable😸 Already implemented
Sometimes we cite LWG issues in product code comments as we're implementing their proposed resolutions. When the resolutions are officially accepted, we should remove the citations (as the default assumption is that we're implementing what the Standard says). If something is especially subtle, we can convert the citation to mention the relevant Standard section.
Sometimes we should add test coverage - e.g. when the Standard begins requiring something that we were already doing, but weren't explicitly testing for.
counted_iterator/move_iterator::base() const &subrange::advance(n)has UB whenn < 0ranges::drop_while_view::begin()is missing a preconditionelements_view::iterator🩹 Patches an unimplemented feature
We should record this LWG issue in the GitHub issue tracking the feature. That way, we'll remember to verify it, but it doesn't represent net new work.
join_view::iterator::operator->()is bogussplit_view::outer-iterator::operator++misspecified🪲 Not yet implemented
We should file a GitHub issue labeled LWG; see those existing examples.
elements_viewshould not be allowed to return dangling references