Skip to content
Akira Takahashi edited this page Aug 18, 2026 · 102 revisions

C++23の対応状況

参照文書

Editor's Report

言語機能の提案文書への対応

paper タイトル 対応状況(空 or 完了 or 対応しない or 担当名)
P2238R0 Core Language Working Group "tentatively ready" Issues for the November, 2020 virtual meeting
P0330R8 Literal Suffix for (signed) size_t. 完了
P2096R2 Generalized wording for partial specializations. 完了
P2029R4 Numeric and universal character escapes in character and string literals. 完了
P1787R6 Declarations and where to find them. 完了
P1102R2 Down with ()! 完了
P1938R3 if consteval 完了
P1401R5 Narrowing contextual conversions to bool 完了
P2223R2 Trimming whitespaces before line splicing 完了
P1847R4 Make declaration order layout mandated 完了
P2201R1 Mixed string literal concatenation 完了
P2242R3 Non-literal variables (and labels and gotos) in constexpr functions) 完了
P0847R7 Deducing this
P2316R2 Consistent character literal encoding 完了
P2334R1 Add support for preprocessing directives elifdef and elifndef 完了
P2246R1 Character encoding of diagnostic text 完了
P2360R0 Extend init-statement to allow alias-declaration 完了
P2128R6 Multidimensional subscript operator 完了
P2314R4 Character sets and encodings
P0849R8 auto(x): decay-copy in the language

以下N4911

paper タイトル 対応状況(空 or 完了 or 対応しない or 担当名)
P2173R1 Attributes on Lambda-Expressions 完了
P2493R0 Missing feature test macros for C++20 core papers

以下N4918

paper タイトル 対応状況(空 or 完了 or 対応しない or 担当名)
P2622R0 Core Language Working Group "ready" Issues for the July, 2022 meeting
P2437R1 Support for #warning 完了
P2362R3 Remove non-encodable wide character literals and multicharacter wide character literals 完了
P2324R2 Labels at the end of compound statements (C compatibility) 完了
P2290R3 Delimited escape sequences 完了
P2448R2 Relaxing some constexpr restrictions 完了
P2266R3 Simpler implicit move 完了
P2071R2 Named universal character escapes 完了
P1169R4 static operator() 完了
P1467R9 Extended floating-point types and standard names 完了
P2582R1 Wording for class template argument deduction from inherited constructors 完了
P1774R8 Portable assumptions 完了
P2295R6 Support for UTF-8 as a portable source file encoding 完了

以下4929

paper タイトル 対応状況(空 or 完了 or 対応しない or 担当名)
P2709R0 Core Language Working Group "ready" Issues for the November, 2022 meeting
P2710R0 Core Language Working Group NB comment resolutions for the November, 2022 meeting
P2589R1 static operator[] 完了
P2647R1 Permitting static constexpr variables in constexpr functions 完了
P2564R3 consteval needs to propagate up 完了
P2706R0 US 26-061: Redundant specification for defaulted functions
P2615R1 Meaningful exports 完了
P2718R0 Wording for P2644R1 Fix for Range-based for Loop 完了

以下N4945

paper タイトル 対応状況(空 or 完了 or 対応しない or 担当名)
P2796R0 Core Language Working Group "ready" Issues for the February, 2023 meeting
P2647R1 Permitting static constexpr variables in constexpr functions 完了
P2736R2 Referencing The Unicode Standard 完了
P2788R0 Linkage for modular constants
P2797R0 Proposed resolution for CWG2692 Static and explicit object member functions with the same parameter-type-lists

ライブラリ機能の提案文書への対応

paper タイトル 対応状況(空 or 完了 or 対応しない or 担当名)
P1679R3 string contains function. 完了
P0881R7 A proposal to add stacktrace library. 完了
P2227R0 Update normative reference to POSIX. 完了
P1048R1 A proposal for a type trait to detect scoped enumerations. 完了
P0943R6 Support C atomics in C++ 完了
P2259R1 Repairing input range adaptors and counted_iterator counted_iterator部分は完了
P2212R2 Relax Requirements for time_point::clock
P2162R2 Inheriting from std::variant
P2160R1 Locks lock lockables
P2017R1 Conditionally borrowed ranges 完了
P1682R2 std::to_underlying for enumerations 完了
P2186R2 Removing Garbage Collection Support 完了
P2385R0 C++ Standard Library Issues to be moved in Virtual Plenary, June 2021
P1132R8 out_ptr - a scalable output pointer abstraction 完了
P1328R1 Making std::type_info::operator== constexpr 完了
P0448R4 A strstream replacement using span as buffer 完了
P1425R4 Iterators pair constructors for stack and queue 完了
P1518R2 Stop overconstraining allocators in container deduction guides 完了
P0401R6 Providing size feedback in the Allocator interface 完了
P1659R3 starts_with and ends_with 完了
P1951R1 Default Arguments for pair's Forwarding Constructor 完了
P1989R2 Range constructor for std::string_view 2: Constrain Harder 完了
P2136R3 invoke_r 完了
P2166R1 A Proposal to Prohibit std::basic_string and std::basic_string_view construction from nullptr 完了
P0288R9 move_only_function 完了
P0798R8 Monadic operations for std::optional 完了
P1072R10 basic_string::resize_and_overwrite 完了
P1147R1 Printing volatile Pointers 完了
P1272R4 Byteswapping for fun&&nuf 完了
P1675R2 rethrow_exception must be allowed to copy 完了
P2077R3 Heterogeneous erasure overloads for associative containers 完了
P2251R1 Require span & basic_string_view to be Trivially Copyable 完了
P2301R1 Add a pmr alias for std::stacktrace 完了
P2321R2 zip 完了
P2340R1 Clarifying the status of the "C headers"
P2393R1 Cleaning up integer-class types 完了
P2401R0 Add a conditional noexcept specification to std::exchange 完了
P2231R1 Missing constexpr in std::optional and std::variant 完了

以下N4911

paper タイトル 対応状況(空 or 完了 or 対応しない or 担当名)
P2531R0 C++ Standard Library Issues to be moved in Virtual Plenary, Feb. 2022
P0323R12 std::expected 完了
P0533R9 constexpr for <cmath> and <cstdlib> 完了
P0627R6 Function to mark unreachable code 完了
P1206R7 ranges::to: A function to convert any range to a container 完了
P1413R3 Deprecate std::aligned_storage and std::aligned_union 完了
P2255R2 A type trait to detect reference binding to temporary 完了
P2273R3 Making std::unique_ptr constexpr 完了
P2387R3 Pipe support for user-defined range adaptors 完了
P2440R1 ranges::iota, ranges::shift_left and ranges::shift_right 完了
P2441R2 views::join_with 完了
P2442R1 Windowing range adaptors: views::chunk and views::slide 完了
P2443R1 views::chunk_by 完了

以下N4918

paper タイトル 対応状況(空 or 完了 or 対応しない or 担当名)
P2618R0 C++ Standard Library Issues to be moved in Virtual Plenary, Jul. 2022
P0009R18 MDSPAN 完了
P2599R2 index_type & size_type in mdspan 完了
P2604R0 mdspan: rename pointer and contiguous 完了
P2613R1 Add the missing empty to mdspan 完了
P0429R9 A Standard flat_map 完了
P1222R4 A Standard flat_set 完了
P1223R5 find_last 完了
P1642R11 Freestanding Library: Easy [utilities], [ranges], and [iterators] 完了。C++23で<utility>/<tuple>/<memory>/<functional>/<ratio>/<iterator>/<ranges>をフリースタンディング化する提案。各ヘッダのフリースタンディング節は既に反映済みのため、該当ヘッダページの参照にP1642R11を追記(<utility>/<tuple>/<ratio>=全機能、<memory>/<functional>/<iterator>/<ranges>=一部機能、<atomic>=要件整理)。<cstdlib>はコアのabort/exit等が本提案以前からフリースタンディングであり参照節も無いため追記せず
P1899R3 stride_view 完了
P2093R14 Formatted output 完了
P2165R4 Compatibility between tuple, pair and tuple-like objects 完了
P2278R4 cbegin should always return a constant iterator 完了
P2286R8 Formatting Ranges 完了
P2291R3 Add Constexpr Modifiers to Functions to_chars and from_chars for Integral Types in <charconv> Header 完了
P2302R4 std::ranges::contains 完了
P2322R6 ranges::fold 完了
P2374R4 views::cartesian_product 完了
P2540R1 Empty Product for certain Views 完了
P2404R3 Move-only types for equality_comparable_with, totally_ordered_with, and three_way_comparable_with 完了
P2408R5 Ranges iterators as inputs to non-Ranges algorithms
P2417R2 A more constexpr bitset 完了
P2419R2 Clarify handling of encodings in localized formatting of chrono types
P2438R2 std::string::substr() && 完了
P2446R2 views::as_rvalue 完了
P2465R3 Standard Library Modules std and std.compat 完了
P2445R1 std::forward_like 完了
P2467R1 Support exclusive mode for fstreams 完了
P2474R2 views::repeat 完了
P2494R2 Relaxing range adaptors to allow for move only types 完了
P2499R0 string_view range constructor should be explicit 完了
P2502R2 std::generator: Synchronous Coroutine Generator for Ranges 完了
P2508R1 Exposing std::basic-format-string<charT, Args...> 完了
P2517R1 Add a conditional noexcept specification to std::apply 完了
P2520R0 move_iterator<T*> should be a random access iterator 完了
P2549R1 std::unexpected<E> should have error() as member accessor 完了
P2585R1 Improving default container formatting 完了
P2590R2 Explicit lifetime management 完了

以下N4929

paper タイトル 対応状況(空 or 完了 or 対応しない or 担当名)
P2703R0 C++ Standard Library Issues to be moved in Kona, Nov. 2022
P2704R0 C++ Standard Library Immediate Issues to be moved in Kona, Nov. 2022 完了(Immediate Issues 14件をissue単位で対応)。
LWG3515: <stacktrace>operator<<charT/traitsでテンプレート化されたbasic_ostreamではなく非テンプレートのostreamを受け取り返す形に変更(stacktrace_entry版・basic_stacktrace版の2ページ)
LWG3569: join_viewの説明専用内部イテレータのinner_optional化しnon-default_initializable対応。説明専用イテレータの実装詳細でcpprefjp未記載のため対応不要
LWG3717: common_view::endrandom_access_rangeかつsized_range時の戻り値をranges::sizeからranges::distance(符号付き差分型)に修正(common_view/end.md)
LWG3737: take_viewbegin/endに、sized_rangeではないがsized_sentinel_forを満たす場合の分岐を追加(take_view/begin.md・end.md)
LWG3753: entity/freestanding entityの用語をfreestanding itemに整理。規格内部の用語・editorial変更でcpprefjp未記載のため対応不要
LWG3766: view_interface::cbegin/cendの制約強化(非const版にinput_range<D>、const版をinput_range<const D>に)。反映済みのため参照追記(cbegin.md・cend.md)
LWG3814: NB commentで要求されたフリースタンディング項目(<memory>start_lifetime_as等・<ranges>repeat_view/stride_view/cartesian_product_view等・<atomic>memory_order定数等)の追加。ヘッダのフリースタンディング節が既に包含しており本文は反映済みのため、memory.md・ranges.md・atomic.mdの参照に追記
LWG3816: flat_map/flat_multimapのコンテナ要件をシーケンスコンテナ要件ベースに整理。反映済みのため参照追記(flat_map.md・flat_multimap.md)
LWG3817: forward_listinsert_after/emplace_afterに要素型Tの挿入可能性(CopyInsertable/MoveInsertable/EmplaceConstructible)の事前条件を追加(insert_after.md・emplace_after.md)
LWG3818: 説明専用エンティティがライブラリ導入部で説明される件の用語整理。規格導入部のeditorial変更でcpprefjp未記載のため対応不要
LWG3822: filesystem::weakly_canonicalから非規範的な正規化回避の推奨(should)文を削除。cpprefjpに元から該当記述が無く対応不要
LWG3823: is_aggregateの事前条件をremove_all_extents_t<T>主語からT主語に整理し、配列型を明示的に許可(is_aggregate.md)
LWG3824: bindプレースホルダの個数が実装定義である旨を規範文へ格上げ。editorial変更で個数が処理系依存である旨は既述のため対応不要
LWG3826: generatoryield_value(範囲版)の冗長な仕様をRemarksからNoteへ格下げ。editorial変更で意味・動作不変のため対応不要
P2602R2 Poison Pills are Too Toxic 完了
P2167R3 Improved Proposed Wording for LWG 2114 (contextually convertible to bool)
P2539R4 Should the output of std::print to a terminal be synchronized with the underlying stream? 完了
P1264R2 Revising the wording of stream input operations 完了
P2505R5 Monadic Functions for std::expected 完了
P2696R0 Introduce Cpp17Swappable as additional convenience requirements

以下N4945

paper タイトル 対応状況(空 or 完了 or 対応しない or 担当名)
P2789R0 C++ Standard Library Issues to be moved in Issaquah, Feb. 2023 完了(Ready 12件・Tentatively Ready 19件をissue単位で対応)。
LWG2195: match_resultsにアロケータ拡張コピー/ムーブコンストラクタ(5)(6)を追加(参照追記)
LWG2295: localeFacet*コンストラクタでヌルポインタ時にotherと同名になることを明確化。op_constructor.mdを完全仕様に書き直し
LWG3032: push_heap/make_heapstd版でRandomAccessIteratorValueSwappableを満たす事前条件を明記
LWG3085: char_traits::copyの事前条件を2範囲の非重複に強化(既に反映済み、参照追記)
LWG3204: sub_matchmatchedも交換する専用メンバswapを追加(swap.md新設)
LWG3664: ranges::distanceのイテレータ版を2オーバーロードに分割し配列を渡せるよう修正
LWG3720: formatの幅・精度の動的引数を標準の符号付き/符号なし整数型に制限(bool・文字型は不可)
LWG3733: ranges::toのCpp17InputIterator判定をiterator_traitsベースに修正(既に反映済み、参照追記)
LWG3742: deque::prepend_rangeMoveInsertable/MoveConstructible/MoveAssignable/Swappableの事前条件を追加
LWG3756: atomic_flagの操作がシグナルハンドラ内で安全(plainなロックフリー操作)であることを明確化
LWG3769: basic_const_iteratorの比較演算子・operator-を無限再帰回避のためメンバ関数化(既に反映済み、参照追記)
LWG3790: nexttowardの第2引数をlong doubleに戻し、第1引数が拡張浮動小数点数型なら不適格化
LWG3807: find_last系の機能テストマクロを__cpp_lib_ranges_find_lastへ改名(既に反映済み)
LWG3811: views::as_constref_view<X>に対しref_view<const X>相当を返す特殊化(既に反映済み、参照追記)
LWG3819: reference_meows_from_temporaryの条件をis_meowible不使用の直接的な形に書き換え
LWG3820: cartesian_product_view::iterator::prevの修正。説明専用イテレータ内部でcpprefjp未記載のため対応不要
LWG3821: uses_allocator_construction_argspair-like版オーバーロード(9)を追加。(9)のsubrange制約も訂正
LWG3825: basic_format_parse_context::next_arg_idのコンパイル時引数番号検証を備考に追記
LWG3834: <cinttypes>imaxabs/imaxdiv/abs/divconstexpr
LWG3839: range_formatter等のset_separator/set_brackets/underlyingnoexcept化(6ファイル)
LWG3841: <version>の"all freestanding"を撤回。フリースタンディング節の記述を緩和
LWG3842: chrono-format-specprecisionrepを浮動小数点型とするdurationのみ有効であることを明確化
LWG3848: adjacent_view/adjacent_transform_view/slide_viewbaseアクセサを追加(既に反映済み、参照追記)
LWG3849: cartesian_product_view::iteratorのデフォルトコンストラクタの過剰制約除去。説明専用イテレータ内部でcpprefjp未記載のため対応不要
LWG3850: views::as_constempty_view<X>に対しempty_view<const X>相当を返す特殊化(既に反映済み、参照追記)
LWG3851: chunk_view::inner-iteratoriter_move/iter_swapを追加。説明専用イテレータでcpprefjp未記載のため対応不要
LWG3853: basic_const_iterator::operator->の戻り値型をconst auto*化(既に反映済み、参照追記)
LWG3857: trait違いのみのbasic_string_viewの明示変換を許可(既に反映済み、参照記載済み)
LWG3860: range_common_reference_t<ranges>に追加(range_common_reference_t.md新設)
LWG3866: expected::transform_errorのMandatesを「unexpectedの有効なテンプレート引数」に訂正
LWG3867: basic_osyncstreamのムーブ代入演算子からnoexceptを除去
P2790R0 C++ Standard Library Immediate Issues to be moved in Issaquah, Feb. 2023 完了(Immediate Issues 30件をissue単位で対応)。
LWG3441: カスタマイゼーションポイントに関する注記の編集的修正。cpprefjpで当該Noteを記載しておらず対応不要
LWG3622: unordered連想コンテナ要件の推移性条件の修正。cpprefjpがこの粒度の規格文言を記載しておらず対応不要
LWG3631: basic_format_argのコンストラクタがcvref除去後の型で判定するよう整理。本文は既に反映済み(T&+remove_const)のため参照追記
LWG3645: resize_and_overwriteのコールバックへ値を渡すよう明確化。cpprefjpは高い抽象度で記述しており実質反映済み、対応不要
LWG3655: INVOKEのメンバポインタ判定をis_base_of_v単独から`is_same_v
P2770R0 Stashing stashing iterators for proper flattening
P2164R9 views::enumerate 完了
P2711R1 Making multi-param constructors of views explicit
P2609R3 Relaxing Ranges Just A Smidge
P2713R1 Escaping improvements in std::format
P2675R1 format's width estimation is too approximate and not forward compatible
P2572R1 std::format fill character allowances
P2693R1 Formatting thread::id and stacktrace 完了
P2679R2 Fixing std::start_lifetime_as for arrays 完了
P2674R1 A trait for implicit lifetime types 完了
P2655R3 common_reference_t of reference_wrapper Should Be a Reference Type 完了
P2652R2 Disallow User Specialization of allocator_traits
P2787R1 pmr::generator - Promise Types are not Values 完了
P2614R2 Deprecate numeric_limits::has_denorm 完了
P2588R3 barrier's phase completion guarantees 完了
P2763R1 layout_stride static extents default constructor fix 完了

Core Issueへの対応

issue タイトル 対応状況(空 or 完了 or 対応しない or 担当名)
P2386R0 Core Language Working Group "ready" Issues for the June, 2021 meeting
P1949R7 C++ Identifier Syntax using Unicode Standard Annex 31
P2156R1 Allow Duplicate Attributes
P2462R0 Core Language Working Group "ready" Issues for the October, 2021 meeting
P2036R3 Change scope of lambda trailing-return-type
P2533R0 Core Language Working Group "ready" Issues for the February, 2022 meeting
P2622R0 Core Language Working Group "ready" Issues for the July, 2022 meeting
P2468R2 The Equality Operator You Are Looking For
P2327R1 De-deprecating volatile compound operations 完了
P2280R4 Using unknown pointers and references in constant expressions
P2493R0 Missing feature test macros for C++20 core papers
P2513R3 char8_t Compatibility and Portability Fix
P2460R2 Relax requirements on wchar_t to match existing practices
P2579R0 Mitigation strategies for P2036 "Changing scope for lambda trailing-return-type"

Library Issueへの対応

issue タイトル 対応状況(空 or 完了 or 対応しない or 担当名)
P2450R0 C++ Standard Library Issues to be moved in Virtual Plenary, Oct. 2021
P2372R3 Fixing locale handling in chrono formatters 完了
P2415R2 What is a view? 完了
P2418R2 Add support for std::generator-like types to std::format 完了
P2432R1 fix istream_view

Clone this wiki locally