A few years ago when I learned that _Bitint was included in C23, I also thought about this issue many times. My conclusion is that implementing it using a class template is really not a good idea, and using a built-in type would make things easier for its users.
However, I believe that using a library to address the surprising results of integer promotions in bitwise operations is better than using _Bitint. Additionally, I’m not a fan of the underscore in the name bit_int.
From: Std-Proposals <std-proposals-bounces@lists.isocpp.org> on behalf of Jan Schultke via Std-Proposals <std-proposals@lists.isocpp.org>
Sent: Tuesday, September 2, 2025 2:02
To: C++ Proposals <std-proposals@lists.isocpp.org>
Cc: Jan Schultke <janschultke@googlemail.com>
Subject: [std-proposals] D3666R0 Bit-precise integers