WG21 PAPERS

Mailings Beta

Volunteer-driven · Not affiliated with WG21 or ISO

Filter and export papers from the C++ Committee’s monthly mailings by time frame and audience using the options below, or refine your export further with the Select button. Links point directly to the official WG21 papers on open-std.org.

Audience
General
Wording
Evolution
Study Groups
Mailings
1 · Year 1 · Month

Select the arrow to the right of the year to filter for specific months.

2026 Jan · 1 of 7

Pick months in 2026

2025 143 papers

Pick months in 2025

Add Year +

Select Years To Display

Current Years Selected

2026 2025
Filters Clear all
25 out of 25 papers selected for export
SelectPaper Title Authors Audience Doc Date Mailing Date
N5034 WG21 Agenda 23-28 March 2026, Croydon, UK Nina Ranns N. Ranns 2026-01
Intent Informational
Mailing Date 2026-01 Unassigned
Author(s) Nina Ranns
Target Audience WG21
Abstract | Doc. No.: | N5022 | | --- | --- | | Date: | 2025-11-01 | | Reply to: | [Nina Dinka Ranns](mailto:dinka.ranns@gmail.com) |
P1000R7 C++ IS Schedule (proposed) Herb Sutter H. Sutter 2026-01
Intent Proposal
Mailing Date 2026-01 Unassigned
Author(s) Herb Sutter
Target Audience WG21
Revisions R8
Tracking issue View on GitHub
P2953R3 Forbid defaulting operator=(X&&) && Matthew Taylor M. Taylor , Arthur O'Dwyer A. O'Dwyer 2026-01
Intent Proposal
Mailing Date 2026-01 Unassigned
Target Audience SG17
Revisions R5R4
Tracking issue View on GitHub
Abstract Currently, [[dcl.fct.def.default]/2.5](https://eel.is/c++draft/dcl.fct.def.default#2.5) permits an explicitly defaulted special member function to differ from the implicit one by adding *ref-qualifiers*, but not *cv-qualifiers*.
P3039R1 Automatically Generate `operator->` Andre Kostur A. Kostur , David Stone D. Stone 2026-01
Intent Proposal
Mailing Date 2026-01 Unassigned
Target Audience EWGLEWG
Tracking issue View on GitHub
P3373R2 Of Operation States and Their Lifetimes Robert Leahy R. Leahy 2026-01
Intent Proposal
Mailing Date 2026-01 Unassigned
Author(s) Robert Leahy
Target Audience LEWG
Revisions R4R3
Tracking issue View on GitHub
Abstract In broad terms a regular (i.e. synchronous) function call has access to two forms of storage throughout its lifetime (note that the “lifetime” of a regular function call is the time between the call thereto and the return therefrom):
P3795R1 Miscellaneous Reflection Cleanup Barry Revzin B. Revzin 2026-01
Intent Proposal
Mailing Date 2026-01 Unassigned
Author(s) Barry Revzin
Target Audience CWGLWG
Revisions R2R0
Tracking issue View on GitHub
Abstract At the Sofia meeting, [[P2996R13] (Reflection for C++26)](https://wg21.link/p2996r13), [[P3394R4] (Annotations for Reflection)](https://wg21.link/p3394r4), [[P3293R3] (Splicing a base class subobject)](https://wg21.link/p3293r3), [[P3491R3] (`define_static_{string,object,array}`)](https://wg21.link/p349143), [[P3096R12] (Function Parameter Reflection in Reflection for C++26)](https://wg21.link/p30
P3826R3 Fix Sender Algorithm Customization Eric Niebler E. Niebler 2026-01
Intent Proposal
Mailing Date 2026-01 Unassigned
Author(s) Eric Niebler
Target Audience LEWGLWGSG1
Revisions R5R4
Tracking issue View on GitHub
P3865R1 Class template argument deduction (CTAD) for type template template parameters Christof Meerwald C. Meerwald 2026-01
Intent Proposal
Mailing Date 2026-01 Unassigned
Author(s) Christof Meerwald
Target Audience EWG
Revisions R3R2
Tracking issue View on GitHub
Abstract [CWG 3003](https://cplusplus.github.io/CWG/issues/3003.html) "Naming a deducible template for class template argument deduction" has been raised to clarify that with the current core language wording, class template argument deduction does not work for type template template parameters.
P3873R0 2025-10 Library Evolution Poll Outcomes Inbal Levi I. Levi , Fabio Fracassi F. Fracassi , Andreas Weis A. Weis , Nevin Liber N. Liber , Billy Baker B. Baker , Corentin Jabot C. Jabot 2026-01
Intent Proposal
Mailing Date 2026-01 Unassigned
Target Audience LEWG
Tracking issue View on GitHub
Abstract In 2025-10, the C++ Library Evolution group conducted a series of electronic decision polls [[P3872R0]](https://wg21.link/P3872r0). This paper provides the results of those polls and summarizes the results.
P3911R2 RO 2-056 6.11.2 [basic.contract.eval] Make Contracts Reliably Non-Ignorable Darius Neațu D. Neațu , Andrei Alexandrescu A. Alexandrescu , Lucian Radu Teodorescu L. Teodorescu , Radu Nichita R. Nichita , Herb Sutter H. Sutter 2026-01
Intent Proposal
Mailing Date 2026-01 Unassigned
Target Audience EWGSG21
Revisions R1
Tracking issue View on GitHub
Abstract Building on motivation from EWG Kona 2025, this paper proposes a minimal pure extension to the C++26 Contracts facility. This extension addresses the Romanian National Body's (NB) concern by enabling the writing of an individual contract assertion that guarantees the program execution will not continue past the contract assertion if it is violated, regardless of the semantics of other contract ass
P3927R0 task_scheduler Support for Parallel Bulk Execution Eric Niebler E. Niebler 2026-01
Intent Proposal
Mailing Date 2026-01 Unassigned
Author(s) Eric Niebler
Target Audience LEWGLWGSG1
Revisions R2R1
Tracking issue View on GitHub
P3941R1 Scheduler Affinity Dietmar Kühl D. Kühl 2026-01
Intent Proposal
Mailing Date 2026-01 Unassigned
Author(s) Dietmar Kühl
Target Audience LEWGLWGSG1
Revisions R4R3R2
Tracking issue View on GitHub
Abstract There are a few NB comments raised about the way `affine_on` works:
P3950R0 return_value & return_void Are Not Mutually Exclusive Robert Leahy R. Leahy 2026-01
Intent Proposal
Mailing Date 2026-01 Unassigned
Author(s) Robert Leahy
Target Audience EWGSG1SG17
Revisions R1
Tracking issue View on GitHub
Abstract The standard specifies the effect of `co_return` statements in terms of equivalent statements within the context of a *replacement body* (§9.6.4 [dcl.fct.def.coroutine]). Like a regular `return` statement `co_return` statements have two distinct forms: Those that return `void` and those that return some value. These are specified as follows (§8.8.5 [stmt.return.coroutine]):
P3951R0 String Interpolation Objects Barry Revzin B. Revzin 2026-01
Intent Proposal
Mailing Date 2026-01 Unassigned
Author(s) Barry Revzin
Target Audience EWG
Revisions R2R1
Tracking issue View on GitHub
Abstract The `std::format` approach to formatting offers many significant benefits over the prior `<iostream>`s approach that need not be revisited here. However, `<iostream>` does still have one significant advantage: ordering. It is easy to see at a glance with a long `std::cout` statement which pieces are to be formatted in which order. With `std::format`, as the amount of replacement fields increases,
P3952R0 is_pointer_in_range Herb Sutter H. Sutter , Glen Joseph Fernandes G. Fernandes 2026-01
Intent Proposal
Mailing Date 2026-01 Unassigned
Target Audience EWGLEWG
Tracking issue View on GitHub
Abstract WG21 is often asked for a way to reliably answer the question, “does this raw pointer point inside this buffer?” See [Core 2025] for some use cases. Such an `is_pointer_in_range` function is appropriate to standardize because:
P3953R0 Rename std::runtime_format Victor Zverovich V. Zverovich 2026-01
Intent Proposal
Mailing Date 2026-01 Unassigned
Author(s) Victor Zverovich
Target Audience LEWG
Revisions R3R2R1
Tracking issue View on GitHub
Abstract [P2918] introduced `std::runtime_format` to allow opting out of compile-time format string checks in `std::format`. Subsequently, [P3391] made `std::format` usable in constant evaluation. As a result, `std::runtime_format` can now be evaluated at compile time, making its name misleading. This paper proposes renaming `std::runtime_format` to `std::dynamic_format` to better reflect its semantics and
P3955R0 It's Scopes All the Way Down Robert Leahy R. Leahy 2026-01
Intent Proposal
Mailing Date 2026-01 Unassigned
Author(s) Robert Leahy
Target Audience LEWGSG1
Revisions R2R1
Tracking issue View on GitHub
Abstract The fundamental scope algorithm is `within`. It establishes a scope by running an enter scope sender. Thereafter it allows a child operation to run (in that scope since the exit scope sender has not yet run), and then before completing the overall operation runs the exit scope sender yielded by the enter scope sender.
P3959R0 Let layout_stride::mapping with zero extent(s) accept zero strides Mark Hoemmen M. Hoemmen , Jacob Faibussowitsch J. Faibussowitsch , Christian Trott C. Trott 2026-01
Intent Proposal
Mailing Date 2026-01 Unassigned
Target Audience LEWG
Tracking issue View on GitHub
Abstract We propose to change `layout_stride::mapping`’s constructors to permit strides to be zero if one or more extents are zero. For example, for extents (3, 5, 0, 11), this change would permit any nonnegative strides. Currently, users would need to set the stride(s) corresponding to zero extents to an arbitrary positive value, such as 1. That would make the strides (1, 3, 1, 105) in this example.
P3960R0 Define copy-constructibility-from-bytes Mark Hoemmen M. Hoemmen , Ruslan Arutyunyan R. Arutyunyan 2026-01
Intent Proposal
Mailing Date 2026-01 Unassigned
Target Audience EWGLEWGSG1SG17
Tracking issue View on GitHub
Abstract Given an object `src` of trivially-copyable type `T`, we can copy the object’s value representation to an array of bytes, and implicitly create a new `T` object (e.g., with `start_lifetime_as`) in the array of bytes. The result will hold the same value as `src`.
P3961R0 Less double indirection in function_ref (RU-220) Zhihao Yuan Z. Yuan 2026-01
Intent Proposal
Mailing Date 2026-01 Unassigned
Author(s) Zhihao Yuan
Target Audience LEWG
Revisions R1
Tracking issue View on GitHub
Abstract RU-220 calls for allowing skipping indirections when constructing `function_ref` to improve codegen. The proposed change in LWG 4264<sup>[1]</sup> is not strictly an optimization because certain behaviors with and without the change are visible, therefore, need to be made unspecified. This paper (P3961) suggests that, in addition to the change, a subset of the "optimized" cases should be mandated.
P3962R0 Implementation reality of WG21 standardization Nina Ranns N. Ranns 2026-01
Intent Proposal
Mailing Date 2026-01 Unassigned
Author(s) Nina Ranns
Target Audience WG21
Tracking issue View on GitHub
Abstract As a committee, we have a shared goal: maintaining a standard that delivers real value to users while remaining implementable, performant, and portable. Our intention is to start a series of conversations about constructive steps we can take as a group toward narrowing the gap between standardization and implementation. We would like to see discussion about improving early communication, making co
P3963R0 Assignable lambdas with capture Ruslan Arutyunyan R. Arutyunyan 2026-01
Intent Proposal
Mailing Date 2026-01 Unassigned
Author(s) Ruslan Arutyunyan
Target Audience EWGSG17
Tracking issue View on GitHub
Abstract This paper proposes making lambdas with captures copy assignable and move assignable when all captured entities are themselves assignable.
P3965R0 2026-01 Library Evolution Polls Inbal Levi I. Levi , Fabio Fracassi F. Fracassi , Andreas Weis A. Weis , Billy Baker B. Baker , Nevin Liber N. Liber , Corentin Jabot C. Jabot 2026-01
Intent Proposal
Mailing Date 2026-01 Unassigned
Target Audience WG21
Tracking issue View on GitHub
Abstract This paper contains the decision polls that the C++ Library Evolution group will take in January 2026.
P3967R0 Dual compiles of functions with contracts Bengt Gustafsson B. Gustafsson 2026-01
Intent Proposal
Mailing Date 2026-01 Unassigned
Author(s) Bengt Gustafsson
Target Audience SG17SG21
Tracking issue View on GitHub
P3968R0 A Framework For Contracts Bengt Gustafsson B. Gustafsson 2026-01
Intent Proposal
Mailing Date 2026-01 Unassigned
Author(s) Bengt Gustafsson
Target Audience SG17SG21
Tracking issue View on GitHub
Showing 25 of 25 papers · source: open-std.org