Multiprecision for modern C++
A very quick release that fixes the CMakeLists.txt
file having the wrong version number.
This is a small release that fixes a couple of issues with the support for the fmt
library.
As usual, the full changelog is available here:
NOTE: with release 1.0.0, mp++ transitions to a semantic versioning numbering scheme.
This is a maintenance release that features a few bugfixes and introduces ABI versioning. There are no API changes with respect to the previous release (0.27).
As usual, the full changelog is available here:
This new mp++ release contains several new features for the real class, performance improvements for signed multiprecision integers, and a couple of build fixes.
Additionally, mp++ now has optional support for formatting via the fmt library:
The full changelog, as usual, is available here:
This is a quick release that fixes support for quadruple-precision floating-point types on PPC64. There are no other changes with respect to mp++ 0.25.
The full changelog, as usual, is available here:
This is an incremental bugfix release that fixes a build issue on some platforms (e.g., FreeBSD) originating from calling GMP/MPFR/MPC macros with a leading ::
. A small feature addition for the real
class and a new interactive notebook are included as well.
As usual, the full changelog is available here:
The main addition in this new mp++ release is support for output stream format flags for all the floating-point classes (both real-valued and complex-valued):
#include <iomanip>
#include <ios>
std::cout << std::scientific << std::setprecision(6) << real{1 / 3.} << '\n'; // "3.333333e-01"
std::cout << std::hexfloat << std::uppercase << complex{1.1, 1.3} << '\n'; // "(0X1.199999999999AP+0,0X1.4CCCCCCCCCCCDP+0)"
std::cout << std::fixed << std::showpoint << std::showpos << 42_rq << '\n'; // "+42.000000"
Additionally, the Lambert functions and the polylogarithms are now available for the real
class.
Another important addition is that mp++'s conda packages are now available for the ARM64 and PPC64 architectures.
The full changelog, as usual, is available here:
This is a minor release that features an important API change: several generic constructors of the multiprecision classes are not marked explicit
any more. This change improves the library's ergonomics and interoperability with other generic C++ libraries.
Another small addition is a new fabs()
overload for real128
, equivalent to the existing abs()
functions for the computation of the absolute value.
The full changelog, as usual, is available here:
This new version of mp++ adds a binary serialization API for the real class, and enables (optional) Boost.serialization support for all multiprecision classes. The new release also features various build system enhancements/fixes and a new theme for the online documentation.
The full changelog, as usual, is available here:
This new release of mp++ greatly enhances the capabilities of the real128
and real
classes. In particular, all functions from the quadmath
library are now exposed in the real128
API, and most MPFR functions are now exposed in the real
API.
This release also contains new features for the complex
and integer
classes, and a bugfix in a couple of real
functions which were returning incorrect values at the poles.
The benchmark code has been overhauled, and the documentation has been updated with new benchmark results.
The full changelog, as usual, is available here: