* Make the library modular usable.
* Switch to library requirements instead of source. As source puts extra source in install targets.
* Add missing import-search for cconfig/predef checks.
* Add requires-b2 check to top-level build file.
* Bump B2 require to 5.2
* Change all <source> references to <library>.
* Update copyright dates.
* Move inter-lib dependencies to a project variable and into the build targets.
* Adjust doc build to avoid boost-root references.
* Update build deps.
* Change Boost Test build refs to work with both old and modular test lib targets.
* Adjust CI for changes to the inspect tool. Also simplify the build and test to avoid future config problems as it can mor easily adjust to future CI changes.
* Use latest CI image to get a modern C++ compiler rthat doesn't ICE, we hope.
* Current CircleCI images need sudo to install packages.
* Undo search-lib change.
---------
Co-authored-by: Matt Borland <matt@mattborland.com>
APPoS for short, throughout the library including in mixed precision arithmetic which should now always promote to the highest precision of any of the arguments.
See https://svn.boost.org/trac10/ticket/13264.
Fix previously unsupported situation: conversion of narrow cpp_bin_float to wider integer type.
See https://svn.boost.org/trac10/ticket/13301.
Improve test coverage for cpp_bin_floats with large exponent types, and/or dynamic allocators.
Fix issue in numeric_limits::max() that caused a complement of a signed integer number to be taken when the allocator is dynamic.
Fix heuristic in exp() function that caused a crazy number of iterations to be taken when the exponent was very large.