On Fri, 12 Jul 2019 at 10:38, John Maddock via Boost-users <boost-users@lists.boost.org> wrote:
Aside: adding a native population count function might well be a useful
addition to the library...

Native clz/ctz (_BitScanReverse/_BitScanForward) might be useful as well.
The limb size is always half the width of the largest compiler supported
integer type - this is a necessary condition to implement arithmetic
entirely within the language.

This seems a high price to pay [I guess the 'within the language' is key here]. At some point in time [when 64-bit started to be a general thing] there was some info regarding this on gmplib.org, which basically stated that 64-bit limbs [on x64] were 4 times faster than 32-bit limbs. GMP (MPIR) does 64-bit limbs on Windows, no problem [but yes it's C].

If clang-win can have __int128 support enabled

clang-cl can/will have __int128 support enabled by passing it '-Xclang -fforce-enable-int128', i.e. pass '-fforce-enable-int128' to clang++.

"Anyone who believes that exponential growth can go on forever in a finite world is either a madman or an economist" - Kenneth E. Boulding