Date: Sun, 23 Aug 2026 11:52:40 +0200
Somewhat related to this, there is a proposal by Jakub Jelinek
"Arbitrary bit-precise varying argument access, stores and loads"
that uses a generic limb type.
https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3921.htm
Martin
Am Sonntag, dem 23.08.2026 um 07:25 +0200 schrieb Jan Schultke via Liaison:
> Hi,
>
> When working on a draft of P4444 std::big_int (https://isocpp.org/files/papers/D4444R0.html#std::uint_multiprecision_t), we've stumbled upon the problem that C++ does not yet have a "word type" that would be suitable as the "limb type" for multiprecision. That is, the largest possible unsigned integer type that has native arithmetic support.
>
> For the most part, std::size_t coincidentally has the right size, but e.g. on WASM32, std::size_t is 32-bit while there are i64 hardware instructions for arithmetic. Every existing integer type (alias) has the wrong size, either by design or due to historical reasons.
>
> I'm thus interested in standardizing a type alias in <stdint.h> that has the size. In P4444, we call that uint_multiprecision_t, but that's perhaps not universal enough. Names like "uint_maxfast_t" or "uint_word_t" come to mind.
>
> What are your thoughts? Also, since I'm not in the C committee myself, is there anyone who is interested in championing a proposal on the WG14 side?
>
>
> Yours
> Jan
> _______________________________________________
> Liaison mailing list
> Liaison_at_[hidden]
> Subscription: https://lists.isocpp.org/mailman/listinfo.cgi/liaison
> Link to this post: http://lists.isocpp.org/liaison/2026/08/1689.php
"Arbitrary bit-precise varying argument access, stores and loads"
that uses a generic limb type.
https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3921.htm
Martin
Am Sonntag, dem 23.08.2026 um 07:25 +0200 schrieb Jan Schultke via Liaison:
> Hi,
>
> When working on a draft of P4444 std::big_int (https://isocpp.org/files/papers/D4444R0.html#std::uint_multiprecision_t), we've stumbled upon the problem that C++ does not yet have a "word type" that would be suitable as the "limb type" for multiprecision. That is, the largest possible unsigned integer type that has native arithmetic support.
>
> For the most part, std::size_t coincidentally has the right size, but e.g. on WASM32, std::size_t is 32-bit while there are i64 hardware instructions for arithmetic. Every existing integer type (alias) has the wrong size, either by design or due to historical reasons.
>
> I'm thus interested in standardizing a type alias in <stdint.h> that has the size. In P4444, we call that uint_multiprecision_t, but that's perhaps not universal enough. Names like "uint_maxfast_t" or "uint_word_t" come to mind.
>
> What are your thoughts? Also, since I'm not in the C committee myself, is there anyone who is interested in championing a proposal on the WG14 side?
>
>
> Yours
> Jan
> _______________________________________________
> Liaison mailing list
> Liaison_at_[hidden]
> Subscription: https://lists.isocpp.org/mailman/listinfo.cgi/liaison
> Link to this post: http://lists.isocpp.org/liaison/2026/08/1689.php
Received on 2026-08-23 09:52:47
