› P2285R1
Are default function arguments in the immediate context?
A. Krzemieński , T. Kamiński
Intent
Proposal
Abstract
The motivation for default function arguments is to enable two different function invocation forms while providing a single function declaration:
› P3385R7
Attributes reflection
A. Cassagnes
Intent
Proposal
Abstract
Attributes are used to a great extent, and there is new attributes being added to the language somewhat regularly.
› P3666R3
Bit-precise integers
J. Schultke
Intent
Proposal
Abstract
In distant history, there have been various attempts at standardizing multi-precision integers in C++, such as [[N1692]](https://wg21%2elink/n1692) "A Proposal to add the Infinite Precision Integer to the C++ Standard Library", [[N1744]](https://wg21%2elink/n1744) "Big Integer Library Proposal for C++0x", and [[N4038]](https://wg21%2elink/n4038) "Proposal for Unbounded-Precision Integer Types", al
› P3822R1
Conditional noexcept specifiers in compound requirements
V. Luchkin , G. Ažman
Intent
Proposal
Abstract
This paper extends compound requirements to allow noexcept specifiers to be applied conditionally. The proposed syntax for this is `requires { { *expression* } noexcept(*constant-expression*) -> *return-type-constraint*; }`.
› P3874R1
Should C++ be a memory-safe language?
J. Bauman , T. Doumler , N. Liber , R. McDougall , P. Halpern , J. Garland , J. Müller
Intent
Proposal
Abstract
In recent years there have been numerous recommendations from industry, academia and government to prefer “memory-safe languages”1. Rust is consistently described as a memory-safe language while C++ is not — despite the fact that both can exhibit undefined behavior violating many of the commonly understood memory safety guarantees such as protection against buffer overflows and dangling pointers.
› P3970R0
Profiles and Safety: a call to action
D. Vandevoorde , J. Garland , P. McKenney , R. Orr , B. Stroustrup , M. Wong
› P3984R0
A type-safety profile
B. Stroustrup
Intent
Proposal
Abstract
* C’s ability to access hardware and manipulate data without overhead. * Simula’s ability to organize programs and guarantee type safety.
› P4004R0
Reconsider CWG 1395 "Partial ordering of variadic templates reconsidered"
C. Meerwald
Intent
Proposal
Abstract
```cpp template<typename ... T> char *f(T &...); // #1 template<typename T> int *f(T &&); // #2 int i; auto *p = f(&i); ```
› P4005R0
A proposal for guaranteed-(quick-)enforced contracts
V. Voutilainen
Intent
Proposal
Abstract
This paper proposes a particular form of guaranteed-enforced contracts.
› P4009R0
A proposal for solving all of the contracts concerns
V. Voutilainen
Intent
Proposal
Abstract
We have had a couple of attempts to resolve the Romanian NB comment about the lack of guaranteed-enforced contracts. We've also had some suggestions (e.g. in D3894R0) for a different design for Contracts, but there were some major concerns about it (reliance on lambdas for deferring evaluation for 'ignore', concerns about generic preambles/postambles).
› P4011R0
Redefining narrow contract
M. Kretz
Intent
Proposal
Abstract
| Document Number: | P4011R0 | | --- | --- | | Date: | 2026-02-12 | | Reply-to: | Matthias Kretz <m.kretz@gsi.de> | | Audience: | EWG |
› P4015R0
Enforcing Contract Conditions with Statements
L. Lippincott
Intent
Proposal
Abstract
C++26 contracts come with an enforcement mechanism that provides to certain parties (function authors, function callers, and individual compilers, but not entire implementations or program builders) only a nebulous threat of contract enforcement, rather than certainty. This nebulous behavior is not only by design, but is in fact essential to the design. The uncertainty surrounding enforcement make
› P4019R0
constant_assert
J. Persson
› P4020R0
Concerns about contract assertions
A. Krzemieński
› P4026R0
Core Issue 3123 "Global lookup for begin and end for expansion statements"
V. Serebrennikov
Intent
Proposal
Abstract
— an enumerating expansion statement if its *expansion-initializer* is of the form *expansion-init-list*;
› P4032R0
Strong ordering for meta::info
L. Szolnoki
Intent
Proposal
Abstract
Being able to compare `meta::info` directly makes metaprogramming that needs to sort types, functions, etc... into some canonical order with standard algorithms more convenient.