* Tue Aug 22 2023 rguenther@suse.com
- Update to mpfr 4.2.1
* Includes all fixes from mpfr-4.2.0-cummulative.patch which is
subsequently removed.
* Improved MPFR manual.
* Configure tests: replaced the test of the link with GMP, in order
to avoid the use of a function without a prototype (Autoconf issue), as
this is obsolescent in ISO C. The new test should be more robust.
* Wed Jun 07 2023 rguenther@suse.com
- Update mpfr-4.2.0-cummulative.patch, adds patches fixing the following bugs
* the mpfr_reldiff function, which computes |b-c|/b, is buggy on special
values, e.g. on the following (b,c) values: (+Inf,+Inf) gives ±0
instead of NaN (like NaN/Inf); (+0,+0) gives 1 instead of NaN (like 0/0);
(+0,1) gives 1 instead of Inf (like 1/0). Moreover, the sign of 0 for
(+Inf,+Inf) or (-Inf,-Inf) is not set, i.e. it is just the sign of the
destination before the call; as a consequence, results are not even
consistent.
* the reuse tests are incomplete: the sign of a result zero is not checked,
so that it can miss bugs (one of the mpfr_reldiff bugs mentioned above,
in particular).
* the general code for the power function (mpfr_pow_general internal
function) has two bugs in particular cases: the first one is an incorrect
computation of the error bound when there has been an intermediate
underflow or overflow (in such a case, the computation is performed
again with a rescaling, thus with an additional error term, but there is
a bug in the computation of this term), so that the result may be
rounded incorrectly (in particular, a spurious overflow is possible);
the second one occurs in a corner case (destination precision 1,
rounding to nearest, and where the rounded result assuming an unbounded
exponent range would be 2emin-2 and the exact result is larger than this
value), with the only consequence being a missing underflow exception
(the underflow flag is not set).
* the mpfr_compound_si function can take a huge amount of memory and time
in some cases (when the argument x is a large even integer and xn is
represented exactly in the target precision) and does not correctly
detect overflows and underflows
* MPFR can crash when a formatted output function is called with
%.2147483648Rg in the format string.
* Tue Apr 18 2023 rguenther@suse.com
- Add mpfr-4.2.0-cummulative.patch, cummulative patches for
mpfr 4.2.0:
* A test of the thousands separator in tsprintf.c is based on the
output from the GNU C Library up to 2.36, which is incorrect.
* The mpfr_ui_pow_ui function has infinite loop in case of overflow.
* The tfprintf and tprintf tests may fail in locales where decimal_point
has several bytes, such as ps_AF.
* In particular cases that are very hard to round, mpfr_rec_sqrt may yield
a stack overflow due to many small allocations in the stack, based on
alloca().
- Remove tests-tsprintf.patch that's included in the above set.
* Tue Jan 31 2023 schwab@suse.de
- tests-tsprintf.patch: Avoid testsuite failure with glibc >= 2.37
* Mon Jan 09 2023 rguenther@suse.com
- Update to mpfr 4.2.0
* 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).
- Remove mpfr-4.1.1-patch01.patch which is included in the new release.
* Thu Nov 24 2022 rguenther@suse.com
- Add mpfr-4.1.1-patch01.patch to fix bug with code using
the mpfr_custom_get_kind macro.
* Sat Nov 19 2022 andreas.stieger@gmx.de
- package license files correctly
* Fri Nov 18 2022 rguenther@suse.com
- Update to mpfr 4.1.1
* Bug fixes (see <https://www.mpfr.org/mpfr-4.1.0/#fixed> and/or the
ChangeLog file), in particular for macros implementing functions.
* Improved manual formatting.
* Accumulated bugfixes
- Remove mpfr-4.1.0-p7.diff, all patches are contained in the
new version.
- Update mpfr.keyring
* Fri Feb 12 2021 rguenther@suse.com
- Add cummulative patch mpfr-4.1.0-p7.diff fixing various bugs.
* Mon Jul 13 2020 rguenther@suse.com
- Update to mpfr 4.1.0
* 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.
- Remove mpfr-4.0.2-p6.patch and floating-point-format-no-lto.patch