-
Notifications
You must be signed in to change notification settings - Fork 172
cpp26
Akira Takahashi edited this page Aug 17, 2026
·
127 revisions
- N4959 Editors' Report -- Programming Languages -- C++ (2023年08月)
- N4965 Editors’ Report — Programming Languages — C++ (2023年10月)
- N4972 Editors’ Report: Programming Languages — C++ (2023年12月)
- N4982 Editors’ Report: Programming Languages — C++ (2024年04月)
- N4987 Editors’ Report: Programming Languages — C++ (2024年07月)
-
N4994 Editors’ Report: Programming Languages — C++ (2024年10月)
- 編集レベルの修正のみ
- N5002 Editors’ Report: Programming Languages — C++ (2024年12月)
- N5009 Editors’ Report: Programming Languages — C++ (2025年3月)
- N5015 Editors' Report: Programming Languages — C++ (2025年8月)
- N5033 Editors' Report: Programming Languages — C++ (2025年12月)
- N5047 Editors' Report: Programming Languages — C++ (2026年5月)
以下N4959
| paper | タイトル | 対応状況(空 or 完了 or 対応しない or 担当名) |
|---|---|---|
| P2922R0 | Core Language Working Group "ready" Issues for the June, 2023 meeting | |
| P2621R2 | UB? In my Lexer? | |
| P1854R4 | Making non-encodable string literals ill-formed | 完了 |
| P2361R6 | Unevaluated strings | 完了 |
| P2558R2 | Add @, $, and ` to the basic character set | 完了 |
| P2738R1 |
constexpr cast from void*: towards constexpr type-erasure |
完了 |
| P2915R0 | Proposed resolution for CWG1223 | |
| P2552R3 | On the ignorability of standard attributes | 完了 |
| P2752R3 | Static storage for braced initializers | 完了 |
| P2741R3 | User-generated static_assert messages |
完了 |
| P2169R4 | A nice placeholder with no name | 完了 |
以下N4972
| paper | タイトル | 対応状況(空 or 完了 or 対応しない or 担当名) |
|---|---|---|
| P3046R0 | Core Language Working Group "ready" Issues for the November, 2023 meeting (as defect report) | |
| P2308R1 | Template parameter initialization (as defect report) | |
| P2662R3 | Pack Indexing | 完了 |
| P2864R2 | Remove Deprecated Arithmetic Conversion on Enumerations From C++26 | 完了 |
以下N4982
| paper | タイトル | 対応状況(空 or 完了 or 対応しない or 担当名) |
|---|---|---|
| P3196R0 | Core Language Working Group "ready" Issues for the March, 2024 meeting | |
| P2748R5 | Disallow Binding a Returned Glvalue to a Temporary | 完了 |
| P3106R1 | Clarifying rules for brace elision in aggregate initialization | 完了 |
| P0609R3 | Attributes for Structured Bindings | 完了 |
| P3034R1 | Module Declarations Shouldn’t be Macros | 完了 |
| P2809R3 | Trivial infinite loops are not Undefined Behavior | 完了 |
| P2795R5 | Erroneous behaviour for uninitialized reads | 完了 |
| P2573R2 | = delete("should have a reason"); |
完了 |
| P2893R3 | Variadic friends | 完了 |
以下N4987
| paper | タイトル | 対応状況(空 or 完了 or 対応しない or 担当名) |
|---|---|---|
| P3345R0 | Core Language Working Group "ready" Issues for the June, 2024 meeting | |
| P2747R2 | constexpr placement new | 完了 |
| P3144R2 | Deleting a Pointer to an Incomplete Type Should be Ill-formed | 完了 |
| P2963R3 | Ordering of constraints involving fold expressions | 完了 |
| P0963R3 | Structured binding declaration as a condition | 完了 |
以下N5002
| paper | タイトル | 対応状況(空 or 完了 or 対応しない or 担当名) |
|---|---|---|
| P3524R0 | Core Language Working Group "ready" Issues for the November, 2024 meeting | |
| P3340R0 | A Consistent Grammar for Sequences | |
| P2686R5 |
constexpr structured bindings and references to constexpr variables |
完了 |
| P3068R6 | Allowing exception throwing in constant-evaluation | 完了 |
| P3247R2 | Deprecate the notion of trivial types | 完了 |
| P2865R6 | Remove Deprecated Array Comparisons from C++26 | 完了 |
| P1061R10 | Structured Bindings can introduce a Pack | 完了 |
| P3176R0 | The Oxford variadic comma | 完了 |
以下N5009
| paper | タイトル | 対応状況(空 or 完了 or 対応しない or 担当名) |
|---|---|---|
| P3638R0 | Core Language Working Group "ready" Issues for the February, 2025 meeting | |
| P3542R0 | Abolish the term "converting constructor" | |
| P3074R7 | trivial unions (was std::uninitialized) |
完了 |
| P1494R5 | Partial program correctness | 完了 |
| P2900R14 | Contracts for C++ | 言語は一旦完了 (追記するかも?)、ライブラリはまだ |
| P3475R2 | Defang and deprecate memory_order::consume
|
完了 |
| P2841R7 | Concept and variable-template template-parameters | 完了 |
| P2786R13 | Trivial Relocatability For C++26 | 対応しない。C++29に先送り |
| P1967R14 |
#embed - a simple, scannable preprocessor-based resource acquisition method |
完了 |
以下N5015
| paper | タイトル | 対応状況(空 or 完了 or 対応しない or 担当名) |
|---|---|---|
| P3752R0 | Core Language Working Group “ready” Issues for the June, 2025 meeting | |
| P3618R0 | Allow attaching main to the global module | 完了 |
| P2996R13 | Reflection for C++26 | 完了 |
| P3394R4 | Annotations for Reflection | 完了 |
| P3293R3 | Splicing a base class subobject | 完了 |
| P3491R3 | define_static_{string,object,array} |
完了 |
| P1306R5 | Expansion Statements | 完了 |
| P3096R12 | Function Parameter Reflection in Reflection for C++26 | 完了 |
| P3533R2 |
constexpr virtual inheritance |
完了 |
| P2843R3 | Preprocessing is never undefined | 完了 |
以下N5033
| paper | タイトル | 対応状況(空 or 完了 or 対応しない or 担当名) |
|---|---|---|
| P3921R0 | Core Language Working Group "ready" Issues for the November, 2025 meeting | |
| P3920R0 | Wording for NB comment resolution on trivial relocation | 完了。C++29に先送り |
| P3868R1 | Allow #line before module declarations |
完了 |
| P3684R1 | Fix erroneous behaviour termination semantics for C++26 | 完了 |
以下N5047
| paper | タイトル | 対応状況(空 or 完了 or 対応しない or 担当名) |
|---|---|---|
| P4160R0 | Core Language Working Group "ready" Issues for the March, 2026 meeting | |
| P3924R1 | Fix inappropriate font choices for "declaration" | |
| P4136R2 |
#line is not in line with existing implementation |
完了 |
| P4004R1 | Reconsider CWG 1395 "Partial ordering of variadic templates reconsidered" | 完了 |
| P3865R3 | Class template argument deduction (CTAD) for type template template parameters | 完了 |
| P3598R0 | CWG 3158 – const-ification of Splice Expressions |
完了 |
| P3726R2 | Adjustments to Union Lifetime Rules | |
| P4143R0 | Constant evaluation when? | |
| P4149R1 | Define "immediate context" | |
| P3769R1 | Clarification of placement new deallocation | 完了 |
以下N4959
| paper | タイトル | 対応状況(空 or 完了 or 対応しない or 担当名) |
|---|---|---|
| P2910R0 | C++ Standard Library Issues to be moved in Varna, Jun. 2023 | LWG2994: basic_string/basic_string_viewのchar_type一致要件のUB→ill-formed化。cpprefjpでこの粒度の要件を記載しておらず対応不要LWG3884: flat_map/flat_multimap/flat_set/flat_multisetにアロケータ拡張コピー/ムーブコンストラクタを追加(参照追記)LWG3885: opを[zombie.names]に追加。cpprefjpで扱っておらず対応不要LWG3887: __cpp_lib_allocate_at_leastマクロ値の更新。当該マクロを記載しておらず対応不要LWG3893: atomic<shared_ptr<T>>にoperator=(nullptr_t)追加。特殊化固有の代入演算子を個別ページ化しておらず対応不要LWG3894: generator::promise_type::yield_value(elements_of<Rng, Alloc>)からnoexceptを削除LWG3903: spanのデストラクタの冗長なnoexcept削除。デストラクタの個別ページ(op_destructor.md)を新設しバージョン差異(C++20/C++26)を記載LWG3904: lazy_split_view::outer-iteratorのconst変換コンストラクタがtrailing_empty_を設定。当該メンバを記載しておらず対応不要LWG3905: fexcept_tが整数型ではなくオブジェクト型である旨を追記LWG3912: enumerate_view::iterator::operator-をnoexceptに。当該イテレータのoperator-を個別記載しておらず対応不要LWG3914: enumerate_viewのtemplate-headをクラス定義と一致(参照追記)LWG3915: 式のバリエーションに関する冗長な段落の削除。編集上の変更で対応不要 LWG3925: formattableコンセプトのbasic_format_contextに文字型charTを追加LWG3927: シーケンスコンテナ operator[]の事前条件明確化。各コンテナのページで既に記載しており対応不要LWG3935: complexのoperator=(const complex<X>&)の仕様を規定(参照追記)LWG3938: expectedのモナド操作の効果でvalue()を**thisに変更し、ムーブのみ可能なerror_typeでも使用可能にLWG3940: expected<void, E>::value()にEのコピー/ムーブ構築可能性を要求する適格要件を追加 |
| P2497R0 | Testing for success or failure of <charconv> functions |
完了 |
| P2592R3 | Hashing support for std::chrono value classes |
完了 |
| P2587R3 |
to_string or not to_string
|
完了 |
| P2562R1 |
constexpr Stable Sorting |
完了 |
| P2545R4 | Read-Copy Update (RCU) | 完了 |
| P2530R3 | Hazard Pointers for C++26 | 完了 |
| P2538R1 | ADL-proof std::projected
|
完了 |
| P2495R3 | Interfacing stringstreams with string_view
|
完了 |
| P2510R3 | Formatting pointers | 完了 |
| P2198R7 | Freestanding Feature-Test Macros and Implementation-Defined Extensions | 完了。フリースタンディング包括対応の一環。機能テストマクロページ(cpp26)の参照に追記 |
| P2338R4 | Freestanding Library: Character primitives and the C library | 完了。フリースタンディング包括対応の一環。string(char_traits)/charconvの参照に追記。<cstring>は全関数の個別ページを新設し、各ページの備考にフリースタンディング可否を記載(ロケール依存のstrcoll/strxfrm/strerror、メモリ確保のstrdup/strndup、内部状態のstrtokは非対応) |
| P2013R5 | Freestanding Language: Optional ::operator new
|
完了。フリースタンディング包括対応の一環。new.mdに参照追記(フリースタンディングで置換可能な大域operator new/deleteを省略可) |
| P0493R4 | Atomic maximum/minimum | (→P0493R5) |
| P2363R5 | Extending associative containers with the remaining heterogeneous overloads | 完了 |
| P1901R2 | Enabling the Use of weak_ptr as Keys in Unordered Associative Containers |
完了 |
| P1885R12 | Naming Text Encodings to Demystify Them | 完了 |
| P0792R14 |
function_ref: a type-erased callable reference |
完了 |
| P2874R2 | Mandating Annex D | |
| P2757R3 | Type checking format args | 完了 |
| P2637R3 | Member visit
|
完了 |
| P2641R4 | Checking if a union alternative is active | 完了 |
| P1759R6 | Native handles and file streams | 完了 |
| P2697R1 | Interfacing bitset with string_view
|
完了 |
| P1383R2 | More constexpr for <cmath> and <complex>
|
完了 |
| P2734R0 | Adding the new 2022 SI prefixes | 完了 |
| P2548R6 | copyable_function |
完了 |
| P2714R1 | Bind front and back to NTTP callables | 完了 |
| P2630R4 | submdspan |
完了 |
以下N4972
| paper | タイトル | 対応状況(空 or 完了 or 対応しない or 担当名) |
|---|---|---|
| P0543R3 | Saturation arithmetic | 完了 |
| P2407R5 | Freestanding Library: Partial Classes | 完了。フリースタンディング包括対応の一環。optional/variant/string_view/arrayの参照に追記(partial classes) |
| P2546R5 | Debugging Support | 完了 |
| P2905R2 | Runtime format strings (as defect report) | 完了 |
| P2918R2 | Runtime format strings II | 完了 |
| P2909R4 | Fix formatting of code units as integers (Dude, where's my char?) (as defect report) | |
| P0952R2 | A new specification for std::generate_canonical | 完了 |
| P2447R6 |
std::span over an initializer list |
完了 |
| P2821R5 | span.at() |
完了 |
| P2868R3 | Remove Deprecated std::allocator Typedef From C++26 |
完了 |
| P2870R3 | Remove basic_string::reserve() From C++26 |
完了 |
| P2871R3 | Remove Deprecated Unicode Conversion Facets from C++26 | 完了 |
| P2819R2 | Add tuple protocol to complex | 完了 |
| P2937R0 | Freestanding: Remove strtok
|
完了。フリースタンディング包括対応の一環。cstring.mdの参照に追記(strtokはフリースタンディングで提供されない) |
| P2833R2 | Freestanding Library: inout expected span
|
完了。フリースタンディング包括対応の一環。expected/span/mdspanの参照に追記 |
| P2836R1 |
std::basic_const_iterator should follow its underlying type's convertibility (defect report) |
|
| P2264R7 | Make assert() macro user friendly for C and C++ |
完了 |
| P1673R13 | A free function linear algebra interface based on the BLAS | 完了 |
以下N4982
| paper | タイトル | 対応状況(空 or 完了 or 対応しない or 担当名) |
|---|---|---|
| P3180R0 | C++ Standard Library Ready Issues to be moved in Tokyo, Mar. 2024 | LWG3767: codecvt<charN_t, char8_t, mbstate_t>のlocale追加に関する記述はcpprefjpで扱っておらず対応不要LWG3919: enumerate_view::endの制約にforward_range<V>を追加LWG3950: basic_string_viewの比較演算子にC++26宣言(第2引数type_identity_t)を追加LWG3975: basic_format_context/basic_format_parse_contextの特殊化がill-formedである旨を追記LWG3984: ranges::toの再帰分岐をref_viewで包むよう修正LWG4011: spanのoperator[]/front/backに例外「投げない」を追記LWG4012: common_viewのbegin/end非const版にsimple-viewチェックを追加LWG4013: lazy_split_view::outer-iterator::value_typeのデフォルトコンストラクタ削除。該当メンバをcpprefjpで記載しておらず対応不要LWG4016: ranges::toのcontainer-insertable定義を実際の挿入処理に合わせて修正LWG4023: basic_streambuf::setg/setpに事前条件を追加LWG4025: expected<void, E>のムーブ代入をdelete定義からテンプレートパラメータ制約に変更LWG4030: 飽和演算関数の算術が無限精度の数学的演算である旨の明確化( saturating_add/sub/mul/divに参照追記)LWG4031: bad_expected_access<void>のprotected特殊メンバへのnoexcept追加。該当粒度のページがなく対応不要LWG4035: single_view::emptyの明示的追加について参照を追記LWG4036: <stdalign.h>に__alignof_is_definedマクロを追加。この変更はD.11 [depr.c.macros](非推奨附属書)に対するもので、<stdalign.h>はC++ではalignas/alignofがキーワードのため効果を持たず、内容は非推奨マクロのみ。非推奨のため対応不要LWG4037: ctype_baseのメンバ定数をstatic constexpr化(バージョン別に記載)LWG4038: text_encoding::aliases_viewのイテレータがconstexprイテレータである旨を追記LWG4043: US-ASCIIのエイリアス文字列"ASCII"は実装定義で列挙しておらず対応不要 LWG4045: tupleのtuple-likeからの構築でダングリング参照時に削除定義される条件を追加LWG4053: repeat_view推論補助のデフォルト引数(参照追記)LWG4054: views::repeat(E)の効果をrepeat_view<decay_t<decltype((E))>>(E)に修正 |
| P2875R4 | Undeprecate polymorphic_allocator::destroy for C++26 |
完了 |
| P2867R2 | Remove Deprecated strstreams From C++26 |
完了 |
| P2869R4 | Remove Deprecated shared_ptr Atomic Access APIs from C++26 |
完了 |
| P2872R3 | Remove wstring_convert From C++26 |
完了 |
| P3107R5 | Permit an efficient implementation of std::print
|
完了 |
| P3142R0 | Printing Blank Lines with println
|
完了 |
| P2845R8 | Formatting of std::filesystem::path
|
完了 |
| P0493R5 | Atomic minimum/maximum | 完了 |
| P2542R8 | views::concat |
完了 |
| P2591R5 | Concatenation of strings and string views | 完了 |
| P2248R8 | Enabling list-initialization for algorithms | 完了 |
| P2810R4 |
is_debugger_present is_replaceable
|
完了 |
| P1068R11 | Vector API for random number generation | 完了 |
| P2944R3 | Comparisons for reference_wrapper
|
完了 |
| P2642R6 | Padded mdspan layouts |
完了 |
| P3029R1 | Better mdspan's CTAD |
完了 |
以下N4987
| paper | タイトル | 対応状況(空 or 完了 or 対応しない or 担当名) |
|---|---|---|
| P3341R0 | C++ Standard Library Ready Issues to be moved in St. Louis, Jun. 2024 | 完了(Tentatively Ready 13件をissue単位で対応)。 LWG3944対応( <format>でcharのシーケンス(char*, const char*, char[N], basic_string<char>, basic_string_view<char>)をwchar_tとしてフォーマットする特殊化が、暗黙のマルチバイト/ワイド文字変換を避けるため明示的に無効化された。formatter.mdの概要と参照に追記)。LWG4060対応( submdspanのoffset計算で、スライスが次元の境界に達する場合にrequired_span_size()を用いて境界外ポインタ生成を防ぐ明確化。各submdspan_mappingに既に反映済みで、submdspan.mdの効果の説明変数名をsub_map_resultにリネームし参照追記)。LWG4061対応( basic_format_contextのコピーコンストラクタ・コピー代入演算子が= deleteで明示的に削除され、コピー・ムーブ・デフォルト構築ができないことを明確化。備考と参照に追記)。LWG4071対応( reference_wrapperのoperator<=>の戻り値型をsynth-three-way-result<T>からautoに変更し、synth-three-wayが適格であることを制約に追加してSFINAEフレンドリ化。op_compare_3way.mdの宣言・制約を修正)。LWG4074は対応済み( join_with_viewの説明専用コンセプトcompatible-joinable-rangesを削除し制約を展開。cpprefjpは既にconcatable<range_reference_t<V>, Pattern>に展開されドラフトと一致、参照も記載済み)。LWG4076対応( concat_viewをフリースタンディング対応化。備考にフリースタンディング記述を追加し参照追記)。LWG4079は対応不要( concat_view::iteratorの変換コンストラクタにPreconditionsを追加。cpprefjpはこの説明専用イテレータの独立ページを持たず変換コンストラクタを記述していない)。LWG4082対応(単一の input_rangeを渡した場合のviews::concatをviews::allではなくその要素自身を返すよう変更し、output_rangeに対しても適格化。concat_view.mdの効果を修正)。LWG4083対応( views::as_rvalue(E)がviews::all(E)と等しくなる条件にTがinput_rangeのモデルであることを追加し、input_rangeでない範囲を拒否。as_rvalue_view.mdの効果を修正)。LWG4096対応( views::iota(E)の効果をiota_view<decay_t<decltype((E))>>(E)とテンプレート引数を明示する形にし、views::iota(views::iota(0))のような入れ子を拒否。iota_view.mdの効果を修正)。LWG4098対応( views::adjacent<0>とviews::adjacent_transform<0>のN = 0 の条件にdecltype((E))がforward_rangeのモデルであることを追加し、forward_rangeでない範囲を拒否。両ビューの効果を修正)。LWG4105対応( ranges::ends_withの範囲版の戻り値でN1 - N2をN1 - static_cast<decltype(N1)>(N2)に修正し、差分型が異なる場合にも正しく計算されるようにした)。LWG4106対応( basic_format_argsのデフォルトコンストラクタを削除。op_constructor.mdの(1)にC++26削除を反映し参照追記) |
| P2997R1 | Removing the common reference requirement from the indirectly invocable concepts | 完了 |
| P2389R2 |
dextents Index Type Parameter |
完了 |
| P3168R2 | Give std::optional Range Support |
完了 |
| P3217R0 | Adjoints to "Enabling list-initialization for algorithms": find_last
|
完了 |
| P2985R0 | A type trait for detecting virtual base classes | 完了 |
| P0843R14 | inplace_vector |
完了 |
| P3235R3 |
std::print more types faster with less memory |
完了 |
| P2968R2 | Make std::ignore a first-class object |
完了 |
| P2075R6 | Philox as an extension of the C++ RNG engines | 完了 |
| P2422R1 | Remove nodiscard annotations from the standard library specification |
完了 |
| P2300R10 | std::execution |
完了 |
以下N5002
| paper | タイトル | 対応状況(空 or 完了 or 対応しない or 担当名) |
|---|---|---|
| P3504R0 | C++ Standard Library Ready Issues to be moved in Wrocław, Nov. 2024 | 完了(Tentatively Ready 34件をissue単位で対応)。 LWG3216は対応不要( allocate_sharedのRemarksの説明専用ポインタ名pv→u等の文言整理。cpprefjpは既にvalue_typeがremove_cv_t<U>になるリバウンドコピーという本質を効果に記述済み)。LWG3436は対応済み( construct_atの配列サポート。効果にis_array_v<T>分岐があり、参照にもissue記載済み)。LWG3886は対応不要( optional/expectedのモナド操作で使う説明専用名valの定義を一般規定に追加。cpprefjpはvalue()で記述しvalの定義粒度を扱わない)。LWG3899対応( generator::yield_value(elements_of<R, Alloc>)のネストしたgeneratorの型をgenerator<yielded, void, Alloc>に変更し、左辺値generatorのco_yield時の非効率を解消。yield_value.mdの効果を修正)。LWG3900対応( generator::operator newのallocator_arg_t版オーバーロード(2)(3)からrequires節による制約を削除し、代わりに`same_as<Allocator, void> |
| P3136R1 | Retiring niebloids | |
| P3138R5 | views::cache_latest |
完了 |
| P3379R0 | Constrain std::expected equality operators |
完了 |
| P2862R1 |
text_encoding::name() should never return null values |
完了 |
| P2897R7 |
aligned_accessor: An mdspan accessor expressing pointer over-alignment |
完了 |
| P3355R1 | Fix submdspan for C++26 |
完了 |
| P3222R0 | Fix C++26 by adding transposed special cases for P2642 layouts | 完了 |
| P3050R2 | Fix C++26 by optimizing linalg::conjugated for noncomplex value types |
完了 |
| P3396R1 |
std::execution wording fixes |
完了 |
| P2835R7 | Expose std::atomic_ref's object address |
完了 |
| P3323R1 | cv-qualified types in atomic and atomic_ref
|
完了 |
| P3508R0 | Wording for "constexpr for specialized memory algorithms") |
完了 |
| P3369R0 |
constexpr for uninitialized_default_construct
|
完了 |
| P3370R1 | Add new library headers from C23 | 完了 |
| P3309R3 |
constexpr atomic and atomic_ref
|
完了 |
| P1928R15 |
std::simd — merge data-parallel types from the Parallelism TS 2 |
完了 |
| P3325R5 | A Utility for Creating Execution Environments | 完了 |
以下N5009
| paper | タイトル | 対応状況(空 or 完了 or 対応しない or 担当名) |
|---|---|---|
| P3615R0 | C++ Standard Library Ready Issues to be moved in Hagenberg, Feb. 2025 | 完了(Tentatively Ready 9件をissue単位で対応)。 LWG3578対応(連想コンテナのmergeで、転送された要素を参照する反復子が引き続き有効となるのは *thisとsourceの反復子が同じ型の場合であることを明確化。ordered版のmap/multimap/set/multisetの備考に追記。unordered版は[associative.reqmts.general]対象外)。LWG3956は参照追記のみ(chrono::parseが from_streamをADLで解決するカスタマイゼーションポイントとして扱う一般規定[contents]の修正。parse.mdは既にADL呼び出しの旨を備考に記載済みのため経緯を参照に追記)。LWG4172対応(unique_lockのムーブ代入がmove-and-swapイディオムで規定され自己ムーブ代入が安全になり noexcept化。宣言に(2)C++26版を追加、効果に補足)。LWG4175は対応不要(説明専用sender/operation-state型のget_envから as_constを削除する[exec.snd.expos]の修正。cpprefjpのbasic-sender/basic-receiverのget_env実装は既にas_constを使わない形でドラフトmainと一致)。LWG4179対応([alg.search]の探索対象イテレータiの範囲を半開区間から閉区間 [first1, last1 - (last2 - first2)]に修正。search/ranges_searchの戻り値を修正)。LWG4186対応(regex_traits::transform_primaryのEffectsでcollateファセット型判定をtypeid比較から言い換える修正。transform_primary.mdに効果セクションを新設し、従来の戻り値記述にあったtypeidの関数誤検出( (getloc())欠落)を、ロケールのcollateファセットの型がcollate_byname<char_type>かを判定する正しい表現に修正。参照も新設)。LWG4189対応(cache_latest_viewをフリースタンディング対応化。備考にフリースタンディング記述を追加)。 LWG4191対応(複素数の追加オーバーロードで、 pow(complex<T1>, T2)のT2が整数型のときdoubleとして扱い戻り値をcomplex<common_type_t<T1, T3>>とする修正。pow.mdの(5)にC++26として追記。pow(complex<float>, int)はcomplex<double>を返す)。LWG4196対応(inplace_mergeの計算量で、余分なメモリ使用時の比較回数を「ちょうどN-1回」から「最大でN-1回」に修正。inplace_merge/ranges_inplace_mergeの計算量を修正) |
| P3137R3 | views::to_input |
完了 |
| P0472R3 | Put std::monostate in <utility>
|
|
| P3349R1 | Converting contiguous iterators to pointers | 完了 |
| P3372R3 |
constexpr containers and adaptors |
完了 |
| P3378R2 |
constexpr exception types |
完了 |
| P3441R2 | Rename simd_split to simd_chunk
|
完了 |
| P3287R3 | Exploration of namespaces for std::simd
|
完了 |
| P2976R1 | Freestanding Library: algorithm, numeric, and random | 完了。フリースタンディング包括対応の一環として、algorithm/numeric/random/memory/execution の各ヘッダページにフリースタンディングセクションを記載し、経緯としてP2976R1を参照に追記 |
| P3430R3 | SIMD issues: explicit, unsequenced, identity-element position, and members of disabled SIMD | 完了 |
| P2663R7 | Interleaved complex values support in std::simd
|
完了 |
| P2933R4 | Extend <bit> header function with overloads for std::simd
|
完了 |
| P2846R6 |
reserve_hint: Eagerly reserving memory for not-quite-sized lazy ranges |
完了 |
| P3471R4 | Standard Library Hardening | 完了 |
| P0447R28 | Introduction of std::hive to the standard library |
完了 |
| P3019R14 |
indirect and polymorphic: Vocabulary Types for Composite Class Design |
完了 |
以下N5015
| paper | タイトル | 対応状況(空 or 完了 or 対応しない or 担当名) |
|---|---|---|
| P3742R0 | C++ Standard Library Issues to be moved in Sofia, Jun. 2025 | 完了(Tentatively Ready 24件をissue単位で対応)。 LWG4188対応(ostream::sentryデストラクタで、pubsync()が例外送出して終了した場合もbadbitを設定し例外を伝播しない旨を効果に反映)。 LWG4198は対応不要(schedule_fromのget-state説明専用実装の修正。cpprefjpは概念レベル記述でこの詳細を扱わない)。 LWG4200は対応済み(operation_stateコンセプトの簡略化。cpprefjpは既にis_object_v除去・start(o)単純要件の最終形と一致、参照も記載済み)。 LWG4201は対応済み(with-await-transform::await_transformの末尾戻り値型化。既に最終形と一致、参照も記載済み)。 LWG4202は対応済み(enable_sender変数テンプレート導入。既にsender.mdで反映、参照も記載済み)。 LWG4203は対応不要(FWD-ENV-T説明専用型追加。cpprefjpは概念記述でget-state詳細を扱わない)。 LWG4204は対応不要(exec.let get-state説明専用実装。ドラフトmainはlet-state形を維持しておりcpprefjpと一致、PRのstate-type形は後続変更で置換された)。 LWG4205は対応不要(let-cpo.transform_env説明専用実装。cpprefjp未記述)。 LWG4208は対応済み(connect(sndr,rcvr)でrcvrが1回だけ評価される旨。既に効果に記述・参照済み)。 LWG4209は対応不要(default_domain::transform_envのページが存在しない)。 LWG4217対応(LayoutMapping名前付き要件のstride(r)に、rank()が0のときは妥当である必要がない旨を追記)。 LWG4222対応( expected(U&&)コンストラクタ(6)の制約にremove_cvref_t<U>がunexpect_tでないことを追加)。LWG4224対応(philox_engineをpartially freestanding化。ストリーム挿入子/抽出子を除いてフリースタンディング対応と正確化。あわせて他の乱数エンジンlinear_congruential/mersenne_twister/subtract_with_carryとエンジンアダプタdiscard_block/independent_bits/shuffle_orderの備考も同様に統一)。 LWG4227は対応済み(when_all get-stateラムダのnoexcept(noexcept(e))。既に反映・参照済み)。 LWG4231対応( chunk<N>のNがsimd-size-type。本文は既に正しく、経緯を参照に追記)。LWG4232対応(resizeのABIタグ選択でNを使用。本文は既に正しく、経緯を参照に追記)。 LWG4233対応(hive非メンバeraseのU=Tデフォルト引数と効果ラムダの->bool。本文は既に正しく、経緯を参照に追記)。 LWG4234は対応不要(iterator.rangeのbegin/end等が使えるヘッダ一覧に <hive>追加。cpprefjpはこのヘッダ一覧自体を記述していない)。LWG4235対応(cache_latest_viewにreserve_hintメンバを新規追加。to_input_viewはcpprefjpにページ自体が無く対象外)。 LWG4236は対応不要(chunk_viewの説明専用型outer-iterator::value_typeへのreserve_hint追加。cpprefjpはこの説明専用value_typeを独立記述していない)。 LWG4239対応(flat_map::try_emplace(5)(6)の効果を範囲版ranges::upper_boundからイテレータ版upper_boundに変更)。 LWG4242は対応不要(ranges::distanceのforwarding-reference版オーバーロードのeffects修正。cpprefjpはこのオーバーロード自体を記述していない)。 LWG4245対応(counted_iteratorとdefault_sentinel_tが相互作用するoperator-(2)(3)・operator==(2)および派生演算子にnoexceptを追加)。 LWG4247対応( <stdbit.h>をフリースタンディング対応化。フリースタンディングセクションを追加) |
| P2988R12 | std::optional<T&> |
完了 |
| P3348R4 | C++26 should refer to C23 not C17 | 完了 |
| P3037R6 |
constexpr std::shared_ptr and friends |
完了 |
| P3284R4 |
write_env and unstoppable Sender Adaptor |
完了 |
| P3179R9 | Parallel Range Algorithms | 完了 |
| P3709R2 | Reconsider parallel ranges::rotate_copy and ranges::reverse_copy
|
完了 |
| P3641R0 | Rename std::observable to std::observable_checkpoint, and add a feature-test macro |
完了 |
| P3044R2 | sub-string_view from string
|
完了 |
| P2876R3 | Proposal to extend std::simd with more constructors and accessors |
完了 |
| P3480R6 |
std::simd is a range |
完了 |
| P2664R11 | Extend std::simd with permutation API |
完了 |
| P3691R1 | Reconsider naming of the namespace for “std::simd” |
完了 |
| P3383R3 | mdspan.at() |
完了 |
| P2927R3 | Inspecting exception_ptr
|
完了 |
| P3748R0 | Inspecting exception_ptr should be constexpr
|
完了 |
| P2830R10 | Standardized Constexpr Type Ordering | 完了 |
| P3570R2 | optional variants in sender/receiver | 完了 |
| P3481R5 |
std::execution::bulk() issues |
完了 |
| P3433R1 | Allocator Support for Operation States | 完了 |
| P3149R11 |
async_scope - Creating scopes for non-sequential concurrency |
完了 |
| P3682R0 | Remove std::execution::split
|
完了 |
| P2079R10 | Parallel scheduler | 完了 |
| P3557R3 | High-Quality Sender Diagnostics with Constexpr Exceptions | 完了 |
| P3560R2 | Error Handling in Reflection | 完了 |
| P3503R3 | Make type-erased allocator use in promise and packaged_task consistent |
完了 |
| P3008R6 | Atomic floating-point min/max | 完了 |
| P3111R8 | Atomic Reduction Operations | 完了 |
| P3060R3 | Add std::views::indices(n)
|
完了 |
| P2319R5 | Prevent path presentation problems | 完了 |
| P3223R2 | Making std::istream::ignore less surprising |
完了 |
| P2781R9 | std::constant_wrapper |
完了 |
| P3697R1 | Minor additions to C++26 standard library hardening | 完了 |
| P3552R3 | Add a Coroutine Task Type | 完了 |
| P1317R2 | Remove return type deduction in std::apply
|
完了 |
以下N5033
| paper | タイトル | 対応状況(空 or 完了 or 対応しない or 担当名) |
|---|---|---|
| P3905R0 | C++ Standard Library Ready Issues to be moved in Kona, Nov. 2025 | 完了(issue単位で対応。Ready 4件+Tentatively Ready 57件)。 LWG4292は対応不要(unordered containerのlocal iteratorがconstexprイテレータ要件を満たす旨のクラス概要ステートメント追加。cpprefjpはP3372のconstexpr化自体はメンバ関数レベルで適用済みだが、「constexprイテレータ要件を満たす」というprose文はどのコンテナでも記載していない)。 LWG4312は対応不要(uses-allocator構築の説明式でallocator_arg→allocator_arg_t{}へ変えるconst・値カテゴリ一致の記述精度修正。cpprefjpはユーザーが渡すallocator_arg変数で説明しており細部を反映しても記述方法は不変)。 LWG4317は対応不要(Cpp17Destructible名前付き要件の事後条件表の文言修正。cpprefjpはnamed_reqディレクトリを持たずこの事後条件を記載していない)。 LWG4328は対応不要([exec.sched]から完了待ちに関するNoteを削除。cpprefjpは該当Noteを元々記載していない)。 LWG4342は対応不要(task_scheduler::ts-sender::connect()に&&追加。ts-senderは説明専用型でcpprefjpは効果を記述しており宣言が無い)。 LWG4407は対応不要(basic_vec(U&&)のexplicit条件constexpr-wrapper-like分岐のremove_const_t→remove_cvref_t。cpprefjpのexplicitになる条件は簡略化散文でこの分岐の詳細を記載せず)。 LWG4422は対応不要(access_contextの「非集成体型」→「クラス」への言い換え。cpprefjpは既に「クラス」と記述)。 LWG4426は対応不要(reflect_constant_stringのMandatesのパックVの文言精密化。cpprefjpの適格要件は簡略化散文で該当詳細を記載せず) |
| P3906R0 | C++ Standard Library Immediate Issues to be moved in Kona, Nov. 2025 | 完了(issue単位で対応)。 LWG4015は対応不要(optionalのモナド操作の説明専用内部表現をT* valからunion _val_へ変更しconst版を修正するもの。cpprefjpはoptionalの(1)-(4)をvalue()で記述しており(挙動同値・constも正しく扱う)、optional<T&>の(5)の*valもドラフトと一致。この説明専用表現の粒度をcpprefjpは扱っていない)。 LWG4230は対応不要(simdのreal/imagセッターと2引数コンストラクタの過剰制約の解消。最終決議は一旦template化した案を廃案にしconst real-type&のまま維持し、変換はbasic_vecの暗黙変換コンストラクタ経由で許容する形。cpprefjpのreal/imag/op_constructorは既にこの最終形と一致。現行ドラフトも同形)。 LWG4260は対応不要([customization.point.object]の一般要件に「CPO型の全コンストラクタは非例外送出であること」を追加するもの。cpprefjpはCPO型の一般要件をこの粒度で記載していない)。 LWG4302はvector_sum_of_squaresとsum_of_squares_resultをC++26から完全削除する対応(未リリースのためページごと削除、linalg.mdの一覧からも除去、linalg.md参照にIssue記載)。 LWG4308はoptionalクラスページ(optional.md)に備考として記載(optional<T&>のiterator/メンバ型iteratorは、Tが未知境界配列でないオブジェクト型のときのみ提供される旨。参照にもIssue記載)。 LWG4316は対応不要(meta::can_substitute/substituteの仕様記述のsplice構文(Z<[:Args:]...>)がP3687後に不正化した問題をTARG-SPLICEマクロで修正する仕様内部の訂正。cpprefjpは概念的に記述しており該当構文を扱っていない)。 LWG4383は参照追記のみ(constant_wrapperの擬似変更演算子のSFINAEフレンドリ化。決議はコピーラムダ形(N5014)を削除し直接形constant_wrapper<(++T::value)>を追加するもので、非constexpr変更操作をハードエラーでなくSFINAEで除外する。valueがconst参照のため常に不適格で使用不可となる点はcpprefjpの既存備考と一致し、ドラフト(C++29 WD)にもマージ済み。擬似変更演算子12ページの参照にIssue追記)。 LWG4388対応(の va_startを可変引数マクロva_start(V, ...)とし、第2引数以降の破棄・不均衡カッコ等の不適格化(診断不要)を明確化するC23整合。従来cpprefjpに<cstdarg>ページが無かったため、ヘッダページとva_list/va_start/va_arg/va_end/va_copy/__STDC_VERSION_STDARG_H__の各ページを新設し、va_startの宣言に(1)C++03/(1)C++26を併記・備考と参照に反映)。LWG4428対応(has_inaccessible_nonstatic_data_members/has_inaccessible_bases/annotations_of_with_typeのThrows節文言修正。cpprefjpの該当3ページに例外セクションが欠けていたため、最新ドラフトのThrows節を反映して例外セクションを新設し、参照にIssue追記)。 LWG4440対応(先行宣言ヘッダ <iosfwd>が、__cpp_lib_char8_t・__cpp_lib_spanstream・__cpp_lib_syncbufの各機能テストマクロの定義ヘッダに追加された。cpp20/cpp23のfeature_test_macrosページの定義ヘッダ列と参照に反映済み。あわせて未作成だった<iosfwd>のリファレンスページを新設し、各所の.nolink参照を解決)。LWG4443対応(meta::define_aggregateの識別子比較の文言整理。cpprefjpのdefine_aggregate.mdが簡素だったため、最新ドラフトに基づき効果・戻り値・定数式に評価される条件(メンバ名の一意性/ _の識別子比較含む)を完全記述し、参照にIssue追記)。LWG4462は対応不要([algorithms.requirements]の一般要件節でs - iのセマンティクスをranges::distance(i, s)の型/値/値カテゴリと同じと明確化する文言修正。cpprefjpは一般要件節を記載していない)。 LWG4463は対応不要([algorithms.parallel.user]一般要件節でsubsumes→model(regular_invocable)への文言修正。cpprefjpは一般要件節を記載していない)。 LWG4464は対応不要([alg.merge]の記法E(e1,e1)→Eの文言修正。cpprefjpは該当記法を使っていない) |
| P3016R6 | Resolve inconsistencies in begin/end for valarray and braced initializer lists |
完了 |
| P3567R2 |
flat_meow fixes |
完了 |
| P3663R3 | Future-proof submdspan_mapping
|
完了 |
| P3914R0 | Assorted NB comment resolutions for Kona 2025 | 完了 |
| P3836R2 | Make optional<T&> trivially copyable |
完了 |
| P3860R1 | Proposed Resolution for NB Comment GB13-309 atomic_ref<T> convertibility |
|
| P3388R3 | When Do You Know connect Doesn't Throw? |
完了 |
| P3774R1 | Rename std::nontype, and make it broadly useful |
完了 |
| P3819R0 | Remove evaluation_exception() from contract-violation handling |
完了 |
| P3612R1 | Harmonize proxy-reference operations | 完了 |
| P3778R0 | Fix for type_order template definition |
完了 |
| P1789R3 | Library Support for Expansion Statements | 完了 |
| P3922R1 | Missing deduction guide from simd::mask to simd::vec
|
完了 |
| P3815R1 | Add scope_association concept to P3149 |
完了 |
| P3878R1 | Standard library hardening should not use the 'observe' semantic | 完了 |
| P3887R1 | Make when_all a Ronseal Algorithm |
完了 |
| P3923R0 | Additional NB comment resolutions for Kona 2025 | 完了 |
| P3371R5 | Fix C++26 BLAS rank updates consistency | 完了 |
| P3391R2 | constexpr std::format |
完了 |
| P3913R1 | Optimize for std::optional in range adaptors |
完了 |
以下N5047
| paper | タイトル | 対応状況(空 or 完了 or 対応しない or 担当名) |
|---|---|---|
| P4145R0 | C++ Standard Library Ready Issues to be moved in Croydon, Mar. 2026 | 完了(issue単位で対応)。 LWG2414は対応しない(一般ライブラリ要件[reentrancy]へのワーディング追加で、cpprefjpは一般要件節を記載していないため)。 LWG4469は対応しない([namespace.std]の一般要件で、リフレクションで見た標準ライブラリ関数のパラメータ名を未規定とするもの。cpprefjpは一般要件節を記載していないため)。 LWG4496は対応不要([meta.reflection]で"precedes"を"reachable"に修正する文言明確化。cpprefjpはこの技術的区別を記述しておらず、has_default_argumentは既に「到達可能」と正しく記載済み)。 |
| P4146R0 | C++ Standard Library Immediate Issues to be moved in Croydon, Mar. 2026 | 完了(issue単位で対応)。 LWG4552は対応しない(spurious failure時に expectedへ書き戻す値のパディングビットに関するRemarksの明確化で、cpprefjpは該当する内部仕様を記載していないため) |
| P3690R1 | Consistency fix: Make simd reductions SIMD-generic |
完了 |
| P3844R4 | Reword [simd.math] for consteval conversions | 完了 |
| P3932R0 | Fix LWG4470: Fix integer-from in [simd] | 完了 |
| P4012R1 | Value-preserving consteval broadcast to simd::vec
|
完了 |
| P3886R0 | Wording for AT1-057 | |
| P3936R1 | Safer atomic_ref::address (FR-030-310) |
完了 |
| P4140R0 | Proposed resolution for US70-126: allow incomplete types in type_order
|
完了 |
| P3373R4 | Of Operation States and Their Lifetimes | 完了 |
| P3986R1 | A Wording Strategy for Inlinable Receivers | 完了 |
| P3059R2 | Making user-defined constructors of view iterators/sentinels private | 完了 |
| P3725R3 | Filter View Extensions for Safer Use, Rev 3 | 完了 |
| P3828R1 | Rename the to_input view to as_input
|
完了 |
| P3795R2 | Miscellaneous Reflection Cleanup | 完了 |
| P3948R1 |
constant_wrapper is the only tool needed for passing constant expressions via function arguments |
完了 |
| P3978R3 |
constant_wrapper should unwrap on call and subscript |
完了 |
| P3961R1 | Less double indirection in function_ref
|
完了 |
| P3981R2 | Better return types in std::inplace_vector and std::exception_ptr_cast
|
完了 |
| P4022R0 | Remove try_append_range from inplace_vector for now |
完了 |
| P4037R1 | Supporting signed char and unsigned char in random number generation |
完了 |
| P3450R1 | Extend std::is_within_lifetime
|
|
| P3982R2 | Split strided_slice into extent_slice and range_slice for C++26 |
|
| P4144R1 | Remove span's initializer_list constructor for C++26 |
完了 |
| P3804R2 | Iterating on parallel_scheduler
|
完了 |
| P3787R2 | Adjoints to "Enabling list-initialization for algorithms": uninitialized_fill
|
完了 |
| P3842R2 | A conservative fix for constexpr uncaught_exceptions() and current_exception()
|
完了 |
| P3826R5 | Fix Sender Algorithm Customization | 完了 |
| P3980R1 | Task's Allocator Use | 完了 |
| P4156R0 | Rename meta::has_ellipsis_parameter to meta::is_vararg_function
|
完了 |
| P3953R3 | Rename std::runtime_format
|
完了 |
| P4052R0 | Renaming saturation arithmetic functions | 完了 |
| P3941R4 | Scheduler Affinity | 完了 |
| P3856R8 | New reflection metafunction - is_structural_type
|
完了 |
| P3927R2 |
task_scheduler support for parallel bulk execution |
完了 |
| P4151R1 | Rename affine_on
|
完了 |
| P4159R0 | Make sender_in and receiver_of exposition-only |
完了 |
| P4154R0 | Renaming various execution things | 完了 |