Skip to content

Commit 97ed648

Browse files
[libc++][docs] Update paper and LWG issue lists after 2026-03 meeting (llvm#189901)
[P3726R2](https://wg21.link/P3726R2) is a Core paper but adds `std::start_lifetime`, so it needs to be listed in libc++'s documentation. For LWG issues, see [P4145R0](https://wg21.link/P4145R0) and [P4146R0](https://wg21.link/P4146R0).
1 parent 6870ebc commit 97ed648

File tree

2 files changed

+120
-0
lines changed

2 files changed

+120
-0
lines changed

libcxx/docs/Status/Cxx2cIssues.csv

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -260,6 +260,88 @@
260260
"`LWG4464 <https://wg21.link/LWG4464>`__","§[alg.merge] Wording tweaks","2025-11 (Kona)","","","`#171423 <https://github.com/llvm/llvm-project/issues/171423>`__",""
261261
"`LWG4465 <https://wg21.link/LWG4465>`__","§[alg.partitions] Clarify *Returns:* element","2025-11 (Kona)","","","`#171424 <https://github.com/llvm/llvm-project/issues/171424>`__",""
262262
"","","","","","",""
263+
"`LWG2414 <https://wg21.link/LWG2414>`__","Member function reentrancy should be implementation-defined","2026-03 (Croydon)","","","`#189805 <https://github.com/llvm/llvm-project/issues/189805>`__",""
264+
"`LWG2746 <https://wg21.link/LWG2746>`__","Inconsistency between requirements for ``emplace`` between ``optional`` and ``variant``","2026-03 (Croydon)","","","`#189806 <https://github.com/llvm/llvm-project/issues/189806>`__",""
265+
"`LWG3504 <https://wg21.link/LWG3504>`__","``condition_variable::wait_for`` is overspecified","2026-03 (Croydon)","","","`#189807 <https://github.com/llvm/llvm-project/issues/189807>`__",""
266+
"`LWG3599 <https://wg21.link/LWG3599>`__","The ``const`` overload of ``lazy_split_view::begin`` should be constrained by ``const Pattern``","2026-03 (Croydon)","","","`#189808 <https://github.com/llvm/llvm-project/issues/189808>`__",""
267+
"`LWG3662 <https://wg21.link/LWG3662>`__","``basic_string::append/assign(NTBS, pos, n)`` suboptimal","2026-03 (Croydon)","","","`#189809 <https://github.com/llvm/llvm-project/issues/189809>`__",""
268+
"`LWG3777 <https://wg21.link/LWG3777>`__","Common ``cartesian_product_view`` produces an invalid range if the first range is input and one of the ranges is empty","2026-03 (Croydon)","","","`#189810 <https://github.com/llvm/llvm-project/issues/189810>`__",""
269+
"`LWG3797 <https://wg21.link/LWG3797>`__","``elements_view`` insufficiently constrained","2026-03 (Croydon)","","","`#189811 <https://github.com/llvm/llvm-project/issues/189811>`__",""
270+
"`LWG3831 <https://wg21.link/LWG3831>`__","Two-digit formatting of negative ``year`` is ambiguous","2026-03 (Croydon)","","","`#189805 <https://github.com/llvm/llvm-project/issues/189805>`__",""
271+
"`LWG3891 <https://wg21.link/LWG3891>`__","LWG3870 breaks ``std::expected<cv T, E>``","2026-03 (Croydon)","","","`#189813 <https://github.com/llvm/llvm-project/issues/189813>`__",""
272+
"`LWG4026 <https://wg21.link/LWG4026>`__","Assignment operators of ``std::expected`` should propagate triviality","2026-03 (Croydon)","","","`#189814 <https://github.com/llvm/llvm-project/issues/189814>`__",""
273+
"`LWG4090 <https://wg21.link/LWG4090>`__","Underspecified use of locale facets for locale-dependent ``std::format``","2026-03 (Croydon)","","","`#189815 <https://github.com/llvm/llvm-project/issues/189815>`__",""
274+
"`LWG4122 <https://wg21.link/LWG4122>`__","Ill-formed ``operator<=>`` can cause hard error when instantiating ``std::inplace_vector``","2026-03 (Croydon)","","","`#189816 <https://github.com/llvm/llvm-project/issues/189816>`__",""
275+
"`LWG4130 <https://wg21.link/LWG4130>`__","Preconditions for ``std::launder`` might be overly strict","2026-03 (Croydon)","","","`#189817 <https://github.com/llvm/llvm-project/issues/189817>`__",""
276+
"`LWG4133 <https://wg21.link/LWG4133>`__","``awaitable-receiver``'s members are potentially throwing","2026-03 (Croydon)","","","`#189818 <https://github.com/llvm/llvm-project/issues/189818>`__",""
277+
"`LWG4143 <https://wg21.link/LWG4143>`__","``execution::set_value/set_error/set_stopped/start`` should always return void","2026-03 (Croydon)","","","`#189819 <https://github.com/llvm/llvm-project/issues/189819>`__",""
278+
"`LWG4151 <https://wg21.link/LWG4151>`__","Precondition of ``inplace_vector::swap``","2026-03 (Croydon)","","","`#189820 <https://github.com/llvm/llvm-project/issues/189820>`__",""
279+
"`LWG4223 <https://wg21.link/LWG4223>`__","Deduction guides for maps are mishandling tuples and references","2026-03 (Croydon)","","","`#189821 <https://github.com/llvm/llvm-project/issues/189821>`__",""
280+
"`LWG4259 <https://wg21.link/LWG4259>`__","P1148R0 changed the return values of searching functions of ``std::basic_string`` on some platforms","2026-03 (Croydon)","","","`#189822 <https://github.com/llvm/llvm-project/issues/189822>`__",""
281+
"`LWG4290 <https://wg21.link/LWG4290>`__","Missing *Mandates* clauses on ``is_sufficiently_aligned``","2026-03 (Croydon)","","","`#189823 <https://github.com/llvm/llvm-project/issues/189823>`__",""
282+
"`LWG4314 <https://wg21.link/LWG4314>`__","Missing move in ``mdspan`` layout ``mapping::operator()``","2026-03 (Croydon)","","","`#189824 <https://github.com/llvm/llvm-project/issues/189824>`__",""
283+
"`LWG4324 <https://wg21.link/LWG4324>`__","``unique_ptr<void>::operator*`` is not SFINAE-friendly","2026-03 (Croydon)","","","`#189825 <https://github.com/llvm/llvm-project/issues/189825>`__",""
284+
"`LWG4325 <https://wg21.link/LWG4325>`__","``std::indirect``'s ``operator==`` still does not support incomplete types","2026-03 (Croydon)","","","`#189826 <https://github.com/llvm/llvm-project/issues/189826>`__",""
285+
"`LWG4339 <https://wg21.link/LWG4339>`__","``task``'s coroutine frame may be released late","2026-03 (Croydon)","","","`#189827 <https://github.com/llvm/llvm-project/issues/189827>`__",""
286+
"`LWG4347 <https://wg21.link/LWG4347>`__","``task``'s stop source is always created","2026-03 (Croydon)","","","`#189828 <https://github.com/llvm/llvm-project/issues/189828>`__",""
287+
"`LWG4354 <https://wg21.link/LWG4354>`__","Reconsider ``weakly_parallel`` as the default ``forward_progress_guarantee``","2026-03 (Croydon)","","","`#189829 <https://github.com/llvm/llvm-project/issues/189829>`__",""
288+
"`LWG4361 <https://wg21.link/LWG4361>`__","``awaitable-receiver::set_value`` should use *Mandates* instead of constraints","2026-03 (Croydon)","","","`#189830 <https://github.com/llvm/llvm-project/issues/189830>`__",""
289+
"`LWG4378 <https://wg21.link/LWG4378>`__","Inconsistency between ``std::basic_string``'s ``data()`` and ``operator[]`` specification","2026-03 (Croydon)","","","`#189831 <https://github.com/llvm/llvm-project/issues/189831>`__",""
290+
"`LWG4379 <https://wg21.link/LWG4379>`__","``hive::reserve()`` needs *Throws:* element adjusted to match block min/max considerations","2026-03 (Croydon)","","","`#189832 <https://github.com/llvm/llvm-project/issues/189832>`__",""
291+
"`LWG4453 <https://wg21.link/LWG4453>`__","``atomic_ref<cv T>::required_alignment`` should be the same as for ``T``","2026-03 (Croydon)","","","`#189833 <https://github.com/llvm/llvm-project/issues/189833>`__",""
292+
"`LWG4454 <https://wg21.link/LWG4454>`__","``assert`` should forbid ``co_await`` and ``co_yield``","2026-03 (Croydon)","","","`#189834 <https://github.com/llvm/llvm-project/issues/189834>`__",""
293+
"`LWG4457 <https://wg21.link/LWG4457>`__","freestanding for ``stable_sort``, ``stable_partition`` and ``inplace_merge``","2026-03 (Croydon)","","","`#189835 <https://github.com/llvm/llvm-project/issues/189835>`__",""
294+
"`LWG4460 <https://wg21.link/LWG4460>`__","Missing *Throws:* for last ``variant`` constructor","2026-03 (Croydon)","","","`#189836 <https://github.com/llvm/llvm-project/issues/189836>`__",""
295+
"`LWG4467 <https://wg21.link/LWG4467>`__","``hive::splice`` can throw ``bad_alloc``","2026-03 (Croydon)","","","`#189837 <https://github.com/llvm/llvm-project/issues/189837>`__",""
296+
"`LWG4468 <https://wg21.link/LWG4468>`__","§[const.wrap.class] ""``operator decltype(auto)``"" is ill-formed","2026-03 (Croydon)","","","`#189838 <https://github.com/llvm/llvm-project/issues/189838>`__",""
297+
"`LWG4469 <https://wg21.link/LWG4469>`__","Names of parameters of addressable function shall remain unspecified","2026-03 (Croydon)","","","`#189839 <https://github.com/llvm/llvm-project/issues/189839>`__",""
298+
"`LWG4472 <https://wg21.link/LWG4472>`__","``std::atomic_ref<const T>`` can be constructed from temporaries","2026-03 (Croydon)","","","`#189840 <https://github.com/llvm/llvm-project/issues/189840>`__",""
299+
"`LWG4474 <https://wg21.link/LWG4474>`__","""`round_to_nearest`"" rounding mode is unclear","2026-03 (Croydon)","","","`#189841 <https://github.com/llvm/llvm-project/issues/189841>`__",""
300+
"`LWG4476 <https://wg21.link/LWG4476>`__","``run_loop`` should not have a ``set_error`` completion","2026-03 (Croydon)","","","`#189842 <https://github.com/llvm/llvm-project/issues/189842>`__",""
301+
"`LWG4477 <https://wg21.link/LWG4477>`__","Placement ``operator delete`` should be constexpr","2026-03 (Croydon)","","","`#189843 <https://github.com/llvm/llvm-project/issues/189843>`__",""
302+
"`LWG4478 <https://wg21.link/LWG4478>`__","``meta::has_identifier`` is not specified for annotations","2026-03 (Croydon)","","","`#189844 <https://github.com/llvm/llvm-project/issues/189844>`__",""
303+
"`LWG4480 <https://wg21.link/LWG4480>`__","``<stdatomic.h>`` should provide ``ATOMIC_CHAR8_T_LOCK_FREE``","2026-03 (Croydon)","","","`#189845 <https://github.com/llvm/llvm-project/issues/189845>`__",""
304+
"`LWG4481 <https://wg21.link/LWG4481>`__","Disallow ``chrono::duration<const T, P>``","2026-03 (Croydon)","","","`#189846 <https://github.com/llvm/llvm-project/issues/189846>`__",""
305+
"`LWG4483 <https://wg21.link/LWG4483>`__","Multidimensional arrays are not supported by ``meta::reflect_constant_array`` and related functions","2026-03 (Croydon)","","","`#189847 <https://github.com/llvm/llvm-project/issues/189847>`__",""
306+
"`LWG4485 <https://wg21.link/LWG4485>`__","Move specification for ``task::stop_token_type``","2026-03 (Croydon)","","","`#189848 <https://github.com/llvm/llvm-project/issues/189848>`__",""
307+
"`LWG4486 <https://wg21.link/LWG4486>`__","``integral-constant-like`` and ``constexpr-wrapper-like`` exposition-only concept duplication","2026-03 (Croydon)","","","`#189849 <https://github.com/llvm/llvm-project/issues/189849>`__",""
308+
"`LWG4491 <https://wg21.link/LWG4491>`__","Rename ``submdspan_extents`` and ``submdspan_canonicalize_slices``","2026-03 (Croydon)","","","`#189850 <https://github.com/llvm/llvm-project/issues/189850>`__",""
309+
"`LWG4492 <https://wg21.link/LWG4492>`__","``std::generate`` and ``std::ranges::generate`` wording is unclear for parallel algorithms","2026-03 (Croydon)","","","`#189851 <https://github.com/llvm/llvm-project/issues/189851>`__",""
310+
"`LWG4493 <https://wg21.link/LWG4493>`__","Specification for some functions of bit reference types seems missing","2026-03 (Croydon)","","","`#189852 <https://github.com/llvm/llvm-project/issues/189852>`__",""
311+
"`LWG4496 <https://wg21.link/LWG4496>`__","Precedes vs Reachable in [meta.reflection]","2026-03 (Croydon)","","","`#189853 <https://github.com/llvm/llvm-project/issues/189853>`__",""
312+
"`LWG4497 <https://wg21.link/LWG4497>`__","``std::nullopt_t`` should be comparable","2026-03 (Croydon)","","","`#189854 <https://github.com/llvm/llvm-project/issues/189854>`__",""
313+
"`LWG4499 <https://wg21.link/LWG4499>`__","``flat_set::insert_range`` specification may be problematic","2026-03 (Croydon)","","","`#189855 <https://github.com/llvm/llvm-project/issues/189855>`__",""
314+
"`LWG4500 <https://wg21.link/LWG4500>`__","``constant_wrapper`` wording problems","2026-03 (Croydon)","","","`#189856 <https://github.com/llvm/llvm-project/issues/189856>`__",""
315+
"`LWG4504 <https://wg21.link/LWG4504>`__","Wording problem in ``{simple_}counting_scope``","2026-03 (Croydon)","","","`#189857 <https://github.com/llvm/llvm-project/issues/189857>`__",""
316+
"`LWG4506 <https://wg21.link/LWG4506>`__","``source_location`` is explicitly unspecified if is constexpr or not","2026-03 (Croydon)","","","`#189858 <https://github.com/llvm/llvm-project/issues/189858>`__",""
317+
"`LWG4510 <https://wg21.link/LWG4510>`__","Ambiguity of ``std::ranges::advance`` and ``std::ranges::next`` when the difference type is also a sentinel type","2026-03 (Croydon)","","","`#189859 <https://github.com/llvm/llvm-project/issues/189859>`__",""
318+
"`LWG4511 <https://wg21.link/LWG4511>`__","Inconsistency between the deduction guide of ``std::mdspan`` taking ``(data_handle_type, mapping_type, accessor_type)`` and the corresponding constructor","2026-03 (Croydon)","","","`#189860 <https://github.com/llvm/llvm-project/issues/189860>`__",""
319+
"`LWG4512 <https://wg21.link/LWG4512>`__","The ``system_encoded_string()`` and ``generic_system_encoded_string()`` member functions of ``std::filesystem::path`` are misnamed","2026-03 (Croydon)","","","`#189861 <https://github.com/llvm/llvm-project/issues/189861>`__",""
320+
"`LWG4514 <https://wg21.link/LWG4514>`__","Missing absolute value of ``init`` in ``vector_two_norm`` and ``matrix_frob_norm``","2026-03 (Croydon)","","","`#189862 <https://github.com/llvm/llvm-project/issues/189862>`__",""
321+
"`LWG4517 <https://wg21.link/LWG4517>`__","``data_member_spec`` should throw for *cv*-qualified unnamed bit-fields","2026-03 (Croydon)","","","`#189863 <https://github.com/llvm/llvm-project/issues/189863>`__",""
322+
"`LWG4522 <https://wg21.link/LWG4522>`__","Clarify that ``std::format`` transcodes for ``std::wformat_string``\s","2026-03 (Croydon)","","","`#189864 <https://github.com/llvm/llvm-project/issues/189864>`__",""
323+
"`LWG4523 <https://wg21.link/LWG4523>`__","``constant_wrapper`` should assign to value","2026-03 (Croydon)","","","`#189865 <https://github.com/llvm/llvm-project/issues/189865>`__",""
324+
"`LWG4525 <https://wg21.link/LWG4525>`__","``task``'s ``final_suspend`` should move the result","2026-03 (Croydon)","","","`#189866 <https://github.com/llvm/llvm-project/issues/189866>`__",""
325+
"`LWG4527 <https://wg21.link/LWG4527>`__","``await_transform`` needs to use ``as_awaitable``","2026-03 (Croydon)","","","`#189867 <https://github.com/llvm/llvm-project/issues/189867>`__",""
326+
"`LWG4528 <https://wg21.link/LWG4528>`__","``task`` needs ``get_completion_signatures()``","2026-03 (Croydon)","","","`#189868 <https://github.com/llvm/llvm-project/issues/189868>`__",""
327+
"`LWG4529 <https://wg21.link/LWG4529>`__","``task::promise_type::await_transform`` declaration and definition mismatch","2026-03 (Croydon)","","","`#189869 <https://github.com/llvm/llvm-project/issues/189869>`__",""
328+
"`LWG4532 <https://wg21.link/LWG4532>`__","Imprecise ``std::polymorphic`` wording seems to imply slicing","2026-03 (Croydon)","","","`#189870 <https://github.com/llvm/llvm-project/issues/189870>`__",""
329+
"`LWG4533 <https://wg21.link/LWG4533>`__","``not_fn<f>`` is unimplementable","2026-03 (Croydon)","","","`#189871 <https://github.com/llvm/llvm-project/issues/189871>`__",""
330+
"`LWG4535 <https://wg21.link/LWG4535>`__","Disallow user specialization of ``<simd>`` templates","2026-03 (Croydon)","","","`#189872 <https://github.com/llvm/llvm-project/issues/189872>`__",""
331+
"`LWG4536 <https://wg21.link/LWG4536>`__","Type traits have inconsistent interactions with immediate functions","2026-03 (Croydon)","","","`#189873 <https://github.com/llvm/llvm-project/issues/189873>`__",""
332+
"`LWG4537 <https://wg21.link/LWG4537>`__","Improve ``define_static_array``","2026-03 (Croydon)","","","`#189874 <https://github.com/llvm/llvm-project/issues/189874>`__",""
333+
"`LWG4540 <https://wg21.link/LWG4540>`__","``future-sender``\s returned from ``spawn_future`` do not forward stop requests to spawned work","2026-03 (Croydon)","","","`#189875 <https://github.com/llvm/llvm-project/issues/189875>`__",""
334+
"`LWG4544 <https://wg21.link/LWG4544>`__","Parallel overload of ``ranges::set_difference`` should return ``in_in_out_result``","2026-03 (Croydon)","","","`#189876 <https://github.com/llvm/llvm-project/issues/189876>`__",""
335+
"`LWG4548 <https://wg21.link/LWG4548>`__","Parallel ``ranges::set_intersection`` should not do unnecessary work","2026-03 (Croydon)","","","`#189877 <https://github.com/llvm/llvm-project/issues/189877>`__",""
336+
"`LWG4549 <https://wg21.link/LWG4549>`__","``vprint_nonunicode_buffered`` ignores its stream parameter","2026-03 (Croydon)","","","`#189878 <https://github.com/llvm/llvm-project/issues/189878>`__",""
337+
"`LWG4550 <https://wg21.link/LWG4550>`__","Need new feature test macros for ``<stdckdint.h>`` and ``<stdbit.h>``","2026-03 (Croydon)","","","`#189879 <https://github.com/llvm/llvm-project/issues/189879>`__",""
338+
"`LWG4552 <https://wg21.link/LWG4552>`__","``compare_exchange_weak`` writes a value on spurious failure, not memory contents","2026-03 (Croydon)","","","`#189880 <https://github.com/llvm/llvm-project/issues/189880>`__",""
339+
"`LWG4553 <https://wg21.link/LWG4553>`__","Wording for FR-025-246 25.7.18.2 Add a ``reserve_hint`` function to ``concat_view``","2026-03 (Croydon)","","","`#189881 <https://github.com/llvm/llvm-project/issues/189881>`__",""
340+
"`LWG4554 <https://wg21.link/LWG4554>`__","Remove undefined behaviour from ``hive`` for invalid limits","2026-03 (Croydon)","","","`#189882 <https://github.com/llvm/llvm-project/issues/189882>`__",""
341+
"`LWG4555 <https://wg21.link/LWG4555>`__","Remove ``is_consteval_only``","2026-03 (Croydon)","","","`#189883 <https://github.com/llvm/llvm-project/issues/189883>`__",""
342+
"`LWG4556 <https://wg21.link/LWG4556>`__","Unclear properties of reflection strings","2026-03 (Croydon)","","","`#189884 <https://github.com/llvm/llvm-project/issues/189884>`__",""
343+
"`LWG4557 <https://wg21.link/LWG4557>`__","Remove ``constexpr`` from ``owner_less`` and ``owner_before``","2026-03 (Croydon)","","","`#189885 <https://github.com/llvm/llvm-project/issues/189885>`__",""
344+
"","","","","","",""
263345
"`LWG4139 <https://wg21.link/LWG4139>`__","§[time.zone.leap] recursive constraint in ``<=>``","Not Adopted Yet","|Complete|","20","`#118369 <https://github.com/llvm/llvm-project/issues/118369>`__",""
264346
"`LWG3456 <https://wg21.link/LWG3456>`__","Pattern used by ``std::from_chars`` is underspecified (option B)","Not Adopted Yet","|Complete|","20","`#118370 <https://github.com/llvm/llvm-project/issues/118370>`__",""
265347
"`LWG3882 <https://wg21.link/LWG3882>`__","``tuple`` relational operators have confused friendships","Not Adopted Yet","|Complete|","22","","The comparison operators are constrained harder than the proposed resolution. libstdc++ and MSVC STL do the same."

0 commit comments

Comments
 (0)