P4421R0 — Numeric Traits for C++29
Damien Lebrun-Grandie, Mark Hoemmen, Jonathan Wakely, Matthias Kretz, Tim Song
LEWG
This paper revives [[P1841R3]](https://wg21.link/p1841r3) (“Wording for Individually Specializable Numeric Traits”) for C++29, folding in the resolutions from [[P2551R2]](https://wg21.link/p2551r2) (“Clarify intent of P1841 numeric traits”) that were polled favorably by Library Evolution in 2022 but never turned into a new revision of P1841. It proposes no new design: it updates the wording to reflect the consensus Library Evolution already reached. It also reports several years of production implementation experience with these traits in [Kokkos](https://kokkos.org), a widely-deployed C++ performance-portability library, which independently arrived at essentially the same design.