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

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

2026 May · 1 of 6

Pick months in 2026

Add Year +

Select Years To Display

Current Years Selected

2026
Filters Author: Jan Schultke LEWG Clear all
6 out of 6 papers selected for export
SelectPaper Title Authors Audience Doc Date
P3642R5 Carry-less product: std::clmul J. Schultke
Mailing Date 2026-05 Pre-Brno
Author(s) Jan Schultke
Target Audience LEWG
Revisions R6R4
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 `+`.
P3666R4 Bit-precise integers J. Schultke
Mailing Date 2026-05 Pre-Brno
Author(s) Jan Schultke
Target Audience LEWGCWG
Revisions R3
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
P3724R4 Integer division J. Schultke
Mailing Date 2026-05 Pre-Brno
Author(s) Jan Schultke
Target Audience LEWG
Revisions R3
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.
P3737R4 std::array is a wrapper for an array! J. Schultke
Mailing Date 2026-05 Pre-Brno
Author(s) Jan Schultke
Target Audience LEWG
Revisions R3
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:
P3969R1 Fixing std::bit_cast of types with padding bits J. Schultke
Mailing Date 2026-05 Pre-Brno
Author(s) Jan Schultke
Target Audience EWGLEWG
Revisions R2R0
Tracking issue View on GitHub
Abstract > The following use of `std::bit_cast` has undefined behavior at compile time: > > ```cpp > constexpr auto x = std::bit_cast<__int128>(0.0L); // GCC accepts (x = 0), Clang rejects > ``` > > That is because an 80-bit x87 `long double` has 6 bytes of padding, and it is undefined behavior to map those padding bits onto non-padding bits in the destination type via `std::bit_cast`. [[bit.cast]](https:/
P4231R0 Unified floating point rounding proposal H. Boehm, G. Davidson, J. Schultke
Mailing Date 2026-05 Pre-Brno
Target Audience LEWGSG6
Tracking issue View on GitHub
Abstract We propose the addition of the following struct. Actual wording is still left as future work (some of which can be taken from p3864). This is basically identical to P2746, except that we constrain operations to be IEEE conformant whenever is_iec_559 is `true`.
Showing 6 of 6 papers · source: open-std.org