(Previous meta-issue: #4158)
At the March 2024 meeting, the following LWG issues were resolved in the C++ Working Paper.
❔ Not yet analyzed
❌ 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.
- Already implemented, comments need to be removed and messages need to cite the Standard
- Implemented without comments
🩹 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
(Previous meta-issue: #4158)
At the March 2024 meeting, the following LWG issues were resolved in the C++ Working Paper.
❔ Not yet analyzed
❌ Not applicable
If an issue requires no action from implementers, we mark it as N/A. Categories:
__alignof_is_definedis only implicitly specified in C++ and not yet deprecated"ASCII"is not a registered character encodingbasic_format_contextshould not be permittedstd::basic_streambuf::setg/setp😸 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.
std::expected<cv void, E>should not be conditionally deletedbad_expected_access<void>member functions should benoexcept🩹 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.
std::text_encoding::aliases_viewshould have constexpr iterators<text_encoding>: Naming Text Encodings To Demystify Them #3791tuplecan create dangling references fromtuple-like🐞 Not yet implemented
codecvt<charN_t, char8_t, mbstate_t>incorrectly added to locale #4498enumerate_viewmay invoke UB for sized common non-forward underlying ranges #4499std::basic_string_viewcomparison operators are overspecified #4500ranges::to's recursion branch may be ill-formed #4501common_view::begin/endare missing thesimple-viewcheck #4502lazy_split_view::outer-iterator::value_typeshould not provide default constructor #4503container-insertablechecks do not match whatcontainer-inserterdoes #4504single_viewshould provideempty#4505ctype_baseare not yet required to be usable in constant expressions #4506std::views::repeatdoes not decay the argument #4507repeat_viewshould repeat the view #4508