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 656 papers

Pick months in 2026

2025 Jul · 1 of 1

Pick months in 2025

Add Year +

Select Years To Display

Current Years Selected

2026 2025
Filters EWG Clear all
20 out of 20 papers selected for export
SelectPaper Title Authors Audience Doc Date Mailing Date
P0085R2 Oo... adding a coherent character sequence to begin octal-literals Axel Naumann A. Naumann , Jolly Chen J. Chen , Michael Jonker M. Jonker 2025-06-06 2025-07
Doc Date 2025-06-06
Mailing Date 2025-07 Post-Sofia
Target Audience EWGLEWG
Revisions R3
Tracking issue View on GitHub
P1040R8 std::embed and #depend JeanHeyd Meneide J. Meneide 2025-06-23 2025-07
Doc Date 2025-06-23
Mailing Date 2025-07 Post-Sofia
Author(s) JeanHeyd Meneide
Target Audience EWG
Revisions R11R10R9
Tracking issue View on GitHub
Abstract A proposal for a function that allows pulling resources at compile-time into a program, and a preprocessor directive to make finding those resources feasible for compilers and build systems.
P2414R9 Pointer lifetime-end zap proposed solutions Paul E. McKenney P. McKenney , Maged Michael M. Michael , Jens Maurer J. Maurer , Peter Sewell P. Sewell , Martin Uecker M. Uecker , Hans Boehm H. Boehm , Hubert Tong H. Tong , Niall Douglas N. Douglas , Thomas Rodgers T. Rodgers , Will Deacon W. Deacon , Michael Wong M. Wong , David Goldblatt D. Goldblatt , Kostya Serebryany K. Serebryany , Anthony Williams A. Williams , Tom Scogland T. Scogland , JF Bastien J. Bastien 2025-07-11 2025-07
Doc Date 2025-07-11
Mailing Date 2025-07 Post-Sofia
Target Audience EWGLEWG
Revisions R12R11R8
Tracking issue View on GitHub
Abstract **Introduction** **3** **Terminology** **4** **What We Are Asking For** **5** **Detailed Proposal** **5** Atomic Operations Forgive Pointer Invalidity 5 Volatile Accesses Forgive Pointer Invalidity 6 **Examples** **6** LIFO Push With Nondeterministic Pointer Provenance 7 Use Case 1: Invalid Pointer Use 7 Use Case 2: Zombie Pointer Dereference 7 Fixing LIFO Push Using This Proposal 8 **Wording** **
P3096R11 Function Parameter Reflection in Reflection for C++26 Adam Lach A. Lach , Walter Genovese W. Genovese 2025-06-19 2025-07
Doc Date 2025-06-19
Mailing Date 2025-07 Post-Sofia
Target Audience EWGLEWGCWGLWG
Revisions R12R10
Tracking issue View on GitHub
Abstract Based on a few demonstrative applications, we claim that parameter reflection is an important feature that should be included in the initial specification for Reflection in C++26.
P3100R3 Implicit contract assertions Timur Doumler T. Doumler , Joshua Berne J. Berne 2025-07-03 2025-07
Doc Date 2025-07-03
Mailing Date 2025-07 Post-Sofia
Target Audience EWG
Revisions R8R7R6
Tracking issue View on GitHub
Abstract In this paper, we enumerate all cases of core language undefined behaviour explicitly specified in C++, group them into eleven categories, classify them along a number of relevant criteria, and discuss appropriate mitigation strategies. The conditions under which such undefined behaviour will occur can, in many cases, be identified by a runtime check. We describe how such runtime checks can be sys
P3439R3 Chained comparisons: Safe, correct, efficient Herb Sutter H. Sutter 2025-06-19 2025-07
Doc Date 2025-06-19
Mailing Date 2025-07 Post-Sofia
Author(s) Herb Sutter
Target Audience EWG
Tracking issue View on GitHub
Abstract This paper proposes that we adopt Barry Revzin’s [[P0893R1](https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0893r1.html)] (based on my [[P0515R0](https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0515r0.pdf)] section 3.3) with refined proposed rules that may address previous concerns, but for now only make the problematic chains deprecated or ill-formed to allow for a transition
P3601R0 Slides for P3407R1 Brian Bi B. Bi 2025-06-17 2025-07
Doc Date 2025-06-17
Mailing Date 2025-07 Post-Sofia
Author(s) Brian Bi
Target Audience EWG
Tracking issue View on GitHub
P3687R1 Final Adjustments to C++26 Reflection Dan Katz D. Katz , Wyatt Childers W. Childers , Daveed Vandevoorde D. Vandevoorde , Ville Voutilainen V. Voutilainen 2025-06-18 2025-07
Doc Date 2025-06-18
Mailing Date 2025-07 Post-Sofia
Target Audience EWGLEWGCWGLWG
Tracking issue View on GitHub
Abstract We propose two minor design changes to [[P2996R12](https://wg21.link/p2996r12)] to ensure its readiness for C++26 and future-proof the evolution of the feature.
P3726R0 Adjustments to Union Lifetime Rules Barry Revzin B. Revzin , Tomasz Kamiński T. Kamiński 2025-07-13 2025-07
Doc Date 2025-07-13
Mailing Date 2025-07 Post-Sofia
Target Audience EWGCWG
Revisions R2
Tracking issue View on GitHub
Abstract [[P3074R7] (trivial `union`s (was `std::uninitialized<T>`))](https://wg21.link/p3074r7) was adopted in Hagenberg. One of the goals of that paper was to make an example like this work:
P3731R0 #embed Preprocessor Parameter Order JeanHeyd Meneide J. Meneide 2025-06-05 2025-07
Doc Date 2025-06-05
Mailing Date 2025-07 Post-Sofia
Author(s) JeanHeyd Meneide
Target Audience EWGSG22
Tracking issue View on GitHub
Abstract Preprocessor embed has a fixed behavior no matter which parameter ordering is chosen. This paper attempts to enforce or encourage the ordering of preprocessor parameters to prevent mental mistakes from users.
P3736R0 Slides against P2971R3 - No implication for C++ Jan Schultke J. Schultke 2025-06-27 2025-07
Doc Date 2025-06-27
Mailing Date 2025-07 Post-Sofia
Author(s) Jan Schultke
Target Audience EWG
Tracking issue View on GitHub
P3745R0 Rebuttal to P1144R13 Pablo Halpern P. Halpern 2025-07-03 2025-07
Doc Date 2025-07-03
Mailing Date 2025-07 Post-Sofia
Author(s) Pablo Halpern
Target Audience EWGLEWG
Tracking issue View on GitHub
P3754R0 Slides for P3100R2 presentation to EWG Timur Doumler T. Doumler 2025-06-20 2025-07
Doc Date 2025-06-20
Mailing Date 2025-07 Post-Sofia
Author(s) Timur Doumler
Target Audience EWG
Tracking issue View on GitHub
P3765R0 Deprecate implicit conversion from bool to character types Jan Schultke J. Schultke , Hana Dusíková H. Dusíková 2025-07-12 2025-07
Doc Date 2025-07-12
Mailing Date 2025-07 Post-Sofia
Target Audience EWG
Tracking issue View on GitHub
Abstract Implicit conversion from `bool` to character types serve little purpose in the language, and invite bugs. We propose to deprecate them.
P3769R0 Clarification of placement new deallocation Lauri Vasama L. Vasama 2025-06-22 2025-07
Doc Date 2025-06-22
Mailing Date 2025-07 Post-Sofia
Author(s) Lauri Vasama
Target Audience EWGCWG
Revisions R1
Tracking issue View on GitHub
Abstract Clarifies wording for selection of deallocation functions in placement new expressions.
P3771R0 constexpr mutex, locks, and condition variable Hana Dusíková H. Dusíková 2025-06-30 2025-07
Doc Date 2025-06-30
Mailing Date 2025-07 Post-Sofia
Author(s) Hana Dusíková
Target Audience EWGLEWGSG1
Revisions R1
Tracking issue View on GitHub
Abstract It's really hard to conditionally avoid non-`constexpr` types in a code which is supposed to be `constexpr` compatible. This paper fixes it by making these types (and algorithms) `constexpr` compatible. There is no semantical change for updated types and algorithms.
P3780R0 Detecting bitwise trivially relocatable types Giuseppe D'Angelo G. D'Angelo 2025-07-10 2025-07
Doc Date 2025-07-10
Mailing Date 2025-07 Post-Sofia
Author(s) Giuseppe D'Angelo
Target Audience EWGLEWG
Tracking issue View on GitHub
Abstract We propose a new type trait that detects whether a type can be trivially relocated, and such trivial relocation does not alter any part of the object representation. This trait has direct use cases when creating types that use byte buffers to manage objects, such as certain implementations of `optional`, `inplace_vector`, `any`, `function` and similar.
P3781R0 is_*_type should imply is_type Xavier Bonaventura X. Bonaventura 2025-07-05 2025-07
Doc Date 2025-07-05
Mailing Date 2025-07 Post-Sofia
Author(s) Xavier Bonaventura
Target Audience EWGSG20
Tracking issue View on GitHub
Abstract This paper is to raise awareness of a potential user confusion by the fact that a user needs to check for `is_type` before calling `is_*_type`. As a solution, it proposes to make the call to `is_type` implicit when calling any of the `is_*_type` functions.
P3795R0 Miscellaneous Reflection Cleanup Barry Revzin B. Revzin 2025-07-15 2025-07
Doc Date 2025-07-15
Mailing Date 2025-07 Post-Sofia
Author(s) Barry Revzin
Target Audience EWG
Revisions R2R1
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
P3802R0 Poor Functions Daveed Vandevoorde D. Vandevoorde 2025-07-15 2025-07
Doc Date 2025-07-15
Mailing Date 2025-07 Post-Sofia
Author(s) Daveed Vandevoorde
Target Audience EWGLEWG
Tracking issue View on GitHub
Showing 20 of 20 papers · source: open-std.org