GNU MPFR version 4.2.0 (released on 6 January 2023)
The fondue savoyarde release.
MPFR 4.2.0 requires GMP 5.0 or higher.
Download
The MPFR 4.2.0 source can be downloaded in the following archive formats:
- mpfr-4.2.0.tar.xz (tar/xz, 1.5 MB, signature),
- mpfr-4.2.0.tar.bz2 (tar/bzip2, 1.7 MB, signature),
- mpfr-4.2.0.tar.gz (tar/gzip, 2.2 MB, signature),
- mpfr-4.2.0.zip (zip, 2.6 MB, signature).
Each tarball is signed by Vincent Lefèvre. This can be verified using the DSA key ID 5831D11A0D4DB02A; this key can be retrieved with:
gpg --recv-keys 5831D11A0D4DB02A
or by downloading it from https://www.vinc17.net/pgp.html. The key fingerprint is:
A534 BE3F 83E2 41D9 1828 0AEB 5831 D11A 0D4D B02A
The signatures can be verified with:
gpg --verify file.asc
You should check that the key fingerprint matches.
MPFR is also available via third-party packages and ports.
Documentation
Bugs
See the BUGS file.
Changes from versions 4.1.* to version 4.2.0
- Binary compatible with MPFR 4.0.* and 4.1.*, 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 functions
mpfr_cosu
, mpfr_sinu
, mpfr_tanu
, mpfr_acosu
, mpfr_asinu
, mpfr_atanu
and mpfr_atan2u
.
- New functions
mpfr_cospi
, mpfr_sinpi
, mpfr_tanpi
, mpfr_acospi
, mpfr_asinpi
, mpfr_atanpi
and mpfr_atan2pi
.
- New functions
mpfr_log2p1
, mpfr_log10p1
, mpfr_exp2m1
, mpfr_exp10m1
and mpfr_compound_si
.
- New functions
mpfr_fmod_ui
, mpfr_powr
, mpfr_pown
, mpfr_pow_uj
, mpfr_pow_sj
and mpfr_rootn_si
(mpfr_pown
is actually a macro defined as an alias for mpfr_pow_sj
).
- Bug fixes.
- In particular, for the formatted output functions (
mpfr_printf
, etc.), the case where the precision consists only of a period has been fixed to be like .0 as specified in the ISO C standard, and the manual has been corrected and clarified.
- The macros of the custom interface have also been fixed: they now behave like functions (except a minor limitation for
mpfr_custom_init_set
).
MPFR 4.2.0 has been successfully compiled and checked on the following platforms:
- aarch64-unknown-linux-gnu (gcc 8.5.0 and 12.2.0, clang 15.0.6 on Termux/Android, tcc mob branch);
- amd64-unknown-openbsd7.0 (OpenBSD 7.0, gcc 8.4.0);
- armv7l-unknown-linux-gnueabihf (gcc 12.1.0 bootstrap);
- i586-unknown-freebsd13.1 (clang 13.0.0);
- i686-w64-mingw32 (Wine, MinGW32 gcc 12 20220819);
- loongarch64-unknown-linux-gnu (gcc 12.2.1);
- mips-unknown-linux-gnu (o32 and n32 ABI, gcc 8.3.0);
- mips64-unknown-openbsd7.2 (OpenBSD 7.2, clang 13.0.0);
- powerpc-ibm-aix7.2.4.0 (IBM POWER8, gcc7.2.0);
- powerpc64-unknown-linux-gnu (IBM POWER7, gcc 4.8.5);
- powerpc64le-unknown-linux-gnu (IBM POWER8, gcc 4.8.5; IBM POWER9, gcc 4.8.5 and 8.3.1, IBM XL C/C++ 16.1.1.3);
- riscv64-unknown-freebsd14.0 (clang 14.0.5);
- sparc-sun-solaris2.8 (gcc 4.5.1);
- sparc-sun-solaris2.9 (gcc 4.6.4);
- sparc-sun-solaris2.10 (gcc 5.5.0);
- sparc-sun-solaris2.11 (Studio 12.6 Sun C 5.15);
- sparc64-unknown-linux-gnu (gcc 12.2.0);
- x86_64-pc-linux-gnu (gcc 4.8.5, 4.9.4, 5.5.0, 6.5.0, 8.4.0, 9.5.0, 10.4.0 and 12.2.0, g++ 4.9.4 and 12.2.0, clang 3.6.2, 3.7.1, 6.0.1, 7.0.1, 8.0.1, 9.0.1, 10.0.1, 11.1.0, 12.0.1, 13.0.1, 14.0.6 and 15.0.6, Intel oneAPI icx 2021.3.0, and tcc 0.9.27);
- x86_64-unknown-freebsd13.0 (FreeBSD 13.0-RELEASE-p3, clang 11.0.1);
- x86_64-unknown-netbsd9.2 (NetBSD 9.2, gcc 7.5.0);
- x86_64-unknown-netbsd9.3 (NetBSD 9.3, gcc 12.2.0).
Back to the MPFR page.