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 Sep · 1 of 7

Pick months in 2026

Add Year +

Select Years To Display

Current Years Selected

2026
Filters Clear all
59 out of 59 papers selected for export
SelectPaper Title Authors Audience Doc Date Mailing Date
N5057 2027-03 Istanbul meeting information M. Çağrı 2026-08-24 2026-09
Doc Date 2026-08-24
Mailing Date 2026-09 Unassigned
Author(s) Murat Can Çağrı
Target Audience WG21
N5058 WG21 agenda: 16-21 November 2026, Buzios, Brazil N. Ranns 2026-09-17 2026-09
Doc Date 2026-09-17
Mailing Date 2026-09 Unassigned
Author(s) Nina Ranns
Target Audience WG21
N5060 Sofia meeting announcement V. Pashov, V. Vassilev, M. Traykova, V. Keremidchiev 2026-09-22 2026-09
Doc Date 2026-09-22
Mailing Date 2026-09 Unassigned
Target Audience WG21
P0260R21 C++ Concurrent Queues D. Vollmann, L. Crowl, C. Mysen, G. Nishanov 2026-08-18 2026-09
Doc Date 2026-08-18
Mailing Date 2026-09 Unassigned
Target Audience LEWGSG1
Revisions R20
Tracking issue View on GitHub
Abstract Concurrent queues are a fundamental structuring tool for concurrent programs. We propose concurrent queue concepts and a concrete implementation.
P2034R9 Partially Mutable Lambda Captures R. McDougall, L. Garg 2026-09-21 2026-09
Doc Date 2026-09-21
Mailing Date 2026-09 Unassigned
Target Audience EWGCWG
Revisions R8R7R6
Tracking issue View on GitHub
Abstract `const` and `mutable` extend cleanly to lambda captures. The design is easy to implement, follows the language’s direction, and matches the common model of a lambda as shorthand for an object of a callable struct:
P2561R3 A control flow operator B. Revzin 2026-09-12 2026-09
Doc Date 2026-09-12
Mailing Date 2026-09 Unassigned
Author(s) Barry Revzin
Target Audience EWG
Tracking issue View on GitHub
Abstract Let’s start with a fairly small example of a series of functions that can generate errors, but don’t themselves handle them - they just need to propagate them up. With exceptions, this might look like:
P2688R6 Pattern Matching with `match` and `case` M. Park 2026-09-22 2026-09
Doc Date 2026-09-22
Mailing Date 2026-09 Unassigned
Author(s) Michael Park
Target Audience EWG
Tracking issue View on GitHub
Abstract This paper proposes pattern matching for C++29. It is the next revision of [[P2688R5]](https://wg21.link/p2688r5), which was considered for C++26 at the February 2025 Hagenberg meeting but did not reach consensus for forwarding to CWG.
P2719R8 Type-aware allocation and deallocation functions L. Dionne, O. Hunt, V. Serebrennikov 2026-09-15 2026-09
Doc Date 2026-09-15
Mailing Date 2026-09 Unassigned
Target Audience CWG
Revisions R7R6
Tracking issue View on GitHub
Abstract C++ currently provides two ways of customizing the creation of objects in new expressions. First, `operator new` can be provided as a static member function of a class, like `void* T::operator new`. If such a declaration is provided, an expression like `new T(...)` will use that allocation function. Otherwise, the global version of `operator new` can be replaced by users in a type-agnostic way, by
P2728R15 Unicode in the Library, Part 1: UTF Transcoding E. Nolan 2026-09-22 2026-09
Doc Date 2026-09-22
Mailing Date 2026-09 Unassigned
Author(s) Eddie Nolan
Target Audience LEWGSG16
Revisions R14R13R12R11
Tracking issue View on GitHub
P2952R3 Deduced return types for defaulted operator functions A. O'Dwyer, M. Taylor 2026-09-17 2026-09
Doc Date 2026-09-17
Mailing Date 2026-09 Unassigned
Target Audience CWG
Tracking issue View on GitHub
Abstract Current C++ forbids explicitly defaulted functions to have placeholder return types such as `auto&`, except for C++20’s `operator<=>`. We remove this syntactic restriction in cases where the deduced return type would be the same as the expected one. This allows more consistency and less repetition when declaring defaulted functions.
P3211R3 views::transform_join H. Kang 2026-09-09 2026-09
Doc Date 2026-09-09
Mailing Date 2026-09 Unassigned
Author(s) Hewill Kang
Target Audience LEWGLWGSG9
Revisions R2
Tracking issue View on GitHub
Abstract We propose `views::transform_join`, a range adaptor that applies a function returning a range for each element, then flattens the result. This pattern, commonly known as *flat mapping*, is widespread in functional programming and data processing. Providing it as a dedicated view improves readability and expressiveness, and also opens opportunities for optimization in lazy evaluation contexts.
P3255R3 Expose whether atomic notifying operations are lock-free B. Bi 2026-09-03 2026-09
Doc Date 2026-09-03
Mailing Date 2026-09 Unassigned
Author(s) Brian Bi
Target Audience LWG
Tracking issue View on GitHub
Abstract The atomic notifying functions for `std::atomic_flag` are not always lock-free even though `std::atomic_flag` is specified to always be lock-free. Therefore, use of `std::atomic_flag::notify_one` or `std::atomic_flag::notify_all` may cause unpredictable behavior when called in a signal handler, even though the Standard currently claims that these functions are signal-safe. It would be useful for s
P3256R0 Formatting what matters V. Zverovich 2026-09-18 2026-09
Doc Date 2026-09-18
Mailing Date 2026-09 Unassigned
Author(s) Victor Zverovich
Target Audience SG16
Abstract This paper proposes making `std::exception` and publicly derived exception types formattable with `std::format` and printable with `std::print`. It also specifies the encoding of library-generated parts of standard exception messages, resolving [LWG4087].
P3427R9 Hazard Pointer Synchronous Reclamation M. Michael, M. Wong, P. McKenney, M. Wever 2026-09-04 2026-09
Doc Date 2026-09-04
Mailing Date 2026-09 Unassigned
Target Audience LWG
Revisions R8R7R6R5R4R3
Tracking issue View on GitHub
Abstract This paper proposes extending the C++26 hazard pointer interface to support synchronous reclamation. This revision, P3427R9, revises R8 by following LWG 2026-08-21 feedback. R9 was reviewed by LWG on 2026-09-04 and voted for inclusion in C++29.
P3606R2 On Overload Resolution, Exact Matches and Clever Implementations C. Jabot, Y. Zhang 2026-09-21 2026-09
Doc Date 2026-09-21
Mailing Date 2026-09 Unassigned
Target Audience CWG
Tracking issue View on GitHub
Abstract During overload resolution, if GCC finds an exact, non-ambiguous, non-template match, it will pick that overload and will not perform template argument deduction.
P3642R7 Carry-less product: std::clmul J. Schultke 2026-09-21 2026-09
Doc Date 2026-09-21
Mailing Date 2026-09 Unassigned
Author(s) Jan Schultke
Target Audience LWG
Revisions R6R5R4
Tracking issue View on GitHub
Abstract Add widening and non-widening carry-less multiplication functions.
P3643R3 std::to_signed and std::to_unsigned J. Schultke 2026-08-23 2026-09
Doc Date 2026-08-23
Mailing Date 2026-09 Unassigned
Author(s) Jan Schultke
Target Audience LEWG
Tracking issue View on GitHub
Abstract Add `std::to_signed` and `std::to_unsigned` function templates in the style of `std::to_underlying`.
P3688R7 ASCII character utilities J. Schultke, C. Jabot 2026-08-23 2026-09
Doc Date 2026-08-23
Mailing Date 2026-09 Unassigned
Target Audience LEWG
Revisions R6
Tracking issue View on GitHub
Abstract The utilities in `<cctype>` or `<locale>` are locale-specific, not `constexpr`, and provide no support for Unicode character types. We propose lightweight, locale-independent alternatives.
P3876R3 Extending <charconv> support to more character types J. Schultke, P. Bindels 2026-08-31 2026-09
Doc Date 2026-08-31
Mailing Date 2026-09 Unassigned
Target Audience LEWG
Revisions R2R1
Tracking issue View on GitHub
Abstract `std::to_chars` and `std::from_chars` currently only provide support for `char`, which causes several usability problems. This paper proposes to extend support to all other character types, with essentially the same behavior.
P3928R2 static_sized_range H. Kang 2026-08-26 2026-09
Doc Date 2026-08-26
Mailing Date 2026-09 Unassigned
Author(s) Hewill Kang
Target Audience LEWGLWGSG9
Revisions R1
Tracking issue View on GitHub
Abstract This paper introduces `static_sized_range`, a refinement of `sized_range` for ranges whose sizes are known at compile time.
P3951R2 String Interpolation Objects B. Revzin 2026-09-12 2026-09
Doc Date 2026-09-12
Mailing Date 2026-09 Unassigned
Author(s) Barry Revzin
Target Audience EWG
Revisions R1R0
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,
P3955R2 It's Scopes All the Way Down R. Leahy 2026-09-21 2026-09
Doc Date 2026-09-21
Mailing Date 2026-09 Unassigned
Author(s) Robert Leahy
Target Audience LEWGSG1
Revisions R1R0
Tracking issue View on GitHub
Abstract This paper lays out an approach to achieving the same effect as regular, synchronous scopes in the asynchronous domain (i.e. `std::execution` [1]), including asynchronous construction and destruction of objects.
P4040R2 Case ranges J. Schultke 2026-09-21 2026-09
Doc Date 2026-09-21
Mailing Date 2026-09 Unassigned
Author(s) Jan Schultke
Target Audience EWG
Revisions R1R0
Tracking issue View on GitHub
Abstract C2y added ranges in `case` labels, such as `case 0 ... 9:`. Such case ranges have also been supported as a C++ compiler extension for many years. This feature should be standardized for C++.
P4168R1 Fix defects in floating-point std::from_chars (LWG3081, LWG3082, LWG3456) J. Schultke 2026-09-21 2026-09
Doc Date 2026-09-21
Mailing Date 2026-09 Unassigned
Author(s) Jan Schultke
Target Audience LEWG
Revisions R0
Tracking issue View on GitHub
Abstract This paper supersedes [[P2827R1]](https://wg21%2elink/p2827r1) and fixes [[LWG3081]](https://wg21%2elink/LWG3081), [[LWG3082]](https://wg21%2elink/LWG3082), and [[LWG3456]](https://wg21%2elink/LWG3456). It is intended as a defect report for C++17. The handling of floating-point overflow and underflow in `std::from_chars` is inconsistent; the implementations diverge from each other, and every imple
P4191R1 is_nothrow_connectable_in R. Leahy 2026-09-09 2026-09
Doc Date 2026-09-09
Mailing Date 2026-09 Unassigned
Author(s) Robert Leahy
Target Audience LEWG
Revisions R0
Tracking issue View on GitHub
Abstract This paper proposes adding two type traits to the `std::execution` namespace which allow the determination of whether `std::execution::connect` throws for a certain sender in a certain environment.
P4195R0 WG21 Game Theory: The Culture That Emerges From SD-4 V. Falco, M. Gill 2026-09-22 2026-09
Intent Inform
Doc Date 2026-09-22
Mailing Date 2026-09 Unassigned
Target Audience WG21
Abstract WG21's consensus process selects for survivability through the committee's represented veto structure. It cannot certify technical quality or user welfare. The distinction is testable: Post-adoption correction rates for large contested features, compared against a baseline, would reveal whether the system's selection correlates with quality or substitutes for it. That measurement is future work. T
P4230R1 Implementability of P0943's C++ stdatomic.h H. Boehm 2026-08-15 2026-09
Doc Date 2026-08-15
Mailing Date 2026-09 Unassigned
Author(s) Hans Boehm
Target Audience LEWGLWGSG1SG22
Revisions R0
Tracking issue View on GitHub
Abstract [P0943](http://wg21.link/p0943) was accepted into C++23. One of the national body comments for C++26 proposed its removal. SG1 voted without objection to retain it. LEWG almost obtained consensus to remove it. This is an attempt to outline the issues, as mostly exposed in the LEWG discussion, a later reflector discussion (“stdatomic.h in C++”, starting March 27, 2026), and some [discussion on a](h
P4235R0 Removing Digraphs M. Wippich 2026-09-22 2026-09
Doc Date 2026-09-22
Mailing Date 2026-09 Unassigned
Author(s) Matthias Wippich
Target Audience EWGSG16SG22
Abstract Digraphs are a complicated solution to a very old problem, which cause more problems than they solve in a modern environment. Digraphs also severely limit the design space of C++, although as we have seen with [[P2996]](https://www%2eopen-std%2eorg/jtc1/sc22/wg21/docs/papers/2025/p2996r13%2ehtml) we are already fine with special-casing our way out of this pickle.
P4238R1 Returning C++26 for the Evaluation It Skipped V. Falco, V. Voutilainen, J. Sánchez, J. Spicer 2026-09-22 2026-09
Intent Inform
Doc Date 2026-09-22
Mailing Date 2026-09 Unassigned
Target Audience WG21
Revisions R0
Tracking issue View on GitHub
Abstract Contracts entered C++26 through procedural moves that broke no rule yet left no record of having reconciled the sustained technical opposition to the design.
P4267R0 Formatting Enums, Upon Reflection V. Zverovich 2026-08-20 2026-09
Doc Date 2026-08-20
Mailing Date 2026-09 Unassigned
Author(s) Victor Zverovich
Target Audience LEWGSG16
Abstract Formatting an enumeration as its underlying type currently requires either a formatter specialization or an explicit conversion at every call site. [P3070] proposed `format_as`, an ADL-based customization point that makes this more convenient and allows the conversion to be performed before type erasure.
P4269R1 when_all Oughtn't Hallucinate set_stopped R. Leahy 2026-08-30 2026-09
Doc Date 2026-08-30
Mailing Date 2026-09 Unassigned
Author(s) Robert Leahy
Target Audience LEWGSG1
Revisions R0
Tracking issue View on GitHub
Abstract This paper proposes that `std::execution::when_all` not use a `std::inplace_stop_source` when it can be statically determined such a stop source would never be used.
P4272R0 Addressed but Unresolved: P3846R1's Eighteen Responses on C++26 Contract Assertions V. Falco 2026-09-22 2026-09
Intent Inform
Doc Date 2026-09-22
Mailing Date 2026-09 Unassigned
Author(s) Vinnie Falco
Target Audience WG21
Abstract Sixteen of the eighteen objections to C++26 contract assertions were never settled. None was closed by a draft change the objector accepted, by an explanation whose evidence supported its conclusion, or by a recorded decision with stated reasons, and no attempt to settle them is visible on the public record either.
P4276R1 A Policy for Scalar Overloads in std::simd D. Towner 2026-09-02 2026-09
Doc Date 2026-09-02
Mailing Date 2026-09 Unassigned
Author(s) Daniel Towner
Target Audience LEWG
Revisions R0
Tracking issue View on GitHub
Abstract `std::simd` includes scalar overloads for a few operations, but a proposal should not be expected to provide them simply because other recent papers have. A scalar supplied where a vector is expected is already broadcast to a vector by the converting constructor. An explicit scalar overload is therefore only useful when it offers a concrete semantic or implementation benefit that the broadcast can
P4288R2 Stop the Decay R. Leahy 2026-09-20 2026-09
Doc Date 2026-09-20
Mailing Date 2026-09 Unassigned
Author(s) Robert Leahy
Target Audience LEWGSG1
Revisions R1R0
Tracking issue View on GitHub
Abstract This paper proposes that `std::execution` algorithms pass through by-reference result datums from child operations rather than uniformly decay-copying them. To aid in the accomplishment thereof it also proposes class templates which abstract the necessary completion storage and completion signature transformation. This paper does not propose changing how `std::execution` algorithms store the argum
P4302R2 Any Delegate May Object to a Poll on an Unmailed Revision V. Falco, M. Gill 2026-09-22 2026-09
Intent Ask
Doc Date 2026-09-22
Mailing Date 2026-09 Unassigned
Target Audience WG21
Revisions R1R0
Tracking issue View on GitHub
Abstract WG21 sometimes records polls on paper revisions that did not appear in a pre-meeting mailing. When an in-meeting revision changes the design, recording the poll can shift the burden of achieving consensus from the author to the stakeholders before national body experts have seen the change. This paper proposes that, before such a poll is recorded, the chair ask whether anyone objects and that one
P4307R0 An Infix Operator and a Keyword Escape for C++ S. Downey 2026-09-22 2026-09
Doc Date 2026-09-22
Mailing Date 2026-09 Unassigned
Author(s) Steve Downey
Target Audience EWGSG17
Abstract We propose two uses for one character: the backtick, the last printable ASCII character the language can still usefully claim. One makes any callable a binary operator; the other lets a keyword be escaped for use as an ordinary identifier. Each is independently motivated, and each is defined by rewrite into something the language already has. They are proposed together, with equal standing, becaus
P4320R1 std::execution::sequence R. Leahy 2026-09-21 2026-09
Doc Date 2026-09-21
Mailing Date 2026-09 Unassigned
Author(s) Robert Leahy
Target Audience LEWGSG1
Revisions R0
Tracking issue View on GitHub
Abstract `sequence` adapts any number of input senders into a sender which completes when all input senders have completed, with each input sender’s asynchronous operation being started only after the completion of the preceding input sender’s asynchronous operation.
P4333R0 Asynchronous main I. Petersen, J. Wong, R. Leahy 2026-09-22 2026-09
Doc Date 2026-09-22
Mailing Date 2026-09 Unassigned
Target Audience EWGLEWGSG1SG17SG18
Abstract This paper proposes that `main` should have an alternate, sender factory form.
P4335R0 2026-09 Library Evolution Polls I. Levi, F. Fracassi, A. Weis, C. Jabot 2026-09-21 2026-09
Doc Date 2026-09-21
Mailing Date 2026-09 Unassigned
Target Audience LEWG
Abstract This paper contains the decision polls that the C++ Library Evolution group will take in September 2026.
P4341R0 Another take on non-transient constexpr allocation B. Revzin 2026-09-10 2026-09
Doc Date 2026-09-10
Mailing Date 2026-09 Unassigned
Author(s) Barry Revzin
Target Audience EWG
Abstract This papers proposes a new approach to solving the problem of non-transient constexpr allocation. The result is variables of types like `std::vector<T>` and `std::string` are able persist as `constexpr` variables and, with [[P4340R0] (Extending constant template parameter support by customizing std::meta::reflect_constant)](https://wg21.link/p4340r0), be usable as constant template parameters.
P4343R1 Adding clear() to Container Adaptors S. Avasthi 2026-09-10 2026-09
Doc Date 2026-09-10
Mailing Date 2026-09 Unassigned
Author(s) Shubham Avasthi
Target Audience SG18
Revisions R0
Tracking issue View on GitHub
Abstract This paper proposes adding a <ins>clear()</ins> member function to the standard container adaptors (<ins>std::priority_queue, std::queue, and std::stack</ins>). This addition allows developers to empty the contents of an adaptor while preserving the memory capacity of its underlying container, thereby avoiding unnecessary dynamic memory reallocations. To ensure strict backward compatibility with c
P4345R0 Extending C++ with Unicode Mathematical Operators S. Downey 2026-09-22 2026-09
Doc Date 2026-09-22
Mailing Date 2026-09 Unassigned
Author(s) Steve Downey
Target Audience EWGSG16SG17
Abstract We propose that a user be able to declare `operator⊞` and write `a ⊞ b`. That is the whole feature: a frozen set of Unicode symbols that have never had meaning in C++ becomes available as operator tokens, and an operator drawn from that set is an ordinary overloadable function, found by ordinary lookup, called by ordinary overload resolution.
P4346R0 Make `movable-box` `movable_box` S. Downey 2026-09-22 2026-09
Doc Date 2026-09-22
Mailing Date 2026-09 Unassigned
Author(s) Steve Downey
Target Audience LEWG
Abstract The exposition-only class template *movable-box* is the workhorse of the range adaptors. It is how the standard library stores a predicate, a projection, or a value inside a view type and still satisfies the assignability the `view` concept demands. Every implementation ships one. Every ranges-adjacent library reimplements one. Anyone writing a conforming view outside the standard library must wri
P4349R0 Hardened preconditions for indirect and polymorphic T. Brindle, J. Coe, A. Peacock 2026-08-21 2026-09
Doc Date 2026-08-21
Mailing Date 2026-09 Unassigned
Target Audience LEWG
Abstract C++26 introduced two new “vocabulary types for composite class design”, `std::indirect` and `std::polymorphic`, via [[P3019R14]](https://wg21.link/p3019r14).
P4350R0 Presentation "Concepts for C++ Concurrent Queues" D. Vollmann 2026-08-18 2026-09
Doc Date 2026-08-18
Mailing Date 2026-09 Unassigned
Author(s) Detlef Vollmann
Target Audience LEWG
P4353R0 Partially Mutable Lambda Captures R. McDougall, L. Garg 2026-08-19 2026-09
Doc Date 2026-08-19
Mailing Date 2026-09 Unassigned
Target Audience EWGCWG
Abstract At a high level: we have found that it is simple and straightforward to extend both `const` and `mutable` keywords to lambda syntax in a way that closely mirrors most users’ mental model of lambda as “a means of getting an object of a callable struct”, that is easy to implement, and is in line with the ongoing evolution of the language:
P4354R0 No More transform_sender Workarounds R. Leahy 2026-09-01 2026-09
Doc Date 2026-09-01
Mailing Date 2026-09 Unassigned
Author(s) Robert Leahy
Target Audience LWG
Abstract This paper proposes wording-only changes to simplify the specification of `let_value`, `let_error`, and `let_stopped`, along with future, proposed asynchronous algorithms.
P4355R0 Floating-point std::saturating_cast J. Schultke, M. Borland 2026-08-30 2026-09
Doc Date 2026-08-30
Mailing Date 2026-09 Unassigned
Target Audience SG6
Abstract `std::saturating_cast` should accept floating-point operands.
P4357R0 Reflections on Completion Signatures R. Leahy 2026-09-09 2026-09
Doc Date 2026-09-09
Mailing Date 2026-09 Unassigned
Author(s) Robert Leahy
Target Audience LEWGSG1
Abstract This paper proposes changes and additions to better integrate `std::meta::info` into the calculation of completion signatures in `std::execution`.
P4358R0 Pointer tagging for custom pointer types C. Jabot 2026-09-21 2026-09
Doc Date 2026-09-21
Mailing Date 2026-09 Unassigned
Author(s) Corentin Jabot
Target Audience LEWG
Abstract This paper proposes support for pointer-like types in `pointer_tag_pair`.
P4363R0 C++ Contracts compile-time evaluation semantic: static J. Grant 2026-09-10 2026-09
Doc Date 2026-09-10
Mailing Date 2026-09 Unassigned
Author(s) Jonathan Grant
Target Audience EWG
Abstract This paper introduces an additional evaluation semantic for C++ Contracts: **"**`static`**".** This is an additional semantic which sits along side the existing: ignore, observe, enforce, quick-enforce evaluation semantics.
P4364R0 Emitting messages at compile time with std::format B. Revzin 2026-09-10 2026-09
Doc Date 2026-09-10
Mailing Date 2026-09 Unassigned
Author(s) Barry Revzin
Target Audience LEWG
Abstract [[P2758R5] (Emitting messages at compile time)](https://wg21.link/p2758r5) is still working its way through the committee, but in the meantime [[P3391R2] (constexpr std::format)](https://wg21.link/p3391r2) has been adopted for C++26. Which means that the former paper can continue to just provide the lower level interface that accepts `std::string_view` while this paper can provide the more complex
P4373R0 Why Did You Stop? R. Leahy 2026-09-10 2026-09
Doc Date 2026-09-10
Mailing Date 2026-09 Unassigned
Author(s) Robert Leahy
Target Audience LEWGSG1
Abstract This paper proposes that, in certain cases, consumers be able to determine that asynchronous operations only send `std::execution::set_stopped_t()` when requested.
P4374R0 Non-Intrusive Interfaces for C++ T. Payne 2026-09-10 2026-09
Doc Date 2026-09-10
Mailing Date 2026-09 Unassigned
Author(s) Theo Payne
Target Audience SG18
Abstract C++26 Reflection makes it possible for library code to inspect and use compile-time information about concrete types. This enables a different approach to dynamic polymorphism in which the relationship between an interface and a concrete type can be established without requiring the concrete type to participate in an inheritance hierarchy.
P4376R0 Do not require module implementation units to import primray module interface implicitly C. Xu 2026-09-10 2026-09
Doc Date 2026-09-10
Mailing Date 2026-09 Unassigned
Author(s) Chuanqi Xu
Target Audience EWG
Abstract The other practices shows that this is a real need to fix real problems.
P4378R0 Align exact-width integer types with C M. Çağrı 2026-09-22 2026-09
Doc Date 2026-09-22
Mailing Date 2026-09 Unassigned
Author(s) Murat Can Çağrı
Target Audience LEWGLWGSG22
Abstract C23 requires the exact-width typedef names for every width for which an implementation provides a standard or extended integer type with no padding bits. C++ retains this requirement only for widths 8, 16, 32, and 64. This paper aligns C++ with C23.
P4380R0 Token Sequence Injection B. Revzin, D. Vandevoorde, A. Alexandrescu 2026-09-22 2026-09
Doc Date 2026-09-22
Mailing Date 2026-09 Unassigned
Target Audience EWG
Abstract This is a follow-up to [[P3294R2] (Code Injection with Token Sequences)](https://wg21.link/p3294r2). In that paper, we argued that the right model for code generation in C++ is through token sequences by comparing to other potential models. In short, we believe that code generation in C++ must be C++-shaped, must be able to generate all of C++, and must allow for the full use of C++ in that genera
P4381R0 Chairing SG21 and then objecting to Contracts J. Spicer 2026-09-19 2026-09
Doc Date 2026-09-19
Mailing Date 2026-09 Unassigned
Author(s) John Spicer
Target Audience WG21
Abstract People have asked how I could chair SG21 and still object to the product that came out of it.
P4444R0 std::big_int J. Schultke, M. Borland, C. Kormanyos 2026-09-22 2026-09
Doc Date 2026-09-22
Mailing Date 2026-09 Unassigned
Target Audience SG6
Abstract We propose an infinite-precision integer in the form of a class template, with elastic operations.
Showing 59 of 59 papers · source: open-std.org