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
Evolution
Study Groups
Mailings
1 · Year 1 · Month

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

2026 Feb · 1 of 6

Pick months in 2026

Add Year +

Select Years To Display

Current Years Selected

2026
Filters Author: Jan Schultke Clear all
10 out of 10 papers selected for export
SelectPaper Title Authors Audience Doc Date
P3642R4 Carry-less product: std::clmul J. Schultke
Intent Proposal
Mailing Date 2026-02 Pre-Croydon
Author(s) Jan Schultke
Target Audience LEWG
Revisions R6R5
Tracking issue View on GitHub
Abstract [Carry-less multiplication](https://en.wikipedia.org/wiki/Carry-less_product) is a simple numerical operation on unsigned integers. It can be a seen as a regular multiplication where `xor` is being used as a reduction instead of `+`.
P3666R3 Bit-precise integers J. Schultke
Intent Proposal
Mailing Date 2026-02 Pre-Croydon
Author(s) Jan Schultke
Target Audience EWGLEWG
Revisions R4
Tracking issue View on GitHub
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
P3688R6 ASCII character utilities J. Schultke, C. Jabot
Intent Proposal
Mailing Date 2026-02 Pre-Croydon
Target Audience SG16
Tracking issue View on GitHub
Abstract Testing whether a character falls into a specific subset of ASCII characters or performing some simple transformations are common tasks in text processing. For example, applications may need to check if identifiers are comprised of alphanumeric ASCII characters or underscores; Unicode properties are not relevant to this task, and usually, neither are locales.
P3724R3 Integer division J. Schultke
Intent Proposal
Mailing Date 2026-02 Pre-Croydon
Author(s) Jan Schultke
Target Audience LEWG
Revisions R4
Tracking issue View on GitHub
Abstract C++ currently only offers truncating integer division in the form of the `/` operator. However, other rounding modes have various use cases too, and implementing these as the user can be surprisingly hard, especially when integer overflow needs to be avoided, and negative inputs are accepted.
P3737R3 std::array is a wrapper for an array! J. Schultke
Intent Proposal
Mailing Date 2026-02 Pre-Croydon
Author(s) Jan Schultke
Target Audience LEWG
Revisions R4
Tracking issue View on GitHub
Abstract The `std::array` class template has established itself as a de-facto replacement for "builtin arrays" or "C-style arrays" in many code bases. This also means that it is frequently taught to novice programmers, with an explanation along the lines of:
P3864R1 Correctly rounded floating-point maths functions G. Davidson, J. Schultke
Intent Proposal
Mailing Date 2026-02 Pre-Croydon
Target Audience SG6SG22
Tracking issue View on GitHub
Abstract This paper proposes adding five overload sets to the standard library for addition, subtraction, multiplication, division, and square root calculation, correctly rounded as specified in ISO/IEC 60559:2020.
P3876R1 Extending <charconv> support to more character types J. Schultke, P. Bindels
Intent Proposal
Mailing Date 2026-02 Pre-Croydon
Target Audience SG16
Revisions R2
Tracking issue View on GitHub
Abstract Support for `char8_t` and other Unicode character types in `std::to_chars` and `std::from_chars` is clearly useful. File formats such as JSON require the use of Unicode character encodings, so an application that deals with JSON may want to use `char8_t` in its APIs and internally. However, when attempting to use `char8_t` for this purpose, one quickly runs into problems:
P3899R1 Clarify the behavior of floating-point overflow J. Schultke, M. Kretz
Intent Proposal
Mailing Date 2026-02 Pre-Croydon
Target Audience SG6
Revisions R3R2
Tracking issue View on GitHub
Abstract The current specification of floating-point overflow is unclear. Floating-point overflow occurs when finite operands are used as operands, and the result cannot be represented as a finite value. For [[ISO/IEC 60559:2020]](https://www%2eiso%2eorg/standard/80985%2ehtml) floating-point numbers, this results in infinity.
P3938R1 Values of floating-point types J. Schultke
Intent Proposal
Mailing Date 2026-02 Pre-Croydon
Author(s) Jan Schultke
Target Audience SG6
Tracking issue View on GitHub
Abstract The core language wording in the C++ standard does not specify what values a floating-point type may represent. There are a few questions that have no obvious answer:
P3969R0 Fixing std::bit_cast of types with padding bits J. Schultke
Intent Proposal
Mailing Date 2026-02 Pre-Croydon
Author(s) Jan Schultke
Target Audience LEWG
Revisions R2R1
Tracking issue View on GitHub
Abstract The following use of `std::bit_cast` has undefined behavior at compile time:
Showing 10 of 10 papers · source: open-std.org