...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Boost.Multiprecision tries hard to implement std::numeric_limits
for all types as far as possible and meaningful because experience with Boost.Math
has shown that this aids portability.
The C++
standard library defines std::numeric_limits
in section 18.3.2.
This in turn refers to the C standard SC22/WG11 N507 DRAFT INTERNATIONAL ISO/IEC STANDARD WD 10967-1 Information technology Language independent arithmetic Part 1: Integer and floating-point arithmetic.
That C Standard in turn refers to
IEEE754 IEEE Standard for Binary Floating-Point Arithmetic
There is a useful summary at C++ reference.
The chosen backend often determines how completely std::numeric_limits
is available.
Compiler options, processor type, and definition of macros or assembler instructions to control denormal numbers will alter the values in the tables given below.
Warning | |
---|---|
GMP's |