Execute the following program in the Microsoft Visual Studio 2026 with natvis loaded and observe contents of the locals window or the watch window.
#include <boost/int128.hpp>
int main()
{
boost::int128::uint128_t a;
boost::int128::uint128_t b;
boost::int128::uint128_t c;
boost::int128::uint128_t d;
boost::int128::uint128_t e;
boost::int128::uint128_t f;
a.low = 0x0000000000000000ull;
a.high = 0x0000000000000000ull;
b.low = 0x0000000000000000ull + 42;
b.high = 0x0000000000000000ull;
c.low = 0xffffffffffffffffull - 42;
c.high = 0x0000000000000000ull;
d.low = 0x0000000000000000ull;
d.high = 0x0000000000000000ull + 42;
e.low = 0xffffffffffffffffull;
e.high = 0xffffffffffffffffull - 42;
f.low = 0xffffffffffffffffull;
f.high = 0xffffffffffffffffull;
__debugbreak();
}
- The variable
a contains the value of zero.
- The variable
b contains the value of 42.
- The variable
c contains the value of 42 before the great 2^64 boundary / barrier.
- The variable
d contains the value of 42 after the great 2^64 boundary / barrier.
- The variable
e contains the value of 42 before the absolute maximum.
- The variable
f contains the absolute maximum.
Also observe the following screenshot.

Execute the following program in the Microsoft Visual Studio 2026 with
natvisloaded and observe contents of the locals window or the watch window.acontains the value of zero.bcontains the value of 42.ccontains the value of 42 before the great 2^64 boundary / barrier.dcontains the value of 42 after the great 2^64 boundary / barrier.econtains the value of 42 before the absolute maximum.fcontains the absolute maximum.Also observe the following screenshot.