Configuration Macros

User Configurable Macros

  • BOOST_INT128_NO_BUILTIN_INT128: The user may define this when they do not want the internal implementations to rely on builtin __int128 or unsigned __int128 types.

  • BOOST_INT128_ALLOW_SIGN_COMPARE - Allows only comparisons between this library’s types, and built-in types of the opposite sign.

DISABLED BY DEFAULT FOR CORRECTNESS
  • BOOST_INT128_ALLOW_SIGN_CONVERSION - Allows operations between this library’s types, and built-in types of opposite signedness, to include sign comparisons.

DISABLED BY DEFAULT FOR CORRECTNESS
  • BOOST_INT128_DISABLE_EXCEPTIONS - Allows exceptions to be disabled. This macro will automatically be defined in the presence of -fno-exceptions or similar MSVC flags.

Automatic Configuration Macros

  • BOOST_INT128_HAS_INT128: This is defined when compiling on a platform that has builtin __int128 or unsigned __int128 types (e.g. __x86_64__).

  • BOOST_INT128_ENDIAN_LITTLE_BYTE: This is defined to 1 when compiling on a little endian architecture, otherwise 0.

  • BOOST_INT128_ENDIAN_BIG_BYTE: This is defined to 1 when compiling on a big endian architecture, otherwise 0.