GNU MPFR 4.1.0 Release Candidate

Vincent Lefevre vincent at
Sat Jun 13 01:19:57 UTC 2020

The release of GNU MPFR 4.1.0 ("épinards à la crème") is imminent.
Please help to make this release as good as possible by downloading
and testing this release candidate:

The SHA1 digests:
82cd76ae13311375f9ce0ff949d818717e7941b8  mpfr-4.1.0-rc1.tar.bz2
4669a5eda286546b3d11e3e5a207cfdd324ab9a4  mpfr-4.1.0-rc1.tar.gz
633a221f1e4649684624d08d081ceafd29090a9d  mpfr-4.1.0-rc1.tar.xz

The SHA256 digests:
4e91be229a413257a32deb6c859c1793471ce4bd277b0db4785ba7ba10da94f4  mpfr-4.1.0-rc1.tar.bz2
7391b0e4dbf256cf1fac04cc14f3b7920831513956c08ecf16788b8432fa9e43  mpfr-4.1.0-rc1.tar.gz
327c7c6b06546289e6d379e4f47c2fc7246a1913c27b670a58f03791eb61a8a9  mpfr-4.1.0-rc1.tar.xz

The signatures:

Each tarball is signed by Vincent Lefèvre. This can be verified using
the DSA key ID 980C197698C3739D; this key can be retrieved with:

  gpg --recv-keys 980C197698C3739D

or by downloading it from <>.
The key fingerprint is:

  07F3 DBBE CC1A 3960 5078  094D 980C 1976 98C3 739D

The signatures can be verified with: gpg --verify <file.asc>
You should check that the key fingerprint matches.

Changes from versions 4.0.* to version 4.1.0:
- The "épinards à la crème" release.
- Binary compatible with MPFR 4.0.*, though some minor changes in the
  behavior of the formatted output functions may be visible, regarded
  as underspecified behavior or bug fixes (see below).
- New --enable-formally-proven-code configure option, to use (when available)
  formally proven code.
- Improved __GMP_CC and __GMP_CFLAGS retrieval (in particular for MS Windows).
- Option -pedantic is now always removed from __GMP_CFLAGS (see INSTALL).
- Changed __float128 to the type _Float128 specified in ISO/IEC TS 18661.
  __float128 is used as a fallback if _Float128 is not supported.
- New function mpfr_get_str_ndigits about conversion to a string of digits.
- New function mpfr_dot for the dot product (incomplete, experimental).
- New functions mpfr_get_decimal128 and mpfr_set_decimal128 (available only
  when MPFR has been built with decimal float support).
- New function mpfr_cmpabs_ui.
- New function mpfr_total_order_p for the IEEE 754 totalOrder predicate.
- The mpfr_out_str function now accepts bases from -2 to -36, in order to
  follow mpfr_get_str and GMP's mpf_out_str functions (these cases gave an
  assertion failure, as with other invalid bases).
- Shared caches: cleanup; really detect lock failures (abort in this case).
- The behavior of the formatted output functions (mpfr_printf, etc.) with
  an empty precision field has improved: trailing zeros are kept in a way
  similar to the formatted output functions from C.
- Improved mpfr_add and mpfr_sub when all operands have a precision equal to
  twice the number of bits per word, e.g., 128 bits on a 64-bit platform.
- Optimized the tuning parameters for various architectures.
- Improved test coverage to 98.6% of code for x86_64.
- Bug fixes.
- MPFR manual: corrected/completed the mpfr_get_str description in order to
  follow the historical behavior and GMP's mpf_get_str function.
- New: optional "make check-exported-symbols", mainly for the MPFR developers
  and binary distributions, to check that MPFR does not define symbols with a
  GMP reserved prefix (experimental).
- Mini-gmp support: replaced --enable-mini-gmp configure option by
  --with-mini-gmp (still experimental, read doc/mini-gmp).

Please send success and failure reports with "./config.guess" output
to <mpfr at>.

If no problems are found, GNU MPFR 4.1.0 should be released
around 2020-06-30.


Vincent Lefèvre <vincent at> - Web: <>
100% accessible validated (X)HTML - Blog: <>
Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)

More information about the gmp-discuss mailing list