texlive[65043] Build/source/libs: mpfr 4.1.1

commits+kakuto at tug.org commits+kakuto at tug.org
Thu Nov 17 22:05:33 CET 2022


Revision: 65043
          http://tug.org/svn/texlive?view=revision&revision=65043
Author:   kakuto
Date:     2022-11-17 22:05:32 +0100 (Thu, 17 Nov 2022)
Log Message:
-----------
mpfr 4.1.1

Modified Paths:
--------------
    trunk/Build/source/libs/README
    trunk/Build/source/libs/mpfr/ChangeLog
    trunk/Build/source/libs/mpfr/TLpatches/ChangeLog
    trunk/Build/source/libs/mpfr/TLpatches/TL-Changes
    trunk/Build/source/libs/mpfr/TLpatches/patch-01-TL
    trunk/Build/source/libs/mpfr/configure
    trunk/Build/source/libs/mpfr/mpfr-src/BUGS
    trunk/Build/source/libs/mpfr/mpfr-src/ChangeLog
    trunk/Build/source/libs/mpfr/mpfr-src/INSTALL
    trunk/Build/source/libs/mpfr/mpfr-src/Makefile.am
    trunk/Build/source/libs/mpfr/mpfr-src/NEWS
    trunk/Build/source/libs/mpfr/mpfr-src/README
    trunk/Build/source/libs/mpfr/mpfr-src/TODO
    trunk/Build/source/libs/mpfr/mpfr-src/VERSION
    trunk/Build/source/libs/mpfr/mpfr-src/acinclude.m4
    trunk/Build/source/libs/mpfr/mpfr-src/configure.ac
    trunk/Build/source/libs/mpfr/mpfr-src/src/Makefile.am
    trunk/Build/source/libs/mpfr/mpfr-src/src/abort_prec_max.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/acos.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/acosh.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/add.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/add1.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/add1sp.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/add1sp1_extracted.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/add_d.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/add_ui.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/agm.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/ai.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/amd/mparam.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/arm/mparam.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/asin.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/asinh.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/atan.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/atan2.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/atanh.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/bernoulli.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/beta.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/buildopt.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/cache.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/cbrt.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/check.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/clear.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/clears.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/cmp.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/cmp2.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/cmp_d.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/cmp_ld.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/cmp_si.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/cmp_ui.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/cmpabs.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/cmpabs_ui.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/comparisons.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/const_catalan.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/const_euler.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/const_log2.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/const_pi.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/constant.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/copysign.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/cos.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/cosh.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/cot.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/coth.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/csc.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/csch.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/d_div.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/d_sub.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/digamma.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/dim.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/div.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/div_2exp.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/div_2si.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/div_2ui.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/div_d.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/div_ui.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/dot.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/dump.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/eint.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/eq.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/erandom.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/erf.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/erfc.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/exceptions.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/exp.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/exp10.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/exp2.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/exp3.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/exp_2.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/expm1.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/extract.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/factorial.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/fits_intmax.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/fits_s.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/fits_sint.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/fits_slong.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/fits_sshort.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/fits_u.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/fits_uint.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/fits_uintmax.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/fits_ulong.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/fits_ushort.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/fma.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/fmma.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/fms.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/fpif.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/frac.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/free_cache.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/frexp.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/gamma.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/gamma_inc.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/gammaonethird.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/gen_inverse.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/generic/coverage/mparam.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/generic/mparam.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/get_d.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/get_d128.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/get_d64.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/get_exp.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/get_f.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/get_float128.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/get_flt.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/get_ld.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/get_q.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/get_si.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/get_sj.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/get_str.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/get_ui.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/get_uj.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/get_z.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/get_z_exp.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/gmp_op.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/grandom.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/hypot.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/ieee_floats.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/init.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/init2.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/inits.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/inits2.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/inp_str.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/int_ceil_log2.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/invert_limb.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/invsqrt_limb.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/isinf.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/isinteger.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/isnan.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/isnum.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/isqrt.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/isregular.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/iszero.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/jn.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/jyn_asympt.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/li2.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/lngamma.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/log.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/log10.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/log1p.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/log2.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/log_ui.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/logging.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/min_prec.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/minmax.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/mips/mparam.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/modf.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/mp_clz_tab.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/mparam_h.in
    trunk/Build/source/libs/mpfr/mpfr-src/src/mpf2mpfr.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/mpfr-cvers.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/mpfr-gmp.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/mpfr-gmp.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/mpfr-impl.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/mpfr-intmax.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/mpfr-longlong.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/mpfr-mini-gmp.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/mpfr-mini-gmp.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/mpfr-sassert.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/mpfr-thread.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/mpfr.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/mpn_exp.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/mul.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/mul_1_extracted.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/mul_2exp.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/mul_2si.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/mul_2ui.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/mul_d.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/mul_ui.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/mulders.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/nbits_ulong.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/neg.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/next.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/nrandom.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/odd_p.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/out_str.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/pool.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/pow.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/pow_si.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/pow_ui.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/pow_z.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/powerof2.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/powerpc64/mparam.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/print_raw.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/print_rnd_mode.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/printf.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/random_deviate.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/random_deviate.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/rec_sqrt.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/reldiff.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/rem1.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/rint.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/rndna.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/root.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/round_near_x.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/round_p.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/round_prec.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/round_raw_generic.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/scale2.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/sec.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/sech.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_d.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_d128.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_d64.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_dfl_prec.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_exp.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_f.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_float128.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_flt.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_inf.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_ld.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_nan.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_prc_raw.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_prec.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_q.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_rnd.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_si.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_si_2exp.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_sj.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_str.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_str_raw.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_ui.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_ui_2exp.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_uj.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_z.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_z_exp.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/set_zero.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/setmax.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/setmin.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/setsign.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/sgn.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/si_op.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/signbit.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/sin.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/sin_cos.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/sinh.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/sinh_cosh.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/sparc64/mparam.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/sqr.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/sqrt.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/sqrt_ui.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/stack_interface.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/strtofr.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/sub.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/sub1.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/sub1sp.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/sub1sp1_extracted.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/sub_d.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/sub_ui.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/subnormal.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/sum.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/swap.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/tan.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/tanh.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/total_order.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/ubf.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/uceil_exp2.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/uceil_log2.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/ufloor_log2.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/ui_div.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/ui_pow.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/ui_pow_ui.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/ui_sub.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/urandom.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/urandomb.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/vasprintf.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/version.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/volatile.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/x86/mparam.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/x86_64/core2/mparam.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/x86_64/mparam.h
    trunk/Build/source/libs/mpfr/mpfr-src/src/yn.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/zeta.c
    trunk/Build/source/libs/mpfr/mpfr-src/src/zeta_ui.c
    trunk/Build/source/libs/mpfr/version.ac

Added Paths:
-----------
    trunk/Build/source/libs/mpfr/mpfr-src/version-ext.sh

Modified: trunk/Build/source/libs/README
===================================================================
--- trunk/Build/source/libs/README	2022-11-17 21:05:17 UTC (rev 65042)
+++ trunk/Build/source/libs/README	2022-11-17 21:05:32 UTC (rev 65043)
@@ -46,7 +46,7 @@
 luajit 2.1.0-beta3 - checked 20jun17
   http://luajit.org/download/LuaJIT-2.1.0-beta3.tar.gz
 
-mpfr 4.1.0 - checked 12jul20
+mpfr 4.1.1 - checked 18nov22
   http://ftp.gnu.org/gnu/mpfr/
 
 pixman 0.42.2 - checked 03nov22

Modified: trunk/Build/source/libs/mpfr/ChangeLog
===================================================================
--- trunk/Build/source/libs/mpfr/ChangeLog	2022-11-17 21:05:17 UTC (rev 65042)
+++ trunk/Build/source/libs/mpfr/ChangeLog	2022-11-17 21:05:32 UTC (rev 65043)
@@ -1,3 +1,8 @@
+2022-11-18  Akira Kakuto  <kakuto at jcom.zaq.ne.jp>
+
+	Import mpfr-4.1.1.
+	* version.ac: Adjust.
+
 2020-07-12  Akira Kakuto  <kakuto at w32tex.org>
 
 	Import mpfr-4.1.0.

Modified: trunk/Build/source/libs/mpfr/TLpatches/ChangeLog
===================================================================
--- trunk/Build/source/libs/mpfr/TLpatches/ChangeLog	2022-11-17 21:05:17 UTC (rev 65042)
+++ trunk/Build/source/libs/mpfr/TLpatches/ChangeLog	2022-11-17 21:05:32 UTC (rev 65043)
@@ -1,3 +1,9 @@
+2022-11-18  Akira Kakuto  <kakuto at jcom.zaq.ne.jp>
+
+	Imported mpfr-4.1.1 source tree from:
+	  http://ftp.gnu.org/gnu/mpfr/
+	* patch-01-TL: Adapted.
+
 2020-07-12  Akira Kakuto  <kakuto at w32tex.org>
 
 	Imported mpfr-4.1.0 source tree from:

Modified: trunk/Build/source/libs/mpfr/TLpatches/TL-Changes
===================================================================
--- trunk/Build/source/libs/mpfr/TLpatches/TL-Changes	2022-11-17 21:05:17 UTC (rev 65042)
+++ trunk/Build/source/libs/mpfr/TLpatches/TL-Changes	2022-11-17 21:05:32 UTC (rev 65043)
@@ -1,4 +1,4 @@
-Changes applied to the mpfr-4.1.0/ tree as obtained from:
+Changes applied to the mpfr-4.1.1/ tree as obtained from:
 	http://ftp.gnu.org/gnu/mpfr/
 
 Removed:

Modified: trunk/Build/source/libs/mpfr/TLpatches/patch-01-TL
===================================================================
--- trunk/Build/source/libs/mpfr/TLpatches/patch-01-TL	2022-11-17 21:05:17 UTC (rev 65042)
+++ trunk/Build/source/libs/mpfr/TLpatches/patch-01-TL	2022-11-17 21:05:32 UTC (rev 65043)
@@ -1,6 +1,6 @@
-diff -ur mpfr-4.1.0/src/mparam_h.in mpfr-src/src/mparam_h.in
---- mpfr-4.1.0/src/mparam_h.in	Thu Jan 09 03:11:13 2020
-+++ mpfr-src/src/mparam_h.in	Sun Jul 12 16:40:20 2020
+diff -ur mpfr-4.1.1/src/mparam_h.in mpfr-src/src/mparam_h.in
+--- mpfr-4.1.1/src/mparam_h.in	Fri Jan 07 00:27:38 2022
++++ mpfr-src/src/mparam_h.in	Fri Nov 18 05:45:03 2022
 @@ -31,6 +31,8 @@
  /* Note: the different macros used here are those defined by gcc,
     for example with gcc -mtune=native -dM -E -xc /dev/null */

Modified: trunk/Build/source/libs/mpfr/configure
===================================================================
--- trunk/Build/source/libs/mpfr/configure	2022-11-17 21:05:17 UTC (rev 65042)
+++ trunk/Build/source/libs/mpfr/configure	2022-11-17 21:05:32 UTC (rev 65043)
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.71 for mpfr (TeX Live) 4.1.0.
+# Generated by GNU Autoconf 2.71 for mpfr (TeX Live) 4.1.1.
 #
 # Report bugs to <tex-k at tug.org>.
 #
@@ -610,8 +610,8 @@
 # Identity of this package.
 PACKAGE_NAME='mpfr (TeX Live)'
 PACKAGE_TARNAME='mpfr--tex-live-'
-PACKAGE_VERSION='4.1.0'
-PACKAGE_STRING='mpfr (TeX Live) 4.1.0'
+PACKAGE_VERSION='4.1.1'
+PACKAGE_STRING='mpfr (TeX Live) 4.1.1'
 PACKAGE_BUGREPORT='tex-k at tug.org'
 PACKAGE_URL=''
 
@@ -1329,7 +1329,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures mpfr (TeX Live) 4.1.0 to adapt to many kinds of systems.
+\`configure' configures mpfr (TeX Live) 4.1.1 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1400,7 +1400,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of mpfr (TeX Live) 4.1.0:";;
+     short | recursive ) echo "Configuration of mpfr (TeX Live) 4.1.1:";;
    esac
   cat <<\_ACEOF
 
@@ -1504,7 +1504,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-mpfr (TeX Live) configure 4.1.0
+mpfr (TeX Live) configure 4.1.1
 generated by GNU Autoconf 2.71
 
 Copyright (C) 2021 Free Software Foundation, Inc.
@@ -1874,7 +1874,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by mpfr (TeX Live) $as_me 4.1.0, which was
+It was created by mpfr (TeX Live) $as_me 4.1.1, which was
 generated by GNU Autoconf 2.71.  Invocation command line was
 
   $ $0$ac_configure_args_raw
@@ -4418,7 +4418,7 @@
 
 # Define the identity of the package.
  PACKAGE='mpfr--tex-live-'
- VERSION='4.1.0'
+ VERSION='4.1.1'
 
 
 printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
@@ -8072,7 +8072,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by mpfr (TeX Live) $as_me 4.1.0, which was
+This file was extended by mpfr (TeX Live) $as_me 4.1.1, which was
 generated by GNU Autoconf 2.71.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -8144,7 +8144,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config='$ac_cs_config_escaped'
 ac_cs_version="\\
-mpfr (TeX Live) config.status 4.1.0
+mpfr (TeX Live) config.status 4.1.1
 configured by $0, generated by GNU Autoconf 2.71,
   with options \\"\$ac_cs_config\\"
 

Modified: trunk/Build/source/libs/mpfr/mpfr-src/BUGS
===================================================================
--- trunk/Build/source/libs/mpfr/mpfr-src/BUGS	2022-11-17 21:05:17 UTC (rev 65042)
+++ trunk/Build/source/libs/mpfr/mpfr-src/BUGS	2022-11-17 21:05:32 UTC (rev 65043)
@@ -1,4 +1,4 @@
-Copyright 1999, 2001-2020 Free Software Foundation, Inc.
+Copyright 1999, 2001-2022 Free Software Foundation, Inc.
 Contributed by the AriC and Caramba projects, INRIA.
 
 This file is part of the GNU MPFR Library.
@@ -56,7 +56,7 @@
 
 * Possible infinite loop in some functions for particular cases: when
   the exact result is an exactly representable number or the middle of
-  consecutive two such numbers. However for non-algebraic functions, it is
+  consecutive two such numbers. However, for non-algebraic functions, it is
   believed that no such case exists, except the well-known cases like cos(0)=1,
   exp(0)=1, and so on, and the x^y function when y is an integer or y=1/2^k.
 

Modified: trunk/Build/source/libs/mpfr/mpfr-src/ChangeLog
===================================================================
--- trunk/Build/source/libs/mpfr/mpfr-src/ChangeLog	2022-11-17 21:05:17 UTC (rev 65042)
+++ trunk/Build/source/libs/mpfr/mpfr-src/ChangeLog	2022-11-17 21:05:32 UTC (rev 65043)
@@ -1,105496 +1,40559 @@
-------------------------------------------------------------------------
-r14065 | vlefevre | 2020-07-10 11:52:33 +0000 (Fri, 10 Jul 2020) | 1 line
-Changed paths:
-   M /branches/4.1/VERSION
-   M /branches/4.1/configure.ac
-   M /branches/4.1/doc/mpfr.texi
-   M /branches/4.1/src/mpfr.h
-   M /branches/4.1/src/version.c
+2022-11-17  Vincent Lefevre  <vincent at vinc17.net>
 
-Updated version to 4.1.0.
-------------------------------------------------------------------------
-r14064 | vlefevre | 2020-07-10 11:50:59 +0000 (Fri, 10 Jul 2020) | 1 line
-Changed paths:
-   M /branches/4.1/doc/mpfr.texi
+	Updated version to 4.1.1.
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r14063 | vlefevre | 2020-07-10 10:33:32 +0000 (Fri, 10 Jul 2020) | 6 lines
-Changed paths:
-   M /branches/4.1
-   M /branches/4.1/doc/README.dev
-   M /branches/4.1/src/jyn_asympt.c
-   M /branches/4.1/tests/tjn.c
+2022-11-17  Vincent Lefevre  <vincent at vinc17.net>
 
-[src/jyn_asympt.c] Partly solved the slowness of jn(733333,733333).
-[tests/tjn.c] Added tests of jn(73333,73333) and jn(733333,733333),
-  enabled only with MPFR_CHECK_EXPENSIVE.
-[doc/README.dev] In the MPFR_CHECK_EXPENSIVE description, say that
-  --enable-assert=full should not be used (too expensive, not needed).
-(merged changesets r14053-14062 from the trunk)
-------------------------------------------------------------------------
-r14050 | vlefevre | 2020-07-01 21:39:57 +0000 (Wed, 01 Jul 2020) | 1 line
-Changed paths:
-   M /branches/4.1/ChangeLog
+	[NEWS] Update for 4.1.1.
 
-ChangeLog update with "LC_ALL=en_US.UTF8 TZ=UTC0 svn log -rHEAD:0 -v".
-------------------------------------------------------------------------
-r14049 | vlefevre | 2020-07-01 21:37:36 +0000 (Wed, 01 Jul 2020) | 1 line
-Changed paths:
-   M /branches/4.1/VERSION
-   M /branches/4.1/configure.ac
-   M /branches/4.1/doc/mpfr.texi
-   M /branches/4.1/src/mpfr.h
-   M /branches/4.1/src/version.c
+	Removed "by using a recent texinfo.tex file" because GNU Texinfo 7.0
+	has been released in the mean time (we're actually using a slightly
+	more recent version, but the current version of the MPFR manual has
+	workarounds that do not need the latest fixes in texinfo.tex).
 
-Updated version to 4.1.0-rc2.
-------------------------------------------------------------------------
-r14048 | vlefevre | 2020-07-01 13:59:32 +0000 (Wed, 01 Jul 2020) | 3 lines
-Changed paths:
-   M /branches/4.1
-   M /branches/4.1/NEWS
+2022-11-17  Vincent Lefevre  <vincent at vinc17.net>
 
-[NEWS] Added an item saying that TLS can safely be (re-)enabled
-on Sparc.
-(merged changeset r14047 from the trunk)
-------------------------------------------------------------------------
-r14046 | vlefevre | 2020-06-29 13:57:32 +0000 (Mon, 29 Jun 2020) | 7 lines
-Changed paths:
-   M /branches/4.1
-   M /branches/4.1/tests/mpfr-test.h
+	[doc/mpfr.texi] Changed a @need command due to a bug in @need.
 
-[tests/mpfr-test.h] Avoid a GCC bug on Sparc, at least when using TLS.
-The MPFR library itself is not affected, only a particular test. Normal
-code using the MPFR library should not be affected either, as the bug
-occurs when accessing __gmpfr_flags directly (and the public mpfr.h
-header file does not provide any macro that accesses an internal
-variable directly). So a workaround for the tests is the best solution.
-(merged changeset r14045 from the trunk)
-------------------------------------------------------------------------
-r14043 | vlefevre | 2020-06-18 17:37:41 +0000 (Thu, 18 Jun 2020) | 1 line
-Changed paths:
-   M /branches/4.1/VERSION
-   M /branches/4.1/configure.ac
-   M /branches/4.1/doc/mpfr.texi
-   M /branches/4.1/src/mpfr.h
-   M /branches/4.1/src/version.c
+	A page break was introduced for "@need 800" while there was the
+	space for 12 lines of text + 3 paragraph skips, as seen after the
+	change. That's much more than the 8/10 in needed by "@need 800".
+	So the page break was incorrect!
 
-Updated version to 4.1.0-dev (due to changes since 4.1.0-rc1).
-------------------------------------------------------------------------
-r14042 | vlefevre | 2020-06-18 17:17:18 +0000 (Thu, 18 Jun 2020) | 54 lines
-Changed paths:
-   M /branches/4.1
-   M /branches/4.1/doc/mpfr.texi
-   M /branches/4.1/src/digamma.c
-   M /branches/4.1/src/get_str.c
-   M /branches/4.1/src/mpfr-longlong.h
-   M /branches/4.1/tests/mpfr-test.h
-   M /branches/4.1/tests/tabort_defalloc1.c
-   M /branches/4.1/tests/tabort_defalloc2.c
-   M /branches/4.1/tests/tcmp_ui.c
-   M /branches/4.1/tests/tdigamma.c
-   M /branches/4.1/tests/tests.c
-   M /branches/4.1/tests/tset_ld.c
+2022-11-17  Vincent Lefevre  <vincent at vinc17.net>
 
-Merged r14021-14036 from the trunk:
+	[doc/mpfr.texi] Added @need commands to prevent page breaks.
 
-r14021:
-[tests] Skip tabort_defalloc1 and tabort_defalloc2 under Valgrind, as
-Valgrind complains due to the large allocation size.
-  * mpfr-test.h, tests.c: added tests_run_within_valgrind() function to
-    guess whether the test runs within Valgrind.
-  * tabort_defalloc1.c, tabort_defalloc2.c: skip the test (exit code 77)
-    if this function returns true.
+2022-11-17  Vincent Lefevre  <vincent at vinc17.net>
 
-r14022-14023:
-[tests/tset_ld.c] In bug_20160907 (tests on subnormals, specific to
-x86 extended precision):
-  * Replaced an assertion by a test with detailed output.
-  * In case of incorrect result, detect whether Valgrind is used and
-    one gets the result obtained with Valgrind due to
-      https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=890215
-      https://bugs.kde.org/show_bug.cgi?id=421262
-    (long double behaves as double); in this case, output a message
-    without an error since Valgrind is the only cause of the
-    miscalculation.
-  * Corrected a value in a test, which did not match the comment.
+	[doc/mpfr.texi] Hack to improve TeX output (PDF).
 
-r14024-14027:
-[src/digamma.c]
-  * Replaced some MPFR_EXP / mpfr_get_exp by MPFR_GET_EXP to check that
-    the MPFR number has an exponent (i.e. it is not a special value).
-  * Added an integer overflow check on a precision.
-  * Fixed a bug: an exponent was read while the value could be zero.
+	Define a @fptt macro to fix the TeX output (PDF) issue mentioned
+	in commit 1877cf9aef96c2280aab60f67e5e7302676d199a (if the style
+	of HTML output is fixed to be more like TeX output, this code will
+	need an update).
 
-r14028:
-[tests/tdigamma.c] Increase the number of tests.
+2022-11-17  Vincent Lefevre  <vincent at vinc17.net>
 
-r14029,14031:
-[doc/mpfr.texi] Specify the range of b for mpfr_get_str_ndigits.
+	[doc/mpfr.texi] Added a note about a TeX output (PDF) issue.
 
-r14030:
-[src/get_str.c] Since the mpfr_get_str_ndigits function is in the
-public API, use MPFR_ASSERTN instead of MPFR_ASSERTD on the condition
-on the argument b in order to get an assertion failure (by default)
-if this condition is not satisfied.
+	This affects "[]", which appears in the mpfr_sum and mpfr_dot
+	function prototypes.
 
-r14032,14035-14036:
-[src/mpfr-longlong.h] Applied patch on
-  https://gmplib.org/list-archives/gmp-bugs/2020-June/004807.html
-to fix add_ssaaaa and sub_ddmmss on arm / aarch64, in order to resolve
-  https://sympa.inria.fr/sympa/arc/mpfr/2020-06/msg00017.html
-  https://sympa.inria.fr/sympa/arc/mpfr/2020-06/msg00059.html
+2022-11-16  Vincent Lefevre  <vincent at vinc17.net>
 
-r14034:
-[tests/tcmp_ui.c] Added a comment about a failing test with tcc if
-one adds tcc support for macros using __builtin_constant_p in mpfr.h
-by testing __TINYC__.
-Bug report against tcc: https://savannah.nongnu.org/bugs/?58606
-------------------------------------------------------------------------
-r14019 | vlefevre | 2020-06-13 13:22:33 +0000 (Sat, 13 Jun 2020) | 5 lines
-Changed paths:
-   M /branches/4.1
-   M /branches/4.1/configure.ac
+	Consistency: s/non(zero|positive|negative)/non-$1/
 
-[configure.ac] No longer add -Wc++-compat to CFLAGS when the compiler
-is GCC not in C++ mode (reverting the change done in r13406) since this
-option is not available before GCC 4.1:
-  https://sympa.inria.fr/sympa/arc/mpfr/2020-06/msg00008.html
-(merged changeset r14018 from the trunk)
-------------------------------------------------------------------------
-r14016 | vlefevre | 2020-06-13 09:32:51 +0000 (Sat, 13 Jun 2020) | 7 lines
-Changed paths:
-   M /branches/4.1
-   M /branches/4.1/doc/mpfr.texi
-   M /branches/4.1/tests/tfpif.c
+	Changed non(zero|positive|negative) to non-zero, etc. for consistency
+	(target files: src & tests directory, doc/README.dev, doc/mpfr.texi).
+	Did it this way because the former was in minority (21 vs 165) and
+	the IEEE 754-2019 standard uses a hyphen.
 
-Merged the latest changes from the trunk:
+2022-11-16  Vincent Lefevre  <vincent at vinc17.net>
 
-r14012:
-[tests/tfpif.c] Updated comment about the bug detected on AIX.
+	[doc/mpfr.texi] Final typographic and style corrections.
 
-r14015:
-[doc/mpfr.texi] ACM TOMS article: use the preferred DOI URL.
-------------------------------------------------------------------------
-r14011 | vlefevre | 2020-06-13 01:05:59 +0000 (Sat, 13 Jun 2020) | 8 lines
-Changed paths:
-   M /branches/4.1
-   M /branches/4.1/NEWS
-   M /branches/4.1/tools/announce-text
+	Actually a bit more than that, since this affected the textual part
+	of the PDF file (used for searching and copy-paste): the underscore
+	character needs to be in something like @code or @samp to be present
+	in this textual part.
 
-Merged the latest changes from the trunk:
+2022-11-16  Vincent Lefevre  <vincent at vinc17.net>
 
-r14008,14010:
-[tools/announce-text] For release candidates, automatically adapt the
-flow of the text.
+	Updated version to 4.1.1-rc1 again with the new tools/update-version.
 
-r14009:
-[NEWS] Updated mpfr.org URLs (http → https).
-------------------------------------------------------------------------
-r14006 | vlefevre | 2020-06-12 17:55:05 +0000 (Fri, 12 Jun 2020) | 17 lines
-Changed paths:
-   M /branches/4.1
-   M /branches/4.1/README
-   M /branches/4.1/tests/tests.c
-   M /branches/4.1/tests/tfpif.c
+	All the expected replacements have now *really* been done thanks to
+	commit 9f1d88a7ab750a9f33ff5c7f6b27bc2e941ca4b6.
 
-Merged the latest changes from the trunk:
+2022-11-16  Vincent Lefevre  <vincent at vinc17.net>
 
-r14003:
-[tests/tfpif.c] Fixed a bug (in the test) detected on AIX[*], where
-an fclose failed due to a previous read failure. At the same time,
-check that a read failure no longer occurs. Note: the read failure
-made mpfr_fpif_import fail, but this is a test where it is expected
-to fail, i.e. we now check that it fails for a good reason.
-[*] gcc119.fsffrance.org on the GCC Compile farm.
+	[tools/update-version] Fixed replacements in "doc/mpfr.texi".
 
-r14004:
-[tests/tests.c] Removed a useless "#include <errno.h>" (added in r5252,
-useless since r5253).
+	The change done in commits 4885b57add174f390eff29abe14d12fb5ebd6a61
+	and 7eda345244f503359d14cd5bae1ed42865d39ee8 was incorrect as there
+	are 2 identical replacements to do in "doc/mpfr.texi", not just one.
+	The previous code changed lines separately. But for the check of
+	failing replacements, a global change on the full file is needed;
+	thus the 2 identical replacements were expected to be done at the
+	same time, so that the "g" modifier is needed on the regexp.
 
-r14005:
-[README] Added URL of the official GNU MPFR website and a note about the
-future migration, since InriaForge will shut down in December 2020.
-------------------------------------------------------------------------
-r14002 | vlefevre | 2020-06-12 12:17:11 +0000 (Fri, 12 Jun 2020) | 1 line
-Changed paths:
-   M /branches/4.1/ChangeLog
+2022-11-15  Vincent Lefevre  <vincent at vinc17.net>
 
-ChangeLog update with "LC_ALL=en_US.UTF8 TZ=UTC0 svn log -rHEAD:0 -v".
-------------------------------------------------------------------------
-r14001 | vlefevre | 2020-06-12 12:10:28 +0000 (Fri, 12 Jun 2020) | 1 line
-Changed paths:
-   M /branches/4.1/VERSION
-   M /branches/4.1/configure.ac
-   M /branches/4.1/doc/mpfr.texi
-   M /branches/4.1/src/mpfr.h
-   M /branches/4.1/src/version.c
+	Updated doc/texinfo.tex to 2022-11-13.08
 
-Updated version to 4.1.0-rc1.
-------------------------------------------------------------------------
-r14000 | vlefevre | 2020-06-12 12:09:52 +0000 (Fri, 12 Jun 2020) | 2 lines
-Changed paths:
-   M /branches/4.1
-   M /branches/4.1/tools/update-version
+2022-11-11  Vincent Lefevre  <vincent at vinc17.net>
 
-[tools/update-version] Improved a message.
-(merged changeset r13999 from the trunk)
-------------------------------------------------------------------------
-r13998 | vlefevre | 2020-06-12 12:02:30 +0000 (Fri, 12 Jun 2020) | 3 lines
-Changed paths:
-   M /branches/4.1
-   M /branches/4.1/src/mpfr-longlong.h
+	[doc/README.dev] Updated "To make a release".
 
-[src/mpfr-longlong.h] Corrected a comment from GMP's longlong.h, which
-makes codespell complain in particular.
-(merged changeset r13997 from the trunk)
-------------------------------------------------------------------------
-r13996 | vlefevre | 2020-06-12 11:56:18 +0000 (Fri, 12 Jun 2020) | 4 lines
-Changed paths:
-   M /branches/4.1
-   M /branches/4.1/tools/mpfrlint
+	[doc/README.dev] "To make a release": mention the README file.
 
-[tools/mpfrlint] Improved the __GMP_DECLSPEC test:
-  * No longer exclude "src/mpfr.h".
-  * Avoid false positives in "src/mpfr.h" and "src/mpfr-longlong.h".
-(merged changeset r13995 from the trunk)
-------------------------------------------------------------------------
-r13994 | vlefevre | 2020-06-12 11:45:04 +0000 (Fri, 12 Jun 2020) | 1 line
-Changed paths:
-   M /branches/4.1/doc/mpfr.texi
+2022-11-11  Vincent Lefevre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r13991 | vlefevre | 2020-06-12 11:40:23 +0000 (Fri, 12 Jun 2020) | 1 line
-Changed paths:
-   A /branches/4.1 (from /trunk:13990)
+	[README] Changed link to the README.dev file to the 4.1 branch.
 
-Created branch 4.1.
-------------------------------------------------------------------------
-r13990 | vlefevre | 2020-06-12 11:39:36 +0000 (Fri, 12 Jun 2020) | 1 line
-Changed paths:
-   M /trunk/ChangeLog
+	It is probably better to give the link in the 4.1 branch, since
+	we are in the 4.1 branch: some changes in master may not apply
+	to the 4.1 branch (for instance, the list of macros and the list
+	of environment variables that affect the tests). Future changes
+	useful for the 4.1 branch could be cherry-picked if need be.
 
-ChangeLog update with "LC_ALL=en_US.UTF8 TZ=UTC0 svn log -rHEAD:0 -v".
-------------------------------------------------------------------------
-r13989 | vlefevre | 2020-06-11 21:22:20 +0000 (Thu, 11 Jun 2020) | 2 lines
-Changed paths:
-   M /trunk/NEWS
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/mpfr.h
-   M /trunk/src/total_order.c
-   M /trunk/tests/ttotal_order.c
+2022-11-10  Vincent Lefevre  <vincent at vinc17.net>
 
-Renamed mpfr_total_order to mpfr_total_order_p for consistency with the
-other predicates (by convention, the function name should end with _p).
-------------------------------------------------------------------------
-r13987 | vlefevre | 2020-06-11 15:15:52 +0000 (Thu, 11 Jun 2020) | 1 line
-Changed paths:
-   M /trunk/NEWS
+	Updated version to 4.1.1-rc1 again with the new tools/update-version.
 
-[NEWS] New function mpfr_total_order. Detailed mpfr_get_str_ndigits.
-------------------------------------------------------------------------
-r13986 | vlefevre | 2020-06-11 15:07:52 +0000 (Thu, 11 Jun 2020) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	All the expected replacements have now been done in doc/mpfr.texi,
+	thanks to commit 9645c5255492c6d00133a3a90e479d374b6c061d.
 
-[doc/README.dev] Updated "To make a release".
-------------------------------------------------------------------------
-r13980 | vlefevre | 2020-06-11 13:01:58 +0000 (Thu, 11 Jun 2020) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+2022-11-10  Vincent Lefevre  <vincent at vinc17.net>
 
-[doc/README.dev] Updated "To make a release".
-------------------------------------------------------------------------
-r13979 | vlefevre | 2020-06-11 12:44:42 +0000 (Thu, 11 Jun 2020) | 1 line
-Changed paths:
-   M /trunk/src/Makefile.am
+	[tools/update-version] Updated a replacement.
 
-[src/Makefile.am] Updated -version-info to 7:0:1 for MPFR 4.1.0.
-------------------------------------------------------------------------
-r13978 | vlefevre | 2020-06-11 12:41:25 +0000 (Thu, 11 Jun 2020) | 1 line
-Changed paths:
-   M /trunk/NEWS
+	This was needed due to a change done on 2018-09-07 in doc/mpfr.texi
+	(commit 84796030c7c732e8e66e5e650ec929c541dd207f / SVN r13153), as
+	said in the previous commit.
 
-[NEWS] Additional details, in particular binary compatibility.
-------------------------------------------------------------------------
-r13977 | vlefevre | 2020-06-11 12:05:29 +0000 (Thu, 11 Jun 2020) | 1 line
-Changed paths:
-   M /trunk/NEWS
+2022-11-10  Vincent Lefevre  <vincent at vinc17.net>
 
-[NEWS] Some improvements.
-------------------------------------------------------------------------
-r13976 | zimmerma | 2020-06-11 07:44:42 +0000 (Thu, 11 Jun 2020) | 2 lines
-Changed paths:
-   M /trunk/doc/mini-gmp
+	[tools/update-version] Check for failing replacements.
 
-[doc/mini-gmp] one more test is skipped now
+	This script currently fails due to a change done on 2018-09-07 in
+	doc/mpfr.texi (commit 84796030c7c732e8e66e5e650ec929c541dd207f /
+	SVN r13153), and this issue remained unnoticed until now,
+	in particular due to the absence of checking for failing
+	replacements.
 
-------------------------------------------------------------------------
-r13975 | zimmerma | 2020-06-11 07:44:00 +0000 (Thu, 11 Jun 2020) | 2 lines
-Changed paths:
-   M /trunk/doc/mini-gmp
+	The penultimate non-patchlevel release was done on 2017-12-25, i.e.
+	before this change, and no patchlevel releases have been done yet
+	for the latest release, so that no current releases are affected by
+	this issue, but the 4.1.1 release candidate is affected.
 
-[doc/mini-gmp] add test results with reduced limb size (int)
+2022-11-09  Vincent Lefevre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13974 | vlefevre | 2020-06-11 00:00:45 +0000 (Thu, 11 Jun 2020) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	Updated doc/texinfo.tex to 2022-11-07.17 (from GNU Texinfo 7.0).
 
-[doc/README.dev] Updated "To make a release".
-------------------------------------------------------------------------
-r13973 | vlefevre | 2020-06-10 23:19:17 +0000 (Wed, 10 Jun 2020) | 1 line
-Changed paths:
-   M /trunk/NEWS
+2022-11-08  Vincent Lefevre  <vincent at vinc17.net>
 
-[NEWS] Added release name for 4.1.0: "épinards à la crème".
-------------------------------------------------------------------------
-r13971 | vlefevre | 2020-06-10 21:53:27 +0000 (Wed, 10 Jun 2020) | 1 line
-Changed paths:
-   M /trunk/doc/mini-gmp
+	[doc/mpfr.texi] Various corrections and improvements.
 
-[doc/mini-gmp] English usage improvement.
-------------------------------------------------------------------------
-r13970 | vlefevre | 2020-06-10 21:50:12 +0000 (Wed, 10 Jun 2020) | 15 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
-   M /trunk/tests/tvalist.c
+	* mpfr_subnormalize: define EXP(x) and PREC(x).
+	* More typographic corrections and improvements.
 
-Fixed 2 issues with tests/tvalist.c:
-  1. When building with mini-gmp (--with-mini-gmp=DIR) without
-     optimizations (-O0), the build of tvalist was failing because
-     the formatted output functions are not supported (this issue
-     wasn't noticed with optimizations due to dead code elimination).
-     Fix: this test is disabled with mini-gmp (not needed anyway).
-  2. Dead code elimination with optimizations partly broke the goal
-     of this test, i.e. checking that mpfr_vfprintf was available.
-     This dead code was introduced in r7648 "Make sure that fct is
-     used (avoid a warning)." (where fct = mpfr_vfprintf) but was
-     actually not sufficient.
-     Fix: call mpfr_vfprintf unconditionally, but on an empty string
-     in order to avoid output to stdout.
-In addition to these changes in tests/tvalist.c, src/mpfr-impl.h could
-be simplified as a consequence.
-------------------------------------------------------------------------
-r13969 | vlefevre | 2020-06-10 21:26:07 +0000 (Wed, 10 Jun 2020) | 5 lines
-Changed paths:
-   M /trunk/src/clears.c
-   M /trunk/src/inits.c
-   M /trunk/src/inits2.c
-   M /trunk/tests/tvalist.c
+2022-11-07  Vincent Lefevre  <vincent at vinc17.net>
 
-Removed '# undef HAVE_STDARG' before '# include "config.h"' when it
-was used, as it was not always undefined (e.g. in tests/tsprintf.c)
-and there are no reasons to undefine this macro specifically.
-Note: this code was introduced in r2665 (2004-02-06), perhaps for
-the MPFR build inside GMP, which has been dropped a long time ago.
-------------------------------------------------------------------------
-r13968 | vlefevre | 2020-06-10 21:07:30 +0000 (Wed, 10 Jun 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tvalist.c
+	[doc/mpfr.texi] Added a comment (ref to the GNU Texinfo spacing bug).
 
-[tests/tvalist.c] Updated a comment.
-------------------------------------------------------------------------
-r13967 | vlefevre | 2020-06-10 21:01:12 +0000 (Wed, 10 Jun 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tvalist.c
+2022-11-07  Vincent Lefevre  <vincent at vinc17.net>
 
-[tests/tvalist.c] Correction when config.h is used (code copied from
-src/inits.c).
-------------------------------------------------------------------------
-r13966 | zimmerma | 2020-06-10 14:27:40 +0000 (Wed, 10 Jun 2020) | 2 lines
-Changed paths:
-   M /trunk/doc/mini-gmp
+	[doc/mpfr.texi] Remaining typographic correction for a math expression.
 
-[doc/mini-gmp] review
+	This is specific to the 4.1 branch as the text was removed in master
+	with the new function mpfr_rootn_si.
 
-------------------------------------------------------------------------
-r13964 | vlefevre | 2020-06-10 12:48:02 +0000 (Wed, 10 Jun 2020) | 1 line
-Changed paths:
-   M /trunk/NEWS
+2022-11-07  Vincent Lefevre  <vincent at vinc17.net>
 
-[NEWS] Typo in option name.
-------------------------------------------------------------------------
-r13963 | vlefevre | 2020-06-10 10:58:36 +0000 (Wed, 10 Jun 2020) | 5 lines
-Changed paths:
-   M /trunk/src/mpfr-longlong.h
+	[doc/mpfr.texi] Typographic corrections and English usage.
 
-[src/mpfr-longlong.h]
-  * Updated comment about this file and the changes against GMP 6.2.0.
-  * Define __GMP_GNUC_PREREQ if it isn't defined (this is currently not
-    needed since it is defined in gmp.h as used also there, but this is
-    useful in case some future gmp.h version no longer defines it).
-------------------------------------------------------------------------
-r13962 | vlefevre | 2020-06-10 10:39:09 +0000 (Wed, 10 Jun 2020) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr-longlong.h
+	* More documentation for the @m{T,N} macro.
+	* Note a spacing bug in texi2dvi from GNU Texinfo 6.8 with macros
+	  (found while testing).
+	* Define macro @EXP (and \EXP in TeX).
+	* Typographic corrections for math expressions and English usage.
 
-[src/mpfr-longlong.h] Update: applied the diff of GMP's longlong.h
-between GMP 6.1.0 and GMP 6.2.0, after reverting changesets 13251,
-11042, 11025, and 10727, as these changes are present in the diff.
-------------------------------------------------------------------------
-r13961 | vlefevre | 2020-06-10 10:21:51 +0000 (Wed, 10 Jun 2020) | 1 line
-Changed paths:
-   M /trunk/configure.ac
+2022-11-04  Vincent Lefevre  <vincent at vinc17.net>
 
-[configure.ac] With mini-gmp, also check the availability of srand48.
-------------------------------------------------------------------------
-r13960 | vlefevre | 2020-06-10 10:15:52 +0000 (Wed, 10 Jun 2020) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-mini-gmp.c
+	[doc/mpfr.texi] Minor typographic correction.
 
-[src/mpfr-mini-gmp.c] For gmp_randseed_ui, which uses srand48, use
-a portable version of the conversion from unsigned long to long.
-------------------------------------------------------------------------
-r13959 | vlefevre | 2020-06-10 09:37:15 +0000 (Wed, 10 Jun 2020) | 1 line
-Changed paths:
-   M /trunk/doc/mini-gmp
+	This corrects commit d1a6e781428506bc49bc98d632265cf2d4406c9f.
 
-[doc/mini-gmp] Note also that the random functions are not thread-safe.
-------------------------------------------------------------------------
-r13958 | vlefevre | 2020-06-10 09:21:46 +0000 (Wed, 10 Jun 2020) | 1 line
-Changed paths:
-   M /trunk/doc/mini-gmp
+2022-11-04  Vincent Lefevre  <vincent at vinc17.net>
 
-[doc/mini-gmp] Major update.
-------------------------------------------------------------------------
-r13957 | vlefevre | 2020-06-10 08:40:02 +0000 (Wed, 10 Jun 2020) | 1 line
-Changed paths:
-   M /trunk/NEWS
+	[doc/mpfr.texi] Updated the month.
 
-[NEWS] Removed a FIXME (no problems found).
-------------------------------------------------------------------------
-r13955 | vlefevre | 2020-06-09 15:53:51 +0000 (Tue, 09 Jun 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tversion.c
+2022-11-04  Vincent Lefevre  <vincent at vinc17.net>
 
-[tests/tversion.c] Code style: replaced (mp_limb_t) -1 by MPFR_LIMB_MAX.
-------------------------------------------------------------------------
-r13954 | vlefevre | 2020-06-09 15:46:19 +0000 (Tue, 09 Jun 2020) | 2 lines
-Changed paths:
-   M /trunk/src/mul_ui.c
+	[doc/mpfr.texi] Various improvements and style corrections from master.
 
-[src/mul_ui.c] Bug fix: in the code where MPFR_LONG_WITHIN_LIMB is
-not defined, update the flags (needed for the possible overflow).
-------------------------------------------------------------------------
-r13953 | vlefevre | 2020-06-09 15:37:58 +0000 (Tue, 09 Jun 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tmul_ui.c
+	with conflict resolutions.
 
-[tests/tmul_ui.c] Added an overflow check that fails in MPFR_RNDZ with
-mini-gmp and mp_limb_t < long (e.g. "-DMINI_GMP_LIMB_TYPE=short").
-------------------------------------------------------------------------
-r13952 | vlefevre | 2020-06-09 15:15:04 +0000 (Tue, 09 Jun 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tgeneric.c
+2022-11-03  Vincent Lefevre  <vincent at vinc17.net>
 
-[tests/tgeneric.c] In the MPFR_SUSPICIOUS_OVERFLOW case, output yprec.
-------------------------------------------------------------------------
-r13951 | vlefevre | 2020-06-09 15:04:19 +0000 (Tue, 09 Jun 2020) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[manual] For sqrt, mention the relation with rootn.
 
-[src/mpfr-impl.h] Changed the code that defines MPFR_LONG_WITHIN_LIMB
-in order to support mini-gmp with -DMINI_GMP_LIMB_TYPE=...
-------------------------------------------------------------------------
-r13950 | vlefevre | 2020-06-09 13:39:35 +0000 (Tue, 09 Jun 2020) | 8 lines
-Changed paths:
-   M /trunk/src/get_ld.c
+	This corresponds to commit a9bdb273b79ae470ad2177c27e7e978f4bc9831e
+	from master, ignoring mpfr_rootn_si, which is not in the 4.1 branch.
 
-[src/get_ld.c] Fixed build failure with GMP_NUMB_BITS == 8 due to the
-use of uint64_t in src/get_ld.c, while <stdint.h> was not included:
-replaced it by "unsigned long long", which does not need a specific
-header (an exact 64-bit type is not needed, we just need at least a
-64-bit width, which unsigned long long is guaranteed to have).
-Note: unsigned long long may not be available with a pre-C99 compiler,
-but this is not worse than uint64_t. This limitation is currently OK
-as GMP_NUMB_BITS == 8 support is just for testing.
-------------------------------------------------------------------------
-r13949 | vlefevre | 2020-06-09 10:53:21 +0000 (Tue, 09 Jun 2020) | 12 lines
-Changed paths:
-   M /trunk/acinclude.m4
+2022-11-03  Vincent Lefevre  <vincent at vinc17.net>
 
-[acinclude.m4] Make MPFR_CHECK_MP_LIMB_T_VS_LONG and
-MPFR_CHECK_MP_LIMB_T_VS_INTMAX similar:
-  * Use AC_LINK_IFELSE in MPFR_CHECK_MP_LIMB_T_VS_LONG too: this
-    is safer than AC_COMPILE_IFELSE, as it will detect undefined
-    function-like macros.
-  * Define MPFR_USE_STATIC_ASSERT in MPFR_CHECK_MP_LIMB_T_VS_INTMAX
-    too in order to make sure that a static assertion is used (not
-    the MPFR_ASSERTN fallback).
-Note: These constitute redundant safeguards because if MPFR_ASSERTN
-is used, it will be regarded as a function since the macro is not
-defined in this context, and linking will fail as a consequence.
-But this redundancy will protect more against MPFR code evolution.
-------------------------------------------------------------------------
-r13948 | vlefevre | 2020-06-09 09:41:51 +0000 (Tue, 09 Jun 2020) | 16 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	Fixed some minor mistakes.
 
-[acinclude.m4] Fixed MPFR_CHECK_MP_LIMB_T_VS_LONG macro by forcing
-MPFR_USE_STATIC_ASSERT to 1 before including mpfr-sassert.h, i.e.
-by requiring static assertions: because AC_COMPILE_IFELSE is used
-(i.e. just compiling, no linking), the test could incorrectly succeed
-when MPFR_USE_STATIC_ASSERT was not defined, i.e. whatever the value
-of "(mp_limb_t) -1 >= (unsigned long) -1"; indeed, in this case,
-MPFR_ASSERTN() was used instead of a static assertion, and since the
-macro was not defined here, MPFR_ASSERTN was regarded as a function
-(without a prototype), which was fine for compiling (except when the
-compiler is configured to regard warnings such as missing prototype
-as errors). In short, one could get "yes" while long was larger than
-mp_limb_t.
-Note: In uncommon cases (non-standard compiler...), one can still get
-"no" while a long fits in mp_limb_t, but this isn't much an issue as
-the MPFR code should work in such a case. Moreover, src/mpfr-impl.h
-will also have the chance to set MPFR_LONG_WITHIN_LIMB in practice.
-------------------------------------------------------------------------
-r13947 | vlefevre | 2020-06-09 00:57:05 +0000 (Tue, 09 Jun 2020) | 28 lines
-Changed paths:
-   M /trunk/acinclude.m4
-   M /trunk/src/mpfr-sassert.h
-   M /trunk/tune/tuneup.c
+	* Minor mistakes in doc/mpfr.texi reported by Ivan Panchenko:
+	    https://sympa.inria.fr/sympa/arc/mpfr/2022-10/msg00020.html
+	  (spacing and italicization not fixed yet).
+	* Fixed similar mistakes in the other files.
 
-Removed MPFR_DECL_STATIC_ASSERT macro as it was buggy, unused, rather
-useless, and it had drawbacks. Details:
-  * In src/mpfr-sassert.h, the default definition of this macro in the
-    MPFR_USE_STATIC_ASSERT case ended with a spurious ";". Since this
-    macro was unused, this wasn't noticeable... except in the configure
-    test for static assertions, which failed in some cases (e.g. with
-    CFLAGS="-std=c99 -pedantic-errors -Wno-error=overlength-strings")
-    for this reason, which had the effect to let MPFR_USE_STATIC_ASSERT
-    undefined, while static assertions were actually working.
-  * Still in src/mpfr-sassert.h, but when MPFR_USE_STATIC_ASSERT is not
-    defined, the MPFR_DECL_STATIC_ASSERT(c) expanded to nothing, which
-    would yield invalid code as
-      MPFR_DECL_STATIC_ASSERT(some_assertion);
-    would yield an extra ";" (about the same issue as above). Given
-    the fact that the portable MPFR_USE_STATIC_ASSERT code does not
-    work with this compiler, it is not clear whether this is fixable
-    in a completely reliable way.
-  * MPFR_DECL_STATIC_ASSERT can be replaced by MPFR_STAT_STATIC_ASSERT
-    after moving it to the statement section of a function, with almost
-    no drawbacks (just a bit readability in some cases?).
-  * When MPFR_USE_STATIC_ASSERT is not defined, MPFR_STAT_STATIC_ASSERT
-    will check the assertion at run time (for free, since the result is
-    known at compile time), while MPFR_DECL_STATIC_ASSERT would not be
-    able to do anything useful.
-Changes:
-  * acinclude.m4: removed the test of MPFR_DECL_STATIC_ASSERT.
-  * src/mpfr-sassert.h: removed MPFR_DECL_STATIC_ASSERT definitions.
-  * tune/tuneup.c: removed MPFR_DECL_STATIC_ASSERT redefinition.
-------------------------------------------------------------------------
-r13946 | vlefevre | 2020-06-08 23:55:33 +0000 (Mon, 08 Jun 2020) | 3 lines
-Changed paths:
-   M /trunk/acinclude.m4
+2022-11-03  Vincent Lefèvre  <vincent at vinc17.net>
 
-[acinclude.m4] MPFR_CHECK_MP_LIMB_T_VS_LONG: updated comment to say
-that using MPFR_ASSERTN (as the code tries to do if static assertions
-are not supported, but currently fails) would be incorrect.
-------------------------------------------------------------------------
-r13945 | vlefevre | 2020-06-08 13:45:33 +0000 (Mon, 08 Jun 2020) | 2 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	[doc] Update about "case insensitive" and issue with Turkish locales
+	for "I" / "i".
 
-[acinclude.m4] In MPFR_CHECK_MP_LIMB_T_VS_INTMAX, do the test only if
-intmax_t is defined (assuming that it is iff uintmax_t is defined).
-------------------------------------------------------------------------
-r13944 | vlefevre | 2020-06-08 13:39:32 +0000 (Mon, 08 Jun 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tversion.c
+	  * mpfr.texi: added "with the rules of the C locale" in the
+	    mpfr_strtofr description.
+	  * README.dev: completed information about Turkish locales.
 
-[tests/tversion.c] Also output the results of the detection of
-"long within limb" and "intmax_t within limb".
-------------------------------------------------------------------------
-r13942 | vlefevre | 2020-06-04 16:22:38 +0000 (Thu, 04 Jun 2020) | 1 line
-Changed paths:
-   M /trunk/configure.ac
+2022-11-03  Vincent Lefevre  <vincent at vinc17.net>
 
-[configure.ac] Removed an obsolete FIXME, which is probably wrong.
-------------------------------------------------------------------------
-r13941 | vlefevre | 2020-06-04 16:17:12 +0000 (Thu, 04 Jun 2020) | 1 line
-Changed paths:
-   M /trunk/configure.ac
+	Updated doc/texinfo.tex to 2022-10-18.18
 
-[configure.ac] Updated a comment, replacing a resolved FIXME.
-------------------------------------------------------------------------
-r13940 | vlefevre | 2020-06-04 15:53:59 +0000 (Thu, 04 Jun 2020) | 2 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	Update from the texinfo Git repository.
+	  * The generated mpfr.html and mpfr.info files remain the same.
+	  * For mpfr.pdf, there are some spacing improvements.
 
-[acinclude.m4] MPFR_CHECK_DBL2INT_BUG test: avoid potentially reserved
-exit status.
-------------------------------------------------------------------------
-r13939 | vlefevre | 2020-06-04 14:29:17 +0000 (Thu, 04 Jun 2020) | 2 lines
-Changed paths:
-   M /trunk/acinclude.m4
+2022-10-05  Vincent Lefevre  <vincent at vinc17.net>
 
-[acinclude.m4] Fixed r13938: the new MPFR_C_REALFP_FORMAT macro also
-needs to take the printf length modifier in argument.
-------------------------------------------------------------------------
-r13938 | vlefevre | 2020-06-04 13:51:32 +0000 (Thu, 04 Jun 2020) | 11 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	ChangeLog update with tools/update-changelog
 
-[acinclude.m4] Improved the code to determine the format of double,
-resolving the FIXME. The issue was that it used an AC_RUN_IFELSE,
-so that the format could not be determined when cross-compiling.
-The code to determine the format of long double did not have such
-an issue: the object file was analyzed by an awk script. Since a
-long double can have the same format as a double, this code was
-already able to recognize a double, in particular. So the change
-consisted in slightly adapting this code to accept the tested type
-as an argument ("double" or "long double", the mpfr_cv_… variable
-name being obtained thanks to AS_VAR_PUSHDEF) and reusing it for
-the detection of the format of double.
-------------------------------------------------------------------------
-r13937 | vlefevre | 2020-06-04 13:21:09 +0000 (Thu, 04 Jun 2020) | 3 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	[tools/update-changelog] Use UTC to generate the ChangeLog file.
 
-[acinclude.m4] MPFR_C_LONG_DOUBLE_FORMAT cleanup:
-  * Removed an unused AH_VERBATIM.
-  * Removed "not available" condition, no longer possible since r13936.
-------------------------------------------------------------------------
-r13936 | vlefevre | 2020-06-04 12:34:18 +0000 (Thu, 04 Jun 2020) | 6 lines
-Changed paths:
-   M /trunk/acinclude.m4
+2022-10-05  Vincent Lefevre  <vincent at vinc17.net>
 
-[acinclude.m4] Fix concerning r13935: also removed code that tested
-the availability of long double. This code was useless since it was
-just outputting "not available" if long double was missing, and one
-would get an error later since MPFR requires long double. But since
-long double is in ISO C89, it is useless to add a test just to return
-an error for pre-C89 compilers.
-------------------------------------------------------------------------
-r13935 | vlefevre | 2020-06-04 12:17:15 +0000 (Thu, 04 Jun 2020) | 4 lines
-Changed paths:
-   M /trunk/acinclude.m4
-   M /trunk/configure.ac
+	[tools/gitlog-to-changelog] Improve --strip-cherry-pick for this repository.
 
-[acinclude.m4] Removed "AC_CHECK_TYPES([long double])", whose only
-  purpose is to define a HAVE_LONG_DOUBLE macro.
-[configure.ac] Removed HAVE_LONG_DOUBLE from the cleanup: no longer
-  needed with the change in acinclude.m4.
-------------------------------------------------------------------------
-r13934 | vlefevre | 2020-06-03 13:44:24 +0000 (Wed, 03 Jun 2020) | 1 line
-Changed paths:
-   M /trunk/configure.ac
+	Remove all the cherry-pick information from what can be found in
+	the 4.1 branch.
 
-[configure.ac] Minor change in a comment.
-------------------------------------------------------------------------
-r13933 | vlefevre | 2020-06-03 13:38:17 +0000 (Wed, 03 Jun 2020) | 10 lines
-Changed paths:
-   M /trunk/acinclude.m4
-   M /trunk/configure.ac
+2022-10-05  Vincent Lefevre  <vincent at vinc17.net>
 
-Cleanup about the function detection by autoconf.
-  * acinclude.m4: removed the detection of memmove, memset and strtol,
-    which was not used (a macro "HAVE_..." was defined... to be removed
-    in configure.ac!); for AC_CHECK_FUNCS, remove options starting with
-    "-Werror" as they can yield a spurious failure due to the way this
-    test is done (this occurred on memmove and memset with GCC due to
-    builtins, and similar issues could still occur in practice with the
-    remaining functions in the AC_CHECK_FUNCS list).
-  * configure.ac: removed HAVE_STRTOL from the macro cleanup: no longer
-    needed since strtol has been removed from the AC_CHECK_FUNCS list.
-------------------------------------------------------------------------
-r13932 | vlefevre | 2020-06-03 12:11:13 +0000 (Wed, 03 Jun 2020) | 3 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	[doc/README.dev] "To make a release": corrections about the tag.
 
-[acinclude.m4] Minor improvement: in the MPFR_CHECK_GMP test, changed
-the exit status values 1..3 to 81..83 in order to avoid confusion, as
-low values can typically be returned in case of compile or link error.
-------------------------------------------------------------------------
-r13931 | vlefevre | 2020-06-02 22:43:08 +0000 (Tue, 02 Jun 2020) | 1 line
-Changed paths:
-   M /trunk/tests/memory.c
+	ChangeLog update with tools/update-changelog
 
-[tests/memory.c] Updated a comment.
-------------------------------------------------------------------------
-r13930 | vlefevre | 2020-06-02 21:35:11 +0000 (Tue, 02 Jun 2020) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-longlong.h
+	[tests/tnrandom.c] Fixed compilation failure with mini-gmp.
 
-[src/mpfr-longlong.h] Added code to check that mpfr-longlong.h is not
-included directly; MPFR_NEED_LONGLONG_H must be defined instead.
-------------------------------------------------------------------------
-r13929 | vlefevre | 2020-06-02 21:26:51 +0000 (Tue, 02 Jun 2020) | 2 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	ChangeLog update with tools/update-changelog
 
-[acinclude.m4] To complete r13928, one also needs to define
-MPFR_NEED_INTMAX_H here when mpfr-intmax.h is used.
-------------------------------------------------------------------------
-r13928 | vlefevre | 2020-06-02 21:21:45 +0000 (Tue, 02 Jun 2020) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/mpfr-intmax.h
+2022-10-05  Vincent Lefevre  <vincent at vinc17.net>
 
-[src/{mpfr-impl.h,mpfr-intmax.h}] Added code to check that mpfr-intmax.h
-is not included directly; MPFR_NEED_INTMAX_H must be defined instead.
-------------------------------------------------------------------------
-r13923 | vlefevre | 2020-06-01 10:39:52 +0000 (Mon, 01 Jun 2020) | 12 lines
-Changed paths:
-   M /trunk/src/fits_intmax.c
-   M /trunk/src/fits_uintmax.c
-   M /trunk/src/get_sj.c
-   M /trunk/src/get_str.c
-   M /trunk/src/get_uj.c
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/mpfr-intmax.h
-   M /trunk/src/set_sj.c
-   M /trunk/src/set_uj.c
-   M /trunk/src/vasprintf.c
-   M /trunk/tests/memory.c
-   M /trunk/tests/tfits.c
-   M /trunk/tests/tfprintf.c
-   M /trunk/tests/tget_sj.c
-   M /trunk/tests/tprintf.c
-   M /trunk/tests/tset_sj.c
-   M /trunk/tests/tversion.c
+	[tools] Improvement for the ChangeLog generation.
 
-Bug fixes and cleanup related to "src/mpfr-intmax.h" by introducing
-a new macro MPFR_NEED_INTMAX_H, which should be defined instead of
-using: #include "mpfr-intmax.h"
+	* tools/gitlog-to-changelog: modified regexp for --strip-cherry-pick
+	  to support some log message in the MPFR Git repository (currently,
+	  only commit 4c5973c2f0153a3a4708cab79ed142e72c4a50eb, but similar
+	  ones could occur in the future).
+	* tools/update-changelog: use this --strip-cherry-pick option.
 
-Details on the bugs fixed:
-  * The code added in r13916 forgot a #include <limits.h> since this
-    code does a test on ULLONG_MAX. With the cleanup, <limits.h> is
-    already always included by mpfr-impl.h (early enough).
-  * In src/get_str.c and tests/memory.c, a #include "config.h" was
-    missing before #include "mpfr-intmax.h"; this issue would affect
-    platforms where "config.h" is needed and where <inttypes.h> or
-    <stdint.h> does not exist or does not work.
-------------------------------------------------------------------------
-r13922 | vlefevre | 2020-06-01 00:15:37 +0000 (Mon, 01 Jun 2020) | 3 lines
-Changed paths:
-   M /trunk/tests/tgamma.c
+2022-10-05  Vincent Lefevre  <vincent at vinc17.net>
 
-[tests/tgamma.c] For the non-regression test added in r13907, one
-also needs to temporarily increase the memory limit, thus require
-MPFR_CHECK_LARGEMEM too.
-------------------------------------------------------------------------
-r13920 | vlefevre | 2020-05-26 11:24:25 +0000 (Tue, 26 May 2020) | 2 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	[doc/README.dev] "To make a release": update for the ChangeLog file.
 
-[acinclude.m4] If decimal floats are explicitly disabled, do not do
-the check of the bit-field ordering for _Decimal128.
-------------------------------------------------------------------------
-r13919 | vlefevre | 2020-05-26 11:12:21 +0000 (Tue, 26 May 2020) | 2 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	See commit 1dc281851408fc7d330576327545857c93392521 for the reason.
 
-[acinclude.m4] Fixed detection of bit-field ordering for _Decimal128:
-a compiler error with exit status 1 was mixed up with little endian.
-------------------------------------------------------------------------
-r13916 | vlefevre | 2020-05-24 17:53:31 +0000 (Sun, 24 May 2020) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr-intmax.h
+2022-10-05  Vincent Lefevre  <vincent at vinc17.net>
 
-[src/mpfr-intmax.h] Added support for Silicon Graphics IRIX 6.5 (1998)
-with native /usr/bin/cc, which knows the long long type but defines
-ULONGLONG_MAX, etc. instead of ULLONG_MAX, etc.
-------------------------------------------------------------------------
-r13915 | vlefevre | 2020-05-24 01:35:17 +0000 (Sun, 24 May 2020) | 4 lines
-Changed paths:
-   M /trunk/tests/tget_ld_2exp.c
+	[doc/README.dev] "To make a release": update for abi-compliance-checker.
 
-[tests/tget_ld_2exp.c] Reverted r13914 as we still need to support
-pre-C99 compilers (and this change was useless).
-If C99 syntax is needed, there should be a configure test, and the
-code should be conditional.
-------------------------------------------------------------------------
-r13914 | zimmerma | 2020-05-23 19:53:25 +0000 (Sat, 23 May 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_ld_2exp.c
+	Added an example of use of build-multi and abi-compliance-checker
+	for the 4.1.1 release candidate.
 
-[tests/tget_ld_2exp.c] put expected value in hex in bug20180904()
+2022-10-05  Vincent Lefevre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13913 | vlefevre | 2020-05-20 01:13:35 +0000 (Wed, 20 May 2020) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	Fix for "make dist" / "make distcheck" about ChangeLog regeneration.
 
-[doc/README.dev] "To make a release": mention MPFR_CHECK_EXPENSIVE.
-------------------------------------------------------------------------
-r13912 | zimmerma | 2020-05-19 21:19:06 +0000 (Tue, 19 May 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tgamma.c
+	The "ChangeLog: FORCE" rule in Makefile.am was incompatible with
+	GNU Automake's "make dist" / "make distcheck" because GNU Automake
+	creates a "distdir-am: $(DISTFILES)" rule, which was regenerating
+	the ChangeLog file in "make dist"; such a change is not allowed
+	(it fails with "make distcheck") and not wanted anyway.
+	Issue introduced by commit 52652c41978089be57aca658bacf19b758c73be4.
 
-[tests/tgamma.c] added comment about bug fix
+	* Added tools/update-changelog sh script to update the ChangeLog file.
+	* Makefile.am: replaced the incorrect rule mentioned above by a rule
+	  update-changelog to run tools/update-changelog; added a comment.
 
-------------------------------------------------------------------------
-r13911 | zimmerma | 2020-05-19 21:13:36 +0000 (Tue, 19 May 2020) | 3 lines
-Changed paths:
-   M /trunk/src/bernoulli.c
+2022-10-05  Vincent Lefevre  <vincent at vinc17.net>
 
-[src/bernoulli.c] improve initial precision in mpfr_bernoulli_internal()
-		  (avoid failures for n <= 10000)
+	Corrected comment about the ".POSIX" line in all Makefile.am files.
 
-------------------------------------------------------------------------
-r13910 | zimmerma | 2020-05-19 20:01:02 +0000 (Tue, 19 May 2020) | 2 lines
-Changed paths:
-   M /trunk/src/bernoulli.c
+	[doc/README.dev] "To make a release": update for abi-compliance-checker.
 
-[src/bernoulli.c] fix bug with non-regression test added in r13907
+2022-10-05  Vincent Lefevre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13909 | zimmerma | 2020-05-19 17:59:41 +0000 (Tue, 19 May 2020) | 3 lines
-Changed paths:
-   M /trunk/src/bernoulli.c
+	[doc/README.dev] "To make a release": update about build-multi.
 
-[src/bernoulli.c] temporary fix for the bug in mpfr_gamma, something must be
-                  wrong in the error analysis of mpfr_bernoulli_internal()
+	Needed due to the switch from InriaForge to Inria GitLab.
 
-------------------------------------------------------------------------
-r13908 | zimmerma | 2020-05-19 16:13:09 +0000 (Tue, 19 May 2020) | 3 lines
-Changed paths:
-   M /trunk/doc/README.dev
-   M /trunk/tests/tgamma.c
+2022-10-04  Vincent Lefevre  <vincent at vinc17.net>
 
-[doc/README.dev] added MPFR_CHECK_EXPENSIVE
-[tests/tgamma.c] use MPFR_CHECK_EXPENSIVE
+	[tests/tnrandom.c] Improved the support non-default seed.
 
-------------------------------------------------------------------------
-r13907 | zimmerma | 2020-05-19 15:06:58 +0000 (Tue, 19 May 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tgamma.c
+	As suggested by mpfrlint, use a different randstate rather than
+	re-seeding mpfr_rands (with a fixed seed). So the corresponding
+	test no longer needs to be at the end.
 
-added non-regression test for bug reported by Frithjof Blomquist
+2022-10-04  Vincent Lefevre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13906 | vlefevre | 2020-05-04 15:25:13 +0000 (Mon, 04 May 2020) | 1 line
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[tests/tnrandom.c] Added a comment for tnrandom with an argument.
 
-[tools/mpfrlint] Use of codespell: better workaround to python ugliness.
-------------------------------------------------------------------------
-r13898 | vlefevre | 2020-04-27 20:12:09 +0000 (Mon, 27 Apr 2020) | 3 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	This concerns a slowness of mpfr_clear() in the MPFR tests due to
+	the O(n) search in tests_memory_find(), used to detect memory leaks.
 
-[doc/mpfr.texi] Section "Rounding" / even-rounding rule: the odd
-radices β are actually not concerned since in such radices, β^k
-is always odd, so that the exponent does not matter.
-------------------------------------------------------------------------
-r13897 | vlefevre | 2020-04-27 19:59:50 +0000 (Mon, 27 Apr 2020) | 7 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2022-10-04  Vincent Lefevre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] In Section "Rounding", for MPFR_RNDN, added a note
-about the even-rounding rule in particular cases: 1-digit precision
-and odd radices.
-Note: A short explanation was already in the mpfr_get_str description,
-which is where the issue could occur at the time the minimum precision
-of MPFR numbers was 2. Now that the minimum precision is 1, this rule
-in such special cases is more general.
-------------------------------------------------------------------------
-r13896 | vlefevre | 2020-04-27 19:27:57 +0000 (Mon, 27 Apr 2020) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tests/tnrandom.c] Support non-default seed (GMP_CHECK_RANDOMIZE).
 
-[doc/mpfr.texi] + "than": also in a comment.
-------------------------------------------------------------------------
-r13895 | vlefevre | 2020-04-27 19:19:53 +0000 (Mon, 27 Apr 2020) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	This fixes a failure due to 98014bfa2e453dd96dece493a88f983f111fc6a3
+	when GMP_CHECK_RANDOMIZE is set.
 
-[doc/mpfr.texi] Corrected a typo. Changed "{less,greater} or equal to"
-to the more common "{less,greater} than or equal to".
-------------------------------------------------------------------------
-r13893 | vlefevre | 2020-04-26 16:07:20 +0000 (Sun, 26 Apr 2020) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2022-10-04  Vincent Lefevre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] In the paragraph on mpfr_rnd_t, give a reference
-to Section "Rounding".
-------------------------------------------------------------------------
-r13892 | vlefevre | 2020-04-26 15:58:59 +0000 (Sun, 26 Apr 2020) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[doc/README.dev] "To make a release": added note about GMP_CHECK_RANDOMIZE.
 
-[doc/mpfr.texi] s/can not/cannot/
-------------------------------------------------------------------------
-r13891 | vlefevre | 2020-04-26 15:57:16 +0000 (Sun, 26 Apr 2020) | 4 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2022-10-03  Vincent Lefevre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] Improved Section "Rounding" even more:
-  * Added a note about the sign of the result (important for 0).
-  * Described the directed rounding modes (BTW, this notion of
-    "directed rounding modes" was used but never defined).
-------------------------------------------------------------------------
-r13890 | vlefevre | 2020-04-26 15:13:10 +0000 (Sun, 26 Apr 2020) | 5 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[doc] Updated FAQ.html with update-faq.
 
-[doc/mpfr.texi] Improved the description of the rounding modes:
-  * Be more clear that MPFR_RNDN uses the even rounding rule.
-  * In "two representable numbers", add "consecutive".
-  * Be more general than radix 2 (due to conversions to a string).
-  * Consistent typography.
-------------------------------------------------------------------------
-r13889 | vlefevre | 2020-04-25 15:08:40 +0000 (Sat, 25 Apr 2020) | 5 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[doc/update-faq] Ensure that the code is run from the doc directory.
 
-[doc/mpfr.texi]
-  * mpfr_init2: mention mpfr_prec_round; added a note about
-    memory allocation.
-  * mpfr_prec_round: clarification ("new allocation" could be
-    surprising since one needs less memory).
-------------------------------------------------------------------------
-r13888 | zimmerma | 2020-04-25 14:42:58 +0000 (Sat, 25 Apr 2020) | 3 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tools/coverage] Typo.
 
-[doc/mpfr.texi] document that mpfr_prec_round does no new allocation
-		in case the allocated memory is enough
+	[doc/README.dev] Updated "To make a release".
 
-------------------------------------------------------------------------
-r13886 | vlefevre | 2020-04-22 15:27:07 +0000 (Wed, 22 Apr 2020) | 5 lines
-Changed paths:
-   M /trunk/src/atan.c
+	[NEWS] Update for 4.1.1.
 
-[src/atan.c] Removing the FIXME: I can't see anything wrong in the
-MPFR code. This could be a bug in GCC's analyzer (which is currently
-experimental). And GCC bug 94713 in the analyzer prevents debugging
-as it makes impossible to track uninitialized values: warnings do not
-occur the first time an uninitialized value occurs.
-------------------------------------------------------------------------
-r13885 | vlefevre | 2020-04-22 15:10:28 +0000 (Wed, 22 Apr 2020) | 1 line
-Changed paths:
-   M /trunk/src/atan.c
+	doc/mpfr.texi: Updated the month.
 
-[src/atan.c] Added an assertion.
-------------------------------------------------------------------------
-r13884 | vlefevre | 2020-04-22 15:02:31 +0000 (Wed, 22 Apr 2020) | 1 line
-Changed paths:
-   M /trunk/src/atan.c
+	Updated version to 4.1.1-rc1 (with tools/update-version).
 
-[src/atan.c] Reduce the number of mpz_get_ui calls with assertions.
-------------------------------------------------------------------------
-r13883 | vlefevre | 2020-04-22 12:23:39 +0000 (Wed, 22 Apr 2020) | 1 line
-Changed paths:
-   M /trunk/src/atan.c
+	Updated URLs.
 
-[src/atan.c] Added a FIXME.
-------------------------------------------------------------------------
-r13881 | vlefevre | 2020-04-14 11:12:16 +0000 (Tue, 14 Apr 2020) | 5 lines
-Changed paths:
-   M /trunk/doc/texinfo.tex
+2022-10-03  Vincent Lefevre  <vincent at vinc17.net>
 
-[doc/texinfo.tex] Update to 2020-02-11.09 with "autoreconf -i -f"
-under Debian/unstable.
-Note: The generated mpfr.html and mpfr.info files remain the same.
-In mpfr.pdf, there are minor changes concerning horizontal spacing
-in paragraphs with a URL.
-------------------------------------------------------------------------
-r13879 | vlefevre | 2020-04-11 01:53:36 +0000 (Sat, 11 Apr 2020) | 4 lines
-Changed paths:
-   M /trunk/tests/tget_set_d64.c
+	[doc/README.dev] Corrected "To make a release".
 
-[tests/tget_set_d64.c] Fixed missing "#if _MPFR_IEEE_FLOATS" that
-became visible with r13878 now that the encoding of decimal floats
-can be detected at compile time. But by fixing the defined macros
-manually, this issue could be visible before r13878.
-------------------------------------------------------------------------
-r13878 | vlefevre | 2020-04-10 11:19:19 +0000 (Fri, 10 Apr 2020) | 11 lines
-Changed paths:
-   M /trunk/INSTALL
-   M /trunk/acinclude.m4
-   M /trunk/configure.ac
-   M /trunk/doc/README.dev
-   M /trunk/src/get_d64.c
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/set_d128.c
-   M /trunk/src/set_d64.c
-   M /trunk/tests/tget_set_d128.c
-   M /trunk/tests/tget_set_d64.c
-   M /trunk/tests/tversion.c
+	The addition of the <branch>-root tag applies only after a branch
+	is created, i.e. for non-patchlevel releases (item 0).
 
-Reworked decimal support and detection, resolving FIXMEs.
-  * INSTALL, acinclude.m4, configure.ac: --enable-decimal-float can
-    take new values. Change of macro DPD_FORMAT (DPD was assumed in
-    case of cross-compilation, which could be wrong) to 3 new macros:
-    DECIMAL_DPD_FORMAT, DECIMAL_BID_FORMAT, DECIMAL_GENERIC_CODE.
-  * doc/README.dev: documented these 3 new macros.
-  * src/mpfr-impl.h: the detection of the BID encoding can now be
-    done at compile time when GCC defines __DECIMAL_BID_FORMAT__
-    (as on x86); support of the 3 new macros.
-  * src/{get_d64.c,set_d64.c,set_d128.c}: update.
-  * tests/{tget_set_d64.c,tget_set_d128.c,tversion.c}: update.
-------------------------------------------------------------------------
-r13877 | vlefevre | 2020-04-08 22:39:35 +0000 (Wed, 08 Apr 2020) | 1 line
-Changed paths:
-   M /trunk/ChangeLog
-   M /trunk/INSTALL
-   M /trunk/src/get_d128.c
-   M /trunk/src/get_d64.c
-   M /trunk/src/mpfr-sassert.h
-   M /trunk/src/set_d128.c
-   M /trunk/src/set_d64.c
-   M /trunk/tests/tests.c
-   M /trunk/tests/tset_ld.c
-   M /trunk/tests/tsprintf.c
+2022-09-18  Vincent Lefevre  <vincent at vinc17.net>
 
-Updated URLs of the GCC mailing-list archives.
-------------------------------------------------------------------------
-r13876 | vlefevre | 2020-04-06 21:06:10 +0000 (Mon, 06 Apr 2020) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
+	Updated doc/texinfo.tex to 2022-09-14.01
 
-[src/mpfr-gmp.h] Updated FIXME about AC_FUNC_ALLOCA (in 2019-01, I
-already noticed a probable bug in the AC_FUNC_ALLOCA description,
-but forgot about it).
-------------------------------------------------------------------------
-r13875 | vlefevre | 2020-04-06 14:03:01 +0000 (Mon, 06 Apr 2020) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	Update from the texinfo Git repository.
+	  * The generated mpfr.html and mpfr.info files remain the same.
+	  * For mpfr.pdf, this version fixes all the issues I've reported.
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r13874 | vlefevre | 2020-04-06 14:02:01 +0000 (Mon, 06 Apr 2020) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2022-09-07  Vincent Lefevre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] Formatted output functions: added a comment with the URL
-of the bug report.
-------------------------------------------------------------------------
-r13873 | vlefevre | 2020-04-06 13:59:38 +0000 (Mon, 06 Apr 2020) | 3 lines
-Changed paths:
-   M /trunk/NEWS
-   M /trunk/doc/mpfr.texi
+	[doc/README.dev] New C2x draft (N3054).
 
-[NEWS,doc/mpfr.texi] Documented the improvement in the formatted output
-functions (mpfr_printf, etc.) with an empty precision field, about
-trailing zeros.
-------------------------------------------------------------------------
-r13868 | vlefevre | 2020-04-03 10:56:49 +0000 (Fri, 03 Apr 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tsub.c
+2022-09-05  Vincent Lefevre  <vincent at vinc17.net>
 
-[tests/tsub.c] Corrected MPFR_ASSERTD to MPFR_ASSERTN.
-------------------------------------------------------------------------
-r13867 | vlefevre | 2020-04-03 10:54:16 +0000 (Fri, 03 Apr 2020) | 9 lines
-Changed paths:
-   M /trunk/tests/tsub.c
+	[doc/README.dev] Updated "To make a release" (about texinfo.tex).
 
-[tests/tsub.c] Reverted r13862 and fixed the test_ubf test: A random
-precision was too small, so that an input for the test was not computed
-exactly (I had modified the values of the inputs for better tests, but
-forgot to change the minimum precision). Also check that the inputs are
-computed exactly (which is what I often do, but here, I had forgotten),
-in order to make errors like the above one easier to understand in case
-the test will have to be modified later.
-Note: With the incorrect input, the mpfr_sub1 result and flags were
-actually correct, so that this was only a bug in the test.
-------------------------------------------------------------------------
-r13866 | zimmerma | 2020-04-03 06:32:52 +0000 (Fri, 03 Apr 2020) | 2 lines
-Changed paths:
-   M /trunk/INSTALL
+	[autogen.sh] Added a comment about files we handle in the repository.
 
-[INSTALL] update CompCert instructions
+2022-09-05  Vincent Lefevre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13865 | zimmerma | 2020-04-02 20:35:33 +0000 (Thu, 02 Apr 2020) | 2 lines
-Changed paths:
-   M /trunk/INSTALL
+	[doc/.gitignore] Removed /texinfo.tex since it is in the repository.
 
-[INSTALL] fixed CompCert instructions
+	doc/texinfo.tex was added to the Subversion repository on 2017-11-27
+	and the svn:ignore property should have been updated at this time,
+	but I forgot.
 
-------------------------------------------------------------------------
-r13864 | vlefevre | 2020-04-02 15:55:35 +0000 (Thu, 02 Apr 2020) | 6 lines
-Changed paths:
-   M /trunk/tests/tset_ld.c
+2022-08-27  Vincent Lefevre  <vincent at vinc17.net>
 
-[tests/tset_ld.c] Reverted r13858: the check_overflow test was already
-in MPFR 4.0.1 and was succeeding on armv5tejl-unknown-linux-gnueabi,
-which had mpfr_cv_c_long_double_format='IEEE double, little endian'.
-The issue should be investigated.
-Note: MPFR_LDBL_MANT_DIG may be larger than the actual number of bits,
-but this should not cause a failure in the tests.
-------------------------------------------------------------------------
-r13863 | vlefevre | 2020-04-02 15:43:04 +0000 (Thu, 02 Apr 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_ld_2exp.c
+	[doc/README.dev] Changed "trunk" (Subversion) to "master" (Git).
 
-[tests/tget_ld_2exp.c] Proper fix: the bug20180904 test was designed
-for the x87 extended precision, so enable it only in this case.
-------------------------------------------------------------------------
-r13862 | zimmerma | 2020-04-02 14:06:30 +0000 (Thu, 02 Apr 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tsub.c
+2022-08-27  Vincent Lefevre  <vincent at vinc17.net>
 
-[tests/tsub.c] modify test_ubf() to always hit a current failing test
+	[doc/README.dev] Update from master, minus a few things.
 
-------------------------------------------------------------------------
-r13861 | vlefevre | 2020-04-02 13:49:16 +0000 (Thu, 02 Apr 2020) | 2 lines
-Changed paths:
-   M /trunk/configure.ac
+	From the master version, removed
+	  * text that do not apply to the 4.1 branch;
+	  * an obsolete URL.
 
-[configure.ac] Fixed the change done in r13853 (about removed macros),
-making the code simpler and more maintainable at the same time.
-------------------------------------------------------------------------
-r13860 | zimmerma | 2020-04-02 11:48:28 +0000 (Thu, 02 Apr 2020) | 2 lines
-Changed paths:
-   M /trunk/INSTALL
+2022-08-27  Vincent Lefevre  <vincent at vinc17.net>
 
-[INSTALL] added configuration for CompCert test
+	Added m4/ax_pthread.m4 file, and related updates.
 
-------------------------------------------------------------------------
-r13859 | vlefevre | 2020-04-02 11:31:51 +0000 (Thu, 02 Apr 2020) | 2 lines
-Changed paths:
-   M /trunk/src/set_ld.c
+	This adds m4/ax_pthread.m4 from master and changes the following files:
+	* acinclude.m4: updated comment; set CXX and CXXFLAGS.
+	* configure.ac: moved AC_CANONICAL_HOST earlier and added a comment
+	  (this was needed with an intermediate version of ax_pthread.m4,
+	  but this change is kept as this should be better).
+	* doc/README.dev: update about the AX_PTHREAD macro.
 
-[src/set_ld.c] Removed obsolete workaround due to LDBL_MAX being buggy
-on old i386 systems (the tests were not using this workaround).
-------------------------------------------------------------------------
-r13858 | zimmerma | 2020-04-02 11:12:28 +0000 (Thu, 02 Apr 2020) | 3 lines
-Changed paths:
-   M /trunk/tests/tget_ld_2exp.c
-   M /trunk/tests/tset_ld.c
+2022-08-27  Vincent Lefevre  <vincent at vinc17.net>
 
-[tests/tget_ld_2exp.c] fixed for case where long double = double
-[tests/tset_ld.c]      likewise
+	Added tools/export-release sh script from master.
 
-------------------------------------------------------------------------
-r13857 | vlefevre | 2020-04-02 10:58:19 +0000 (Thu, 02 Apr 2020) | 2 lines
-Changed paths:
-   M /trunk/configure.ac
+	Export some release identified by a Git tag in order to get a tarball.
 
-[configure.ac] Moved MPFR_CONFIGS invocation: MPFR_CONFIGS uses LDFLAGS,
-thus must be invoked after LDFLAGS has been determined completely.
-------------------------------------------------------------------------
-r13856 | zimmerma | 2020-04-02 10:32:50 +0000 (Thu, 02 Apr 2020) | 2 lines
-Changed paths:
-   M /trunk/INSTALL
+2022-08-27  Vincent Lefevre  <vincent at vinc17.net>
 
-[INSTALL] now all tests pass with compcert
+	[tools/ck-copyright-notice] Better indentation.
 
-------------------------------------------------------------------------
-r13855 | zimmerma | 2020-04-02 10:19:13 +0000 (Thu, 02 Apr 2020) | 2 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	[tools/ck-copyright-notice] Support the future ChangeLog format.
 
-[acinclude.m4] added missing LDFLAGS for long double test
+2022-08-27  Vincent Lefevre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13854 | vlefevre | 2020-04-02 09:56:46 +0000 (Thu, 02 Apr 2020) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	[tools/ck-copyright-notice] Better error handling.
 
-[doc/README.dev] Added HAVE_ALLOCA description.
-------------------------------------------------------------------------
-r13853 | vlefevre | 2020-04-02 09:53:55 +0000 (Thu, 02 Apr 2020) | 2 lines
-Changed paths:
-   M /trunk/configure.ac
+	Note: One currently gets a failure with the future ChangeLog format,
+	obtained with gitlog-to-changelog (via "make ChangeLog").
 
-[configure.ac] Do not remove the HAVE_ALLOCA macro, which is now used
-by MPFR to determine the default MPFR_ALLOCA_MAX value.
-------------------------------------------------------------------------
-r13852 | zimmerma | 2020-04-02 09:51:09 +0000 (Thu, 02 Apr 2020) | 2 lines
-Changed paths:
-   M /trunk/INSTALL
+2022-08-27  Vincent Lefevre  <vincent at vinc17.net>
 
-[INSTALL] update CompCert instructions
+	Support ChangeLog regeneration from a Git working tree.
 
-------------------------------------------------------------------------
-r13851 | vlefevre | 2020-04-02 09:45:31 +0000 (Thu, 02 Apr 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tversion.c
+	* Added tools/gitlog-to-changelog file from Gnulib.
+	* Makefile.am: added a rule for the Changelog file.
 
-[tests/tversion.c] Output whether MPFR is built with the GMP build,
-and the MPFR_ALLOCA_MAX value if not.
-------------------------------------------------------------------------
-r13850 | vlefevre | 2020-04-02 09:24:44 +0000 (Thu, 02 Apr 2020) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
+	Needed as the GNU MPFR repository has been converted to Git.
 
-[src/mpfr-gmp.h] If HAVE_ALLOCA is not defined, i.e. if alloca() is
-not available (as detected by the configure script), then set the
-default MPFR_ALLOCA_MAX value to 0 so that alloca() is not used.
-------------------------------------------------------------------------
-r13849 | zimmerma | 2020-04-02 06:57:07 +0000 (Thu, 02 Apr 2020) | 2 lines
-Changed paths:
-   M /trunk/INSTALL
+	The '%B%n' format string is used rather than the default '%s%n%b%n'
+	because Git's commit message convention is not always followed
+	(in particular before the conversion of the repository to Git).
 
-[INSTALL] added instructions for CompCert
+	Note: In the future, if there is any change to do to a Git commit
+	message (typo, etc.), the --amend option could be used.
 
-------------------------------------------------------------------------
-r13848 | vlefevre | 2020-04-02 01:26:46 +0000 (Thu, 02 Apr 2020) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+2022-08-27  Vincent Lefevre  <vincent at vinc17.net>
 
-[doc/README.dev] Updated MPFR_ALLOCA_MAX description.
-------------------------------------------------------------------------
-r13847 | vlefevre | 2020-04-02 01:04:08 +0000 (Thu, 02 Apr 2020) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
+	[tools/announce-text] Update from master.
 
-[src/mpfr-gmp.h] When MPFR_ALLOCA_MAX = 0 (set at configure time),
-do not reference alloca() since we don't need it.
-------------------------------------------------------------------------
-r13844 | vlefevre | 2020-03-31 13:11:09 +0000 (Tue, 31 Mar 2020) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2022-08-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] About mpfr_printf with %Re and empty precision field,
-added a comment with URLs of the discussion and the bug report.
-------------------------------------------------------------------------
-r13840 | vlefevre | 2020-03-30 19:07:12 +0000 (Mon, 30 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/src/sub1.c
+	With wget, use the --no-config option.
 
-[src/sub1.c] Typo in a comment.
-------------------------------------------------------------------------
-r13839 | vlefevre | 2020-03-30 14:52:53 +0000 (Mon, 30 Mar 2020) | 3 lines
-Changed paths:
-   M /trunk/configure.ac
+	[INSTALL,doc/update-faq,tools/announce-text] With wget, use
+	the --no-config option as the user's .wgetrc file may significantly
+	change the behavior and possibly yield errors. See discussion at
+	<https://lists.debian.org/debian-user/2021/01/msg01021.html>.
 
-[configure.ac] Updated message output when the gmp.h vs libgmp test
-fails: another cause may be that LD_RUN_PATH is not honored (problem
-seen under OpenBSD 6.6 / gcc302.fsffrance.org).
-------------------------------------------------------------------------
-r13835 | vlefevre | 2020-03-27 17:36:26 +0000 (Fri, 27 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tset_sj.c
+2022-08-23  Vincent Lefevre  <vincent at vinc17.net>
 
-[tests/tset_sj.c] Forgot a "#ifndef NPRINTF_J" for printf("%jd",...).
-------------------------------------------------------------------------
-r13834 | vlefevre | 2020-03-27 15:45:17 +0000 (Fri, 27 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/src/set_uj.c
+	[codespell.ignore] Ignore RO and SIZ (codespell 2.2.0).
 
-[src/set_uj.c] Fixed underflow detection.
-------------------------------------------------------------------------
-r13833 | vlefevre | 2020-03-27 15:12:51 +0000 (Fri, 27 Mar 2020) | 2 lines
-Changed paths:
-   M /trunk/src/set_uj.c
+	Corrected spelling mistake found by codespell 2.2.0
 
-[src/set_uj.c] Added early overflow detection to avoid a possible
-integer overflow. Added a FIXME (incorrect underflow detection).
-------------------------------------------------------------------------
-r13832 | vlefevre | 2020-03-27 15:05:03 +0000 (Fri, 27 Mar 2020) | 6 lines
-Changed paths:
-   M /trunk/tests/tset_sj.c
+	doc/mpfr.texi: Updated the month.
 
-[tests/tset_sj.c] Added tests of mpfr_set_sj_2exp and mpfr_set_uj_2exp
-in precision 3 with integers from -31 to 31 and exponents MPFR_EXP_MIN,
-MPFR_EMIN_MIN-7 to MPFR_EMIN_MIN, MPFR_EMAX_MAX-7 to MPFR_EMAX_MAX,
-MPFR_EXP_MAX-7 to MPFR_EXP_MAX (like in tset_si.c, see r13808), but
-also exponents INTMAX_MIN and INTMAX_MAX. This shows bugs in set_uj.c,
-to be fixed...
-------------------------------------------------------------------------
-r13831 | vlefevre | 2020-03-27 14:17:10 +0000 (Fri, 27 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/src/set_sj.c
+2022-08-08  Vincent Lefevre  <vincent at vinc17.net>
 
-[src/set_sj.c] Coding style.
-------------------------------------------------------------------------
-r13830 | vlefevre | 2020-03-27 13:59:05 +0000 (Fri, 27 Mar 2020) | 4 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
-   M /trunk/src/mpfr-impl.h
+	version-ext.sh: replaced a remaining "sed" by "$SED".
 
-[src] Moved the definition of the numberof() macro from mpfr-gmp.h to
-mpfr-impl.h in order to always use our own. Also make sure that the
-type is signed, so that the value can be used in arbitrary expressions
-without the risk of silently switching to unsigned arithmetic.
-------------------------------------------------------------------------
-r13827 | vlefevre | 2020-03-26 12:58:24 +0000 (Thu, 26 Mar 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/texpm1.c
+	Thanks to Trevor Spiteri for noticing that.
 
-[tests/texpm1.c] Updated the bad_cases() parameters to increase the
-proportion of generated bad cases.
-------------------------------------------------------------------------
-r13826 | vlefevre | 2020-03-26 11:51:33 +0000 (Thu, 26 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tset_si.c
+2022-08-08  Vincent Lefevre  <vincent at vinc17.net>
 
-[tests/tset_si.c] Forgot a cast for MPFR_EXP_FSPEC argument.
-------------------------------------------------------------------------
-r13825 | vlefevre | 2020-03-26 10:07:00 +0000 (Thu, 26 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	version-ext.sh: handle the case where no Git branches are found.
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r13824 | vlefevre | 2020-03-26 10:00:46 +0000 (Thu, 26 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/dump.c
-   M /trunk/src/mpfr-impl.h
+	This should solve the issue reported on 2022-08-08 by Trevor Spiteri:
+	https://sympa.inria.fr/sympa/arc/mpfr/2022-08/msg00002.html
 
-Consistency: "a UBF" → "an UBF" since UBF stands for "unbounded float".
-------------------------------------------------------------------------
-r13823 | vlefevre | 2020-03-26 09:56:45 +0000 (Thu, 26 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+2022-08-08  Vincent Lefevre  <vincent at vinc17.net>
 
-[src/mpfr-impl.h] Updated UBF comment about aliasing rules.
-------------------------------------------------------------------------
-r13822 | vlefevre | 2020-03-26 09:53:55 +0000 (Thu, 26 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	For version-ext.sh, use "$SED" instead of "sed".
 
-[src/mpfr-impl.h] Updated UBF comment about aliasing rules.
-------------------------------------------------------------------------
-r13821 | vlefevre | 2020-03-26 09:35:25 +0000 (Thu, 26 Mar 2020) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	* tests/Makefile.am: pass $SED to version-ext.sh.
+	* version-ext.sh: use $SED (default to "sed").
 
-[src/mpfr-impl.h] Bug fix (MPFR_ZEXP(x) as used for an assignment
-could yield undefined behavior on platforms where mpfr_exp_t has
-trap representations); this is also a general improvement.
-------------------------------------------------------------------------
-r13818 | vlefevre | 2020-03-26 02:45:48 +0000 (Thu, 26 Mar 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tsub.c
+2022-08-08  Vincent Lefevre  <vincent at vinc17.net>
 
-[tests/tsub.c] Avoid the build failure with -Werror=strict-aliasing by
-replacing x[…] by p[…] (but this doesn't eliminate the problem itself).
-------------------------------------------------------------------------
-r13816 | vlefevre | 2020-03-26 00:17:17 +0000 (Thu, 26 Mar 2020) | 5 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	Fixed version-ext.sh when in an origin/* remote branch.
 
-[src/mpfr-impl.h] UBF: updated comment: this breaks aliasing rules, but
-there isn't any other acceptable solution.
-Note: when trying to build MPFR without --enable-assert, with GCC and
-CFLAGS="-O2 -Werror=strict-aliasing", the compilation of tests/tsub.c
-currently fails because of that.
-------------------------------------------------------------------------
-r13815 | vlefevre | 2020-03-25 20:24:23 +0000 (Wed, 25 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tsub.c
+2022-07-06  Vincent Lefevre  <vincent at vinc17.net>
 
-[tests/tsub.c] Fixed tests on UBF.
-------------------------------------------------------------------------
-r13814 | vlefevre | 2020-03-25 20:04:16 +0000 (Wed, 25 Mar 2020) | 2 lines
-Changed paths:
-   M /trunk/src/sub1.c
+	[configure.ac] Update about GNU gold ld and LD_RUN_PATH.
 
-[src/sub1.c] Fixed underflow handling in case c small (can occur only
-with UBF).
-------------------------------------------------------------------------
-r13813 | vlefevre | 2020-03-25 19:40:39 +0000 (Wed, 25 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tfma.c
+	* Comment update: added URL of the upstream bug report.
+	* Mention the GNU gold linker in the warning.
 
-[tests/tfma.c] Minor correction.
-------------------------------------------------------------------------
-r13812 | vlefevre | 2020-03-25 19:39:40 +0000 (Wed, 25 Mar 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tfma.c
+2022-07-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tfma.c] Changed a RND_LOOP to RND_LOOP_NO_RNDF as the behavior
-with RNDF changed after a bug fix.
-------------------------------------------------------------------------
-r13811 | vlefevre | 2020-03-25 17:52:01 +0000 (Wed, 25 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tsub.c
+	Punctuation (missing comma after "however").
 
-[tests/tsub.c] Completed tests for UBF (currently fail).
-------------------------------------------------------------------------
-r13810 | vlefevre | 2020-03-25 17:28:45 +0000 (Wed, 25 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/src/sub1.c
+2022-06-13  Vincent Lefevre  <vincent at vinc17.net>
 
-[src/sub1.c] Bug fix for UBF and MPFR_RNDF.
-------------------------------------------------------------------------
-r13809 | vlefevre | 2020-03-25 17:07:02 +0000 (Wed, 25 Mar 2020) | 3 lines
-Changed paths:
-   M /trunk/src/set_si_2exp.c
-   M /trunk/src/set_ui_2exp.c
+	[README] Replaced "Subversion" by "Git".
 
-[src/set_{si,ui}_2exp.c] Bug fix in MPFR_LONG_WITHIN_LIMB defined case:
-added early underflow/overflow checking to avoid integer overflow or
-errors due to special exponent values.
-------------------------------------------------------------------------
-r13808 | vlefevre | 2020-03-25 16:55:37 +0000 (Wed, 25 Mar 2020) | 5 lines
-Changed paths:
-   M /trunk/tests/tset_si.c
+2022-06-11  Vincent Lefevre  <vincent at vinc17.net>
 
-[tests/tset_si.c] Added tests of mpfr_set_si_2exp and mpfr_set_ui_2exp
-in precision 3 with integers from -31 to 31 and exponents MPFR_EXP_MIN,
-MPFR_EMIN_MIN-7 to MPFR_EMIN_MIN, MPFR_EMAX_MAX-7 to MPFR_EMAX_MAX,
-MPFR_EXP_MAX-7 to MPFR_EXP_MAX, showing bugs in these functions when
-MPFR_LONG_WITHIN_LIMB is defined.
-------------------------------------------------------------------------
-r13807 | vlefevre | 2020-03-24 15:41:55 +0000 (Tue, 24 Mar 2020) | 3 lines
-Changed paths:
-   M /trunk/tests/tsub.c
+	Fixed tsprintf %a tests when GMP and libc produce different outputs.
 
-[tests/tsub.c] More tests on UBF. The results are not checked yet,
-but running the tests with UBsan could allow one to trigger bugs
-(such as the one fixed in r13806).
-------------------------------------------------------------------------
-r13806 | vlefevre | 2020-03-24 15:32:22 +0000 (Tue, 24 Mar 2020) | 3 lines
-Changed paths:
-   M /trunk/src/sub1.c
+	With some 32-bit mingw-w64 implementations, the GMP and libc
+	formatted output functions produce different outputs for %a (this
+	is not completely specified by the C standard). In the MPFR tests
+	introduced by commit 26fa003bc51fd75c180b7bca8070d66ceb53da62 on
+	2022-05-20, the comparison is done between the MPFR result, which
+	is based on GMP, and the libc result; hence a failure.
 
-[src/sub1.c] If exp_b = MPFR_EXP_MIN, an integer overflow may occur in
-the "MAX (aq, bq) + 2 <= diff_exp" branch. This is possible only with
-UBF. Fixed this bug with an early underflow detection in the UBF case.
-------------------------------------------------------------------------
-r13805 | vlefevre | 2020-03-24 13:47:38 +0000 (Tue, 24 Mar 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tfmma.c
+	So, changed the 4 concerned tests of tests/tsprintf.c to compare
+	the MPFR result with the GMP result (for the other tests on the
+	C native types, it is still better to compare MPFR with libc).
 
-[tests/tfmma.c] Added extreme_underflow test: before the r13798 bug fix,
-this was triggering an integer overflow.
-------------------------------------------------------------------------
-r13804 | vlefevre | 2020-03-24 12:41:29 +0000 (Tue, 24 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tsub.c
+	Bug report:
+	  https://sympa.inria.fr/sympa/arc/mpfr/2022-06/msg00004.html
 
-[tests/tsub.c] Corrected a function name.
-------------------------------------------------------------------------
-r13803 | vlefevre | 2020-03-24 11:27:52 +0000 (Tue, 24 Mar 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tsub.c
+2022-05-20  Vincent Lefevre  <vincent at vinc17.net>
 
-[tests/tsub.c] More tests on UBF, in particular with an exponent change
-(including subnormal → normal and normal → overflow due to that).
-------------------------------------------------------------------------
-r13802 | vlefevre | 2020-03-24 01:31:09 +0000 (Tue, 24 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tsub.c
+	Fixes related to the native types in the formatted output functions.
 
-[tests/tsub.c] Tests on UBF: underflow/overflow cases done.
-------------------------------------------------------------------------
-r13801 | vlefevre | 2020-03-23 16:05:46 +0000 (Mon, 23 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tsub.c
+	* doc/mpfr.texi: clarification for the formatted output functions.
+	* src/vasprintf.c:
+	    - Made case ordering consistent (no change of behavior).
+	    - The l length modifier is now supported with the native FP types
+	      (a, A, e, E, f, g, G conversion specifiers), as required by the
+	      ISO C standard on printf and other formatted output functions.
+	      As specified, it is just ignored.
+	      For that, to improve code maintainability, the CASE_LONG_ARG()
+	      macro was simplified: The c and s conversion specifiers are
+	      always supported by this macro (this is a potential fix for
+	      implementations with incomplete wide-character handling,
+	      without any guarantee to work). A MPFR_RET_NEVER_GO_HERE()
+	      for unsupported conversion specifiers has been added (as
+	      specinfo_is_valid() is consistent with this macro, one should
+	      effectively never reach this case).
+	    - The F conversion specifier as defined by the C standard is not
+	      supported by the GMP formatted output functions because it is
+	      already used as the type specifier for mpf_t (which comes before
+	      the conversion specifier). Let's take this fact into account.
+	      Note: this conversion specifier is still allowed with MPFR numbers
+	      (e.g., "%RF") to avoid breaking the compatibility (it has never
+	      been an issue).
+	* tests/tsprintf.c: added related tests.
 
-[tests/tsub.c] More tests on UBF.
-------------------------------------------------------------------------
-r13800 | vlefevre | 2020-03-23 15:40:48 +0000 (Mon, 23 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+2022-05-19  Vincent Lefevre  <vincent at vinc17.net>
 
-[src/mpfr-impl.h] UBF: reordered macro definitions.
-------------------------------------------------------------------------
-r13799 | vlefevre | 2020-03-23 15:38:06 +0000 (Mon, 23 Mar 2020) | 3 lines
-Changed paths:
-   M /trunk/src/add1.c
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/sub1.c
+	[tests/tnrandom.c] With mini-gmp, disable the tests that check the values.
 
-[src]
-  * mpfr-impl.h: define MPFR_UBF_GET_EXP macro.
-  * add1.c, sub1.c: use this macro.
-------------------------------------------------------------------------
-r13798 | vlefevre | 2020-03-23 15:13:34 +0000 (Mon, 23 Mar 2020) | 2 lines
-Changed paths:
-   M /trunk/src/sub1.c
+2022-05-18  Vincent Lefevre  <vincent at vinc17.net>
 
-[src/sub1.c] Detect an underflow case (before the main detection) to
-avoid a possible integer overflow with UBF.
-------------------------------------------------------------------------
-r13797 | vlefevre | 2020-03-23 13:19:56 +0000 (Mon, 23 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tsub.c
+	[tests/tnrandom.c] Check some mpfr_nrandom values to detect changes.
 
-[tests/tsub.c] Added comments.
-------------------------------------------------------------------------
-r13796 | vlefevre | 2020-03-23 13:13:10 +0000 (Mon, 23 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tsub.c
+	The values should be the same on different machines and with
+	different MPFR versions (or this would be an ABI change).
 
-[tests/tsub.c] First tests on UBF.
-------------------------------------------------------------------------
-r13795 | vlefevre | 2020-03-23 11:09:53 +0000 (Mon, 23 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/src/agm.c
+2022-05-10  Vincent Lefevre  <vincent at vinc17.net>
 
-[src/agm.c] Avoid a potential integer overflow with huge precisions.
-------------------------------------------------------------------------
-r13794 | vlefevre | 2020-03-16 10:57:40 +0000 (Mon, 16 Mar 2020) | 2 lines
-Changed paths:
-   M /trunk/src/root.c
+	doc/mpfr.texi: Updated the month.
 
-[src/root.c] Removed useless cast in a comparison, as both operands are
-non-negative.
-------------------------------------------------------------------------
-r13793 | vlefevre | 2020-03-16 10:53:56 +0000 (Mon, 16 Mar 2020) | 8 lines
-Changed paths:
-   M /trunk/src/rem1.c
+	[NEWS] Update.
 
-[src/rem1.c]
-  * Portability fix: when mpfr_exp_t <= long (which is the default),
-    an addition was done in unsigned integer arithmetic instead of
-    signed integer arithmetic, with a conversion back to a signed
-    type, i.e. with potentially implementation-defined behavior.
-    There could also be an integer overflow on huge-precision values
-    if mp_bitcnt_t > unsigned long.
-  * Updated a comment.
-------------------------------------------------------------------------
-r13792 | vlefevre | 2020-03-16 10:44:24 +0000 (Mon, 16 Mar 2020) | 8 lines
-Changed paths:
-   M /trunk/src/pow.c
+2022-05-10  Vincent Lefevre  <vincent at vinc17.net>
 
-[src/pow.c]
-  * Portability fix: when mpfr_exp_t <= long (which is the default),
-    an addition with a negative result was done in unsigned integer
-    arithmetic instead of signed integer arithmetic, with a conversion
-    back to a signed type, i.e. with implementation-defined behavior.
-    There could also be an integer overflow on huge-precision values
-    if mp_bitcnt_t > unsigned long.
-  * Updated comments.
-------------------------------------------------------------------------
-r13791 | vlefevre | 2020-03-16 10:34:26 +0000 (Mon, 16 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/src/cos.c
+	Improved 2 macros of the custom interface and updated manual.
 
-[src/cos.c] Updated a comment.
-------------------------------------------------------------------------
-r13790 | vlefevre | 2020-03-16 10:22:20 +0000 (Mon, 16 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/src/cos.c
+	* src/mpfr.h: The mpfr_custom_init() and mpfr_custom_move() macros
+	  could not be used in contexts where an expression was expected.
+	  This limitation was not necessary and is now removed.
+	* doc/mpfr.texi: In commit 743a63c480318f60ac2a953007bac08f37b7d71d,
+	  the manual was clarified about the macros of the custom interface,
+	  i.e. behaving like macros, which may evaluate arguments multiple
+	  times or none. This was incomplete and error prone, in addition
+	  to being undocumented in the current MPFR versions. Almost all
+	  issues have now been fixed (the only minor limitation is that the
+	  mpfr_custom_init_set() macro is not usable in contexts where an
+	  expression is expected, but this cannot yield unnoticed bugs).
+	  So, changed the manual to reflect these fixes and added an item
+	  in Section "API Compatibility" (also removed an obsolete comment
+	  about that from src/mpfr.h).
 
-[src/cos.c] Updated a comment.
-------------------------------------------------------------------------
-r13789 | vlefevre | 2020-03-16 10:07:34 +0000 (Mon, 16 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/src/const_log2.c
+2022-05-06  Vincent Lefevre  <vincent at vinc17.net>
 
-[src/const_log2.c] Corrected type for the return value of mpz_scan1.
-------------------------------------------------------------------------
-r13788 | vlefevre | 2020-03-13 17:48:24 +0000 (Fri, 13 Mar 2020) | 5 lines
-Changed paths:
-   M /trunk/doc/README.dev
-   M /trunk/tests/tests.c
+	Testsuite: C++11 compatibility (GCC's -Wliteral-suffix).
 
-[tests/tests.c] Revert a change done in r13783 for function bad_cases():
-  no longer fail if a generated value does not correspond to a bad case.
-  But fail if the MPFR_CHECK_BADCASES environment variable is defined
-  and too few bad cases are generated (less than 90%).
-[doc/README.dev] Document MPFR_CHECK_BADCASES.
-------------------------------------------------------------------------
-r13787 | vlefevre | 2020-03-13 16:40:17 +0000 (Fri, 13 Mar 2020) | 25 lines
-Changed paths:
-   M /trunk/tests/tatanh.c
-   M /trunk/tests/tests.c
-   M /trunk/tests/tlog1p.c
-   M /trunk/tests/trec_sqrt.c
+	With "g++ -Werror", several .c files in the "tests" directory were
+	yielding
 
-[tests] Update to test the ternary value in test5rm() when possible,
-and support the exact cases.
-  * tests.c:
-      - test5rm(): modified the prototype again and the behavior.
-        Now, either only one test is done and the ternary value is
-        not checked, or the test is done in the 5 rounding modes and
-        the ternary value is checked.
-      - data_check(): corresponding update; updated description.
-      - bad_cases(): test the exact cases too.
-  * tatanh.c: for the bad_cases() call, reduce emax to avoid errors in
-    the generation of bad cases due to the rounding of tanh(y) to 1,
-    which does not correspond to a bad case for atanh, but to an exact
-    case.
-  * tlog1p.c: for the bad_cases() call, reduce emax to avoid errors in
-    the generation of bad cases due to the rounding of expm1(y) to -1,
-    which does not correspond to a bad case for log1p, but to an exact
-    case.
-  * trec_sqrt.c: corrected the bad_cases() call to avoid negative
-    numbers.
-Note: the following tests
-  GMP_CHECK_RANDOMIZE=5 ./tacos
-  GMP_CHECK_RANDOMIZE=6 ./tatan
-  GMP_CHECK_RANDOMIZE=4 ./tcos
-currently fail, but because of a change in r13783 (see associated log
-for the reason). To be fixed later.
-------------------------------------------------------------------------
-r13786 | vlefevre | 2020-03-13 10:29:46 +0000 (Fri, 13 Mar 2020) | 5 lines
-Changed paths:
-   M /trunk/tests/tests.c
+	  error: invalid suffix on literal; C++11 requires a space between
+	  literal and string macro [-Werror=literal-suffix]
 
-[tests/tests.c] Modified the prototype of test5rm() to support a
-parameter "exact". Therefore the parameter "test_one" is now a boolean
-(the value 2 is no longer supported, as redundant with "exact"), and
-about data_check() with rnd = '*', the loop is now done in test5rm(),
-i.e. test5rm() is called with test_one being false.
-------------------------------------------------------------------------
-r13785 | vlefevre | 2020-03-12 17:33:07 +0000 (Thu, 12 Mar 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tsqrt.c
+2022-05-06  Vincent Lefevre  <vincent at vinc17.net>
 
-[tests/tsqrt.c] For bad_cases(), use the same pos and psup parameters
-as in troot.c for "rootn[2]", allowing inexact cases.
-------------------------------------------------------------------------
-r13784 | vlefevre | 2020-03-12 17:21:40 +0000 (Thu, 12 Mar 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tcbrt.c
+	Fixed issues with the macro versions of the custom interface.
 
-[tests/tcbrt.c] For bad_cases(), use the same pos and psup parameters
-as in troot.c for "rootn[3]", allowing inexact cases.
-------------------------------------------------------------------------
-r13783 | vlefevre | 2020-03-12 17:17:56 +0000 (Thu, 12 Mar 2020) | 19 lines
-Changed paths:
-   M /trunk/tests/tests.c
-   M /trunk/tests/troot.c
+	* src/mpfr.h:
+	    - fixed the mpfr_custom_* macros so that they behave like the
+	      associated functions (accept other types than those from the
+	      prototype, simulating implicit type conversion; evaluate each
+	      argument once);
+	    - avoid a -Wsign-conversion warning that could occur in user code
+	      (issue reported by Andreas Enge concerning PariTwine):
+	      added a cast in the mpfr_custom_get_size() macro so that a
+	      size_t * size_t product is done instead of mpfr_prec_t * size_t
+	      (where mpfr_prec_t is signed and size_t is unsigned, triggering
+	      a warning when GCC's -Wsign-conversion is used);
+	    - comments: changed "stack interface" and "mpfr_stack interface"
+	      to "(the) custom interface".
+	* src/stack_interface.c: in a comment, changed "mpfr_stack" to
+	  "custom interface".
+	* tests/tstckintc.c: added testcases for the macro/function mismatch
+	  issues, being careful with rules that are different in C and C++.
 
-[tests]
-  * tests.c, function bad_cases(): updated/added debug messages;
-    assume that the parameters are chosen in such a way that this
-    test always generates hard-to-round cases (including exact cases),
-    i.e. exit with an error if one does not get a bad case, otherwise
-    this can leave unexpected failures unnoticed (either due to a bug
-    in the MPFR library or due to poorly chosen parameters such as in
-    troot.c until now).
-    Note: ideally, this would require a proof, but it is better to get
-    (unlikely) spurious failures with a non-default GMP_CHECK_RANDOMIZE
-    value than missing important tests.
-  * troot.c, bad_cases() invocation:
-      - corrected the pos parameter: when n is even, it is useless to
-        generate a negative number as the function is not defined (the
-        inverse function generates a positive number, and the mismatch
-        now yields a failure due to the change in bad_cases); when n is
-        odd, generate as many negative numbers as positive ones.
-      - for n ≤ 5, reduce the psup parameter in order to also generate
-        inexact cases, instead of always exact cases.
-------------------------------------------------------------------------
-r13782 | vlefevre | 2020-03-12 16:17:38 +0000 (Thu, 12 Mar 2020) | 3 lines
-Changed paths:
-   M /trunk/tests/tests.c
+2022-04-07  Vincent Lefevre  <vincent at vinc17.net>
 
-[tests/tests.c] Added a TODO for bad_cases, as the exact cases are not
-tested yet. As a consequence, the bad_cases test added in tcbrt.c r13776
-is not really useful yet, as the cbrt bad cases are only exact cases.
-------------------------------------------------------------------------
-r13781 | vlefevre | 2020-03-12 15:48:34 +0000 (Thu, 12 Mar 2020) | 9 lines
-Changed paths:
-   M /trunk/tests/tests.c
+	doc/mpfr.texi: Updated the month.
 
-[tests/tests.c]
-  * test5rm: removed additional useless tests added in r6037 in the
-    case test_one true and rnd = MPFR_RNDZ or MPFR_RNDA, since the
-    description was a bit incorrect and this was used only by
-      - data/digamma, where this yielded only duplicate tests (mode *);
-      - data/li2, where mode z is used on a few tests and could be
-        replaced by mode Z (i.e. test_one false) if need be;
-    updated description and added details.
-  * data_check: corrected/updated description.
-------------------------------------------------------------------------
-r13780 | vlefevre | 2020-03-12 13:05:16 +0000 (Thu, 12 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tests.c
+2022-04-06  Vincent Lefevre  <vincent at vinc17.net>
 
-[tests/tests.c] Minor change in an initialization.
-------------------------------------------------------------------------
-r13779 | vlefevre | 2020-03-12 00:57:34 +0000 (Thu, 12 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tget_set_d128.c
-   M /trunk/tests/tget_set_d64.c
+	[src/log_ui.c] Updated comments to better understand that the code is correct.
 
-[tests/tget_set_{d64,d128}.c] Added a FIXME and improved a message.
-------------------------------------------------------------------------
-r13778 | vlefevre | 2020-03-12 00:44:26 +0000 (Thu, 12 Mar 2020) | 4 lines
-Changed paths:
-   M /trunk/acinclude.m4
+2022-04-04  Vincent Lefevre  <vincent at vinc17.net>
 
-[acinclude.m4] Added a FIXME: in case of cross-compiling, the guess
-"DPD" can be wrong, e.g. for the build with MinGW under Linux. One
-does not get a failure just because of other issues in the code,
-forcing the portable implementation of the decimal functions.
-------------------------------------------------------------------------
-r13776 | vlefevre | 2020-03-11 15:22:13 +0000 (Wed, 11 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tcbrt.c
+	[src/root.c] Updated a comment for mpfr_rootn_ui.
 
-Added bad_cases tests for mpfr_cbrt.
-------------------------------------------------------------------------
-r13775 | vlefevre | 2020-03-11 15:12:09 +0000 (Wed, 11 Mar 2020) | 4 lines
-Changed paths:
-   M /trunk/src/cbrt.c
+	This comment was correct for mpfr_root, but I forgot to update it when
+	changing this function to mpfr_rootn_ui (where this case differs) in
+	commit 117c726a863e243634c8e5fbaae0265cac90a4a1.
 
-[src/cbrt.c] Improved the algorithm in the case the precision of the
-input is larger than 3n, where n is the precision of the output, + 1
-if the rounding mode is MPFR_RNDN: instead of truncating the output,
-call mpz_root on the truncated input.
-------------------------------------------------------------------------
-r13774 | vlefevre | 2020-03-11 13:29:03 +0000 (Wed, 11 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tcbrt.c
+2022-04-04  Vincent Lefevre  <vincent at vinc17.net>
 
-[tests/tcbrt.c] Test the ternary value on other exact cases.
-------------------------------------------------------------------------
-r13773 | vlefevre | 2020-03-11 13:23:28 +0000 (Wed, 11 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tcbrt.c
+	[tests/tpow.c] Corrected messages.
 
-[tests/tcbrt.c] Test the ternary value on special cases.
-------------------------------------------------------------------------
-r13772 | vlefevre | 2020-03-11 10:36:43 +0000 (Wed, 11 Mar 2020) | 5 lines
-Changed paths:
-   M /trunk/src/cbrt.c
+2022-04-04  Vincent Lefevre  <vincent at vinc17.net>
 
-[src/cbrt.c] Description of the algorithm: improvement; corrected the
-end, which was incorrect and did not match the code (the comment was
-introduced in r2057 and was already incorrect in the round-down case;
-then the round-to-nearest case was improved in r2070, but the comment
-was not updated).
-------------------------------------------------------------------------
-r13771 | vlefevre | 2020-03-11 10:18:02 +0000 (Wed, 11 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/src/cbrt.c
+	In the tests, fixed "randlimb () % 1", mistaken for "randlimb () & 1".
 
-[src/cbrt.c] Description of the algorithm: correction; added a TODO.
-------------------------------------------------------------------------
-r13769 | vlefevre | 2020-03-10 16:43:17 +0000 (Tue, 10 Mar 2020) | 3 lines
-Changed paths:
-   M /trunk/src/cbrt.c
+	This occurred only in tests/tfmma.c (5 occurrences), with the
+	consequence of fewer cases of different kinds in the tests.
 
-[src/cbrt.c] Description of the algorithm: corrected indentation;
-renamed variable r to t in order to avoid confusion with the code
-(where r has a different meaning).
-------------------------------------------------------------------------
-r13768 | vlefevre | 2020-03-10 16:35:08 +0000 (Tue, 10 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/src/cbrt.c
+	Such a kind of mistake is now detected by mpfrlint (commit 02a17d21a).
 
-[src/cbrt.c] Clarified a comment.
-------------------------------------------------------------------------
-r13767 | vlefevre | 2020-03-10 16:12:46 +0000 (Tue, 10 Mar 2020) | 2 lines
-Changed paths:
-   M /trunk/src/cbrt.c
+2022-04-04  Vincent Lefevre  <vincent at vinc17.net>
 
-[src/cbrt.c] Resolved the second FIXME and simplified the code
-(basically by removing duplicate code).
-------------------------------------------------------------------------
-r13766 | vlefevre | 2020-03-10 15:38:20 +0000 (Tue, 10 Mar 2020) | 4 lines
-Changed paths:
-   M /trunk/src/cbrt.c
+	mpfrlint: detect "% 1" (modulo 1), which always gives 0.
 
-[src/cbrt.c] Description of the algorithm:
-  * Since there was no upper bound on s, let's remove the upper bound
-    on m (this now matches the code).
-  * Replaced the FIXME by one due to the lack of upper bound on s.
-------------------------------------------------------------------------
-r13765 | vlefevre | 2020-03-10 15:20:11 +0000 (Tue, 10 Mar 2020) | 2 lines
-Changed paths:
-   M /trunk/src/cbrt.c
+	This is probably mistaken for "& 1" or "% 2", as currently in
+	"tests/tfmma.c".
 
-[src/cbrt.c] Added another FIXME as the code does not match the
-algorithm described in a comment.
-------------------------------------------------------------------------
-r13764 | vlefevre | 2020-03-10 15:07:10 +0000 (Tue, 10 Mar 2020) | 2 lines
-Changed paths:
-   M /trunk/src/cbrt.c
+	(same as commit 2a90f0c91b35b23bd85a8a9ceb23426e3b36b91b)
 
-[src/cbrt.c] Improved a condition to avoid operations that correspond
-to a no-op.
-------------------------------------------------------------------------
-r13763 | vlefevre | 2020-03-10 14:24:45 +0000 (Tue, 10 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/src/cbrt.c
+2022-03-30  Vincent Lefevre  <vincent at vinc17.net>
 
-[src/cbrt.c] Added an assertion.
-------------------------------------------------------------------------
-r13762 | vlefevre | 2020-03-10 14:15:11 +0000 (Tue, 10 Mar 2020) | 2 lines
-Changed paths:
-   M /trunk/src/cbrt.c
+	Fixed version-ext.sh, in particular when used after "./autogen.sh".
 
-[src/cbrt.c] Code cleanup and simplification. Added logging messages and
-a FIXME about a comment (coming from r2057 with its associated code).
-------------------------------------------------------------------------
-r13761 | vlefevre | 2020-03-10 13:43:04 +0000 (Tue, 10 Mar 2020) | 2 lines
-Changed paths:
-   M /trunk/src/cbrt.c
+	After running autogen.sh, version-ext.sh incorrectly detected files
+	as modified. Solution: refresh the git index before git diff-index.
 
-[src/cbrt.c] Removed a useless cast on a comparison operand, since
-both operands are non-negative.
-------------------------------------------------------------------------
-r13760 | vlefevre | 2020-03-10 13:38:06 +0000 (Tue, 10 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/src/atan.c
+2022-03-30  Vincent Lefevre  <vincent at vinc17.net>
 
-[src/atan.c] Added assertions.
-------------------------------------------------------------------------
-r13759 | vlefevre | 2020-03-10 13:12:09 +0000 (Tue, 10 Mar 2020) | 2 lines
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[acinclude.m4] Fix/improve MPFR_CHECK_LIBM and MPFR_CHECK_LIBQUADMATH.
 
-[tools/mpfrlint] Workaround to Debian bug 953369 in libpython3.8-minimal
-for the codespell invocation.
-------------------------------------------------------------------------
-r13758 | vlefevre | 2020-03-09 15:31:45 +0000 (Mon, 09 Mar 2020) | 3 lines
-Changed paths:
-   M /trunk/src/eint.c
+	With a GCC snapshot, -Werror=infinite-recursion was yielding an
+	error in AC_CHECK_LIB for function "main". So, define MPFR_HAVE_LIB
+	to be used instead of AC_CHECK_LIB when it is not needed to test any
+	function. So, use it in MPFR_CHECK_LIBM and MPFR_CHECK_LIBQUADMATH.
+	Also updated MPFR_CHECK_LIBM from the current libtool.m4 code, as
+	done in the past.
 
-[src/eint.c] Bug fix: possible integer overflow with some
-C implementations (or some _MPFR_PREC_FORMAT / _MPFR_EXP_FORMAT values)
-due to the use of incorrect integer types.
-------------------------------------------------------------------------
-r13757 | vlefevre | 2020-03-09 14:41:06 +0000 (Mon, 09 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/src/eint.c
+2022-01-06  Vincent Lefevre  <vincent at vinc17.net>
 
-[src/eint.c] Added other logging messages.
-------------------------------------------------------------------------
-r13756 | vlefevre | 2020-03-09 14:36:19 +0000 (Mon, 09 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/src/eint.c
+	Copyright notice update: added 2022.
 
-[src/eint.c] Added some logging messages.
-------------------------------------------------------------------------
-r13755 | zimmerma | 2020-03-09 09:54:57 +0000 (Mon, 09 Mar 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tsin.c
+	Command used:
+	  perl -pi -e 's/ (\d{4}-)?(2021)(?= Free Software)/
+	               " ".($1||"$2-").($2+1)/e' **/*(^/)
+	under zsh.
+	Removed 2021 from the example in the doc/README.dev file.
 
-[tests/tsin.c] added one test
+2021-12-26  Vincent Lefevre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13753 | vlefevre | 2020-03-04 15:14:31 +0000 (Wed, 04 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/src/sub1.c
+	Corrected style (spurious space before comma).
 
-[src/sub1.c] cancel: also log its value; range checking/tracking.
-------------------------------------------------------------------------
-r13752 | vlefevre | 2020-03-04 14:38:54 +0000 (Wed, 04 Mar 2020) | 3 lines
-Changed paths:
-   M /trunk/src/cmp2.c
+2021-12-26  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/cmp2.c] Added a comment giving the range of the value returned
-in "cancel" and explaining why there is no integer overflow in the
-computation of this value.
-------------------------------------------------------------------------
-r13751 | vlefevre | 2020-03-04 14:28:29 +0000 (Wed, 04 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/src/cmp2.c
+	gnu style
 
-[src/cmp2.c] Comment: some absolute values are not needed (again).
-------------------------------------------------------------------------
-r13750 | vlefevre | 2020-03-04 14:26:40 +0000 (Wed, 04 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/src/cmp2.c
+2021-11-25  Vincent Lefevre  <vincent at vinc17.net>
 
-[src/cmp2.c] Minor correction for |EXP(b) - EXP(c)| >= MPFR_EXP_MAX.
-------------------------------------------------------------------------
-r13749 | vlefevre | 2020-03-04 14:24:49 +0000 (Wed, 04 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/src/cmp2.c
+	Move code for git info to its own shell script "version-ext.sh".
 
-[src/cmp2.c] Better explanation when |EXP(b) - EXP(c)| >= MPFR_EXP_MAX.
-------------------------------------------------------------------------
-r13748 | vlefevre | 2020-03-03 15:09:21 +0000 (Tue, 03 Mar 2020) | 4 lines
-Changed paths:
-   M /trunk/src/cmp2.c
+	* New version-ext.sh file: sh script to output MPFR version information
+	  for a Git working tree (old code from tests/Makefile.am).
+	* tests/Makefile.am: replace some output_info code by the use of this
+	  script.
+	* Makefile.am: add version-ext.sh to EXTRA_DIST as a consequence
+	  (a comment explains why).
+	* README: list this new version-ext.sh file as a consequence.
 
-[src/cmp2.c] Finished the review of mpfr_cmp2: simplified the code even
-more; corrected/updated comments (in the case high_dif = 0, one can have
-dif = 1 if c has entirely been taken into account, so that the comment
-"dif > 1 here" was incorrect; only dif >= 1 is needed anyway).
-------------------------------------------------------------------------
-r13747 | vlefevre | 2020-03-03 14:17:32 +0000 (Tue, 03 Mar 2020) | 2 lines
-Changed paths:
-   M /trunk/src/cmp2.c
+2021-11-25  Vincent Lefevre  <vincent at vinc17.net>
 
-[src/cmp2.c] Changed high_dif to type int since it is manipulated like
-a boolean. Updated comments.
-------------------------------------------------------------------------
-r13746 | vlefevre | 2020-03-02 17:02:51 +0000 (Mon, 02 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/src/cmp2.c
+	Another fix in the code for git info output by "make check".
 
-[src/cmp2.c] Simplified the mpfr_cmp2 code and updated comments.
-------------------------------------------------------------------------
-r13745 | vlefevre | 2020-03-02 15:55:03 +0000 (Mon, 02 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/src/cmp2.c
+	tests/Makefile.am: in output_info, replaced "grep" by "$(GREP)".
 
-[src/cmp2.c] Updated comments.
-------------------------------------------------------------------------
-r13744 | zimmerma | 2020-03-02 10:46:10 +0000 (Mon, 02 Mar 2020) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr.h
+2021-11-25  Vincent Lefevre  <vincent at vinc17.net>
 
-[src/mpfr.h] added comment
+	Fixed git info output by "make check".
 
-------------------------------------------------------------------------
-r13743 | vlefevre | 2020-03-02 10:05:18 +0000 (Mon, 02 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/src/mpfr.h
+	tests/Makefile.am: when discarding excluded branches, the match should
+	be done on the full branch name, not a subword; so, added the -x grep
+	option (specified by POSIX).
 
-[src/mpfr.h] _MPFR_PREC_FORMAT and _MPFR_EXP_FORMAT: improved comment.
-------------------------------------------------------------------------
-r13742 | vlefevre | 2020-03-02 09:59:04 +0000 (Mon, 02 Mar 2020) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr.h
+2021-11-22  Vincent Lefevre  <vincent at vinc17.net>
 
-[src/mpfr.h] _MPFR_PREC_FORMAT and _MPFR_EXP_FORMAT: added a detailed
-comment (the previous comment was not obsolete, but misleading).
-------------------------------------------------------------------------
-r13741 | zimmerma | 2020-03-02 09:19:31 +0000 (Mon, 02 Mar 2020) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr.h
+	Add git info for "make check".
 
-[src/mpfr.h] removed obsolete comment (_MPFR_PREC_FORMAT=3 is the default
-	     under Linux x86_64)
+	tests/Makefile.am: in output_info, add git info:
+	  * the detected branch, which also works in detached HEAD state
+	    (<branch>-root tags are used to find the correct branch,
+	    by excluding branches created after the current HEAD);
+	  * the total commit count;
+	  * the commit id (hash);
+	  * " (modified)" when the working tree has been modified
+	    (compared to HEAD).
 
-------------------------------------------------------------------------
-r13740 | zimmerma | 2020-03-01 18:07:02 +0000 (Sun, 01 Mar 2020) | 2 lines
-Changed paths:
-   M /trunk/src/rem1.c
-   M /trunk/src/sin.c
+2021-10-24  Vincent Lefevre  <vincent at vinc17.net>
 
-[src/sin.c] increase initial precision even more
+	Updated README due to the migration to Inria GitLab.
 
-------------------------------------------------------------------------
-r13739 | vlefevre | 2020-03-01 00:22:52 +0000 (Sun, 01 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tpow.c
+	doc/mpfr.texi: Updated the month.
 
-[tests/tpow.c] Replaced mpfr_cmp by !mpfr_equal_p for NaN detection.
-------------------------------------------------------------------------
-r13738 | vlefevre | 2020-03-01 00:19:05 +0000 (Sun, 01 Mar 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tsin.c
+2021-10-24  Vincent Lefevre  <vincent at vinc17.net>
 
-[tests/tsin.c] Replaced obsolete function mpfr_mul_2exp by mpfr_mul_2ui.
-------------------------------------------------------------------------
-r13737 | zimmerma | 2020-02-29 13:07:12 +0000 (Sat, 29 Feb 2020) | 2 lines
-Changed paths:
-   M /trunk/src/sin.c
+	mpfrlint: update for git.
 
-[src/sin.c] increase initial precision when x is large
+	This is used to check that the doc/mpfr.texi UPDATED-MONTH value is
+	up-to-date by comparing it with the date of the latest commit.
 
-------------------------------------------------------------------------
-r13736 | zimmerma | 2020-02-29 11:04:14 +0000 (Sat, 29 Feb 2020) | 10 lines
-Changed paths:
-   M /trunk/src/rem1.c
+2021-10-24  Vincent Lefevre  <vincent at vinc17.net>
 
-[src/rem1.c] workaround for efficiency bug in mpz_powm_ui, which was making
-argument reduction in mpfr_sin for huge x very slow.
+	In mpfr.texi, added a "@." to avoid a warning from mpfrlint.
 
-Before:
-$ ./mfv5 -p113 -e16384 -d-2 mpfr_sin
- mpfr_sin:	 3289620 / 3576511.59 / 6841956
+	Note: This is not needed at the end of a paragraph like here, but
+	this is a general warning, just in case text is added or moved.
 
-After this commit:
- mpfr_sin:	 166868 / 182661.01 / 343224
+2021-10-24  Vincent Lefevre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13735 | zimmerma | 2020-02-29 10:55:26 +0000 (Sat, 29 Feb 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tpow.c
+	mpfr.texi cleanup: removed the obsolete @refill command.
 
-[tests/tpow.c] added one test
+	This command was needed in the past, but it now generates a warning
+	"@refill is obsolete" (as of Texinfo 6.8 - 2021-07-03).
+	It is no longer needed, as least since Texinfo 4.2:
+	https://ftp.gnu.org/old-gnu/Manuals/texinfo-4.2/html_node/Refilling-Paragraphs.html
 
-------------------------------------------------------------------------
-r13734 | zimmerma | 2020-02-29 09:25:06 +0000 (Sat, 29 Feb 2020) | 4 lines
-Changed paths:
-   M /trunk/tools/mbench/mfv5.cc
+2021-09-16  Vincent Lefèvre  <vincent at vinc17.net>
 
-added value -2 for option -d to generate random number with exponent
-exactly e. Example:
-$ mfv5 -p113 -e16384 -d-2 -v mpfr_sin
+	[doc/mpfr.texi] Updated the month.
 
-------------------------------------------------------------------------
-r13733 | zimmerma | 2020-02-28 15:29:10 +0000 (Fri, 28 Feb 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tpow.c
+2021-09-16  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tpow.c] added a test
+	[doc/mpfr.texi] Corrected garbled mpfr_set* description.
 
-------------------------------------------------------------------------
-r13732 | zimmerma | 2020-02-28 15:20:42 +0000 (Fri, 28 Feb 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tsin.c
+	Thanks to Rob for noticing:
+	  https://sympa.inria.fr/sympa/arc/mpfr/2021-09/msg00003.html
 
-[tests/tsin.c] fixed and completed check_binary128()
+	The cause is a sentence that was inserted at the wrong place in r8225
+	(2012-06-25).
 
-------------------------------------------------------------------------
-r13731 | vlefevre | 2020-02-28 15:07:26 +0000 (Fri, 28 Feb 2020) | 1 line
-Changed paths:
-   M /trunk/src/cmp2.c
+	(merged changeset r14580 from the trunk)
 
-[src/cmp2.c] Started to review mpfr_cmp2. Minor changes.
-------------------------------------------------------------------------
-r13730 | vlefevre | 2020-02-28 13:19:58 +0000 (Fri, 28 Feb 2020) | 1 line
-Changed paths:
-   M /trunk/src/cmp2.c
+2021-09-13  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/cmp2.c] Detailed a comment concerning UBF.
-------------------------------------------------------------------------
-r13727 | vlefevre | 2020-02-27 13:35:30 +0000 (Thu, 27 Feb 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tsin.c
+	[configure.ac] Reverted r14572, which was solving an issue about the
+	ordering of macros with ax_pthread.m4 29.
 
-[tests/tsin.c] Cleanup of the latest test (note: mpfr_equal_p is better
-than mpfr_cmp as it makes the test fail on a NaN result).
-------------------------------------------------------------------------
-r13726 | zimmerma | 2020-02-27 13:24:12 +0000 (Thu, 27 Feb 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tsin.c
+	But the change done in ax_pthread.m4 29
+	  https://github.com/autoconf-archive/autoconf-archive/commit/2567e0ce0f3a11b535c6b527386197fb49ff172b
+	was incorrect (see comments at this URL) and was reverted in
+	ax_pthread.m4 31:
+	  https://github.com/autoconf-archive/autoconf-archive/commit/59008cc7f85e1982eb298e1c424c2e6ad5942c4a
+	(Debian/unstable had the buggy version during a couple of weeks).
 
-[tests/tsin.c] added one test with precision 128
+2021-09-07  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13725 | vlefevre | 2020-02-27 10:53:50 +0000 (Thu, 27 Feb 2020) | 1 line
-Changed paths:
-   M /trunk/src/mpfr.h
+	[tests/tests.c] Fixed bad_cases when y is ±0 (rare case).
 
-[src/mpfr.h] Updated a comment (underscore version of attribute name).
-------------------------------------------------------------------------
-r13724 | vlefevre | 2020-02-27 10:45:30 +0000 (Thu, 27 Feb 2020) | 2 lines
-Changed paths:
-   M /trunk/tools/mpfrlint
+	(merged changeset r14570 from the trunk, with GMP_CHECK_RANDOMIZE value
+	in a comment changed for the current revision in the 4.1 branch)
 
-[tools/mpfrlint] Detect the use of the non-underscore version of the
-attribute names in mpfr.h (see README.dev).
-------------------------------------------------------------------------
-r13723 | vlefevre | 2020-02-25 17:26:07 +0000 (Tue, 25 Feb 2020) | 2 lines
-Changed paths:
-   M /trunk/doc/README.dev
-   M /trunk/src/mpfr.h
+2021-09-07  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr.h] Use the underscore version of the attribute names.
-[doc/README.dev] Added information on this subject.
-------------------------------------------------------------------------
-r13722 | vlefevre | 2020-02-25 16:17:57 +0000 (Tue, 25 Feb 2020) | 1 line
-Changed paths:
-   M /trunk/TODO
+	[configure.ac] Avoid an issue with ordering of macros we don't use
+	explicitly, which appears with ax_pthread.m4 29, i.e. with
+	  https://github.com/autoconf-archive/autoconf-archive/commit/2567e0ce0f3a11b535c6b527386197fb49ff172b
 
-[TODO] Added item on GNU Automake and -I options.
-------------------------------------------------------------------------
-r13721 | vlefevre | 2020-02-14 09:29:07 +0000 (Fri, 14 Feb 2020) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	(merged changeset r14481 from the trunk)
 
-[src/mpfr-impl.h] Removed an incorrect comment before MPFR_TMP_INIT1
-(this macro does not allocate anything, and MPFR_TMP_INIT just after
-can allocate more than 1 limb).
-------------------------------------------------------------------------
-r13720 | vlefevre | 2020-02-14 09:23:00 +0000 (Fri, 14 Feb 2020) | 1 line
-Changed paths:
-   M /trunk/TODO
+2021-09-07  Vincent Lefèvre  <vincent at vinc17.net>
 
-[TODO] About the use of MPFR_MANT(x).
-------------------------------------------------------------------------
-r13719 | vlefevre | 2020-02-13 11:49:50 +0000 (Thu, 13 Feb 2020) | 1 line
-Changed paths:
-   M /trunk/TODO
+	Get rid of obsolescent AC_HEADER_TIME. Cleanup about sys/time.h usage.
 
-[TODO] Typo.
-------------------------------------------------------------------------
-r13718 | vlefevre | 2020-02-12 15:15:56 +0000 (Wed, 12 Feb 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tcmpabs.c
+	The AC_HEADER_TIME macro is obsolescent in autoconf 2.69 (2012),
+	and autoconf 2.71 (2021) outputs a warning, which makes autogen.sh
+	fail due to "--warnings=all,error", so let's avoid the warnings.
+	This macro defines TIME_WITH_SYS_TIME, used only in tests/tests.c
+	(but actually not needed). We actually have two cases:
+	  1. HAVE_GETTIMEOFDAY is defined: we use gettimeofday(), which
+	     needs <sys/time.h>.
+	  2. Otherwise: we use time(), which needs <time.h>.
 
-[tests/tcmpabs.c] Added missing tests of mpfr_cmpabs with NaN.
-------------------------------------------------------------------------
-r13717 | vlefevre | 2020-02-12 15:12:10 +0000 (Wed, 12 Feb 2020) | 5 lines
-Changed paths:
-   M /trunk/tests/tcmpabs.c
+	Based on that, we can simplify the condition in tests/tests.c for
+	the inclusion of time-related headers, and we no longer need to
+	check the <sys/time.h> availability. If gettimeofday() is defined
+	but <sys/time.h> is not available (which shouldn't occur), then
+	the current gettimeofday() usage may be incorrect anyway.
 
-[tests/tcmpabs.c] For mpfr_cmpabs: like mpfr_cmpabs_ui, do each test
-in 4 different contexts, combinations of:
-  * flags all unset or flags all set;
-  * usual exponent range or reduced exponent range.
-Minor corrections in the old tests.
-------------------------------------------------------------------------
-r13716 | vlefevre | 2020-02-12 14:59:24 +0000 (Wed, 12 Feb 2020) | 4 lines
-Changed paths:
-   M /trunk/tests/tcmpabs.c
+	Changes:
+	  * acinclude.m4:
+	      - no longer use AC_HEADER_TIME;
+	      - no longer check the sys/time.h header.
+	  * tests/tests.c: simplify the inclusion of time-related headers.
 
-[tests/tcmpabs.c] For mpfr_cmpabs_ui: do each test in 4 different
-contexts, combinations of:
-  * flags all unset or flags all set;
-  * usual exponent range or reduced exponent range.
-------------------------------------------------------------------------
-r13715 | zimmerma | 2020-02-12 13:49:46 +0000 (Wed, 12 Feb 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tcmpabs.c
+	(merged changeset r14479 from the trunk)
 
-[tests/tcmpabs.c] added tests for mpfr_cmpabs_ui
+2021-06-01  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13714 | vlefevre | 2020-02-12 13:38:47 +0000 (Wed, 12 Feb 2020) | 4 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[tests/tests.c] fixed bug introduced in r13787, which invalidated data_check
+	in some cases
 
-[src/mpfr-impl.h]
-  * MPFR_ALIAS: use the comma operator instead of "do ... while (0)"
-    so that this macro can be used in an expression context.
-  * MPFR_TMP_INIT_ABS, MPFR_TMP_INIT_NEG: use MPFR_ALIAS.
-------------------------------------------------------------------------
-r13713 | vlefevre | 2020-02-12 13:25:50 +0000 (Wed, 12 Feb 2020) | 1 line
-Changed paths:
-   M /trunk/src/mpfr.h
+	(merged changeset r14531 from the trunk)
 
-[src/mpfr.h] Added prototype for mpfr_cmpabs_ui.
-------------------------------------------------------------------------
-r13712 | vlefevre | 2020-02-12 13:10:07 +0000 (Wed, 12 Feb 2020) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2021-05-17  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] Added mpfr_cmpabs_ui to Section "Added Functions"
-(API Compatibility).
-------------------------------------------------------------------------
-r13711 | vlefevre | 2020-02-12 13:04:50 +0000 (Wed, 12 Feb 2020) | 1 line
-Changed paths:
-   M /trunk/tests/trint.c
+	[tests/tsprintf.c] Commented out a test added in r14524.
 
-[tests/trint.c] Replaced obsolete mpfr_cmp_abs by mpfr_cmpabs.
-------------------------------------------------------------------------
-r13710 | vlefevre | 2020-02-12 12:57:37 +0000 (Wed, 12 Feb 2020) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	This test of length specifier 'P' with an empty precision field (only a
+	period) fails in the 4.1 branch due to an issue fixed only in the trunk
+	(r14155). In the 4.1 branch, the MPFR manual contains contradictory
+	information about this, which can be regarded as unspecified behavior.
 
-[doc/mpfr.texi] Typo from r13708.
-------------------------------------------------------------------------
-r13709 | zimmerma | 2020-02-12 12:52:50 +0000 (Wed, 12 Feb 2020) | 2 lines
-Changed paths:
-   M /trunk/NEWS
+2021-05-17  Vincent Lefèvre  <vincent at vinc17.net>
 
-[NEWS] mention new mpfr_cmpabs_ui
+	Formatted output functions (mpfr_*printf): bug fix; added tests.
 
-------------------------------------------------------------------------
-r13708 | zimmerma | 2020-02-12 12:51:55 +0000 (Wed, 12 Feb 2020) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/Makefile.am
-   M /trunk/src/cmpabs.c
-   A /trunk/src/cmpabs_ui.c
+	  * src/vasprintf.c: in buffer_cat, replaced incorrect assertion len > 0
+	    by a test.
+	    Note that len == 0 is possible when outputting an integer 0
+	    (either a native one or mpfr_prec_t) with precision field = 0.
+	    The consequence of this bug:
+	      - In debug mode (MPFR_ASSERTD assertion checking), one would get
+	        an assertion failure.
+	      - Otherwise, there should be no side effects since the code was
+	        valid for len == 0, possibly except with LTO (very unlikely,
+	        though).
+	    This incorrect assertion was added on 2009-03-13 in r6099.
+	  * tests/tsprintf.c: added tests of native integer 0 and mpfr_prec_t
+	    (specifier 'P') with precision field 0, both yielding a call to
+	    buffer_cat with len = 0.
 
-added new function mpfr_cmpabs_ui
+	(merged changesets r14514,14520-14521 from the trunk)
 
-------------------------------------------------------------------------
-r13707 | zimmerma | 2020-02-12 12:25:47 +0000 (Wed, 12 Feb 2020) | 2 lines
-Changed paths:
-   M /trunk/src/Makefile.am
-   D /trunk/src/cmp_abs.c
-   A /trunk/src/cmpabs.c (from /trunk/src/cmp_abs.c:13706)
+2021-05-17  Vincent Lefèvre  <vincent at vinc17.net>
 
-renamed cmp_abs.c to cmpabs.c
+	[doc/mpfr.texi] Updated the month.
 
-------------------------------------------------------------------------
-r13706 | vlefevre | 2020-02-12 11:25:53 +0000 (Wed, 12 Feb 2020) | 1 line
-Changed paths:
-   M /trunk/TODO
+2021-05-17  Vincent Lefèvre  <vincent at vinc17.net>
 
-[TODO] Typo.
-------------------------------------------------------------------------
-r13705 | vlefevre | 2020-02-12 11:23:59 +0000 (Wed, 12 Feb 2020) | 3 lines
-Changed paths:
-   M /trunk/TODO
+	[doc/mpfr.texi] Punctuation.
 
-[TODO] + Serialization / Deserialization (suggested by Frédéric Pétrot).
-I've also added an idea of implementation to reuse most of the code and
-change very little.
-------------------------------------------------------------------------
-r13704 | vlefevre | 2020-02-12 01:38:57 +0000 (Wed, 12 Feb 2020) | 4 lines
-Changed paths:
-   M /trunk/src/ubf.c
+	(merged changeset r14515 from the trunk)
 
-[src/ubf.c]
-  * Optimized mpfr_init_get_zexp() for _MPFR_EXP_FORMAT <= 3
-    (as in the default configuration).
-  * Updated comments.
-------------------------------------------------------------------------
-r13703 | vlefevre | 2020-02-12 01:15:34 +0000 (Wed, 12 Feb 2020) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+2021-04-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr-impl.h] Added UBF-related comments.
-------------------------------------------------------------------------
-r13702 | vlefevre | 2020-02-12 00:37:04 +0000 (Wed, 12 Feb 2020) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	Fixed bug in mpfr_get_str_ndigits.
 
-[src/mpfr-impl.h] Added UBF-related comments.
-------------------------------------------------------------------------
-r13701 | vlefevre | 2020-02-12 00:04:34 +0000 (Wed, 12 Feb 2020) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	* src/get_str.c: use MPFR_SAVE_EXPO_MARK / MPFR_SAVE_EXPO_FREE to fix
+	  2 issues in mpfr_get_str_ndigits: the inexact flag could be raised
+	  (bug reported by Pierre Chatelier[*]); undefined behavior in a very
+	  reduced exponent range.
+	* tests/tget_str.c: check the above issues in the tests.
 
-[src/mpfr-impl.h] Added a comment for UBF and types.
-------------------------------------------------------------------------
-r13700 | vlefevre | 2020-02-11 14:38:49 +0000 (Tue, 11 Feb 2020) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[*] https://sympa.inria.fr/sympa/arc/mpfr/2021-04/msg00000.html
 
-[src/mpfr-impl.h] Added a comment for INEXPOS.
-------------------------------------------------------------------------
-r13699 | vlefevre | 2020-02-11 14:36:00 +0000 (Tue, 11 Feb 2020) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	(merged changeset r14488 from the trunk)
 
-[src/mpfr-impl.h] INEXPOS and VSIGN code improvement.
-------------------------------------------------------------------------
-r13698 | vlefevre | 2020-02-11 14:33:58 +0000 (Tue, 11 Feb 2020) | 1 line
-Changed paths:
-   M /trunk/src/modf.c
-   M /trunk/src/sinh_cosh.c
+2021-03-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-Removed duplicate macro definitions.
-------------------------------------------------------------------------
-r13696 | vlefevre | 2020-02-11 11:44:01 +0000 (Tue, 11 Feb 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tfmma.c
+	[doc/mpfr.texi] Updated the month.
 
-[tests/tfmma.c] Use mpfr_set_str instead of mpfr_set_d.
-------------------------------------------------------------------------
-r13695 | vlefevre | 2020-02-11 10:06:46 +0000 (Tue, 11 Feb 2020) | 1 line
-Changed paths:
-   M /trunk/src/sub1.c
+2021-03-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sub1.c] Got rid of some goto's. Added log messages.
-------------------------------------------------------------------------
-r13694 | vlefevre | 2020-02-10 15:17:34 +0000 (Mon, 10 Feb 2020) | 3 lines
-Changed paths:
-   M /trunk/src/sub1.c
+	[tests/{tset_si.c,tset_sj.c}] Fix when -DMPFR_USE_NO_MACRO is used.
 
-[src/sub1.c] Bug fix: the underflow case (possible with UBF, e.g. via
-mpfr_fmma or mpfr_fmms) was not tested in the case c small.
-Note: this completes r11418 and r12752 for underflow detection.
-------------------------------------------------------------------------
-r13693 | vlefevre | 2020-02-10 15:05:19 +0000 (Mon, 10 Feb 2020) | 2 lines
-Changed paths:
-   M /trunk/src/sub1.c
+	The mpfr_get_exp() function checks that the argument is a regular
+	number, but the corresponding macro doesn't. The test code was
+	calling mpfr_get_exp() on 0, thus failed with MPFR_USE_NO_MACRO
+	defined. Here, the code was correct with the macro, because the
+	value was not used for the particular case 0.
 
-[src/sub1.c] Added log messages and checked the UBF cases yielding
-exp_b == MPFR_EXP_MAX and/or diff_exp == MPFR_EXP_MAX.
-------------------------------------------------------------------------
-r13692 | vlefevre | 2020-02-08 10:59:39 +0000 (Sat, 08 Feb 2020) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	This is fixed by testing 0 earlier (and doing a goto, but the code
+	has fewer tests and should be simpler to understand). Moreover,
+	mpfr_get_exp has been replaced by MPFR_GET_EXP, so that the argument
+	is checked with --enable-assert.
 
-[src/vasprintf.c] Added log messages for MPFR_PREC_ARG ('P' specifier).
-------------------------------------------------------------------------
-r13690 | vlefevre | 2020-02-08 02:21:15 +0000 (Sat, 08 Feb 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	(merged changeset r14464 from the trunk)
 
-[tests/tsprintf.c] Fixed some tests: the 'P' specifier was missing.
-------------------------------------------------------------------------
-r13689 | vlefevre | 2020-02-06 10:23:15 +0000 (Thu, 06 Feb 2020) | 6 lines
-Changed paths:
-   M /trunk/src/fmma.c
+2021-03-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/fmma.c] Reverted the mpfr_check_range from r13688.
-The exponent range has not been extended by mpfr_fmma_aux, and the
-result comes from mpfr_add, mpfr_sub, or mpfr_set_1_2, which return
-results in the current range. If the result of mpfr_fmma_aux is not
-in the current range, this is due to a bug in one of these functions.
-Note: mpfr_add and mpfr_sub accept UBF inputs.
-------------------------------------------------------------------------
-r13688 | zimmerma | 2020-02-06 08:45:25 +0000 (Thu, 06 Feb 2020) | 3 lines
-Changed paths:
-   M /trunk/src/fmma.c
-   M /trunk/tests/tfmma.c
+	In mpfr.h, fixed some macros implementing functions. Added tests.
 
-[src/fmma.c] fixed bug (result might be out of exponent range)
-[tests/tfmma.c] added non-regression test
+	* src/mpfr.h:
+	    - Macros mpfr_nan_p, mpfr_inf_p, mpfr_zero_p, mpfr_regular_p,
+	      mpfr_get_prec, mpfr_get_exp, mpfr_copysign and mpfr_signbit
+	      yielded a compilation error when the argument (the 3rd one
+	      for mpfr_copysign) was of type void *, for instance.
+	    - Macro mpfr_set had the same issue with the 2nd argument, but
+	      also evaluated this argument twice. The fix was possible only
+	      with a GNU extension. Thus this macro is available only with
+	      GCC and compatible compilers (see __GNUC__); otherwise, the
+	      mpfr_set function is used.
+	* src/ubf.c: added a missing cast (this issue became visible with
+	  the fix of the mpfr_get_prec macro).
+	* tests/mpfr-test.h: added macros for the new tests (tests with
+	  void * arguments are invalid in C++ and they trigger a warning
+	  with GCC's -Wc++-compat, so we need to avoid these issues).
+	* tests/*.c: added tests to check that some calls (potentially
+	  macros) behave like function calls. In detail:
+	    - tcopysign.c: mpfr_copysign and mpfr_setsign.
+	    - texceptions.c: mpfr_get_prec.
+	    - tisnan.c: mpfr_nan_p, mpfr_inf_p, mpfr_number_p (though not
+	      currently concerned here), mpfr_zero_p and mpfr_regular_p.
+	    - tset.c: mpfr_set.
+	    - tset_exp.c: mpfr_get_exp.
+	* doc/mpfr.texi: added some text in Section "Custom Interface" to
+	  clarify the usage of macros for this interface.
 
-------------------------------------------------------------------------
-r13685 | vlefevre | 2020-02-03 23:37:28 +0000 (Mon, 03 Feb 2020) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	(merged changesets r14447-14463 from the trunk)
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r13684 | vlefevre | 2020-02-03 23:36:35 +0000 (Mon, 03 Feb 2020) | 4 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2021-03-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] In the paragraph "MPFR internal data such as flags",
-no longer mention caches as caches may now also be global when MPFR
-has been compiled as thread safe (locking is used). Caches have been
-discussed earlier in the section anyway.
-------------------------------------------------------------------------
-r13683 | vlefevre | 2020-01-23 10:05:59 +0000 (Thu, 23 Jan 2020) | 1 line
-Changed paths:
-   M /trunk/INSTALL
+	Completed tests/tcopysign.c to test with a reused argument.
 
-[INSTALL] URL update.
-------------------------------------------------------------------------
-r13681 | vlefevre | 2020-01-20 16:02:54 +0000 (Mon, 20 Jan 2020) | 1 line
-Changed paths:
-   M /trunk/ChangeLog
+	(merged part of changeset r14227 from the trunk)
 
-ChangeLog update with "LC_ALL=en_US.UTF8 TZ=UTC svn log -rHEAD:0 -v".
-------------------------------------------------------------------------
-r13678 | vlefevre | 2020-01-20 15:36:00 +0000 (Mon, 20 Jan 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/Makefile.am
+2021-02-15  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/Makefile.am] Updated a comment; in particular, replaced the two
-obsolete gmane.org URLs by lists.gnu.org/archive/html/bug-gnulib ones.
-------------------------------------------------------------------------
-r13677 | vlefevre | 2020-01-20 15:25:19 +0000 (Mon, 20 Jan 2020) | 1 line
-Changed paths:
-   M /trunk/INSTALL
+	[src/jyn_asympt.c] Fixed bug when s=0 at the end of the for loop.
+	[tests/mpfr-test.h] Added mpfr_cmp_si_2exp0 macro (check NaN).
+	[tests/tj1.c] Added testcase.
+	(merged changesets r14431,14434 from the trunk)
 
-[INSTALL] Removed reference to a gmane.org URL, which no longer exists.
-------------------------------------------------------------------------
-r13674 | vlefevre | 2020-01-16 13:21:16 +0000 (Thu, 16 Jan 2020) | 1 line
-Changed paths:
-   M /trunk/src/beta.c
-   M /trunk/tests/ttanh.c
+	[src/digamma.c] Fixed a bug in mpfr_digamma_reflection.
+	[tests/tdigamma.c] Added testcase.
+	(merged changesets r14430,14432-14433 from the trunk)
 
-[src/beta.c,tests/ttanh.c] towards → toward (for consistency).
-------------------------------------------------------------------------
-r13671 | vlefevre | 2020-01-10 16:24:30 +0000 (Fri, 10 Jan 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tfprintf.c
-   M /trunk/tests/tprintf.c
+2021-02-10  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/{tfprintf.c,tprintf.c}] Updated an error message about MinGW,
-now output only if MinGW is used.
-------------------------------------------------------------------------
-r13670 | vlefevre | 2020-01-10 16:17:16 +0000 (Fri, 10 Jan 2020) | 2 lines
-Changed paths:
-   M /trunk/doc/README.dev
+	[src/jyn_asympt.c] Fixed bug when sin(z)±cos(z) rounds to 0.
+	[tests/tj0.c] Testcase.
+	(merged changesets r14400,14405 from the trunk)
 
-[doc/README.dev] Concerning MinGW, added a sentence about the use of
-the __USE_MINGW_ANSI_STDIO macro, confirming the existing note.
-------------------------------------------------------------------------
-r13669 | vlefevre | 2020-01-10 16:12:53 +0000 (Fri, 10 Jan 2020) | 1 line
-Changed paths:
-   M /trunk/TODO
+	[src/digamma.c] Fixed bug in mpfr_digamma_positive when t-u is zero.
+	[tests/tdigamma.c] Testcase.
+	(merged changesets r14399,14401-14404 from the trunk)
 
-[TODO] Removed obsolete item on MinGW and -D__USE_MINGW_ANSI_STDIO.
-------------------------------------------------------------------------
-r13668 | vlefevre | 2020-01-10 16:11:46 +0000 (Fri, 10 Jan 2020) | 1 line
-Changed paths:
-   M /trunk/INSTALL
+	[src/digamma.c] Fixed bug in mpfr_digamma: if x is large, the
+	intermediate precision can be large. This issue may still occur,
+	but with a very low probability.
+	[tests/tdigamma.c] Testcase.
+	(merged changesets r14391-14398 from the trunk)
 
-[INSTALL] Update concerning MinGW and the __USE_MINGW_ANSI_STDIO macro.
-------------------------------------------------------------------------
-r13667 | vlefevre | 2020-01-10 10:30:58 +0000 (Fri, 10 Jan 2020) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2021-02-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] Updated mpfr_get_str documentation, correcting r13666
-(we still need the extra two bytes and to take - at Inf@ into account).
-------------------------------------------------------------------------
-r13666 | zimmerma | 2020-01-10 09:21:11 +0000 (Fri, 10 Jan 2020) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src,tests] Consistency: in prototypes, changed
+	  const mpfr_t          to  mpfr_srcptr,
+	  mpfr_t                to  mpfr_ptr,
+	  mpz_t                 to  mpz_ptr,
+	  mpfr_random_deviate_t to mpfr_random_deviate_ptr,
+	in order to silence a warning from the future GCC 11 -Warray-parameter
+	option (included in -Wall).
 
-[mpfr.texi] fixed out-dated documentation for mpfr_get_str
+	This warning was making the MPFR build fail in combination with -Werror
+	(useful for testing), and there was no simple way to get rid of it in a
+	way independent of the GCC version (due to GCC bug 86134 / 99014, which
+	could also silently change the detected features in configure tests).
+	And as this inconsistency was also present in mpfr.h, this fix may also
+	benefit the build of software that uses MPFR.
 
-------------------------------------------------------------------------
-r13665 | vlefevre | 2020-01-09 18:01:59 +0000 (Thu, 09 Jan 2020) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	(merged changesets r14103,14154 from the trunk)
 
-[doc/README.dev] In the latest update, forgot to remove the CC=...
-------------------------------------------------------------------------
-r13664 | vlefevre | 2020-01-09 17:57:53 +0000 (Thu, 09 Jan 2020) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+2021-01-03  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/README.dev] Update about the test under Wine.
-------------------------------------------------------------------------
-r13663 | vlefevre | 2020-01-09 14:37:48 +0000 (Thu, 09 Jan 2020) | 7 lines
-Changed paths:
-   M /trunk/acinclude.m4
-   M /trunk/configure.ac
+	[doc/mpfr.texi] Updated the month.
 
-[acinclude.m4,configure.ac]
-  * Moved the code that tries to determine the format of double from
-    configure.ac to acinclude.m4 in MPFR_CONFIGS (as required), just
-    before the one for long double.
-  * Added a FIXME comment: This code uses AC_RUN_IFELSE, which cannot
-    run the test when cross-compiling; use a test like for long double
-    instead.
-------------------------------------------------------------------------
-r13662 | vlefevre | 2020-01-09 14:27:27 +0000 (Thu, 09 Jan 2020) | 1 line
-Changed paths:
-   M /trunk/acinclude.m4
+	Copyright notice update: added 2021 with
+	  perl -pi -e 's/ (\d{4}-)?(2020)(?= Free Software)/
+	               " ".($1||"$2-").($2+1)/e' **/*(^/)
+	under zsh. Removed 2020 from the example in the doc/README.dev file.
 
-[acinclude.m4] English usage.
-------------------------------------------------------------------------
-r13661 | vlefevre | 2020-01-09 14:25:30 +0000 (Thu, 09 Jan 2020) | 2 lines
-Changed paths:
-   M /trunk/acinclude.m4
-   M /trunk/configure.ac
+2020-09-28  Vincent Lefèvre  <vincent at vinc17.net>
 
-[acinclude.m4] Updated messages about the format of "long double".
-[configure.ac] Ditto for "double". Added missing AC_MSG_RESULT.
-------------------------------------------------------------------------
-r13658 | vlefevre | 2020-01-09 11:37:25 +0000 (Thu, 09 Jan 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tversion.c
+	[src/set_z_exp.c] Fixed overflow/underflow detection in exponent ranges
+	  where emax < 0 or emin >= 0 (bug introduced in r14147).
+	[tests/tset_z_exp.c] Added some tests in a reduced exponent range for
+	  the bug fixed here (and improved existing tests).
+	Note: this bug was detected with mini-gmp (for which mpfr_set_z_2exp is
+	used more often because a long does not fit into a limb).
+	(merged changesets r14146-14150 of src/set_z_2exp.c and
+	tests/tset_z_2exp.c from the trunk)
 
-[tests/tversion.c] Updated/fixed an output line to match the other ones.
-------------------------------------------------------------------------
-r13657 | vlefevre | 2020-01-09 10:23:44 +0000 (Thu, 09 Jan 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+2020-09-25  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tsprintf.c] Added tests for %Ra and %Rb on the value 0 with an
-empty precision field.
-------------------------------------------------------------------------
-r13656 | vlefevre | 2020-01-09 10:17:04 +0000 (Thu, 09 Jan 2020) | 3 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[src/set_z_exp.c] Fixed possible integer overflows with huge mpz_t.
+	  Note: In practice, they may occur only with a 32-bit ABI. Moreover,
+	  with a usual compilation, they should have no effect, assuming the
+	  processor does signed addition and multiplication mod 2^32 (as usual).
+	  However, UBsan will detect the issue, and LTO might have unpredictable
+	  effects.
 
-[src/vasprintf.c] Fixed output precision bug with decimal output
-(i.e. e, f and g conversion specifiers) and an empty precision field
-on the value 0.
-------------------------------------------------------------------------
-r13655 | vlefevre | 2020-01-09 09:44:00 +0000 (Thu, 09 Jan 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[tests/tset_z_exp.c] Added testcases, enabled only when the
+	MPFR_CHECK_LARGEMEM environment variable is set.
 
-[tests/tsprintf.c] Also added tests with %Rf, %Rg and %#Rg on 0.
-------------------------------------------------------------------------
-r13654 | vlefevre | 2020-01-09 09:39:45 +0000 (Thu, 09 Jan 2020) | 2 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	(merged changesets r14136-14145 of src/set_z_2exp.c and
+	tests/tset_z_2exp.c from the trunk)
 
-[tests/tsprintf.c] Added a test with %Re and an empty precision field
-on the value 0; it currently fails.
-------------------------------------------------------------------------
-r13653 | vlefevre | 2020-01-08 18:28:42 +0000 (Wed, 08 Jan 2020) | 1 line
-Changed paths:
-   M /trunk/tools/ck-copyright-notice
+2020-09-17  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tools/ck-copyright-notice] Added a note about the mpfr.pc.in file.
-------------------------------------------------------------------------
-r13652 | vlefevre | 2020-01-08 18:11:13 +0000 (Wed, 08 Jan 2020) | 4 lines
-Changed paths:
-   M /trunk/BUGS
-   M /trunk/INSTALL
-   M /trunk/Makefile.am
-   M /trunk/NEWS
-   M /trunk/README
-   M /trunk/TODO
-   M /trunk/acinclude.m4
-   M /trunk/configure.ac
-   M /trunk/doc/FAQ.html
-   M /trunk/doc/Makefile.am
-   M /trunk/doc/README.dev
-   M /trunk/doc/check-typography
-   M /trunk/doc/faq.xsl
-   M /trunk/doc/mpfr.texi
-   M /trunk/examples/can_round.c
-   M /trunk/examples/divworst.c
-   M /trunk/examples/rndo-add.c
-   M /trunk/examples/sample.c
-   M /trunk/examples/threads.c
-   M /trunk/examples/version.c
-   M /trunk/src/Makefile.am
-   M /trunk/src/abort_prec_max.c
-   M /trunk/src/acos.c
-   M /trunk/src/acosh.c
-   M /trunk/src/add.c
-   M /trunk/src/add1.c
-   M /trunk/src/add1sp.c
-   M /trunk/src/add1sp1_extracted.c
-   M /trunk/src/add_d.c
-   M /trunk/src/add_ui.c
-   M /trunk/src/agm.c
-   M /trunk/src/ai.c
-   M /trunk/src/amd/mparam.h
-   M /trunk/src/arm/mparam.h
-   M /trunk/src/asin.c
-   M /trunk/src/asinh.c
-   M /trunk/src/atan.c
-   M /trunk/src/atan2.c
-   M /trunk/src/atanh.c
-   M /trunk/src/bernoulli.c
-   M /trunk/src/beta.c
-   M /trunk/src/buildopt.c
-   M /trunk/src/cache.c
-   M /trunk/src/cbrt.c
-   M /trunk/src/check.c
-   M /trunk/src/clear.c
-   M /trunk/src/clears.c
-   M /trunk/src/cmp.c
-   M /trunk/src/cmp2.c
-   M /trunk/src/cmp_abs.c
-   M /trunk/src/cmp_d.c
-   M /trunk/src/cmp_ld.c
-   M /trunk/src/cmp_si.c
-   M /trunk/src/cmp_ui.c
-   M /trunk/src/comparisons.c
-   M /trunk/src/const_catalan.c
-   M /trunk/src/const_euler.c
-   M /trunk/src/const_log2.c
-   M /trunk/src/const_pi.c
-   M /trunk/src/constant.c
-   M /trunk/src/copysign.c
-   M /trunk/src/cos.c
-   M /trunk/src/cosh.c
-   M /trunk/src/cot.c
-   M /trunk/src/coth.c
-   M /trunk/src/csc.c
-   M /trunk/src/csch.c
-   M /trunk/src/d_div.c
-   M /trunk/src/d_sub.c
-   M /trunk/src/digamma.c
-   M /trunk/src/dim.c
-   M /trunk/src/div.c
-   M /trunk/src/div_2exp.c
-   M /trunk/src/div_2si.c
-   M /trunk/src/div_2ui.c
-   M /trunk/src/div_d.c
-   M /trunk/src/div_ui.c
-   M /trunk/src/dot.c
-   M /trunk/src/dump.c
-   M /trunk/src/eint.c
-   M /trunk/src/eq.c
-   M /trunk/src/erandom.c
-   M /trunk/src/erf.c
-   M /trunk/src/erfc.c
-   M /trunk/src/exceptions.c
-   M /trunk/src/exp.c
-   M /trunk/src/exp10.c
-   M /trunk/src/exp2.c
-   M /trunk/src/exp3.c
-   M /trunk/src/exp_2.c
-   M /trunk/src/expm1.c
-   M /trunk/src/extract.c
-   M /trunk/src/factorial.c
-   M /trunk/src/fits_intmax.c
-   M /trunk/src/fits_s.h
-   M /trunk/src/fits_sint.c
-   M /trunk/src/fits_slong.c
-   M /trunk/src/fits_sshort.c
-   M /trunk/src/fits_u.h
-   M /trunk/src/fits_uint.c
-   M /trunk/src/fits_uintmax.c
-   M /trunk/src/fits_ulong.c
-   M /trunk/src/fits_ushort.c
-   M /trunk/src/fma.c
-   M /trunk/src/fmma.c
-   M /trunk/src/fms.c
-   M /trunk/src/fpif.c
-   M /trunk/src/frac.c
-   M /trunk/src/free_cache.c
-   M /trunk/src/frexp.c
-   M /trunk/src/gamma.c
-   M /trunk/src/gamma_inc.c
-   M /trunk/src/gammaonethird.c
-   M /trunk/src/gen_inverse.h
-   M /trunk/src/generic/coverage/mparam.h
-   M /trunk/src/generic/mparam.h
-   M /trunk/src/get_d.c
-   M /trunk/src/get_d128.c
-   M /trunk/src/get_d64.c
-   M /trunk/src/get_exp.c
-   M /trunk/src/get_f.c
-   M /trunk/src/get_float128.c
-   M /trunk/src/get_flt.c
-   M /trunk/src/get_ld.c
-   M /trunk/src/get_q.c
-   M /trunk/src/get_si.c
-   M /trunk/src/get_sj.c
-   M /trunk/src/get_str.c
-   M /trunk/src/get_ui.c
-   M /trunk/src/get_uj.c
-   M /trunk/src/get_z.c
-   M /trunk/src/get_z_exp.c
-   M /trunk/src/gmp_op.c
-   M /trunk/src/grandom.c
-   M /trunk/src/hypot.c
-   M /trunk/src/ieee_floats.h
-   M /trunk/src/init.c
-   M /trunk/src/init2.c
-   M /trunk/src/inits.c
-   M /trunk/src/inits2.c
-   M /trunk/src/inp_str.c
-   M /trunk/src/int_ceil_log2.c
-   M /trunk/src/invert_limb.h
-   M /trunk/src/invsqrt_limb.h
-   M /trunk/src/isinf.c
-   M /trunk/src/isinteger.c
-   M /trunk/src/isnan.c
-   M /trunk/src/isnum.c
-   M /trunk/src/isqrt.c
-   M /trunk/src/isregular.c
-   M /trunk/src/iszero.c
-   M /trunk/src/jn.c
-   M /trunk/src/jyn_asympt.c
-   M /trunk/src/li2.c
-   M /trunk/src/lngamma.c
-   M /trunk/src/log.c
-   M /trunk/src/log10.c
-   M /trunk/src/log1p.c
-   M /trunk/src/log2.c
-   M /trunk/src/log_ui.c
-   M /trunk/src/logging.c
-   M /trunk/src/min_prec.c
-   M /trunk/src/minmax.c
-   M /trunk/src/mips/mparam.h
-   M /trunk/src/modf.c
-   M /trunk/src/mp_clz_tab.c
-   M /trunk/src/mparam_h.in
-   M /trunk/src/mpf2mpfr.h
-   M /trunk/src/mpfr-cvers.h
-   M /trunk/src/mpfr-gmp.c
-   M /trunk/src/mpfr-gmp.h
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/mpfr-intmax.h
-   M /trunk/src/mpfr-longlong.h
-   M /trunk/src/mpfr-mini-gmp.c
-   M /trunk/src/mpfr-mini-gmp.h
-   M /trunk/src/mpfr-sassert.h
-   M /trunk/src/mpfr-thread.h
-   M /trunk/src/mpfr.h
-   M /trunk/src/mpn_exp.c
-   M /trunk/src/mul.c
-   M /trunk/src/mul_1_extracted.c
-   M /trunk/src/mul_2exp.c
-   M /trunk/src/mul_2si.c
-   M /trunk/src/mul_2ui.c
-   M /trunk/src/mul_d.c
-   M /trunk/src/mul_ui.c
-   M /trunk/src/mulders.c
-   M /trunk/src/nbits_ulong.c
-   M /trunk/src/neg.c
-   M /trunk/src/next.c
-   M /trunk/src/nrandom.c
-   M /trunk/src/odd_p.c
-   M /trunk/src/out_str.c
-   M /trunk/src/pool.c
-   M /trunk/src/pow.c
-   M /trunk/src/pow_si.c
-   M /trunk/src/pow_ui.c
-   M /trunk/src/pow_z.c
-   M /trunk/src/powerof2.c
-   M /trunk/src/powerpc64/mparam.h
-   M /trunk/src/print_raw.c
-   M /trunk/src/print_rnd_mode.c
-   M /trunk/src/printf.c
-   M /trunk/src/random_deviate.c
-   M /trunk/src/random_deviate.h
-   M /trunk/src/rec_sqrt.c
-   M /trunk/src/reldiff.c
-   M /trunk/src/rem1.c
-   M /trunk/src/rint.c
-   M /trunk/src/rndna.c
-   M /trunk/src/root.c
-   M /trunk/src/round_near_x.c
-   M /trunk/src/round_p.c
-   M /trunk/src/round_prec.c
-   M /trunk/src/round_raw_generic.c
-   M /trunk/src/scale2.c
-   M /trunk/src/sec.c
-   M /trunk/src/sech.c
-   M /trunk/src/set.c
-   M /trunk/src/set_d.c
-   M /trunk/src/set_d128.c
-   M /trunk/src/set_d64.c
-   M /trunk/src/set_dfl_prec.c
-   M /trunk/src/set_exp.c
-   M /trunk/src/set_f.c
-   M /trunk/src/set_float128.c
-   M /trunk/src/set_flt.c
-   M /trunk/src/set_inf.c
-   M /trunk/src/set_ld.c
-   M /trunk/src/set_nan.c
-   M /trunk/src/set_prc_raw.c
-   M /trunk/src/set_prec.c
-   M /trunk/src/set_q.c
-   M /trunk/src/set_rnd.c
-   M /trunk/src/set_si.c
-   M /trunk/src/set_si_2exp.c
-   M /trunk/src/set_sj.c
-   M /trunk/src/set_str.c
-   M /trunk/src/set_str_raw.c
-   M /trunk/src/set_ui.c
-   M /trunk/src/set_ui_2exp.c
-   M /trunk/src/set_uj.c
-   M /trunk/src/set_z.c
-   M /trunk/src/set_z_exp.c
-   M /trunk/src/set_zero.c
-   M /trunk/src/setmax.c
-   M /trunk/src/setmin.c
-   M /trunk/src/setsign.c
-   M /trunk/src/sgn.c
-   M /trunk/src/si_op.c
-   M /trunk/src/signbit.c
-   M /trunk/src/sin.c
-   M /trunk/src/sin_cos.c
-   M /trunk/src/sinh.c
-   M /trunk/src/sinh_cosh.c
-   M /trunk/src/sparc64/mparam.h
-   M /trunk/src/sqr.c
-   M /trunk/src/sqrt.c
-   M /trunk/src/sqrt_ui.c
-   M /trunk/src/stack_interface.c
-   M /trunk/src/strtofr.c
-   M /trunk/src/sub.c
-   M /trunk/src/sub1.c
-   M /trunk/src/sub1sp.c
-   M /trunk/src/sub1sp1_extracted.c
-   M /trunk/src/sub_d.c
-   M /trunk/src/sub_ui.c
-   M /trunk/src/subnormal.c
-   M /trunk/src/sum.c
-   M /trunk/src/swap.c
-   M /trunk/src/tan.c
-   M /trunk/src/tanh.c
-   M /trunk/src/total_order.c
-   M /trunk/src/ubf.c
-   M /trunk/src/uceil_exp2.c
-   M /trunk/src/uceil_log2.c
-   M /trunk/src/ufloor_log2.c
-   M /trunk/src/ui_div.c
-   M /trunk/src/ui_pow.c
-   M /trunk/src/ui_pow_ui.c
-   M /trunk/src/ui_sub.c
-   M /trunk/src/urandom.c
-   M /trunk/src/urandomb.c
-   M /trunk/src/vasprintf.c
-   M /trunk/src/version.c
-   M /trunk/src/volatile.c
-   M /trunk/src/x86/mparam.h
-   M /trunk/src/x86_64/core2/mparam.h
-   M /trunk/src/x86_64/mparam.h
-   M /trunk/src/yn.c
-   M /trunk/src/zeta.c
-   M /trunk/src/zeta_ui.c
-   M /trunk/tests/Makefile.am
-   M /trunk/tests/cmp_str.c
-   M /trunk/tests/data/digamma
-   M /trunk/tests/data/li2
-   M /trunk/tests/memory.c
-   M /trunk/tests/mpf_compat.c
-   M /trunk/tests/mpf_compat.h
-   M /trunk/tests/mpfr-test.h
-   M /trunk/tests/mpfr_compat.c
-   M /trunk/tests/random2.c
-   M /trunk/tests/reuse.c
-   M /trunk/tests/rnd_mode.c
-   M /trunk/tests/tabort_defalloc1.c
-   M /trunk/tests/tabort_defalloc2.c
-   M /trunk/tests/tabort_prec_max.c
-   M /trunk/tests/tabs.c
-   M /trunk/tests/tacos.c
-   M /trunk/tests/tacosh.c
-   M /trunk/tests/tadd.c
-   M /trunk/tests/tadd1sp.c
-   M /trunk/tests/tadd_d.c
-   M /trunk/tests/tadd_ui.c
-   M /trunk/tests/tagm.c
-   M /trunk/tests/tai.c
-   M /trunk/tests/talloc-cache.c
-   M /trunk/tests/talloc.c
-   M /trunk/tests/tasin.c
-   M /trunk/tests/tasinh.c
-   M /trunk/tests/tassert.c
-   M /trunk/tests/tatan.c
-   M /trunk/tests/tatanh.c
-   M /trunk/tests/taway.c
-   M /trunk/tests/tbeta.c
-   M /trunk/tests/tbuildopt.c
-   M /trunk/tests/tcan_round.c
-   M /trunk/tests/tcbrt.c
-   M /trunk/tests/tcheck.c
-   M /trunk/tests/tcmp.c
-   M /trunk/tests/tcmp2.c
-   M /trunk/tests/tcmp_d.c
-   M /trunk/tests/tcmp_ld.c
-   M /trunk/tests/tcmp_ui.c
-   M /trunk/tests/tcmpabs.c
-   M /trunk/tests/tcomparisons.c
-   M /trunk/tests/tconst_catalan.c
-   M /trunk/tests/tconst_euler.c
-   M /trunk/tests/tconst_log2.c
-   M /trunk/tests/tconst_pi.c
-   M /trunk/tests/tcopysign.c
-   M /trunk/tests/tcos.c
-   M /trunk/tests/tcosh.c
-   M /trunk/tests/tcot.c
-   M /trunk/tests/tcoth.c
-   M /trunk/tests/tcsc.c
-   M /trunk/tests/tcsch.c
-   M /trunk/tests/td_div.c
-   M /trunk/tests/td_sub.c
-   M /trunk/tests/tdigamma.c
-   M /trunk/tests/tdim.c
-   M /trunk/tests/tdiv.c
-   M /trunk/tests/tdiv_d.c
-   M /trunk/tests/tdiv_ui.c
-   M /trunk/tests/tdot.c
-   M /trunk/tests/teint.c
-   M /trunk/tests/teq.c
-   M /trunk/tests/terandom.c
-   M /trunk/tests/terandom_chisq.c
-   M /trunk/tests/terf.c
-   M /trunk/tests/tests.c
-   M /trunk/tests/texceptions.c
-   M /trunk/tests/texp.c
-   M /trunk/tests/texp10.c
-   M /trunk/tests/texp2.c
-   M /trunk/tests/texpm1.c
-   M /trunk/tests/tfactorial.c
-   M /trunk/tests/tfits.c
-   M /trunk/tests/tfma.c
-   M /trunk/tests/tfmma.c
-   M /trunk/tests/tfmod.c
-   M /trunk/tests/tfms.c
-   M /trunk/tests/tfpif.c
-   M /trunk/tests/tfprintf.c
-   M /trunk/tests/tfrac.c
-   M /trunk/tests/tfrexp.c
-   M /trunk/tests/tgamma.c
-   M /trunk/tests/tgamma_inc.c
-   M /trunk/tests/tgeneric.c
-   M /trunk/tests/tgeneric_ui.c
-   M /trunk/tests/tget_d.c
-   M /trunk/tests/tget_d_2exp.c
-   M /trunk/tests/tget_f.c
-   M /trunk/tests/tget_flt.c
-   M /trunk/tests/tget_ld_2exp.c
-   M /trunk/tests/tget_q.c
-   M /trunk/tests/tget_set_d128.c
-   M /trunk/tests/tget_set_d64.c
-   M /trunk/tests/tget_sj.c
-   M /trunk/tests/tget_str.c
-   M /trunk/tests/tget_z.c
-   M /trunk/tests/tgmpop.c
-   M /trunk/tests/tgrandom.c
-   M /trunk/tests/thyperbolic.c
-   M /trunk/tests/thypot.c
-   M /trunk/tests/tinits.c
-   M /trunk/tests/tinp_str.c
-   M /trunk/tests/tinternals.c
-   M /trunk/tests/tisnan.c
-   M /trunk/tests/tisqrt.c
-   M /trunk/tests/tj0.c
-   M /trunk/tests/tj1.c
-   M /trunk/tests/tjn.c
-   M /trunk/tests/tl2b.c
-   M /trunk/tests/tlgamma.c
-   M /trunk/tests/tli2.c
-   M /trunk/tests/tlngamma.c
-   M /trunk/tests/tlog.c
-   M /trunk/tests/tlog10.c
-   M /trunk/tests/tlog1p.c
-   M /trunk/tests/tlog2.c
-   M /trunk/tests/tlog_ui.c
-   M /trunk/tests/tmin_prec.c
-   M /trunk/tests/tminmax.c
-   M /trunk/tests/tmodf.c
-   M /trunk/tests/tmul.c
-   M /trunk/tests/tmul_2exp.c
-   M /trunk/tests/tmul_d.c
-   M /trunk/tests/tmul_ui.c
-   M /trunk/tests/tnext.c
-   M /trunk/tests/tnrandom.c
-   M /trunk/tests/tnrandom_chisq.c
-   M /trunk/tests/tout_str.c
-   M /trunk/tests/toutimpl.c
-   M /trunk/tests/tpow.c
-   M /trunk/tests/tpow3.c
-   M /trunk/tests/tpow_all.c
-   M /trunk/tests/tpow_z.c
-   M /trunk/tests/tprec_round.c
-   M /trunk/tests/tprintf.c
-   M /trunk/tests/trandom.c
-   M /trunk/tests/trandom_deviate.c
-   M /trunk/tests/trec_sqrt.c
-   M /trunk/tests/tremquo.c
-   M /trunk/tests/trint.c
-   M /trunk/tests/trndna.c
-   M /trunk/tests/troot.c
-   M /trunk/tests/trootn_ui.c
-   M /trunk/tests/tsec.c
-   M /trunk/tests/tsech.c
-   M /trunk/tests/tset.c
-   M /trunk/tests/tset_d.c
-   M /trunk/tests/tset_exp.c
-   M /trunk/tests/tset_f.c
-   M /trunk/tests/tset_float128.c
-   M /trunk/tests/tset_ld.c
-   M /trunk/tests/tset_q.c
-   M /trunk/tests/tset_si.c
-   M /trunk/tests/tset_sj.c
-   M /trunk/tests/tset_str.c
-   M /trunk/tests/tset_z.c
-   M /trunk/tests/tset_z_exp.c
-   M /trunk/tests/tsgn.c
-   M /trunk/tests/tsi_op.c
-   M /trunk/tests/tsin.c
-   M /trunk/tests/tsin_cos.c
-   M /trunk/tests/tsinh.c
-   M /trunk/tests/tsinh_cosh.c
-   M /trunk/tests/tsprintf.c
-   M /trunk/tests/tsqr.c
-   M /trunk/tests/tsqrt.c
-   M /trunk/tests/tsqrt_ui.c
-   M /trunk/tests/tstckintc.c
-   M /trunk/tests/tstdint.c
-   M /trunk/tests/tstrtofr.c
-   M /trunk/tests/tsub.c
-   M /trunk/tests/tsub1sp.c
-   M /trunk/tests/tsub_d.c
-   M /trunk/tests/tsub_ui.c
-   M /trunk/tests/tsubnormal.c
-   M /trunk/tests/tsum.c
-   M /trunk/tests/tswap.c
-   M /trunk/tests/ttan.c
-   M /trunk/tests/ttanh.c
-   M /trunk/tests/ttotal_order.c
-   M /trunk/tests/ttrunc.c
-   M /trunk/tests/tui_div.c
-   M /trunk/tests/tui_pow.c
-   M /trunk/tests/tui_sub.c
-   M /trunk/tests/turandom.c
-   M /trunk/tests/tvalist.c
-   M /trunk/tests/tversion.c
-   M /trunk/tests/ty0.c
-   M /trunk/tests/ty1.c
-   M /trunk/tests/tyn.c
-   M /trunk/tests/tzeta.c
-   M /trunk/tests/tzeta_ui.c
-   M /trunk/tools/bench/Makefile.am
-   M /trunk/tools/bench/benchtime.h
-   M /trunk/tools/bench/mpfrbench.c
-   M /trunk/tools/check_mparam.c
-   M /trunk/tools/ck-clz_tab
-   M /trunk/tools/ck-copyright-notice
-   M /trunk/tools/ck-mparam
-   M /trunk/tools/ck-news
-   M /trunk/tools/ck-version-info
-   M /trunk/tools/get_patches.sh
-   M /trunk/tune/Makefile.am
-   M /trunk/tune/bidimensional_sample.c
-   M /trunk/tune/speed.c
-   M /trunk/tune/tuneup.c
+	[doc/mini-gmp] Say that the build with mini-gmp may require ISO C99+
+	features (as "long long" is currently needed by src/get_ld.c in the
+	case GMP_NUMB_BITS == 8).
+	(merged changeset r14131 from the trunk)
 
-Copyright notice update: added 2020 with
-  perl -pi -e 's/ (\d{4}-)?(2019)(?= Free Software)/
-               " ".($1||"$2-").($2+1)/e' **/*(^/)
-under zsh. Removed 2019 from the example in the doc/README.dev file.
-------------------------------------------------------------------------
-r13651 | vlefevre | 2020-01-08 17:52:26 +0000 (Wed, 08 Jan 2020) | 2 lines
-Changed paths:
-   M /trunk/TODO
+	[src/get_ld.c] Bug fix with GMP_NUMB_BITS == 8 (thus mini-gmp) and
+	32-bit long (e.g. with -m32 on x86_64).
+	(merged changeset r14127 from the trunk)
 
-[TODO] + base conversion with the round-trip property using a minimal
-precision, such as the to_chars functions from the C++ standard.
-------------------------------------------------------------------------
-r13650 | vlefevre | 2020-01-08 17:33:44 +0000 (Wed, 08 Jan 2020) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2020-09-15  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r13649 | vlefevre | 2020-01-08 17:21:57 +0000 (Wed, 08 Jan 2020) | 4 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/random_deviate.c] Fixed non-portable code.
+	(merged changesets r14123-14124 from the trunk)
 
-[doc/mpfr.texi] Formatted output: improved the text concerning the
-empty precision field, i.e. focus on the chosen precision rather
-than the round-trip property (as the rounding mode is not necessarily
-to nearest).
-------------------------------------------------------------------------
-r13648 | vlefevre | 2020-01-08 16:34:16 +0000 (Wed, 08 Jan 2020) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/mpfr-mini-gmp.c] Fixed bug in gmp_urandomb_ui when the parameter n
+	is equal to the width of unsigned long.
+	Note: This case occurs in function random_deviate_generate() from
+	src/random_deviate.c with a 32-bit ABI (thus 32-bit unsigned long)
+	since n = W, which is defined as 32.
+	(merged changeset r14117 from the trunk)
 
-[doc/mpfr.texi] Formatted output with %Re (empty precision field):
-added a reference to mpfr_get_str_ndigits.
-------------------------------------------------------------------------
-r13647 | vlefevre | 2020-01-08 16:20:57 +0000 (Wed, 08 Jan 2020) | 2 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+	With mini-gmp, use the standard rand() and srand() functions instead of
+	the POSIX (thus less portable) lrand48() and srand48().
+	(merged changesets r14114-14116 from the trunk)
 
-[src/vasprintf.c] Simplified the conditions under which trailing zeros
-are kept (the spec_g variable is no longer needed as a consequence).
-------------------------------------------------------------------------
-r13646 | vlefevre | 2020-01-08 15:30:46 +0000 (Wed, 08 Jan 2020) | 3 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+2020-09-10  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tsprintf.c] Re-added tests changed by r13644 and r13645, but
-with a variable of smaller precision in order to get the same output
-as before.
-------------------------------------------------------------------------
-r13645 | vlefevre | 2020-01-08 14:56:56 +0000 (Wed, 08 Jan 2020) | 1 line
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	ChangeLog update with "LC_ALL=en_US.UTF8 TZ=UTC0 svn log -rHEAD:0 -v".
+	Note: this includes URL updates.
 
-[tests/tsprintf.c] Updated other two tests (in da_DK locale).
-------------------------------------------------------------------------
-r13644 | zimmerma | 2020-01-08 12:15:52 +0000 (Wed, 08 Jan 2020) | 3 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/vasprintf.c
-   M /trunk/tests/tfprintf.c
-   M /trunk/tests/tprintf.c
-   M /trunk/tests/tsprintf.c
+	Updated URLs.
+	(merged changesets r14106-14110 from the trunk)
 
-fixed tests for new more precise semantics for mpfr_printf ("%Re", x),
-and documented it
+	Updated a freebsd.org URL (bug tracker).
+	(merged changeset r14104 from the trunk)
 
-------------------------------------------------------------------------
-r13643 | zimmerma | 2020-01-08 10:43:06 +0000 (Wed, 08 Jan 2020) | 3 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+2020-07-20  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/vasprintf.c] tentative fix so that mpfr_printf ("%.Re", x) prints a number
-		  of decimal digits independent from x
+	[src/get_d128.c] For the special values, avoid double to _Decimal128
+	conversions, as for such conversions, GCC generates from 2 to 3 MB in
+	the shared library when the decimal encoding is BID, and there will be
+	no fix in GCC:
+	  https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96173
+	We now use computations on _Decimal128 constants directly, which could
+	thus be done at compile time. We expect no problems similar to double,
+	as the _Decimal128 implementation should follow the IEEE 754 rules.
+	This commit should avoid a large part of the problem reported at:
+	  https://gforge.inria.fr/tracker/?func=detail&atid=619&aid=21849&group_id=136
+	(merged changesets r14087-14088 from the trunk)
 
-------------------------------------------------------------------------
-r13642 | vlefevre | 2019-12-24 03:10:33 +0000 (Tue, 24 Dec 2019) | 1 line
-Changed paths:
-   M /trunk/INSTALL
-   M /trunk/doc/mpfr.texi
+	[tests] Various corrections for error messages in tests of long double
+	(and double).
+	  * tests.c: Simplified the d_trace and ld_trace functions:
+	    we do not need a union (with its potentional padding) as
+	    there are no aliasing issues with unsigned char.
+	  * tget_ld_2exp.c: Corrected a function call in an error message.
+	  * tset_ld.c: Fixed mpfr_out_str usage in error messages
+	    (see the change in r12520).
+	(merged changesets r14080-14083 from the trunk)
 
-[INSTALL,doc/mpfr.texi] Typography.
-------------------------------------------------------------------------
-r13635 | vlefevre | 2019-10-10 13:56:19 +0000 (Thu, 10 Oct 2019) | 2 lines
-Changed paths:
-   M /trunk/doc/algorithms.tex
+	[examples/version.c] "Compiler:" line: detect TCC (__TINYC__ macro).
+	(merged changeset r14079 from the trunk)
 
-[doc/algorithms.tex] Ulp calculus: put the old Rule 8 just after Rule 2,
-as the old Rule 3 (now Rule 4) uses it directly (proof updated).
-------------------------------------------------------------------------
-r13634 | vlefevre | 2019-10-10 13:32:57 +0000 (Thu, 10 Oct 2019) | 1 line
-Changed paths:
-   M /trunk/doc/algorithms.tex
+	[tests/tversion.c] "Compiler:" line: detect TCC (__TINYC__ macro).
+	(merged changeset r14078 from the trunk)
 
-[doc/algorithms.tex] Ulp calculus: simplified the proof of Rule 8.
-------------------------------------------------------------------------
-r13633 | vlefevre | 2019-10-10 13:18:34 +0000 (Thu, 10 Oct 2019) | 2 lines
-Changed paths:
-   M /trunk/doc/algorithms.tex
+2020-07-10  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/algorithms.tex] Ulp calculus Rule 3: missing absolute values in
-the proof.
-------------------------------------------------------------------------
-r13632 | vlefevre | 2019-10-10 13:08:28 +0000 (Thu, 10 Oct 2019) | 2 lines
-Changed paths:
-   M /trunk/doc/algorithms.tex
+	[src/Makefile.am] Updated -version-info to 7:1:1 for MPFR 4.1.1.
 
-[doc/algorithms.tex] Actually assume that no underflows nor overflows
-occur for the whole section "Error calculus".
-------------------------------------------------------------------------
-r13631 | vlefevre | 2019-10-10 12:59:33 +0000 (Thu, 10 Oct 2019) | 3 lines
-Changed paths:
-   M /trunk/doc/algorithms.tex
+	Updated version to 4.1.1-dev.
 
-[doc/algorithms.tex] Ulp calculus Rule 6: corrected it (we need to
-assume no underflows nor overflows) and its proof, and generalized
-it with absolute values (like in the previous rules).
-------------------------------------------------------------------------
-r13630 | vlefevre | 2019-10-07 09:17:23 +0000 (Mon, 07 Oct 2019) | 2 lines
-Changed paths:
-   M /trunk/doc/algorithms.tex
+	ChangeLog update with "LC_ALL=en_US.UTF8 TZ=UTC0 svn log -rHEAD:0 -v".
 
-[doc/algorithms.tex] Ulp calculus Rule 3: more powerful result and
-much simpler proof.
-------------------------------------------------------------------------
-r13629 | vlefevre | 2019-10-07 08:50:52 +0000 (Mon, 07 Oct 2019) | 3 lines
-Changed paths:
-   M /trunk/doc/algorithms.tex
+	Updated version to 4.1.0.
 
-[doc/algorithms.tex] Section 2 (Error calculus): When n was a precision,
-replaced it by p as this is the usual notation (see Section 1) and n
-sometimes had a double meaning.
-------------------------------------------------------------------------
-r13628 | vlefevre | 2019-10-04 08:52:53 +0000 (Fri, 04 Oct 2019) | 1 line
-Changed paths:
-   M /trunk/tests/tcmp_ui.c
+	[doc/mpfr.texi] Updated the month.
 
-[tests/tcmp_ui.c] Updated comment: this is a bug in Clang 9.
-------------------------------------------------------------------------
-r13627 | vlefevre | 2019-10-04 08:28:16 +0000 (Fri, 04 Oct 2019) | 2 lines
-Changed paths:
-   M /trunk/tests/tcmp_ui.c
+	[src/jyn_asympt.c] Partly solved the slowness of jn(733333,733333).
+	[tests/tjn.c] Added tests of jn(73333,73333) and jn(733333,733333),
+	  enabled only with MPFR_CHECK_EXPENSIVE.
+	[doc/README.dev] In the MPFR_CHECK_EXPENSIVE description, say that
+	  --enable-assert=full should not be used (too expensive, not needed).
+	(merged changesets r14053-14062 from the trunk)
 
-[tests/tcmp_ui.c] Added a comment: failure of a test with the
-clang-9 1:9-1 Debian package.
-------------------------------------------------------------------------
-r13626 | vlefevre | 2019-10-01 13:55:09 +0000 (Tue, 01 Oct 2019) | 11 lines
-Changed paths:
-   M /trunk/acinclude.m4
-   M /trunk/doc/README.dev
-   M /trunk/tests/tests.c
-   M /trunk/tests/tget_d.c
-   M /trunk/tests/tget_flt.c
-   M /trunk/tests/tset_d.c
-   M /trunk/tests/tsprintf.c
+2020-07-01  Vincent Lefèvre  <vincent at vinc17.net>
 
-Clean-up concerning the tests of subnormals for double and float.
-  * acinclude.m4: renamed variables
-      mpfr_cv_have_denorms_flt to mpfr_cv_have_subnorm_flt
-      mpfr_cv_have_denorms     to mpfr_cv_have_subnorm_dbl
-    and improved messages.
-  * acinclude.m4, tests/tget_flt.c: renamed macro
-      HAVE_DENORMS_FLT to HAVE_SUBNORM_FLT
-  * acinclude.m4, tests/{tests.c,tset_d.c,tsprintf.c}: renamed macro
-      HAVE_DENORMS     to HAVE_SUBNORM_DBL
-  * doc/README.dev: updated / completed the corresponding documentation.
-  * tests/tget_d.c: renamed function check_denorms to check_subnorm.
-------------------------------------------------------------------------
-r13625 | vlefevre | 2019-10-01 13:28:37 +0000 (Tue, 01 Oct 2019) | 1 line
-Changed paths:
-   M /trunk/acinclude.m4
+	ChangeLog update with "LC_ALL=en_US.UTF8 TZ=UTC0 svn log -rHEAD:0 -v".
 
-[acinclude.m4] Updated comment about the tests for subnormal numbers.
-------------------------------------------------------------------------
-r13624 | vlefevre | 2019-10-01 13:23:51 +0000 (Tue, 01 Oct 2019) | 1 line
-Changed paths:
-   M /trunk/acinclude.m4
+	Updated version to 4.1.0-rc2.
 
-[acinclude.m4] Added a comment about the tests for subnormal numbers.
-------------------------------------------------------------------------
-r13623 | vlefevre | 2019-09-24 11:08:04 +0000 (Tue, 24 Sep 2019) | 1 line
-Changed paths:
-   M /trunk/doc/Makefile.am
+	[NEWS] Added an item saying that TLS can safely be (re-)enabled
+	on Sparc.
+	(merged changeset r14047 from the trunk)
 
-[doc/Makefile.am] Added missing texinfo.tex prerequisite.
-------------------------------------------------------------------------
-r13622 | vlefevre | 2019-09-16 08:33:16 +0000 (Mon, 16 Sep 2019) | 2 lines
-Changed paths:
-   M /trunk/tests/tfprintf.c
-   M /trunk/tests/tout_str.c
-   M /trunk/tests/tprintf.c
+2020-06-29  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests] Added FIXME comment in tfprintf.c, tout_str.c and tprintf.c:
-The output is not tested (thus coverage data are meaningless).
-------------------------------------------------------------------------
-r13621 | vlefevre | 2019-09-10 12:40:39 +0000 (Tue, 10 Sep 2019) | 1 line
-Changed paths:
-   M /trunk/src/add1sp.c
-   M /trunk/src/sub1sp.c
+	[tests/mpfr-test.h] Avoid a GCC bug on Sparc, at least when using TLS.
+	The MPFR library itself is not affected, only a particular test. Normal
+	code using the MPFR library should not be affected either, as the bug
+	occurs when accessing __gmpfr_flags directly (and the public mpfr.h
+	header file does not provide any macro that accesses an internal
+	variable directly). So a workaround for the tests is the best solution.
+	(merged changeset r14045 from the trunk)
 
-[src/{add1sp.c,sub1sp.c}] Get rid of useless goto's.
-------------------------------------------------------------------------
-r13619 | vlefevre | 2019-09-06 15:17:14 +0000 (Fri, 06 Sep 2019) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2020-06-18  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r13618 | vlefevre | 2019-09-06 12:35:10 +0000 (Fri, 06 Sep 2019) | 1 line
-Changed paths:
-   M /trunk/src/hypot.c
+	Updated version to 4.1.0-dev (due to changes since 4.1.0-rc1).
 
-[src/hypot.c] Replaced a TODO by a FIXME.
-------------------------------------------------------------------------
-r13617 | vlefevre | 2019-09-06 11:17:11 +0000 (Fri, 06 Sep 2019) | 2 lines
-Changed paths:
-   M /trunk/NEWS
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/out_str.c
-   M /trunk/tests/tout_str.c
+2020-06-18  Vincent Lefèvre  <vincent at vinc17.net>
 
-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.
-------------------------------------------------------------------------
-r13614 | vlefevre | 2019-09-06 01:00:27 +0000 (Fri, 06 Sep 2019) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	Merged r14021-14036 from the trunk:
 
-[doc/mpfr.texi] Changed an incorrect use of @xref, which must always
-occur at the beginning of a sentence (use "see @ref{...}" instead).
-------------------------------------------------------------------------
-r13613 | vlefevre | 2019-09-06 00:56:34 +0000 (Fri, 06 Sep 2019) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	r14021:
+	[tests] Skip tabort_defalloc1 and tabort_defalloc2 under Valgrind, as
+	Valgrind complains due to the large allocation size.
+	  * mpfr-test.h, tests.c: added tests_run_within_valgrind() function to
+	    guess whether the test runs within Valgrind.
+	  * tabort_defalloc1.c, tabort_defalloc2.c: skip the test (exit code 77)
+	    if this function returns true.
 
-[doc/mpfr.texi] At the end of "Arithmetic Functions", added a sentence
-referencing the power functions (since x^n is an arithmetic function).
-------------------------------------------------------------------------
-r13612 | vlefevre | 2019-09-05 16:17:35 +0000 (Thu, 05 Sep 2019) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	r14022-14023:
+	[tests/tset_ld.c] In bug_20160907 (tests on subnormals, specific to
+	x86 extended precision):
+	  * Replaced an assertion by a test with detailed output.
+	  * In case of incorrect result, detect whether Valgrind is used and
+	    one gets the result obtained with Valgrind due to
+	      https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=890215
+	      https://bugs.kde.org/show_bug.cgi?id=421262
+	    (long double behaves as double); in this case, output a message
+	    without an error since Valgrind is the only cause of the
+	    miscalculation.
+	  * Corrected a value in a test, which did not match the comment.
 
-[doc/mpfr.texi] Removed the useless "Float ..." index entries.
-------------------------------------------------------------------------
-r13611 | vlefevre | 2019-09-05 16:10:49 +0000 (Thu, 05 Sep 2019) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	r14024-14027:
+	[src/digamma.c]
+	  * Replaced some MPFR_EXP / mpfr_get_exp by MPFR_GET_EXP to check that
+	    the MPFR number has an exponent (i.e. it is not a special value).
+	  * Added an integer overflow check on a precision.
+	  * Fixed a bug: an exponent was read while the value could be zero.
 
-[doc/mpfr.texi] Moved the mpfr_pow class of functions from
-"Arithmetic Functions" to "Transcendental Functions".
-------------------------------------------------------------------------
-r13610 | vlefevre | 2019-09-05 15:40:37 +0000 (Thu, 05 Sep 2019) | 4 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	r14028:
+	[tests/tdigamma.c] Increase the number of tests.
 
-[doc/mpfr.texi] Added "Float transcendental functions" to the index
-for consistency ("transcendental functions" implies floating point,
-but the user should expect to find it with the other index terms
-starting with "Float").
-------------------------------------------------------------------------
-r13609 | vlefevre | 2019-09-05 15:36:08 +0000 (Thu, 05 Sep 2019) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	r14029,14031:
+	[doc/mpfr.texi] Specify the range of b for mpfr_get_str_ndigits.
 
-[doc/mpfr.texi] Renamed "Basic Arithmetic Functions" to just
-"Arithmetic Functions".
-------------------------------------------------------------------------
-r13608 | vlefevre | 2019-09-05 14:15:10 +0000 (Thu, 05 Sep 2019) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	r14030:
+	[src/get_str.c] Since the mpfr_get_str_ndigits function is in the
+	public API, use MPFR_ASSERTN instead of MPFR_ASSERTD on the condition
+	on the argument b in order to get an assertion failure (by default)
+	if this condition is not satisfied.
 
-[doc/mpfr.texi] Transcendental functions: added a sentence to the
-important note (about cases theoretically very hard to round).
-------------------------------------------------------------------------
-r13607 | vlefevre | 2019-09-05 13:57:21 +0000 (Thu, 05 Sep 2019) | 4 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	r14032,14035-14036:
+	[src/mpfr-longlong.h] Applied patch on
+	  https://gmplib.org/list-archives/gmp-bugs/2020-June/004807.html
+	to fix add_ssaaaa and sub_ddmmss on arm / aarch64, in order to resolve
+	  https://sympa.inria.fr/sympa/arc/mpfr/2020-06/msg00017.html
+	  https://sympa.inria.fr/sympa/arc/mpfr/2020-06/msg00059.html
 
-[doc/mpfr.texi] Renamed Section "Special Functions" to
-"Transcendental Functions" (as after changes in r13605 and r13606,
-it now contains only the transcendental functions), and slightly
-rewrote its important note.
-------------------------------------------------------------------------
-r13606 | vlefevre | 2019-09-05 13:44:16 +0000 (Thu, 05 Sep 2019) | 3 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	r14034:
+	[tests/tcmp_ui.c] Added a comment about a failing test with tcc if
+	one adds tcc support for macros using __builtin_constant_p in mpfr.h
+	by testing __TINYC__.
+	Bug report against tcc: https://savannah.nongnu.org/bugs/?58606
 
-[doc/mpfr.texi] Moved mpfr_free_cache, mpfr_free_cache2, mpfr_free_pool
-and mpfr_mp_memory_cleanup from "Special Functions" to a new section
-"Memory Handling Functions".
-------------------------------------------------------------------------
-r13605 | vlefevre | 2019-09-05 13:23:26 +0000 (Thu, 05 Sep 2019) | 7 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2020-06-13  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi]
-  * Moved mpfr_fac_ui, mpfr_fma, mpfr_fms, mpfr_fmma, mpfr_fmms,
-    mpfr_hypot, mpfr_sum and mpfr_dot from "Special Functions" to
-    "Basic Arithmetic Functions" (as these are functions based on
-    +, -, *, / and roots).
-  * Added a FIXME for mpfr_pow: does this function really belong
-    to "Basic Arithmetic Functions"?
-------------------------------------------------------------------------
-r13604 | vlefevre | 2019-09-05 12:56:52 +0000 (Thu, 05 Sep 2019) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[configure.ac] No longer add -Wc++-compat to CFLAGS when the compiler
+	is GCC not in C++ mode (reverting the change done in r13406) since this
+	option is not available before GCC 4.1:
+	  https://sympa.inria.fr/sympa/arc/mpfr/2020-06/msg00008.html
+	(merged changeset r14018 from the trunk)
 
-[doc/mpfr.texi] Improved warning about huge precisions.
-------------------------------------------------------------------------
-r13603 | vlefevre | 2019-09-05 10:21:34 +0000 (Thu, 05 Sep 2019) | 2 lines
-Changed paths:
-   M /trunk/src/mul.c
+2020-06-13  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mul.c] For the --enable-assert=full test, also test the flags
-(like what has been done for mpfr_add1sp and mpfr_sub1sp).
-------------------------------------------------------------------------
-r13602 | vlefevre | 2019-09-05 10:02:14 +0000 (Thu, 05 Sep 2019) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	Merged the latest changes from the trunk:
 
-[src/sub1sp.c] For the --enable-assert=full test, improved output of
-ternary value and flags, like in r13582 for mpfr_add1sp.
-------------------------------------------------------------------------
-r13601 | vlefevre | 2019-09-05 09:58:32 +0000 (Thu, 05 Sep 2019) | 1 line
-Changed paths:
-   M /trunk/src/add1sp.c
+	r14012:
+	[tests/tfpif.c] Updated comment about the bug detected on AIX.
 
-[src/add1sp.c] Cosmetic change (consistent ordering).
-------------------------------------------------------------------------
-r13600 | zimmerma | 2019-09-04 15:29:19 +0000 (Wed, 04 Sep 2019) | 3 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
-   M /trunk/tests/tsub1sp.c
+	r14015:
+	[doc/mpfr.texi] ACM TOMS article: use the preferred DOI URL.
 
-[tests/tsub1sp.c] added non-regression test for bug in mpfr_sub1sp2n
-[src/sub1sp.c] fixed that bug
+2020-06-13  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13599 | vlefevre | 2019-09-04 12:38:10 +0000 (Wed, 04 Sep 2019) | 1 line
-Changed paths:
-   M /trunk/acinclude.m4
+	Merged the latest changes from the trunk:
 
-[acinclude.m4] Fixed MPFR_C_LONG_DOUBLE_FORMAT macro for MS-Windows.
-------------------------------------------------------------------------
-r13598 | vlefevre | 2019-09-04 12:23:27 +0000 (Wed, 04 Sep 2019) | 1 line
-Changed paths:
-   M /trunk/NEWS
+	r14008,14010:
+	[tools/announce-text] For release candidates, automatically adapt the
+	flow of the text.
 
-[NEWS] More details about mpfr_add and mpfr_sub.
-------------------------------------------------------------------------
-r13597 | zimmerma | 2019-09-04 12:07:07 +0000 (Wed, 04 Sep 2019) | 2 lines
-Changed paths:
-   M /trunk/NEWS
+	r14009:
+	[NEWS] Updated mpfr.org URLs (http → https).
 
-[NEWS] mention that mpfr_sub was also improved for 128 bits
+2020-06-12  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13596 | zimmerma | 2019-09-04 11:52:11 +0000 (Wed, 04 Sep 2019) | 2 lines
-Changed paths:
-   M /trunk/NEWS
+	Merged the latest changes from the trunk:
 
-[NEWS] coverage improved to 98.6% on x86_64
+	r14003:
+	[tests/tfpif.c] Fixed a bug (in the test) detected on AIX[*], where
+	an fclose failed due to a previous read failure. At the same time,
+	check that a read failure no longer occurs. Note: the read failure
+	made mpfr_fpif_import fail, but this is a test where it is expected
+	to fail, i.e. we now check that it fails for a good reason.
+	[*] gcc119.fsffrance.org on the GCC Compile farm.
 
-------------------------------------------------------------------------
-r13595 | zimmerma | 2019-09-04 11:35:35 +0000 (Wed, 04 Sep 2019) | 2 lines
-Changed paths:
-   M /trunk/tests/tadd1sp.c
+	r14004:
+	[tests/tests.c] Removed a useless "#include <errno.h>" (added in r5252,
+	useless since r5253).
 
-[tests/tadd1sp.c] improve coverage
+	r14005:
+	[README] Added URL of the official GNU MPFR website and a note about the
+	future migration, since InriaForge will shut down in December 2020.
 
-------------------------------------------------------------------------
-r13594 | vlefevre | 2019-09-04 11:33:24 +0000 (Wed, 04 Sep 2019) | 3 lines
-Changed paths:
-   M /trunk/acinclude.m4
+2020-06-12  Vincent Lefèvre  <vincent at vinc17.net>
 
-[acinclude.m4] Fixed MPFR_C_LONG_DOUBLE_FORMAT macro: the patch had
-a spurious ";" at the end of conftest.c, which made its compilation
-fail with -pedantic -Werror (using gcc or clang).
-------------------------------------------------------------------------
-r13593 | zimmerma | 2019-09-04 11:22:26 +0000 (Wed, 04 Sep 2019) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	ChangeLog update with "LC_ALL=en_US.UTF8 TZ=UTC0 svn log -rHEAD:0 -v".
 
-[src/sub1sp.c] rewrote mpfr_sub1sp2n (inspired from mpfr_sub1sp1n)
+	Updated version to 4.1.0-rc1.
 
-------------------------------------------------------------------------
-r13592 | vlefevre | 2019-09-04 10:59:18 +0000 (Wed, 04 Sep 2019) | 4 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	[tools/update-version] Improved a message.
+	(merged changeset r13999 from the trunk)
 
-[acinclude.m4] Updated MPFR_C_LONG_DOUBLE_FORMAT to support compilation
-with GCC's and clang's LTO (-flto). This new test is inspired by the one
-used by GMP for the double type.
-Thanks to Paul Mulders for a preliminary version of the patch for MPFR.
-------------------------------------------------------------------------
-r13590 | zimmerma | 2019-09-03 16:16:53 +0000 (Tue, 03 Sep 2019) | 3 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[src/mpfr-longlong.h] Corrected a comment from GMP's longlong.h, which
+	makes codespell complain in particular.
+	(merged changeset r13997 from the trunk)
 
-[src/sub1sp.c] added new function mpfr_sub1sp2n for p = 2*GMP_NUMB_BITS
-	       (still to be tested)
+	[tools/mpfrlint] Improved the __GMP_DECLSPEC test:
+	  * No longer exclude "src/mpfr.h".
+	  * Avoid false positives in "src/mpfr.h" and "src/mpfr-longlong.h".
+	(merged changeset r13995 from the trunk)
 
-------------------------------------------------------------------------
-r13589 | vlefevre | 2019-09-03 14:39:35 +0000 (Tue, 03 Sep 2019) | 3 lines
-Changed paths:
-   M /trunk/tests/tadd1sp.c
+	[doc/mpfr.texi] Updated the month.
 
-[tests/tadd1sp.c] bug20190903:
-  * Fixed the second test for GMP_NUMB_BITS != 64.
-  * Updated comments.
-------------------------------------------------------------------------
-r13588 | zimmerma | 2019-09-03 14:02:27 +0000 (Tue, 03 Sep 2019) | 2 lines
-Changed paths:
-   M /trunk/src/add1sp.c
+	ChangeLog update with "LC_ALL=en_US.UTF8 TZ=UTC0 svn log -rHEAD:0 -v".
 
-[src/add1sp.c] improved comment
+2020-06-11  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13587 | vlefevre | 2019-09-03 14:00:33 +0000 (Tue, 03 Sep 2019) | 1 line
-Changed paths:
-   M /trunk/src/add1sp.c
+	Renamed mpfr_total_order to mpfr_total_order_p for consistency with the
+	other predicates (by convention, the function name should end with _p).
 
-[src/add1sp.c] mpfr_add1sp2n: improved a comment.
-------------------------------------------------------------------------
-r13586 | vlefevre | 2019-09-03 13:52:48 +0000 (Tue, 03 Sep 2019) | 1 line
-Changed paths:
-   M /trunk/src/add1sp.c
+	[NEWS] New function mpfr_total_order. Detailed mpfr_get_str_ndigits.
 
-[src/add1sp.c] Fixed the bug.
-------------------------------------------------------------------------
-r13585 | vlefevre | 2019-09-03 13:35:47 +0000 (Tue, 03 Sep 2019) | 1 line
-Changed paths:
-   M /trunk/tests/tadd1sp.c
+	[doc/README.dev] Updated "To make a release".
 
-[tests/tadd1sp.c] bug20190903: do the second test in MPFR_RNDU too.
-------------------------------------------------------------------------
-r13584 | vlefevre | 2019-09-03 13:31:08 +0000 (Tue, 03 Sep 2019) | 3 lines
-Changed paths:
-   M /trunk/tests/tadd1sp.c
+	[doc/README.dev] Updated "To make a release".
 
-[tests/tadd1sp.c] bug20190903: in the second test, check the mpfr_t
-value, the ternary value and the flags, in order to get a failure
-even without "--enable-assert=full".
-------------------------------------------------------------------------
-r13583 | vlefevre | 2019-09-03 13:11:52 +0000 (Tue, 03 Sep 2019) | 6 lines
-Changed paths:
-   M /trunk/tests/tadd1sp.c
+	[src/Makefile.am] Updated -version-info to 7:0:1 for MPFR 4.1.0.
 
-[tests/tadd1sp.c] When testing mpfr_add, use a wrapper mpfr_add_cf
-that calls mpfr_clear_flags first, so that if --enable-assert=full
-is used, the flags can be better checked too (and automatically).
-Now tadd1sp outputs with --enable-assert=full, as wanted:
-  add1  : ternary = -1, flags = inexact (8)
-  add1sp: ternary =  0, flags = none (0)
-------------------------------------------------------------------------
-r13582 | vlefevre | 2019-09-03 13:02:07 +0000 (Tue, 03 Sep 2019) | 5 lines
-Changed paths:
-   M /trunk/src/add1sp.c
-   M /trunk/src/exceptions.c
-   M /trunk/src/mpfr-impl.h
+	[NEWS] Additional details, in particular binary compatibility.
 
-[src]
-  * exceptions.c: define flags_fout if MPFR_WANT_ASSERT >= 2, i.e. with
-    --enable-assert=full (for better flags output in add1sp.c, etc.).
-  * mpfr-impl.h: declare flags_fout if MPFR_WANT_ASSERT >= 2.
-  * add1sp.c: improve output of ternary value and flags.
-------------------------------------------------------------------------
-r13581 | vlefevre | 2019-09-03 12:40:56 +0000 (Tue, 03 Sep 2019) | 1 line
-Changed paths:
-   M /trunk/tests/tadd1sp.c
+	[NEWS] Some improvements.
 
-[tests/tadd1sp.c] Updated comments of bug20190903.
-------------------------------------------------------------------------
-r13580 | vlefevre | 2019-09-03 12:37:47 +0000 (Tue, 03 Sep 2019) | 8 lines
-Changed paths:
-   M /trunk/tests/tadd1sp.c
+2020-06-11  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tadd1sp.c] Added a test that triggers a bug in mpfr_add1sp2n
-(corresponding to the FIXME), yielding a failure with
-"--enable-assert=full".
-Note 1: The computed values are equal (with MPFR_RNDN), but one gets
-  Inexact sp = 0 | Inexact = -1
-  Flags sp = 10 | Flags = 10
-Note 2: The fact that the flags do not match the ternary value in the
-error message is due to a missing mpfr_clear_flags in the test.
-------------------------------------------------------------------------
-r13579 | vlefevre | 2019-09-03 12:23:35 +0000 (Tue, 03 Sep 2019) | 6 lines
-Changed paths:
-   M /trunk/src/add1sp.c
+	[doc/mini-gmp] one more test is skipped now
 
-[src/add1sp.c] mpfr_add1sp2n:
-  * Code refactoring, eliminating the unnecessary goto's.
-  * In the d >= 2 * GMP_NUMB_BITS case, use a single test for rb and sb.
-  * Improved code consistency.
-  * Added a FIXME about suspicious code. → Find a failing test and fix
-    the code, or explain the code if it is correct.
-------------------------------------------------------------------------
-r13578 | zimmerma | 2019-09-03 11:51:41 +0000 (Tue, 03 Sep 2019) | 2 lines
-Changed paths:
-   M /trunk/src/add1sp.c
+	[doc/mini-gmp] add test results with reduced limb size (int)
 
-[src/add1sp.c] fix for bug20190903
+2020-06-11  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13577 | vlefevre | 2019-09-03 11:28:22 +0000 (Tue, 03 Sep 2019) | 1 line
-Changed paths:
-   M /trunk/src/add1sp.c
+	[doc/README.dev] Updated "To make a release".
 
-[src/add1sp.c] Corrected a comment.
-------------------------------------------------------------------------
-r13576 | vlefevre | 2019-09-03 10:30:10 +0000 (Tue, 03 Sep 2019) | 3 lines
-Changed paths:
-   M /trunk/tests/tadd1sp.c
+2020-06-10  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tadd1sp.c] More random tests in the special precisions
-GMP_NUMB_BITS and 2 * GMP_NUMB_BITS (but they don't trigger
-the bug due to r13574).
-------------------------------------------------------------------------
-r13575 | vlefevre | 2019-09-03 10:25:41 +0000 (Tue, 03 Sep 2019) | 2 lines
-Changed paths:
-   M /trunk/tests/tadd1sp.c
+	[NEWS] Added release name for 4.1.0: "épinards à la crème".
 
-[tests/tadd1sp.c] Added testcase for bug due to r13574 (found with
-the other test programs, using --enable-assert=full).
-------------------------------------------------------------------------
-r13574 | zimmerma | 2019-09-03 09:20:19 +0000 (Tue, 03 Sep 2019) | 2 lines
-Changed paths:
-   M /trunk/NEWS
-   M /trunk/src/add1sp.c
+	[doc/mini-gmp] English usage improvement.
 
-[src/add1sp.c] added mpfr_add1sp2n for 128-bit precision (with 64-bit limb)
+	Fixed 2 issues with tests/tvalist.c:
+	  1. When building with mini-gmp (--with-mini-gmp=DIR) without
+	     optimizations (-O0), the build of tvalist was failing because
+	     the formatted output functions are not supported (this issue
+	     wasn't noticed with optimizations due to dead code elimination).
+	     Fix: this test is disabled with mini-gmp (not needed anyway).
+	  2. Dead code elimination with optimizations partly broke the goal
+	     of this test, i.e. checking that mpfr_vfprintf was available.
+	     This dead code was introduced in r7648 "Make sure that fct is
+	     used (avoid a warning)." (where fct = mpfr_vfprintf) but was
+	     actually not sufficient.
+	     Fix: call mpfr_vfprintf unconditionally, but on an empty string
+	     in order to avoid output to stdout.
+	In addition to these changes in tests/tvalist.c, src/mpfr-impl.h could
+	be simplified as a consequence.
 
-------------------------------------------------------------------------
-r13573 | zimmerma | 2019-09-02 15:48:13 +0000 (Mon, 02 Sep 2019) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp1_extracted.c
+	Removed '# undef HAVE_STDARG' before '# include "config.h"' when it
+	was used, as it was not always undefined (e.g. in tests/tsprintf.c)
+	and there are no reasons to undefine this macro specifically.
+	Note: this code was introduced in r2665 (2004-02-06), perhaps for
+	the MPFR build inside GMP, which has been dropped a long time ago.
 
-[src/sub1sp1_extracted.c] replace hard-coded bounds by emin/emax
+	[tests/tvalist.c] Updated a comment.
 
-------------------------------------------------------------------------
-r13572 | zimmerma | 2019-09-02 15:10:45 +0000 (Mon, 02 Sep 2019) | 2 lines
-Changed paths:
-   M /trunk/src/Makefile.am
-   M /trunk/src/sub1sp.c
-   A /trunk/src/sub1sp1_extracted.c
+	[tests/tvalist.c] Correction when config.h is used (code copied from
+	src/inits.c).
 
-added sub1sp1_extracted.c (not ready yet)
+2020-06-10  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r13571 | zimmerma | 2019-08-30 13:26:54 +0000 (Fri, 30 Aug 2019) | 2 lines
-Changed paths:
-   M /trunk/src/add1sp1_extracted.c
-   M /trunk/src/mul_1_extracted.c
+	[doc/mini-gmp] review
 
-added github source for Jianyang Pan formal proof
+2020-06-10  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13570 | vlefevre | 2019-08-21 10:22:25 +0000 (Wed, 21 Aug 2019) | 7 lines
-Changed paths:
-   M /trunk/tests/mpfr-test.h
+	[NEWS] Typo in option name.
 
-[tests/mpfr-test.h] At the end, with GCC, undef volatile if defined.
-Explanations:
-  With GCC, a macro "volatile" can be defined to test some special code
-  in mpfr-impl.h (code for compilers that define such a macro), but the
-  volatile keyword is necessary in some tests to avoid some GCC bugs.
-  Thus we need to undef this macro (if defined). We do that at the end,
-  so that mpfr-impl.h (included earlier) is not affected by this undef.
-------------------------------------------------------------------------
-r13569 | vlefevre | 2019-08-21 08:57:50 +0000 (Wed, 21 Aug 2019) | 5 lines
-Changed paths:
-   M /trunk/tests/tget_set_d128.c
+	[src/mpfr-longlong.h]
+	  * Updated comment about this file and the changes against GMP 6.2.0.
+	  * Define __GMP_GNUC_PREREQ if it isn't defined (this is currently not
+	    needed since it is defined in gmp.h as used also there, but this is
+	    useful in case some future gmp.h version no longer defines it).
 
-[tests/tget_set_d128.c] Updated a test with a non-canonical encoding:
-  * More meaningful name ("noncanonical" instead of "coverage").
-  * Output details in case of failure.
-  * Avoid GCC bug 91226: wrong propagation of non-canonical _Decimal64
-    and _Decimal128 constant (BID only).
-------------------------------------------------------------------------
-r13568 | vlefevre | 2019-08-20 13:58:15 +0000 (Tue, 20 Aug 2019) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	[src/mpfr-longlong.h] Update: applied the diff of GMP's longlong.h
+	between GMP 6.1.0 and GMP 6.2.0, after reverting changesets 13251,
+	11042, 11025, and 10727, as these changes are present in the diff.
 
-[doc/README.dev] Update concerning the "decimal-point character".
-------------------------------------------------------------------------
-r13567 | vlefevre | 2019-08-20 13:44:16 +0000 (Tue, 20 Aug 2019) | 5 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[configure.ac] With mini-gmp, also check the availability of srand48.
 
-[doc/mpfr.texi] Changed "decimal point" to "decimal-point character",
-which is the term used in the ISO C standard. This is better as this
-character is also used with non-decimal bases: "decimal-point" is
-just the name of this character (as initially defined for base 10)
-and does not imply a number written in decimal.
-------------------------------------------------------------------------
-r13566 | vlefevre | 2019-08-20 13:02:52 +0000 (Tue, 20 Aug 2019) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/mpfr-mini-gmp.c] For gmp_randseed_ui, which uses srand48, use
+	a portable version of the conversion from unsigned long to long.
 
-[doc/mpfr.texi] Compatibility With MPF: added an item on the difference
-of the output format between mpf_out_str and mpfr_out_str.
-------------------------------------------------------------------------
-r13565 | vlefevre | 2019-08-20 11:06:03 +0000 (Tue, 20 Aug 2019) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[doc/mini-gmp] Note also that the random functions are not thread-safe.
 
-[doc/mpfr.texi] Rewrote and completed the mpfr_out_str description.
-------------------------------------------------------------------------
-r13564 | vlefevre | 2019-08-20 09:39:53 +0000 (Tue, 20 Aug 2019) | 13 lines
-Changed paths:
-   M /trunk/src/out_str.c
+	[doc/mini-gmp] Major update.
 
-[src/out_str.c] Fixed bug in mpfr_out_str: When the exponent of the
-converted value is 0, it was not output, contrary to what is described
-in the MPFR manual. Note that this does not change the value of the
-printed string, so that this has no effect on applications that just
-re-read the value (with MPFR or another code).
-This was regarded as a bug rather than an error in the documentation,
-thus the output now looks more similar to what printf with %e yields;
-the GMP function mpf_out_str also outputs the exponent 0.
-Short discussion:
-  https://sympa.inria.fr/sympa/arc/mpfr/2019-08/msg00012.html
+	[NEWS] Removed a FIXME (no problems found).
 
-Note: The tests still pass, as this function is currently not really
-tested.
-------------------------------------------------------------------------
-r13563 | vlefevre | 2019-08-14 17:01:18 +0000 (Wed, 14 Aug 2019) | 1 line
-Changed paths:
-   M /trunk/INSTALL
+2020-06-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-[INSTALL] Update/corrections about MinGW and __USE_MINGW_ANSI_STDIO.
-------------------------------------------------------------------------
-r13562 | vlefevre | 2019-08-14 15:43:30 +0000 (Wed, 14 Aug 2019) | 2 lines
-Changed paths:
-   M /trunk/tests/tversion.c
+	[tests/tversion.c] Code style: replaced (mp_limb_t) -1 by MPFR_LIMB_MAX.
 
-[tests/tversion.c] When building with MinGW, output a line about it:
-MinGW32 / MinGW64, and the __USE_MINGW_ANSI_STDIO definition.
-------------------------------------------------------------------------
-r13561 | vlefevre | 2019-08-14 15:37:46 +0000 (Wed, 14 Aug 2019) | 1 line
-Changed paths:
-   M /trunk/src/set_d128.c
+	[src/mul_ui.c] Bug fix: in the code where MPFR_LONG_WITHIN_LIMB is
+	not defined, update the flags (needed for the possible overflow).
 
-[src/set_d128.c] Moved a definition under the #if where it is used.
-------------------------------------------------------------------------
-r13560 | zimmerma | 2019-08-14 07:38:12 +0000 (Wed, 14 Aug 2019) | 2 lines
-Changed paths:
-   M /trunk/INSTALL
+	[tests/tmul_ui.c] Added an overflow check that fails in MPFR_RNDZ with
+	mini-gmp and mp_limb_t < long (e.g. "-DMINI_GMP_LIMB_TYPE=short").
 
-improve INSTALL (feedback from sisyphus <sisyphus359 at gmail.com>)
+	[tests/tgeneric.c] In the MPFR_SUSPICIOUS_OVERFLOW case, output yprec.
 
-------------------------------------------------------------------------
-r13559 | vlefevre | 2019-08-12 13:39:50 +0000 (Mon, 12 Aug 2019) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/mpfr-impl.h] Changed the code that defines MPFR_LONG_WITHIN_LIMB
+	in order to support mini-gmp with -DMINI_GMP_LIMB_TYPE=...
 
-[doc/mpfr.texi] Added a FIXME for mpfr_out_str about the exponent 0.
-------------------------------------------------------------------------
-r13558 | vlefevre | 2019-08-12 13:32:58 +0000 (Mon, 12 Aug 2019) | 10 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/get_ld.c] Fixed build failure with GMP_NUMB_BITS == 8 due to the
+	use of uint64_t in src/get_ld.c, while <stdint.h> was not included:
+	replaced it by "unsigned long long", which does not need a specific
+	header (an exact 64-bit type is not needed, we just need at least a
+	64-bit width, which unsigned long long is guaranteed to have).
+	Note: unsigned long long may not be available with a pre-C99 compiler,
+	but this is not worse than uint64_t. This limitation is currently OK
+	as GMP_NUMB_BITS == 8 support is just for testing.
 
-[doc/mpfr.texi] About mpfr_get_str / mpfr_out_str:
-  * In the mpfr_get_str description, changed argument "b" to "base" for
-    consistency with similar functions (now, only mpfr_get_str_ndigits
-    has b as this looks better in the formula). Also added a link to
-    mpfr_get_str_ndigits.
-  * In the mpfr_out_str description, replaced the ambiguous and even
-    incorrect sentence "enough digits so that op can be read back
-    exactly" (issues with trailing zeros and with the directed rounding
-    modes) by text similar to the one in the mpfr_get_str description
-    (keeping the reference to mpfr_get_str).
-------------------------------------------------------------------------
-r13557 | vlefevre | 2019-08-12 12:40:32 +0000 (Mon, 12 Aug 2019) | 1 line
-Changed paths:
-   M /trunk/src/out_str.c
+	[acinclude.m4] Make MPFR_CHECK_MP_LIMB_T_VS_LONG and
+	MPFR_CHECK_MP_LIMB_T_VS_INTMAX similar:
+	  * Use AC_LINK_IFELSE in MPFR_CHECK_MP_LIMB_T_VS_LONG too: this
+	    is safer than AC_COMPILE_IFELSE, as it will detect undefined
+	    function-like macros.
+	  * Define MPFR_USE_STATIC_ASSERT in MPFR_CHECK_MP_LIMB_T_VS_INTMAX
+	    too in order to make sure that a static assertion is used (not
+	    the MPFR_ASSERTN fallback).
+	Note: These constitute redundant safeguards because if MPFR_ASSERTN
+	is used, it will be regarded as a function since the macro is not
+	defined in this context, and linking will fail as a consequence.
+	But this redundancy will protect more against MPFR code evolution.
 
-[src/out_str.c] Coding style (e is not a boolean).
-------------------------------------------------------------------------
-r13556 | vlefevre | 2019-08-09 13:52:29 +0000 (Fri, 09 Aug 2019) | 1 line
-Changed paths:
-   M /trunk/tests/tout_str.c
+	[acinclude.m4] Fixed MPFR_CHECK_MP_LIMB_T_VS_LONG macro by forcing
+	MPFR_USE_STATIC_ASSERT to 1 before including mpfr-sassert.h, i.e.
+	by requiring static assertions: because AC_COMPILE_IFELSE is used
+	(i.e. just compiling, no linking), the test could incorrectly succeed
+	when MPFR_USE_STATIC_ASSERT was not defined, i.e. whatever the value
+	of "(mp_limb_t) -1 >= (unsigned long) -1"; indeed, in this case,
+	MPFR_ASSERTN() was used instead of a static assertion, and since the
+	macro was not defined here, MPFR_ASSERTN was regarded as a function
+	(without a prototype), which was fine for compiling (except when the
+	compiler is configured to regard warnings such as missing prototype
+	as errors). In short, one could get "yes" while long was larger than
+	mp_limb_t.
+	Note: In uncommon cases (non-standard compiler...), one can still get
+	"no" while a long fits in mp_limb_t, but this isn't much an issue as
+	the MPFR code should work in such a case. Moreover, src/mpfr-impl.h
+	will also have the chance to set MPFR_LONG_WITHIN_LIMB in practice.
 
-[tests/tout_str.c] Use mpfr_print_rnd_mode in a message.
-------------------------------------------------------------------------
-r13555 | vlefevre | 2019-08-09 13:49:28 +0000 (Fri, 09 Aug 2019) | 3 lines
-Changed paths:
-   M /trunk/tests/tout_str.c
+	Removed MPFR_DECL_STATIC_ASSERT macro as it was buggy, unused, rather
+	useless, and it had drawbacks. Details:
+	  * In src/mpfr-sassert.h, the default definition of this macro in the
+	    MPFR_USE_STATIC_ASSERT case ended with a spurious ";". Since this
+	    macro was unused, this wasn't noticeable... except in the configure
+	    test for static assertions, which failed in some cases (e.g. with
+	    CFLAGS="-std=c99 -pedantic-errors -Wno-error=overlength-strings")
+	    for this reason, which had the effect to let MPFR_USE_STATIC_ASSERT
+	    undefined, while static assertions were actually working.
+	  * Still in src/mpfr-sassert.h, but when MPFR_USE_STATIC_ASSERT is not
+	    defined, the MPFR_DECL_STATIC_ASSERT(c) expanded to nothing, which
+	    would yield invalid code as
+	      MPFR_DECL_STATIC_ASSERT(some_assertion);
+	    would yield an extra ";" (about the same issue as above). Given
+	    the fact that the portable MPFR_USE_STATIC_ASSERT code does not
+	    work with this compiler, it is not clear whether this is fixable
+	    in a completely reliable way.
+	  * MPFR_DECL_STATIC_ASSERT can be replaced by MPFR_STAT_STATIC_ASSERT
+	    after moving it to the statement section of a function, with almost
+	    no drawbacks (just a bit readability in some cases?).
+	  * When MPFR_USE_STATIC_ASSERT is not defined, MPFR_STAT_STATIC_ASSERT
+	    will check the assertion at run time (for free, since the result is
+	    known at compile time), while MPFR_DECL_STATIC_ASSERT would not be
+	    able to do anything useful.
+	Changes:
+	  * acinclude.m4: removed the test of MPFR_DECL_STATIC_ASSERT.
+	  * src/mpfr-sassert.h: removed MPFR_DECL_STATIC_ASSERT definitions.
+	  * tune/tuneup.c: removed MPFR_DECL_STATIC_ASSERT redefinition.
 
-[tests/tout_str.c] Code simplification: a test from r1888 on a
-random value was unnecessary (the log message of r1888 did not
-even correspond to the change).
-------------------------------------------------------------------------
-r13554 | vlefevre | 2019-08-09 13:37:48 +0000 (Fri, 09 Aug 2019) | 1 line
-Changed paths:
-   M /trunk/tests/tout_str.c
+2020-06-08  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tout_str.c] GNU coding style.
-------------------------------------------------------------------------
-r13553 | vlefevre | 2019-08-09 13:34:16 +0000 (Fri, 09 Aug 2019) | 2 lines
-Changed paths:
-   M /trunk/tests/tout_str.c
+	[acinclude.m4] MPFR_CHECK_MP_LIMB_T_VS_LONG: updated comment to say
+	that using MPFR_ASSERTN (as the code tries to do if static assertions
+	are not supported, but currently fails) would be incorrect.
 
-[tests/tout_str.c] Added missing newline characters in the output
-after calls to mpfr_out_str.
-------------------------------------------------------------------------
-r13552 | vlefevre | 2019-08-09 13:29:36 +0000 (Fri, 09 Aug 2019) | 5 lines
-Changed paths:
-   M /trunk/tests/tout_str.c
+	[acinclude.m4] In MPFR_CHECK_MP_LIMB_T_VS_INTMAX, do the test only if
+	intmax_t is defined (assuming that it is iff uintmax_t is defined).
 
-[tests/tout_str.c] By default, output the results to a file instead of
-/dev/null (this was already done only if opening /dev/null failed), so
-that they can be checked later. Fixed 2 issues at the same time:
-  * Do not close stdout (when an argument was provided).
-  * Remove the file at the end.
-------------------------------------------------------------------------
-r13551 | vlefevre | 2019-08-09 13:11:38 +0000 (Fri, 09 Aug 2019) | 1 line
-Changed paths:
-   M /trunk/tests/tfpif.c
+	[tests/tversion.c] Also output the results of the detection of
+	"long within limb" and "intmax_t within limb".
 
-[tests/tfpif.c] GNU coding style.
-------------------------------------------------------------------------
-r13550 | vlefevre | 2019-08-09 13:09:57 +0000 (Fri, 09 Aug 2019) | 1 line
-Changed paths:
-   M /trunk/tests/tfpif.c
+2020-06-04  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tfpif.c] Added a comment about the use of perror.
-------------------------------------------------------------------------
-r13549 | vlefevre | 2019-08-09 13:06:47 +0000 (Fri, 09 Aug 2019) | 4 lines
-Changed paths:
-   M /trunk/tests/tfpif.c
+	[configure.ac] Removed an obsolete FIXME, which is probably wrong.
 
-[tests/tfpif.c] Also check fclose failure when the file has been opened
-for writing (typically an error in case the buffer cannot be written to
-the file). Call perror after all fopen/src_fopen/fclose failures to get
-the reason of the failure.
-------------------------------------------------------------------------
-r13548 | vlefevre | 2019-08-09 12:45:21 +0000 (Fri, 09 Aug 2019) | 4 lines
-Changed paths:
-   M /trunk/tests/tfpif.c
+	[configure.ac] Updated a comment, replacing a resolved FIXME.
 
-[tests/tfpif.c] In case of failure of fopen or src_fopen, write the
-error message on stderr (as one should do for errors not directly
-related to the tests, such as memory allocation and I/O errors).
-Also improved the error messages and made them consistent.
-------------------------------------------------------------------------
-r13547 | vlefevre | 2019-08-06 12:47:52 +0000 (Tue, 06 Aug 2019) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[acinclude.m4] MPFR_CHECK_DBL2INT_BUG test: avoid potentially reserved
+	exit status.
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r13546 | vlefevre | 2019-08-05 13:50:20 +0000 (Mon, 05 Aug 2019) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[acinclude.m4] Fixed r13938: the new MPFR_C_REALFP_FORMAT macro also
+	needs to take the printf length modifier in argument.
 
-[doc/mpfr.texi] Improved consistency with @item.
-------------------------------------------------------------------------
-r13545 | vlefevre | 2019-08-02 13:17:10 +0000 (Fri, 02 Aug 2019) | 3 lines
-Changed paths:
-   M /trunk/Makefile.am
-   M /trunk/doc/Makefile.am
-   M /trunk/src/Makefile.am
-   M /trunk/tests/Makefile.am
-   M /trunk/tools/bench/Makefile.am
-   M /trunk/tune/Makefile.am
+	[acinclude.m4] Improved the code to determine the format of double,
+	resolving the FIXME. The issue was that it used an AC_RUN_IFELSE,
+	so that the format could not be determined when cross-compiling.
+	The code to determine the format of long double did not have such
+	an issue: the object file was analyzed by an awk script. Since a
+	long double can have the same format as a double, this code was
+	already able to recognize a double, in particular. So the change
+	consisted in slightly adapting this code to accept the tested type
+	as an argument ("double" or "long double", the mpfr_cv_… variable
+	name being obtained thanks to AS_VAR_PUSHDEF) and reusing it for
+	the detection of the format of double.
 
-For Makefile.am and each one in SUBDIRS, added the .POSIX target to
-select the POSIX behavior (since we do not require GNU "make").
-See: https://sympa.inria.fr/sympa/arc/mpfr/2019-08/msg00005.html
-------------------------------------------------------------------------
-r13544 | vlefevre | 2019-08-02 08:22:52 +0000 (Fri, 02 Aug 2019) | 2 lines
-Changed paths:
-   M /trunk/tools/get_patches.sh
+	[acinclude.m4] MPFR_C_LONG_DOUBLE_FORMAT cleanup:
+	  * Removed an unused AH_VERBATIM.
+	  * Removed "not available" condition, no longer possible since r13936.
 
-[tools/get_patches.sh] Fixed change in r13543 (the contents of PATCHES
-should still be written as a list of words separated by a space).
-------------------------------------------------------------------------
-r13543 | vlefevre | 2019-08-02 08:15:24 +0000 (Fri, 02 Aug 2019) | 9 lines
-Changed paths:
-   M /trunk/src/Makefile.am
-   M /trunk/tools/get_patches.sh
+	[acinclude.m4] Fix concerning r13935: also removed code that tested
+	the availability of long double. This code was useless since it was
+	just outputting "not available" if long double was missing, and one
+	would get an error later since MPFR requires long double. But since
+	long double is in ISO C89, it is useless to add a test just to return
+	an error for pre-C89 compilers.
 
-Fixed src/get_patches.c generation that was changed in r13542.
-  * src/Makefile.am, tools/get_patches.sh: since get_patches.sh is
-    no longer run from $(top_srcdir), the PATCHES absolute pathname
-    now needs to be passed in argument.
-  * src/Makefile.am: fixed the get_patches.c rule (the automatic
-    variable $< was used with the meaning "first prerequisite" of
-    GNU Make; an "exit 1" was missing, so that a failure did not
-    abort "make" immediately).
-  * tools/get_patches.sh: detect errors with "set -e".
-------------------------------------------------------------------------
-r13542 | vlefevre | 2019-07-31 15:55:00 +0000 (Wed, 31 Jul 2019) | 7 lines
-Changed paths:
-   M /trunk/src/Makefile.am
+	[acinclude.m4] Removed "AC_CHECK_TYPES([long double])", whose only
+	  purpose is to define a HAVE_LONG_DOUBLE macro.
+	[configure.ac] Removed HAVE_LONG_DOUBLE from the cleanup: no longer
+	  needed with the change in acinclude.m4.
 
-[src/Makefile.am] Define get_patches.c as a built source to avoid a
-non-portable make rule ("/" character in target), causing an error
-in FreeBSD with its "make" command. This change should be OK as the
-get_patches.sh script that generates get_patches.c is very simple
-and portable. As a consequence, put get_patches.c in CLEANFILES.
-See:
-  https://sympa.inria.fr/sympa/arc/mpfr/2019-07/msg00003.html
-------------------------------------------------------------------------
-r13541 | vlefevre | 2019-07-31 15:28:01 +0000 (Wed, 31 Jul 2019) | 4 lines
-Changed paths:
-   M /trunk/Makefile.am
+2020-06-03  Vincent Lefèvre  <vincent at vinc17.net>
 
-[Makefile.am] Fixed dist-hook for ck-mparam, which was run from a
-read-only directory with "make distcheck" while a temporary file
-is created in the current directory, yielding a failure (ck-mparam
-has been run in dist-hook since r12533 on 2018-04-03).
-------------------------------------------------------------------------
-r13540 | vlefevre | 2019-07-31 15:23:57 +0000 (Wed, 31 Jul 2019) | 4 lines
-Changed paths:
-   M /trunk/tools/ck-mparam
+	[configure.ac] Minor change in a comment.
 
-[tools/ck-mparam] Updated comment to warn that the source tree that is
-checked is the one that contains this script, not the one corresponding
-to the current working directory (the rule for the other scripts in the
-tools directory is currently different).
-------------------------------------------------------------------------
-r13539 | vlefevre | 2019-07-31 15:06:10 +0000 (Wed, 31 Jul 2019) | 5 lines
-Changed paths:
-   M /trunk/tools/ck-mparam
+	Cleanup about the function detection by autoconf.
+	  * acinclude.m4: removed the detection of memmove, memset and strtol,
+	    which was not used (a macro "HAVE_..." was defined... to be removed
+	    in configure.ac!); for AC_CHECK_FUNCS, remove options starting with
+	    "-Werror" as they can yield a spurious failure due to the way this
+	    test is done (this occurred on memmove and memset with GCC due to
+	    builtins, and similar issues could still occur in practice with the
+	    remaining functions in the AC_CHECK_FUNCS list).
+	  * configure.ac: removed HAVE_STRTOL from the macro cleanup: no longer
+	    needed since strtol has been removed from the AC_CHECK_FUNCS list.
 
-[tools/ck-mparam] This script can now be run from any directory (which
-must still be writable). This change has been done to be able to run
-it from the build directory, as if it is run via "make distcheck" and
-a dist-hook rule, then neither the top-level directory nor the tools
-directory is writable.
-------------------------------------------------------------------------
-r13537 | vlefevre | 2019-07-23 10:55:43 +0000 (Tue, 23 Jul 2019) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_set_d64.c
+	[acinclude.m4] Minor improvement: in the MPFR_CHECK_GMP test, changed
+	the exit status values 1..3 to 81..83 in order to avoid confusion, as
+	low values can typically be returned in case of compile or link error.
 
-[tests/tget_set_d64.c] Updated comment (only the x86 and x86_64 targets
-are affected).
-------------------------------------------------------------------------
-r13536 | vlefevre | 2019-07-23 06:55:53 +0000 (Tue, 23 Jul 2019) | 1 line
-Changed paths:
-   M /trunk/tests/tget_set_d64.c
+2020-06-02  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tget_set_d64.c] Improved a comment.
-------------------------------------------------------------------------
-r13535 | vlefevre | 2019-07-22 14:08:50 +0000 (Mon, 22 Jul 2019) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_set_d64.c
+	[tests/memory.c] Updated a comment.
 
-[tests/tget_set_d64.c] Avoid GCC bug 91226: wrong propagation of
-non-canonical _Decimal64 constant.
-------------------------------------------------------------------------
-r13534 | vlefevre | 2019-07-22 12:57:55 +0000 (Mon, 22 Jul 2019) | 2 lines
-Changed paths:
-   M /trunk/src/set_d64.c
+	[src/mpfr-longlong.h] Added code to check that mpfr-longlong.h is not
+	included directly; MPFR_NEED_LONGLONG_H must be defined instead.
 
-[src/set_d64.c] In decimal64_to_string, log the memory representation
-of the _Decimal64 argument.
-------------------------------------------------------------------------
-r13533 | vlefevre | 2019-07-22 12:47:56 +0000 (Mon, 22 Jul 2019) | 3 lines
-Changed paths:
-   M /trunk/src/set_d64.c
+	[acinclude.m4] To complete r13928, one also needs to define
+	MPFR_NEED_INTMAX_H here when mpfr-intmax.h is used.
 
-[src/set_d64.c] In decimal64_to_string, log the various fields of the
-_Decimal64 argument whose memory data is regarded as a double (as this
-is the current implementation of this function).
-------------------------------------------------------------------------
-r13532 | vlefevre | 2019-07-22 10:36:28 +0000 (Mon, 22 Jul 2019) | 1 line
-Changed paths:
-   M /trunk/tests/tget_set_d64.c
+	[src/{mpfr-impl.h,mpfr-intmax.h}] Added code to check that mpfr-intmax.h
+	is not included directly; MPFR_NEED_INTMAX_H must be defined instead.
 
-[tests/tget_set_d64.c] More output details in the noncanonical test.
-------------------------------------------------------------------------
-r13531 | vlefevre | 2019-07-22 10:29:09 +0000 (Mon, 22 Jul 2019) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_set_d64.c
+2020-06-01  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tget_set_d64.c] Improved the noncanonical test, but this does not
-solve the failure with gcc-snapshot.
-------------------------------------------------------------------------
-r13530 | vlefevre | 2019-07-22 10:16:00 +0000 (Mon, 22 Jul 2019) | 3 lines
-Changed paths:
-   M /trunk/tests/tget_set_d64.c
+	Bug fixes and cleanup related to "src/mpfr-intmax.h" by introducing
+	a new macro MPFR_NEED_INTMAX_H, which should be defined instead of
+	using: #include "mpfr-intmax.h"
 
-[tests/tget_set_d64.c] More meaningful name of a test with a
-non-canonical encoding and more details (fails with Debian's
-gcc-snapshot 10.0.0 20190718, trunk revision 273586).
-------------------------------------------------------------------------
-r13528 | vlefevre | 2019-07-12 15:58:07 +0000 (Fri, 12 Jul 2019) | 2 lines
-Changed paths:
-   M /trunk/doc/README.dev
+	Details on the bugs fixed:
+	  * The code added in r13916 forgot a #include <limits.h> since this
+	    code does a test on ULLONG_MAX. With the cleanup, <limits.h> is
+	    already always included by mpfr-impl.h (early enough).
+	  * In src/get_str.c and tests/memory.c, a #include "config.h" was
+	    missing before #include "mpfr-intmax.h"; this issue would affect
+	    platforms where "config.h" is needed and where <inttypes.h> or
+	    <stdint.h> does not exist or does not work.
 
-[doc/README.dev] "To make a release": mention -Wsuggest-attribute=...
-options (but mpfr.h first needs some macros like __MPFR_SENTINEL_ATTR).
-------------------------------------------------------------------------
-r13527 | vlefevre | 2019-07-12 13:31:46 +0000 (Fri, 12 Jul 2019) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+2020-06-01  Vincent Lefèvre  <vincent at vinc17.net>
 
-Renamed MPFR_CONST_ATTR macro to MPFR_CONST_FUNCTION_ATTR in order to be
-similar to the MPFR_{PURE,HOT,COLD}_FUNCTION_ATTR macro names.
-------------------------------------------------------------------------
-r13526 | vlefevre | 2019-07-10 09:15:09 +0000 (Wed, 10 Jul 2019) | 5 lines
-Changed paths:
-   M /trunk/doc/README.dev
+	[tests/tgamma.c] For the non-regression test added in r13907, one
+	also needs to temporarily increase the memory limit, thus require
+	MPFR_CHECK_LARGEMEM too.
 
-[doc/README.dev] Update concerning the MPFR manual:
-  * Updated information about the papersize issues (should be fixed,
-    but manual checking is recommended).
-  * Detailed English typography.
-  * Removed mention of the old texinfo bug 33329 (Debian bug 583558).
-------------------------------------------------------------------------
-r13524 | vlefevre | 2019-07-08 11:08:18 +0000 (Mon, 08 Jul 2019) | 1 line
-Changed paths:
-   M /trunk/codespell.exclude
-   M /trunk/codespell.ignore
+2020-05-26  Vincent Lefèvre  <vincent at vinc17.net>
 
-[codespell.*] Update for codespell 1.15.0.
-------------------------------------------------------------------------
-r13522 | vlefevre | 2019-07-08 11:03:43 +0000 (Mon, 08 Jul 2019) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
-   M /trunk/src/free_cache.c
-   M /trunk/src/mpfr-gmp.c
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/mpfr.h
+	[acinclude.m4] If decimal floats are explicitly disabled, do not do
+	the check of the bit-field ordering for _Decimal128.
 
-Fixed spelling mistakes found by codespell 1.15.0.
-------------------------------------------------------------------------
-r13519 | vlefevre | 2019-07-06 19:55:37 +0000 (Sat, 06 Jul 2019) | 2 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	[acinclude.m4] Fixed detection of bit-field ordering for _Decimal128:
+	a compiler error with exit status 1 was mixed up with little endian.
 
-[acinclude.m4] Added missing "const" qualifier to "char *" in a test;
-needed with GCC's "-Wwrite-strings -Werror".
-------------------------------------------------------------------------
-r13517 | vlefevre | 2019-07-02 12:13:56 +0000 (Tue, 02 Jul 2019) | 4 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+2020-05-24  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr-impl.h] MPFR_GROUP_* macros / mpfr_group_t structure: when
-MPFR_GROUP_STATIC_SIZE is 0 (for testing), use a flexible array member
-(ISO C99) instead of a zero-length array (GNU extension, forbidden in
-ISO C).
-------------------------------------------------------------------------
-r13515 | vlefevre | 2019-07-02 11:06:33 +0000 (Tue, 02 Jul 2019) | 3 lines
-Changed paths:
-   M /trunk/tests/tdiv.c
-   M /trunk/tests/tfpif.c
-   M /trunk/tests/tmul_2exp.c
-   M /trunk/tests/trandom.c
-   M /trunk/tests/trint.c
-   M /trunk/tests/tsprintf.c
-   M /trunk/tests/tsum.c
-   M /trunk/tests/turandom.c
+	[src/mpfr-intmax.h] Added support for Silicon Graphics IRIX 6.5 (1998)
+	with native /usr/bin/cc, which knows the long long type but defines
+	ULONGLONG_MAX, etc. instead of ULLONG_MAX, etc.
 
-[tests/*.c] Added missing "const" qualifier to "char *" when this
-involves string literals (detected by using GCC's -Wwrite-strings
-option, via the default -Wdiscarded-qualifiers warning).
-------------------------------------------------------------------------
-r13514 | vlefevre | 2019-07-01 15:40:11 +0000 (Mon, 01 Jul 2019) | 4 lines
-Changed paths:
-   M /trunk/acinclude.m4
-   M /trunk/configure.ac
+	[tests/tget_ld_2exp.c] Reverted r13914 as we still need to support
+	pre-C99 compilers (and this change was useless).
+	If C99 syntax is needed, there should be a configure test, and the
+	code should be conditional.
 
-[acinclude.m4,configure.ac] MPFR_C_LONG_DOUBLE_FORMAT: also detect
-clang's LTO.
-Note: no longer use $FGREP (see r13513) as its status is unclear on
-non-POSIX systems (though very probably available when $EGREP is).
-------------------------------------------------------------------------
-r13513 | vlefevre | 2019-07-01 14:12:10 +0000 (Mon, 01 Jul 2019) | 5 lines
-Changed paths:
-   M /trunk/acinclude.m4
-   M /trunk/configure.ac
+2020-05-23  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[acinclude.m4,configure.ac] For MPFR_C_LONG_DOUBLE_FORMAT, when the
-format is unknown and it is detected that LTO has been used, output
-"recognition prevented by LTO".
-Note: at the same time, since AC_PROG_FGREP was needed, replaced
-$EGREP by $FGREP when applicable.
-------------------------------------------------------------------------
-r13512 | vlefevre | 2019-07-01 13:44:51 +0000 (Mon, 01 Jul 2019) | 2 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	[tests/tget_ld_2exp.c] put expected value in hex in bug20180904()
 
-[acinclude.m4] MPFR_C_LONG_DOUBLE_FORMAT: improved comment and added a
-warning saying that this does not work with GCC's LTO (gcc -flto ...).
-------------------------------------------------------------------------
-r13511 | zimmerma | 2019-06-07 12:42:41 +0000 (Fri, 07 Jun 2019) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+2020-05-20  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sub1sp.c] simplified code of sub1sp1 for bx = cx
+	[doc/README.dev] "To make a release": mention MPFR_CHECK_EXPENSIVE.
 
-------------------------------------------------------------------------
-r13510 | vlefevre | 2019-06-06 12:43:33 +0000 (Thu, 06 Jun 2019) | 3 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+2020-05-19  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/sub1sp.c] About r13506-13509 and optimization: added a comment
-about Clang after some tests (without giving details, as in practice,
-this is more complex... but this is the general idea).
-------------------------------------------------------------------------
-r13509 | zimmerma | 2019-06-06 12:23:42 +0000 (Thu, 06 Jun 2019) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[tests/tgamma.c] added comment about bug fix
 
-[src/sub1sp.c] fixed typo
+	[src/bernoulli.c] improve initial precision in mpfr_bernoulli_internal()
+			  (avoid failures for n <= 10000)
 
-------------------------------------------------------------------------
-r13508 | vlefevre | 2019-06-06 12:12:11 +0000 (Thu, 06 Jun 2019) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[src/bernoulli.c] fix bug with non-regression test added in r13907
 
-[src/sub1sp.c] Added reference to GCC PR30315 about a misoptimization
-on x86/x86_64 (see r13506 and r13507).
-------------------------------------------------------------------------
-r13507 | vlefevre | 2019-06-06 10:51:57 +0000 (Thu, 06 Jun 2019) | 3 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[src/bernoulli.c] temporary fix for the bug in mpfr_gamma, something must be
+	                  wrong in the error analysis of mpfr_bernoulli_internal()
 
-[src/sub1sp.c] Completed r13506: added MPFR_ASSERTD to justify the
-new code and give more information to the compiler; added comments
-about this optimization issue.
-------------------------------------------------------------------------
-r13506 | zimmerma | 2019-06-06 10:14:04 +0000 (Thu, 06 Jun 2019) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[doc/README.dev] added MPFR_CHECK_EXPENSIVE
+	[tests/tgamma.c] use MPFR_CHECK_EXPENSIVE
 
-[src/sub1sp.c] small speedup (following discussion with Félix Breton)
+	added non-regression test for bug reported by Frithjof Blomquist
 
-------------------------------------------------------------------------
-r13498 | vlefevre | 2019-06-01 14:22:53 +0000 (Sat, 01 Jun 2019) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+2020-05-04  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/README.dev] Added a note about MPFR_DISABLE_IEEE_FLOATS.
-------------------------------------------------------------------------
-r13497 | vlefevre | 2019-06-01 13:57:48 +0000 (Sat, 01 Jun 2019) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	[tools/mpfrlint] Use of codespell: better workaround to python ugliness.
 
-[doc/README.dev] Updated MPFR_DISABLE_IEEE_FLOATS description.
-------------------------------------------------------------------------
-r13496 | vlefevre | 2019-06-01 13:54:08 +0000 (Sat, 01 Jun 2019) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+2020-04-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr-impl.h] Undefine HAVE_LDOUBLE_IS_DOUBLE & HAVE_LDOUBLE_IEEE_*
-macros if MPFR_DISABLE_IEEE_FLOATS is defined, as the goal is to test
-code not relying on IEEE floats.
-------------------------------------------------------------------------
-r13495 | vlefevre | 2019-05-24 13:17:50 +0000 (Fri, 24 May 2019) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[doc/mpfr.texi] Section "Rounding" / even-rounding rule: the odd
+	radices β are actually not concerned since in such radices, β^k
+	is always odd, so that the exponent does not matter.
 
-[src/mpfr-impl.h] Code simplification with the generic
-LONGDOUBLE_NAN_ACTION macro (the WANT_LONGDOUBLE_VOLATILE macro is not
-needed as used only once, thus removed). Improved the related comment.
-------------------------------------------------------------------------
-r13494 | vlefevre | 2019-05-24 08:33:50 +0000 (Fri, 24 May 2019) | 4 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/volatile.c
+	[doc/mpfr.texi] In Section "Rounding", for MPFR_RNDN, added a note
+	about the even-rounding rule in particular cases: 1-digit precision
+	and odd radices.
+	Note: A short explanation was already in the mpfr_get_str description,
+	which is where the issue could occur at the time the minimum precision
+	of MPFR numbers was 2. Now that the minimum precision is 1, this rule
+	in such special cases is more general.
 
-[src] Instead of including <float.h> in volatile.c (r13493), do that
-unconditionally in mpfr-impl.h to make sure that macro definitions
-in this header file are always correct: some definitions depend on
-various macros from <float.h>, such as FLT_RADIX and DBL_MANT_DIG.
-------------------------------------------------------------------------
-r13493 | zimmerma | 2019-05-24 07:35:03 +0000 (Fri, 24 May 2019) | 3 lines
-Changed paths:
-   M /trunk/src/volatile.c
+	[doc/mpfr.texi] + "than": also in a comment.
 
-applied patch from #21762
-(https://gforge.inria.fr/tracker/?func=detail&atid=619&aid=21762&group_id=136)
+	[doc/mpfr.texi] Corrected a typo. Changed "{less,greater} or equal to"
+	to the more common "{less,greater} than or equal to".
 
-------------------------------------------------------------------------
-r13492 | vlefevre | 2019-05-15 13:53:23 +0000 (Wed, 15 May 2019) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+2020-04-26  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/README.dev] Added another URL on undefined behavior.
-------------------------------------------------------------------------
-r13488 | vlefevre | 2019-04-30 17:06:09 +0000 (Tue, 30 Apr 2019) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	[doc/mpfr.texi] In the paragraph on mpfr_rnd_t, give a reference
+	to Section "Rounding".
 
-[doc/README.dev] Note that -static-libasan does not work with MPFR.
-------------------------------------------------------------------------
-r13486 | vlefevre | 2019-04-30 15:13:32 +0000 (Tue, 30 Apr 2019) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	[doc/mpfr.texi] s/can not/cannot/
 
-[doc/README.dev] Update about the use of GCC's "-fsanitize=address".
-------------------------------------------------------------------------
-r13485 | zimmerma | 2019-04-30 13:49:59 +0000 (Tue, 30 Apr 2019) | 3 lines
-Changed paths:
-   M /trunk/src/zeta.c
+	[doc/mpfr.texi] Improved Section "Rounding" even more:
+	  * Added a note about the sign of the result (important for 0).
+	  * Described the directed rounding modes (BTW, this notion of
+	    "directed rounding modes" was used but never defined).
 
-[src/zeta.c] fixed out-of-bound read reported by Thomas Bailleux
+	[doc/mpfr.texi] Improved the description of the rounding modes:
+	  * Be more clear that MPFR_RNDN uses the even rounding rule.
+	  * In "two representable numbers", add "consecutive".
+	  * Be more general than radix 2 (due to conversions to a string).
+	  * Consistent typography.
 
-Note: This bug was introduced in r12066.
-------------------------------------------------------------------------
-r13484 | vlefevre | 2019-04-29 13:29:12 +0000 (Mon, 29 Apr 2019) | 1 line
-Changed paths:
-   M /trunk/tools/ck-version-info
+2020-04-25  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tools/ck-version-info] Minor corrections in a comment.
-------------------------------------------------------------------------
-r13483 | vlefevre | 2019-04-29 13:26:29 +0000 (Mon, 29 Apr 2019) | 3 lines
-Changed paths:
-   M /trunk/doc/README.dev
+	[doc/mpfr.texi]
+	  * mpfr_init2: mention mpfr_prec_round; added a note about
+	    memory allocation.
+	  * mpfr_prec_round: clarification ("new allocation" could be
+	    surprising since one needs less memory).
 
-[doc/README.dev] Update about the VERSION file:
-  * Added a paragraph on the meaning of the "-dev" suffix.
-  * Removed a confusing and useless "-dev" in an example.
-------------------------------------------------------------------------
-r13482 | vlefevre | 2019-04-29 13:17:34 +0000 (Mon, 29 Apr 2019) | 4 lines
-Changed paths:
-   M /trunk/tools/ck-news
+2020-04-25  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tools/ck-news] Changed the condition of the test for FIXME or TODO:
-Previously it was disabled only for -dev versions. Now it is enabled
-only for releases and release candidates. This will allow snapshots,
-for which the NEWS file may still contain a FIXME or TODO.
-------------------------------------------------------------------------
-r13481 | vlefevre | 2019-04-29 13:11:11 +0000 (Mon, 29 Apr 2019) | 1 line
-Changed paths:
-   M /trunk/tools/ck-version-info
+	[doc/mpfr.texi] document that mpfr_prec_round does no new allocation
+			in case the allocated memory is enough
 
-[tools/ck-version-info] Corrected check. Added explanations in comments.
-------------------------------------------------------------------------
-r13480 | vlefevre | 2019-04-29 12:44:01 +0000 (Mon, 29 Apr 2019) | 1 line
-Changed paths:
-   M /trunk/tools/ck-version-info
+2020-04-22  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tools/ck-version-info] Better error message if $vinfo is not defined.
-------------------------------------------------------------------------
-r13479 | vlefevre | 2019-04-29 12:38:40 +0000 (Mon, 29 Apr 2019) | 1 line
-Changed paths:
-   M /trunk/src/Makefile.am
+	[src/atan.c] Removing the FIXME: I can't see anything wrong in the
+	MPFR code. This could be a bug in GCC's analyzer (which is currently
+	experimental). And GCC bug 94713 in the analyzer prevents debugging
+	as it makes impossible to track uninitialized values: warnings do not
+	occur the first time an uninitialized value occurs.
 
-[src/Makefile.am] Added a comment.
-------------------------------------------------------------------------
-r13477 | vlefevre | 2019-04-25 12:26:27 +0000 (Thu, 25 Apr 2019) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/atan.c] Added an assertion.
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r13475 | vlefevre | 2019-04-25 10:55:11 +0000 (Thu, 25 Apr 2019) | 3 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/atan.c] Reduce the number of mpz_get_ui calls with assertions.
 
-[doc/mpfr.texi] Updated the list of rounding modes in the description
-of the mpfr_print_rnd_mode function. Choose the same order as in the
-"Rounding Modes" section in "MPFR Basics".
-------------------------------------------------------------------------
-r13474 | vlefevre | 2019-04-25 10:53:38 +0000 (Thu, 25 Apr 2019) | 2 lines
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[src/atan.c] Added a FIXME.
 
-[tools/mpfrlint] Lists of rounding modes: also check with the
-"Rounding Modes" section in "MPFR Basics".
-------------------------------------------------------------------------
-r13473 | vlefevre | 2019-04-25 10:35:45 +0000 (Thu, 25 Apr 2019) | 1 line
-Changed paths:
-   M /trunk/src/print_rnd_mode.c
+2020-04-14  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/print_rnd_mode.c] Added a comment to remember to update the manual.
-------------------------------------------------------------------------
-r13472 | vlefevre | 2019-04-25 10:34:31 +0000 (Thu, 25 Apr 2019) | 2 lines
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[doc/texinfo.tex] Update to 2020-02-11.09 with "autoreconf -i -f"
+	under Debian/unstable.
+	Note: The generated mpfr.html and mpfr.info files remain the same.
+	In mpfr.pdf, there are minor changes concerning horizontal spacing
+	in paragraphs with a URL.
 
-[tools/mpfrlint] Check that the lists of rounding modes in
-src/print_rnd_mode.c and doc/mpfr.texi are identical.
-------------------------------------------------------------------------
-r13471 | vlefevre | 2019-04-25 10:05:47 +0000 (Thu, 25 Apr 2019) | 1 line
-Changed paths:
-   M /trunk/src/mpfr.h
+2020-04-11  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr.h] Added a blank line (grouping of function declarations).
-------------------------------------------------------------------------
-r13470 | vlefevre | 2019-04-25 10:04:25 +0000 (Thu, 25 Apr 2019) | 1 line
-Changed paths:
-   M /trunk/TODO
-   M /trunk/src/mpfr.h
-   M /trunk/src/vasprintf.c
+	[tests/tget_set_d64.c] Fixed missing "#if _MPFR_IEEE_FLOATS" that
+	became visible with r13878 now that the encoding of decimal floats
+	can be detected at compile time. But by fixing the defined macros
+	manually, this issue could be visible before r13878.
 
-Added support for GCC's returns_nonnull attribute (with GCC 4.9+).
-------------------------------------------------------------------------
-r13469 | vlefevre | 2019-04-25 09:31:55 +0000 (Thu, 25 Apr 2019) | 1 line
-Changed paths:
-   M /trunk/TODO
+2020-04-10  Vincent Lefèvre  <vincent at vinc17.net>
 
-[TODO] Update about GCC's nonnull and returns_nonnull attributes.
-------------------------------------------------------------------------
-r13467 | vlefevre | 2019-04-16 08:11:02 +0000 (Tue, 16 Apr 2019) | 5 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/vasprintf.c
+	Reworked decimal support and detection, resolving FIXMEs.
+	  * INSTALL, acinclude.m4, configure.ac: --enable-decimal-float can
+	    take new values. Change of macro DPD_FORMAT (DPD was assumed in
+	    case of cross-compilation, which could be wrong) to 3 new macros:
+	    DECIMAL_DPD_FORMAT, DECIMAL_BID_FORMAT, DECIMAL_GENERIC_CODE.
+	  * doc/README.dev: documented these 3 new macros.
+	  * src/mpfr-impl.h: the detection of the BID encoding can now be
+	    done at compile time when GCC defines __DECIMAL_BID_FORMAT__
+	    (as on x86); support of the 3 new macros.
+	  * src/{get_d64.c,set_d64.c,set_d128.c}: update.
+	  * tests/{tget_set_d64.c,tget_set_d128.c,tversion.c}: update.
 
-New macro MPFR_FALLTHROUGH to avoid -Wimplicit-fallthrough warnings
-with GCC 7+. This macro also makes the code more readable by bringing
-the attention on an unusual fallthrough in a switch case.
-  * src/mpfr-impl.h: define this macro.
-  * src/vasprintf.c: use this macro in a case of fallthrough.
-------------------------------------------------------------------------
-r13466 | vlefevre | 2019-04-15 12:27:49 +0000 (Mon, 15 Apr 2019) | 8 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
-   M /trunk/tests/tsprintf.c
+2020-04-08  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/vasprintf.c] Minor bug fix: when an integer is to be read for
-  the field width or precision, regard strings like "17*" as invalid
-  instead of regarding it as "*" (ignoring the integer that precedes,
-  except in case of overflow). In C's printf, such an invalid string
-  yields undefined behavior, but in MPFR, we normally print the
-  invalid format specifier as a literal string in such a case.
-  Bug detected with -Wimplicit-fallthrough from GCC 7+.
-[tests/tsprintf.c] Added non-regression test.
-------------------------------------------------------------------------
-r13464 | vlefevre | 2019-04-02 09:36:47 +0000 (Tue, 02 Apr 2019) | 1 line
-Changed paths:
-   M /trunk/configure.ac
+	Updated URLs of the GCC mailing-list archives.
 
-[configure.ac] Updated --enable-logging description.
-------------------------------------------------------------------------
-r13463 | vlefevre | 2019-04-02 09:33:07 +0000 (Tue, 02 Apr 2019) | 3 lines
-Changed paths:
-   M /trunk/acinclude.m4
+2020-04-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-[acinclude.m4] When logging support is requested, run a test to check
-that code with nested functions and the 'cleanup' attribute can be
-compiled, as these features are needed.
-------------------------------------------------------------------------
-r13462 | vlefevre | 2019-04-02 09:07:39 +0000 (Tue, 02 Apr 2019) | 2 lines
-Changed paths:
-   M /trunk/configure.ac
+	[src/mpfr-gmp.h] Updated FIXME about AC_FUNC_ALLOCA (in 2019-01, I
+	already noticed a probable bug in the AC_FUNC_ALLOCA description,
+	but forgot about it).
 
-[configure.ac] AC_ARG_ENABLE(float128,...): updated comment and
-description.
-------------------------------------------------------------------------
-r13461 | vlefevre | 2019-04-02 08:56:21 +0000 (Tue, 02 Apr 2019) | 5 lines
-Changed paths:
-   M /trunk/configure.ac
+	[doc/mpfr.texi] Updated the month.
 
-[configure.ac] Updated comment for AC_ARG_ENABLE(decimal-float,...).
-  * Removed information about very old GCC versions.
-  * _Decimal128 is considered too, in addition to _Decimal64.
-  * No longer just a GCC extension, but part of ISO/IEC TS 18661.
-  * Added a FIXME for new options about _Decimal64 and _Decimal128.
-------------------------------------------------------------------------
-r13460 | vlefevre | 2019-04-02 08:43:30 +0000 (Tue, 02 Apr 2019) | 1 line
-Changed paths:
-   M /trunk/configure.ac
+	[doc/mpfr.texi] Formatted output functions: added a comment with the URL
+	of the bug report.
 
-[configure.ac] Cleanup: moved some AC_ARG_ENABLE's where they should be.
-------------------------------------------------------------------------
-r13459 | vlefevre | 2019-03-29 16:27:57 +0000 (Fri, 29 Mar 2019) | 8 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[NEWS,doc/mpfr.texi] Documented the improvement in the formatted output
+	functions (mpfr_printf, etc.) with an empty precision field, about
+	trailing zeros.
 
-[src/vasprintf.c]
-  * Corrected FIXME by modifying the assertion. The failure could occur
-    only when mpfr_intmax_t has the same size as int (which is the case
-    when long = int and either intmax_t and long long are not available
-    or intmax_t = long = int), and only when INT_MIN is provided as a
-    field width argument.
-  * Related to that, updated a test to improve optimization.
-  * Added comments.
-------------------------------------------------------------------------
-r13458 | vlefevre | 2019-03-29 15:20:48 +0000 (Fri, 29 Mar 2019) | 2 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+2020-04-03  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/vasprintf.c] Added a FIXME: tsprintf yields an assertion failure
-with sizeof(mpfr_intmax_t) = 4 (which was not tested until now).
-------------------------------------------------------------------------
-r13457 | vlefevre | 2019-03-29 14:39:22 +0000 (Fri, 29 Mar 2019) | 32 lines
-Changed paths:
-   M /trunk/acinclude.m4
-   M /trunk/doc/README.dev
-   M /trunk/src/fits_intmax.c
-   M /trunk/src/fits_uintmax.c
-   M /trunk/src/get_sj.c
-   M /trunk/src/get_uj.c
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/mpfr-intmax.h
-   M /trunk/tests/tfits.c
-   M /trunk/tests/tget_sj.c
-   M /trunk/tests/tset_sj.c
-   M /trunk/tests/tstdint.c
-   M /trunk/tests/tversion.c
+	[tests/tsub.c] Corrected MPFR_ASSERTD to MPFR_ASSERTN.
 
-Cleanup / fixes related to intmax_t, mpfr_intmax_t, etc.
+	[tests/tsub.c] Reverted r13862 and fixed the test_ubf test: A random
+	precision was too small, so that an input for the test was not computed
+	exactly (I had modified the values of the inputs for better tests, but
+	forgot to change the minimum precision). Also check that the inputs are
+	computed exactly (which is what I often do, but here, I had forgotten),
+	in order to make errors like the above one easier to understand in case
+	the test will have to be modified later.
+	Note: With the incorrect input, the mpfr_sub1 result and flags were
+	actually correct, so that this was only a bug in the test.
 
-The issues were:
-  * The build of the tests (make check) could fail with CFLAGS implying
-    "-std=c90 -Werror=format", i.e. if intmax_t was available but the
-    use of the "j" printf length modifier made the compilation fail
-    (its unconditional use was incorrect anyway).
-  * MPFR_INTMAX_MAX had definitions in both mpfr-impl.h & mpfr-intmax.h,
-    with inconsistent usage.
+2020-04-03  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-Detailed changes:
-  * acinclude.m4: removed the definition of MPFR_PRINTF_MAXLM, which
-    could be incorrect (large numbers were not tested to select its
-    value); in the MPFR_FUNC_GMP_PRINTF_SPEC macro, check sprintf()
-    in addition to gmp_sprintf() as it is now also used in the tests;
-    updated some comments and messages.
-  * src/mpfr-impl.h: removed the MPFR_*INTMAX* definitions; they had
-    been added due to
-      https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=582698
-    with -ansi -pedantic-errors, but this issue was fixed in GCC 4.8
-    (released 6 years ago), so that they are no longer needed.
-  * src/mpfr-intmax.h: completed the definitions; mpfr_intmax_t is now
-    the largest integer type available and fully working (in particular
-    with printf), thus it may be smaller than intmax_t.
-  * doc/README.dev: updated the description of mpfr_intmax_t, etc.
-  * tests/tversion.c: output sizeof(mpfr_intmax_t) too.
-  * Various .c files in src and tests related to (u)intmax_t: use
-    INTMAX_MAX instead of MPFR_INTMAX_MAX, etc. as Debian bug 582698
-    (mentioned above) no longer occurs and mpfr_intmax_t may be smaller
-    than intmax_t; use the "j" printf length modifier instead of
-    MPFR_PRINTF_MAXLM, and protect it with "#ifndef NPRINTF_J"
-    (only the tests are concerned, so that this is not an issue).
-------------------------------------------------------------------------
-r13456 | vlefevre | 2019-03-28 17:19:00 +0000 (Thu, 28 Mar 2019) | 2 lines
-Changed paths:
-   M /trunk/src/urandomb.c
+	[INSTALL] update CompCert instructions
 
-[src/urandomb.c] Removed the FIXME: this is a bug in GMP or in Clang's
-memory sanitizer.
-------------------------------------------------------------------------
-r13455 | vlefevre | 2019-03-28 16:56:46 +0000 (Thu, 28 Mar 2019) | 2 lines
-Changed paths:
-   M /trunk/src/urandomb.c
+2020-04-02  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/urandomb.c] Added a FIXME (use-of-uninitialized-value with
-Clang's memory sanitizer).
-------------------------------------------------------------------------
-r13452 | vlefevre | 2019-03-13 12:51:51 +0000 (Wed, 13 Mar 2019) | 1 line
-Changed paths:
-   M /trunk/src/printf.c
+	[INSTALL] fixed CompCert instructions
 
-[src/printf.c] Removed unused definitions.
-------------------------------------------------------------------------
-r13451 | vlefevre | 2019-03-01 13:12:20 +0000 (Fri, 01 Mar 2019) | 6 lines
-Changed paths:
-   M /trunk/doc/README.dev
+2020-04-02  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/README.dev] Update about coverage:
-  * Mention not to enable optimizations.
-  * Replaced "-fprofile-arcs -ftest-coverage" by "--coverage", as
-    this is what is used by the tools/coverage script (note: this
-    is a synonym when compiling, but also allows the right options
-    to be used when linking, thus might be better in doubt).
-------------------------------------------------------------------------
-r13446 | vlefevre | 2019-02-04 14:17:56 +0000 (Mon, 04 Feb 2019) | 1 line
-Changed paths:
-   M /trunk/tests/tcmp_d.c
-   M /trunk/tests/tcmp_ld.c
-   M /trunk/tests/td_div.c
-   M /trunk/tests/tget_flt.c
-   M /trunk/tests/tset_float128.c
+	[tests/tset_ld.c] Reverted r13858: the check_overflow test was already
+	in MPFR 4.0.1 and was succeeding on armv5tejl-unknown-linux-gnueabi,
+	which had mpfr_cv_c_long_double_format='IEEE double, little endian'.
+	The issue should be investigated.
+	Note: MPFR_LDBL_MANT_DIG may be larger than the actual number of bits,
+	but this should not cause a failure in the tests.
 
-[tests] Use MPFR_DBL_* macros when necessary.
-------------------------------------------------------------------------
-r13445 | vlefevre | 2019-02-04 13:57:49 +0000 (Mon, 04 Feb 2019) | 1 line
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[tests/tget_ld_2exp.c] Proper fix: the bug20180904 test was designed
+	for the x87 extended precision, so enable it only in this case.
 
-[tools/mpfrlint] For consistency, use "[ch]" instead of "{c,h}".
-------------------------------------------------------------------------
-r13444 | vlefevre | 2019-02-04 13:55:47 +0000 (Mon, 04 Feb 2019) | 1 line
-Changed paths:
-   M /trunk/tools/mpfrlint
+2020-04-02  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tools/mpfrlint] Detect use of DBL_* macros instead of MPFR_DBL_* ones.
-------------------------------------------------------------------------
-r13443 | vlefevre | 2019-02-04 13:47:14 +0000 (Mon, 04 Feb 2019) | 1 line
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[tests/tsub.c] modify test_ubf() to always hit a current failing test
 
-[tools/mpfrlint] Improved message about division by zero.
-------------------------------------------------------------------------
-r13442 | vlefevre | 2019-02-04 13:39:17 +0000 (Mon, 04 Feb 2019) | 2 lines
-Changed paths:
-   M /trunk/doc/README.dev
-   M /trunk/tools/mpfrlint
+2020-04-02  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/README.dev] Improved description of MPFR_ERRDIVZERO.
-[tools/mpfrlint] Added a comment about division by zero.
-------------------------------------------------------------------------
-r13441 | vlefevre | 2019-02-04 13:23:37 +0000 (Mon, 04 Feb 2019) | 1 line
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[configure.ac] Fixed the change done in r13853 (about removed macros),
+	making the code simpler and more maintainable at the same time.
 
-[tools/mpfrlint] Check that native FP division by zero is not used.
-------------------------------------------------------------------------
-r13429 | vlefevre | 2019-01-31 15:09:00 +0000 (Thu, 31 Jan 2019) | 2 lines
-Changed paths:
-   M /trunk/src/Makefile.am
+2020-04-02  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/Makefile.am] In check-exported-symbols, replaced grep by $(GREP)
-as usual and like in check-gmp-symbols.
-------------------------------------------------------------------------
-r13423 | vlefevre | 2019-01-30 09:49:35 +0000 (Wed, 30 Jan 2019) | 1 line
-Changed paths:
-   M /trunk/configure.ac
+	[INSTALL] added configuration for CompCert test
 
-[configure.ac] Updated comment about default options in CFLAGS for GCC.
-------------------------------------------------------------------------
-r13421 | vlefevre | 2019-01-30 09:19:01 +0000 (Wed, 30 Jan 2019) | 7 lines
-Changed paths:
-   M /trunk/INSTALL
-   M /trunk/NEWS
-   M /trunk/configure.ac
+2020-04-02  Vincent Lefèvre  <vincent at vinc17.net>
 
-Update about CC / CFLAGS settings from GMP (__GMP_CC / __GMP_CFLAGS).
-  * configure.ac: remove -pedantic unconditionally; since r7044, it was
-    removed only when logging was enabled, as at that time only logging
-    was using C extensions.
-  * NEWS: added a line about this change.
-  * INSTALL: updated the note about CC / CFLAGS, removing the obsolete
-    reference to GMP 4.3.0 at the same time.
-------------------------------------------------------------------------
-r13420 | vlefevre | 2019-01-28 01:31:22 +0000 (Mon, 28 Jan 2019) | 1 line
-Changed paths:
-   M /trunk/tools/announce-text
+	[src/set_ld.c] Removed obsolete workaround due to LDBL_MAX being buggy
+	on old i386 systems (the tests were not using this workaround).
 
-[tools/announce-text] Corrected subject for Release Candidate > 1.
-------------------------------------------------------------------------
-r13415 | vlefevre | 2019-01-25 14:31:46 +0000 (Fri, 25 Jan 2019) | 1 line
-Changed paths:
-   M /trunk/ChangeLog
+2020-04-02  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-ChangeLog update with "LC_ALL=en_US.UTF8 TZ=UTC svn log -rHEAD:0 -v".
-------------------------------------------------------------------------
-r13414 | vlefevre | 2019-01-25 12:58:24 +0000 (Fri, 25 Jan 2019) | 1 line
-Changed paths:
-   M /trunk/NEWS
+	[tests/tget_ld_2exp.c] fixed for case where long double = double
+	[tests/tset_ld.c]      likewise
 
-[NEWS] Update about shared caches.
-------------------------------------------------------------------------
-r13413 | vlefevre | 2019-01-25 12:55:31 +0000 (Fri, 25 Jan 2019) | 1 line
-Changed paths:
-   M /trunk/NEWS
+2020-04-02  Vincent Lefèvre  <vincent at vinc17.net>
 
-[NEWS] Added: "Shared caches: cleanup."
-------------------------------------------------------------------------
-r13412 | vlefevre | 2019-01-25 12:52:54 +0000 (Fri, 25 Jan 2019) | 4 lines
-Changed paths:
-   M /trunk/src/mpfr-thread.h
+	[configure.ac] Moved MPFR_CONFIGS invocation: MPFR_CONFIGS uses LDFLAGS,
+	thus must be invoked after LDFLAGS has been determined completely.
 
-[src/mpfr-thread.h] Fixed the lock macros:
-  * in case of failure, one must abort, otherwise this would generally
-    be undefined behavior;
-  * added missing "do {} while (0)" (currently not mandatory).
-------------------------------------------------------------------------
-r13411 | vlefevre | 2019-01-25 12:01:18 +0000 (Fri, 25 Jan 2019) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+2020-04-02  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/mpfr-impl.h] Updated a comment about MPFR_DECL_INIT_CACHE and
-the shared cache.
-------------------------------------------------------------------------
-r13410 | vlefevre | 2019-01-25 11:48:40 +0000 (Fri, 25 Jan 2019) | 2 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	[INSTALL] now all tests pass with compcert
 
-[acinclude.m4] Avoid a warning with the pthread_rwlock_t test,
-as it is an error with -Werror.
-------------------------------------------------------------------------
-r13408 | vlefevre | 2019-01-25 00:52:54 +0000 (Fri, 25 Jan 2019) | 3 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	[acinclude.m4] added missing LDFLAGS for long double test
 
-[acinclude.m4] Fixed another C++ compatibility issue detected by
-the -Werror=c++-compat GCC option (it led the "long double" format
-to be unknown).
-------------------------------------------------------------------------
-r13407 | vlefevre | 2019-01-24 23:21:20 +0000 (Thu, 24 Jan 2019) | 2 lines
-Changed paths:
-   M /trunk/tests/trint.c
+2020-04-02  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/trint.c] Fixed C++ compatibility issue (arithmetic on enum)
-detected by the -Werror=c++-compat GCC option.
-------------------------------------------------------------------------
-r13406 | vlefevre | 2019-01-23 14:11:26 +0000 (Wed, 23 Jan 2019) | 3 lines
-Changed paths:
-   M /trunk/configure.ac
+	[doc/README.dev] Added HAVE_ALLOCA description.
 
-[configure.ac] By default (i.e. if CFLAGS is not already set), if
-the compiler is GCC not in C++ mode, add the -Wc++-compat warning
-since we expect the code to compile with a C++ compiler.
-------------------------------------------------------------------------
-r13401 | vlefevre | 2019-01-13 15:38:22 +0000 (Sun, 13 Jan 2019) | 1 line
-Changed paths:
-   M /trunk/tests/tcheck.c
+	[configure.ac] Do not remove the HAVE_ALLOCA macro, which is now used
+	by MPFR to determine the default MPFR_ALLOCA_MAX value.
 
-[tests/tcheck.c] Corrected meaningless error message.
-------------------------------------------------------------------------
-r13397 | vlefevre | 2019-01-13 00:13:15 +0000 (Sun, 13 Jan 2019) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2020-04-02  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/mpfr.texi] Minor correction for non-tex versions.
-Thanks to Trevor Spiteri for the bug report.
-------------------------------------------------------------------------
-r13396 | vlefevre | 2019-01-09 14:12:12 +0000 (Wed, 09 Jan 2019) | 3 lines
-Changed paths:
-   M /trunk/acinclude.m4
-   M /trunk/configure.ac
+	[INSTALL] update CompCert instructions
 
-Moved the compatibility test of the configure options even earlier, from
-acinclude.m4 to configure.ac, just after the code that defines them.
-Also added an associated AC_MSG_CHECKING message for better clarity.
-------------------------------------------------------------------------
-r13395 | vlefevre | 2019-01-09 14:01:33 +0000 (Wed, 09 Jan 2019) | 1 line
-Changed paths:
-   M /trunk/acinclude.m4
+2020-04-02  Vincent Lefèvre  <vincent at vinc17.net>
 
-[acinclude.m4] Simplified a message.
-------------------------------------------------------------------------
-r13394 | vlefevre | 2019-01-09 13:58:07 +0000 (Wed, 09 Jan 2019) | 2 lines
-Changed paths:
-   M /trunk/tests/tversion.c
+	[tests/tversion.c] Output whether MPFR is built with the GMP build,
+	and the MPFR_ALLOCA_MAX value if not.
 
-[tests/tversion.c] When the shared cache is enabled, also output the
-lock method (this information has been lost in r13032).
-------------------------------------------------------------------------
-r13393 | vlefevre | 2019-01-09 13:51:05 +0000 (Wed, 09 Jan 2019) | 3 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	[src/mpfr-gmp.h] If HAVE_ALLOCA is not defined, i.e. if alloca() is
+	not available (as detected by the configure script), then set the
+	default MPFR_ALLOCA_MAX value to 0 so that alloca() is not used.
 
-[acinclude.m4] When checking support for POSIX threads (pthread), also
-check that pthread_rwlock_t is supported, as it is needed by MPFR and
-conditionally defined in glibc's bits/pthreadtypes.h (via <pthread.h>).
-------------------------------------------------------------------------
-r13392 | vlefevre | 2019-01-09 12:56:20 +0000 (Wed, 09 Jan 2019) | 20 lines
-Changed paths:
-   M /trunk/acinclude.m4
-   M /trunk/configure.ac
+2020-04-02  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-Cleaned up configure code related to threading and the shared cache.
-  * acinclude.m4:
-      - detect incompatibilities between configure options at the
-        beginning of MPFR_CONFIGS, forcing enable_thread_safe to
-        "no" or "yes" when necessary, so that the subsequent code
-        can rely on that;
-      - check ISO C11 thread support and/or POSIX thread support
-        only when necessary;
-      - handle --enable-shared-cache early in MPFR_CONFIGS, because
-        the use of POSIX threads (pthread) may need to change CC,
-        CFLAGS, and LIBS (thus affecting other tests);
-      - test $enable_shared_cache instead of $mpfr_want_shared_cache;
-      - removed the now useless MPFR_CHECK_SHARED_CACHE function.
-  * configure.ac: no longer set the mpfr_want_shared_cache variable,
-    as enable_shared_cache (now used) already has the same usage.
-Note: currently,
-  ./configure --enable-shared-cache CFLAGS="-std=c99"
-still succeeds and still makes the compilation fail. This seems to
-be due to a limitation of AX_PTHREAD, which just tests linking, not
-compilation.
-------------------------------------------------------------------------
-r13391 | vlefevre | 2019-01-09 11:38:46 +0000 (Wed, 09 Jan 2019) | 5 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	[INSTALL] added instructions for CompCert
 
-[acinclude.m4] In MPFR_CHECK_SHARED_CACHE (used when the shared cache
-was requested), also set CC="$PTHREAD_CC" as documented by ax_pthread
-(autoconf-archive). This is not guaranteed to work, but according to
-the ax_pthread.m4 source, in the cases where "$PTHREAD_CC" != "$CC",
-not setting it will probably not work either.
-------------------------------------------------------------------------
-r13390 | vlefevre | 2019-01-09 10:20:54 +0000 (Wed, 09 Jan 2019) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+2020-04-02  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr-impl.h] Added a comment about the cache-related types, which
-depend on the locking methods.
-------------------------------------------------------------------------
-r13385 | vlefevre | 2019-01-08 13:29:14 +0000 (Tue, 08 Jan 2019) | 2 lines
-Changed paths:
-   M /trunk/tests/tstrtofr.c
+	[doc/README.dev] Updated MPFR_ALLOCA_MAX description.
 
-[tests/tstrtofr.c] Updated comment about GCC bug 86554: now fixed in
-the GCC trunk.
-------------------------------------------------------------------------
-r13383 | vlefevre | 2019-01-07 16:10:18 +0000 (Mon, 07 Jan 2019) | 2 lines
-Changed paths:
-   M /trunk/tests/Makefile.am
+	[src/mpfr-gmp.h] When MPFR_ALLOCA_MAX = 0 (set at configure time),
+	do not reference alloca() since we don't need it.
 
-[tests/Makefile.am] Replaced "env -u DISPLAY" by "env DISPLAY=''" as
-the -u option is not supported by NetBSD.
-------------------------------------------------------------------------
-r13380 | vlefevre | 2019-01-07 15:17:11 +0000 (Mon, 07 Jan 2019) | 4 lines
-Changed paths:
-   M /trunk/COPYING
-   M /trunk/COPYING.LESSER
+2020-03-31  Vincent Lefèvre  <vincent at vinc17.net>
 
-Updated files:
-  * COPYING from https://www.gnu.org/licenses/gpl-3.0.txt
-  * COPYING.LESSER from https://www.gnu.org/licenses/lgpl-3.0.txt
-These are URL updates and cosmetic changes.
-------------------------------------------------------------------------
-r13378 | vlefevre | 2019-01-07 14:26:23 +0000 (Mon, 07 Jan 2019) | 4 lines
-Changed paths:
-   M /trunk/ChangeLog
+	[doc/mpfr.texi] About mpfr_printf with %Re and empty precision field,
+	added a comment with URLs of the discussion and the bug report.
 
-ChangeLog update with "LC_ALL=en_US.UTF8 TZ=UTC0 svn log -rHEAD:0 -v".
-Note: For r5400, this changes an incorrect update done via r13372 back
-to the old log message, as the URL in this log message here describes
-a change in one of the files.
-------------------------------------------------------------------------
-r13376 | vlefevre | 2019-01-07 14:05:06 +0000 (Mon, 07 Jan 2019) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+2020-03-30  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/README.dev] Updated some URL's (http → https).
-------------------------------------------------------------------------
-r13374 | vlefevre | 2019-01-07 13:56:16 +0000 (Mon, 07 Jan 2019) | 1 line
-Changed paths:
-   M /trunk/doc/texinfo.tex
+	[src/sub1.c] Typo in a comment.
 
-[doc/texinfo.tex] Update to 2018-02-12.17 with "autoreconf -i -f".
-------------------------------------------------------------------------
-r13372 | vlefevre | 2019-01-07 13:49:57 +0000 (Mon, 07 Jan 2019) | 3 lines
-Changed paths:
-   M /trunk/BUGS
-   M /trunk/COPYING
-   M /trunk/ChangeLog
-   M /trunk/INSTALL
-   M /trunk/NEWS
-   M /trunk/README
-   M /trunk/TODO
-   M /trunk/acinclude.m4
-   M /trunk/configure.ac
-   M /trunk/doc/FAQ.html
-   M /trunk/doc/README.dev
-   M /trunk/doc/faq.xsl
-   M /trunk/doc/fdl.texi
-   M /trunk/examples/can_round.c
-   M /trunk/examples/divworst.c
-   M /trunk/examples/rndo-add.c
-   M /trunk/examples/sample.c
-   M /trunk/examples/threads.c
-   M /trunk/examples/version.c
-   M /trunk/src/abort_prec_max.c
-   M /trunk/src/acos.c
-   M /trunk/src/acosh.c
-   M /trunk/src/add.c
-   M /trunk/src/add1.c
-   M /trunk/src/add1sp.c
-   M /trunk/src/add1sp1_extracted.c
-   M /trunk/src/add_d.c
-   M /trunk/src/add_ui.c
-   M /trunk/src/agm.c
-   M /trunk/src/ai.c
-   M /trunk/src/amd/mparam.h
-   M /trunk/src/arm/mparam.h
-   M /trunk/src/asin.c
-   M /trunk/src/asinh.c
-   M /trunk/src/atan.c
-   M /trunk/src/atan2.c
-   M /trunk/src/atanh.c
-   M /trunk/src/bernoulli.c
-   M /trunk/src/beta.c
-   M /trunk/src/buildopt.c
-   M /trunk/src/cache.c
-   M /trunk/src/cbrt.c
-   M /trunk/src/check.c
-   M /trunk/src/clear.c
-   M /trunk/src/clears.c
-   M /trunk/src/cmp.c
-   M /trunk/src/cmp2.c
-   M /trunk/src/cmp_abs.c
-   M /trunk/src/cmp_d.c
-   M /trunk/src/cmp_ld.c
-   M /trunk/src/cmp_si.c
-   M /trunk/src/cmp_ui.c
-   M /trunk/src/comparisons.c
-   M /trunk/src/const_catalan.c
-   M /trunk/src/const_euler.c
-   M /trunk/src/const_log2.c
-   M /trunk/src/const_pi.c
-   M /trunk/src/constant.c
-   M /trunk/src/copysign.c
-   M /trunk/src/cos.c
-   M /trunk/src/cosh.c
-   M /trunk/src/cot.c
-   M /trunk/src/coth.c
-   M /trunk/src/csc.c
-   M /trunk/src/csch.c
-   M /trunk/src/d_div.c
-   M /trunk/src/d_sub.c
-   M /trunk/src/digamma.c
-   M /trunk/src/dim.c
-   M /trunk/src/div.c
-   M /trunk/src/div_2exp.c
-   M /trunk/src/div_2si.c
-   M /trunk/src/div_2ui.c
-   M /trunk/src/div_d.c
-   M /trunk/src/div_ui.c
-   M /trunk/src/dot.c
-   M /trunk/src/dump.c
-   M /trunk/src/eint.c
-   M /trunk/src/eq.c
-   M /trunk/src/erandom.c
-   M /trunk/src/erf.c
-   M /trunk/src/erfc.c
-   M /trunk/src/exceptions.c
-   M /trunk/src/exp.c
-   M /trunk/src/exp10.c
-   M /trunk/src/exp2.c
-   M /trunk/src/exp3.c
-   M /trunk/src/exp_2.c
-   M /trunk/src/expm1.c
-   M /trunk/src/extract.c
-   M /trunk/src/factorial.c
-   M /trunk/src/fits_intmax.c
-   M /trunk/src/fits_s.h
-   M /trunk/src/fits_sint.c
-   M /trunk/src/fits_slong.c
-   M /trunk/src/fits_sshort.c
-   M /trunk/src/fits_u.h
-   M /trunk/src/fits_uint.c
-   M /trunk/src/fits_uintmax.c
-   M /trunk/src/fits_ulong.c
-   M /trunk/src/fits_ushort.c
-   M /trunk/src/fma.c
-   M /trunk/src/fmma.c
-   M /trunk/src/fms.c
-   M /trunk/src/fpif.c
-   M /trunk/src/frac.c
-   M /trunk/src/free_cache.c
-   M /trunk/src/frexp.c
-   M /trunk/src/gamma.c
-   M /trunk/src/gamma_inc.c
-   M /trunk/src/gammaonethird.c
-   M /trunk/src/gen_inverse.h
-   M /trunk/src/generic/coverage/mparam.h
-   M /trunk/src/generic/mparam.h
-   M /trunk/src/get_d.c
-   M /trunk/src/get_d128.c
-   M /trunk/src/get_d64.c
-   M /trunk/src/get_exp.c
-   M /trunk/src/get_f.c
-   M /trunk/src/get_float128.c
-   M /trunk/src/get_flt.c
-   M /trunk/src/get_ld.c
-   M /trunk/src/get_q.c
-   M /trunk/src/get_si.c
-   M /trunk/src/get_sj.c
-   M /trunk/src/get_str.c
-   M /trunk/src/get_ui.c
-   M /trunk/src/get_uj.c
-   M /trunk/src/get_z.c
-   M /trunk/src/get_z_exp.c
-   M /trunk/src/gmp_op.c
-   M /trunk/src/grandom.c
-   M /trunk/src/hypot.c
-   M /trunk/src/ieee_floats.h
-   M /trunk/src/init.c
-   M /trunk/src/init2.c
-   M /trunk/src/inits.c
-   M /trunk/src/inits2.c
-   M /trunk/src/inp_str.c
-   M /trunk/src/int_ceil_log2.c
-   M /trunk/src/invert_limb.h
-   M /trunk/src/invsqrt_limb.h
-   M /trunk/src/isinf.c
-   M /trunk/src/isinteger.c
-   M /trunk/src/isnan.c
-   M /trunk/src/isnum.c
-   M /trunk/src/isqrt.c
-   M /trunk/src/isregular.c
-   M /trunk/src/iszero.c
-   M /trunk/src/jn.c
-   M /trunk/src/jyn_asympt.c
-   M /trunk/src/li2.c
-   M /trunk/src/lngamma.c
-   M /trunk/src/log.c
-   M /trunk/src/log10.c
-   M /trunk/src/log1p.c
-   M /trunk/src/log2.c
-   M /trunk/src/log_ui.c
-   M /trunk/src/logging.c
-   M /trunk/src/min_prec.c
-   M /trunk/src/minmax.c
-   M /trunk/src/mips/mparam.h
-   M /trunk/src/modf.c
-   M /trunk/src/mp_clz_tab.c
-   M /trunk/src/mparam_h.in
-   M /trunk/src/mpf2mpfr.h
-   M /trunk/src/mpfr-cvers.h
-   M /trunk/src/mpfr-gmp.c
-   M /trunk/src/mpfr-gmp.h
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/mpfr-intmax.h
-   M /trunk/src/mpfr-longlong.h
-   M /trunk/src/mpfr-mini-gmp.c
-   M /trunk/src/mpfr-mini-gmp.h
-   M /trunk/src/mpfr-sassert.h
-   M /trunk/src/mpfr-thread.h
-   M /trunk/src/mpfr.h
-   M /trunk/src/mpn_exp.c
-   M /trunk/src/mul.c
-   M /trunk/src/mul_1_extracted.c
-   M /trunk/src/mul_2exp.c
-   M /trunk/src/mul_2si.c
-   M /trunk/src/mul_2ui.c
-   M /trunk/src/mul_d.c
-   M /trunk/src/mul_ui.c
-   M /trunk/src/mulders.c
-   M /trunk/src/nbits_ulong.c
-   M /trunk/src/neg.c
-   M /trunk/src/next.c
-   M /trunk/src/nrandom.c
-   M /trunk/src/odd_p.c
-   M /trunk/src/out_str.c
-   M /trunk/src/pool.c
-   M /trunk/src/pow.c
-   M /trunk/src/pow_si.c
-   M /trunk/src/pow_ui.c
-   M /trunk/src/pow_z.c
-   M /trunk/src/powerof2.c
-   M /trunk/src/powerpc64/mparam.h
-   M /trunk/src/print_raw.c
-   M /trunk/src/print_rnd_mode.c
-   M /trunk/src/printf.c
-   M /trunk/src/random_deviate.c
-   M /trunk/src/random_deviate.h
-   M /trunk/src/rec_sqrt.c
-   M /trunk/src/reldiff.c
-   M /trunk/src/rem1.c
-   M /trunk/src/rint.c
-   M /trunk/src/rndna.c
-   M /trunk/src/root.c
-   M /trunk/src/round_near_x.c
-   M /trunk/src/round_p.c
-   M /trunk/src/round_prec.c
-   M /trunk/src/round_raw_generic.c
-   M /trunk/src/scale2.c
-   M /trunk/src/sec.c
-   M /trunk/src/sech.c
-   M /trunk/src/set.c
-   M /trunk/src/set_d.c
-   M /trunk/src/set_d128.c
-   M /trunk/src/set_d64.c
-   M /trunk/src/set_dfl_prec.c
-   M /trunk/src/set_exp.c
-   M /trunk/src/set_f.c
-   M /trunk/src/set_float128.c
-   M /trunk/src/set_flt.c
-   M /trunk/src/set_inf.c
-   M /trunk/src/set_ld.c
-   M /trunk/src/set_nan.c
-   M /trunk/src/set_prc_raw.c
-   M /trunk/src/set_prec.c
-   M /trunk/src/set_q.c
-   M /trunk/src/set_rnd.c
-   M /trunk/src/set_si.c
-   M /trunk/src/set_si_2exp.c
-   M /trunk/src/set_sj.c
-   M /trunk/src/set_str.c
-   M /trunk/src/set_str_raw.c
-   M /trunk/src/set_ui.c
-   M /trunk/src/set_ui_2exp.c
-   M /trunk/src/set_uj.c
-   M /trunk/src/set_z.c
-   M /trunk/src/set_z_exp.c
-   M /trunk/src/set_zero.c
-   M /trunk/src/setmax.c
-   M /trunk/src/setmin.c
-   M /trunk/src/setsign.c
-   M /trunk/src/sgn.c
-   M /trunk/src/si_op.c
-   M /trunk/src/signbit.c
-   M /trunk/src/sin.c
-   M /trunk/src/sin_cos.c
-   M /trunk/src/sinh.c
-   M /trunk/src/sinh_cosh.c
-   M /trunk/src/sparc64/mparam.h
-   M /trunk/src/sqr.c
-   M /trunk/src/sqrt.c
-   M /trunk/src/sqrt_ui.c
-   M /trunk/src/stack_interface.c
-   M /trunk/src/strtofr.c
-   M /trunk/src/sub.c
-   M /trunk/src/sub1.c
-   M /trunk/src/sub1sp.c
-   M /trunk/src/sub_d.c
-   M /trunk/src/sub_ui.c
-   M /trunk/src/subnormal.c
-   M /trunk/src/sum.c
-   M /trunk/src/swap.c
-   M /trunk/src/tan.c
-   M /trunk/src/tanh.c
-   M /trunk/src/total_order.c
-   M /trunk/src/ubf.c
-   M /trunk/src/uceil_exp2.c
-   M /trunk/src/uceil_log2.c
-   M /trunk/src/ufloor_log2.c
-   M /trunk/src/ui_div.c
-   M /trunk/src/ui_pow.c
-   M /trunk/src/ui_pow_ui.c
-   M /trunk/src/ui_sub.c
-   M /trunk/src/urandom.c
-   M /trunk/src/urandomb.c
-   M /trunk/src/vasprintf.c
-   M /trunk/src/version.c
-   M /trunk/src/volatile.c
-   M /trunk/src/x86/mparam.h
-   M /trunk/src/x86_64/core2/mparam.h
-   M /trunk/src/x86_64/mparam.h
-   M /trunk/src/yn.c
-   M /trunk/src/zeta.c
-   M /trunk/src/zeta_ui.c
-   M /trunk/tests/Makefile.am
-   M /trunk/tests/cmp_str.c
-   M /trunk/tests/data/digamma
-   M /trunk/tests/data/li2
-   M /trunk/tests/memory.c
-   M /trunk/tests/mpf_compat.c
-   M /trunk/tests/mpf_compat.h
-   M /trunk/tests/mpfr-test.h
-   M /trunk/tests/mpfr_compat.c
-   M /trunk/tests/random2.c
-   M /trunk/tests/reuse.c
-   M /trunk/tests/rnd_mode.c
-   M /trunk/tests/tabort_defalloc1.c
-   M /trunk/tests/tabort_defalloc2.c
-   M /trunk/tests/tabort_prec_max.c
-   M /trunk/tests/tabs.c
-   M /trunk/tests/tacos.c
-   M /trunk/tests/tacosh.c
-   M /trunk/tests/tadd.c
-   M /trunk/tests/tadd1sp.c
-   M /trunk/tests/tadd_d.c
-   M /trunk/tests/tadd_ui.c
-   M /trunk/tests/tagm.c
-   M /trunk/tests/tai.c
-   M /trunk/tests/talloc-cache.c
-   M /trunk/tests/talloc.c
-   M /trunk/tests/tasin.c
-   M /trunk/tests/tasinh.c
-   M /trunk/tests/tassert.c
-   M /trunk/tests/tatan.c
-   M /trunk/tests/tatanh.c
-   M /trunk/tests/taway.c
-   M /trunk/tests/tbeta.c
-   M /trunk/tests/tbuildopt.c
-   M /trunk/tests/tcan_round.c
-   M /trunk/tests/tcbrt.c
-   M /trunk/tests/tcheck.c
-   M /trunk/tests/tcmp.c
-   M /trunk/tests/tcmp2.c
-   M /trunk/tests/tcmp_d.c
-   M /trunk/tests/tcmp_ld.c
-   M /trunk/tests/tcmp_ui.c
-   M /trunk/tests/tcmpabs.c
-   M /trunk/tests/tcomparisons.c
-   M /trunk/tests/tconst_catalan.c
-   M /trunk/tests/tconst_euler.c
-   M /trunk/tests/tconst_log2.c
-   M /trunk/tests/tconst_pi.c
-   M /trunk/tests/tcopysign.c
-   M /trunk/tests/tcos.c
-   M /trunk/tests/tcosh.c
-   M /trunk/tests/tcot.c
-   M /trunk/tests/tcoth.c
-   M /trunk/tests/tcsc.c
-   M /trunk/tests/tcsch.c
-   M /trunk/tests/td_div.c
-   M /trunk/tests/td_sub.c
-   M /trunk/tests/tdigamma.c
-   M /trunk/tests/tdim.c
-   M /trunk/tests/tdiv.c
-   M /trunk/tests/tdiv_d.c
-   M /trunk/tests/tdiv_ui.c
-   M /trunk/tests/tdot.c
-   M /trunk/tests/teint.c
-   M /trunk/tests/teq.c
-   M /trunk/tests/terandom.c
-   M /trunk/tests/terandom_chisq.c
-   M /trunk/tests/terf.c
-   M /trunk/tests/tests.c
-   M /trunk/tests/texceptions.c
-   M /trunk/tests/texp.c
-   M /trunk/tests/texp10.c
-   M /trunk/tests/texp2.c
-   M /trunk/tests/texpm1.c
-   M /trunk/tests/tfactorial.c
-   M /trunk/tests/tfits.c
-   M /trunk/tests/tfma.c
-   M /trunk/tests/tfmma.c
-   M /trunk/tests/tfmod.c
-   M /trunk/tests/tfms.c
-   M /trunk/tests/tfpif.c
-   M /trunk/tests/tfprintf.c
-   M /trunk/tests/tfrac.c
-   M /trunk/tests/tfrexp.c
-   M /trunk/tests/tgamma.c
-   M /trunk/tests/tgamma_inc.c
-   M /trunk/tests/tgeneric.c
-   M /trunk/tests/tgeneric_ui.c
-   M /trunk/tests/tget_d.c
-   M /trunk/tests/tget_d_2exp.c
-   M /trunk/tests/tget_f.c
-   M /trunk/tests/tget_flt.c
-   M /trunk/tests/tget_ld_2exp.c
-   M /trunk/tests/tget_q.c
-   M /trunk/tests/tget_set_d128.c
-   M /trunk/tests/tget_set_d64.c
-   M /trunk/tests/tget_sj.c
-   M /trunk/tests/tget_str.c
-   M /trunk/tests/tget_z.c
-   M /trunk/tests/tgmpop.c
-   M /trunk/tests/tgrandom.c
-   M /trunk/tests/thyperbolic.c
-   M /trunk/tests/thypot.c
-   M /trunk/tests/tinits.c
-   M /trunk/tests/tinp_str.c
-   M /trunk/tests/tinternals.c
-   M /trunk/tests/tisnan.c
-   M /trunk/tests/tisqrt.c
-   M /trunk/tests/tj0.c
-   M /trunk/tests/tj1.c
-   M /trunk/tests/tjn.c
-   M /trunk/tests/tl2b.c
-   M /trunk/tests/tlgamma.c
-   M /trunk/tests/tli2.c
-   M /trunk/tests/tlngamma.c
-   M /trunk/tests/tlog.c
-   M /trunk/tests/tlog10.c
-   M /trunk/tests/tlog1p.c
-   M /trunk/tests/tlog2.c
-   M /trunk/tests/tlog_ui.c
-   M /trunk/tests/tmin_prec.c
-   M /trunk/tests/tminmax.c
-   M /trunk/tests/tmodf.c
-   M /trunk/tests/tmul.c
-   M /trunk/tests/tmul_2exp.c
-   M /trunk/tests/tmul_d.c
-   M /trunk/tests/tmul_ui.c
-   M /trunk/tests/tnext.c
-   M /trunk/tests/tnrandom.c
-   M /trunk/tests/tnrandom_chisq.c
-   M /trunk/tests/tout_str.c
-   M /trunk/tests/toutimpl.c
-   M /trunk/tests/tpow.c
-   M /trunk/tests/tpow3.c
-   M /trunk/tests/tpow_all.c
-   M /trunk/tests/tpow_z.c
-   M /trunk/tests/tprec_round.c
-   M /trunk/tests/tprintf.c
-   M /trunk/tests/trandom.c
-   M /trunk/tests/trandom_deviate.c
-   M /trunk/tests/trec_sqrt.c
-   M /trunk/tests/tremquo.c
-   M /trunk/tests/trint.c
-   M /trunk/tests/trndna.c
-   M /trunk/tests/troot.c
-   M /trunk/tests/trootn_ui.c
-   M /trunk/tests/tsec.c
-   M /trunk/tests/tsech.c
-   M /trunk/tests/tset.c
-   M /trunk/tests/tset_d.c
-   M /trunk/tests/tset_exp.c
-   M /trunk/tests/tset_f.c
-   M /trunk/tests/tset_float128.c
-   M /trunk/tests/tset_ld.c
-   M /trunk/tests/tset_q.c
-   M /trunk/tests/tset_si.c
-   M /trunk/tests/tset_sj.c
-   M /trunk/tests/tset_str.c
-   M /trunk/tests/tset_z.c
-   M /trunk/tests/tset_z_exp.c
-   M /trunk/tests/tsgn.c
-   M /trunk/tests/tsi_op.c
-   M /trunk/tests/tsin.c
-   M /trunk/tests/tsin_cos.c
-   M /trunk/tests/tsinh.c
-   M /trunk/tests/tsinh_cosh.c
-   M /trunk/tests/tsprintf.c
-   M /trunk/tests/tsqr.c
-   M /trunk/tests/tsqrt.c
-   M /trunk/tests/tsqrt_ui.c
-   M /trunk/tests/tstckintc.c
-   M /trunk/tests/tstdint.c
-   M /trunk/tests/tstrtofr.c
-   M /trunk/tests/tsub.c
-   M /trunk/tests/tsub1sp.c
-   M /trunk/tests/tsub_d.c
-   M /trunk/tests/tsub_ui.c
-   M /trunk/tests/tsubnormal.c
-   M /trunk/tests/tsum.c
-   M /trunk/tests/tswap.c
-   M /trunk/tests/ttan.c
-   M /trunk/tests/ttanh.c
-   M /trunk/tests/ttotal_order.c
-   M /trunk/tests/ttrunc.c
-   M /trunk/tests/tui_div.c
-   M /trunk/tests/tui_pow.c
-   M /trunk/tests/tui_sub.c
-   M /trunk/tests/turandom.c
-   M /trunk/tests/tvalist.c
-   M /trunk/tests/tversion.c
-   M /trunk/tests/ty0.c
-   M /trunk/tests/ty1.c
-   M /trunk/tests/tyn.c
-   M /trunk/tests/tzeta.c
-   M /trunk/tests/tzeta_ui.c
-   M /trunk/tools/bench/benchtime.h
-   M /trunk/tools/bench/mpfrbench.c
-   M /trunk/tools/check_mparam.c
-   M /trunk/tools/get_patches.sh
-   M /trunk/tools/mbench/generate.c
-   M /trunk/tools/mbench/mfv5-arprec.cc
-   M /trunk/tools/mbench/mfv5-cln.cc
-   M /trunk/tools/mbench/mfv5-crlibm.cc
-   M /trunk/tools/mbench/mfv5-libc.cc
-   M /trunk/tools/mbench/mfv5-lidia.cc
-   M /trunk/tools/mbench/mfv5-mpf.cc
-   M /trunk/tools/mbench/mfv5-mpfr.cc
-   M /trunk/tools/mbench/mfv5-ntl.cc
-   M /trunk/tools/mbench/mfv5-pari.cc
-   M /trunk/tools/mbench/mfv5-void.cc
-   M /trunk/tools/mbench/mfv5.cc
-   M /trunk/tools/mbench/mfv5.h
-   M /trunk/tools/mbench/mpfr-gfx.c
-   M /trunk/tools/mbench/mpfr-v4.c
-   M /trunk/tools/mbench/mpfr-v6.c
-   M /trunk/tools/mbench/timp.h
-   M /trunk/tools/timings-mpfr.c
-   M /trunk/tune/bidimensional_sample.c
-   M /trunk/tune/speed.c
-   M /trunk/tune/tuneup.c
+	[configure.ac] Updated message output when the gmp.h vs libgmp test
+	fails: another cause may be that LD_RUN_PATH is not honored (problem
+	seen under OpenBSD 6.6 / gcc302.fsffrance.org).
 
-Updated the www.gnu.org URL's (http → https) on all the files with:
-  perl -pi -e 's,http://www.gnu.org/,https://www.gnu.org/,g' **/*(.)
-under zsh.
-------------------------------------------------------------------------
-r13365 | vlefevre | 2019-01-07 01:11:12 +0000 (Mon, 07 Jan 2019) | 3 lines
-Changed paths:
-   M /trunk/tests/tstrtofr.c
+2020-03-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tstrtofr.c] Updated comment about GCC bug 86554: the MPFR build
-is still affected with the latest gcc-snapshot version (20190102-1)
-when using --with-gmp-build=... together with --enable-assert.
-------------------------------------------------------------------------
-r13364 | vlefevre | 2019-01-04 13:49:39 +0000 (Fri, 04 Jan 2019) | 2 lines
-Changed paths:
-   M /trunk/tests/tstrtofr.c
+	[tests/tset_sj.c] Forgot a "#ifndef NPRINTF_J" for printf("%jd",...).
 
-[tests/tstrtofr.c] Added a comment about GCC bug 86554: the MPFR build
-seems no longer affected by recent gcc-snapshot versions.
-------------------------------------------------------------------------
-r13361 | vlefevre | 2019-01-01 21:17:19 +0000 (Tue, 01 Jan 2019) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/set_uj.c] Fixed underflow detection.
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r13359 | vlefevre | 2019-01-01 20:56:06 +0000 (Tue, 01 Jan 2019) | 4 lines
-Changed paths:
-   M /trunk/BUGS
-   M /trunk/INSTALL
-   M /trunk/Makefile.am
-   M /trunk/NEWS
-   M /trunk/README
-   M /trunk/TODO
-   M /trunk/acinclude.m4
-   M /trunk/configure.ac
-   M /trunk/doc/FAQ.html
-   M /trunk/doc/Makefile.am
-   M /trunk/doc/README.dev
-   M /trunk/doc/check-typography
-   M /trunk/doc/faq.xsl
-   M /trunk/doc/mpfr.texi
-   M /trunk/examples/can_round.c
-   M /trunk/examples/divworst.c
-   M /trunk/examples/rndo-add.c
-   M /trunk/examples/sample.c
-   M /trunk/examples/threads.c
-   M /trunk/examples/version.c
-   M /trunk/src/Makefile.am
-   M /trunk/src/abort_prec_max.c
-   M /trunk/src/acos.c
-   M /trunk/src/acosh.c
-   M /trunk/src/add.c
-   M /trunk/src/add1.c
-   M /trunk/src/add1sp.c
-   M /trunk/src/add1sp1_extracted.c
-   M /trunk/src/add_d.c
-   M /trunk/src/add_ui.c
-   M /trunk/src/agm.c
-   M /trunk/src/ai.c
-   M /trunk/src/amd/mparam.h
-   M /trunk/src/arm/mparam.h
-   M /trunk/src/asin.c
-   M /trunk/src/asinh.c
-   M /trunk/src/atan.c
-   M /trunk/src/atan2.c
-   M /trunk/src/atanh.c
-   M /trunk/src/bernoulli.c
-   M /trunk/src/beta.c
-   M /trunk/src/buildopt.c
-   M /trunk/src/cache.c
-   M /trunk/src/cbrt.c
-   M /trunk/src/check.c
-   M /trunk/src/clear.c
-   M /trunk/src/clears.c
-   M /trunk/src/cmp.c
-   M /trunk/src/cmp2.c
-   M /trunk/src/cmp_abs.c
-   M /trunk/src/cmp_d.c
-   M /trunk/src/cmp_ld.c
-   M /trunk/src/cmp_si.c
-   M /trunk/src/cmp_ui.c
-   M /trunk/src/comparisons.c
-   M /trunk/src/const_catalan.c
-   M /trunk/src/const_euler.c
-   M /trunk/src/const_log2.c
-   M /trunk/src/const_pi.c
-   M /trunk/src/constant.c
-   M /trunk/src/copysign.c
-   M /trunk/src/cos.c
-   M /trunk/src/cosh.c
-   M /trunk/src/cot.c
-   M /trunk/src/coth.c
-   M /trunk/src/csc.c
-   M /trunk/src/csch.c
-   M /trunk/src/d_div.c
-   M /trunk/src/d_sub.c
-   M /trunk/src/digamma.c
-   M /trunk/src/dim.c
-   M /trunk/src/div.c
-   M /trunk/src/div_2exp.c
-   M /trunk/src/div_2si.c
-   M /trunk/src/div_2ui.c
-   M /trunk/src/div_d.c
-   M /trunk/src/div_ui.c
-   M /trunk/src/dot.c
-   M /trunk/src/dump.c
-   M /trunk/src/eint.c
-   M /trunk/src/eq.c
-   M /trunk/src/erandom.c
-   M /trunk/src/erf.c
-   M /trunk/src/erfc.c
-   M /trunk/src/exceptions.c
-   M /trunk/src/exp.c
-   M /trunk/src/exp10.c
-   M /trunk/src/exp2.c
-   M /trunk/src/exp3.c
-   M /trunk/src/exp_2.c
-   M /trunk/src/expm1.c
-   M /trunk/src/extract.c
-   M /trunk/src/factorial.c
-   M /trunk/src/fits_intmax.c
-   M /trunk/src/fits_s.h
-   M /trunk/src/fits_sint.c
-   M /trunk/src/fits_slong.c
-   M /trunk/src/fits_sshort.c
-   M /trunk/src/fits_u.h
-   M /trunk/src/fits_uint.c
-   M /trunk/src/fits_uintmax.c
-   M /trunk/src/fits_ulong.c
-   M /trunk/src/fits_ushort.c
-   M /trunk/src/fma.c
-   M /trunk/src/fmma.c
-   M /trunk/src/fms.c
-   M /trunk/src/fpif.c
-   M /trunk/src/frac.c
-   M /trunk/src/free_cache.c
-   M /trunk/src/frexp.c
-   M /trunk/src/gamma.c
-   M /trunk/src/gamma_inc.c
-   M /trunk/src/gammaonethird.c
-   M /trunk/src/gen_inverse.h
-   M /trunk/src/generic/coverage/mparam.h
-   M /trunk/src/generic/mparam.h
-   M /trunk/src/get_d.c
-   M /trunk/src/get_d128.c
-   M /trunk/src/get_d64.c
-   M /trunk/src/get_exp.c
-   M /trunk/src/get_f.c
-   M /trunk/src/get_float128.c
-   M /trunk/src/get_flt.c
-   M /trunk/src/get_ld.c
-   M /trunk/src/get_q.c
-   M /trunk/src/get_si.c
-   M /trunk/src/get_sj.c
-   M /trunk/src/get_str.c
-   M /trunk/src/get_ui.c
-   M /trunk/src/get_uj.c
-   M /trunk/src/get_z.c
-   M /trunk/src/get_z_exp.c
-   M /trunk/src/gmp_op.c
-   M /trunk/src/grandom.c
-   M /trunk/src/hypot.c
-   M /trunk/src/ieee_floats.h
-   M /trunk/src/init.c
-   M /trunk/src/init2.c
-   M /trunk/src/inits.c
-   M /trunk/src/inits2.c
-   M /trunk/src/inp_str.c
-   M /trunk/src/int_ceil_log2.c
-   M /trunk/src/invert_limb.h
-   M /trunk/src/invsqrt_limb.h
-   M /trunk/src/isinf.c
-   M /trunk/src/isinteger.c
-   M /trunk/src/isnan.c
-   M /trunk/src/isnum.c
-   M /trunk/src/isqrt.c
-   M /trunk/src/isregular.c
-   M /trunk/src/iszero.c
-   M /trunk/src/jn.c
-   M /trunk/src/jyn_asympt.c
-   M /trunk/src/li2.c
-   M /trunk/src/lngamma.c
-   M /trunk/src/log.c
-   M /trunk/src/log10.c
-   M /trunk/src/log1p.c
-   M /trunk/src/log2.c
-   M /trunk/src/log_ui.c
-   M /trunk/src/logging.c
-   M /trunk/src/min_prec.c
-   M /trunk/src/minmax.c
-   M /trunk/src/mips/mparam.h
-   M /trunk/src/modf.c
-   M /trunk/src/mp_clz_tab.c
-   M /trunk/src/mparam_h.in
-   M /trunk/src/mpf2mpfr.h
-   M /trunk/src/mpfr-cvers.h
-   M /trunk/src/mpfr-gmp.c
-   M /trunk/src/mpfr-gmp.h
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/mpfr-intmax.h
-   M /trunk/src/mpfr-longlong.h
-   M /trunk/src/mpfr-mini-gmp.c
-   M /trunk/src/mpfr-mini-gmp.h
-   M /trunk/src/mpfr-sassert.h
-   M /trunk/src/mpfr-thread.h
-   M /trunk/src/mpfr.h
-   M /trunk/src/mpn_exp.c
-   M /trunk/src/mul.c
-   M /trunk/src/mul_1_extracted.c
-   M /trunk/src/mul_2exp.c
-   M /trunk/src/mul_2si.c
-   M /trunk/src/mul_2ui.c
-   M /trunk/src/mul_d.c
-   M /trunk/src/mul_ui.c
-   M /trunk/src/mulders.c
-   M /trunk/src/nbits_ulong.c
-   M /trunk/src/neg.c
-   M /trunk/src/next.c
-   M /trunk/src/nrandom.c
-   M /trunk/src/odd_p.c
-   M /trunk/src/out_str.c
-   M /trunk/src/pool.c
-   M /trunk/src/pow.c
-   M /trunk/src/pow_si.c
-   M /trunk/src/pow_ui.c
-   M /trunk/src/pow_z.c
-   M /trunk/src/powerof2.c
-   M /trunk/src/powerpc64/mparam.h
-   M /trunk/src/print_raw.c
-   M /trunk/src/print_rnd_mode.c
-   M /trunk/src/printf.c
-   M /trunk/src/random_deviate.c
-   M /trunk/src/random_deviate.h
-   M /trunk/src/rec_sqrt.c
-   M /trunk/src/reldiff.c
-   M /trunk/src/rem1.c
-   M /trunk/src/rint.c
-   M /trunk/src/rndna.c
-   M /trunk/src/root.c
-   M /trunk/src/round_near_x.c
-   M /trunk/src/round_p.c
-   M /trunk/src/round_prec.c
-   M /trunk/src/round_raw_generic.c
-   M /trunk/src/scale2.c
-   M /trunk/src/sec.c
-   M /trunk/src/sech.c
-   M /trunk/src/set.c
-   M /trunk/src/set_d.c
-   M /trunk/src/set_d128.c
-   M /trunk/src/set_d64.c
-   M /trunk/src/set_dfl_prec.c
-   M /trunk/src/set_exp.c
-   M /trunk/src/set_f.c
-   M /trunk/src/set_float128.c
-   M /trunk/src/set_flt.c
-   M /trunk/src/set_inf.c
-   M /trunk/src/set_ld.c
-   M /trunk/src/set_nan.c
-   M /trunk/src/set_prc_raw.c
-   M /trunk/src/set_prec.c
-   M /trunk/src/set_q.c
-   M /trunk/src/set_rnd.c
-   M /trunk/src/set_si.c
-   M /trunk/src/set_si_2exp.c
-   M /trunk/src/set_sj.c
-   M /trunk/src/set_str.c
-   M /trunk/src/set_str_raw.c
-   M /trunk/src/set_ui.c
-   M /trunk/src/set_ui_2exp.c
-   M /trunk/src/set_uj.c
-   M /trunk/src/set_z.c
-   M /trunk/src/set_z_exp.c
-   M /trunk/src/set_zero.c
-   M /trunk/src/setmax.c
-   M /trunk/src/setmin.c
-   M /trunk/src/setsign.c
-   M /trunk/src/sgn.c
-   M /trunk/src/si_op.c
-   M /trunk/src/signbit.c
-   M /trunk/src/sin.c
-   M /trunk/src/sin_cos.c
-   M /trunk/src/sinh.c
-   M /trunk/src/sinh_cosh.c
-   M /trunk/src/sparc64/mparam.h
-   M /trunk/src/sqr.c
-   M /trunk/src/sqrt.c
-   M /trunk/src/sqrt_ui.c
-   M /trunk/src/stack_interface.c
-   M /trunk/src/strtofr.c
-   M /trunk/src/sub.c
-   M /trunk/src/sub1.c
-   M /trunk/src/sub1sp.c
-   M /trunk/src/sub_d.c
-   M /trunk/src/sub_ui.c
-   M /trunk/src/subnormal.c
-   M /trunk/src/sum.c
-   M /trunk/src/swap.c
-   M /trunk/src/tan.c
-   M /trunk/src/tanh.c
-   M /trunk/src/total_order.c
-   M /trunk/src/ubf.c
-   M /trunk/src/uceil_exp2.c
-   M /trunk/src/uceil_log2.c
-   M /trunk/src/ufloor_log2.c
-   M /trunk/src/ui_div.c
-   M /trunk/src/ui_pow.c
-   M /trunk/src/ui_pow_ui.c
-   M /trunk/src/ui_sub.c
-   M /trunk/src/urandom.c
-   M /trunk/src/urandomb.c
-   M /trunk/src/vasprintf.c
-   M /trunk/src/version.c
-   M /trunk/src/volatile.c
-   M /trunk/src/x86/mparam.h
-   M /trunk/src/x86_64/core2/mparam.h
-   M /trunk/src/x86_64/mparam.h
-   M /trunk/src/yn.c
-   M /trunk/src/zeta.c
-   M /trunk/src/zeta_ui.c
-   M /trunk/tests/Makefile.am
-   M /trunk/tests/cmp_str.c
-   M /trunk/tests/data/digamma
-   M /trunk/tests/data/li2
-   M /trunk/tests/memory.c
-   M /trunk/tests/mpf_compat.c
-   M /trunk/tests/mpf_compat.h
-   M /trunk/tests/mpfr-test.h
-   M /trunk/tests/mpfr_compat.c
-   M /trunk/tests/random2.c
-   M /trunk/tests/reuse.c
-   M /trunk/tests/rnd_mode.c
-   M /trunk/tests/tabort_defalloc1.c
-   M /trunk/tests/tabort_defalloc2.c
-   M /trunk/tests/tabort_prec_max.c
-   M /trunk/tests/tabs.c
-   M /trunk/tests/tacos.c
-   M /trunk/tests/tacosh.c
-   M /trunk/tests/tadd.c
-   M /trunk/tests/tadd1sp.c
-   M /trunk/tests/tadd_d.c
-   M /trunk/tests/tadd_ui.c
-   M /trunk/tests/tagm.c
-   M /trunk/tests/tai.c
-   M /trunk/tests/talloc-cache.c
-   M /trunk/tests/talloc.c
-   M /trunk/tests/tasin.c
-   M /trunk/tests/tasinh.c
-   M /trunk/tests/tassert.c
-   M /trunk/tests/tatan.c
-   M /trunk/tests/tatanh.c
-   M /trunk/tests/taway.c
-   M /trunk/tests/tbeta.c
-   M /trunk/tests/tbuildopt.c
-   M /trunk/tests/tcan_round.c
-   M /trunk/tests/tcbrt.c
-   M /trunk/tests/tcheck.c
-   M /trunk/tests/tcmp.c
-   M /trunk/tests/tcmp2.c
-   M /trunk/tests/tcmp_d.c
-   M /trunk/tests/tcmp_ld.c
-   M /trunk/tests/tcmp_ui.c
-   M /trunk/tests/tcmpabs.c
-   M /trunk/tests/tcomparisons.c
-   M /trunk/tests/tconst_catalan.c
-   M /trunk/tests/tconst_euler.c
-   M /trunk/tests/tconst_log2.c
-   M /trunk/tests/tconst_pi.c
-   M /trunk/tests/tcopysign.c
-   M /trunk/tests/tcos.c
-   M /trunk/tests/tcosh.c
-   M /trunk/tests/tcot.c
-   M /trunk/tests/tcoth.c
-   M /trunk/tests/tcsc.c
-   M /trunk/tests/tcsch.c
-   M /trunk/tests/td_div.c
-   M /trunk/tests/td_sub.c
-   M /trunk/tests/tdigamma.c
-   M /trunk/tests/tdim.c
-   M /trunk/tests/tdiv.c
-   M /trunk/tests/tdiv_d.c
-   M /trunk/tests/tdiv_ui.c
-   M /trunk/tests/tdot.c
-   M /trunk/tests/teint.c
-   M /trunk/tests/teq.c
-   M /trunk/tests/terandom.c
-   M /trunk/tests/terandom_chisq.c
-   M /trunk/tests/terf.c
-   M /trunk/tests/tests.c
-   M /trunk/tests/texceptions.c
-   M /trunk/tests/texp.c
-   M /trunk/tests/texp10.c
-   M /trunk/tests/texp2.c
-   M /trunk/tests/texpm1.c
-   M /trunk/tests/tfactorial.c
-   M /trunk/tests/tfits.c
-   M /trunk/tests/tfma.c
-   M /trunk/tests/tfmma.c
-   M /trunk/tests/tfmod.c
-   M /trunk/tests/tfms.c
-   M /trunk/tests/tfpif.c
-   M /trunk/tests/tfprintf.c
-   M /trunk/tests/tfrac.c
-   M /trunk/tests/tfrexp.c
-   M /trunk/tests/tgamma.c
-   M /trunk/tests/tgamma_inc.c
-   M /trunk/tests/tgeneric.c
-   M /trunk/tests/tgeneric_ui.c
-   M /trunk/tests/tget_d.c
-   M /trunk/tests/tget_d_2exp.c
-   M /trunk/tests/tget_f.c
-   M /trunk/tests/tget_flt.c
-   M /trunk/tests/tget_ld_2exp.c
-   M /trunk/tests/tget_q.c
-   M /trunk/tests/tget_set_d128.c
-   M /trunk/tests/tget_set_d64.c
-   M /trunk/tests/tget_sj.c
-   M /trunk/tests/tget_str.c
-   M /trunk/tests/tget_z.c
-   M /trunk/tests/tgmpop.c
-   M /trunk/tests/tgrandom.c
-   M /trunk/tests/thyperbolic.c
-   M /trunk/tests/thypot.c
-   M /trunk/tests/tinits.c
-   M /trunk/tests/tinp_str.c
-   M /trunk/tests/tinternals.c
-   M /trunk/tests/tisnan.c
-   M /trunk/tests/tisqrt.c
-   M /trunk/tests/tj0.c
-   M /trunk/tests/tj1.c
-   M /trunk/tests/tjn.c
-   M /trunk/tests/tl2b.c
-   M /trunk/tests/tlgamma.c
-   M /trunk/tests/tli2.c
-   M /trunk/tests/tlngamma.c
-   M /trunk/tests/tlog.c
-   M /trunk/tests/tlog10.c
-   M /trunk/tests/tlog1p.c
-   M /trunk/tests/tlog2.c
-   M /trunk/tests/tlog_ui.c
-   M /trunk/tests/tmin_prec.c
-   M /trunk/tests/tminmax.c
-   M /trunk/tests/tmodf.c
-   M /trunk/tests/tmul.c
-   M /trunk/tests/tmul_2exp.c
-   M /trunk/tests/tmul_d.c
-   M /trunk/tests/tmul_ui.c
-   M /trunk/tests/tnext.c
-   M /trunk/tests/tnrandom.c
-   M /trunk/tests/tnrandom_chisq.c
-   M /trunk/tests/tout_str.c
-   M /trunk/tests/toutimpl.c
-   M /trunk/tests/tpow.c
-   M /trunk/tests/tpow3.c
-   M /trunk/tests/tpow_all.c
-   M /trunk/tests/tpow_z.c
-   M /trunk/tests/tprec_round.c
-   M /trunk/tests/tprintf.c
-   M /trunk/tests/trandom.c
-   M /trunk/tests/trandom_deviate.c
-   M /trunk/tests/trec_sqrt.c
-   M /trunk/tests/tremquo.c
-   M /trunk/tests/trint.c
-   M /trunk/tests/trndna.c
-   M /trunk/tests/troot.c
-   M /trunk/tests/trootn_ui.c
-   M /trunk/tests/tsec.c
-   M /trunk/tests/tsech.c
-   M /trunk/tests/tset.c
-   M /trunk/tests/tset_d.c
-   M /trunk/tests/tset_exp.c
-   M /trunk/tests/tset_f.c
-   M /trunk/tests/tset_float128.c
-   M /trunk/tests/tset_ld.c
-   M /trunk/tests/tset_q.c
-   M /trunk/tests/tset_si.c
-   M /trunk/tests/tset_sj.c
-   M /trunk/tests/tset_str.c
-   M /trunk/tests/tset_z.c
-   M /trunk/tests/tset_z_exp.c
-   M /trunk/tests/tsgn.c
-   M /trunk/tests/tsi_op.c
-   M /trunk/tests/tsin.c
-   M /trunk/tests/tsin_cos.c
-   M /trunk/tests/tsinh.c
-   M /trunk/tests/tsinh_cosh.c
-   M /trunk/tests/tsprintf.c
-   M /trunk/tests/tsqr.c
-   M /trunk/tests/tsqrt.c
-   M /trunk/tests/tsqrt_ui.c
-   M /trunk/tests/tstckintc.c
-   M /trunk/tests/tstdint.c
-   M /trunk/tests/tstrtofr.c
-   M /trunk/tests/tsub.c
-   M /trunk/tests/tsub1sp.c
-   M /trunk/tests/tsub_d.c
-   M /trunk/tests/tsub_ui.c
-   M /trunk/tests/tsubnormal.c
-   M /trunk/tests/tsum.c
-   M /trunk/tests/tswap.c
-   M /trunk/tests/ttan.c
-   M /trunk/tests/ttanh.c
-   M /trunk/tests/ttotal_order.c
-   M /trunk/tests/ttrunc.c
-   M /trunk/tests/tui_div.c
-   M /trunk/tests/tui_pow.c
-   M /trunk/tests/tui_sub.c
-   M /trunk/tests/turandom.c
-   M /trunk/tests/tvalist.c
-   M /trunk/tests/tversion.c
-   M /trunk/tests/ty0.c
-   M /trunk/tests/ty1.c
-   M /trunk/tests/tyn.c
-   M /trunk/tests/tzeta.c
-   M /trunk/tests/tzeta_ui.c
-   M /trunk/tools/bench/Makefile.am
-   M /trunk/tools/bench/benchtime.h
-   M /trunk/tools/bench/mpfrbench.c
-   M /trunk/tools/check_mparam.c
-   M /trunk/tools/ck-clz_tab
-   M /trunk/tools/ck-copyright-notice
-   M /trunk/tools/ck-mparam
-   M /trunk/tools/ck-news
-   M /trunk/tools/ck-version-info
-   M /trunk/tools/get_patches.sh
-   M /trunk/tune/Makefile.am
-   M /trunk/tune/bidimensional_sample.c
-   M /trunk/tune/speed.c
-   M /trunk/tune/tuneup.c
+	[src/set_uj.c] Added early overflow detection to avoid a possible
+	integer overflow. Added a FIXME (incorrect underflow detection).
 
-Copyright notice update: added 2019 with
-  perl -pi -e 's/ (\d{4}-)?(2018)(?= Free Software)/
-               " ".($1||"$2-").($2+1)/e' **/*(^/)
-under zsh. Removed 2018 from the example in the doc/README.dev file.
-------------------------------------------------------------------------
-r13356 | vlefevre | 2018-12-31 03:36:15 +0000 (Mon, 31 Dec 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tfmma.c
+	[tests/tset_sj.c] Added tests of mpfr_set_sj_2exp and mpfr_set_uj_2exp
+	in precision 3 with integers from -31 to 31 and exponents MPFR_EXP_MIN,
+	MPFR_EMIN_MIN-7 to MPFR_EMIN_MIN, MPFR_EMAX_MAX-7 to MPFR_EMAX_MAX,
+	MPFR_EXP_MAX-7 to MPFR_EXP_MAX (like in tset_si.c, see r13808), but
+	also exponents INTMAX_MIN and INTMAX_MAX. This shows bugs in set_uj.c,
+	to be fixed...
 
-[tests/tfmma.c] Added double_rounding test to trigger errors before
-the fix in mpfr_set_1_2 (set.c r13347).
-------------------------------------------------------------------------
-r13355 | vlefevre | 2018-12-31 02:31:17 +0000 (Mon, 31 Dec 2018) | 1 line
-Changed paths:
-   M /trunk/src/set.c
+	[src/set_sj.c] Coding style.
 
-[src/set.c] In mpfr_set_1_2, evaluate MPFR_PREC(s) just once.
-------------------------------------------------------------------------
-r13354 | vlefevre | 2018-12-31 02:19:23 +0000 (Mon, 31 Dec 2018) | 1 line
-Changed paths:
-   M /trunk/src/set.c
+	[src] Moved the definition of the numberof() macro from mpfr-gmp.h to
+	mpfr-impl.h in order to always use our own. Also make sure that the
+	type is signed, so that the value can be used in arbitrary expressions
+	without the risk of silently switching to unsigned arithmetic.
 
-[src/set.c] Clarified the mpfr_set_1_2 description.
-------------------------------------------------------------------------
-r13353 | vlefevre | 2018-12-31 02:14:55 +0000 (Mon, 31 Dec 2018) | 4 lines
-Changed paths:
-   M /trunk/src/set.c
+2020-03-26  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/set.c] For mpfr_set_1_2, corrected the comments and simplified the
-generic algorithm (there is no need to distinguish the rounding modes,
-except for the double-rounding test, and this simplification avoids the
-non-portable inex | inex2).
-------------------------------------------------------------------------
-r13351 | vlefevre | 2018-12-20 13:49:07 +0000 (Thu, 20 Dec 2018) | 3 lines
-Changed paths:
-   M /trunk/doc/mini-gmp
+	[tests/texpm1.c] Updated the bad_cases() parameters to increase the
+	proportion of generated bad cases.
 
-[doc/mini-gmp] Removed "#define GMP_LIMB_BITS 8": it is not used by
-mini-gmp.h and yields a failure when building mini-gmp.c (which has
-its own definition of GMP_LIMB_BITS, equivalent but not identical).
-------------------------------------------------------------------------
-r13350 | vlefevre | 2018-12-20 13:43:57 +0000 (Thu, 20 Dec 2018) | 3 lines
-Changed paths:
-   M /trunk/configure.ac
+	[tests/tset_si.c] Forgot a cast for MPFR_EXP_FSPEC argument.
 
-[configure.ac] Support mini-gmp with reduced limb size, in the case
-GMP_NUMB_BITS is not defined: guess GMP_NUMB_BITS from the size of
-mp_limb_t instead of the size of unsigned long.
-------------------------------------------------------------------------
-r13349 | vlefevre | 2018-12-20 13:29:33 +0000 (Thu, 20 Dec 2018) | 2 lines
-Changed paths:
-   M /trunk/doc/mini-gmp
+	[doc/mpfr.texi] Updated the month.
 
-[doc/mini-gmp] Correction to avoid a "conflicting types for 'mp_limb_t'"
-error.
-------------------------------------------------------------------------
-r13348 | zimmerma | 2018-12-14 15:23:15 +0000 (Fri, 14 Dec 2018) | 3 lines
-Changed paths:
-   M /trunk/doc/mini-gmp
+	Consistency: "a UBF" → "an UBF" since UBF stands for "unbounded float".
 
-[doc/mini-gmp] added note about using mini-gmp (development version) with
-	       reduced limb size
+	[src/mpfr-impl.h] Updated UBF comment about aliasing rules.
 
-------------------------------------------------------------------------
-r13347 | zimmerma | 2018-12-14 14:39:48 +0000 (Fri, 14 Dec 2018) | 3 lines
-Changed paths:
-   M /trunk/src/set.c
-   M /trunk/tests/tset.c
+	[src/mpfr-impl.h] Updated UBF comment about aliasing rules.
 
-[src/set.c] fixed double-rounding bug in mpfr_set_1_2
-[tests/tset.c] added corresponding tests
+	[src/mpfr-impl.h] Bug fix (MPFR_ZEXP(x) as used for an assignment
+	could yield undefined behavior on platforms where mpfr_exp_t has
+	trap representations); this is also a general improvement.
 
-------------------------------------------------------------------------
-r13346 | zimmerma | 2018-12-14 13:40:16 +0000 (Fri, 14 Dec 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tset.c
+	[tests/tsub.c] Avoid the build failure with -Werror=strict-aliasing by
+	replacing x[…] by p[…] (but this doesn't eliminate the problem itself).
 
-[tests/tset.c] added a test of test_set_1_2(), which currently fails
+	[src/mpfr-impl.h] UBF: updated comment: this breaks aliasing rules, but
+	there isn't any other acceptable solution.
+	Note: when trying to build MPFR without --enable-assert, with GCC and
+	CFLAGS="-O2 -Werror=strict-aliasing", the compilation of tests/tsub.c
+	currently fails because of that.
 
-------------------------------------------------------------------------
-r13345 | zimmerma | 2018-12-14 12:30:08 +0000 (Fri, 14 Dec 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tcan_round.c
+2020-03-25  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tcan_round.c] disabled tests that don't agree with mpfr_can_round documentation
+	[tests/tsub.c] Fixed tests on UBF.
 
-------------------------------------------------------------------------
-r13344 | vlefevre | 2018-12-13 16:28:03 +0000 (Thu, 13 Dec 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[src/sub1.c] Fixed underflow handling in case c small (can occur only
+	with UBF).
 
-[tests/tsprintf.c] Updated a comment about ISO C vs POSIX for snprintf.
-------------------------------------------------------------------------
-r13343 | vlefevre | 2018-12-13 16:18:49 +0000 (Thu, 13 Dec 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[tests/tfma.c] Minor correction.
 
-[tests/tsprintf.c] Updated a comment about ISO C vs POSIX for snprintf.
-------------------------------------------------------------------------
-r13342 | vlefevre | 2018-12-13 09:51:29 +0000 (Thu, 13 Dec 2018) | 1 line
-Changed paths:
-   M /trunk/TODO
+	[tests/tfma.c] Changed a RND_LOOP to RND_LOOP_NO_RNDF as the behavior
+	with RNDF changed after a bug fix.
 
-[TODO] Added item: new functions mpfr_cmp_uj and mpfr_cmp_sj.
-------------------------------------------------------------------------
-r13341 | vlefevre | 2018-12-13 09:47:45 +0000 (Thu, 13 Dec 2018) | 1 line
-Changed paths:
-   M /trunk/TODO
+	[tests/tsub.c] Completed tests for UBF (currently fail).
 
-[TODO] Removed obsolete "check again coverage" from 2007.
-------------------------------------------------------------------------
-r13340 | zimmerma | 2018-12-13 09:15:46 +0000 (Thu, 13 Dec 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sqr.c
+	[src/sub1.c] Bug fix for UBF and MPFR_RNDF.
 
-[src/sqr.c] fixed same issue as in r13338 and r13339
+	[src/set_{si,ui}_2exp.c] Bug fix in MPFR_LONG_WITHIN_LIMB defined case:
+	added early underflow/overflow checking to avoid integer overflow or
+	errors due to special exponent values.
 
-------------------------------------------------------------------------
-r13339 | zimmerma | 2018-12-13 09:01:38 +0000 (Thu, 13 Dec 2018) | 3 lines
-Changed paths:
-   M /trunk/src/mul.c
+	[tests/tset_si.c] Added tests of mpfr_set_si_2exp and mpfr_set_ui_2exp
+	in precision 3 with integers from -31 to 31 and exponents MPFR_EXP_MIN,
+	MPFR_EMIN_MIN-7 to MPFR_EMIN_MIN, MPFR_EMAX_MAX-7 to MPFR_EMAX_MAX,
+	MPFR_EXP_MAX-7 to MPFR_EXP_MAX, showing bugs in these functions when
+	MPFR_LONG_WITHIN_LIMB is defined.
 
-[src/mul.c] fixed bug in mpfr_mul() when sizeof(mp_limb_t) < sizeof(mpfr_exp_t)
-	    (same issue as in r13338)
+2020-03-24  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13338 | vlefevre | 2018-12-12 13:00:23 +0000 (Wed, 12 Dec 2018) | 5 lines
-Changed paths:
-   M /trunk/src/mul.c
+	[tests/tsub.c] More tests on UBF. The results are not checked yet,
+	but running the tests with UBsan could allow one to trigger bugs
+	(such as the one fixed in r13806).
 
-[src/mul.c] For MPFR_WANT_ASSERT >= 2: minor changes in the code;
-corrected a comment (even with mp_limb_t >= mpfr_exp_t, there was an
-issue: the expression b1 - 1 + cc was computed in unsigned arithmetic,
-then converted to mpfr_exp_t, with an implementation-defined result
-when -1 was expected, i.e. with b1 = cc = 0).
-------------------------------------------------------------------------
-r13337 | vlefevre | 2018-12-12 12:30:25 +0000 (Wed, 12 Dec 2018) | 1 line
-Changed paths:
-   M /trunk/src/mul.c
+	[src/sub1.c] If exp_b = MPFR_EXP_MIN, an integer overflow may occur in
+	the "MAX (aq, bq) + 2 <= diff_exp" branch. This is possible only with
+	UBF. Fixed this bug with an early underflow detection in the UBF case.
 
-[src/mul.c] Corrected a typo in a comment.
-------------------------------------------------------------------------
-r13336 | vlefevre | 2018-12-12 12:24:03 +0000 (Wed, 12 Dec 2018) | 1 line
-Changed paths:
-   M /trunk/src/mul.c
+	[tests/tfmma.c] Added extreme_underflow test: before the r13798 bug fix,
+	this was triggering an integer overflow.
 
-[src/mul.c] Fixed error message with MPFR_WANT_ASSERT >= 2.
-------------------------------------------------------------------------
-r13335 | vlefevre | 2018-12-11 17:51:23 +0000 (Tue, 11 Dec 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
+	[tests/tsub.c] Corrected a function name.
 
-[src/mpfr-gmp.h] For count_leading_zeros (MPFR_LONG_WITHIN_LIMB
-not defined), no longer assume GMP_NUMB_BITS <= 32.
-------------------------------------------------------------------------
-r13334 | vlefevre | 2018-12-11 17:33:53 +0000 (Tue, 11 Dec 2018) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
+	[tests/tsub.c] More tests on UBF, in particular with an exponent change
+	(including subnormal → normal and normal → overflow due to that).
 
-[src/mpfr-gmp.h] Fixed count_leading_zeros (avoid undefined behavior
-on shift counts, which must be nonnegative and smaller than the width
-of the type of the shifted value).
-------------------------------------------------------------------------
-r13333 | zimmerma | 2018-12-11 17:01:47 +0000 (Tue, 11 Dec 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mul.c
+	[tests/tsub.c] Tests on UBF: underflow/overflow cases done.
 
-[src/mul.c] fixed reference routine mpfr_mul3() when sizeof(limb) < sizeof(exp)
+2020-03-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13332 | zimmerma | 2018-12-11 15:39:46 +0000 (Tue, 11 Dec 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
+	[tests/tsub.c] More tests on UBF.
 
-[src/mpfr-gmp.h] fixed count_leading_zeros for mini-gmp with 32-bit limb
+	[src/mpfr-impl.h] UBF: reordered macro definitions.
 
-------------------------------------------------------------------------
-r13331 | zimmerma | 2018-12-10 14:08:16 +0000 (Mon, 10 Dec 2018) | 2 lines
-Changed paths:
-   M /trunk/doc/mini-gmp
+	[src]
+	  * mpfr-impl.h: define MPFR_UBF_GET_EXP macro.
+	  * add1.c, sub1.c: use this macro.
 
-[doc/mini-gmp] added remark about random functions
+	[src/sub1.c] Detect an underflow case (before the main detection) to
+	avoid a possible integer overflow with UBF.
 
-------------------------------------------------------------------------
-r13329 | zimmerma | 2018-12-10 08:49:56 +0000 (Mon, 10 Dec 2018) | 3 lines
-Changed paths:
-   M /trunk/tests/tdiv.c
+	[tests/tsub.c] Added comments.
 
-[tests/tdiv.c] fixed test_20151023 (was giving an error with micro-gmp-8
-and GMP_CHECK_RANDOMIZE=1544431052619574)
+	[tests/tsub.c] First tests on UBF.
 
-------------------------------------------------------------------------
-r13328 | vlefevre | 2018-12-10 00:44:18 +0000 (Mon, 10 Dec 2018) | 1 line
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[src/agm.c] Avoid a potential integer overflow with huge precisions.
 
-[tools/mpfrlint] Added a test for some avoidable use of gmp_printf.
-------------------------------------------------------------------------
-r13327 | vlefevre | 2018-12-07 17:58:36 +0000 (Fri, 07 Dec 2018) | 4 lines
-Changed paths:
-   M /trunk/tests/mpfr-test.h
-   M /trunk/tests/tcan_round.c
-   M /trunk/tests/tests.c
+2020-03-16  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests]
-  * mpfr-test.h, tests.c: added n_trace function to output a mpn.
-  * tcan_round.c: use n_trace instead of gmp_printf ("%NX\n",...),
-    which is not available with mini-gmp.
-------------------------------------------------------------------------
-r13326 | vlefevre | 2018-12-06 08:13:09 +0000 (Thu, 06 Dec 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tcan_round.c
+	[src/root.c] Removed useless cast in a comparison, as both operands are
+	non-negative.
 
-[tests/tcan_round.c] Corrected all the error messages for mini-gmp.
-------------------------------------------------------------------------
-r13325 | vlefevre | 2018-12-06 08:11:06 +0000 (Thu, 06 Dec 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tcan_round.c
+	[src/rem1.c]
+	  * Portability fix: when mpfr_exp_t <= long (which is the default),
+	    an addition was done in unsigned integer arithmetic instead of
+	    signed integer arithmetic, with a conversion back to a signed
+	    type, i.e. with potentially implementation-defined behavior.
+	    There could also be an integer overflow on huge-precision values
+	    if mp_bitcnt_t > unsigned long.
+	  * Updated a comment.
 
-[tests/tcan_round.c] Corrected error message for mini-gmp.
-------------------------------------------------------------------------
-r13324 | vlefevre | 2018-12-05 20:01:26 +0000 (Wed, 05 Dec 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tpow_z.c
+	[src/pow.c]
+	  * Portability fix: when mpfr_exp_t <= long (which is the default),
+	    an addition with a negative result was done in unsigned integer
+	    arithmetic instead of signed integer arithmetic, with a conversion
+	    back to a signed type, i.e. with implementation-defined behavior.
+	    There could also be an integer overflow on huge-precision values
+	    if mp_bitcnt_t > unsigned long.
+	  * Updated comments.
 
-[tests/tpow_z.c] Another fix and minor improvements.
-------------------------------------------------------------------------
-r13323 | vlefevre | 2018-12-05 19:57:36 +0000 (Wed, 05 Dec 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tpow_z.c
+	[src/cos.c] Updated a comment.
 
-[tests/tpow_z.c] Fixed a test (midpoint case) that was failing
-with micro-gmp-8 and GMP_CHECK_RANDOMIZE=1544033327230569.
-------------------------------------------------------------------------
-r13322 | vlefevre | 2018-12-05 17:43:28 +0000 (Wed, 05 Dec 2018) | 3 lines
-Changed paths:
-   M /trunk/tests/tpow_z.c
+	[src/cos.c] Updated a comment.
 
-[tests/tpow_z.c] Fixed a test for MPFR_RNDF: do not check the ternary
-value (a failure was occurring with --with-mini-gmp=.../micro-gmp/8
-and GMP_CHECK_RANDOMIZE=1544025040809270).
-------------------------------------------------------------------------
-r13321 | vlefevre | 2018-12-05 17:41:33 +0000 (Wed, 05 Dec 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tpow_z.c
+	[src/const_log2.c] Corrected type for the return value of mpz_scan1.
 
-[tests/tpow_z.c] Improved error message.
-------------------------------------------------------------------------
-r13320 | vlefevre | 2018-12-05 17:39:25 +0000 (Wed, 05 Dec 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-mini-gmp.c
+2020-03-13  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr-mini-gmp.c] Added missing "void" in function prototype.
-------------------------------------------------------------------------
-r13319 | vlefevre | 2018-12-05 11:42:02 +0000 (Wed, 05 Dec 2018) | 2 lines
-Changed paths:
-   M /trunk/configure.ac
+	[tests/tests.c] Revert a change done in r13783 for function bad_cases():
+	  no longer fail if a generated value does not correspond to a bad case.
+	  But fail if the MPFR_CHECK_BADCASES environment variable is defined
+	  and too few bad cases are generated (less than 90%).
+	[doc/README.dev] Document MPFR_CHECK_BADCASES.
 
-[configure.ac] When building against mini-gmp, check the availability of
-lrand48, in particular because it is not part of the ISO C standard.
-------------------------------------------------------------------------
-r13318 | zimmerma | 2018-12-05 09:26:09 +0000 (Wed, 05 Dec 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-mini-gmp.c
+	[tests] Update to test the ternary value in test5rm() when possible,
+	and support the exact cases.
+	  * tests.c:
+	      - test5rm(): modified the prototype again and the behavior.
+	        Now, either only one test is done and the ternary value is
+	        not checked, or the test is done in the 5 rounding modes and
+	        the ternary value is checked.
+	      - data_check(): corresponding update; updated description.
+	      - bad_cases(): test the exact cases too.
+	  * tatanh.c: for the bad_cases() call, reduce emax to avoid errors in
+	    the generation of bad cases due to the rounding of tanh(y) to 1,
+	    which does not correspond to a bad case for atanh, but to an exact
+	    case.
+	  * tlog1p.c: for the bad_cases() call, reduce emax to avoid errors in
+	    the generation of bad cases due to the rounding of expm1(y) to -1,
+	    which does not correspond to a bad case for log1p, but to an exact
+	    case.
+	  * trec_sqrt.c: corrected the bad_cases() call to avoid negative
+	    numbers.
+	Note: the following tests
+	  GMP_CHECK_RANDOMIZE=5 ./tacos
+	  GMP_CHECK_RANDOMIZE=6 ./tatan
+	  GMP_CHECK_RANDOMIZE=4 ./tcos
+	currently fail, but because of a change in r13783 (see associated log
+	for the reason). To be fixed later.
 
-[src/mpfr-mini-gmp.c] put back unconditional assert from r13316 (removed by error)
+	[tests/tests.c] Modified the prototype of test5rm() to support a
+	parameter "exact". Therefore the parameter "test_one" is now a boolean
+	(the value 2 is no longer supported, as redundant with "exact"), and
+	about data_check() with rnd = '*', the loop is now done in test5rm(),
+	i.e. test5rm() is called with test_one being false.
 
-------------------------------------------------------------------------
-r13317 | zimmerma | 2018-12-05 09:23:00 +0000 (Wed, 05 Dec 2018) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr-mini-gmp.c
+2020-03-12  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr-mini-gmp.c] improved random_limb (the low bits of lrand48 are bad)
-		      and fixed gmp_urandomm_ui
+	[tests/tsqrt.c] For bad_cases(), use the same pos and psup parameters
+	as in troot.c for "rootn[2]", allowing inexact cases.
 
-------------------------------------------------------------------------
-r13316 | vlefevre | 2018-12-05 08:29:54 +0000 (Wed, 05 Dec 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-mini-gmp.c
+	[tests/tcbrt.c] For bad_cases(), use the same pos and psup parameters
+	as in troot.c for "rootn[3]", allowing inexact cases.
 
-[src/mpfr-mini-gmp.c] gmp_urandomm_ui: added a MPFR_ASSERTN
-unconditionally, as n == 0 is always forbidden.
-------------------------------------------------------------------------
-r13315 | zimmerma | 2018-12-05 08:03:17 +0000 (Wed, 05 Dec 2018) | 4 lines
-Changed paths:
-   M /trunk/src/mpfr-mini-gmp.c
+	[tests]
+	  * tests.c, function bad_cases(): updated/added debug messages;
+	    assume that the parameters are chosen in such a way that this
+	    test always generates hard-to-round cases (including exact cases),
+	    i.e. exit with an error if one does not get a bad case, otherwise
+	    this can leave unexpected failures unnoticed (either due to a bug
+	    in the MPFR library or due to poorly chosen parameters such as in
+	    troot.c until now).
+	    Note: ideally, this would require a proof, but it is better to get
+	    (unlikely) spurious failures with a non-default GMP_CHECK_RANDOMIZE
+	    value than missing important tests.
+	  * troot.c, bad_cases() invocation:
+	      - corrected the pos parameter: when n is even, it is useless to
+	        generate a negative number as the function is not defined (the
+	        inverse function generates a positive number, and the mismatch
+	        now yields a failure due to the change in bad_cases); when n is
+	        odd, generate as many negative numbers as positive ones.
+	      - for n ≤ 5, reduce the psup parameter in order to also generate
+	        inexact cases, instead of always exact cases.
 
-[src/mpfr-mini-gmp.c] the static assert introduced in r13313 makes the
-		      compilation fail for 8-bit limbs, while the code
-		      was valid for n <= 256 in that case
+	[tests/tests.c] Added a TODO for bad_cases, as the exact cases are not
+	tested yet. As a consequence, the bad_cases test added in tcbrt.c r13776
+	is not really useful yet, as the cbrt bad cases are only exact cases.
 
-------------------------------------------------------------------------
-r13314 | vlefevre | 2018-12-04 18:05:26 +0000 (Tue, 04 Dec 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-mini-gmp.c
+	[tests/tests.c]
+	  * test5rm: removed additional useless tests added in r6037 in the
+	    case test_one true and rnd = MPFR_RNDZ or MPFR_RNDA, since the
+	    description was a bit incorrect and this was used only by
+	      - data/digamma, where this yielded only duplicate tests (mode *);
+	      - data/li2, where mode z is used on a few tests and could be
+	        replaced by mode Z (i.e. test_one false) if need be;
+	    updated description and added details.
+	  * data_check: corrected/updated description.
 
-[src/mpfr-mini-gmp.c] Fixed types.
-------------------------------------------------------------------------
-r13313 | vlefevre | 2018-12-04 17:58:34 +0000 (Tue, 04 Dec 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-mini-gmp.c
+	[tests/tests.c] Minor change in an initialization.
 
-[src/mpfr-mini-gmp.c] Added a static assertion to make sure that
-the MPFR_ASSERTD added in r13312 is valid.
-------------------------------------------------------------------------
-r13312 | zimmerma | 2018-12-04 17:00:35 +0000 (Tue, 04 Dec 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-mini-gmp.c
+	[tests/tget_set_{d64,d128}.c] Added a FIXME and improved a message.
 
-[src/mpfr-mini-gmp.c] gmp_urandomm_ui did not generate uniform values
+	[acinclude.m4] Added a FIXME: in case of cross-compiling, the guess
+	"DPD" can be wrong, e.g. for the build with MinGW under Linux. One
+	does not get a failure just because of other issues in the code,
+	forcing the portable implementation of the decimal functions.
 
-------------------------------------------------------------------------
-r13311 | vlefevre | 2018-12-03 16:30:10 +0000 (Mon, 03 Dec 2018) | 1 line
-Changed paths:
-   M /trunk/src/set_d.c
+2020-03-11  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/set_d.c] Improved comment.
-------------------------------------------------------------------------
-r13309 | vlefevre | 2018-11-29 01:26:10 +0000 (Thu, 29 Nov 2018) | 1 line
-Changed paths:
-   M /trunk/tests/Makefile.am
+	Added bad_cases tests for mpfr_cbrt.
 
-[tests/Makefile.am] About r13308, added references to the bugs.
-------------------------------------------------------------------------
-r13308 | vlefevre | 2018-11-29 01:24:39 +0000 (Thu, 29 Nov 2018) | 3 lines
-Changed paths:
-   M /trunk/tests/Makefile.am
+	[src/cbrt.c] Improved the algorithm in the case the precision of the
+	input is larger than 3n, where n is the precision of the output, + 1
+	if the rounding mode is MPFR_RNDN: instead of truncating the output,
+	call mpz_root on the truncated input.
 
-[tests/Makefile.am] Unset DISPLAY as it is not needed and it can yield
-error messages when running the tests with LOG_COMPILER=wine (for builds
-with MinGW).
-------------------------------------------------------------------------
-r13307 | vlefevre | 2018-11-29 01:05:47 +0000 (Thu, 29 Nov 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tversion.c
+	[tests/tcbrt.c] Test the ternary value on other exact cases.
 
-[tests/tversion.c] Updated a comment about an output issue with MinGW,
-with the test run under Wine (which is really the cause of the issue).
-------------------------------------------------------------------------
-r13306 | vlefevre | 2018-11-28 15:13:12 +0000 (Wed, 28 Nov 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tstrtofr.c
+	[tests/tcbrt.c] Test the ternary value on special cases.
 
-[tests/tstrtofr.c] In case of failure of some particular test, output
-the probable cause of this failure (GCC bug 86554) with a workaround.
-------------------------------------------------------------------------
-r13305 | vlefevre | 2018-11-27 17:39:11 +0000 (Tue, 27 Nov 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tversion.c
+	[src/cbrt.c] Description of the algorithm: improvement; corrected the
+	end, which was incorrect and did not match the code (the comment was
+	introduced in r2057 and was already incorrect in the round-down case;
+	then the round-to-nearest case was improved in r2070, but the comment
+	was not updated).
 
-[tests/tversion.c] Updated a comment about a printf issue with MinGW.
-------------------------------------------------------------------------
-r13304 | vlefevre | 2018-11-27 16:51:17 +0000 (Tue, 27 Nov 2018) | 2 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+	[src/cbrt.c] Description of the algorithm: correction; added a TODO.
 
-[src/strtofr.c] Added a FIXME about the error analysis (info that was
-part of the FIXME resolved in r13303 and inadvertently dropped).
-------------------------------------------------------------------------
-r13303 | vlefevre | 2018-11-27 15:15:13 +0000 (Tue, 27 Nov 2018) | 2 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+2020-03-10  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/strtofr.c] Resolved a FIXME; tstrtofr no longer fails due to
-bug20181127 with 8-bit limbs (micro-gmp/8).
-------------------------------------------------------------------------
-r13302 | vlefevre | 2018-11-27 15:05:17 +0000 (Tue, 27 Nov 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tstrtofr.c
+	[src/cbrt.c] Description of the algorithm: corrected indentation;
+	renamed variable r to t in order to avoid confusion with the code
+	(where r has a different meaning).
 
-[tests/tstrtofr.c] Added bug20181127 (test found with random_tests),
-which fails with 8-bit limbs (micro-gmp/8).
-------------------------------------------------------------------------
-r13299 | vlefevre | 2018-11-27 11:47:39 +0000 (Tue, 27 Nov 2018) | 4 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
-   M /trunk/tests/tstrtofr.c
+	[src/cbrt.c] Clarified a comment.
 
-[src/mpfr-impl.h] Added a comment with a warning concerning the
-  meaning of MPFR_EXP_FSPEC.
-[tests/tstrtofr.c] Fixed a MPFR_EXP_FSPEC related bug in a test
-  for _MPFR_EXP_FORMAT <= 2, e.g. with -D_MPFR_PREC_FORMAT=2.
-------------------------------------------------------------------------
-r13298 | vlefevre | 2018-11-27 11:30:56 +0000 (Tue, 27 Nov 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tdiv.c
+	[src/cbrt.c] Resolved the second FIXME and simplified the code
+	(basically by removing duplicate code).
 
-[tests/tdiv.c] Fixed bad format string for an error message, detected
-with -D_MPFR_PREC_FORMAT=2 (using -Werror...).
-------------------------------------------------------------------------
-r13296 | vlefevre | 2018-11-26 13:15:45 +0000 (Mon, 26 Nov 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_str.c
-   M /trunk/tests/tset_str.c
+	[src/cbrt.c] Description of the algorithm:
+	  * Since there was no upper bound on s, let's remove the upper bound
+	    on m (this now matches the code).
+	  * Replaced the FIXME by one due to the lack of upper bound on s.
 
-[tests] Moved bug20180908() from tget_str.c to tset_str.c since it tests
-mpfr_set_str() only. This test was introduced in r13164.
-------------------------------------------------------------------------
-r13295 | vlefevre | 2018-11-23 10:43:13 +0000 (Fri, 23 Nov 2018) | 1 line
-Changed paths:
-   M /trunk/TODO
+	[src/cbrt.c] Added another FIXME as the code does not match the
+	algorithm described in a comment.
 
-[TODO] + More UBF functions.
-------------------------------------------------------------------------
-r13293 | vlefevre | 2018-11-23 10:33:33 +0000 (Fri, 23 Nov 2018) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/cbrt.c] Improved a condition to avoid operations that correspond
+	to a no-op.
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r13292 | vlefevre | 2018-11-23 09:32:39 +0000 (Fri, 23 Nov 2018) | 1 line
-Changed paths:
-   M /trunk/src/strtofr.c
+	[src/cbrt.c] Added an assertion.
 
-[src/strtofr.c] Changed some unsigned long to unsigned int.
-------------------------------------------------------------------------
-r13291 | vlefevre | 2018-11-23 09:22:30 +0000 (Fri, 23 Nov 2018) | 2 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+	[src/cbrt.c] Code cleanup and simplification. Added logging messages and
+	a FIXME about a comment (coming from r2057 with its associated code).
 
-[src/strtofr.c] Some cleanup in parsed_string_to_mpfr. Avoid a potential
-integer overflow in very high precision if mp_size_t < mpfr_prec_t.
-------------------------------------------------------------------------
-r13290 | vlefevre | 2018-11-22 22:20:51 +0000 (Thu, 22 Nov 2018) | 2 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+	[src/cbrt.c] Removed a useless cast on a comparison operand, since
+	both operands are non-negative.
 
-[src/strtofr.c] Updated FIXME, due to new tests added to
-tests/tstrtofr.c in r13278-13279,13286-13288.
-------------------------------------------------------------------------
-r13289 | vlefevre | 2018-11-22 21:58:40 +0000 (Thu, 22 Nov 2018) | 2 lines
-Changed paths:
-   M /trunk/src/nbits_ulong.c
+	[src/atan.c] Added assertions.
 
-[src/nbits_ulong.c] Added missing initialization from r13269
-when MPFR_LONG_WITHIN_LIMB is not defined.
-------------------------------------------------------------------------
-r13288 | vlefevre | 2018-11-22 21:52:00 +0000 (Thu, 22 Nov 2018) | 5 lines
-Changed paths:
-   M /trunk/tests/tstrtofr.c
+	[tools/mpfrlint] Workaround to Debian bug 953369 in libpython3.8-minimal
+	for the codespell invocation.
 
-[tests/tstrtofr.c] Resolved the FIXME and fixed the issue related to
-the old mpfr_get_str description (see r13283).
-Note: with the later fix r13289, a test still fails with 8-bit limbs
-(incorrect exponent, possibly corresponding to the FIXME just before
-"exp = GMP_NUMB_BITS - count;" in src/strtofr.c).
-------------------------------------------------------------------------
-r13287 | vlefevre | 2018-11-22 16:29:01 +0000 (Thu, 22 Nov 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tstrtofr.c
+2020-03-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tstrtofr.c] Added comments, including a FIXME.
-------------------------------------------------------------------------
-r13286 | vlefevre | 2018-11-22 16:14:59 +0000 (Thu, 22 Nov 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tstrtofr.c
+	[src/eint.c] Bug fix: possible integer overflow with some
+	C implementations (or some _MPFR_PREC_FORMAT / _MPFR_EXP_FORMAT values)
+	due to the use of incorrect integer types.
 
-[tests/tstrtofr.c] Resolved the FIXME for the random tests, and
-increased the number of tests to trigger a failure.
-------------------------------------------------------------------------
-r13283 | vlefevre | 2018-11-22 15:29:37 +0000 (Thu, 22 Nov 2018) | 3 lines
-Changed paths:
-   M /trunk/NEWS
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/get_str.c
+	[src/eint.c] Added other logging messages.
 
-MPFR manual: corrected/completed the mpfr_get_str description in order
-to follow the historical behavior and GMP's mpf_get_str function.
-(Discussion in the Trier meeting.)
-------------------------------------------------------------------------
-r13282 | vlefevre | 2018-11-22 15:09:31 +0000 (Thu, 22 Nov 2018) | 1 line
-Changed paths:
-   M /trunk/src/get_str.c
+	[src/eint.c] Added some logging messages.
 
-[src/get_str.c] Code style.
-------------------------------------------------------------------------
-r13281 | vlefevre | 2018-11-22 09:27:09 +0000 (Thu, 22 Nov 2018) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+2020-03-09  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/README.dev] Update about issues with mixing signed/unsigned types.
-------------------------------------------------------------------------
-r13280 | vlefevre | 2018-11-22 09:01:58 +0000 (Thu, 22 Nov 2018) | 2 lines
-Changed paths:
-   M /trunk/doc/README.dev
+	[tests/tsin.c] added one test
 
-[doc/README.dev] Added a note about the disallowed conversions between
-function pointers and other kinds of pointers (including to void *).
-------------------------------------------------------------------------
-r13279 | vlefevre | 2018-11-20 16:51:12 +0000 (Tue, 20 Nov 2018) | 4 lines
-Changed paths:
-   M /trunk/tests/tstrtofr.c
+2020-03-04  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tstrtofr.c] Added a FIXME, which explains the current failure.
-But there is currently an inconsistency in mpfr_get_str, whose digits
-are not specified:
-  https://sympa.inria.fr/sympa/arc/mpfr/2018-11/msg00021.html
-------------------------------------------------------------------------
-r13278 | vlefevre | 2018-11-20 16:17:15 +0000 (Tue, 20 Nov 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tstrtofr.c
+	[src/sub1.c] cancel: also log its value; range checking/tracking.
 
-[tests/tstrtofr.c] Added random tests, which currently fail.
-------------------------------------------------------------------------
-r13276 | vlefevre | 2018-11-19 15:23:59 +0000 (Mon, 19 Nov 2018) | 3 lines
-Changed paths:
-   M /trunk/src/round_prec.c
+	[src/cmp2.c] Added a comment giving the range of the value returned
+	in "cancel" and explaining why there is no integer overflow in the
+	computation of this value.
 
-[src/round_prec.c] mpfr_can_round_raw: improved the code structure about
-rnd1 and rnd2, making clear that they are not changed several times;
-avoid the use of cc with 2 different meanings in the same code path.
-------------------------------------------------------------------------
-r13275 | zimmerma | 2018-11-17 09:47:41 +0000 (Sat, 17 Nov 2018) | 3 lines
-Changed paths:
-   M /trunk/src/round_prec.c
+	[src/cmp2.c] Comment: some absolute values are not needed (again).
 
-[src/round_prec.c] fixed bug in mpfr_can_round when rnd2=RNDF, rnd1 is a
-		   directed rounding, and the input is exact
+	[src/cmp2.c] Minor correction for |EXP(b) - EXP(c)| >= MPFR_EXP_MAX.
 
-------------------------------------------------------------------------
-r13274 | vlefevre | 2018-11-16 15:06:27 +0000 (Fri, 16 Nov 2018) | 5 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+	[src/cmp2.c] Better explanation when |EXP(b) - EXP(c)| >= MPFR_EXP_MAX.
 
-[src/strtofr.c] parsed_string_to_mpfr: updated a FIXME comment.
-In short, the current tstrtofr.c tests seem to always be hard-to-round
-cases. The consequence is that some parts of the code are run, but not
-completely tested, because for these cases, some intermediate results,
-potentially incorrect, are thrown out due to the next Ziv iteration!
-------------------------------------------------------------------------
-r13273 | vlefevre | 2018-11-16 14:48:33 +0000 (Fri, 16 Nov 2018) | 1 line
-Changed paths:
-   M /trunk/src/strtofr.c
+2020-03-03  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/strtofr.c] parsed_string_to_mpfr: minor changes.
-------------------------------------------------------------------------
-r13272 | vlefevre | 2018-11-16 14:31:59 +0000 (Fri, 16 Nov 2018) | 1 line
-Changed paths:
-   M /trunk/src/strtofr.c
+	[src/cmp2.c] Finished the review of mpfr_cmp2: simplified the code even
+	more; corrected/updated comments (in the case high_dif = 0, one can have
+	dif = 1 if c has entirely been taken into account, so that the comment
+	"dif > 1 here" was incorrect; only dif >= 1 is needed anyway).
 
-[src/strtofr.c] parsed_string_to_mpfr: added log messages.
-------------------------------------------------------------------------
-r13271 | vlefevre | 2018-11-16 13:23:29 +0000 (Fri, 16 Nov 2018) | 1 line
-Changed paths:
-   M /trunk/src/strtofr.c
+	[src/cmp2.c] Changed high_dif to type int since it is manipulated like
+	a boolean. Updated comments.
 
-[src/strtofr.c] Minor change to use MPFR_ASSERTD.
-------------------------------------------------------------------------
-r13270 | vlefevre | 2018-11-16 13:15:57 +0000 (Fri, 16 Nov 2018) | 2 lines
-Changed paths:
-   M /trunk/src/int_ceil_log2.c
-   M /trunk/src/mpfr-impl.h
+2020-03-02  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/{int_ceil_log2.c,mpfr-impl.h}] Consistent postcondition for
-MPFR_INT_CEIL_LOG2 and __gmpfr_int_ceil_log2 (result >= 0).
-------------------------------------------------------------------------
-r13269 | vlefevre | 2018-11-16 13:13:52 +0000 (Fri, 16 Nov 2018) | 1 line
-Changed paths:
-   M /trunk/src/nbits_ulong.c
+	[src/cmp2.c] Simplified the mpfr_cmp2 code and updated comments.
 
-[src/nbits_ulong.c] Code refactoring. Added {pre,post}condition.
-------------------------------------------------------------------------
-r13268 | vlefevre | 2018-11-16 12:50:13 +0000 (Fri, 16 Nov 2018) | 1 line
-Changed paths:
-   M /trunk/src/strtofr.c
+	[src/cmp2.c] Updated comments.
 
-[src/strtofr.c] parsed_string_to_mpfr: removed an incorrect cast.
-------------------------------------------------------------------------
-r13267 | vlefevre | 2018-11-16 12:17:36 +0000 (Fri, 16 Nov 2018) | 2 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+2020-03-02  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/strtofr.c] parsed_string_to_mpfr: updated a FIXME comment (again,
-another issue).
-------------------------------------------------------------------------
-r13266 | vlefevre | 2018-11-16 12:09:24 +0000 (Fri, 16 Nov 2018) | 2 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+	[src/mpfr.h] added comment
 
-[src/strtofr.c] parsed_string_to_mpfr: updated a FIXME comment (there
-is another issue to solve first).
-------------------------------------------------------------------------
-r13265 | vlefevre | 2018-11-16 11:48:20 +0000 (Fri, 16 Nov 2018) | 1 line
-Changed paths:
-   M /trunk/src/amd/mparam.h
-   M /trunk/src/arm/mparam.h
-   M /trunk/src/generic/coverage/mparam.h
-   M /trunk/src/mips/mparam.h
-   M /trunk/src/powerpc64/mparam.h
-   M /trunk/src/sparc64/mparam.h
-   M /trunk/src/x86/mparam.h
-   M /trunk/src/x86_64/core2/mparam.h
-   M /trunk/src/x86_64/mparam.h
+2020-03-02  Vincent Lefèvre  <vincent at vinc17.net>
 
-Removed trailing whitespace.
-------------------------------------------------------------------------
-r13264 | vlefevre | 2018-11-16 10:26:36 +0000 (Fri, 16 Nov 2018) | 2 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+	[src/mpfr.h] _MPFR_PREC_FORMAT and _MPFR_EXP_FORMAT: improved comment.
 
-[src/strtofr.c] parsed_string_to_mpfr: updated a comment (useless code
-in this function or incomplete tests).
-------------------------------------------------------------------------
-r13263 | vlefevre | 2018-11-16 10:10:30 +0000 (Fri, 16 Nov 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/rndna.c
+	[src/mpfr.h] _MPFR_PREC_FORMAT and _MPFR_EXP_FORMAT: added a detailed
+	comment (the previous comment was not obsolete, but misleading).
 
-Avoid GCC's -Wcast-align warnings with 8-bit limbs (a correct alignment
-is ensured by the code itself, and GCC cannot check just from a cast).
-------------------------------------------------------------------------
-r13262 | vlefevre | 2018-11-16 08:24:25 +0000 (Fri, 16 Nov 2018) | 1 line
-Changed paths:
-   M /trunk/src/strtofr.c
+2020-03-02  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/strtofr.c] parsed_string_to_mpfr: updated comments.
-------------------------------------------------------------------------
-r13261 | vlefevre | 2018-11-15 17:17:13 +0000 (Thu, 15 Nov 2018) | 2 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+	[src/mpfr.h] removed obsolete comment (_MPFR_PREC_FORMAT=3 is the default
+		     under Linux x86_64)
 
-[src/strtofr.c] parsed_string_to_mpfr: more code review, with minor
-changes and corrections + a FIXME.
-------------------------------------------------------------------------
-r13260 | vlefevre | 2018-11-15 11:35:55 +0000 (Thu, 15 Nov 2018) | 1 line
-Changed paths:
-   M /trunk/src/strtofr.c
+2020-03-01  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/strtofr.c] Typo.
-------------------------------------------------------------------------
-r13259 | vlefevre | 2018-11-15 10:22:47 +0000 (Thu, 15 Nov 2018) | 1 line
-Changed paths:
-   M /trunk/src/strtofr.c
+	[src/sin.c] increase initial precision even more
 
-[src/strtofr.c] Fixed an allocation bug for GMP_NUMB_BITS = 8.
-------------------------------------------------------------------------
-r13258 | vlefevre | 2018-11-15 10:13:22 +0000 (Thu, 15 Nov 2018) | 2 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+2020-03-01  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/strtofr.c] Updated a comment: the issue with mpn_set_str found
-in 2013-12 (see r8722) was actually an error in the GMP manual.
-------------------------------------------------------------------------
-r13257 | vlefevre | 2018-11-15 10:02:17 +0000 (Thu, 15 Nov 2018) | 1 line
-Changed paths:
-   M /trunk/src/strtofr.c
+	[tests/tpow.c] Replaced mpfr_cmp by !mpfr_equal_p for NaN detection.
 
-[src/strtofr.c] parsed_string_to_mpfr: improved an assertion; comments.
-------------------------------------------------------------------------
-r13256 | zimmerma | 2018-11-15 09:43:43 +0000 (Thu, 15 Nov 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tcan_round.c
+	[tests/tsin.c] Replaced obsolete function mpfr_mul_2exp by mpfr_mul_2ui.
 
-[tests/tcan_round.c] fixed some TODOs, which exposes a bug
+2020-02-29  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r13255 | vlefevre | 2018-11-15 09:33:02 +0000 (Thu, 15 Nov 2018) | 2 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+	[src/sin.c] increase initial precision when x is large
 
-[src/strtofr.c] Near the beginning of parsed_string_to_mpfr: corrected
-comments; added an assertion; minor change of a test.
-------------------------------------------------------------------------
-r13253 | zimmerma | 2018-11-10 08:25:31 +0000 (Sat, 10 Nov 2018) | 4 lines
-Changed paths:
-   M /trunk/src/mulders.c
-   M /trunk/tune/tuneup.c
+2020-02-29  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/mulders.c] fixed issue with --enable-gmp-internals
-[tune/tuneup.c] likewise
-(see https://sympa.inria.fr/sympa/arc/mpfr/2018-11/msg00015.html)
+	[src/rem1.c] workaround for efficiency bug in mpz_powm_ui, which was making
+	argument reduction in mpfr_sin for huge x very slow.
 
-------------------------------------------------------------------------
-r13251 | zimmerma | 2018-10-18 09:03:52 +0000 (Thu, 18 Oct 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-longlong.h
+	Before:
+	$ ./mfv5 -p113 -e16384 -d-2 mpfr_sin
+	 mpfr_sin:	 3289620 / 3576511.59 / 6841956
 
-[src/mpfr-longlong.h] applied patch from https://sympa.inria.fr/sympa/arc/mpfr/2018-10/msg00010.html
+	After this commit:
+	 mpfr_sin:	 166868 / 182661.01 / 343224
 
-------------------------------------------------------------------------
-r13244 | vlefevre | 2018-10-07 10:36:45 +0000 (Sun, 07 Oct 2018) | 1 line
-Changed paths:
-   M /trunk/codespell.ignore
+2020-02-29  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[codespell.ignore] Also ignore "ue" (codespell 1.14).
-------------------------------------------------------------------------
-r13237 | vlefevre | 2018-10-01 15:36:47 +0000 (Mon, 01 Oct 2018) | 6 lines
-Changed paths:
-   M /trunk/configure.ac
-   M /trunk/src/Makefile.am
+	[tests/tpow.c] added one test
 
-[configure.ac,src/Makefile.am] About the --with-mini-gmp support, since
-there are some advantages with the new code, one will probably not go
-back. Thus removed the references to the Automake 1.15 bug and to the
-old code. Also removed the mini_gmp_path=. workaround needed with the
-old code (even with Automake 1.16), which had been added in r13217.
-Also slightly improved the setup for mini-gmp.
-------------------------------------------------------------------------
-r13236 | vlefevre | 2018-10-01 13:54:04 +0000 (Mon, 01 Oct 2018) | 1 line
-Changed paths:
-   M /trunk/doc/with-mini-gmp.patch
+	added value -2 for option -d to generate random number with exponent
+	exactly e. Example:
+	$ mfv5 -p113 -e16384 -d-2 -v mpfr_sin
 
-[doc/with-mini-gmp.patch] Updated comment.
-------------------------------------------------------------------------
-r13235 | vlefevre | 2018-10-01 13:51:10 +0000 (Mon, 01 Oct 2018) | 8 lines
-Changed paths:
-   M /trunk/configure.ac
-   M /trunk/src/Makefile.am
+2020-02-28  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[configure.ac,src/Makefile.am] Avoid a "make" failure due to a bug in
-Automake 1.15 automatic dependency tracking: instead of using mini-gmp
-directly in an external directory with a $(mini_gmp_path) variable in
-src/Makefile.am, make the configure script add symbolic links to the
-mini-gmp sources in the build directory, and use these symbolic links
-for the MPFR build (as if they were plain files).
-Tested under various conditions: static and shared; separate source and
-build directories; changing the mini-gmp version without "make clean".
-------------------------------------------------------------------------
-r13233 | vlefevre | 2018-09-28 08:17:28 +0000 (Fri, 28 Sep 2018) | 6 lines
-Changed paths:
-   A /trunk/doc/with-mini-gmp.patch
+	[tests/tpow.c] added a test
 
-Added doc/with-mini-gmp.patch file (for the developers):
-Modifications to configure.ac and src/Makefile.am that had been done
-for --with-mini-gmp support. This is kept for the reference, as changes
-may be needed as a workaround to a bug fixed in GNU Automake 1.16, and
-other future changes might break things (to remember what was working
-at this time).
-------------------------------------------------------------------------
-r13230 | vlefevre | 2018-09-20 11:12:22 +0000 (Thu, 20 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/doc/mini-gmp
+	[tests/tsin.c] fixed and completed check_binary128()
 
-[doc/mini-gmp] Update.
-------------------------------------------------------------------------
-r13229 | vlefevre | 2018-09-19 12:55:56 +0000 (Wed, 19 Sep 2018) | 3 lines
-Changed paths:
-   M /trunk/Makefile.am
-   M /trunk/configure.ac
+2020-02-28  Vincent Lefèvre  <vincent at vinc17.net>
 
-[Makefile.am] Distribute the doc/mini-gmp file.
-[configure.ac] For --with-mini-gmp, say:
-  "(experimental, please read doc/mini-gmp file)"
-------------------------------------------------------------------------
-r13228 | vlefevre | 2018-09-19 12:47:03 +0000 (Wed, 19 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/Makefile.am
+	[src/cmp2.c] Started to review mpfr_cmp2. Minor changes.
 
-[src/Makefile.am] Added nodist_ for mini-gmp.{c,h} so that these files
-(not part of MPFR) are not put in the tarballs by "make dist".
-------------------------------------------------------------------------
-r13227 | vlefevre | 2018-09-19 12:17:20 +0000 (Wed, 19 Sep 2018) | 4 lines
-Changed paths:
-   M /trunk/NEWS
-   M /trunk/configure.ac
-   M /trunk/doc/mini-gmp
+	[src/cmp2.c] Detailed a comment concerning UBF.
 
-Removed --enable-mini-gmp configure option.
-  * NEWS: say that it is replaced by --with-mini-gmp.
-  * configure.ac: --enable-mini-gmp removed.
-  * doc/mini-gmp: update.
-------------------------------------------------------------------------
-r13226 | vlefevre | 2018-09-19 11:50:17 +0000 (Wed, 19 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-mini-gmp.c
+2020-02-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr-mini-gmp.c] Missing #else (from r13156).
-------------------------------------------------------------------------
-r13225 | vlefevre | 2018-09-19 11:36:03 +0000 (Wed, 19 Sep 2018) | 5 lines
-Changed paths:
-   M /trunk/configure.ac
+	[tests/tsin.c] Cleanup of the latest test (note: mpfr_equal_p is better
+	than mpfr_cmp as it makes the test fail on a NaN result).
 
-[configure.ac] When using --with-mini-gmp, define GMP_NUMB_BITS if this
-macro is not already defined in mini-gmp.h (this is done a bit like
-with --enable-mini-gmp, but the handling in this option is buggy as
-GMP_NUMB_BITS is defined with AC_DEFINE_UNQUOTED unconditionally,
-though is most cases the contents of the macros are the same).
-------------------------------------------------------------------------
-r13224 | vlefevre | 2018-09-19 10:59:02 +0000 (Wed, 19 Sep 2018) | 3 lines
-Changed paths:
-   M /trunk/configure.ac
+2020-02-27  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[configure.ac] Do not split "Setup GMP detection". When building
-MPFR against mini-gmp, do not run any "Setup GMP detection" test
-(in particular, no longer check gmp.h, as it is useless).
-------------------------------------------------------------------------
-r13223 | vlefevre | 2018-09-19 10:44:08 +0000 (Wed, 19 Sep 2018) | 4 lines
-Changed paths:
-   M /trunk/src/mpfr-mini-gmp.h
+	[tests/tsin.c] added one test with precision 128
 
-[src/mpfr-mini-gmp.h] Removed incorrect GMP_NUMB_BITS macro definition,
-and this macro needs to be usable in preprocessor tests, and sizeof and
-types are not available at this level. GMP_NUMB_BITS must be defined by
-mini-gmp.h, by the configure script, or by the user.
-------------------------------------------------------------------------
-r13222 | vlefevre | 2018-09-19 00:21:16 +0000 (Wed, 19 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/tools/mpfrlint
+2020-02-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tools/mpfrlint] Update due to r13221.
-------------------------------------------------------------------------
-r13221 | vlefevre | 2018-09-18 13:59:54 +0000 (Tue, 18 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/Makefile.am
+	[src/mpfr.h] Updated a comment (underscore version of attribute name).
 
-[tests/Makefile.am] Run tversion at the beginning of the tests,
-then show its output and svnversion's output too.
-------------------------------------------------------------------------
-r13220 | vlefevre | 2018-09-18 08:10:40 +0000 (Tue, 18 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-mini-gmp.h
+	[tools/mpfrlint] Detect the use of the non-underscore version of the
+	attribute names in mpfr.h (see README.dev).
 
-[src/mpfr-mini-gmp.h] Added a FIXME (failure with a mini-gmp that
-does not define GMP_NUMB_BITS, such as the official one).
-------------------------------------------------------------------------
-r13219 | vlefevre | 2018-09-18 01:47:06 +0000 (Tue, 18 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/tests/random2.c
+2020-02-25  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/random2.c] Avoid undefined behavior on shift count.
-------------------------------------------------------------------------
-r13218 | vlefevre | 2018-09-18 01:45:39 +0000 (Tue, 18 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[src/mpfr.h] Use the underscore version of the attribute names.
+	[doc/README.dev] Added information on this subject.
 
-[src/mpfr-impl.h] Fixed MPFR_LIMB_MASK() macro.
-------------------------------------------------------------------------
-r13217 | vlefevre | 2018-09-18 01:17:52 +0000 (Tue, 18 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/configure.ac
+	[TODO] Added item on GNU Automake and -I options.
 
-[configure.ac] Avoid a configure failure with automatic dependency
-tracking when --with-mini-gmp is not used (bug in Automake?).
-------------------------------------------------------------------------
-r13216 | vlefevre | 2018-09-18 00:00:24 +0000 (Tue, 18 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/NEWS
+2020-02-14  Vincent Lefèvre  <vincent at vinc17.net>
 
-[NEWS] + Mini-gmp support via the --with-mini-gmp configure option.
-------------------------------------------------------------------------
-r13214 | vlefevre | 2018-09-17 23:55:55 +0000 (Mon, 17 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk
-   M /trunk/configure.ac
-   M /trunk/doc/mini-gmp
-   M /trunk/src/Makefile.am
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/mpfr.h
+	[src/mpfr-impl.h] Removed an incorrect comment before MPFR_TMP_INIT1
+	(this macro does not allocate anything, and MPFR_TMP_INIT just after
+	can allocate more than 1 limb).
 
-Merged the with-mini-gmp branch into the trunk: new --with-mini-gmp
-configure option to build MPFR against mini-gmp (instead of GMP).
-------------------------------------------------------------------------
-r13211 | vlefevre | 2018-09-17 15:01:51 +0000 (Mon, 17 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mul_ui.c
+	[TODO] About the use of MPFR_MANT(x).
 
-[src/mul_ui.c] Better code organization (with the MPFR_RET at the right
-place). Corrected indentation after #else.
-------------------------------------------------------------------------
-r13210 | zimmerma | 2018-09-17 14:40:01 +0000 (Mon, 17 Sep 2018) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr-mini-gmp.c
-   M /trunk/src/mul_ui.c
+2020-02-13  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr-mini-gmp.c] added #if 0 ... #endif for mpz_dump (unused)
-[src/mul_ui.c] fixed compiler warning for limb < long
+	[TODO] Typo.
 
-------------------------------------------------------------------------
-r13207 | vlefevre | 2018-09-17 10:08:51 +0000 (Mon, 17 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/tests/random2.c
+2020-02-12  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/random2.c] Fix for 8-bit limb.
-------------------------------------------------------------------------
-r13205 | vlefevre | 2018-09-17 09:17:18 +0000 (Mon, 17 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tests.c
+	[tests/tcmpabs.c] Added missing tests of mpfr_cmpabs with NaN.
 
-[tests/tests.c] Define only one buffer in test_version().
-------------------------------------------------------------------------
-r13204 | vlefevre | 2018-09-17 09:14:21 +0000 (Mon, 17 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/tests/random2.c
+	[tests/tcmpabs.c] For mpfr_cmpabs: like mpfr_cmpabs_ui, do each test
+	in 4 different contexts, combinations of:
+	  * flags all unset or flags all set;
+	  * usual exponent range or reduced exponent range.
+	Minor corrections in the old tests.
 
-[tests/random2.c] Improved code by using MPFR_LIMB_* macros.
-------------------------------------------------------------------------
-r13203 | vlefevre | 2018-09-17 09:04:58 +0000 (Mon, 17 Sep 2018) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[tests/tcmpabs.c] For mpfr_cmpabs_ui: do each test in 4 different
+	contexts, combinations of:
+	  * flags all unset or flags all set;
+	  * usual exponent range or reduced exponent range.
 
-[src/mpfr-impl.h] Improved MPFR_LIMB_* macros for mp_limb_t < int
-(e.g. 16-bit or 8-bit limb), as in such a case, integer promotion
-transforms mp_limb_t to int.
-------------------------------------------------------------------------
-r13202 | zimmerma | 2018-09-17 07:56:07 +0000 (Mon, 17 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tests.c
+2020-02-12  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tests.c] fixed compiler warning
+	[tests/tcmpabs.c] added tests for mpfr_cmpabs_ui
 
-------------------------------------------------------------------------
-r13200 | vlefevre | 2018-09-14 21:46:06 +0000 (Fri, 14 Sep 2018) | 3 lines
-Changed paths:
-   M /trunk/src/get_si.c
+2020-02-12  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/get_si.c] Code refactoring/simplification like what has been
-done for get_ui.c in r13185, fixing also an integer overflow when
-MPFR_LONG_WITHIN_LIMB is not defined.
-------------------------------------------------------------------------
-r13199 | vlefevre | 2018-09-14 15:28:12 +0000 (Fri, 14 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/tests/random2.c
+	[src/mpfr-impl.h]
+	  * MPFR_ALIAS: use the comma operator instead of "do ... while (0)"
+	    so that this macro can be used in an expression context.
+	  * MPFR_TMP_INIT_ABS, MPFR_TMP_INIT_NEG: use MPFR_ALIAS.
 
-[tests/random2.c] Fix for 16-bit limb.
-------------------------------------------------------------------------
-r13198 | vlefevre | 2018-09-14 15:19:38 +0000 (Fri, 14 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/src/add1.c
+	[src/mpfr.h] Added prototype for mpfr_cmpabs_ui.
 
-[src/add1.c] Fix for 16-bit limb.
-------------------------------------------------------------------------
-r13197 | vlefevre | 2018-09-14 15:04:09 +0000 (Fri, 14 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
+	[doc/mpfr.texi] Added mpfr_cmpabs_ui to Section "Added Functions"
+	(API Compatibility).
 
-[src/mpfr-gmp.h] Fixed bug in add_ssaaaa / sub_ddmmss from r13081.
-------------------------------------------------------------------------
-r13194 | vlefevre | 2018-09-14 13:03:24 +0000 (Fri, 14 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/src/Makefile.am
+	[tests/trint.c] Replaced obsolete mpfr_cmp_abs by mpfr_cmpabs.
 
-[src/Makefile.am] Moved a comment in a better place.
-------------------------------------------------------------------------
-r13191 | vlefevre | 2018-09-14 11:19:31 +0000 (Fri, 14 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/configure.ac
+	[doc/mpfr.texi] Typo from r13708.
 
-[configure.ac] Typo.
-------------------------------------------------------------------------
-r13189 | vlefevre | 2018-09-14 11:13:50 +0000 (Fri, 14 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/configure.ac
+2020-02-12  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[configure.ac] Updated comments about configure options for mini-gmp.
-------------------------------------------------------------------------
-r13188 | zimmerma | 2018-09-13 16:27:28 +0000 (Thu, 13 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tsin.c
+	[NEWS] mention new mpfr_cmpabs_ui
 
-[tests/tsin.c] reduce REDUCE_EMAX with mini-gmp
+	added new function mpfr_cmpabs_ui
 
-------------------------------------------------------------------------
-r13186 | vlefevre | 2018-09-13 13:03:53 +0000 (Thu, 13 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/src/get_ui.c
+	renamed cmp_abs.c to cmpabs.c
 
-[src/get_ui.c] Added assertions.
-------------------------------------------------------------------------
-r13185 | vlefevre | 2018-09-13 13:01:05 +0000 (Thu, 13 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/src/get_ui.c
+2020-02-12  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/get_ui.c] Code refactoring/simplification.
-------------------------------------------------------------------------
-r13184 | vlefevre | 2018-09-13 11:04:50 +0000 (Thu, 13 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/src/sin_cos.c
+	[TODO] Typo.
 
-[src/sin_cos.c] Added assertions protecting against buffer overflow.
-------------------------------------------------------------------------
-r13183 | zimmerma | 2018-09-13 08:46:01 +0000 (Thu, 13 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sin_cos.c
+	[TODO] + Serialization / Deserialization (suggested by Frédéric Pétrot).
+	I've also added an idea of implementation to reuse most of the code and
+	change very little.
 
-[src/sin_cos.c] fix for small limb size
+	[src/ubf.c]
+	  * Optimized mpfr_init_get_zexp() for _MPFR_EXP_FORMAT <= 3
+	    (as in the default configuration).
+	  * Updated comments.
 
-------------------------------------------------------------------------
-r13182 | vlefevre | 2018-09-12 14:32:42 +0000 (Wed, 12 Sep 2018) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr-mini-gmp.h
+	[src/mpfr-impl.h] Added UBF-related comments.
 
-[src/mpfr-mini-gmp.h] Fix: Since gmp_version is not defined in mini-gmp,
-we must not declare it (otherwise one would get a link failure instead
-of a compilation failure if gmp_version is used by mistake).
-------------------------------------------------------------------------
-r13181 | vlefevre | 2018-09-12 14:28:03 +0000 (Wed, 12 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tests.c
+	[src/mpfr-impl.h] Added UBF-related comments.
 
-[tests/tests.c] Improved change in r13179 for mini-gmp.
-------------------------------------------------------------------------
-r13180 | vlefevre | 2018-09-12 13:39:57 +0000 (Wed, 12 Sep 2018) | 3 lines
-Changed paths:
-   M /trunk/configure.ac
+	[src/mpfr-impl.h] Added a comment for UBF and types.
 
-[configure.ac] Do not check for CC and CFLAGS in gmp.h if mini-gmp is
-used, i.e. if --enable-mini-gmp (current option) or --with-mini-gmp
-(future option) is given.
-------------------------------------------------------------------------
-r13179 | zimmerma | 2018-09-12 13:32:33 +0000 (Wed, 12 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tests.c
+2020-02-11  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tests.c] libgmp is not defined with mini-gmp (issue found with -O0)
+	[src/mpfr-impl.h] Added a comment for INEXPOS.
 
-------------------------------------------------------------------------
-r13178 | vlefevre | 2018-09-12 12:48:50 +0000 (Wed, 12 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-mini-gmp.h
+	[src/mpfr-impl.h] INEXPOS and VSIGN code improvement.
 
-[src/mpfr-mini-gmp.h] Removed #include lines as mpfr-mini-gmp.h is
-included only in mpfr-impl.h, which already does these #include's.
-------------------------------------------------------------------------
-r13177 | vlefevre | 2018-09-12 12:21:53 +0000 (Wed, 12 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	Removed duplicate macro definitions.
 
-[src/mpfr-impl.h] Check that MPFR_HAVE_GMP_IMPL and MPFR_USE_MINI_GMP
-are not both defined.
-------------------------------------------------------------------------
-r13176 | vlefevre | 2018-09-12 12:19:21 +0000 (Wed, 12 Sep 2018) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr-mini-gmp.c
+	[tests/tfmma.c] Use mpfr_set_str instead of mpfr_set_d.
 
-[src/mpfr-mini-gmp.c] Removed #include "mpfr-mini-gmp.h" as this include
-is already done in mpfr-impl.h (in both cases, when MPFR_USE_MINI_GMP is
-defined).
-------------------------------------------------------------------------
-r13175 | vlefevre | 2018-09-12 12:11:04 +0000 (Wed, 12 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/rec_sqrt.c
+	[src/sub1.c] Got rid of some goto's. Added log messages.
 
-[src/rec_sqrt.c] Replaced "if (GMP_NUMB_BITS >= 16)" by a preprocessor
-test "#if GMP_NUMB_BITS >= 16" like earlier. Use static assertions.
-------------------------------------------------------------------------
-r13174 | vlefevre | 2018-09-12 10:43:22 +0000 (Wed, 12 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/src/rec_sqrt.c
+2020-02-10  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/rec_sqrt.c] Fixed types for 8-bit limb. Removed useless casts.
-------------------------------------------------------------------------
-r13173 | vlefevre | 2018-09-12 10:26:45 +0000 (Wed, 12 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/rec_sqrt.c
+	[src/sub1.c] Bug fix: the underflow case (possible with UBF, e.g. via
+	mpfr_fmma or mpfr_fmms) was not tested in the case c small.
+	Note: this completes r11418 and r12752 for underflow detection.
 
-[src/rec_sqrt.c] Fixed a type from r13172 (int was obviously too short
-and was yielding a segmentation fault).
-------------------------------------------------------------------------
-r13172 | zimmerma | 2018-09-11 20:59:57 +0000 (Tue, 11 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/rec_sqrt.c
+	[src/sub1.c] Added log messages and checked the UBF cases yielding
+	exp_b == MPFR_EXP_MAX and/or diff_exp == MPFR_EXP_MAX.
 
-[src/rec_sqrt.c] fixed for 8-bit limb
+2020-02-08  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13171 | zimmerma | 2018-09-11 12:01:25 +0000 (Tue, 11 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tcan_round.c
+	[src/vasprintf.c] Added log messages for MPFR_PREC_ARG ('P' specifier).
 
-[tests/tcan_round.c] fixed test for small value of GMP_NUMB_BITS
+	[tests/tsprintf.c] Fixed some tests: the 'P' specifier was missing.
 
-------------------------------------------------------------------------
-r13170 | zimmerma | 2018-09-11 10:45:39 +0000 (Tue, 11 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+2020-02-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/strtofr.c] fixed r13168: in case exact=0, mpn_rshift was not done
+	[src/fmma.c] Reverted the mpfr_check_range from r13688.
+	The exponent range has not been extended by mpfr_fmma_aux, and the
+	result comes from mpfr_add, mpfr_sub, or mpfr_set_1_2, which return
+	results in the current range. If the result of mpfr_fmma_aux is not
+	in the current range, this is due to a bug in one of these functions.
+	Note: mpfr_add and mpfr_sub accept UBF inputs.
 
-------------------------------------------------------------------------
-r13169 | zimmerma | 2018-09-11 09:37:07 +0000 (Tue, 11 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tsqrt.c
+2020-02-06  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tsqrt.c] modified test_sqrt1n() so that it passes with 8-bit limbs
+	[src/fmma.c] fixed bug (result might be out of exponent range)
+	[tests/tfmma.c] added non-regression test
 
-------------------------------------------------------------------------
-r13168 | vlefevre | 2018-09-11 09:00:21 +0000 (Tue, 11 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/src/strtofr.c
+2020-02-03  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/strtofr.c] Replaced "exact &=" by "exact = exact &&" as usual.
-------------------------------------------------------------------------
-r13167 | zimmerma | 2018-09-11 08:49:53 +0000 (Tue, 11 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+	[doc/mpfr.texi] Updated the month.
 
-[src/strtofr.c] fix for 8-bit limb
+	[doc/mpfr.texi] In the paragraph "MPFR internal data such as flags",
+	no longer mention caches as caches may now also be global when MPFR
+	has been compiled as thread safe (locking is used). Caches have been
+	discussed earlier in the section anyway.
 
-------------------------------------------------------------------------
-r13166 | zimmerma | 2018-09-11 07:39:16 +0000 (Tue, 11 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+2020-01-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/strtofr.c] added comment
+	[INSTALL] URL update.
 
-------------------------------------------------------------------------
-r13165 | vlefevre | 2018-09-10 23:50:38 +0000 (Mon, 10 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2020-01-20  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r13164 | zimmerma | 2018-09-10 19:17:57 +0000 (Mon, 10 Sep 2018) | 3 lines
-Changed paths:
-   M /trunk/src/strtofr.c
-   M /trunk/tests/tget_str.c
+	ChangeLog update with "LC_ALL=en_US.UTF8 TZ=UTC svn log -rHEAD:0 -v".
 
-[src/strtofr.c] fix from r13163 was incorrect
-[tests/tget_str.c] added a testcase, and fixed an error message
+	[tests/Makefile.am] Updated a comment; in particular, replaced the two
+	obsolete gmane.org URLs by lists.gnu.org/archive/html/bug-gnulib ones.
 
-------------------------------------------------------------------------
-r13163 | zimmerma | 2018-09-08 17:00:40 +0000 (Sat, 08 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+	[INSTALL] Removed reference to a gmane.org URL, which no longer exists.
 
-[src/strtofr.c] resolved a FIXME
+2020-01-16  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13162 | zimmerma | 2018-09-08 14:02:13 +0000 (Sat, 08 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tdiv_ui.c
+	[src/beta.c,tests/ttanh.c] towards → toward (for consistency).
 
-[tests/tdiv_ui.c] fixed corner_cases() test
+2020-01-10  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13161 | zimmerma | 2018-09-08 11:39:54 +0000 (Sat, 08 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/int_ceil_log2.c
+	[tests/{tfprintf.c,tprintf.c}] Updated an error message about MinGW,
+	now output only if MinGW is used.
 
-[src/int_ceil_log2.c] fixed __gmpfr_int_ceil_log2 for limb < long
+	[doc/README.dev] Concerning MinGW, added a sentence about the use of
+	the __USE_MINGW_ANSI_STDIO macro, confirming the existing note.
 
-------------------------------------------------------------------------
-r13160 | zimmerma | 2018-09-07 20:26:15 +0000 (Fri, 07 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/random2.c
+	[TODO] Removed obsolete item on MinGW and -D__USE_MINGW_ANSI_STDIO.
 
-[tests/random2.c] fixed mpfr_random2 for GMP_NUMB_BITS <> 64
+	[INSTALL] Update concerning MinGW and the __USE_MINGW_ANSI_STDIO macro.
 
-------------------------------------------------------------------------
-r13159 | zimmerma | 2018-09-07 19:16:34 +0000 (Fri, 07 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-mini-gmp.c
+	[doc/mpfr.texi] Updated mpfr_get_str documentation, correcting r13666
+	(we still need the extra two bytes and to take - at Inf@ into account).
 
-[src/mpfr-mini-gmp.c] fixed another compiler warning
+2020-01-10  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r13158 | zimmerma | 2018-09-07 19:14:29 +0000 (Fri, 07 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/get_ui.c
+	[mpfr.texi] fixed out-dated documentation for mpfr_get_str
 
-[src/get_ui.c] fixed compiler warning
+2020-01-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13157 | zimmerma | 2018-09-07 17:12:46 +0000 (Fri, 07 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/rec_sqrt.c
-   M /trunk/src/set_d.c
+	[doc/README.dev] In the latest update, forgot to remove the CC=...
 
-some fixes for 8-bit limb support
+	[doc/README.dev] Update about the test under Wine.
 
-------------------------------------------------------------------------
-r13156 | zimmerma | 2018-09-07 15:17:37 +0000 (Fri, 07 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/constant.c
-   M /trunk/src/get_d64.c
-   M /trunk/src/get_ld.c
-   M /trunk/src/get_str.c
-   M /trunk/src/mpfr-mini-gmp.c
-   M /trunk/src/mpfr-mini-gmp.h
-   M /trunk/src/rec_sqrt.c
-   M /trunk/src/set_d.c
-   M /trunk/src/set_d64.c
-   M /trunk/src/set_ld.c
+	[acinclude.m4,configure.ac]
+	  * Moved the code that tries to determine the format of double from
+	    configure.ac to acinclude.m4 in MPFR_CONFIGS (as required), just
+	    before the one for long double.
+	  * Added a FIXME comment: This code uses AC_RUN_IFELSE, which cannot
+	    run the test when cross-compiling; use a test like for long double
+	    instead.
 
-adapt to 8-bit limbs (work in progress)
+	[acinclude.m4] English usage.
 
-------------------------------------------------------------------------
-r13155 | zimmerma | 2018-09-07 11:59:57 +0000 (Fri, 07 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tl2b.c
+	[acinclude.m4] Updated messages about the format of "long double".
+	[configure.ac] Ditto for "double". Added missing AC_MSG_RESULT.
 
-[tests/tl2b.c] extend to 8-bit limb
+	[tests/tversion.c] Updated/fixed an output line to match the other ones.
 
-------------------------------------------------------------------------
-r13154 | zimmerma | 2018-09-07 11:49:13 +0000 (Fri, 07 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
+	[tests/tsprintf.c] Added tests for %Ra and %Rb on the value 0 with an
+	empty precision field.
 
-[src/mpfr-gmp.h] fix for 8-bit limb
+	[src/vasprintf.c] Fixed output precision bug with decimal output
+	(i.e. e, f and g conversion specifiers) and an empty precision field
+	on the value 0.
 
-------------------------------------------------------------------------
-r13153 | vlefevre | 2018-09-07 09:23:57 +0000 (Fri, 07 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tests/tsprintf.c] Also added tests with %Rf, %Rg and %#Rg on 0.
 
-[doc/mpfr.texi] Added @tie{} (normal non-breakable space) at various
-places to avoid unwanted line breaking.
-------------------------------------------------------------------------
-r13152 | vlefevre | 2018-09-07 08:45:54 +0000 (Fri, 07 Sep 2018) | 4 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tests/tsprintf.c] Added a test with %Re and an empty precision field
+	on the value 0; it currently fails.
 
-[doc/mpfr.texi] mpfr_rootn_ui, mpfr_root: changed k to n in order to
-match IEEE 754-2008. Also improved the description of mpfr_rootn_ui,
-mentioning the P754/D2.41 draft of the next IEEE 754 standard because
-IEEE 754-2008 is incomplete.
-------------------------------------------------------------------------
-r13151 | vlefevre | 2018-09-06 10:44:48 +0000 (Thu, 06 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tdiv.c
+2020-01-08  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tdiv.c] !mpfr_equal_p is better than mpfr_cmp.
-------------------------------------------------------------------------
-r13150 | zimmerma | 2018-09-06 07:56:44 +0000 (Thu, 06 Sep 2018) | 3 lines
-Changed paths:
-   M /trunk/src/rint.c
+	[tools/ck-copyright-notice] Added a note about the mpfr.pc.in file.
 
-[src/rint.c] fixed bug with 16-bit limb
-             (found by trint with GMP_CHECK_RANDOMIZE=1536206745598891)
+	Copyright notice update: added 2020 with
+	  perl -pi -e 's/ (\d{4}-)?(2019)(?= Free Software)/
+	               " ".($1||"$2-").($2+1)/e' **/*(^/)
+	under zsh. Removed 2019 from the example in the doc/README.dev file.
 
-------------------------------------------------------------------------
-r13149 | zimmerma | 2018-09-06 07:33:45 +0000 (Thu, 06 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tdiv.c
+	[TODO] + base conversion with the round-trip property using a minimal
+	precision, such as the to_chars functions from the C++ standard.
 
-[tests/tdiv.c] fixed test_20151023()
+	[doc/mpfr.texi] Updated the month.
 
-------------------------------------------------------------------------
-r13148 | vlefevre | 2018-09-06 07:15:25 +0000 (Thu, 06 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/src/get_d64.c
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/mpfr-mini-gmp.c
-   M /trunk/src/ui_div.c
+	[doc/mpfr.texi] Formatted output: improved the text concerning the
+	empty precision field, i.e. focus on the chosen precision rather
+	than the round-trip property (as the rounding mode is not necessarily
+	to nearest).
 
-Removed trailing whitespace.
-------------------------------------------------------------------------
-r13147 | vlefevre | 2018-09-06 06:46:40 +0000 (Thu, 06 Sep 2018) | 3 lines
-Changed paths:
-   M /trunk/src/get_ld.c
+	[doc/mpfr.texi] Formatted output with %Re (empty precision field):
+	added a reference to mpfr_get_str_ndigits.
 
-[src/get_ld.c] Removed incorrect and useless assertions (manl
-has exactly 32 bits, thus a shift count of 32 bits is invalid,
-but also useless).
-------------------------------------------------------------------------
-r13146 | zimmerma | 2018-09-05 16:17:58 +0000 (Wed, 05 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/get_ld.c
+	[src/vasprintf.c] Simplified the conditions under which trailing zeros
+	are kept (the spec_g variable is no longer needed as a consequence).
 
-[src/get_ld.c] fixed (hopefully definitively) for 16-bit limb
+	[tests/tsprintf.c] Re-added tests changed by r13644 and r13645, but
+	with a variable of smaller precision in order to get the same output
+	as before.
 
-------------------------------------------------------------------------
-r13145 | vlefevre | 2018-09-05 15:53:50 +0000 (Wed, 05 Sep 2018) | 4 lines
-Changed paths:
-   M /trunk/src/set_d64.c
+	[tests/tsprintf.c] Updated other two tests (in da_DK locale).
 
-[src/set_d64.c] 2 fixes concerning rp[]:
-  * If GMP_NUMB_BITS >= 64, there is a shift of 32 bits, thus one
-    uses mp_limb_t (> 32 bits) instead of unsigned int.
-  * Otherwise use unsigned long as an unsigned int might be on 16 bits.
-------------------------------------------------------------------------
-r13144 | vlefevre | 2018-09-05 15:26:46 +0000 (Wed, 05 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+2020-01-08  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/mpfr-impl.h] Indentation.
-------------------------------------------------------------------------
-r13143 | vlefevre | 2018-09-05 15:23:00 +0000 (Wed, 05 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/src/Makefile.am
-   M /trunk/src/exp_2.c
-   A /trunk/src/nbits_ulong.c
+	fixed tests for new more precise semantics for mpfr_printf ("%Re", x),
+	and documented it
 
-[src] Moved mpfr_nbits_ulong to its own file "nbits_ulong.c".
-------------------------------------------------------------------------
-r13142 | vlefevre | 2018-09-05 15:17:56 +0000 (Wed, 05 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/src/pow_si.c
+	[src/vasprintf.c] tentative fix so that mpfr_printf ("%.Re", x) prints a number
+			  of decimal digits independent from x
 
-[src/pow_si.c] MPFR_NEED_LONGLONG_H is still needed.
-------------------------------------------------------------------------
-r13141 | vlefevre | 2018-09-05 14:56:48 +0000 (Wed, 05 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tget_set_d64.c
+2019-12-24  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tget_set_d64.c] Removed xxx suffix added in r13139 (by mistake?).
-------------------------------------------------------------------------
-r13140 | zimmerma | 2018-09-05 14:30:57 +0000 (Wed, 05 Sep 2018) | 4 lines
-Changed paths:
-   M /trunk/src/exp_2.c
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/pow_si.c
+	[INSTALL,doc/mpfr.texi] Typography.
 
-[src/exp_2.c] export (internally) nbits_ulong (renamed to mpfr_nbits_ulong)
-[src/mpfr-impl.h] added prototype for mpfr_nbits_ulong
-[src/pow_si.c] fixed for 16-bit limb
+2019-10-10  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13139 | zimmerma | 2018-09-05 13:18:11 +0000 (Wed, 05 Sep 2018) | 4 lines
-Changed paths:
-   M /trunk/src/get_d64.c
-   M /trunk/src/set_d64.c
-   M /trunk/tests/tget_set_d64.c
+	[doc/algorithms.tex] Ulp calculus: put the old Rule 8 just after Rule 2,
+	as the old Rule 3 (now Rule 4) uses it directly (proof updated).
 
-[src/get_d64.c] fixed for 16-bit limb
-[src/set_d64.c] likewise
-[tests/tget_set_d64.c] improved error message
+	[doc/algorithms.tex] Ulp calculus: simplified the proof of Rule 8.
 
-------------------------------------------------------------------------
-r13137 | vlefevre | 2018-09-05 11:52:06 +0000 (Wed, 05 Sep 2018) | 3 lines
-Changed paths:
-   M /trunk/src/get_ld.c
+	[doc/algorithms.tex] Ulp calculus Rule 3: missing absolute values in
+	the proof.
 
-[src/get_ld.c] In the case GMP_NUMB_BITS == 16, cast to unsigned long
-instead of unsigned int since shift counts can be up to 16 and an int
-might be on 16 bits only.
-------------------------------------------------------------------------
-r13136 | zimmerma | 2018-09-05 10:36:30 +0000 (Wed, 05 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/get_ld.c
+	[doc/algorithms.tex] Actually assume that no underflows nor overflows
+	occur for the whole section "Error calculus".
 
-[src/get_ld.c] when denorm=16, a 32-bit shift on an unsigned int is undefined
+	[doc/algorithms.tex] Ulp calculus Rule 6: corrected it (we need to
+	assume no underflows nor overflows) and its proof, and generalized
+	it with absolute values (like in the previous rules).
 
-------------------------------------------------------------------------
-r13135 | zimmerma | 2018-09-05 10:20:36 +0000 (Wed, 05 Sep 2018) | 3 lines
-Changed paths:
-   M /trunk/src/exp_2.c
-   M /trunk/tests/texp.c
+2019-10-07  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/exp_2.c] fix for 16-bit limb
-[tests/texp.c] improve error message
+	[doc/algorithms.tex] Ulp calculus Rule 3: more powerful result and
+	much simpler proof.
 
-------------------------------------------------------------------------
-r13134 | zimmerma | 2018-09-05 08:25:33 +0000 (Wed, 05 Sep 2018) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr-mini-gmp.c
-   M /trunk/tests/terandom_chisq.c
+	[doc/algorithms.tex] Section 2 (Error calculus): When n was a precision,
+	replaced it by p as this is the usual notation (see Section 1) and n
+	sometimes had a double meaning.
 
-[src/mpfr-mini-gmp.c] fixed gmp_urandomb_ui for 16-bit limb, added mpz_dump
-[tests/terandom_chisq.c] more details in case of error
+2019-10-04  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13133 | zimmerma | 2018-09-05 07:11:49 +0000 (Wed, 05 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/random_deviate.c
+	[tests/tcmp_ui.c] Updated comment: this is a bug in Clang 9.
 
-[src/random_deviate.c] fixed typo
+	[tests/tcmp_ui.c] Added a comment: failure of a test with the
+	clang-9 1:9-1 Debian package.
 
-------------------------------------------------------------------------
-r13132 | vlefevre | 2018-09-04 17:29:15 +0000 (Tue, 04 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tset_z_exp.c
+2019-10-01  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tset_z_exp.c] Avoid a GCC bug.
-------------------------------------------------------------------------
-r13131 | vlefevre | 2018-09-04 16:41:18 +0000 (Tue, 04 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tset_z_exp.c
+	Clean-up concerning the tests of subnormals for double and float.
+	  * acinclude.m4: renamed variables
+	      mpfr_cv_have_denorms_flt to mpfr_cv_have_subnorm_flt
+	      mpfr_cv_have_denorms     to mpfr_cv_have_subnorm_dbl
+	    and improved messages.
+	  * acinclude.m4, tests/tget_flt.c: renamed macro
+	      HAVE_DENORMS_FLT to HAVE_SUBNORM_FLT
+	  * acinclude.m4, tests/{tests.c,tset_d.c,tsprintf.c}: renamed macro
+	      HAVE_DENORMS     to HAVE_SUBNORM_DBL
+	  * doc/README.dev: updated / completed the corresponding documentation.
+	  * tests/tget_d.c: renamed function check_denorms to check_subnorm.
 
-[tests/tset_z_exp.c] Attempt to fix randexp, but GCC complains.
-------------------------------------------------------------------------
-r13130 | vlefevre | 2018-09-04 16:06:38 +0000 (Tue, 04 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpn_exp.c
+	[acinclude.m4] Updated comment about the tests for subnormal numbers.
 
-[src/mpn_exp.c] Avoid useless "while" in nbits_mpfr_exp_t.
-------------------------------------------------------------------------
-r13129 | zimmerma | 2018-09-04 15:27:36 +0000 (Tue, 04 Sep 2018) | 3 lines
-Changed paths:
-   M /trunk/tests/tget_ld_2exp.c
-   M /trunk/tests/tset_ld.c
+	[acinclude.m4] Added a comment about the tests for subnormal numbers.
 
-[tests/tset_ld.c] give more digits in case of error
-[tests/tget_ld_2exp.c] added one test (currently fails for 16-bit limb)
+2019-09-24  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13128 | zimmerma | 2018-09-04 15:20:19 +0000 (Tue, 04 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/set_ld.c
+	[doc/Makefile.am] Added missing texinfo.tex prerequisite.
 
-[src/set_ld.c] partial fix for 16-bit limb (typo + nice bug!)
+2019-09-16  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13127 | zimmerma | 2018-09-04 14:50:57 +0000 (Tue, 04 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_z_exp.c
+	[tests] Added FIXME comment in tfprintf.c, tout_str.c and tprintf.c:
+	The output is not tested (thus coverage data are meaningless).
 
-[tests/tset_z_exp.c] fixed infinite loop in test code for limb < mpfr_exp_t
+2019-09-10  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13126 | zimmerma | 2018-09-04 14:33:27 +0000 (Tue, 04 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpn_exp.c
+	[src/{add1sp.c,sub1sp.c}] Get rid of useless goto's.
 
-[src/mpn_exp.c] adapt to bitsize(mpfr_exp_t) > GMP_NUMB_BITS
+2019-09-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13125 | vlefevre | 2018-09-04 14:19:31 +0000 (Tue, 04 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/src/div.c
+	[doc/mpfr.texi] Updated the month.
 
-[src/div.c] Code simplification.
-------------------------------------------------------------------------
-r13124 | vlefevre | 2018-09-04 14:14:39 +0000 (Tue, 04 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/src/round_prec.c
+	[src/hypot.c] Replaced a TODO by a FIXME.
 
-[src/round_prec.c] MPFR_LIMB is actually useless now...
-------------------------------------------------------------------------
-r13123 | vlefevre | 2018-09-04 14:11:39 +0000 (Tue, 04 Sep 2018) | 1 line
-Changed paths:
-   M /trunk/src/round_prec.c
+	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.
 
-[src/round_prec.c] Code style and potential correction for 16-bit limb.
-------------------------------------------------------------------------
-r13122 | vlefevre | 2018-09-04 14:06:25 +0000 (Tue, 04 Sep 2018) | 3 lines
-Changed paths:
-   M /trunk/src/sqrt_ui.c
+	[doc/mpfr.texi] Changed an incorrect use of @xref, which must always
+	occur at the beginning of a sentence (use "see @ref{...}" instead).
 
-[src/sqrt_ui.c] Moved MPFR_SAVE_EXPO_FREE after mpfr_sqrt because
-the uu argument may be out of range and there is no guarantee that
-mpfr_sqrt can handle that. Improved consistency; code refactoring.
-------------------------------------------------------------------------
-r13121 | zimmerma | 2018-09-04 13:33:35 +0000 (Tue, 04 Sep 2018) | 3 lines
-Changed paths:
-   M /trunk/src/round_prec.c
-   M /trunk/tests/tcan_round.c
+	[doc/mpfr.texi] At the end of "Arithmetic Functions", added a sentence
+	referencing the power functions (since x^n is an arithmetic function).
 
-[src/round_prec.c] fixed for 16-bit limb
-[tests/tcan_round.c] improve error message
+2019-09-05  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13120 | zimmerma | 2018-09-04 13:33:02 +0000 (Tue, 04 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt_ui.c
+	[doc/mpfr.texi] Removed the useless "Float ..." index entries.
 
-[src/sqrt_ui.c] fixed for 16-bit limb
+	[doc/mpfr.texi] Moved the mpfr_pow class of functions from
+	"Arithmetic Functions" to "Transcendental Functions".
 
-------------------------------------------------------------------------
-r13119 | vlefevre | 2018-09-04 10:44:33 +0000 (Tue, 04 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/get_si.c
+	[doc/mpfr.texi] Added "Float transcendental functions" to the index
+	for consistency ("transcendental functions" implies floating point,
+	but the user should expect to find it with the other index terms
+	starting with "Float").
 
-[src/get_si.c] Make sure that a left shift is done on an unsigned type
-(as a left shift on a 0 of signed type was not specified by C90).
-------------------------------------------------------------------------
-r13118 | zimmerma | 2018-09-04 09:21:29 +0000 (Tue, 04 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+	[doc/mpfr.texi] Renamed "Basic Arithmetic Functions" to just
+	"Arithmetic Functions".
 
-[src/div.c] fix for 16-bit limbs, and added comments
+	[doc/mpfr.texi] Transcendental functions: added a sentence to the
+	important note (about cases theoretically very hard to round).
 
-------------------------------------------------------------------------
-r13117 | zimmerma | 2018-09-04 09:13:50 +0000 (Tue, 04 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/rint.c
+	[doc/mpfr.texi] Renamed Section "Special Functions" to
+	"Transcendental Functions" (as after changes in r13605 and r13606,
+	it now contains only the transcendental functions), and slightly
+	rewrote its important note.
 
-[src/rint.c] fix for 16-bit limb
+	[doc/mpfr.texi] Moved mpfr_free_cache, mpfr_free_cache2, mpfr_free_pool
+	and mpfr_mp_memory_cleanup from "Special Functions" to a new section
+	"Memory Handling Functions".
 
-------------------------------------------------------------------------
-r13116 | zimmerma | 2018-09-04 09:12:07 +0000 (Tue, 04 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tdiv.c
+	[doc/mpfr.texi]
+	  * Moved mpfr_fac_ui, mpfr_fma, mpfr_fms, mpfr_fmma, mpfr_fmms,
+	    mpfr_hypot, mpfr_sum and mpfr_dot from "Special Functions" to
+	    "Basic Arithmetic Functions" (as these are functions based on
+	    +, -, *, / and roots).
+	  * Added a FIXME for mpfr_pow: does this function really belong
+	    to "Basic Arithmetic Functions"?
 
-[tests/tdiv.c] more detailed error message
+	[doc/mpfr.texi] Improved warning about huge precisions.
 
-------------------------------------------------------------------------
-r13115 | zimmerma | 2018-09-04 09:10:34 +0000 (Tue, 04 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/get_si.c
+	[src/mul.c] For the --enable-assert=full test, also test the flags
+	(like what has been done for mpfr_add1sp and mpfr_sub1sp).
 
-[src/get_si.c] forgot cast when long > limb
+	[src/sub1sp.c] For the --enable-assert=full test, improved output of
+	ternary value and flags, like in r13582 for mpfr_add1sp.
 
-------------------------------------------------------------------------
-r13114 | zimmerma | 2018-09-04 09:10:11 +0000 (Tue, 04 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/get_ui.c
+	[src/add1sp.c] Cosmetic change (consistent ordering).
 
-[src/get_ui.c] forgot cast when long > limb
+2019-09-04  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r13113 | zimmerma | 2018-09-03 19:35:31 +0000 (Mon, 03 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/odd_p.c
+	[tests/tsub1sp.c] added non-regression test for bug in mpfr_sub1sp2n
+	[src/sub1sp.c] fixed that bug
 
-[src/odd_p.c] fix for 16-bit limb
+2019-09-04  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13112 | zimmerma | 2018-09-03 19:19:20 +0000 (Mon, 03 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tbeta.c
+	[acinclude.m4] Fixed MPFR_C_LONG_DOUBLE_FORMAT macro for MS-Windows.
 
-[tests/tbeta.c] exit at the first error
+	[NEWS] More details about mpfr_add and mpfr_sub.
 
-------------------------------------------------------------------------
-r13111 | zimmerma | 2018-09-03 15:52:18 +0000 (Mon, 03 Sep 2018) | 3 lines
-Changed paths:
-   M /trunk/src/get_si.c
-   M /trunk/src/get_ui.c
+2019-09-04  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/get_si.c] adapt to 16-bit limbs
-[src/get_ui.c] likewise
+	[NEWS] mention that mpfr_sub was also improved for 128 bits
 
-------------------------------------------------------------------------
-r13110 | zimmerma | 2018-09-03 14:05:11 +0000 (Mon, 03 Sep 2018) | 3 lines
-Changed paths:
-   M /trunk/src/cmp_si.c
-   M /trunk/src/cmp_ui.c
+	[NEWS] coverage improved to 98.6% on x86_64
 
-[src/cmp_si.c] adapt for reduced exponent range for 16-bit limbs
-[src/cmp_ui.c] likewise
+	[tests/tadd1sp.c] improve coverage
 
-------------------------------------------------------------------------
-r13109 | vlefevre | 2018-09-03 13:32:24 +0000 (Mon, 03 Sep 2018) | 3 lines
-Changed paths:
-   M /trunk/doc/README.dev
-   M /trunk/tests/mpfr-test.h
+2019-09-04  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/mpfr-test.h] If MPFR_TESTS_ABORT is defined, replace exit(1) by
-  abort(), thus with a core dump.
-[doc/README.dev] Document MPFR_TESTS_ABORT.
-------------------------------------------------------------------------
-r13108 | zimmerma | 2018-09-03 13:17:45 +0000 (Mon, 03 Sep 2018) | 3 lines
-Changed paths:
-   M /trunk/src/mul_ui.c
-   M /trunk/tests/tgeneric.c
+	[acinclude.m4] Fixed MPFR_C_LONG_DOUBLE_FORMAT macro: the patch had
+	a spurious ";" at the end of conftest.c, which made its compilation
+	fail with -pedantic -Werror (using gcc or clang).
 
-[tests/tgeneric.c] revert 13107 (abort might lose some data in open files)
-[src/mul_ui.c] fixed for 16-bit limb and reduced exponent range
+2019-09-04  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r13107 | zimmerma | 2018-09-03 12:38:10 +0000 (Mon, 03 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tgeneric.c
+	[src/sub1sp.c] rewrote mpfr_sub1sp2n (inspired from mpfr_sub1sp1n)
 
-[tests/tgeneric.c] replace exit(1) by abort() to allow debugging with gdb
+2019-09-04  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13106 | zimmerma | 2018-09-03 12:09:07 +0000 (Mon, 03 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/isinteger.c
+	[acinclude.m4] Updated MPFR_C_LONG_DOUBLE_FORMAT to support compilation
+	with GCC's and clang's LTO (-flto). This new test is inspired by the one
+	used by GMP for the double type.
+	Thanks to Paul Mulders for a preliminary version of the patch for MPFR.
 
-[src/isinteger.c] fix for 16-bit limb
+2019-09-03  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r13105 | zimmerma | 2018-09-03 08:35:17 +0000 (Mon, 03 Sep 2018) | 3 lines
-Changed paths:
-   M /trunk/src/cmp_si.c
-   M /trunk/src/cmp_ui.c
+	[src/sub1sp.c] added new function mpfr_sub1sp2n for p = 2*GMP_NUMB_BITS
+		       (still to be tested)
 
-[src/cmp_si.c] fixed error for 16-bit limb
-[src/cmp_ui.c] adapted to 16-bit limb
+2019-09-03  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13104 | zimmerma | 2018-09-01 08:15:20 +0000 (Sat, 01 Sep 2018) | 2 lines
-Changed paths:
-   M /trunk/src/cmp_si.c
+	[tests/tadd1sp.c] bug20190903:
+	  * Fixed the second test for GMP_NUMB_BITS != 64.
+	  * Updated comments.
 
-[src/cmp_si.c] adapt for 16-bit limb
+2019-09-03  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r13103 | zimmerma | 2018-08-31 19:22:05 +0000 (Fri, 31 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mul_ui.c
+	[src/add1sp.c] improved comment
 
-[src/mul_ui.c] adapt for 16-bit limb
+2019-09-03  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13102 | vlefevre | 2018-08-31 15:43:48 +0000 (Fri, 31 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-mini-gmp.c
+	[src/add1sp.c] mpfr_add1sp2n: improved a comment.
 
-[src/mpfr-mini-gmp.c] Fixed potential undefined behavior (when mp_limb_t
-is defined as an unsigned short) with MPFR_LIMB_LSHIFT.
-------------------------------------------------------------------------
-r13101 | vlefevre | 2018-08-31 15:40:23 +0000 (Fri, 31 Aug 2018) | 4 lines
-Changed paths:
-   M /trunk/src/add1.c
-   M /trunk/src/mpfr-impl.h
+	[src/add1sp.c] Fixed the bug.
 
-[src/mpfr-impl.h] Define MPFR_LIMB_LSHIFT(x,c) macro to do a left shift,
-making sure that the shifted argument is unsigned (needed due to the
-integer promotion rules when mp_limb_t is defined as an unsigned short).
-[src/add1.c] Fixed potential undefined behavior with MPFR_LIMB_LSHIFT.
-------------------------------------------------------------------------
-r13100 | vlefevre | 2018-08-31 15:12:20 +0000 (Fri, 31 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[tests/tadd1sp.c] bug20190903: do the second test in MPFR_RNDU too.
 
-[src/mpfr-impl.h] Corrected a comment and added a warning.
-------------------------------------------------------------------------
-r13099 | zimmerma | 2018-08-31 14:57:31 +0000 (Fri, 31 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[tests/tadd1sp.c] bug20190903: in the second test, check the mpfr_t
+	value, the ternary value and the flags, in order to get a failure
+	even without "--enable-assert=full".
 
-[src/mpfr-impl.h] fix MPFR_INT_CEIL_LOG2 for 16-bit limb
+	[tests/tadd1sp.c] When testing mpfr_add, use a wrapper mpfr_add_cf
+	that calls mpfr_clear_flags first, so that if --enable-assert=full
+	is used, the flags can be better checked too (and automatically).
+	Now tadd1sp outputs with --enable-assert=full, as wanted:
+	  add1  : ternary = -1, flags = inexact (8)
+	  add1sp: ternary =  0, flags = none (0)
 
-------------------------------------------------------------------------
-r13098 | zimmerma | 2018-08-31 14:47:05 +0000 (Fri, 31 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/set_si_2exp.c
+	[src]
+	  * exceptions.c: define flags_fout if MPFR_WANT_ASSERT >= 2, i.e. with
+	    --enable-assert=full (for better flags output in add1sp.c, etc.).
+	  * mpfr-impl.h: declare flags_fout if MPFR_WANT_ASSERT >= 2.
+	  * add1sp.c: improve output of ternary value and flags.
 
-[src/set_si_2exp.c] support 16-bit limbs
+	[tests/tadd1sp.c] Updated comments of bug20190903.
 
-------------------------------------------------------------------------
-r13097 | vlefevre | 2018-08-31 14:35:07 +0000 (Fri, 31 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/src/set_ui_2exp.c
+	[tests/tadd1sp.c] Added a test that triggers a bug in mpfr_add1sp2n
+	(corresponding to the FIXME), yielding a failure with
+	"--enable-assert=full".
+	Note 1: The computed values are equal (with MPFR_RNDN), but one gets
+	  Inexact sp = 0 | Inexact = -1
+	  Flags sp = 10 | Flags = 10
+	Note 2: The fact that the flags do not match the ternary value in the
+	error message is due to a missing mpfr_clear_flags in the test.
 
-[src/set_ui_2exp.c] Code formatting. Removed a FIXME (done in r13078).
-------------------------------------------------------------------------
-r13096 | zimmerma | 2018-08-31 14:32:09 +0000 (Fri, 31 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
+	[src/add1sp.c] mpfr_add1sp2n:
+	  * Code refactoring, eliminating the unnecessary goto's.
+	  * In the d >= 2 * GMP_NUMB_BITS case, use a single test for rb and sb.
+	  * Improved code consistency.
+	  * Added a FIXME about suspicious code. → Find a failing test and fix
+	    the code, or explain the code if it is correct.
 
-[src/mpfr-gmp.h] missing cast
+2019-09-03  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r13095 | zimmerma | 2018-08-31 14:13:52 +0000 (Fri, 31 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/mpfr-test.h
-   M /trunk/tests/tadd1sp.c
-   M /trunk/tests/tgeneric.c
-   M /trunk/tests/tmul.c
+	[src/add1sp.c] fix for bug20190903
 
-removed TEST_FLAGS stuff
+2019-09-03  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13094 | vlefevre | 2018-08-31 12:14:37 +0000 (Fri, 31 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	[src/add1sp.c] Corrected a comment.
 
-[doc/README.dev] More correction about the MPFR_TESTS_TIMEOUT macro.
-------------------------------------------------------------------------
-r13093 | vlefevre | 2018-08-31 12:09:03 +0000 (Fri, 31 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	[tests/tadd1sp.c] More random tests in the special precisions
+	GMP_NUMB_BITS and 2 * GMP_NUMB_BITS (but they don't trigger
+	the bug due to r13574).
 
-[doc/README.dev] Clarification about MPFR_TESTS_TIMEOUT.
-------------------------------------------------------------------------
-r13092 | vlefevre | 2018-08-31 11:57:08 +0000 (Fri, 31 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/doc/README.dev
+	[tests/tadd1sp.c] Added testcase for bug due to r13574 (found with
+	the other test programs, using --enable-assert=full).
 
-[doc/README.dev] Reverted r13090: this was already mentioned at the
-right place (do not mix up macros and environment variables).
-------------------------------------------------------------------------
-r13091 | zimmerma | 2018-08-31 11:54:51 +0000 (Fri, 31 Aug 2018) | 4 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
-   M /trunk/src/mul.c
-   M /trunk/src/ui_div.c
+2019-09-03  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/mpfr-gmp.h] added missing udiv_qrnnd for 16-bit limb
-[src/mul.c] fixed for 16-bit limb
-[src/ui_div.c] likewise
+	[src/add1sp.c] added mpfr_add1sp2n for 128-bit precision (with 64-bit limb)
 
-------------------------------------------------------------------------
-r13090 | zimmerma | 2018-08-31 11:37:01 +0000 (Fri, 31 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/doc/README.dev
+2019-09-02  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[README.dev] mention that MPFR_TESTS_TIMEOUT only works with --enable-tests-timeout
+	[src/sub1sp1_extracted.c] replace hard-coded bounds by emin/emax
 
-------------------------------------------------------------------------
-r13089 | vlefevre | 2018-08-31 11:06:40 +0000 (Fri, 31 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	added sub1sp1_extracted.c (not ready yet)
 
-[src/mpfr-impl.h] Fix for MS Windows.
-------------------------------------------------------------------------
-r13088 | vlefevre | 2018-08-31 10:43:50 +0000 (Fri, 31 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+2019-08-30  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/mpfr-impl.h] Make sure that MPFR_LONG_WITHIN_LIMB is defined if
-__GMP_SHORT_LIMB is not defined, as required by the current code.
-------------------------------------------------------------------------
-r13087 | vlefevre | 2018-08-31 10:22:40 +0000 (Fri, 31 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
+	added github source for Jianyang Pan formal proof
 
-[src/mpfr-gmp.h] Untabified.
-------------------------------------------------------------------------
-r13086 | zimmerma | 2018-08-31 09:48:01 +0000 (Fri, 31 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+2019-08-21  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr-impl.h] fixed wrong #ifdef
+	[tests/mpfr-test.h] At the end, with GCC, undef volatile if defined.
+	Explanations:
+	  With GCC, a macro "volatile" can be defined to test some special code
+	  in mpfr-impl.h (code for compilers that define such a macro), but the
+	  volatile keyword is necessary in some tests to avoid some GCC bugs.
+	  Thus we need to undef this macro (if defined). We do that at the end,
+	  so that mpfr-impl.h (included earlier) is not affected by this undef.
 
-------------------------------------------------------------------------
-r13085 | zimmerma | 2018-08-31 09:39:36 +0000 (Fri, 31 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-mini-gmp.c
+	[tests/tget_set_d128.c] Updated a test with a non-canonical encoding:
+	  * More meaningful name ("noncanonical" instead of "coverage").
+	  * Output details in case of failure.
+	  * Avoid GCC bug 91226: wrong propagation of non-canonical _Decimal64
+	    and _Decimal128 constant (BID only).
 
-[src/mpfr-mini-gmp.c] fix for 16-bit limb
+2019-08-20  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13084 | zimmerma | 2018-08-31 09:29:16 +0000 (Fri, 31 Aug 2018) | 3 lines
-Changed paths:
-   M /trunk/src/add1.c
-   M /trunk/tests/tadd.c
+	[doc/README.dev] Update concerning the "decimal-point character".
 
-[src/add1.c] fix for 16-bit limb
-[tests/tadd.c] more output in case of error
+	[doc/mpfr.texi] Changed "decimal point" to "decimal-point character",
+	which is the term used in the ISO C standard. This is better as this
+	character is also used with non-decimal bases: "decimal-point" is
+	just the name of this character (as initially defined for base 10)
+	and does not imply a number written in decimal.
 
-------------------------------------------------------------------------
-r13083 | zimmerma | 2018-08-31 08:11:01 +0000 (Fri, 31 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/add1.c
+	[doc/mpfr.texi] Compatibility With MPF: added an item on the difference
+	of the output format between mpf_out_str and mpfr_out_str.
 
-[src/add1.c] fixed compiler warning
+	[doc/mpfr.texi] Rewrote and completed the mpfr_out_str description.
 
-------------------------------------------------------------------------
-r13082 | zimmerma | 2018-08-31 08:07:00 +0000 (Fri, 31 Aug 2018) | 4 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/sub1sp.c
+2019-08-20  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr-gmp.h] removed leftover debug statement
-[src/mpfr-impl.h] added MPFR_LIMB macro
-[src/sub1sp.c] fix for 16-bit limb
+	[src/out_str.c] Fixed bug in mpfr_out_str: When the exponent of the
+	converted value is 0, it was not output, contrary to what is described
+	in the MPFR manual. Note that this does not change the value of the
+	printed string, so that this has no effect on applications that just
+	re-read the value (with MPFR or another code).
+	This was regarded as a bug rather than an error in the documentation,
+	thus the output now looks more similar to what printf with %e yields;
+	the GMP function mpf_out_str also outputs the exponent 0.
+	Short discussion:
+	  https://sympa.inria.fr/sympa/arc/mpfr/2019-08/msg00012.html
 
-------------------------------------------------------------------------
-r13081 | zimmerma | 2018-08-30 12:07:56 +0000 (Thu, 30 Aug 2018) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
-   M /trunk/src/mpfr-impl.h
+	Note: The tests still pass, as this function is currently not really
+	tested.
 
-[src/mpfr-gmp.h] more changes for 16-bit limb
-[src/mpfr-impl.h] mpfr-longlong.h should not be used for limb < long
+2019-08-14  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13080 | zimmerma | 2018-08-30 10:56:29 +0000 (Thu, 30 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
+	[INSTALL] Update/corrections about MinGW and __USE_MINGW_ANSI_STDIO.
 
-[mpfr-gmp.h] added comment
+	[tests/tversion.c] When building with MinGW, output a line about it:
+	MinGW32 / MinGW64, and the __USE_MINGW_ANSI_STDIO definition.
 
-------------------------------------------------------------------------
-r13079 | zimmerma | 2018-08-30 08:21:22 +0000 (Thu, 30 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-mini-gmp.c
+	[src/set_d128.c] Moved a definition under the #if where it is used.
 
-[mpfr-mini-gmp.c] fix for 16-bit limb
+2019-08-14  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r13078 | zimmerma | 2018-08-30 08:09:21 +0000 (Thu, 30 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/set_ui_2exp.c
+	improve INSTALL (feedback from sisyphus <sisyphus359 at gmail.com>)
 
-[src/set_ui_2exp.c] fix for 16-bit limb
+2019-08-12  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13077 | zimmerma | 2018-08-29 15:41:21 +0000 (Wed, 29 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/round_p.c
+	[doc/mpfr.texi] Added a FIXME for mpfr_out_str about the exponent 0.
 
-[src/round_p.c] gmp_fprintf is not defined in mini-gmp
+	[doc/mpfr.texi] About mpfr_get_str / mpfr_out_str:
+	  * In the mpfr_get_str description, changed argument "b" to "base" for
+	    consistency with similar functions (now, only mpfr_get_str_ndigits
+	    has b as this looks better in the formula). Also added a link to
+	    mpfr_get_str_ndigits.
+	  * In the mpfr_out_str description, replaced the ambiguous and even
+	    incorrect sentence "enough digits so that op can be read back
+	    exactly" (issues with trailing zeros and with the directed rounding
+	    modes) by text similar to the one in the mpfr_get_str description
+	    (keeping the reference to mpfr_get_str).
 
-------------------------------------------------------------------------
-r13076 | zimmerma | 2018-08-29 15:28:35 +0000 (Wed, 29 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tadd.c
+	[src/out_str.c] Coding style (e is not a boolean).
 
-[tests/tadd.c] fix for 16-bit limb
+2019-08-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13075 | zimmerma | 2018-08-29 15:21:38 +0000 (Wed, 29 Aug 2018) | 6 lines
-Changed paths:
-   M /trunk/src/add1.c
+	[tests/tout_str.c] Use mpfr_print_rnd_mode in a message.
 
-[src/add1.c] revert previous commit since it does not remove the warning:
-add1.c: In function ‘mpfr_add1’:
-add1.c:407:30: warning: ‘<<’ in boolean context, did you mean ‘<’ ? [-Wint-in-bool-context]
-           if (difs && (cprev << (GMP_NUMB_BITS - difs)))
-                       ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
+	[tests/tout_str.c] Code simplification: a test from r1888 on a
+	random value was unnecessary (the log message of r1888 did not
+	even correspond to the change).
 
-------------------------------------------------------------------------
-r13074 | zimmerma | 2018-08-29 15:18:45 +0000 (Wed, 29 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/add1.c
+	[tests/tout_str.c] GNU coding style.
 
-[src/add1.c] fixed compiler warning (with gcc 8.2.0)
+	[tests/tout_str.c] Added missing newline characters in the output
+	after calls to mpfr_out_str.
 
-------------------------------------------------------------------------
-r13073 | vlefevre | 2018-08-29 10:30:11 +0000 (Wed, 29 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tdiv_ui.c
+	[tests/tout_str.c] By default, output the results to a file instead of
+	/dev/null (this was already done only if opening /dev/null failed), so
+	that they can be checked later. Fixed 2 issues at the same time:
+	  * Do not close stdout (when an argument was provided).
+	  * Remove the file at the end.
 
-[tests/tdiv_ui.c] Added a comment about a spurious failure
-with MPFR_RNDF if RND_LOOP_NO_RNDF were not used.
-------------------------------------------------------------------------
-r13072 | vlefevre | 2018-08-28 21:25:46 +0000 (Tue, 28 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tsinh.c
+	[tests/tfpif.c] GNU coding style.
 
-[tests/tsinh.c] Fixed test introduced in r13047.
-------------------------------------------------------------------------
-r13071 | vlefevre | 2018-08-28 21:06:22 +0000 (Tue, 28 Aug 2018) | 4 lines
-Changed paths:
-   M /trunk/src/add_ui.c
-   M /trunk/src/sub_ui.c
-   M /trunk/src/ui_sub.c
+	[tests/tfpif.c] Added a comment about the use of perror.
 
-[src/{add_ui.c,sub_ui.c,ui_sub.c}] Fixed the bug introduced in r13066
-for the cases where MPFR_LONG_WITHIN_LIMB is defined (make sure that a
-significand allocated in the stack is not freed before the associated
-mpfr_t object).
-------------------------------------------------------------------------
-r13070 | vlefevre | 2018-08-28 20:41:10 +0000 (Tue, 28 Aug 2018) | 3 lines
-Changed paths:
-   M /trunk/src/div_ui.c
+	[tests/tfpif.c] Also check fclose failure when the file has been opened
+	for writing (typically an error in case the buffer cannot be written to
+	the file). Call perror after all fopen/src_fopen/fclose failures to get
+	the reason of the failure.
 
-[src/div_ui.c] Extend the exponent range in the case where
-MPFR_LONG_WITHIN_LIMB is not defined, resolving the FIXME.
-Note: a test was already there in tdiv_ui via the generic tests.
-------------------------------------------------------------------------
-r13069 | vlefevre | 2018-08-28 20:32:34 +0000 (Tue, 28 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tdiv_ui.c
+	[tests/tfpif.c] In case of failure of fopen or src_fopen, write the
+	error message on stderr (as one should do for errors not directly
+	related to the tests, such as memory allocation and I/O errors).
+	Also improved the error messages and made them consistent.
 
-[tests/tdiv_ui.c] Disabled rnd=MPFR_RNDF in a loop as this now fails.
-------------------------------------------------------------------------
-r13068 | vlefevre | 2018-08-28 20:29:42 +0000 (Tue, 28 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tdiv_ui.c
+2019-08-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tdiv_ui.c] Corrected an error message.
-------------------------------------------------------------------------
-r13067 | vlefevre | 2018-08-28 20:26:21 +0000 (Tue, 28 Aug 2018) | 4 lines
-Changed paths:
-   M /trunk/src/div.c
-   M /trunk/src/div_ui.c
+	[doc/mpfr.texi] Updated the month.
 
-[src/div.c] Avoid an infinite recursion when MPFR_LONG_WITHIN_LIMB
-is not defined (mpfr_div calls mpfr_div_ui, which calls mpfr_div).
-[src/div_ui.c] Made the preprocessor test on MPFR_LONG_WITHIN_LIMB
-consistent with the ones in the other .c files.
-------------------------------------------------------------------------
-r13066 | vlefevre | 2018-08-28 20:10:44 +0000 (Tue, 28 Aug 2018) | 3 lines
-Changed paths:
-   M /trunk/src/add_ui.c
-   M /trunk/src/sub_ui.c
-   M /trunk/src/ui_sub.c
+2019-08-05  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/{add_ui.c,sub_ui.c,ui_sub.c}] Fixed the cases where
-MPFR_LONG_WITHIN_LIMB is not defined (regression in the
-latest changes). Also avoid unused variables.
-------------------------------------------------------------------------
-r13065 | vlefevre | 2018-08-28 19:44:37 +0000 (Tue, 28 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tsubnormal.c
+	[doc/mpfr.texi] Improved consistency with @item.
 
-Removed trailing whitespace.
-------------------------------------------------------------------------
-r13064 | vlefevre | 2018-08-28 18:25:05 +0000 (Tue, 28 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/src/ui_sub.c
+2019-08-02  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/ui_sub.c] Extend the exponent range early enough.
-------------------------------------------------------------------------
-r13063 | vlefevre | 2018-08-28 18:23:38 +0000 (Tue, 28 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/src/add_ui.c
+	For Makefile.am and each one in SUBDIRS, added the .POSIX target to
+	select the POSIX behavior (since we do not require GNU "make").
+	See: https://sympa.inria.fr/sympa/arc/mpfr/2019-08/msg00005.html
 
-[src/add_ui.c] Extend the exponent range early enough.
-------------------------------------------------------------------------
-r13062 | vlefevre | 2018-08-28 17:39:32 +0000 (Tue, 28 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/src/sub_ui.c
+	[tools/get_patches.sh] Fixed change in r13543 (the contents of PATCHES
+	should still be written as a list of words separated by a space).
 
-[src/sub_ui.c] Extend the exponent range early enough.
-------------------------------------------------------------------------
-r13061 | zimmerma | 2018-08-28 14:44:47 +0000 (Tue, 28 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/get_ld.c
+	Fixed src/get_patches.c generation that was changed in r13542.
+	  * src/Makefile.am, tools/get_patches.sh: since get_patches.sh is
+	    no longer run from $(top_srcdir), the PATCHES absolute pathname
+	    now needs to be passed in argument.
+	  * src/Makefile.am: fixed the get_patches.c rule (the automatic
+	    variable $< was used with the meaning "first prerequisite" of
+	    GNU Make; an "exit 1" was missing, so that a failure did not
+	    abort "make" immediately).
+	  * tools/get_patches.sh: detect errors with "set -e".
 
-[src/get_ld.c] adapt to GMP_NUMB_BITS=16
+2019-07-31  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13060 | vlefevre | 2018-08-28 14:41:23 +0000 (Tue, 28 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/src/div_ui.c
+	[src/Makefile.am] Define get_patches.c as a built source to avoid a
+	non-portable make rule ("/" character in target), causing an error
+	in FreeBSD with its "make" command. This change should be OK as the
+	get_patches.sh script that generates get_patches.c is very simple
+	and portable. As a consequence, put get_patches.c in CLEANFILES.
+	See:
+	  https://sympa.inria.fr/sympa/arc/mpfr/2019-07/msg00003.html
 
-[src/div_ui.c] Added a FIXME.
-------------------------------------------------------------------------
-r13059 | zimmerma | 2018-08-28 14:30:57 +0000 (Tue, 28 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/set_ld.c
+	[Makefile.am] Fixed dist-hook for ck-mparam, which was run from a
+	read-only directory with "make distcheck" while a temporary file
+	is created in the current directory, yielding a failure (ck-mparam
+	has been run in dist-hook since r12533 on 2018-04-03).
 
-[src/set_ld.c] adapt to GMP_NUMB_BITS=16
+	[tools/ck-mparam] Updated comment to warn that the source tree that is
+	checked is the one that contains this script, not the one corresponding
+	to the current working directory (the rule for the other scripts in the
+	tools directory is currently different).
 
-------------------------------------------------------------------------
-r13058 | zimmerma | 2018-08-28 14:23:10 +0000 (Tue, 28 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/set_d.c
+	[tools/ck-mparam] This script can now be run from any directory (which
+	must still be writable). This change has been done to be able to run
+	it from the build directory, as if it is run via "make distcheck" and
+	a dist-hook rule, then neither the top-level directory nor the tools
+	directory is writable.
 
-[src/set_d.c] adapt to GMP_NUMB_BITS=16 (not yet tested)
+2019-07-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13057 | zimmerma | 2018-08-28 14:02:06 +0000 (Tue, 28 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/exp_2.c
+	[tests/tget_set_d64.c] Updated comment (only the x86 and x86_64 targets
+	are affected).
 
-[src/exp_2.c] removed a static assertion (duplicate with MPFR_LONG_WITHIN_LIMB)
+	[tests/tget_set_d64.c] Improved a comment.
 
-------------------------------------------------------------------------
-r13056 | zimmerma | 2018-08-28 14:01:28 +0000 (Tue, 28 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/init2.c
+2019-07-22  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/init2.c] split a static assertion in two
+	[tests/tget_set_d64.c] Avoid GCC bug 91226: wrong propagation of
+	non-canonical _Decimal64 constant.
 
-------------------------------------------------------------------------
-r13055 | zimmerma | 2018-08-28 14:01:02 +0000 (Tue, 28 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
+	[src/set_d64.c] In decimal64_to_string, log the memory representation
+	of the _Decimal64 argument.
 
-[src/mpfr-gmp.h] allow GMP_NUMB_BITS=16 (experimental, do not use!)
+	[src/set_d64.c] In decimal64_to_string, log the various fields of the
+	_Decimal64 argument whose memory data is regarded as a double (as this
+	is the current implementation of this function).
 
-------------------------------------------------------------------------
-r13054 | zimmerma | 2018-08-28 14:00:09 +0000 (Tue, 28 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/set_d.c
+	[tests/tget_set_d64.c] More output details in the noncanonical test.
 
-[src/set_d.c] make it easier to extend to GMP_NUMB_BITS<32
+	[tests/tget_set_d64.c] Improved the noncanonical test, but this does not
+	solve the failure with gcc-snapshot.
 
-------------------------------------------------------------------------
-r13053 | zimmerma | 2018-08-28 13:48:47 +0000 (Tue, 28 Aug 2018) | 3 lines
-Changed paths:
-   M /trunk/configure.ac
+	[tests/tget_set_d64.c] More meaningful name of a test with a
+	non-canonical encoding and more details (fails with Debian's
+	gcc-snapshot 10.0.0 20190718, trunk revision 273586).
 
-[configure.ac] read GMP_NUMB_BITS from mini-gmp.h when available
-	       (otherwise assume mp_limb_t == unsigned long)
+2019-07-12  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13052 | zimmerma | 2018-08-28 13:28:08 +0000 (Tue, 28 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/ui_sub.c
+	[doc/README.dev] "To make a release": mention -Wsuggest-attribute=...
+	options (but mpfr.h first needs some macros like __MPFR_SENTINEL_ATTR).
 
-[src/ui_sub.c] make code work for limb < long
+	Renamed MPFR_CONST_ATTR macro to MPFR_CONST_FUNCTION_ATTR in order to be
+	similar to the MPFR_{PURE,HOT,COLD}_FUNCTION_ATTR macro names.
 
-------------------------------------------------------------------------
-r13051 | zimmerma | 2018-08-28 13:26:28 +0000 (Tue, 28 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sub_ui.c
+2019-07-10  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sub_ui.c] make code work for limb < long
+	[doc/README.dev] Update concerning the MPFR manual:
+	  * Updated information about the papersize issues (should be fixed,
+	    but manual checking is recommended).
+	  * Detailed English typography.
+	  * Removed mention of the old texinfo bug 33329 (Debian bug 583558).
 
-------------------------------------------------------------------------
-r13050 | zimmerma | 2018-08-28 13:24:07 +0000 (Tue, 28 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/div_ui.c
+2019-07-08  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/div_ui.c] make code work for limb < long
+	[codespell.*] Update for codespell 1.15.0.
 
-------------------------------------------------------------------------
-r13049 | zimmerma | 2018-08-28 13:18:16 +0000 (Tue, 28 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/add_ui.c
+	Fixed spelling mistakes found by codespell 1.15.0.
 
-[src/add_ui.c] make code work for limb < long
+2019-07-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13048 | zimmerma | 2018-08-28 13:01:48 +0000 (Tue, 28 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/doc/mini-gmp
+	[acinclude.m4] Added missing "const" qualifier to "char *" in a test;
+	needed with GCC's "-Wwrite-strings -Werror".
 
-[mini-gmp] update
+2019-07-02  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13047 | zimmerma | 2018-08-28 12:44:48 +0000 (Tue, 28 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tsinh.c
+	[src/mpfr-impl.h] MPFR_GROUP_* macros / mpfr_group_t structure: when
+	MPFR_GROUP_STATIC_SIZE is 0 (for testing), use a flexible array member
+	(ISO C99) instead of a zero-length array (GNU extension, forbidden in
+	ISO C).
 
-[tests/tsinh.c] improve coverage
+	[tests/*.c] Added missing "const" qualifier to "char *" when this
+	involves string literals (detected by using GCC's -Wwrite-strings
+	option, via the default -Wdiscarded-qualifiers warning).
 
-------------------------------------------------------------------------
-r13046 | zimmerma | 2018-08-28 08:05:06 +0000 (Tue, 28 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tsubnormal.c
+2019-07-01  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tsubnormal.c] improve coverage
+	[acinclude.m4,configure.ac] MPFR_C_LONG_DOUBLE_FORMAT: also detect
+	clang's LTO.
+	Note: no longer use $FGREP (see r13513) as its status is unclear on
+	non-POSIX systems (though very probably available when $EGREP is).
 
-------------------------------------------------------------------------
-r13045 | vlefevre | 2018-08-27 15:45:32 +0000 (Mon, 27 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[acinclude.m4,configure.ac] For MPFR_C_LONG_DOUBLE_FORMAT, when the
+	format is unknown and it is detected that LTO has been used, output
+	"recognition prevented by LTO".
+	Note: at the same time, since AC_PROG_FGREP was needed, replaced
+	$EGREP by $FGREP when applicable.
 
-[src/sub1sp.c] Added a FIXME about cp vs tp.
-------------------------------------------------------------------------
-r13044 | zimmerma | 2018-08-27 15:18:25 +0000 (Mon, 27 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tmul.c
+	[acinclude.m4] MPFR_C_LONG_DOUBLE_FORMAT: improved comment and added a
+	warning saying that this does not work with GCC's LTO (gcc -flto ...).
 
-[tests/tmul.c] improve coverage
+2019-06-07  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r13043 | vlefevre | 2018-08-27 15:03:05 +0000 (Mon, 27 Aug 2018) | 5 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[src/sub1sp.c] simplified code of sub1sp1 for bx = cx
 
-[src/sub1sp.c] Avoid bad usage of tp in the generic code:
-  * In the case d == 1, two branches were inconsistent: tp not defined
-    at the same level, with one shadowing the other one.
-  * In the case 2 <= d < p, tp was reused with a different meanings;
-    renamed the second one to cp, as this is MPFR_MANT(c).
-------------------------------------------------------------------------
-r13042 | vlefevre | 2018-08-27 14:41:32 +0000 (Mon, 27 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/src/sub1sp.c
+2019-06-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sub1sp.c] Re-added/updated FIXME about the long backward goto's.
-------------------------------------------------------------------------
-r13041 | vlefevre | 2018-08-27 13:11:02 +0000 (Mon, 27 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/add1sp.c
-   M /trunk/src/mul.c
+	[src/sub1sp.c] About r13506-13509 and optimization: added a comment
+	about Clang after some tests (without giving details, as in practice,
+	this is more complex... but this is the general idea).
 
-[src/{add1sp.c,mul.c}] Updated the condition to use the formally
-extracted code and added a corresponding comment.
-------------------------------------------------------------------------
-r13040 | zimmerma | 2018-08-27 13:06:17 +0000 (Mon, 27 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/const_log2.c
+2019-06-06  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/const_log2.c] further improve coverage
+	[src/sub1sp.c] fixed typo
 
-------------------------------------------------------------------------
-r13039 | vlefevre | 2018-08-27 12:51:11 +0000 (Mon, 27 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/cache.c
+2019-06-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/cache.c] Improved variable names (→ dprec for the precision of dest
-and cprec for the precision of the cache) and added/updated comments.
-------------------------------------------------------------------------
-r13038 | vlefevre | 2018-08-27 12:32:49 +0000 (Mon, 27 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/cache.c
+	[src/sub1sp.c] Added reference to GCC PR30315 about a misoptimization
+	on x86/x86_64 (see r13506 and r13507).
 
-[src/cache.c] Reverted r13036 as what matters is the target precision,
-which can be very small.
-------------------------------------------------------------------------
-r13037 | zimmerma | 2018-08-27 12:23:42 +0000 (Mon, 27 Aug 2018) | 5 lines
-Changed paths:
-   M /trunk/src/add1sp.c
-   M /trunk/src/add1sp1_extracted.c
-   M /trunk/src/mul.c
-   M /trunk/src/mul_1_extracted.c
+	[src/sub1sp.c] Completed r13506: added MPFR_ASSERTD to justify the
+	new code and give more information to the compiler; added comments
+	about this optimization issue.
 
-[src/add1sp1_extracted.c] replaced extracted code by new for MPFR_PREC_BITS=64
-[src/mul_1_extracted.c]   likewise
-[src/add1sp.c] changed condition to use the formally extracted code
-[src/mul.c]    likewise (but code is still not yet activated here)
+2019-06-06  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r13036 | vlefevre | 2018-08-27 12:20:47 +0000 (Mon, 27 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/cache.c
+	[src/sub1sp.c] small speedup (following discussion with Félix Breton)
 
-[src/cache.c] Comment: In practice, the "overflow handler" of
-MPFR_RNDRAW_GEN should never be called.
-------------------------------------------------------------------------
-r13035 | zimmerma | 2018-08-27 12:19:51 +0000 (Mon, 27 Aug 2018) | 3 lines
-Changed paths:
-   M /trunk/src/const_log2.c
-   M /trunk/tests/tconst_log2.c
+2019-06-01  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/const_log2.c] avoid hard-coded values
-[tests/tconst_log2.c] improve coverage
+	[doc/README.dev] Added a note about MPFR_DISABLE_IEEE_FLOATS.
 
-------------------------------------------------------------------------
-r13034 | vlefevre | 2018-08-27 12:12:48 +0000 (Mon, 27 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/cache.c
+	[doc/README.dev] Updated MPFR_DISABLE_IEEE_FLOATS description.
 
-[src/cache.c] Replaced a test + mpfr_overflow by a MPFR_ASSERTD since
-the cached value (in extended exponent range) cannot overflow.
-------------------------------------------------------------------------
-r13033 | zimmerma | 2018-08-27 11:31:15 +0000 (Mon, 27 Aug 2018) | 3 lines
-Changed paths:
-   M /trunk/src/const_euler.c
-   M /trunk/tests/tconst_euler.c
+	[src/mpfr-impl.h] Undefine HAVE_LDOUBLE_IS_DOUBLE & HAVE_LDOUBLE_IEEE_*
+	macros if MPFR_DISABLE_IEEE_FLOATS is defined, as the goal is to test
+	code not relying on IEEE floats.
 
-[src/const_euler.c] better choice of (initial) working precision
-[tests/tconst_euler.c] added coverage test
+2019-05-24  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13032 | vlefevre | 2018-08-27 11:24:10 +0000 (Mon, 27 Aug 2018) | 6 lines
-Changed paths:
-   M /trunk/tests/tversion.c
+	[src/mpfr-impl.h] Code simplification with the generic
+	LONGDOUBLE_NAN_ACTION macro (the WANT_LONGDOUBLE_VOLATILE macro is not
+	needed as used only once, thus removed). Improved the related comment.
 
-[tests/tversion.c] Update concerning the shared cache, to be consistent
-with the other mpfr_buildopt_*_p features:
-  * check that mpfr_buildopt_sharedcache_p() and MPFR_WANT_SHARED_CACHE
-    match;
-  * for the output of the value, test mpfr_buildopt_sharedcache_p()
-    instead of the macro.
-------------------------------------------------------------------------
-r13031 | zimmerma | 2018-08-27 11:11:42 +0000 (Mon, 27 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tconst_catalan.c
+	[src] Instead of including <float.h> in volatile.c (r13493), do that
+	unconditionally in mpfr-impl.h to make sure that macro definitions
+	in this header file are always correct: some definitions depend on
+	various macros from <float.h>, such as FLT_RADIX and DBL_MANT_DIG.
 
-[tests/tconst_catalan.c] improve coverage
+2019-05-24  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r13030 | zimmerma | 2018-08-27 09:38:52 +0000 (Mon, 27 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tbuildopt.c
+	applied patch from #21762
+	(https://gforge.inria.fr/tracker/?func=detail&atid=619&aid=21762&group_id=136)
 
-[tests/tbuildopt.c] added check of mpfr_buildopt_sharedcache_p()
+2019-05-15  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13028 | vlefevre | 2018-08-27 08:57:23 +0000 (Mon, 27 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[doc/README.dev] Added another URL on undefined behavior.
 
-Removed trailing whitespace.
-------------------------------------------------------------------------
-r13027 | zimmerma | 2018-08-27 08:45:41 +0000 (Mon, 27 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+2019-04-30  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sub1sp.c] fixed even rule for p=1
+	[doc/README.dev] Note that -static-libasan does not work with MPFR.
 
-------------------------------------------------------------------------
-r13026 | vlefevre | 2018-08-27 01:42:20 +0000 (Mon, 27 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[doc/README.dev] Update about the use of GCC's "-fsanitize=address".
 
-[src/mpfr-impl.h] Mention WG14/N2270 (proposed maybe_unused attribute),
-which could be useful to avoid MPFR_DBGRES.
-------------------------------------------------------------------------
-r13024 | zimmerma | 2018-08-24 15:44:10 +0000 (Fri, 24 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+2019-04-30  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/sub1sp.c] finished simplifying the mpfr_sub1sp code
+	[src/zeta.c] fixed out-of-bound read reported by Thomas Bailleux
 
-------------------------------------------------------------------------
-r13023 | zimmerma | 2018-08-24 14:53:32 +0000 (Fri, 24 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	Note: This bug was introduced in r12066.
 
-[src/sub1sp.c] simplified the computation of sbb
+2019-04-29  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13022 | zimmerma | 2018-08-24 14:45:06 +0000 (Fri, 24 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[tools/ck-version-info] Minor corrections in a comment.
 
-[src/sub1sp.c] full rewrite of mpfr_sub1sp (work in progress)
+	[doc/README.dev] Update about the VERSION file:
+	  * Added a paragraph on the meaning of the "-dev" suffix.
+	  * Removed a confusing and useless "-dev" in an example.
 
-------------------------------------------------------------------------
-r13020 | vlefevre | 2018-08-23 14:31:16 +0000 (Thu, 23 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tversion.c
+	[tools/ck-news] Changed the condition of the test for FIXME or TODO:
+	Previously it was disabled only for -dev versions. Now it is enabled
+	only for releases and release candidates. This will allow snapshots,
+	for which the NEWS file may still contain a FIXME or TODO.
 
-[tests/tversion.c] Output "Enable formally proven code" info.
-------------------------------------------------------------------------
-r13019 | vlefevre | 2018-08-23 14:26:09 +0000 (Thu, 23 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	[tools/ck-version-info] Corrected check. Added explanations in comments.
 
-[doc/README.dev] Describe MPFR_WANT_PROVEN_CODE.
-------------------------------------------------------------------------
-r13018 | vlefevre | 2018-08-23 14:24:23 +0000 (Thu, 23 Aug 2018) | 3 lines
-Changed paths:
-   M /trunk/configure.ac
-   M /trunk/src/add1sp.c
-   M /trunk/src/mul.c
+	[tools/ck-version-info] Better error message if $vinfo is not defined.
 
-Renamed WANT_PROVEN_CODE to MPFR_WANT_PROVEN_CODE for consistency with
-the other WANT macros (and to avoid potential clashes with foreign .h
-files).
-------------------------------------------------------------------------
-r13017 | vlefevre | 2018-08-23 11:08:47 +0000 (Thu, 23 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[src/Makefile.am] Added a comment.
 
-[tools/mpfrlint] For some tests, ignore extracted files (proven code).
-------------------------------------------------------------------------
-r13016 | zimmerma | 2018-08-23 10:03:52 +0000 (Thu, 23 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/AUTHORS
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/mul.c
+2019-04-25  Vincent Lefèvre  <vincent at vinc17.net>
 
-the mpfr_mul_1 extracted code is not proven yet
+	[doc/mpfr.texi] Updated the month.
 
-------------------------------------------------------------------------
-r13015 | vlefevre | 2018-08-23 09:57:09 +0000 (Thu, 23 Aug 2018) | 6 lines
-Changed paths:
-   M /trunk/configure.ac
-   M /trunk/src/add1sp.c
-   M /trunk/src/mul.c
+	[doc/mpfr.texi] Updated the list of rounding modes in the description
+	of the mpfr_print_rnd_mode function. Choose the same order as in the
+	"Rounding Modes" section in "MPFR Basics".
 
-For --enable-formally-proven-code, instead of requiring a check of the
-type sizes in configure, just enable the proven code only if the types
-have the sizes expected by this code.
-  * configure.ac: removed the FIXME.
-  * src/add1sp.c, src/mul.c: updated the #if test that enables the
-    proven code (add1sp1_extracted.c and mul_1_extracted.c).
-------------------------------------------------------------------------
-r13014 | vlefevre | 2018-08-23 09:23:21 +0000 (Thu, 23 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/configure.ac
+	[tools/mpfrlint] Lists of rounding modes: also check with the
+	"Rounding Modes" section in "MPFR Basics".
 
-[configure.ac] Updated FIXME for --enable-formally-proven-code
-(many failures with -m32 due to assumptions on type sizes).
-------------------------------------------------------------------------
-r13013 | vlefevre | 2018-08-23 08:54:16 +0000 (Thu, 23 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/configure.ac
+	[src/print_rnd_mode.c] Added a comment to remember to update the manual.
 
-[configure.ac] Added a FIXME for --enable-formally-proven-code.
-------------------------------------------------------------------------
-r13012 | vlefevre | 2018-08-23 08:39:47 +0000 (Thu, 23 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/configure.ac
+	[tools/mpfrlint] Check that the lists of rounding modes in
+	src/print_rnd_mode.c and doc/mpfr.texi are identical.
 
-[configure.ac] Updated message for --enable-formally-proven-code.
-------------------------------------------------------------------------
-r13011 | zimmerma | 2018-08-23 07:31:06 +0000 (Thu, 23 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/AUTHORS
-   M /trunk/NEWS
-   M /trunk/configure.ac
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/Makefile.am
-   M /trunk/src/add1sp.c
-   A /trunk/src/add1sp1_extracted.c
-   M /trunk/src/mul.c
-   A /trunk/src/mul_1_extracted.c
+	[src/mpfr.h] Added a blank line (grouping of function declarations).
 
-added configure option --enable-formally-proven-code and corresponding code
+	Added support for GCC's returns_nonnull attribute (with GCC 4.9+).
 
-------------------------------------------------------------------------
-r13009 | vlefevre | 2018-08-22 12:52:28 +0000 (Wed, 22 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/doc/algorithms.tex
+	[TODO] Update about GCC's nonnull and returns_nonnull attributes.
 
-[doc/algorithms.tex] Ulp calculus: swap Rule 4 and Rule 5.
-------------------------------------------------------------------------
-r13008 | vlefevre | 2018-08-22 12:49:45 +0000 (Wed, 22 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/doc/algorithms.tex
+2019-04-16  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/algorithms.tex] Ulp calculus Rule 4: make the proof much simpler.
-------------------------------------------------------------------------
-r13007 | vlefevre | 2018-08-22 12:27:42 +0000 (Wed, 22 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/doc/algorithms.tex
+	New macro MPFR_FALLTHROUGH to avoid -Wimplicit-fallthrough warnings
+	with GCC 7+. This macro also makes the code more readable by bringing
+	the attention on an unusual fallthrough in a switch case.
+	  * src/mpfr-impl.h: define this macro.
+	  * src/vasprintf.c: use this macro in a case of fallthrough.
 
-[doc/algorithms.tex] Error calculus: implicitly assume x ≠ 0 in ulp.
-------------------------------------------------------------------------
-r13006 | vlefevre | 2018-08-22 09:31:21 +0000 (Wed, 22 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/src/sub1sp.c
+2019-04-15  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sub1sp.c] Updated a FIXME.
-------------------------------------------------------------------------
-r13005 | vlefevre | 2018-08-22 09:23:04 +0000 (Wed, 22 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[src/vasprintf.c] Minor bug fix: when an integer is to be read for
+	  the field width or precision, regard strings like "17*" as invalid
+	  instead of regarding it as "*" (ignoring the integer that precedes,
+	  except in case of overflow). In C's printf, such an invalid string
+	  yields undefined behavior, but in MPFR, we normally print the
+	  invalid format specifier as a literal string in such a case.
+	  Bug detected with -Wimplicit-fallthrough from GCC 7+.
+	[tests/tsprintf.c] Added non-regression test.
 
-[src/sub1sp.c] Removed a comment that brings nothing and is not
-really correct (this is not a "flag").
-------------------------------------------------------------------------
-r13004 | zimmerma | 2018-08-22 07:47:38 +0000 (Wed, 22 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/mpfr-test.h
-   M /trunk/tests/tadd1sp.c
-   M /trunk/tests/tgeneric.c
-   M /trunk/tests/tmul.c
+2019-04-02  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/mpfr-test.h] added macro TEST_FLAGS (debug use only)
+	[configure.ac] Updated --enable-logging description.
 
-------------------------------------------------------------------------
-r13003 | vlefevre | 2018-08-22 03:01:16 +0000 (Wed, 22 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tversion.c
+	[acinclude.m4] When logging support is requested, run a test to check
+	that code with nested functions and the 'cleanup' attribute can be
+	compiled, as these features are needed.
 
-[tests/tversion.c] Portability corrections related to the use of the
-preprocessor / code robustness.
-------------------------------------------------------------------------
-r13002 | zimmerma | 2018-08-21 15:36:29 +0000 (Tue, 21 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[configure.ac] AC_ARG_ENABLE(float128,...): updated comment and
+	description.
 
-[src/sub1sp.c] revert mpfr_sub1sp to the version of revision 12241
+	[configure.ac] Updated comment for AC_ARG_ENABLE(decimal-float,...).
+	  * Removed information about very old GCC versions.
+	  * _Decimal128 is considered too, in addition to _Decimal64.
+	  * No longer just a GCC extension, but part of ISO/IEC TS 18661.
+	  * Added a FIXME for new options about _Decimal64 and _Decimal128.
 
-------------------------------------------------------------------------
-r13001 | zimmerma | 2018-08-21 14:39:43 +0000 (Tue, 21 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[configure.ac] Cleanup: moved some AC_ARG_ENABLE's where they should be.
 
-[src/sub1sp.c] fixed bug20180813
+2019-03-29  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r13000 | zimmerma | 2018-08-21 13:50:13 +0000 (Tue, 21 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tsub1sp.c
+	[src/vasprintf.c]
+	  * Corrected FIXME by modifying the assertion. The failure could occur
+	    only when mpfr_intmax_t has the same size as int (which is the case
+	    when long = int and either intmax_t and long long are not available
+	    or intmax_t = long = int), and only when INT_MIN is provided as a
+	    field width argument.
+	  * Related to that, updated a test to improve optimization.
+	  * Added comments.
 
-[tests/tsub1sp.c] improved comment about bug20180813()
+	[src/vasprintf.c] Added a FIXME: tsprintf yields an assertion failure
+	with sizeof(mpfr_intmax_t) = 4 (which was not tested until now).
 
-------------------------------------------------------------------------
-r12998 | vlefevre | 2018-08-21 13:04:44 +0000 (Tue, 21 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2019-03-29  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r12997 | zimmerma | 2018-08-21 11:01:14 +0000 (Tue, 21 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tsub1sp.c
+	Cleanup / fixes related to intmax_t, mpfr_intmax_t, etc.
 
-[tests/tsub1sp.c] added a test for a bug in mpfr_sub1sp (to be fixed)
+	The issues were:
+	  * The build of the tests (make check) could fail with CFLAGS implying
+	    "-std=c90 -Werror=format", i.e. if intmax_t was available but the
+	    use of the "j" printf length modifier made the compilation fail
+	    (its unconditional use was incorrect anyway).
+	  * MPFR_INTMAX_MAX had definitions in both mpfr-impl.h & mpfr-intmax.h,
+	    with inconsistent usage.
 
-------------------------------------------------------------------------
-r12996 | vlefevre | 2018-08-20 15:33:12 +0000 (Mon, 20 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	Detailed changes:
+	  * acinclude.m4: removed the definition of MPFR_PRINTF_MAXLM, which
+	    could be incorrect (large numbers were not tested to select its
+	    value); in the MPFR_FUNC_GMP_PRINTF_SPEC macro, check sprintf()
+	    in addition to gmp_sprintf() as it is now also used in the tests;
+	    updated some comments and messages.
+	  * src/mpfr-impl.h: removed the MPFR_*INTMAX* definitions; they had
+	    been added due to
+	      https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=582698
+	    with -ansi -pedantic-errors, but this issue was fixed in GCC 4.8
+	    (released 6 years ago), so that they are no longer needed.
+	  * src/mpfr-intmax.h: completed the definitions; mpfr_intmax_t is now
+	    the largest integer type available and fully working (in particular
+	    with printf), thus it may be smaller than intmax_t.
+	  * doc/README.dev: updated the description of mpfr_intmax_t, etc.
+	  * tests/tversion.c: output sizeof(mpfr_intmax_t) too.
+	  * Various .c files in src and tests related to (u)intmax_t: use
+	    INTMAX_MAX instead of MPFR_INTMAX_MAX, etc. as Debian bug 582698
+	    (mentioned above) no longer occurs and mpfr_intmax_t may be smaller
+	    than intmax_t; use the "j" printf length modifier instead of
+	    MPFR_PRINTF_MAXLM, and protect it with "#ifndef NPRINTF_J"
+	    (only the tests are concerned, so that this is not an issue).
 
-[doc/mpfr.texi] Replaced "Section ``Rounding''" by "@ref{Rounding}".
-------------------------------------------------------------------------
-r12995 | zimmerma | 2018-08-20 14:52:54 +0000 (Mon, 20 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2019-03-28  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] renamed Section "Rounding Modes" to "Rounding"
+	[src/urandomb.c] Removed the FIXME: this is a bug in GMP or in Clang's
+	memory sanitizer.
 
-------------------------------------------------------------------------
-r12991 | vlefevre | 2018-08-18 10:03:58 +0000 (Sat, 18 Aug 2018) | 5 lines
-Changed paths:
-   M /trunk/acinclude.m4
-   M /trunk/tests/memory.c
+	[src/urandomb.c] Added a FIXME (use-of-uninitialized-value with
+	Clang's memory sanitizer).
 
-Avoid a pointer-to-int-cast warning with GCC (e.g. under 32-bit Linux)
-by casting pointers to uintptr_t before the cast to mpfr_uintmax_t.
-  * acinclude.m4: use AC_TYPE_UINTPTR_T to define uintptr_t if
-    not available.
-  * tests/memory.c: added casts to uintptr_t.
-------------------------------------------------------------------------
-r12990 | vlefevre | 2018-08-16 14:37:13 +0000 (Thu, 16 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/src/invert_limb.h
-   M /trunk/src/invsqrt_limb.h
+2019-03-13  Vincent Lefèvre  <vincent at vinc17.net>
 
-Code robustness in macro definitions.
-------------------------------------------------------------------------
-r12989 | vlefevre | 2018-08-16 14:29:34 +0000 (Thu, 16 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sqr.c
+	[src/printf.c] Removed unused definitions.
 
-[src/sqr.c] Changed a variable name to avoid confusion with the function
-parameter of the same name, which has a different type.
-------------------------------------------------------------------------
-r12988 | vlefevre | 2018-08-16 14:16:36 +0000 (Thu, 16 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+2019-03-01  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr-impl.h] Added a cast to mp_bitcnt_t in order to fix potential
-integer overflow in MPFR_MPZ_SIZEINBASE2.
-------------------------------------------------------------------------
-r12987 | vlefevre | 2018-08-16 13:54:13 +0000 (Thu, 16 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/src/round_raw_generic.c
+	[doc/README.dev] Update about coverage:
+	  * Mention not to enable optimizations.
+	  * Replaced "-fprofile-arcs -ftest-coverage" by "--coverage", as
+	    this is what is used by the tools/coverage script (note: this
+	    is a synonym when compiling, but also allows the right options
+	    to be used when linking, thus might be better in doubt).
 
-[src/round_raw_generic.c] Type consistency.
-------------------------------------------------------------------------
-r12986 | vlefevre | 2018-08-16 13:52:02 +0000 (Thu, 16 Aug 2018) | 3 lines
-Changed paths:
-   M /trunk/src/bernoulli.c
-   M /trunk/src/jn.c
-   M /trunk/src/mpfr-impl.h
+2019-02-04  Vincent Lefèvre  <vincent at vinc17.net>
 
-Added MPFR_INC_PREC definition (similar to MPFR_ADD_PREC) and replaced
-some MPFR_ADD_PREC occurrences by MPFR_INC_PREC. In src/bernoulli.c,
-replaced += by MPFR_INC_PREC to detect overflow.
-------------------------------------------------------------------------
-r12985 | vlefevre | 2018-08-11 00:51:13 +0000 (Sat, 11 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
-   M /trunk/tools/build-patch
+	[tests] Use MPFR_DBL_* macros when necessary.
 
-Replaced "TZ=UTC" by "TZ=UTC0" for portability.
-------------------------------------------------------------------------
-r12984 | vlefevre | 2018-08-06 13:01:51 +0000 (Mon, 06 Aug 2018) | 3 lines
-Changed paths:
-   M /trunk/src/round_raw_generic.c
+	[tools/mpfrlint] For consistency, use "[ch]" instead of "{c,h}".
 
-[src/round_raw_generic.c] Avoid a useless variable. This should
-also avoid warnings with Windows ICC, reported at:
-  https://sympa.inria.fr/sympa/arc/mpfr/2018-08/msg00002.html
-------------------------------------------------------------------------
-r12983 | vlefevre | 2018-08-06 12:35:06 +0000 (Mon, 06 Aug 2018) | 3 lines
-Changed paths:
-   M /trunk/tests/tcan_round.c
+	[tools/mpfrlint] Detect use of DBL_* macros instead of MPFR_DBL_* ones.
 
-[tests/tcan_round.c] Added missing casts for printf (error messages).
-Bug detected under MS Windows, where size_t > unsigned long. See:
-  https://sympa.inria.fr/sympa/arc/mpfr/2018-08/msg00002.html
-------------------------------------------------------------------------
-r12982 | vlefevre | 2018-08-06 12:17:55 +0000 (Mon, 06 Aug 2018) | 4 lines
-Changed paths:
-   M /trunk/tests/tdiv_ui.c
+	[tools/mpfrlint] Improved message about division by zero.
 
-[tests/tdiv_ui.c] Improved the conditions for test_20170105().
-In particular, the new preprocessor test can avoid spurious warnings
-on large shifts (false positives) with MS Windows. See:
-  https://sympa.inria.fr/sympa/arc/mpfr/2018-08/msg00002.html
-------------------------------------------------------------------------
-r12981 | vlefevre | 2018-08-06 12:00:28 +0000 (Mon, 06 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	[doc/README.dev] Improved description of MPFR_ERRDIVZERO.
+	[tools/mpfrlint] Added a comment about division by zero.
 
-[doc/README.dev] More details about intmax_t, mpfr_intmax_t, etc.
-------------------------------------------------------------------------
-r12980 | vlefevre | 2018-08-06 10:41:26 +0000 (Mon, 06 Aug 2018) | 4 lines
-Changed paths:
-   M /trunk/tests/memory.c
+	[tools/mpfrlint] Check that native FP division by zero is not used.
 
-[tests/memory.c] To print a size_t or a pointer in error messages,
-cast to mpfr_uintmax_t (largest integer type available) instead of
-unsigned long, which may be too short (e.g. under MS Windows).
-See: https://sympa.inria.fr/sympa/arc/mpfr/2018-08/msg00002.html
-------------------------------------------------------------------------
-r12979 | vlefevre | 2018-08-06 10:29:14 +0000 (Mon, 06 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-intmax.h
+2019-01-31  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr-intmax.h] Define MPFR_INTMAX_FSPEC macro: length modifier
-for printf corresponding to mpfr_intmax_t and mpfr_uintmax_t.
-------------------------------------------------------------------------
-r12978 | vlefevre | 2018-08-06 02:04:14 +0000 (Mon, 06 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	[src/Makefile.am] In check-exported-symbols, replaced grep by $(GREP)
+	as usual and like in check-gmp-symbols.
 
-[doc/README.dev] Updated/added links about coding standards and C.
-------------------------------------------------------------------------
-r12977 | vlefevre | 2018-08-05 21:26:21 +0000 (Sun, 05 Aug 2018) | 2 lines
-Changed paths:
-   M /trunk/tools/mpfrlint
+2019-01-30  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tools/mpfrlint] Updated a comment: more details about __GMP_DECLSPEC,
-in particular those found in GMP's longlong.h file.
-------------------------------------------------------------------------
-r12976 | vlefevre | 2018-08-05 16:03:33 +0000 (Sun, 05 Aug 2018) | 19 lines
-Changed paths:
-   M /trunk/src/mpfr-longlong.h
+	[configure.ac] Updated comment about default options in CFLAGS for GCC.
 
-[src/mpfr-longlong.h] Replaced __GMP_DECLSPEC by __MPFR_DECLSPEC.
+	Update about CC / CFLAGS settings from GMP (__GMP_CC / __GMP_CFLAGS).
+	  * configure.ac: remove -pedantic unconditionally; since r7044, it was
+	    removed only when logging was enabled, as at that time only logging
+	    was using C extensions.
+	  * NEWS: added a line about this change.
+	  * INSTALL: updated the note about CC / CFLAGS, removing the obsolete
+	    reference to GMP 4.3.0 at the same time.
 
-Otherwise, with Windows DLL, __GMP_DECLSPEC is replaced by
-__declspec(dllimport), which is wrong when building MPFR and
-yields warning LNK4217 such as:
+2019-01-28  Vincent Lefèvre  <vincent at vinc17.net>
 
-  eint.obj : warning LNK4217: locally defined symbol mpfr_clz_tab
-  imported in function mpfr_eint
+	[tools/announce-text] Corrected subject for Release Candidate > 1.
 
-due to
+2019-01-25  Vincent Lefèvre  <vincent at vinc17.net>
 
-  extern const unsigned char __GMP_DECLSPEC __clz_tab[129];
+	ChangeLog update with "LC_ALL=en_US.UTF8 TZ=UTC svn log -rHEAD:0 -v".
 
-(note that mpfr_clz_tab is defined with "#define __clz_tab mpfr_clz_tab"
-only without the GMP build).
+	[NEWS] Update about shared caches.
 
-See:
-  https://sympa.inria.fr/sympa/arc/mpfr/2018-08/msg00000.html
-  https://sympa.inria.fr/sympa/arc/mpfr/2018-08/msg00001.html
-------------------------------------------------------------------------
-r12975 | vlefevre | 2018-08-05 15:59:29 +0000 (Sun, 05 Aug 2018) | 1 line
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[NEWS] Added: "Shared caches: cleanup."
 
-[tools/mpfrlint] Check that __GMP_DECLSPEC is not used by MPFR.
-------------------------------------------------------------------------
-r12970 | vlefevre | 2018-07-31 10:58:39 +0000 (Tue, 31 Jul 2018) | 4 lines
-Changed paths:
-   M /trunk
-   M /trunk/tests/tversion.c
+	[src/mpfr-thread.h] Fixed the lock macros:
+	  * in case of failure, one must abort, otherwise this would generally
+	    be undefined behavior;
+	  * added missing "do {} while (0)" (currently not mandatory).
 
-[tests/tversion.c] Try to detect missing output from the first printf
-that occurred once with i586-mingw32msvc-gcc -D__USE_MINGW_ANSI_STDIO
-and run under Wine.
-(merged changesets r12968-12969 from the 4.0 branch)
-------------------------------------------------------------------------
-r12964 | vlefevre | 2018-07-27 16:24:08 +0000 (Fri, 27 Jul 2018) | 4 lines
-Changed paths:
-   M /trunk/acinclude.m4
-   M /trunk/configure.ac
-   M /trunk/tests/tsprintf.c
+	[src/mpfr-impl.h] Updated a comment about MPFR_DECL_INIT_CACHE and
+	the shared cache.
 
-[acinclude.m4,configure.ac] Check the support of the group flag for
-  native integers, which is a Single UNIX Specification extension.
-[tests/tsprintf.c] Test the group flag with the P length modifier only
-  when supported, since the implementation relies on this support.
-------------------------------------------------------------------------
-r12963 | vlefevre | 2018-07-27 14:41:02 +0000 (Fri, 27 Jul 2018) | 8 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
-   M /trunk/tests/tsprintf.c
+	[acinclude.m4] Avoid a warning with the pthread_rwlock_t test,
+	as it is an error with -Werror.
 
-[src/vasprintf.c] Fixed bug with the P length modifier (mpfr_prec_t):
-  a '0' flag was always added when calling gmp_asprintf. This bug
-  wasn't detected under Linux because the case for which it was
-  occurring (left space padding without a precision and without a
-  '0' flag) was not tested. With Wine, tsprintf was failing because
-  of a bug in the stdio library: the '0' flag added by mistake should
-  have been ignored in some test with a precision, but it wasn't.
-[tests/tsprintf.c] Added a test that made a failure occur under Linux.
-------------------------------------------------------------------------
-r12962 | vlefevre | 2018-07-27 12:46:39 +0000 (Fri, 27 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[acinclude.m4] Fixed another C++ compatibility issue detected by
+	the -Werror=c++-compat GCC option (it led the "long double" format
+	to be unknown).
 
-[tests/tsprintf.c] Added 2 other tests with the P length modifier.
-------------------------------------------------------------------------
-r12961 | vlefevre | 2018-07-27 12:37:46 +0000 (Fri, 27 Jul 2018) | 2 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
-   M /trunk/tests/tsprintf.c
+2019-01-24  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/vasprintf.c] Fixed bug with the P length modifier (mpfr_prec_t).
-[tests/tsprintf.c] Corrected/added tests with the P length modifier.
-------------------------------------------------------------------------
-r12960 | vlefevre | 2018-07-26 11:33:54 +0000 (Thu, 26 Jul 2018) | 2 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[tests/trint.c] Fixed C++ compatibility issue (arithmetic on enum)
+	detected by the -Werror=c++-compat GCC option.
 
-[src/vasprintf.c] Fixed various overflow and close-to-overflow issues.
-Those with the P length modifier (mpfr_prec_t) will be fixed later.
-------------------------------------------------------------------------
-r12959 | vlefevre | 2018-07-26 11:29:36 +0000 (Thu, 26 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tsprintf.c
+2019-01-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tsprintf.c] Another failure with the P length modifier.
-------------------------------------------------------------------------
-r12958 | vlefevre | 2018-07-26 11:06:35 +0000 (Thu, 26 Jul 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[configure.ac] By default (i.e. if CFLAGS is not already set), if
+	the compiler is GCC not in C++ mode, add the -Wc++-compat warning
+	since we expect the code to compile with a C++ compiler.
 
-[tests/tsprintf.c] Added tests with the P length modifier (mpfr_prec_t),
-yielding mode failures.
-------------------------------------------------------------------------
-r12957 | vlefevre | 2018-07-26 10:12:47 +0000 (Thu, 26 Jul 2018) | 2 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+2019-01-13  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/vasprintf.c] Fixed "store to null pointer" and free of bad pointer
-in case of error.
-------------------------------------------------------------------------
-r12956 | vlefevre | 2018-07-26 10:03:13 +0000 (Thu, 26 Jul 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[tests/tcheck.c] Corrected meaningless error message.
 
-[tests/tsprintf.c] Added a test that yields a "store to null pointer",
-detected by UBsan.
-------------------------------------------------------------------------
-r12955 | vlefevre | 2018-07-25 14:04:12 +0000 (Wed, 25 Jul 2018) | 2 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[doc/mpfr.texi] Minor correction for non-tex versions.
+	Thanks to Trevor Spiteri for the bug report.
 
-[src/vasprintf.c] Bug fix: in case of some errors (via "goto error;"),
-va_end wasn't called, yielding undefined behavior.
-------------------------------------------------------------------------
-r12951 | vlefevre | 2018-07-23 08:21:11 +0000 (Mon, 23 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/tests
+2019-01-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests] Added tget_set_d128 to svn:ignore property.
-------------------------------------------------------------------------
-r12949 | vlefevre | 2018-07-23 00:54:17 +0000 (Mon, 23 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/src/erf.c
+	Moved the compatibility test of the configure options even earlier, from
+	acinclude.m4 to configure.ac, just after the code that defines them.
+	Also added an associated AC_MSG_CHECKING message for better clarity.
 
-[src/erf.c] More security about tauk.
-------------------------------------------------------------------------
-r12948 | vlefevre | 2018-07-23 00:09:44 +0000 (Mon, 23 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/src/erf.c
+	[acinclude.m4] Simplified a message.
 
-[src/erf.c] Removed a meaningless cast.
-------------------------------------------------------------------------
-r12947 | zimmerma | 2018-07-22 21:31:59 +0000 (Sun, 22 Jul 2018) | 2 lines
-Changed paths:
-   M /trunk/src/erf.c
+	[tests/tversion.c] When the shared cache is enabled, also output the
+	lock method (this information has been lost in r13032).
 
-[src/erf.c] replaced double's by mpfr_t to fix bug reported by Naoki Shibata
+	[acinclude.m4] When checking support for POSIX threads (pthread), also
+	check that pthread_rwlock_t is supported, as it is needed by MPFR and
+	conditionally defined in glibc's bits/pthreadtypes.h (via <pthread.h>).
 
-------------------------------------------------------------------------
-r12946 | vlefevre | 2018-07-22 20:39:00 +0000 (Sun, 22 Jul 2018) | 5 lines
-Changed paths:
-   M /trunk/tests/terf.c
+	Cleaned up configure code related to threading and the shared cache.
+	  * acinclude.m4:
+	      - detect incompatibilities between configure options at the
+	        beginning of MPFR_CONFIGS, forcing enable_thread_safe to
+	        "no" or "yes" when necessary, so that the subsequent code
+	        can rely on that;
+	      - check ISO C11 thread support and/or POSIX thread support
+	        only when necessary;
+	      - handle --enable-shared-cache early in MPFR_CONFIGS, because
+	        the use of POSIX threads (pthread) may need to change CC,
+	        CFLAGS, and LIBS (thus affecting other tests);
+	      - test $enable_shared_cache instead of $mpfr_want_shared_cache;
+	      - removed the now useless MPFR_CHECK_SHARED_CACHE function.
+	  * configure.ac: no longer set the mpfr_want_shared_cache variable,
+	    as enable_shared_cache (now used) already has the same usage.
+	Note: currently,
+	  ./configure --enable-shared-cache CFLAGS="-std=c99"
+	still succeeds and still makes the compilation fail. This seems to
+	be due to a limitation of AX_PTHREAD, which just tests linking, not
+	compilation.
 
-[tests/terf.c] Added a testcase for bug reported by Naoki Shibata:
-  https://sympa.inria.fr/sympa/arc/mpfr/2018-07/msg00028.html
-(uceil_log2.c:40: MPFR assertion failed: exp < 1023).
-Increased the number of generic tests in order to reproduce the bug
-there too with the default seed.
-------------------------------------------------------------------------
-r12945 | vlefevre | 2018-07-21 01:13:20 +0000 (Sat, 21 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/src/subnormal.c
+	[acinclude.m4] In MPFR_CHECK_SHARED_CACHE (used when the shared cache
+	was requested), also set CC="$PTHREAD_CC" as documented by ax_pthread
+	(autoconf-archive). This is not guaranteed to work, but according to
+	the ax_pthread.m4 source, in the cases where "$PTHREAD_CC" != "$CC",
+	not setting it will probably not work either.
 
-[src/subnormal.c] C89 compatibility.
-------------------------------------------------------------------------
-r12944 | zimmerma | 2018-07-21 00:55:29 +0000 (Sat, 21 Jul 2018) | 2 lines
-Changed paths:
-   M /trunk/src/subnormal.c
-   M /trunk/tests/tsubnormal.c
+	[src/mpfr-impl.h] Added a comment about the cache-related types, which
+	depend on the locking methods.
 
-[src/subnormal.c] experimental support for RNDNA
+2019-01-08  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12943 | vlefevre | 2018-07-20 13:09:20 +0000 (Fri, 20 Jul 2018) | 2 lines
-Changed paths:
-   M /trunk/Makefile.am
-   A /trunk/examples/threads.c
+	[tests/tstrtofr.c] Updated comment about GCC bug 86554: now fixed in
+	the GCC trunk.
 
-Added examples/threads.c (and updated Makefile.am): multithreading test
-to detect scaling issues with MPFR.
-------------------------------------------------------------------------
-r12942 | vlefevre | 2018-07-19 09:46:48 +0000 (Thu, 19 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+2019-01-07  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/vasprintf.c] Updated a FIXME.
-------------------------------------------------------------------------
-r12941 | vlefevre | 2018-07-19 08:32:21 +0000 (Thu, 19 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[tests/Makefile.am] Replaced "env -u DISPLAY" by "env DISPLAY=''" as
+	the -u option is not supported by NetBSD.
 
-[src/vasprintf.c] More FIXME's.
-------------------------------------------------------------------------
-r12940 | vlefevre | 2018-07-19 07:44:54 +0000 (Thu, 19 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	Updated files:
+	  * COPYING from https://www.gnu.org/licenses/gpl-3.0.txt
+	  * COPYING.LESSER from https://www.gnu.org/licenses/lgpl-3.0.txt
+	These are URL updates and cosmetic changes.
 
-[src/vasprintf.c] Reindentation.
-------------------------------------------------------------------------
-r12939 | vlefevre | 2018-07-19 07:35:06 +0000 (Thu, 19 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	ChangeLog update with "LC_ALL=en_US.UTF8 TZ=UTC0 svn log -rHEAD:0 -v".
+	Note: For r5400, this changes an incorrect update done via r13372 back
+	to the old log message, as the URL in this log message here describes
+	a change in one of the files.
 
-[src/vasprintf.c] Added a FIXME for MPFR_PREC_ARG handling.
-------------------------------------------------------------------------
-r12937 | vlefevre | 2018-07-18 23:59:09 +0000 (Wed, 18 Jul 2018) | 10 lines
-Changed paths:
-   M /trunk/acinclude.m4
-   M /trunk/configure.ac
-   M /trunk/doc/README.dev
-   M /trunk/src/buildopt.c
-   M /trunk/src/free_cache.c
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/mpfr-thread.h
-   M /trunk/tests/tconst_pi.c
-   M /trunk/tests/tversion.c
+	[doc/README.dev] Updated some URL's (http → https).
 
-Shared caches: fix and minor changes.
-  * Fixed detection and use of C11 thread support: the C11 header is
-    <threads.h>, not <thread.h>.
-  * Renamed WANT_SHARED_CACHE to MPFR_WANT_SHARED_CACHE for consistency
-    with the other MPFR_WANT_* macros.
-  * Added MPFR_THREAD_LOCK_METHOD macro, giving the thread locking
-    method as a string (when shared caches are enabled).
-  * doc/README.dev: documented 4 macros for shared caches.
-  * tests/tversion.c: output MPFR_WANT_SHARED_CACHE and
-    MPFR_THREAD_LOCK_METHOD information.
-------------------------------------------------------------------------
-r12935 | vlefevre | 2018-07-18 23:15:14 +0000 (Wed, 18 Jul 2018) | 3 lines
-Changed paths:
-   M /trunk/tests/tconst_pi.c
+	[doc/texinfo.tex] Update to 2018-02-12.17 with "autoreconf -i -f".
 
-[tests/tconst_pi.c] Removed an incorrect assertion, as the #else would
-be applicable when WANT_SHARED_CACHE is defined but not HAVE_PTHREAD
-(which may occur when MPFR_HAVE_C11_LOCK is defined).
-------------------------------------------------------------------------
-r12934 | vlefevre | 2018-07-18 13:33:13 +0000 (Wed, 18 Jul 2018) | 2 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+	Updated the www.gnu.org URL's (http → https) on all the files with:
+	  perl -pi -e 's,http://www.gnu.org/,https://www.gnu.org/,g' **/*(.)
+	under zsh.
 
-[src/vasprintf.c] Fixed type in partition_number to be consistent with
-the end of the function.
-------------------------------------------------------------------------
-r12933 | vlefevre | 2018-07-16 14:17:55 +0000 (Mon, 16 Jul 2018) | 2 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[tests/tstrtofr.c] Updated comment about GCC bug 86554: the MPFR build
+	is still affected with the latest gcc-snapshot version (20190102-1)
+	when using --with-gmp-build=... together with --enable-assert.
 
-[src/vasprintf.c] Added 2 FIXME and removed an incorrect MPFR_ASSERTN
-(which came from r5236).
-------------------------------------------------------------------------
-r12932 | vlefevre | 2018-07-16 13:56:39 +0000 (Mon, 16 Jul 2018) | 3 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+2019-01-04  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tsprintf.c] Added other tests to check_length_overflow, which
-would trigger other bugs in src/vasprintf.c (e.g. when removing the
-other failing tests).
-------------------------------------------------------------------------
-r12931 | vlefevre | 2018-07-16 13:33:33 +0000 (Mon, 16 Jul 2018) | 4 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[tests/tstrtofr.c] Added a comment about GCC bug 86554: the MPFR build
+	seems no longer affected by recent gcc-snapshot versions.
 
-[tests/tsprintf.c] Added check_length_overflow to check the behavior of
-mpfr_snprintf on a large number of output characters (> INT_MAX) with
-size = 0. This test is actually done only if INT_MAX == 2147483647 and
-currently fails in such a case.
-------------------------------------------------------------------------
-r12930 | vlefevre | 2018-07-16 13:22:58 +0000 (Mon, 16 Jul 2018) | 2 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+2019-01-01  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/vasprintf.c] Updated comment about overflow on the number of output
-characters, taking into account the latest ISO C and POSIX standards.
-------------------------------------------------------------------------
-r12929 | vlefevre | 2018-07-16 12:45:59 +0000 (Mon, 16 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[doc/mpfr.texi] Updated the month.
 
-[tests/tsprintf.c] Updated a comment.
-------------------------------------------------------------------------
-r12928 | vlefevre | 2018-07-13 14:43:40 +0000 (Fri, 13 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	Copyright notice update: added 2019 with
+	  perl -pi -e 's/ (\d{4}-)?(2018)(?= Free Software)/
+	               " ".($1||"$2-").($2+1)/e' **/*(^/)
+	under zsh. Removed 2018 from the example in the doc/README.dev file.
 
-[src/vasprintf.c] Simplified mpfr_get_str_wrapper.
-------------------------------------------------------------------------
-r12927 | vlefevre | 2018-07-13 13:38:08 +0000 (Fri, 13 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+2018-12-31  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/vasprintf.c] Added a log message.
-------------------------------------------------------------------------
-r12926 | vlefevre | 2018-07-13 13:15:01 +0000 (Fri, 13 Jul 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[tests/tfmma.c] Added double_rounding test to trigger errors before
+	the fix in mpfr_set_1_2 (set.c r13347).
 
-[src/mpfr-impl.h] Added a FIXME: _Decimal128 code and _MPFR_IEEE_FLOATS
-(which is about binary IEEE-754 floating point) should be unrelated.
-------------------------------------------------------------------------
-r12925 | vlefevre | 2018-07-13 12:28:36 +0000 (Fri, 13 Jul 2018) | 8 lines
-Changed paths:
-   M /trunk/src/get_d64.c
+	[src/set.c] In mpfr_set_1_2, evaluate MPFR_PREC(s) just once.
 
-[src/get_d64.c]
-  * Added FIXME's for get_decimal64_nan and get_decimal64_inf internal
-    functions: possible issue with _MPFR_IEEE_FLOATS code, which also
-    seems more complex than the generic code.
-  * Simplified get_decimal64_zero internal function to generate a
-    decimal zero directly instead of using the fact that a binary64
-    zero is also the encoding of a decimal zero (and assuming that
-    double = binary64 with perfect endianness matching).
-------------------------------------------------------------------------
-r12922 | vlefevre | 2018-07-13 10:28:16 +0000 (Fri, 13 Jul 2018) | 2 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	[src/set.c] Clarified the mpfr_set_1_2 description.
 
-[acinclude.m4] Updated message about the _Float128 support, since
-this is not just about the compiler.
-------------------------------------------------------------------------
-r12921 | vlefevre | 2018-07-13 10:20:28 +0000 (Fri, 13 Jul 2018) | 3 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	[src/set.c] For mpfr_set_1_2, corrected the comments and simplified the
+	generic algorithm (there is no need to distinguish the rounding modes,
+	except for the double-rounding test, and this simplification avoids the
+	non-portable inex | inex2).
 
-[acinclude.m4] Fixed the _Float128 / __float128 detection for NetBSD:
-Optimization made the "undefined reference" error disappear, so that
-__float128 was misdetected as being supported.
-------------------------------------------------------------------------
-r12915 | vlefevre | 2018-07-12 14:27:50 +0000 (Thu, 12 Jul 2018) | 5 lines
-Changed paths:
-   M /trunk/acinclude.m4
+2018-12-20  Vincent Lefèvre  <vincent at vinc17.net>
 
-[acinclude.m4] For the _Float128 / __float128 detection, changed
-AC_COMPILE_IFELSE to AC_LINK_IFELSE since an error may occur only
-at link time, such as under NetBSD:
-  https://mail-index.netbsd.org/pkgsrc-users/2018/02/02/msg026220.html
-  https://mail-index.netbsd.org/pkgsrc-users/2018/02/05/msg026238.html
-------------------------------------------------------------------------
-r12913 | vlefevre | 2018-07-12 12:28:58 +0000 (Thu, 12 Jul 2018) | 4 lines
-Changed paths:
-   M /trunk/src/Makefile.am
+	[doc/mini-gmp] Removed "#define GMP_LIMB_BITS 8": it is not used by
+	mini-gmp.h and yields a failure when building mini-gmp.c (which has
+	its own definition of GMP_LIMB_BITS, equivalent but not identical).
 
-[src/Makefile.am] Corrected check-exported-symbols to avoid a failure
-when the default .SHELLFLAGS value is '-ec' (POSIX) instead of '-c'
-(GNU Make, which is not in POSIX-conforming mode by default).
-Bug found on FreeBSD 11.1 (Compile Farm @ HouseGordon.com).
-------------------------------------------------------------------------
-r12912 | vlefevre | 2018-07-11 08:39:58 +0000 (Wed, 11 Jul 2018) | 2 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[configure.ac] Support mini-gmp with reduced limb size, in the case
+	GMP_NUMB_BITS is not defined: guess GMP_NUMB_BITS from the size of
+	mp_limb_t instead of the size of unsigned long.
 
-[src/vasprintf.c] In buffer_sandwich, simplified the handling of the
-trailing zero (avoid memset and a useless assignment).
-------------------------------------------------------------------------
-r12908 | vlefevre | 2018-07-09 14:05:45 +0000 (Mon, 09 Jul 2018) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[doc/mini-gmp] Correction to avoid a "conflicting types for 'mp_limb_t'"
+	error.
 
-[doc/mpfr.texi] More changes to Section "Nomenclature and Types";
-in particular, defined regular numbers and exponents.
-------------------------------------------------------------------------
-r12907 | vlefevre | 2018-07-09 13:39:14 +0000 (Mon, 09 Jul 2018) | 3 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2018-12-14  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/mpfr.texi] In Section "Nomenclature and Types", removed all the
- at noindent, whose purpose is unclear (if one needs something special,
-an itemized list would be better, or possibly @deffn).
-------------------------------------------------------------------------
-r12906 | vlefevre | 2018-07-09 13:30:02 +0000 (Mon, 09 Jul 2018) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[doc/mini-gmp] added note about using mini-gmp (development version) with
+		       reduced limb size
 
-[doc/mpfr.texi] Rewrote the paragraph defining "floating-point number"
-in Section "Nomenclature and Types", avoiding ambiguities.
-------------------------------------------------------------------------
-r12903 | vlefevre | 2018-07-06 14:01:06 +0000 (Fri, 06 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tprintf.c
+	[src/set.c] fixed double-rounding bug in mpfr_set_1_2
+	[tests/tset.c] added corresponding tests
 
-[tests/tprintf.c] Grrr... again a copy-paste error. Now OK.
-------------------------------------------------------------------------
-r12902 | vlefevre | 2018-07-06 13:58:49 +0000 (Fri, 06 Jul 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tprintf.c
-   M /trunk/tests/tsprintf.c
+	[tests/tset.c] added a test of test_set_1_2(), which currently fails
 
-[tests/{tprintf.c,tsprintf.c}] Corrected the tests added in r12898,
-but tprintf still fails.
-------------------------------------------------------------------------
-r12901 | vlefevre | 2018-07-06 13:53:26 +0000 (Fri, 06 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[tests/tcan_round.c] disabled tests that don't agree with mpfr_can_round documentation
 
-[tests/tsprintf.c] Corrected the latest tests.
-------------------------------------------------------------------------
-r12900 | vlefevre | 2018-07-06 13:51:41 +0000 (Fri, 06 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tsprintf.c
+2018-12-13  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tsprintf.c] Added tests (failure on "%09.3Rg" for 1000).
-------------------------------------------------------------------------
-r12899 | vlefevre | 2018-07-06 13:45:00 +0000 (Fri, 06 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[tests/tsprintf.c] Updated a comment about ISO C vs POSIX for snprintf.
 
-[tests/tsprintf.c] Corrected comments.
-------------------------------------------------------------------------
-r12898 | vlefevre | 2018-07-06 13:41:37 +0000 (Fri, 06 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tprintf.c
-   M /trunk/tests/tsprintf.c
+	[tests/tsprintf.c] Updated a comment about ISO C vs POSIX for snprintf.
 
-[tests/{tprintf.c,tsprintf.c}] Added tests (both programs fail).
-------------------------------------------------------------------------
-r12896 | vlefevre | 2018-07-06 13:26:15 +0000 (Fri, 06 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[TODO] Added item: new functions mpfr_cmp_uj and mpfr_cmp_sj.
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r12895 | vlefevre | 2018-07-06 13:25:43 +0000 (Fri, 06 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[TODO] Removed obsolete "check again coverage" from 2007.
 
-[src/vasprintf.c] Corrected comments and coding style.
-------------------------------------------------------------------------
-r12894 | vlefevre | 2018-07-06 13:17:40 +0000 (Fri, 06 Jul 2018) | 8 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+2018-12-13  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/vasprintf.c] Resolve the FIXME.
-  * Renamed ip_trailing_zeros to ip_trailing_digits, since when
-    spec.size == 0, these can be any digits.
-  * Simplified the buffer_sandwich function since it can be called
-    only when spec.size != 0, in which case tz (= ip_trailing_digits)
-    is either 0 or 1 (a trailing zero must be added only when rounding
-    to the next power of ten in the %f case).
-  * Corrected/removed/added comments.
-------------------------------------------------------------------------
-r12893 | vlefevre | 2018-07-06 11:49:12 +0000 (Fri, 06 Jul 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tprintf.c
-   M /trunk/tests/tsprintf.c
+	[src/sqr.c] fixed same issue as in r13338 and r13339
 
-[tests/{tprintf.c,tsprintf.c}] Added tests with powers of ten in all
-rounding modes and powers of ten + 0.5 in rounding to nearest.
-------------------------------------------------------------------------
-r12889 | zimmerma | 2018-07-05 07:22:01 +0000 (Thu, 05 Jul 2018) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/mul.c] fixed bug in mpfr_mul() when sizeof(mp_limb_t) < sizeof(mpfr_exp_t)
+		    (same issue as in r13338)
 
-[doc/mpfr.texi] typo in Fredrik's name
+2018-12-12  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12888 | zimmerma | 2018-07-05 07:19:35 +0000 (Thu, 05 Jul 2018) | 2 lines
-Changed paths:
-   M /trunk/AUTHORS
+	[src/mul.c] For MPFR_WANT_ASSERT >= 2: minor changes in the code;
+	corrected a comment (even with mp_limb_t >= mpfr_exp_t, there was an
+	issue: the expression b1 - 1 + cc was computed in unsigned arithmetic,
+	then converted to mpfr_exp_t, with an implementation-defined result
+	when -1 was expected, i.e. with b1 = cc = 0).
 
-[AUTHORS] typo in Fredrik's name
+	[src/mul.c] Corrected a typo in a comment.
 
-------------------------------------------------------------------------
-r12887 | vlefevre | 2018-07-04 15:14:21 +0000 (Wed, 04 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tprintf.c
+	[src/mul.c] Fixed error message with MPFR_WANT_ASSERT >= 2.
 
-[tests/tprintf.c] Added a TODO (for the FIXME in src/vasprintf.c).
-------------------------------------------------------------------------
-r12886 | vlefevre | 2018-07-04 15:04:00 +0000 (Wed, 04 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+2018-12-11  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/vasprintf.c] Updated the FIXME comment.
-------------------------------------------------------------------------
-r12885 | vlefevre | 2018-07-04 14:38:04 +0000 (Wed, 04 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[src/mpfr-gmp.h] For count_leading_zeros (MPFR_LONG_WITHIN_LIMB
+	not defined), no longer assume GMP_NUMB_BITS <= 32.
 
-[src/vasprintf.c] Added a FIXME comment about an incorrect comment.
-------------------------------------------------------------------------
-r12884 | vlefevre | 2018-07-04 14:30:16 +0000 (Wed, 04 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[src/mpfr-gmp.h] Fixed count_leading_zeros (avoid undefined behavior
+	on shift counts, which must be nonnegative and smaller than the width
+	of the type of the shifted value).
 
-[src/vasprintf.c] Added log messages in buffer_sandwich.
-------------------------------------------------------------------------
-r12883 | vlefevre | 2018-07-04 14:20:29 +0000 (Wed, 04 Jul 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+2018-12-11  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tsprintf.c] Added more tests of the form 10^i - 1/2
-(like in tprintf.c).
-------------------------------------------------------------------------
-r12882 | vlefevre | 2018-07-04 14:00:08 +0000 (Wed, 04 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tprintf.c
+	[src/mul.c] fixed reference routine mpfr_mul3() when sizeof(limb) < sizeof(exp)
 
-[tests/tprintf.c] Added more tests of the form 10^i - 1/2.
-------------------------------------------------------------------------
-r12881 | vlefevre | 2018-07-04 13:40:12 +0000 (Wed, 04 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[src/mpfr-gmp.h] fixed count_leading_zeros for mini-gmp with 32-bit limb
 
-[tests/tsprintf.c] Added test_locale() test based on the tprintf.c one.
-------------------------------------------------------------------------
-r12880 | vlefevre | 2018-07-04 13:36:32 +0000 (Wed, 04 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tprintf.c
+2018-12-10  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tprintf.c] Minor correction.
-------------------------------------------------------------------------
-r12879 | vlefevre | 2018-07-04 13:27:49 +0000 (Wed, 04 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tprintf.c
+	[doc/mini-gmp] added remark about random functions
 
-[tests/tprintf.c] More test_locale() cleanup.
-------------------------------------------------------------------------
-r12878 | vlefevre | 2018-07-04 13:11:01 +0000 (Wed, 04 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[tests/tdiv.c] fixed test_20151023 (was giving an error with micro-gmp-8
+	and GMP_CHECK_RANDOMIZE=1544431052619574)
 
-[src/vasprintf.c] English usage in a comment.
-------------------------------------------------------------------------
-r12877 | vlefevre | 2018-07-04 12:57:47 +0000 (Wed, 04 Jul 2018) | 4 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+2018-12-10  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/vasprintf.c] Renamed mpfr_get_str_aux to mpfr_get_str_wrapper
-in order to avoid a confusion with the mpfr_get_str_aux function
-from get_str.c (moreover, this is really a wrapper, which is the
-reverse of an aux function).
-------------------------------------------------------------------------
-r12876 | vlefevre | 2018-07-04 12:35:45 +0000 (Wed, 04 Jul 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[tools/mpfrlint] Added a test for some avoidable use of gmp_printf.
 
-[tests/tsprintf.c] locale_da_DK() cleanup.
-------------------------------------------------------------------------
-r12875 | zimmerma | 2018-07-04 12:32:17 +0000 (Wed, 04 Jul 2018) | 2 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+2018-12-07  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/vasprintf.c] partly revert commit 12873
+	[tests]
+	  * mpfr-test.h, tests.c: added n_trace function to output a mpn.
+	  * tcan_round.c: use n_trace instead of gmp_printf ("%NX\n",...),
+	    which is not available with mini-gmp.
 
-------------------------------------------------------------------------
-r12874 | vlefevre | 2018-07-04 12:20:43 +0000 (Wed, 04 Jul 2018) | 4 lines
-Changed paths:
-   M /trunk/tests/tprintf.c
+2018-12-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tprintf.c] test_locale() cleanup.
-  * Conditional #include <locale.h> with the other header inclusions.
-  * Completed a #if (to be like in tsprintf.c).
-  * Moved a global variable as local to test_locale().
-------------------------------------------------------------------------
-r12873 | zimmerma | 2018-07-04 12:09:44 +0000 (Wed, 04 Jul 2018) | 3 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
-   M /trunk/tests/tprintf.c
+	[tests/tcan_round.c] Corrected all the error messages for mini-gmp.
 
-[src/vasprintf.c] replaced overflow tests by assertions
-[tests/tprintf.c] improve test coverage
+	[tests/tcan_round.c] Corrected error message for mini-gmp.
 
-------------------------------------------------------------------------
-r12870 | vlefevre | 2018-07-04 08:50:32 +0000 (Wed, 04 Jul 2018) | 3 lines
-Changed paths:
-   M /trunk/doc/README.dev
-   M /trunk/tests/tprintf.c
-   M /trunk/tests/tsprintf.c
+2018-12-05  Vincent Lefèvre  <vincent at vinc17.net>
 
-Added MPFR_CHECK_LOCALES environment variable for the tests (to be
-used by developers): when set, terminate with an error if locales
-cannot be tested.
-------------------------------------------------------------------------
-r12869 | vlefevre | 2018-07-04 01:23:27 +0000 (Wed, 04 Jul 2018) | 19 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[tests/tpow_z.c] Another fix and minor improvements.
 
-[src/vasprintf.c] Fixed several bugs in buffer_sandwich, which could
-yield memory corruption with non-default memory allocators and other
-undefined behavior; check the return value when this function is called.
+	[tests/tpow_z.c] Fixed a test (midpoint case) that was failing
+	with micro-gmp-8 and GMP_CHECK_RANDOMIZE=1544033327230569.
 
-Details:
-  * check integer overflow on the size computations;
-  * computation of q and r without tests;
-  * fixed the case where r > len (e.g. len = 1 and tz = 1);
-  * in the loop, increase the str pointer only when needed, otherwise
-    str could be beyond of the end of the string of the digits, which
-    is undefined behavior.
+	[tests/tpow_z.c] Fixed a test for MPFR_RNDF: do not check the ternary
+	value (a failure was occurring with --with-mini-gmp=.../micro-gmp/8
+	and GMP_CHECK_RANDOMIZE=1544025040809270).
 
-The first consequence of the r > len issue was an incorrect generated
-string. Moreover, since the generated string was shorter than expected,
-mpfr_free_str would provide an incorrect buffer size to the "free"
-function of the current GMP memory allocator. By default, this size is
-ignored, but it may matter if the memory allocators have been changed
-with the mp_set_memory_functions GMP function, in which case a possible
-consequence could be memory corruption.
-------------------------------------------------------------------------
-r12868 | zimmerma | 2018-07-03 15:34:40 +0000 (Tue, 03 Jul 2018) | 3 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
-   M /trunk/tests/tprintf.c
+	[tests/tpow_z.c] Improved error message.
 
-[src/vasprintf.c] added an assertion
-[tests/tprintf.c] added two tests (one currently fails)
+	[src/mpfr-mini-gmp.c] Added missing "void" in function prototype.
 
-------------------------------------------------------------------------
-r12864 | vlefevre | 2018-06-26 18:22:17 +0000 (Tue, 26 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[configure.ac] When building against mini-gmp, check the availability of
+	lrand48, in particular because it is not part of the ISO C standard.
 
-[src/vasprintf.c] C90 compatibility.
-------------------------------------------------------------------------
-r12863 | zimmerma | 2018-06-26 15:16:17 +0000 (Tue, 26 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+2018-12-05  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tsprintf.c] fixed another test
+	[src/mpfr-mini-gmp.c] put back unconditional assert from r13316 (removed by error)
 
-------------------------------------------------------------------------
-r12862 | zimmerma | 2018-06-26 15:15:06 +0000 (Tue, 26 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[src/mpfr-mini-gmp.c] improved random_limb (the low bits of lrand48 are bad)
+			      and fixed gmp_urandomm_ui
 
-[tests/tsprintf.c] fixed test
+2018-12-05  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12861 | zimmerma | 2018-06-26 13:20:49 +0000 (Tue, 26 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
-   M /trunk/tests/tprintf.c
+	[src/mpfr-mini-gmp.c] gmp_urandomm_ui: added a MPFR_ASSERTN
+	unconditionally, as n == 0 is always forbidden.
 
-[src/vasprintf.c] improve coverage
+2018-12-05  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r12860 | zimmerma | 2018-06-26 11:37:44 +0000 (Tue, 26 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[src/mpfr-mini-gmp.c] the static assert introduced in r13313 makes the
+			      compilation fail for 8-bit limbs, while the code
+			      was valid for n <= 256 in that case
 
-[tests/tsprintf.c] improve coverage
+2018-12-04  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12859 | zimmerma | 2018-06-26 10:58:03 +0000 (Tue, 26 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[src/mpfr-mini-gmp.c] Fixed types.
 
-[tests/tsprintf.c] improve coverage
+	[src/mpfr-mini-gmp.c] Added a static assertion to make sure that
+	the MPFR_ASSERTD added in r13312 is valid.
 
-------------------------------------------------------------------------
-r12858 | zimmerma | 2018-06-25 13:42:59 +0000 (Mon, 25 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tgamma_inc.c
+2018-12-04  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tgamma_inc.c] improve coverage
+	[src/mpfr-mini-gmp.c] gmp_urandomm_ui did not generate uniform values
 
-------------------------------------------------------------------------
-r12857 | zimmerma | 2018-06-25 10:48:05 +0000 (Mon, 25 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tgamma_inc.c
+2018-12-03  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tgamma_inc.c] added coverage test
+	[src/set_d.c] Improved comment.
 
-------------------------------------------------------------------------
-r12856 | zimmerma | 2018-06-25 10:13:29 +0000 (Mon, 25 Jun 2018) | 4 lines
-Changed paths:
-   M /trunk/src/gamma.c
-   M /trunk/src/gamma_inc.c
-   M /trunk/tests/tgamma_inc.c
+2018-11-29  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/gamma.c] added comment
-[src/gamma_inc.c] fixed bug for gamma_inc(-Inf, 0)
-[tests/tgamma_inc.c] added coverage tests
+	[tests/Makefile.am] About r13308, added references to the bugs.
 
-------------------------------------------------------------------------
-r12855 | vlefevre | 2018-06-23 10:40:02 +0000 (Sat, 23 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/configure.ac
+	[tests/Makefile.am] Unset DISPLAY as it is not needed and it can yield
+	error messages when running the tests with LOG_COMPILER=wine (for builds
+	with MinGW).
 
-[configure.ac] Do not do specific CFLAGS settings for MS-Windows ICC.
-See <https://sympa.inria.fr/sympa/arc/mpfr/2018-06/msg00027.html>.
-------------------------------------------------------------------------
-r12854 | vlefevre | 2018-06-23 06:04:53 +0000 (Sat, 23 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[tests/tversion.c] Updated a comment about an output issue with MinGW,
+	with the test run under Wine (which is really the cause of the issue).
 
-[src/mpfr-impl.h] Spelling in a comment.
-------------------------------------------------------------------------
-r12853 | vlefevre | 2018-06-23 00:43:45 +0000 (Sat, 23 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+2018-11-28  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr-impl.h] Fixed change in r12847.
-------------------------------------------------------------------------
-r12852 | vlefevre | 2018-06-23 00:23:10 +0000 (Sat, 23 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tget_set_d64.c
+	[tests/tstrtofr.c] In case of failure of some particular test, output
+	the probable cause of this failure (GCC bug 86554) with a workaround.
 
-[tests/tget_set_d64.c] Improved a test.
-------------------------------------------------------------------------
-r12851 | vlefevre | 2018-06-23 00:20:00 +0000 (Sat, 23 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tget_set_d128.c
+2018-11-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tget_set_d128.c] Replaced d != d by DOUBLE_ISNAN (d).
-------------------------------------------------------------------------
-r12850 | vlefevre | 2018-06-23 00:17:09 +0000 (Sat, 23 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tests/tversion.c] Updated a comment about a printf issue with MinGW.
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r12849 | vlefevre | 2018-06-23 00:15:33 +0000 (Sat, 23 Jun 2018) | 3 lines
-Changed paths:
-   M /trunk/tests/tget_set_d128.c
-   M /trunk/tests/tget_set_d64.c
+	[src/strtofr.c] Added a FIXME about the error analysis (info that was
+	part of the FIXME resolved in r13303 and inadvertently dropped).
 
-[tests/tget_set_{d64,d128}.c] When MPFR_ERRDIVZERO is defined,
-disable tests that can trigger a FP exception DIVBYZERO or INVALID
-(issue detected with -DMPFR_TESTS_FPE_DIV -DMPFR_ERRDIVZERO).
-------------------------------------------------------------------------
-r12848 | vlefevre | 2018-06-22 21:44:41 +0000 (Fri, 22 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[src/strtofr.c] Resolved a FIXME; tstrtofr no longer fails due to
+	bug20181127 with 8-bit limbs (micro-gmp/8).
 
-[src/mpfr-impl.h] Improved a comment about union ieee_decimal128.
-------------------------------------------------------------------------
-r12847 | vlefevre | 2018-06-22 21:41:53 +0000 (Fri, 22 Jun 2018) | 4 lines
-Changed paths:
-   M /trunk/acinclude.m4
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/set_d128.c
-   M /trunk/tests/tget_set_d128.c
+	[tests/tstrtofr.c] Added bug20181127 (test found with random_tests),
+	which fails with 8-bit limbs (micro-gmp/8).
 
-Do not assume that the bit-field ordering for _Decimal128 is necessarily
-little endian or big endian (this is more than the usual endianness
-issue). If this cannot be detected, instead of failing or assuming a
-possibly wrong default, switch to the portable code.
-------------------------------------------------------------------------
-r12846 | zimmerma | 2018-06-22 15:36:25 +0000 (Fri, 22 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/NEWS
-   M /trunk/TODO
-   M /trunk/doc/mpfr.texi
+	[src/mpfr-impl.h] Added a comment with a warning concerning the
+	  meaning of MPFR_EXP_FSPEC.
+	[tests/tstrtofr.c] Fixed a MPFR_EXP_FSPEC related bug in a test
+	  for _MPFR_EXP_FORMAT <= 2, e.g. with -D_MPFR_PREC_FORMAT=2.
 
-added mpfr_get_decimal128 and mpfr_set_decimal128 to the manual
+	[tests/tdiv.c] Fixed bad format string for an error message, detected
+	with -D_MPFR_PREC_FORMAT=2 (using -Werror...).
 
-------------------------------------------------------------------------
-r12845 | zimmerma | 2018-06-22 15:04:33 +0000 (Fri, 22 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_set_d128.c
+2018-11-26  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tget_set_d128.c] test some random 16-byte inputs
+	[tests] Moved bug20180908() from tget_str.c to tset_str.c since it tests
+	mpfr_set_str() only. This test was introduced in r13164.
 
-------------------------------------------------------------------------
-r12844 | zimmerma | 2018-06-22 15:00:37 +0000 (Fri, 22 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_set_d64.c
+2018-11-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tget_set_d64.c] test random inputs
+	[TODO] + More UBF functions.
 
-------------------------------------------------------------------------
-r12843 | zimmerma | 2018-06-22 14:39:39 +0000 (Fri, 22 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/acinclude.m4
-   M /trunk/src/mpfr-impl.h
+	[doc/mpfr.texi] Updated the month.
 
-[acinclude.m4] added configure test to determine the encoding of _Decimal128 (little or big endian)
+	[src/strtofr.c] Changed some unsigned long to unsigned int.
 
-------------------------------------------------------------------------
-r12842 | zimmerma | 2018-06-22 14:01:06 +0000 (Fri, 22 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/doc/README.dev
+	[src/strtofr.c] Some cleanup in parsed_string_to_mpfr. Avoid a potential
+	integer overflow in very high precision if mp_size_t < mpfr_prec_t.
 
-[doc/README.dev] added standard suffixes
+2018-11-22  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12841 | zimmerma | 2018-06-22 13:56:17 +0000 (Fri, 22 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_set_d64.c
+	[src/strtofr.c] Updated FIXME, due to new tests added to
+	tests/tstrtofr.c in r13278-13279,13286-13288.
 
-[tests/tget_set_d64.c] fixed a test
+	[src/nbits_ulong.c] Added missing initialization from r13269
+	when MPFR_LONG_WITHIN_LIMB is not defined.
 
-------------------------------------------------------------------------
-r12840 | zimmerma | 2018-06-22 13:13:55 +0000 (Fri, 22 Jun 2018) | 3 lines
-Changed paths:
-   M /trunk/tests/tget_set_d128.c
-   M /trunk/tests/tget_set_d64.c
+	[tests/tstrtofr.c] Resolved the FIXME and fixed the issue related to
+	the old mpfr_get_str description (see r13283).
+	Note: with the later fix r13289, a test still fails with 8-bit limbs
+	(incorrect exponent, possibly corresponding to the FIXME just before
+	"exp = GMP_NUMB_BITS - count;" in src/strtofr.c).
 
-[tests/tget_set_d64.c] removed TODO (done), added comment
-[tests/tget_set_d128.c] removed TODO (done)
+	[tests/tstrtofr.c] Added comments, including a FIXME.
 
-------------------------------------------------------------------------
-r12839 | zimmerma | 2018-06-22 13:11:53 +0000 (Fri, 22 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/set_d64.c
+	[tests/tstrtofr.c] Resolved the FIXME for the random tests, and
+	increased the number of tests to trigger a failure.
 
-[src/set_d64.c] added comment (like for set_d128.c)
+	MPFR manual: corrected/completed the mpfr_get_str description in order
+	to follow the historical behavior and GMP's mpf_get_str function.
+	(Discussion in the Trier meeting.)
 
-------------------------------------------------------------------------
-r12838 | zimmerma | 2018-06-22 12:44:16 +0000 (Fri, 22 Jun 2018) | 3 lines
-Changed paths:
-   M /trunk/src/get_d128.c
-   M /trunk/src/get_d64.c
+	[src/get_str.c] Code style.
 
-[src/get_d64.c] improve comment
-[src/get_d128.c] likewise
+	[doc/README.dev] Update about issues with mixing signed/unsigned types.
 
-------------------------------------------------------------------------
-r12837 | zimmerma | 2018-06-22 12:38:26 +0000 (Fri, 22 Jun 2018) | 3 lines
-Changed paths:
-   M /trunk/src/set_d64.c
-   M /trunk/tests/tget_set_d64.c
+	[doc/README.dev] Added a note about the disallowed conversions between
+	function pointers and other kinds of pointers (including to void *).
 
-[src/set_d64.c] also deal with non-canonical BID encoding
-[tests/tget_set_d64.c] added test with non-canonical BID encoding
+2018-11-20  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12836 | vlefevre | 2018-06-22 12:19:47 +0000 (Fri, 22 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/get_d128.c
+	[tests/tstrtofr.c] Added a FIXME, which explains the current failure.
+	But there is currently an inconsistency in mpfr_get_str, whose digits
+	are not specified:
+	  https://sympa.inria.fr/sympa/arc/mpfr/2018-11/msg00021.html
 
-[src/get_d128.c] Bug fix (buffer overflow detected by AddressSanitizer).
-------------------------------------------------------------------------
-r12835 | vlefevre | 2018-06-22 12:10:52 +0000 (Fri, 22 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/get_d128.c
-   M /trunk/src/set_d128.c
+	[tests/tstrtofr.c] Added random tests, which currently fail.
 
-[src] Moved the FIXME comment from set_d128.c to get_d128.c since the
-bug occurs in mpfr_get_decimal128 according to the AddressSanitizer.
-------------------------------------------------------------------------
-r12834 | vlefevre | 2018-06-22 12:08:14 +0000 (Fri, 22 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/set_d128.c
+2018-11-19  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/set_d128.c] Updated FIXME comment.
-------------------------------------------------------------------------
-r12833 | vlefevre | 2018-06-22 11:52:45 +0000 (Fri, 22 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+	[src/round_prec.c] mpfr_can_round_raw: improved the code structure about
+	rnd1 and rnd2, making clear that they are not changed several times;
+	avoid the use of cc with 2 different meanings in the same code path.
 
-[src/sqrt.c] Replaced a umul_ppmm by umul_hi, and removed an unused
-variable as a consequence.
-------------------------------------------------------------------------
-r12832 | vlefevre | 2018-06-22 11:42:30 +0000 (Fri, 22 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/set_d64.c
+2018-11-17  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/set_d64.c] Code improvement (like r12809 and r12828 in set_d128.c).
-------------------------------------------------------------------------
-r12831 | vlefevre | 2018-06-22 11:35:36 +0000 (Fri, 22 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/set_ld.c
+	[src/round_prec.c] fixed bug in mpfr_can_round when rnd2=RNDF, rnd1 is a
+			   directed rounding, and the input is exact
 
-[src/set_ld.c] Removed unused variable for
-HAVE_LDOUBLE_MAYBE_DOUBLE_DOUBLE (PowerPC).
-------------------------------------------------------------------------
-r12830 | vlefevre | 2018-06-22 11:33:33 +0000 (Fri, 22 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/invsqrt_limb.h
+2018-11-16  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/invsqrt_limb.h] Avoid a "variable ‘_l’ set but not used" warning
-on some platforms, such as powerpc64le-unknown-linux-gnu.
-------------------------------------------------------------------------
-r12829 | vlefevre | 2018-06-22 11:28:46 +0000 (Fri, 22 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/invert_limb.h
+	[src/strtofr.c] parsed_string_to_mpfr: updated a FIXME comment.
+	In short, the current tstrtofr.c tests seem to always be hard-to-round
+	cases. The consequence is that some parts of the code are run, but not
+	completely tested, because for these cases, some intermediate results,
+	potentially incorrect, are thrown out due to the next Ziv iteration!
 
-[src/invert_limb.h] Avoid a "variable ‘_l’ set but not used" warning
-on some platforms, such as powerpc64le-unknown-linux-gnu.
-------------------------------------------------------------------------
-r12828 | vlefevre | 2018-06-22 11:19:27 +0000 (Fri, 22 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/set_d128.c
+	[src/strtofr.c] parsed_string_to_mpfr: minor changes.
 
-[src/set_d128.c] Avoid "unused variable" warnings on platforms with DPD.
-------------------------------------------------------------------------
-r12827 | vlefevre | 2018-06-22 11:11:02 +0000 (Fri, 22 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[src/strtofr.c] parsed_string_to_mpfr: added log messages.
 
-[src/mpfr-impl.h] About union ieee_double_decimal64: removed an
-incorrect comment and added a TODO.
-------------------------------------------------------------------------
-r12826 | vlefevre | 2018-06-22 11:08:20 +0000 (Fri, 22 Jun 2018) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/set_d128.c
-   M /trunk/tests/tget_set_d128.c
+	[src/strtofr.c] Minor change to use MPFR_ASSERTD.
 
-Changed union ieee_double_decimal128 to union ieee_decimal128 since this
-has nothing to do with double (unlike union ieee_double_decimal64). Also
-refactored code for this union definition.
-------------------------------------------------------------------------
-r12825 | vlefevre | 2018-06-22 10:50:47 +0000 (Fri, 22 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[src/{int_ceil_log2.c,mpfr-impl.h}] Consistent postcondition for
+	MPFR_INT_CEIL_LOG2 and __gmpfr_int_ceil_log2 (result >= 0).
 
-[src/mpfr-impl.h] Updated TODO for DPD.
-------------------------------------------------------------------------
-r12824 | vlefevre | 2018-06-22 10:47:16 +0000 (Fri, 22 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[src/nbits_ulong.c] Code refactoring. Added {pre,post}condition.
 
-[src/mpfr-impl.h] Added TODO for DPD (better structure definition).
-------------------------------------------------------------------------
-r12823 | vlefevre | 2018-06-22 10:42:20 +0000 (Fri, 22 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tget_set_d128.c
+	[src/strtofr.c] parsed_string_to_mpfr: removed an incorrect cast.
 
-[tests/tget_set_d128.c] Execute BID code only with BID.
-------------------------------------------------------------------------
-r12822 | vlefevre | 2018-06-22 10:35:07 +0000 (Fri, 22 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tget_set_d128.c
+	[src/strtofr.c] parsed_string_to_mpfr: updated a FIXME comment (again,
+	another issue).
 
-[tests/tget_set_d128.c] Simplification and better portability.
-------------------------------------------------------------------------
-r12821 | zimmerma | 2018-06-22 10:25:16 +0000 (Fri, 22 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_set_d128.c
+	[src/strtofr.c] parsed_string_to_mpfr: updated a FIXME comment (there
+	is another issue to solve first).
 
-[tests/tget_set_d128.c] added coverage tests for non-canonical BID encodings
+	Removed trailing whitespace.
 
-------------------------------------------------------------------------
-r12820 | zimmerma | 2018-06-22 10:00:40 +0000 (Fri, 22 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/set_d128.c
+	[src/strtofr.c] parsed_string_to_mpfr: updated a comment (useless code
+	in this function or incomplete tests).
 
-[src/set_d128.c] improve last commit
+	Avoid GCC's -Wcast-align warnings with 8-bit limbs (a correct alignment
+	is ensured by the code itself, and GCC cannot check just from a cast).
 
-------------------------------------------------------------------------
-r12819 | zimmerma | 2018-06-22 09:56:32 +0000 (Fri, 22 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/set_d128.c
+	[src/strtofr.c] parsed_string_to_mpfr: updated comments.
 
-[src/set_d128.c] improved a comment
+2018-11-15  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12818 | vlefevre | 2018-06-22 09:26:00 +0000 (Fri, 22 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/set_d128.c
+	[src/strtofr.c] parsed_string_to_mpfr: more code review, with minor
+	changes and corrections + a FIXME.
 
-[src/set_d128.c] Re-added "while (...)" erroneously removed in r12817.
-------------------------------------------------------------------------
-r12817 | zimmerma | 2018-06-22 09:14:07 +0000 (Fri, 22 Jun 2018) | 3 lines
-Changed paths:
-   M /trunk/src/set_d128.c
-   M /trunk/src/set_d64.c
+	[src/strtofr.c] Typo.
 
-[src/set_d64.c] added comment
-[src/set_d128.c] likewise
+	[src/strtofr.c] Fixed an allocation bug for GMP_NUMB_BITS = 8.
 
-------------------------------------------------------------------------
-r12816 | zimmerma | 2018-06-22 09:00:47 +0000 (Fri, 22 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/set_d128.c
+	[src/strtofr.c] Updated a comment: the issue with mpn_set_str found
+	in 2013-12 (see r8722) was actually an error in the GMP manual.
 
-[src/set_d128.c] avoid variable conflict for DPD
+	[src/strtofr.c] parsed_string_to_mpfr: improved an assertion; comments.
 
-------------------------------------------------------------------------
-r12815 | zimmerma | 2018-06-22 08:54:53 +0000 (Fri, 22 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/set_d128.c
+2018-11-15  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/set_d128.c] implement for DFD encoding
+	[tests/tcan_round.c] fixed some TODOs, which exposes a bug
 
-------------------------------------------------------------------------
-r12814 | zimmerma | 2018-06-22 08:54:08 +0000 (Fri, 22 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/set_d64.c
+2018-11-15  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/set_d64.c] added comment and space
+	[src/strtofr.c] Near the beginning of parsed_string_to_mpfr: corrected
+	comments; added an assertion; minor change of a test.
 
-------------------------------------------------------------------------
-r12813 | vlefevre | 2018-06-22 02:25:39 +0000 (Fri, 22 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/set_d128.c
+2018-11-10  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/set_d128.c] Added a FIXME (stack-buffer-overflow).
-------------------------------------------------------------------------
-r12812 | vlefevre | 2018-06-22 01:57:01 +0000 (Fri, 22 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/set_d128.c
+	[src/mulders.c] fixed issue with --enable-gmp-internals
+	[tune/tuneup.c] likewise
+	(see https://sympa.inria.fr/sympa/arc/mpfr/2018-11/msg00015.html)
 
-[src/set_d128.c] Corrected r12811.
-------------------------------------------------------------------------
-r12811 | vlefevre | 2018-06-22 01:09:21 +0000 (Fri, 22 Jun 2018) | 3 lines
-Changed paths:
-   M /trunk/src/set_d128.c
+2018-10-18  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/set_d128.c] _MPFR_IEEE_FLOATS code for BID: correctly support
-the decoded significand >= 10^34 cases (non-canonical encodings),
-which must be zero.
-------------------------------------------------------------------------
-r12810 | vlefevre | 2018-06-22 00:49:07 +0000 (Fri, 22 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_set_d128.c
-   M /trunk/tests/tget_set_d64.c
+	[src/mpfr-longlong.h] applied patch from https://sympa.inria.fr/sympa/arc/mpfr/2018-10/msg00010.html
 
-[tests/{tget_set_d64.c,tget_set_d128.c}] TODO: Also test non-canonical
-encodings.
-------------------------------------------------------------------------
-r12809 | vlefevre | 2018-06-22 00:31:33 +0000 (Fri, 22 Jun 2018) | 5 lines
-Changed paths:
-   M /trunk/src/set_d128.c
+2018-10-07  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/set_d128.c]
-  * Enable the _MPFR_IEEE_FLOATS code only for GMP_NUMB_BITS == 32 or 64
-    (as the other values are not supported by this code).
-  * Bug fix for GMP_NUMB_BITS == 32 (→ tget_set_d128 no longer fails).
-  * Added an assertion corresponding to a comment.
-------------------------------------------------------------------------
-r12808 | vlefevre | 2018-06-22 00:21:38 +0000 (Fri, 22 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/set_d128.c
+	[codespell.ignore] Also ignore "ue" (codespell 1.14).
 
-[src/set_d128.c] Fit on 80 columns.
-------------------------------------------------------------------------
-r12807 | vlefevre | 2018-06-21 21:47:12 +0000 (Thu, 21 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+2018-10-01  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr-impl.h] Updated a title comment (→ Decimal support).
-------------------------------------------------------------------------
-r12806 | vlefevre | 2018-06-21 21:45:01 +0000 (Thu, 21 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[configure.ac,src/Makefile.am] About the --with-mini-gmp support, since
+	there are some advantages with the new code, one will probably not go
+	back. Thus removed the references to the Automake 1.15 bug and to the
+	old code. Also removed the mini_gmp_path=. workaround needed with the
+	old code (even with Automake 1.16), which had been added in r13217.
+	Also slightly improved the setup for mini-gmp.
 
-[src/mpfr-impl.h] Corrected a comment.
-------------------------------------------------------------------------
-r12805 | zimmerma | 2018-06-21 19:26:13 +0000 (Thu, 21 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/set_d128.c
+	[doc/with-mini-gmp.patch] Updated comment.
 
-[src/set_d128.c] added comments
+	[configure.ac,src/Makefile.am] Avoid a "make" failure due to a bug in
+	Automake 1.15 automatic dependency tracking: instead of using mini-gmp
+	directly in an external directory with a $(mini_gmp_path) variable in
+	src/Makefile.am, make the configure script add symbolic links to the
+	mini-gmp sources in the build directory, and use these symbolic links
+	for the MPFR build (as if they were plain files).
+	Tested under various conditions: static and shared; separate source and
+	build directories; changing the mini-gmp version without "make clean".
 
-------------------------------------------------------------------------
-r12804 | zimmerma | 2018-06-21 19:15:09 +0000 (Thu, 21 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/set_d128.c
+2018-09-28  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/set_d128.c] remove debug stuff
+	Added doc/with-mini-gmp.patch file (for the developers):
+	Modifications to configure.ac and src/Makefile.am that had been done
+	for --with-mini-gmp support. This is kept for the reference, as changes
+	may be needed as a workaround to a bug fixed in GNU Automake 1.16, and
+	other future changes might break things (to remember what was working
+	at this time).
 
-------------------------------------------------------------------------
-r12803 | zimmerma | 2018-06-21 19:13:17 +0000 (Thu, 21 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+2018-09-20  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr-impl.h] assume little-endian double implies little-endian decimal128
+	[doc/mini-gmp] Update.
 
-------------------------------------------------------------------------
-r12802 | vlefevre | 2018-06-21 17:59:46 +0000 (Thu, 21 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+2018-09-19  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr-impl.h] FIXME for _Decimal128.
-------------------------------------------------------------------------
-r12801 | zimmerma | 2018-06-21 13:41:55 +0000 (Thu, 21 Jun 2018) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/set_d128.c
-   M /trunk/tests/tget_set_d128.c
+	[Makefile.am] Distribute the doc/mini-gmp file.
+	[configure.ac] For --with-mini-gmp, say:
+	  "(experimental, please read doc/mini-gmp file)"
 
-[src/set_d128.c] (partly) implement the _MPFR_IEEE_FLOATS case (BID only so far)
-[tests/tget_set_d128.c] added more tests
+	[src/Makefile.am] Added nodist_ for mini-gmp.{c,h} so that these files
+	(not part of MPFR) are not put in the tarballs by "make dist".
 
-------------------------------------------------------------------------
-r12800 | zimmerma | 2018-06-21 13:20:19 +0000 (Thu, 21 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/set_d64.c
+	Removed --enable-mini-gmp configure option.
+	  * NEWS: say that it is replaced by --with-mini-gmp.
+	  * configure.ac: --enable-mini-gmp removed.
+	  * doc/mini-gmp: update.
 
-[src/set_d64.c] added comments
+	[src/mpfr-mini-gmp.c] Missing #else (from r13156).
 
-------------------------------------------------------------------------
-r12799 | zimmerma | 2018-06-21 06:31:29 +0000 (Thu, 21 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/get_d128.c
+	[configure.ac] When using --with-mini-gmp, define GMP_NUMB_BITS if this
+	macro is not already defined in mini-gmp.h (this is done a bit like
+	with --enable-mini-gmp, but the handling in this option is buggy as
+	GMP_NUMB_BITS is defined with AC_DEFINE_UNQUOTED unconditionally,
+	though is most cases the contents of the macros are the same).
 
-[src/get_d128.c] removed useless comment
+	[configure.ac] Do not split "Setup GMP detection". When building
+	MPFR against mini-gmp, do not run any "Setup GMP detection" test
+	(in particular, no longer check gmp.h, as it is useless).
 
-------------------------------------------------------------------------
-r12798 | zimmerma | 2018-06-20 17:01:09 +0000 (Wed, 20 Jun 2018) | 3 lines
-Changed paths:
-   M /trunk/src/get_d128.c
-   M /trunk/tests/tget_set_d128.c
+	[src/mpfr-mini-gmp.h] Removed incorrect GMP_NUMB_BITS macro definition,
+	and this macro needs to be usable in preprocessor tests, and sizeof and
+	types are not available at this level. GMP_NUMB_BITS must be defined by
+	mini-gmp.h, by the configure script, or by the user.
 
-[src/get_d128.c] avoid using doubles
-[tests/tget_set_d128.c] improve test coverage
+	[tools/mpfrlint] Update due to r13221.
 
-------------------------------------------------------------------------
-r12797 | zimmerma | 2018-06-20 14:53:41 +0000 (Wed, 20 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_set_d128.c
+2018-09-18  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tget_set_d128.c] improve test coverage
+	[tests/Makefile.am] Run tversion at the beginning of the tests,
+	then show its output and svnversion's output too.
 
-------------------------------------------------------------------------
-r12796 | zimmerma | 2018-06-20 14:44:52 +0000 (Wed, 20 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_set_d128.c
+	[src/mpfr-mini-gmp.h] Added a FIXME (failure with a mini-gmp that
+	does not define GMP_NUMB_BITS, such as the official one).
 
-[tests/tget_set_d128.c] improve coverage
+	[tests/random2.c] Avoid undefined behavior on shift count.
 
-------------------------------------------------------------------------
-r12795 | zimmerma | 2018-06-20 14:10:04 +0000 (Wed, 20 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/Makefile.am
-   A /trunk/src/get_d128.c
-   M /trunk/src/mpfr.h
-   M /trunk/tests/tget_set_d128.c
+	[src/mpfr-impl.h] Fixed MPFR_LIMB_MASK() macro.
 
-added mpfr_get_decimal128 (still experimental)
+	[configure.ac] Avoid a configure failure with automatic dependency
+	tracking when --with-mini-gmp is not used (bug in Automake?).
 
-------------------------------------------------------------------------
-r12794 | zimmerma | 2018-06-20 14:08:37 +0000 (Wed, 20 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/get_d64.c
+	[NEWS] + Mini-gmp support via the --with-mini-gmp configure option.
 
-[get_d64.c] added comments and simplified code
+2018-09-17  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12792 | vlefevre | 2018-06-20 09:08:16 +0000 (Wed, 20 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_set_d128.c
-   M /trunk/tests/tget_set_d64.c
+	Merged the with-mini-gmp branch into the trunk: new --with-mini-gmp
+	configure option to build MPFR against mini-gmp (instead of GMP).
 
-[tests/{tget_set_d64.c,tget_set_d128.c}] Tests on powers of 10:
-test negative numbers too.
-------------------------------------------------------------------------
-r12791 | vlefevre | 2018-06-19 23:20:12 +0000 (Tue, 19 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	[doc/mini-gmp] Update.
 
-[doc/README.dev] Added a note about FP constants and native FP.
-------------------------------------------------------------------------
-r12790 | vlefevre | 2018-06-19 16:28:21 +0000 (Tue, 19 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/tools/mpfrlint
+	Merged the latest changes from the trunk.
 
-[tools/mpfrlint] Check that preprocessing directives have no spaces
-before.
-------------------------------------------------------------------------
-r12789 | vlefevre | 2018-06-19 16:18:01 +0000 (Tue, 19 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/set_d128.c
+	[src/mul_ui.c] Better code organization (with the MPFR_RET at the right
+	place). Corrected indentation after #else.
 
-[src/set_d128.c] Modified a comment.
-------------------------------------------------------------------------
-r12788 | vlefevre | 2018-06-19 15:12:40 +0000 (Tue, 19 Jun 2018) | 6 lines
-Changed paths:
-   M /trunk/src/set_d128.c
+2018-09-17  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/set_d128.c] Avoid double, which is unreliable with GCC
-in non-standard mode (see GCC bug 323 and the discussion in
-GCC bug 85957). But the failure in tget_set_d128 probably came from
-the fact that (_Decimal128) 0.1 is not 1/10 exactly (the double 0.1
-has about a 17-digit precision only, while _Decimal128 has more);
-this test now passes.
-------------------------------------------------------------------------
-r12787 | vlefevre | 2018-06-19 14:52:37 +0000 (Tue, 19 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/set_d128.c
+	[src/mpfr-mini-gmp.c] added #if 0 ... #endif for mpz_dump (unused)
+	[src/mul_ui.c] fixed compiler warning for limb < long
 
-[src/set_d128.c] Simplified code and added assertions.
-------------------------------------------------------------------------
-r12784 | vlefevre | 2018-06-19 12:53:11 +0000 (Tue, 19 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/set_d64.c
+2018-09-17  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/set_d64.c] Added a log message (like in set_d128.c).
-------------------------------------------------------------------------
-r12783 | vlefevre | 2018-06-19 12:47:28 +0000 (Tue, 19 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/set_d128.c
-   M /trunk/src/set_d64.c
+	[src/Makefile.am] Update for mini-gmp (install mini-gmp.h).
 
-[src/{set_d64.c,set_d128.c}] Bug fix: use mpfr_strtofr instead of
-mpfr_set_str to get the ternary value.
-------------------------------------------------------------------------
-r12782 | vlefevre | 2018-06-19 12:38:35 +0000 (Tue, 19 Jun 2018) | 3 lines
-Changed paths:
-   M /trunk/tests/tget_set_d128.c
-   M /trunk/tests/tget_set_d64.c
+	Merged the latest changes from the trunk (bug fix for 8-bit limb).
 
-[tests/{tget_set_d64.c,tget_set_d128.c}] Added tests on powers of 10.
-  * tget_set_d64 fails on negative due to a bad ternary value.
-  * tget_set_d128 fails on negative due to bad value, etc.
-------------------------------------------------------------------------
-r12781 | vlefevre | 2018-06-19 11:47:27 +0000 (Tue, 19 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tget_set_d128.c
+	[tests/random2.c] Fix for 8-bit limb.
 
-[tests/tget_set_d128.c] Test the flags too.
-------------------------------------------------------------------------
-r12780 | vlefevre | 2018-06-19 11:43:53 +0000 (Tue, 19 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tget_set_d128.c
+	Merged the latest changes from the trunk.
 
-[tests/tget_set_d128.c] Test more values.
-------------------------------------------------------------------------
-r12779 | vlefevre | 2018-06-19 11:38:05 +0000 (Tue, 19 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_set_d128.c
+	[tests/tests.c] Define only one buffer in test_version().
 
-[tests/tget_set_d128.c] Converting an integer into _Decimal128 is better
-than converting a double into _Decimal128.
-------------------------------------------------------------------------
-r12778 | vlefevre | 2018-06-19 11:33:14 +0000 (Tue, 19 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_set_d128.c
+	[tests/random2.c] Improved code by using MPFR_LIMB_* macros.
 
-[tests/tget_set_d128.c] Simplified the test, avoiding a bug in ICC 15
-at the same time (1.0D was regarded as 0).
-------------------------------------------------------------------------
-r12777 | vlefevre | 2018-06-19 11:29:13 +0000 (Tue, 19 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tget_set_d128.c
+	[src/mpfr-impl.h] Improved MPFR_LIMB_* macros for mp_limb_t < int
+	(e.g. 16-bit or 8-bit limb), as in such a case, integer promotion
+	transforms mp_limb_t to int.
 
-[tests/tget_set_d128.c] Fixed indentation.
-------------------------------------------------------------------------
-r12776 | vlefevre | 2018-06-19 11:17:02 +0000 (Tue, 19 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tversion.c
+2018-09-17  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tversion.c] Decimal formats: output the encoding type (DPD/BID).
-------------------------------------------------------------------------
-r12775 | vlefevre | 2018-06-19 11:03:01 +0000 (Tue, 19 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/set_d128.c
+	[tests/tests.c] fixed compiler warning
 
-[src/set_d128.c] Changed _GMP_IEEE_FLOATS to _MPFR_IEEE_FLOATS as per
-r10958 (in set_d128.c, currently in a comment due to r12772).
-------------------------------------------------------------------------
-r12774 | vlefevre | 2018-06-19 10:58:40 +0000 (Tue, 19 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/set_d128.c
+2018-09-14  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/set_d128.c] Added a log message.
-------------------------------------------------------------------------
-r12773 | vlefevre | 2018-06-19 10:51:33 +0000 (Tue, 19 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tget_set_d128.c
+	Merged the latest changes from the trunk (bug fixes).
 
-[tests/tget_set_d128.c] Added an informative error message.
-------------------------------------------------------------------------
-r12772 | vlefevre | 2018-06-19 10:05:06 +0000 (Tue, 19 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/set_d128.c
+	[src/get_si.c] Code refactoring/simplification like what has been
+	done for get_ui.c in r13185, fixing also an integer overflow when
+	MPFR_LONG_WITHIN_LIMB is not defined.
 
-[src/set_d128.c] Disable the _GMP_IEEE_FLOATS code, which is not
-complete yet and makes the compilation fail.
-------------------------------------------------------------------------
-r12771 | vlefevre | 2018-06-13 15:31:23 +0000 (Wed, 13 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/set_d128.c
+	[tests/random2.c] Fix for 16-bit limb.
 
-[src/set_d128.c] Corrected year in copyright notice.
-------------------------------------------------------------------------
-r12770 | vlefevre | 2018-06-13 15:30:02 +0000 (Wed, 13 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/set_d128.c
+	[src/add1.c] Fix for 16-bit limb.
 
-[src/set_d128.c] Minor improvements.
-------------------------------------------------------------------------
-r12769 | zimmerma | 2018-06-13 10:33:51 +0000 (Wed, 13 Jun 2018) | 3 lines
-Changed paths:
-   M /trunk/tests/tget_set_d128.c
-   M /trunk/tests/tget_set_d64.c
+	[src/mpfr-gmp.h] Fixed bug in add_ssaaaa / sub_ddmmss from r13081.
 
-[tests/tget_set_d64.c] added -v option to get verbose output
-[tests/tget_set_d128.c] likewise
+	Completed --with-mini-gmp support (not fully tested).
 
-------------------------------------------------------------------------
-r12768 | vlefevre | 2018-06-13 10:06:15 +0000 (Wed, 13 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/TODO
+	Merged the latest changes from the trunk.
 
-[TODO] Missing "r".
-------------------------------------------------------------------------
-r12767 | zimmerma | 2018-06-13 08:45:56 +0000 (Wed, 13 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/TODO
+	[src/Makefile.am] Moved a comment in a better place.
 
-[TODO] update for mpfr_set_decimal128
+	[configure.ac] Define MINI_GMP Automake conditional (AM_CONDITIONAL).
 
-------------------------------------------------------------------------
-r12766 | zimmerma | 2018-06-13 07:10:29 +0000 (Wed, 13 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/Makefile.am
-   M /trunk/src/mpfr.h
-   A /trunk/src/set_d128.c
-   M /trunk/src/set_d64.c
-   M /trunk/tests/Makefile.am
-   A /trunk/tests/tget_set_d128.c
+2018-09-14  Vincent Lefèvre  <vincent at vinc17.net>
 
-added mpfr_set_decimal128 (work in progress, not yet fully tested)
+	Started to implement --with-mini-gmp (building mini-gmp and linking
+	not correctly handled yet, thus "make check" failure is expected).
 
-------------------------------------------------------------------------
-r12765 | zimmerma | 2018-06-08 16:16:55 +0000 (Fri, 08 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/tools/coverage
+	[Added during the Subversion to Git conversion]
+	This commit includes a merge of r13191 from the trunk.
 
-[tools/coverage] added branch coverage
+2018-09-14  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12764 | vlefevre | 2018-06-07 12:17:31 +0000 (Thu, 07 Jun 2018) | 3 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+	[configure.ac] Typo.
 
-[src/strtofr.c] Moved some computations on the exponents earlier
-since they may yield an early overflow or underflow, and computing
-the division by b^e would be useless in such a case.
-------------------------------------------------------------------------
-r12763 | vlefevre | 2018-06-07 11:21:46 +0000 (Thu, 07 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+	[configure.ac] Updated comments about configure options for mini-gmp.
 
-[src/strtofr.c] Added a MPFR_ASSERTD and a FIXME on things that don't
-make much sense in the error analysis (still trying to understand…).
-------------------------------------------------------------------------
-r12762 | zimmerma | 2018-06-07 09:34:22 +0000 (Thu, 07 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/const_pi.c
+2018-09-13  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/const_pi.c] missing reference about Brent-Salamin
+	[tests/tsin.c] reduce REDUCE_EMAX with mini-gmp
 
-------------------------------------------------------------------------
-r12761 | zimmerma | 2018-06-07 09:31:41 +0000 (Thu, 07 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/doc/algorithms.bib
-   M /trunk/doc/algorithms.tex
+2018-09-13  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/algorithms.bib] added reference
+	[src/get_ui.c] Added assertions.
 
-------------------------------------------------------------------------
-r12759 | zimmerma | 2018-06-05 14:37:16 +0000 (Tue, 05 Jun 2018) | 3 lines
-Changed paths:
-   M /trunk/tests/tfmma.c
+	[src/get_ui.c] Code refactoring/simplification.
 
-[tests/tfmma.c] improve coverage of the UBF case in mpfr_sub
-		(now coverage of sub.c is 100%)
+	[src/sin_cos.c] Added assertions protecting against buffer overflow.
 
-------------------------------------------------------------------------
-r12758 | vlefevre | 2018-06-05 10:35:04 +0000 (Tue, 05 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/sum.c
+2018-09-13  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/sum.c] Updated TODO from r12755.
-------------------------------------------------------------------------
-r12757 | zimmerma | 2018-06-05 06:45:12 +0000 (Tue, 05 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/fmma.c
+	[src/sin_cos.c] fix for small limb size
 
-[src/fmma.c] now mpfr_fmms calls mpfr_sub for a better coverage
+2018-09-12  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12756 | vlefevre | 2018-06-04 15:06:35 +0000 (Mon, 04 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/src/sum.c
+	[src/mpfr-mini-gmp.h] Fix: Since gmp_version is not defined in mini-gmp,
+	we must not declare it (otherwise one would get a link failure instead
+	of a compilation failure if gmp_version is used by mistake).
 
-[src/sum.c] Updated TODO from r12755.
-------------------------------------------------------------------------
-r12755 | vlefevre | 2018-06-04 14:49:50 +0000 (Mon, 04 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sum.c
+	[tests/tests.c] Improved change in r13179 for mini-gmp.
 
-[src/sum.c] Added a comment with a TODO about potentially dead code on
-some platforms.
-------------------------------------------------------------------------
-r12754 | vlefevre | 2018-06-04 12:18:51 +0000 (Mon, 04 Jun 2018) | 5 lines
-Changed paths:
-   A /trunk/codespell.exclude
-   M /trunk/codespell.ignore
-   M /trunk/tools/mpfrlint
+	[configure.ac] Do not check for CC and CFLAGS in gmp.h if mini-gmp is
+	used, i.e. if --enable-mini-gmp (current option) or --with-mini-gmp
+	(future option) is given.
 
-codespell: simplified exceptions.
-  * Added codespell.exclude file.
-  * codespell.ignore: removed some words (particular cases).
-  * tools/mpfrlint: use the codespell.exclude exclude file, and for
-    the doc directory, replaced -S by an explicit list of files.
-------------------------------------------------------------------------
-r12753 | vlefevre | 2018-06-04 09:27:59 +0000 (Mon, 04 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/codespell.ignore
+2018-09-12  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[codespell.ignore] Also ignore "objext" and "tim" (codespell 1.13).
-------------------------------------------------------------------------
-r12752 | zimmerma | 2018-06-04 08:00:22 +0000 (Mon, 04 Jun 2018) | 5 lines
-Changed paths:
-   M /trunk/src/sub1.c
-   M /trunk/tests/tfmma.c
+	[tests/tests.c] libgmp is not defined with mini-gmp (issue found with -O0)
 
-[src/sub1.c] fixed a bug and solved a FIXME (underflow for UBFs)
-Note: this mostly reverts r12319, r12321, and the remaining FIXME
-from r12327.
-[tests/tfmma.c] added non-regression tests
+2018-09-12  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12751 | vlefevre | 2018-06-02 22:39:37 +0000 (Sat, 02 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[src/mpfr-mini-gmp.h] Removed #include lines as mpfr-mini-gmp.h is
+	included only in mpfr-impl.h, which already does these #include's.
 
-[src/mpfr-impl.h] Concerning r12738, the safer code can be avoided
-with GCC in ISO C mode (__STRICT_ANSI__).
-------------------------------------------------------------------------
-r12749 | zimmerma | 2018-06-02 18:40:39 +0000 (Sat, 02 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/invert_limb.h
+	[src/mpfr-impl.h] Check that MPFR_HAVE_GMP_IMPL and MPFR_USE_MINI_GMP
+	are not both defined.
 
-[src/invert_limb.h] fixed two typos reported by Marco Bodrato
+	[src/mpfr-mini-gmp.c] Removed #include "mpfr-mini-gmp.h" as this include
+	is already done in mpfr-impl.h (in both cases, when MPFR_USE_MINI_GMP is
+	defined).
 
-------------------------------------------------------------------------
-r12748 | vlefevre | 2018-06-02 00:11:28 +0000 (Sat, 02 Jun 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tversion.c
+	[src/rec_sqrt.c] Replaced "if (GMP_NUMB_BITS >= 16)" by a preprocessor
+	test "#if GMP_NUMB_BITS >= 16" like earlier. Use static assertions.
 
-[tests/tversion.c] For GCC, output __STRICT_ANSI__ when defined.
-------------------------------------------------------------------------
-r12747 | zimmerma | 2018-06-01 12:24:43 +0000 (Fri, 01 Jun 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+	[src/rec_sqrt.c] Fixed types for 8-bit limb. Removed useless casts.
 
-[src/sqrt.c] fixed/improved comments
+	[src/rec_sqrt.c] Fixed a type from r13172 (int was obviously too short
+	and was yielding a segmentation fault).
 
-------------------------------------------------------------------------
-r12746 | zimmerma | 2018-05-31 21:12:05 +0000 (Thu, 31 May 2018) | 2 lines
-Changed paths:
-   M /trunk/src/invsqrt_limb.h
+2018-09-11  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/invsqrt_limb.h] fixed typos in comments
+	[src/rec_sqrt.c] fixed for 8-bit limb
 
-------------------------------------------------------------------------
-r12745 | vlefevre | 2018-05-31 20:09:45 +0000 (Thu, 31 May 2018) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	[tests/tcan_round.c] fixed test for small value of GMP_NUMB_BITS
 
-[doc/README.dev] Updated a URL.
-------------------------------------------------------------------------
-r12744 | vlefevre | 2018-05-31 16:04:15 +0000 (Thu, 31 May 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[src/strtofr.c] fixed r13168: in case exact=0, mpn_rshift was not done
 
-[src/mpfr-impl.h] Fixed potential compilation failure with _Decimal64,
-detected with r12738.
-------------------------------------------------------------------------
-r12742 | vlefevre | 2018-05-31 14:46:31 +0000 (Thu, 31 May 2018) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tests/tsqrt.c] modified test_sqrt1n() so that it passes with 8-bit limbs
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r12740 | vlefevre | 2018-05-31 14:37:04 +0000 (Thu, 31 May 2018) | 1 line
-Changed paths:
-   M /trunk/AUTHORS
-   M /trunk/INSTALL
-   M /trunk/doc/algorithms.tex
-   M /trunk/doc/mpfr.texi
-   M /trunk/examples/sample.c
-   M /trunk/mpfr.pc.in
-   M /trunk/tests/tests.c
-   M /trunk/tools/cfarm.sh
-   M /trunk/tools/update-version
+2018-09-11  Vincent Lefèvre  <vincent at vinc17.net>
 
-Updated mpfr.org URL's to use https (except in ChangeLog and NEWS).
-------------------------------------------------------------------------
-r12738 | vlefevre | 2018-05-31 00:23:22 +0000 (Thu, 31 May 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[src/strtofr.c] Replaced "exact &=" by "exact = exact &&" as usual.
 
-[src/mpfr-impl.h] With GCC, select safer code for DOUBLE_ISNAN(x).
-------------------------------------------------------------------------
-r12734 | vlefevre | 2018-05-30 17:38:44 +0000 (Wed, 30 May 2018) | 1 line
-Changed paths:
-   M /trunk/tools/announce-text
+2018-09-11  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tools/announce-text] http → https (for mpfr.org).
-------------------------------------------------------------------------
-r12733 | vlefevre | 2018-05-30 15:54:11 +0000 (Wed, 30 May 2018) | 1 line
-Changed paths:
-   M /trunk/doc/FAQ.html
+	[src/strtofr.c] fix for 8-bit limb
 
-[doc] Updated FAQ.html with update-faq.
-------------------------------------------------------------------------
-r12732 | vlefevre | 2018-05-30 15:53:47 +0000 (Wed, 30 May 2018) | 4 lines
-Changed paths:
-   M /trunk/doc/faq.xsl
-   M /trunk/doc/update-faq
+	[src/strtofr.c] added comment
 
-[doc] Workaround due to the lack of https support in libxml2
-and the fact that mpfr.org now uses https with HSTS.
-  * faq.xsl: for the visual.css, use a local URL.
-  * update-faq: download visual.css from mpfr.org first.
-------------------------------------------------------------------------
-r12731 | vlefevre | 2018-05-30 14:09:36 +0000 (Wed, 30 May 2018) | 1 line
-Changed paths:
-   M /trunk/doc/update-faq
+2018-09-10  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/update-faq] http → https
-------------------------------------------------------------------------
-r12724 | vlefevre | 2018-05-30 09:27:29 +0000 (Wed, 30 May 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[doc/mpfr.texi] Updated the month.
 
-[src/mpfr-impl.h] Added a FIXME about DOUBLE_ISNAN and GCC.
-------------------------------------------------------------------------
-r12723 | vlefevre | 2018-05-28 16:34:37 +0000 (Mon, 28 May 2018) | 6 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+2018-09-10  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/strtofr.c] Continued to review the new error analysis and code.
-Changes:
-  * made the code more SSA-like (avoid a "y += ysize; y -= ysize;");
-  * clarified comments;
-  * use MPFR_LIMB_MSB;
-  * added a FIXME on the error analysis.
-------------------------------------------------------------------------
-r12722 | vlefevre | 2018-05-28 13:54:52 +0000 (Mon, 28 May 2018) | 2 lines
-Changed paths:
-   M /trunk/doc/README.dev
+	[src/strtofr.c] fix from r13163 was incorrect
+	[tests/tget_str.c] added a testcase, and fixed an error message
 
-[doc/README.dev] Added info about shell portability, and in particular
-about quotes (covering changes in r5659, r6128, r12711 and r12721).
-------------------------------------------------------------------------
-r12721 | vlefevre | 2018-05-28 13:52:00 +0000 (Mon, 28 May 2018) | 2 lines
-Changed paths:
-   M /trunk/tools/ck-clz_tab
-   M /trunk/tools/ck-copyright-notice
-   M /trunk/tools/ck-mparam
-   M /trunk/tools/update-version
+2018-09-08  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tools/{ck-clz_tab,ck-copyright-notice,ck-mparam,update-version}] Fixed
-non-portable quote nesting in backticks.
-------------------------------------------------------------------------
-r12717 | vlefevre | 2018-05-28 11:05:54 +0000 (Mon, 28 May 2018) | 3 lines
-Changed paths:
-   M /trunk/examples/can_round.c
-   M /trunk/examples/divworst.c
-   M /trunk/examples/rndo-add.c
-   M /trunk/examples/sample.c
-   M /trunk/examples/version.c
+	[src/strtofr.c] resolved a FIXME
 
-[examples] Added "mpfr_free_cache ();" at the end of all programs,
-as this is something that should be done systematically (at least
-to detect memory leaks with valgrind).
-------------------------------------------------------------------------
-r12716 | vlefevre | 2018-05-25 15:25:27 +0000 (Fri, 25 May 2018) | 2 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+	[tests/tdiv_ui.c] fixed corner_cases() test
 
-[src/strtofr.c] Started to review the new error analysis and code
-(r12705,12706). Minor improvements.
-------------------------------------------------------------------------
-r12715 | vlefevre | 2018-05-25 14:46:42 +0000 (Fri, 25 May 2018) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/mpn_exp.c
+	[src/int_ceil_log2.c] fixed __gmpfr_int_ceil_log2 for limb < long
 
-[src/{mpfr-impl.h,mpn_exp.c}] Changed the return type of mpfr_mpn_exp
-from long to int for consistency with the mpfr_mpn_exp code and with
-strtofr.c (which expects an int).
-------------------------------------------------------------------------
-r12714 | vlefevre | 2018-05-25 14:40:40 +0000 (Fri, 25 May 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpn_exp.c
+2018-09-07  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/mpn_exp.c] Code cleanup and protection against integer overflow.
-------------------------------------------------------------------------
-r12713 | vlefevre | 2018-05-24 14:35:51 +0000 (Thu, 24 May 2018) | 1 line
-Changed paths:
-   M /trunk/src/hypot.c
+	[tests/random2.c] fixed mpfr_random2 for GMP_NUMB_BITS <> 64
 
-[src/hypot.c] Do bitwise operations in unsigned arithmetic.
-------------------------------------------------------------------------
-r12712 | vlefevre | 2018-05-24 14:28:57 +0000 (Thu, 24 May 2018) | 1 line
-Changed paths:
-   M /trunk/src/hypot.c
+	[src/mpfr-mini-gmp.c] fixed another compiler warning
 
-[src/hypot.c] Added 2 TODO.
-------------------------------------------------------------------------
-r12711 | vlefevre | 2018-05-23 14:34:10 +0000 (Wed, 23 May 2018) | 3 lines
-Changed paths:
-   M /trunk/tools/ck-clz_tab
-   M /trunk/tools/ck-copyright-notice
+	[src/get_ui.c] fixed compiler warning
 
-[tools/{ck-clz_tab,ck-copyright-notice}] Changed the POSIX $(…) to `…`
-for Bourne shell compatibility (as under Solaris 10).
-Note: these scripts are called via dist-hook for "make dist".
-------------------------------------------------------------------------
-r12710 | vlefevre | 2018-05-22 07:41:58 +0000 (Tue, 22 May 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	some fixes for 8-bit limb support
 
-[src/mpfr-impl.h] Added a comment for UBF.
-------------------------------------------------------------------------
-r12709 | vlefevre | 2018-05-22 07:32:18 +0000 (Tue, 22 May 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	adapt to 8-bit limbs (work in progress)
 
-[src/mpfr-impl.h] Added a comment about UBF and alignment requirements.
-------------------------------------------------------------------------
-r12708 | vlefevre | 2018-05-17 00:42:02 +0000 (Thu, 17 May 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tstrtofr.c
+	[tests/tl2b.c] extend to 8-bit limb
 
-[tests/tstrtofr.c] Removed TODO added in r12681, now obsolete.
-------------------------------------------------------------------------
-r12707 | vlefevre | 2018-05-16 15:17:09 +0000 (Wed, 16 May 2018) | 1 line
-Changed paths:
-   M /trunk/src/strtofr.c
+	[src/mpfr-gmp.h] fix for 8-bit limb
 
-Removed trailing whitespace.
-------------------------------------------------------------------------
-r12706 | zimmerma | 2018-05-16 14:43:31 +0000 (Wed, 16 May 2018) | 2 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+2018-09-07  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/strtofr.c] revisit error analysis in the division case (end)
+	[doc/mpfr.texi] Added @tie{} (normal non-breakable space) at various
+	places to avoid unwanted line breaking.
 
-------------------------------------------------------------------------
-r12705 | zimmerma | 2018-05-15 16:10:08 +0000 (Tue, 15 May 2018) | 3 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+	[doc/mpfr.texi] mpfr_rootn_ui, mpfr_root: changed k to n in order to
+	match IEEE 754-2008. Also improved the description of mpfr_rootn_ui,
+	mentioning the P754/D2.41 draft of the next IEEE 754 standard because
+	IEEE 754-2008 is incomplete.
 
-[src/strtofr.c] revisit error analysis in the division case (work in progress,
-		not yet finished)
+2018-09-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12702 | vlefevre | 2018-05-09 11:21:11 +0000 (Wed, 09 May 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tsub.c
+	[tests/tdiv.c] !mpfr_equal_p is better than mpfr_cmp.
 
-[tests/tsub.c] Updated the comment added in r12701.
-------------------------------------------------------------------------
-r12701 | vlefevre | 2018-05-09 11:16:19 +0000 (Wed, 09 May 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tsub.c
+2018-09-06  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tsub.c] Added a comment about the bug fixed in r10697:
-bug20180217 is a non-regression test for this bug.
-------------------------------------------------------------------------
-r12698 | vlefevre | 2018-05-02 15:14:32 +0000 (Wed, 02 May 2018) | 4 lines
-Changed paths:
-   M /trunk/tests/tstckintc.c
+	[src/rint.c] fixed bug with 16-bit limb
+	             (found by trint with GMP_CHECK_RANDOMIZE=1536206745598891)
 
-[tests/tstckintc.c] Avoid false warnings with -Wcast-align=strict from
-GCC 8.1 by adding casts "(long *) (void *)", still allowing checks of
-other alignment requirements (which are not handled by the tstckintc.c
-code).
-------------------------------------------------------------------------
-r12697 | vlefevre | 2018-05-02 14:16:58 +0000 (Wed, 02 May 2018) | 1 line
-Changed paths:
-   M /trunk/TODO
+	[tests/tdiv.c] fixed test_20151023()
 
-[TODO] + Use GCC's nonnull and returns_nonnull attributes.
-------------------------------------------------------------------------
-r12696 | vlefevre | 2018-05-02 12:31:59 +0000 (Wed, 02 May 2018) | 1 line
-Changed paths:
-   M /trunk/acinclude.m4
+2018-09-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-[acinclude.m4] Added a note on _Decimal64 detection.
-------------------------------------------------------------------------
-r12691 | vlefevre | 2018-04-30 15:24:36 +0000 (Mon, 30 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	Removed trailing whitespace.
 
-[doc/README.dev] Added info about spelling.
-------------------------------------------------------------------------
-r12690 | vlefevre | 2018-04-30 15:18:16 +0000 (Mon, 30 Apr 2018) | 5 lines
-Changed paths:
-   M /trunk/doc/README.dev
-   M /trunk/src/random_deviate.c
-   M /trunk/tests/teint.c
-   M /trunk/tests/tversion.c
+	[src/get_ld.c] Removed incorrect and useless assertions (manl
+	has exactly 32 bits, thus a shift count of 32 bits is invalid,
+	but also useless).
 
-Corrected "runtime" to "run time" (noun) or "run-time" (adjective)
-when it means the time at which the program is run.
-See:
-  https://gcc.gnu.org/codingconventions.html#Spelling
-  https://en.wikipedia.org/wiki/Run_time
-------------------------------------------------------------------------
-r12689 | vlefevre | 2018-04-27 15:39:52 +0000 (Fri, 27 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/src/strtofr.c
+2018-09-05  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/strtofr.c] Potentially unnecessary code: comes from r8384.
-------------------------------------------------------------------------
-r12688 | vlefevre | 2018-04-27 15:20:11 +0000 (Fri, 27 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/src/strtofr.c
+	[src/get_ld.c] fixed (hopefully definitively) for 16-bit limb
 
-[src/strtofr.c] Updated TODO about potentially unnecessary code.
-------------------------------------------------------------------------
-r12687 | vlefevre | 2018-04-27 15:07:18 +0000 (Fri, 27 Apr 2018) | 3 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+2018-09-05  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/strtofr.c] Updated TODO about potentially unnecessary code,
-showing that this code probably increases the error bound (errors
-accumulate instead of compensating without this code).
-------------------------------------------------------------------------
-r12686 | vlefevre | 2018-04-27 11:17:16 +0000 (Fri, 27 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/src/strtofr.c
+	[src/set_d64.c] 2 fixes concerning rp[]:
+	  * If GMP_NUMB_BITS >= 64, there is a shift of 32 bits, thus one
+	    uses mp_limb_t (> 32 bits) instead of unsigned int.
+	  * Otherwise use unsigned long as an unsigned int might be on 16 bits.
 
-[src/strtofr.c] Added a TODO about potentially unnecessary code.
-------------------------------------------------------------------------
-r12685 | vlefevre | 2018-04-27 08:50:28 +0000 (Fri, 27 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/src/strtofr.c
+	[src/mpfr-impl.h] Indentation.
 
-[src/strtofr.c] Corrected/updated comments and added a log message.
-------------------------------------------------------------------------
-r12684 | vlefevre | 2018-04-27 08:34:58 +0000 (Fri, 27 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/src/strtofr.c
+	[src] Moved mpfr_nbits_ulong to its own file "nbits_ulong.c".
 
-[src/strtofr.c] Corrected a comment (exp_base and exp_bin description).
-------------------------------------------------------------------------
-r12683 | vlefevre | 2018-04-27 08:22:59 +0000 (Fri, 27 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+	[src/pow_si.c] MPFR_NEED_LONGLONG_H is still needed.
 
-[src/strtofr.c] Added a FIXME: possible bug in very special cases with
-large exponents, 32-bit mpfr_exp_t and very long strings.
-------------------------------------------------------------------------
-r12682 | vlefevre | 2018-04-27 07:40:21 +0000 (Fri, 27 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/src/strtofr.c
+	[tests/tget_set_d64.c] Removed xxx suffix added in r13139 (by mistake?).
 
-[src/strtofr.c] Added/clarified comments.
-------------------------------------------------------------------------
-r12681 | vlefevre | 2018-04-27 01:36:48 +0000 (Fri, 27 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tstrtofr.c
+2018-09-05  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tstrtofr.c] Added a TODO related to the bug fixed in r12573.
-------------------------------------------------------------------------
-r12678 | vlefevre | 2018-04-26 15:10:36 +0000 (Thu, 26 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tgmpop.c
+	[src/exp_2.c] export (internally) nbits_ulong (renamed to mpfr_nbits_ulong)
+	[src/mpfr-impl.h] added prototype for mpfr_nbits_ulong
+	[src/pow_si.c] fixed for 16-bit limb
 
-[tests/tgmpop.c] Coding style.
-------------------------------------------------------------------------
-r12677 | vlefevre | 2018-04-26 15:07:36 +0000 (Thu, 26 Apr 2018) | 5 lines
-Changed paths:
-   M /trunk/tests/tgmpop.c
+	[src/get_d64.c] fixed for 16-bit limb
+	[src/set_d64.c] likewise
+	[tests/tget_set_d64.c] improved error message
 
-[tests/tgmpop.c] For mpfr_cmp_q, improved the test where x is NaN by
-checking all the flags (not just erange) and added a test where y is
-a NaN rational.
-Note: this could be used to detect 2 bugs, fixed in r12343 and r12499,
-respectively.
-------------------------------------------------------------------------
-r12676 | vlefevre | 2018-04-26 14:08:10 +0000 (Thu, 26 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tcan_round.c
+2018-09-05  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tcan_round.c] Removed a r2 != MPFR_RNDF test and added 3 TODO's
-to support r2 == MPFR_RNDF in some other tests.
-------------------------------------------------------------------------
-r12646 | vlefevre | 2018-04-24 09:46:03 +0000 (Tue, 24 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
+	[src/get_ld.c] In the case GMP_NUMB_BITS == 16, cast to unsigned long
+	instead of unsigned int since shift counts can be up to 16 and an int
+	might be on 16 bits only.
 
-[src/mpfr-gmp.h] Clarified a comment (the "if" is part of the code,
-not the English word).
-------------------------------------------------------------------------
-r12645 | zimmerma | 2018-04-24 08:57:53 +0000 (Tue, 24 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
+2018-09-05  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/mpfr-gmp.h] added comment about MPN_FILL
+	[src/get_ld.c] when denorm=16, a 32-bit shift on an unsigned int is undefined
 
-------------------------------------------------------------------------
-r12644 | vlefevre | 2018-04-20 09:17:15 +0000 (Fri, 20 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/src/out_str.c
+	[src/exp_2.c] fix for 16-bit limb
+	[tests/texp.c] improve error message
 
-[src/out_str.c] Check for integer overflow (here, a minor issue).
-------------------------------------------------------------------------
-r12643 | vlefevre | 2018-04-20 09:10:27 +0000 (Fri, 20 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/src/out_str.c
+	[src/mpfr-mini-gmp.c] fixed gmp_urandomb_ui for 16-bit limb, added mpz_dump
+	[tests/terandom_chisq.c] more details in case of error
 
-[src/out_str.c] Support mpfr_exp_t larger than long (with mpfr_eexp_t).
-------------------------------------------------------------------------
-r12641 | vlefevre | 2018-04-19 15:13:10 +0000 (Thu, 19 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests
+	[src/random_deviate.c] fixed typo
 
-[tests] Added tdot to svn:ignore property.
-------------------------------------------------------------------------
-r12640 | vlefevre | 2018-04-19 15:10:52 +0000 (Thu, 19 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tdot.c
+2018-09-04  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tdot.c] Various improvements.
-------------------------------------------------------------------------
-r12639 | vlefevre | 2018-04-19 14:57:05 +0000 (Thu, 19 Apr 2018) | 4 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/dot.c
+	[tests/tset_z_exp.c] Avoid a GCC bug.
 
-[doc/mpfr.texi] Note that mpfr_dot does not yet handle intermediate
-underflows either.
-[src/dot.c] Changed an MPFR_ASSERTD to MPFR_ASSERTN since the assertion
-is not satisfied on some user inputs. Minor improvements.
-------------------------------------------------------------------------
-r12638 | vlefevre | 2018-04-19 14:42:21 +0000 (Thu, 19 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/NEWS
+	[tests/tset_z_exp.c] Attempt to fix randexp, but GCC complains.
 
-[NEWS] Added mpfr_dot.
-------------------------------------------------------------------------
-r12637 | vlefevre | 2018-04-19 14:41:42 +0000 (Thu, 19 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/mpn_exp.c] Avoid useless "while" in nbits_mpfr_exp_t.
 
-[doc/mpfr.texi] In the added functions, note that mpfr_dot is incomplete
-and experimental.
-------------------------------------------------------------------------
-r12636 | vlefevre | 2018-04-19 14:31:39 +0000 (Thu, 19 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tsum.c
+2018-09-04  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tsum.c] Code style.
-------------------------------------------------------------------------
-r12635 | vlefevre | 2018-04-19 14:30:19 +0000 (Thu, 19 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tests/tset_ld.c] give more digits in case of error
+	[tests/tget_ld_2exp.c] added one test (currently fails for 16-bit limb)
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r12634 | vlefevre | 2018-04-19 14:29:41 +0000 (Thu, 19 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tdot.c
+	[src/set_ld.c] partial fix for 16-bit limb (typo + nice bug!)
 
-[tests/tdot.c] Code style.
-------------------------------------------------------------------------
-r12633 | zimmerma | 2018-04-19 14:21:48 +0000 (Thu, 19 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/Makefile.am
-   A /trunk/src/dot.c
-   M /trunk/src/mpfr.h
-   M /trunk/tests/Makefile.am
-   A /trunk/tests/tdot.c
+	[tests/tset_z_exp.c] fixed infinite loop in test code for limb < mpfr_exp_t
 
-added mpfr_dot
+	[src/mpn_exp.c] adapt to bitsize(mpfr_exp_t) > GMP_NUMB_BITS
 
-------------------------------------------------------------------------
-r12631 | vlefevre | 2018-04-19 13:32:03 +0000 (Thu, 19 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_flt.c
+2018-09-04  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tget_flt.c] Correction about the use of mpfr_signbit, in case
-the implementation would change.
-------------------------------------------------------------------------
-r12628 | vlefevre | 2018-04-19 13:09:19 +0000 (Thu, 19 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/src/sqr.c
+	[src/div.c] Code simplification.
 
-[src/sqr.c] Minor code improvement.
-------------------------------------------------------------------------
-r12627 | vlefevre | 2018-04-19 12:56:07 +0000 (Thu, 19 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/src/sqr.c
+	[src/round_prec.c] MPFR_LIMB is actually useless now...
 
-[src/sqr.c] Code formatting.
-------------------------------------------------------------------------
-r12626 | vlefevre | 2018-04-19 12:55:10 +0000 (Thu, 19 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/src/sqr.c
+	[src/round_prec.c] Code style and potential correction for 16-bit limb.
 
-[src/sqr.c] Clarified a comment and slightly improved code.
-------------------------------------------------------------------------
-r12625 | vlefevre | 2018-04-19 12:37:50 +0000 (Thu, 19 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/src/sqr.c
+	[src/sqrt_ui.c] Moved MPFR_SAVE_EXPO_FREE after mpfr_sqrt because
+	the uu argument may be out of range and there is no guarantee that
+	mpfr_sqrt can handle that. Improved consistency; code refactoring.
 
-[src/sqr.c] Typo in a comment.
-------------------------------------------------------------------------
-r12623 | vlefevre | 2018-04-19 10:15:25 +0000 (Thu, 19 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tfma.c
+2018-09-04  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tfma.c] Added test_underflow5.
-------------------------------------------------------------------------
-r12622 | vlefevre | 2018-04-19 10:09:44 +0000 (Thu, 19 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tfma.c
+	[src/round_prec.c] fixed for 16-bit limb
+	[tests/tcan_round.c] improve error message
 
-[tests/tfma.c] Minor correction for test_underflow4.
-------------------------------------------------------------------------
-r12620 | vlefevre | 2018-04-19 07:01:09 +0000 (Thu, 19 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tfma.c
+	[src/sqrt_ui.c] fixed for 16-bit limb
 
-[tests/tfma.c] Added a comment.
-------------------------------------------------------------------------
-r12619 | vlefevre | 2018-04-18 23:24:57 +0000 (Wed, 18 Apr 2018) | 6 lines
-Changed paths:
-   M /trunk/tests/tfma.c
+2018-09-04  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tfma.c] Added test_underflow4. This allows to show that the
-bound MAX (MPFR_PREC (z), MPFR_PREC (s) + 1) in fma.c is optimal:
-  * If one subtract 1 from the 1st term MPFR_PREC (z), a failure
-    occurs in test_underflow4.
-  * If one subtract 1 from the 2nd term MPFR_PREC (s) + 1, a failure
-    occurs in test_underflow2.
-------------------------------------------------------------------------
-r12618 | vlefevre | 2018-04-18 15:19:33 +0000 (Wed, 18 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/configure.ac
+	[src/get_si.c] Make sure that a left shift is done on an unsigned type
+	(as a left shift on a 0 of signed type was not specified by C90).
 
-[configure.ac] For the ICC check, also test __INTEL_COMPILER.
-------------------------------------------------------------------------
-r12617 | vlefevre | 2018-04-18 15:15:25 +0000 (Wed, 18 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/configure.ac
+2018-09-04  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[configure.ac] Corrected comment for the ICC check (GCC is no longer
-disabled since r5720).
-------------------------------------------------------------------------
-r12616 | zimmerma | 2018-04-18 12:16:49 +0000 (Wed, 18 Apr 2018) | 3 lines
-Changed paths:
-   M /trunk/TODO
-   M /trunk/src/mpfr.h
+	[src/div.c] fix for 16-bit limbs, and added comments
 
-[src/mpfr.h] enable some code that now works with ICC (tested with ICC 14)
-[TODO] removed item
+	[src/rint.c] fix for 16-bit limb
 
-------------------------------------------------------------------------
-r12615 | vlefevre | 2018-04-18 11:58:30 +0000 (Wed, 18 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tversion.c
+	[tests/tdiv.c] more detailed error message
 
-[tests/tversion.c] Updated a comment about __ICC.
-------------------------------------------------------------------------
-r12614 | zimmerma | 2018-04-18 11:32:15 +0000 (Wed, 18 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/TODO
+	[src/get_si.c] forgot cast when long > limb
 
-[TODO] removed item that we won't implement
+	[src/get_ui.c] forgot cast when long > limb
 
-------------------------------------------------------------------------
-r12613 | zimmerma | 2018-04-18 11:25:44 +0000 (Wed, 18 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/TODO
+2018-09-03  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[TODO] removed done item (UBF)
+	[src/odd_p.c] fix for 16-bit limb
 
-------------------------------------------------------------------------
-r12612 | zimmerma | 2018-04-17 19:50:44 +0000 (Tue, 17 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/TODO
+	[tests/tbeta.c] exit at the first error
 
-[TODO] RNDF is done
+	[src/get_si.c] adapt to 16-bit limbs
+	[src/get_ui.c] likewise
 
-------------------------------------------------------------------------
-r12611 | zimmerma | 2018-04-17 19:46:45 +0000 (Tue, 17 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/TODO
+	[src/cmp_si.c] adapt for reduced exponent range for 16-bit limbs
+	[src/cmp_ui.c] likewise
 
-[TODO] removed an obsolete item
+2018-09-03  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12610 | zimmerma | 2018-04-17 19:42:39 +0000 (Tue, 17 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/TODO
+	[tests/mpfr-test.h] If MPFR_TESTS_ABORT is defined, replace exit(1) by
+	  abort(), thus with a core dump.
+	[doc/README.dev] Document MPFR_TESTS_ABORT.
 
-[TODO] log_ui is done
+2018-09-03  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r12609 | vlefevre | 2018-04-17 09:30:16 +0000 (Tue, 17 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[tests/tgeneric.c] revert 13107 (abort might lose some data in open files)
+	[src/mul_ui.c] fixed for 16-bit limb and reduced exponent range
 
-[tools/mpfrlint] Detect the use of mpfr_div_2exp and mpfr_mul_2exp.
-------------------------------------------------------------------------
-r12608 | vlefevre | 2018-04-17 01:57:39 +0000 (Tue, 17 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/reuse.c
-   M /trunk/tests/taway.c
+	[tests/tgeneric.c] replace exit(1) by abort() to allow debugging with gdb
 
-[tests/{reuse.c,taway.c}] Added mpfr_div_2ui and mpfr_mul_2ui.
-Note: si functions are not tested yet.
-------------------------------------------------------------------------
-r12607 | vlefevre | 2018-04-17 01:51:13 +0000 (Tue, 17 Apr 2018) | 4 lines
-Changed paths:
-   M /trunk/src/atan.c
-   M /trunk/src/bernoulli.c
-   M /trunk/src/const_euler.c
-   M /trunk/src/digamma.c
-   M /trunk/src/log_ui.c
-   M /trunk/src/sin_cos.c
-   M /trunk/src/zeta.c
-   M /trunk/tests/tacos.c
-   M /trunk/tests/tacosh.c
-   M /trunk/tests/tadd.c
-   M /trunk/tests/tadd1sp.c
-   M /trunk/tests/tasin.c
-   M /trunk/tests/tatan.c
-   M /trunk/tests/tcmp2.c
-   M /trunk/tests/tcmp_ui.c
-   M /trunk/tests/tconst_catalan.c
-   M /trunk/tests/tdiv.c
-   M /trunk/tests/texceptions.c
-   M /trunk/tests/tfits.c
-   M /trunk/tests/tgamma.c
-   M /trunk/tests/tget_d.c
-   M /trunk/tests/tget_d_2exp.c
-   M /trunk/tests/tget_f.c
-   M /trunk/tests/tget_flt.c
-   M /trunk/tests/tget_ld_2exp.c
-   M /trunk/tests/tget_set_d64.c
-   M /trunk/tests/tget_str.c
-   M /trunk/tests/tget_z.c
-   M /trunk/tests/tmul.c
-   M /trunk/tests/tpow.c
-   M /trunk/tests/tremquo.c
-   M /trunk/tests/trint.c
-   M /trunk/tests/tset_float128.c
-   M /trunk/tests/tsqr.c
-   M /trunk/tests/tsqrt.c
-   M /trunk/tests/tsub.c
-   M /trunk/tests/tsub1sp.c
+	[src/isinteger.c] fix for 16-bit limb
 
-Replaced mpfr_mul_2exp & mpfr_div_2exp by mpfr_mul_2ui & mpfr_div_2ui,
-respectively (for the tests, except in reuse.c and in taway.c).
-Note: As documented, mpfr_mul_2exp & mpfr_div_2exp are only kept for
-compatibility with MPF; mpfr_mul_2ui & mpfr_div_2ui are preferred.
-------------------------------------------------------------------------
-r12606 | vlefevre | 2018-04-16 15:07:16 +0000 (Mon, 16 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/TODO
+	[src/cmp_si.c] fixed error for 16-bit limb
+	[src/cmp_ui.c] adapted to 16-bit limb
 
-[TODO] + function to reduce the precision of a variable, with a
-ternary value in input, i.e. taking care of double rounding.
-------------------------------------------------------------------------
-r12605 | vlefevre | 2018-04-16 14:48:20 +0000 (Mon, 16 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tfma.c
+2018-09-01  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tfma.c] More tests for test_underflow2.
-------------------------------------------------------------------------
-r12604 | vlefevre | 2018-04-16 14:41:06 +0000 (Mon, 16 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tfma.c
+	[src/cmp_si.c] adapt for 16-bit limb
 
-[tests/tfma.c] Corrected r12603 for test_underflow2.
-------------------------------------------------------------------------
-r12603 | vlefevre | 2018-04-16 14:20:23 +0000 (Mon, 16 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tfma.c
+2018-08-31  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tfma.c] More tests for test_underflow2.
-------------------------------------------------------------------------
-r12602 | vlefevre | 2018-04-16 13:54:22 +0000 (Mon, 16 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/src/fma.c
+	[src/mul_ui.c] adapt for 16-bit limb
 
-[src/fma.c] Updated easy case of underflow.
-------------------------------------------------------------------------
-r12601 | vlefevre | 2018-04-16 11:43:32 +0000 (Mon, 16 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tfma.c
+2018-08-31  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tfma.c] Updated a comment for test_underflow2.
-------------------------------------------------------------------------
-r12600 | vlefevre | 2018-04-16 11:37:23 +0000 (Mon, 16 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tfma.c
+	[src/mpfr-mini-gmp.c] Fixed potential undefined behavior (when mp_limb_t
+	is defined as an unsigned short) with MPFR_LIMB_LSHIFT.
 
-[tests/tfma.c] In test_underflow2, also test different signs.
-------------------------------------------------------------------------
-r12599 | vlefevre | 2018-04-16 10:36:12 +0000 (Mon, 16 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests
+	[src/mpfr-impl.h] Define MPFR_LIMB_LSHIFT(x,c) macro to do a left shift,
+	making sure that the shifted argument is unsigned (needed due to the
+	integer promotion rules when mp_limb_t is defined as an unsigned short).
+	[src/add1.c] Fixed potential undefined behavior with MPFR_LIMB_LSHIFT.
 
-[tests] Updated svn:ignore property.
-------------------------------------------------------------------------
-r12598 | vlefevre | 2018-04-16 09:31:24 +0000 (Mon, 16 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/doc/README.dev
+	[src/mpfr-impl.h] Corrected a comment and added a warning.
 
-[doc/README.dev] "To make a release": check also with
--DMPFR_GROUP_STATIC_SIZE=0 to detect memory leaks.
-------------------------------------------------------------------------
-r12597 | vlefevre | 2018-04-16 09:09:00 +0000 (Mon, 16 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/src/fma.c
+2018-08-31  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/fma.c] Forgot a MPFR_GROUP_CLEAR.
-------------------------------------------------------------------------
-r12596 | vlefevre | 2018-04-16 09:05:01 +0000 (Mon, 16 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/src/fma.c
+	[src/mpfr-impl.h] fix MPFR_INT_CEIL_LOG2 for 16-bit limb
 
-[src/fma.c] Simplified the underflow case by using UBF in the
-difficult cases, resolving the remaining FIXME's.
-------------------------------------------------------------------------
-r12595 | vlefevre | 2018-04-13 14:44:41 +0000 (Fri, 13 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tfma.c
+	[src/set_si_2exp.c] support 16-bit limbs
 
-[tests/tfma.c] More tests for test_overflow3 by adding loops on j and k.
-------------------------------------------------------------------------
-r12594 | vlefevre | 2018-04-13 13:43:49 +0000 (Fri, 13 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tfma.c
+2018-08-31  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tfma.c] Extended test_overflow3 to reversed signs.
-------------------------------------------------------------------------
-r12593 | vlefevre | 2018-04-13 13:29:31 +0000 (Fri, 13 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tfma.c
+	[src/set_ui_2exp.c] Code formatting. Removed a FIXME (done in r13078).
 
-[tests/tfma.c] Do all the overflow/underflow tests in exponent ranges
-[-1024,1024], [MPFR_EMIN_MIN,MPFR_EMAX_MAX], and the default one.
-------------------------------------------------------------------------
-r12592 | vlefevre | 2018-04-13 10:17:33 +0000 (Fri, 13 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-sassert.h
+2018-08-31  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/mpfr-sassert.h] Added a comment.
-------------------------------------------------------------------------
-r12591 | vlefevre | 2018-04-12 19:04:45 +0000 (Thu, 12 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tfma.c
+	[src/mpfr-gmp.h] missing cast
 
-[tests/tfma.c] Forgot a cast for C++ compatibility.
-------------------------------------------------------------------------
-r12590 | vlefevre | 2018-04-12 14:50:25 +0000 (Thu, 12 Apr 2018) | 4 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	removed TEST_FLAGS stuff
 
-[src/mpfr-impl.h] Reverted r12588: there should be no alignment issues
-with UBF, since an UBF (__mpfr_ubf_struct) is sometimes regarded as a
-MPFR number (__mpfr_struct) but not the opposite (or this is just back
-to __mpfr_ubf_struct).
-------------------------------------------------------------------------
-r12589 | vlefevre | 2018-04-12 14:17:55 +0000 (Thu, 12 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/src/fma.c
+2018-08-31  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/fma.c] Simplified the difficult part of the overflow case by
-using UBF (this also fixes corner cases in huge precision).
-------------------------------------------------------------------------
-r12588 | vlefevre | 2018-04-12 13:46:10 +0000 (Thu, 12 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[doc/README.dev] More correction about the MPFR_TESTS_TIMEOUT macro.
 
-[src/mpfr-impl.h] Added a note about alignment constraints for UBF.
-------------------------------------------------------------------------
-r12587 | vlefevre | 2018-04-12 13:34:16 +0000 (Thu, 12 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/src/fma.c
-   M /trunk/tests/tfma.c
+	[doc/README.dev] Clarification about MPFR_TESTS_TIMEOUT.
 
-[src/fma.c] Fixed sign related bug in overflow case.
-[tests/tfma.c] Added test_overflow5 test for this bug.
-------------------------------------------------------------------------
-r12586 | vlefevre | 2018-04-12 12:52:20 +0000 (Thu, 12 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tfma.c
+	[doc/README.dev] Reverted r13090: this was already mentioned at the
+	right place (do not mix up macros and environment variables).
 
-[tests/tfma.c] In test_overflow4, also test different signs.
-------------------------------------------------------------------------
-r12585 | vlefevre | 2018-04-12 10:27:59 +0000 (Thu, 12 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/src/fma.c
+2018-08-31  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/fma.c] Correction for the FIXME from r12403 concerning r12396.
-The test added in tests/tfma.c r12584 no longer fails.
-------------------------------------------------------------------------
-r12584 | vlefevre | 2018-04-12 10:21:00 +0000 (Thu, 12 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tfma.c
+	[src/mpfr-gmp.h] added missing udiv_qrnnd for 16-bit limb
+	[src/mul.c] fixed for 16-bit limb
+	[src/ui_div.c] likewise
 
-[tests/tfma.c] Added a test that fails. It corresponds to the FIXME
-in src/fma.c about the test on MPFR_GET_EXP (u) - MPFR_GET_EXP (z).
-------------------------------------------------------------------------
-r12583 | vlefevre | 2018-04-12 08:29:47 +0000 (Thu, 12 Apr 2018) | 4 lines
-Changed paths:
-   M /trunk/src/fma.c
+	[README.dev] mention that MPFR_TESTS_TIMEOUT only works with --enable-tests-timeout
 
-[src/fma.c] Removed a redundant test since the second condition of
-the && expression implies the first one.
-Note: This test came from the time when the precision type was unsigned,
-in order to make sure that the result of the subtraction was positive.
-------------------------------------------------------------------------
-r12575 | vlefevre | 2018-04-11 12:40:33 +0000 (Wed, 11 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tversion.c
+2018-08-31  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tversion.c] Output "Generic ABI code" info (MPFR_GENERIC_ABI).
-------------------------------------------------------------------------
-r12574 | vlefevre | 2018-04-11 09:12:00 +0000 (Wed, 11 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/src/strtofr.c
+	[src/mpfr-impl.h] Fix for MS Windows.
 
-[src/strtofr.c] English usage in a comment.
-------------------------------------------------------------------------
-r12573 | zimmerma | 2018-04-11 06:51:30 +0000 (Wed, 11 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+	[src/mpfr-impl.h] Make sure that MPFR_LONG_WITHIN_LIMB is defined if
+	__GMP_SHORT_LIMB is not defined, as required by the current code.
 
-[src/strtofr.c] fixed bug in corner cases
+	[src/mpfr-gmp.h] Untabified.
 
-------------------------------------------------------------------------
-r12572 | vlefevre | 2018-04-10 15:51:23 +0000 (Tue, 10 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/src/strtofr.c
+2018-08-31  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/strtofr.c] Reverted r12569: this is wrong with a 32-bit ABI.
-------------------------------------------------------------------------
-r12571 | vlefevre | 2018-04-10 13:12:40 +0000 (Tue, 10 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/src/strtofr.c
+	[src/mpfr-impl.h] fixed wrong #ifdef
 
-[src/strtofr.c] Added a FIXME.
-------------------------------------------------------------------------
-r12570 | zimmerma | 2018-04-10 12:34:44 +0000 (Tue, 10 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+	[src/mpfr-mini-gmp.c] fix for 16-bit limb
 
-[src/strtofr.c] added more comments
+	[src/add1.c] fix for 16-bit limb
+	[tests/tadd.c] more output in case of error
 
-------------------------------------------------------------------------
-r12569 | zimmerma | 2018-04-10 08:31:31 +0000 (Tue, 10 Apr 2018) | 3 lines
-Changed paths:
-   M /trunk/src/strtofr.c
-   M /trunk/tests/tstrtofr.c
+	[src/add1.c] fixed compiler warning
 
-[src/strtofr.c] replaced dead code by an assert
-[tests/tstrtofr.c] fixed bug20170308 and added coverage test
+	[src/mpfr-gmp.h] removed leftover debug statement
+	[src/mpfr-impl.h] added MPFR_LIMB macro
+	[src/sub1sp.c] fix for 16-bit limb
 
-------------------------------------------------------------------------
-r12568 | zimmerma | 2018-04-09 14:49:32 +0000 (Mon, 09 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+2018-08-30  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/strtofr.c] removed dead code (and added explanation)
+	[src/mpfr-gmp.h] more changes for 16-bit limb
+	[src/mpfr-impl.h] mpfr-longlong.h should not be used for limb < long
 
-------------------------------------------------------------------------
-r12567 | zimmerma | 2018-04-09 08:02:45 +0000 (Mon, 09 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+	[mpfr-gmp.h] added comment
 
-[src/strtofr.c] completed a comment
+	[mpfr-mini-gmp.c] fix for 16-bit limb
 
-------------------------------------------------------------------------
-r12566 | zimmerma | 2018-04-06 16:19:29 +0000 (Fri, 06 Apr 2018) | 3 lines
-Changed paths:
-   M /trunk/src/strtofr.c
-   M /trunk/tests/tstrtofr.c
+	[src/set_ui_2exp.c] fix for 16-bit limb
 
-[src/strtofr.c] added comment
-[tests/tstrtofr.c] improve coverage
+2018-08-29  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r12565 | vlefevre | 2018-04-06 15:21:45 +0000 (Fri, 06 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/src/round_prec.c
+	[src/round_p.c] gmp_fprintf is not defined in mini-gmp
 
-[src/round_prec.c] Replaced an incorrect comment by an assertion.
-------------------------------------------------------------------------
-r12564 | vlefevre | 2018-04-06 15:12:54 +0000 (Fri, 06 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/src/round_raw_generic.c
+	[tests/tadd.c] fix for 16-bit limb
 
-[src/round_raw_generic.c] Check validity of flag.
-------------------------------------------------------------------------
-r12563 | zimmerma | 2018-04-06 15:11:13 +0000 (Fri, 06 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/NEWS
+	[src/add1.c] revert previous commit since it does not remove the warning:
+	add1.c: In function ‘mpfr_add1’:
+	add1.c:407:30: warning: ‘<<’ in boolean context, did you mean ‘<’ ? [-Wint-in-bool-context]
+	           if (difs && (cprev << (GMP_NUMB_BITS - difs)))
+	                       ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
 
-[NEWS] now 98.2% of test coverage
+	[src/add1.c] fixed compiler warning (with gcc 8.2.0)
 
-------------------------------------------------------------------------
-r12562 | vlefevre | 2018-04-06 15:07:51 +0000 (Fri, 06 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests/Makefile.am
+2018-08-29  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/Makefile.am] Tests in lexicographic order.
-------------------------------------------------------------------------
-r12561 | zimmerma | 2018-04-06 15:02:12 +0000 (Fri, 06 Apr 2018) | 4 lines
-Changed paths:
-   M /trunk/src/round_prec.c
-   M /trunk/src/round_raw_generic.c
-   M /trunk/tests/tcan_round.c
+	[tests/tdiv_ui.c] Added a comment about a spurious failure
+	with MPFR_RNDF if RND_LOOP_NO_RNDF were not used.
 
-[src/round_prec.c] added comments
-[src/round_raw_generic.c] removed dead code
-[tests/tcan_round.c] improve coverage
+2018-08-28  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12560 | zimmerma | 2018-04-06 14:46:04 +0000 (Fri, 06 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/Makefile.am
-   A /trunk/tests/tprec_round.c (from /trunk/tests/tround_prec.c:12559)
-   D /trunk/tests/tround_prec.c
+	[tests/tsinh.c] Fixed test introduced in r13047.
 
-renamed tround_prec.c to tprec_round.c
+	[src/{add_ui.c,sub_ui.c,ui_sub.c}] Fixed the bug introduced in r13066
+	for the cases where MPFR_LONG_WITHIN_LIMB is defined (make sure that a
+	significand allocated in the stack is not freed before the associated
+	mpfr_t object).
 
-------------------------------------------------------------------------
-r12559 | zimmerma | 2018-04-06 13:43:27 +0000 (Fri, 06 Apr 2018) | 3 lines
-Changed paths:
-   M /trunk/src/round_prec.c
+	[src/div_ui.c] Extend the exponent range in the case where
+	MPFR_LONG_WITHIN_LIMB is not defined, resolving the FIXME.
+	Note: a test was already there in tdiv_ui via the generic tests.
 
-[src/round_prec.c] removed some dead code (if rnd1 = rnd2 and the case
-		   rnd2 = RNDN was already treated, we cannot have rnd1 = RNDN)
+	[tests/tdiv_ui.c] Disabled rnd=MPFR_RNDF in a loop as this now fails.
 
-------------------------------------------------------------------------
-r12558 | vlefevre | 2018-04-06 10:02:31 +0000 (Fri, 06 Apr 2018) | 5 lines
-Changed paths:
-   M /trunk/tests/tpow.c
+	[tests/tdiv_ui.c] Corrected an error message.
 
-[tests/tpow.c] Fixed a test:
-  * For this test, unsigned long and mpfr_exp_t must both have at least
-    64 bits.
-  * Use a hardcoded emax, otherwise the test could fail for mpfr_exp_t
-    larger than 64 bits (one would not have an overflow as expected).
-------------------------------------------------------------------------
-r12557 | vlefevre | 2018-04-06 09:43:31 +0000 (Fri, 06 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/src/pow.c
+	[src/div.c] Avoid an infinite recursion when MPFR_LONG_WITHIN_LIMB
+	is not defined (mpfr_div calls mpfr_div_ui, which calls mpfr_div).
+	[src/div_ui.c] Made the preprocessor test on MPFR_LONG_WITHIN_LIMB
+	consistent with the ones in the other .c files.
 
-[src/pow.c] Fixed the code in case the size of the mpfr_exp_t type
-would be larger than 256 bits. This is also semantically better.
-------------------------------------------------------------------------
-r12556 | vlefevre | 2018-04-06 09:40:57 +0000 (Fri, 06 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
-   M /trunk/tests/mpfr-test.h
+	[src/{add_ui.c,sub_ui.c,ui_sub.c}] Fixed the cases where
+	MPFR_LONG_WITHIN_LIMB is not defined (regression in the
+	latest changes). Also avoid unused variables.
 
-Moved the MAX, MIN and ABS macros from tests/mpfr-test.h to
-src/mpfr-impl.h (they can be useful...).
-------------------------------------------------------------------------
-r12555 | vlefevre | 2018-04-06 09:20:56 +0000 (Fri, 06 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tpow.c
+	Removed trailing whitespace.
 
-[tests/tpow.c] More tests for (-2)^(2^i + 1), not just with i = 256.
-------------------------------------------------------------------------
-r12554 | zimmerma | 2018-04-06 08:57:26 +0000 (Fri, 06 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tpow.c
+	[src/ui_sub.c] Extend the exponent range early enough.
 
-[tests/tpow.c] modified a test for better coverage
+	[src/add_ui.c] Extend the exponent range early enough.
 
-------------------------------------------------------------------------
-r12553 | vlefevre | 2018-04-06 08:47:09 +0000 (Fri, 06 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tpow.c
+	[src/sub_ui.c] Extend the exponent range early enough.
 
-[tests/tpow.c] Corrected a comment (again).
-------------------------------------------------------------------------
-r12552 | vlefevre | 2018-04-06 08:45:56 +0000 (Fri, 06 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tpow.c
+2018-08-28  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tpow.c] Corrected a comment.
-------------------------------------------------------------------------
-r12551 | zimmerma | 2018-04-06 08:11:21 +0000 (Fri, 06 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/src/pow.c
+	[src/get_ld.c] adapt to GMP_NUMB_BITS=16
 
-[src/pow.c] simplified case x=2^b and y < 0
+2018-08-28  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12550 | vlefevre | 2018-04-05 14:29:38 +0000 (Thu, 05 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/src/pow.c
+	[src/div_ui.c] Added a FIXME.
 
-[src/pow.c] Updated comments.
-------------------------------------------------------------------------
-r12549 | vlefevre | 2018-04-05 14:15:16 +0000 (Thu, 05 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/src/pow.c
+2018-08-28  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/pow.c] Reverted r12541 (which yielded a failure in tpow_all),
-re-indented, and added a comment concerning the failing case.
-------------------------------------------------------------------------
-r12548 | zimmerma | 2018-04-05 07:28:05 +0000 (Thu, 05 Apr 2018) | 3 lines
-Changed paths:
-   M /trunk/src/round_prec.c
-   M /trunk/tests/tcan_round.c
+	[src/set_ld.c] adapt to GMP_NUMB_BITS=16
 
-[src/round_prec.c] fixed a bug (to be reviewed)
-[tests/tcan_round.c] added coverage tests
+	[src/set_d.c] adapt to GMP_NUMB_BITS=16 (not yet tested)
 
-------------------------------------------------------------------------
-r12547 | zimmerma | 2018-04-05 06:32:30 +0000 (Thu, 05 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/ttan.c
+	[src/exp_2.c] removed a static assertion (duplicate with MPFR_LONG_WITHIN_LIMB)
 
-[tests/ttan.c] improve coverage (and also of round_near_x)
+	[src/init2.c] split a static assertion in two
 
-------------------------------------------------------------------------
-r12546 | zimmerma | 2018-04-05 06:01:20 +0000 (Thu, 05 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/src/pow.c
+	[src/mpfr-gmp.h] allow GMP_NUMB_BITS=16 (experimental, do not use!)
 
-[src/pow.c] fixed typo
+	[src/set_d.c] make it easier to extend to GMP_NUMB_BITS<32
 
-------------------------------------------------------------------------
-r12545 | vlefevre | 2018-04-04 16:47:10 +0000 (Wed, 04 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/NEWS
+	[configure.ac] read GMP_NUMB_BITS from mini-gmp.h when available
+		       (otherwise assume mp_limb_t == unsigned long)
 
-[NEWS] Coverage is specific to x86_64 due to the various #if.
-------------------------------------------------------------------------
-r12544 | vlefevre | 2018-04-04 16:44:54 +0000 (Wed, 04 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/src/pow.c
+	[src/ui_sub.c] make code work for limb < long
 
-[src/pow.c] Corrected indentation.
-------------------------------------------------------------------------
-r12543 | zimmerma | 2018-04-04 16:34:31 +0000 (Wed, 04 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/NEWS
+	[src/sub_ui.c] make code work for limb < long
 
-[NEWS] coverage is now 98.1%
+	[src/div_ui.c] make code work for limb < long
 
-------------------------------------------------------------------------
-r12542 | zimmerma | 2018-04-04 16:31:38 +0000 (Wed, 04 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/src/pow.c
+	[src/add_ui.c] make code work for limb < long
 
-[src/pow.c] added a comment
+	[mini-gmp] update
 
-------------------------------------------------------------------------
-r12541 | zimmerma | 2018-04-04 16:21:33 +0000 (Wed, 04 Apr 2018) | 3 lines
-Changed paths:
-   M /trunk/src/pow.c
-   M /trunk/tests/tpow.c
+	[tests/tsinh.c] improve coverage
 
-[src/pow.c] removed some dead code (with comment explaining why)
-[tests/tpow.c] added a test
+	[tests/tsubnormal.c] improve coverage
 
-------------------------------------------------------------------------
-r12540 | zimmerma | 2018-04-04 15:31:32 +0000 (Wed, 04 Apr 2018) | 3 lines
-Changed paths:
-   M /trunk/src/pow.c
-   M /trunk/tests/tpow.c
+2018-08-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/pow.c] simplify code for prec=1
-[tests/tpow.c] added tests for prec=1
+	[src/sub1sp.c] Added a FIXME about cp vs tp.
 
-------------------------------------------------------------------------
-r12539 | zimmerma | 2018-04-03 15:28:21 +0000 (Tue, 03 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mparam_h.in
+2018-08-27  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/mparam_h.in] added macros for Microsoft compiler
+	[tests/tmul.c] improve coverage
 
-------------------------------------------------------------------------
-r12538 | vlefevre | 2018-04-03 13:25:29 +0000 (Tue, 03 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tools/check_mparam.c
+2018-08-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tools/check_mparam.c] Added a copyright notice.
-------------------------------------------------------------------------
-r12537 | vlefevre | 2018-04-03 13:20:13 +0000 (Tue, 03 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/Makefile.am
+	[src/sub1sp.c] Avoid bad usage of tp in the generic code:
+	  * In the case d == 1, two branches were inconsistent: tp not defined
+	    at the same level, with one shadowing the other one.
+	  * In the case 2 <= d < p, tp was reused with a different meanings;
+	    renamed the second one to cp, as this is MPFR_MANT(c).
 
-[Makefile.am] Added tools/check_mparam.c and tools/ck-mparam
-to EXTRA_DIST since tools/ck-mparam is now run in dist-hook.
-------------------------------------------------------------------------
-r12536 | vlefevre | 2018-04-03 13:09:08 +0000 (Tue, 03 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tests/Makefile.am
+	[src/sub1sp.c] Re-added/updated FIXME about the long backward goto's.
 
-[tests/Makefile.am] Do not output a useless "PASS ..." line at the end.
-------------------------------------------------------------------------
-r12535 | vlefevre | 2018-04-03 13:07:14 +0000 (Tue, 03 Apr 2018) | 3 lines
-Changed paths:
-   M /trunk/tests/Makefile.am
+	[src/{add1sp.c,mul.c}] Updated the condition to use the formally
+	extracted code and added a corresponding comment.
 
-[tests/Makefile.am] Update of the "check" rule:
-  * Output svnversion info when applicable.
-  * Do not echo "cat tversion.log 2> /dev/null || true".
-------------------------------------------------------------------------
-r12534 | vlefevre | 2018-04-03 11:08:38 +0000 (Tue, 03 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/Makefile.am
+2018-08-27  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[Makefile.am] Added missing comments for dist-hook.
-------------------------------------------------------------------------
-r12533 | vlefevre | 2018-04-03 11:05:23 +0000 (Tue, 03 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/Makefile.am
+	[src/const_log2.c] further improve coverage
 
-[Makefile.am] Run ck-mparam in dist-hook (for "make dist").
-------------------------------------------------------------------------
-r12532 | vlefevre | 2018-04-03 11:02:41 +0000 (Tue, 03 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/tools/ck-mparam
+2018-08-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tools/ck-mparam] Commented out the old gcc-specific test since the
-new one is strictly more powerful. No longer depend on gcc.
-------------------------------------------------------------------------
-r12531 | vlefevre | 2018-04-03 10:57:37 +0000 (Tue, 03 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/tools/ck-mparam
+	[src/cache.c] Improved variable names (→ dprec for the precision of dest
+	and cprec for the precision of the cache) and added/updated comments.
 
-[tools/ck-mparam] Also check the mparam.h files with check_mparam.c.
-------------------------------------------------------------------------
-r12530 | vlefevre | 2018-04-03 10:48:34 +0000 (Tue, 03 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/tools/check_mparam.c
+	[src/cache.c] Reverted r13036 as what matters is the target precision,
+	which can be very small.
 
-[tools/check_mparam.c] C89 compatibility. Return an error code
-(useful for scripts).
-------------------------------------------------------------------------
-r12529 | vlefevre | 2018-04-03 10:45:20 +0000 (Tue, 03 Apr 2018) | 2 lines
-Changed paths:
-   M /trunk/tools/check_mparam.c
+2018-08-27  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tools/check_mparam.c] A pathname of the mparam.h file can now be
-provided with -DMPARAM='"..."' when compiling.
-------------------------------------------------------------------------
-r12528 | vlefevre | 2018-04-03 10:38:15 +0000 (Tue, 03 Apr 2018) | 3 lines
-Changed paths:
-   D /misc/check_mparam.c
-   A /trunk/tools/check_mparam.c (from /misc/check_mparam.c:12527)
+	[src/add1sp1_extracted.c] replaced extracted code by new for MPFR_PREC_BITS=64
+	[src/mul_1_extracted.c]   likewise
+	[src/add1sp.c] changed condition to use the formally extracted code
+	[src/mul.c]    likewise (but code is still not yet activated here)
 
-Moved misc/check_mparam.c into trunk/tools: it will be useful for
-"make dist" in order to make sure that all mparam.h files are OK
-before a release.
-------------------------------------------------------------------------
-r12527 | vlefevre | 2018-04-03 10:31:30 +0000 (Tue, 03 Apr 2018) | 3 lines
-Changed paths:
-   M /trunk/src/mulders.c
+2018-08-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mulders.c] Re-enable the change done in r12382. This is allowed
-after the fix in generic/mparam.h r12525 (this file was hand written
-and did not satisfy the current constraints).
-------------------------------------------------------------------------
-r12525 | zimmerma | 2018-04-03 09:39:30 +0000 (Tue, 03 Apr 2018) | 3 lines
-Changed paths:
-   M /trunk/src/generic/mparam.h
+	[src/cache.c] Comment: In practice, the "overflow handler" of
+	MPFR_RNDRAW_GEN should never be called.
 
-[generic/mparam.h] ensure divhigh_ktab[n] is 0 or < n-1, as now required
-		   since commit r12382
+2018-08-27  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r12524 | vlefevre | 2018-04-02 23:22:02 +0000 (Mon, 02 Apr 2018) | 1 line
-Changed paths:
-   M /trunk/src/mulders.c
+	[src/const_log2.c] avoid hard-coded values
+	[tests/tconst_log2.c] improve coverage
 
-[src/mulders.c] Code style / indentation. Added a comment.
-------------------------------------------------------------------------
-r12523 | vlefevre | 2018-04-02 23:04:08 +0000 (Mon, 02 Apr 2018) | 3 lines
-Changed paths:
-   M /trunk/src/mulders.c
+2018-08-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mulders.c] Reverting r12382 because divhigh_ktab[n] == n can
-happen. Note: this probably lacks documentation; moreover, testing
-that these tables satisfy the requirements would be useful.
-------------------------------------------------------------------------
-r12522 | vlefevre | 2018-03-31 01:07:26 +0000 (Sat, 31 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/src/inp_str.c
+	[src/cache.c] Replaced a test + mpfr_overflow by a MPFR_ASSERTD since
+	the cached value (in extended exponent range) cannot overflow.
 
-[src/inp_str.c] Handle size_t overflow, empty string (after skipping
-spaces), and I/O errors (as opposed to end-of-file).
-------------------------------------------------------------------------
-r12521 | zimmerma | 2018-03-30 12:28:40 +0000 (Fri, 30 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/src/inp_str.c
+2018-08-27  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/inp_str.c] disallow stream=NULL (cf r12520)
+	[src/const_euler.c] better choice of (initial) working precision
+	[tests/tconst_euler.c] added coverage test
 
-------------------------------------------------------------------------
-r12520 | zimmerma | 2018-03-30 09:16:17 +0000 (Fri, 30 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/src/out_str.c
+2018-08-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/out_str.c] the behavior on a null stream is unspecified (cf r12519)
+	[tests/tversion.c] Update concerning the shared cache, to be consistent
+	with the other mpfr_buildopt_*_p features:
+	  * check that mpfr_buildopt_sharedcache_p() and MPFR_WANT_SHARED_CACHE
+	    match;
+	  * for the output of the value, test mpfr_buildopt_sharedcache_p()
+	    instead of the macro.
 
-------------------------------------------------------------------------
-r12519 | vlefevre | 2018-03-30 08:51:22 +0000 (Fri, 30 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tout_str.c
+2018-08-27  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-Reverted r12516: the behavior on a null stream is unspecified.
-------------------------------------------------------------------------
-r12518 | zimmerma | 2018-03-30 07:09:45 +0000 (Fri, 30 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tpow.c
+	[tests/tconst_catalan.c] improve coverage
 
-[tests/tpow.c] restrict a test to 64-bit exponent
+	[tests/tbuildopt.c] added check of mpfr_buildopt_sharedcache_p()
 
-------------------------------------------------------------------------
-r12517 | zimmerma | 2018-03-29 15:42:09 +0000 (Thu, 29 Mar 2018) | 3 lines
-Changed paths:
-   M /trunk/src/pow.c
-   M /trunk/tests/tpow.c
+2018-08-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/pow.c] added comment
-[tests/tpow.c] improve coverage
+	Removed trailing whitespace.
 
-------------------------------------------------------------------------
-r12516 | zimmerma | 2018-03-29 14:18:14 +0000 (Thu, 29 Mar 2018) | 5 lines
-Changed paths:
-   M /trunk/tests/tout_str.c
+2018-08-27  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tout_str.c] improve coverage (I don't know how to avoid printing to
-		   stdout, but since "make check" no longer shows the test
-		   outputs, this should be fine). However I don't know how
-		   to do the same for mpfr_inp_str...
+	[src/sub1sp.c] fixed even rule for p=1
 
-------------------------------------------------------------------------
-r12515 | zimmerma | 2018-03-29 13:24:17 +0000 (Thu, 29 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tconst_pi.c
+2018-08-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tconst_pi.c] forgotten line in commit 12512
+	[src/mpfr-impl.h] Mention WG14/N2270 (proposed maybe_unused attribute),
+	which could be useful to avoid MPFR_DBGRES.
 
-------------------------------------------------------------------------
-r12514 | zimmerma | 2018-03-29 13:17:23 +0000 (Thu, 29 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/src/grandom.c
-   M /trunk/tests/tgrandom.c
+2018-08-24  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tgrandom.c] improve coverage
+	[src/sub1sp.c] finished simplifying the mpfr_sub1sp code
 
-------------------------------------------------------------------------
-r12513 | zimmerma | 2018-03-29 12:54:34 +0000 (Thu, 29 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/src/grandom.c
+	[src/sub1sp.c] simplified the computation of sbb
 
-[src/grandom.c] improve coverage, and solved a FIXME
+	[src/sub1sp.c] full rewrite of mpfr_sub1sp (work in progress)
 
-------------------------------------------------------------------------
-r12512 | zimmerma | 2018-03-29 12:20:33 +0000 (Thu, 29 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tconst_pi.c
+2018-08-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tconst_pi.c] improve coverage of mpfr_free_cache2
+	[tests/tversion.c] Output "Enable formally proven code" info.
 
-------------------------------------------------------------------------
-r12511 | vlefevre | 2018-03-29 12:01:38 +0000 (Thu, 29 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/src/fpif.c
+	[doc/README.dev] Describe MPFR_WANT_PROVEN_CODE.
 
-[src/fpif.c] Reverted another incorrect change done in r12509.
-------------------------------------------------------------------------
-r12510 | vlefevre | 2018-03-29 11:59:48 +0000 (Thu, 29 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/src/fpif.c
+	Renamed WANT_PROVEN_CODE to MPFR_WANT_PROVEN_CODE for consistency with
+	the other WANT macros (and to avoid potential clashes with foreign .h
+	files).
 
-[src/fpif.c] Reverted an incorrect change done in r12509.
-------------------------------------------------------------------------
-r12509 | zimmerma | 2018-03-29 10:22:38 +0000 (Thu, 29 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/src/fpif.c
+	[tools/mpfrlint] For some tests, ignore extracted files (proven code).
 
-[src/fpif.c] simplify code and improve coverage to 100%
+2018-08-23  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r12508 | zimmerma | 2018-03-29 10:04:50 +0000 (Thu, 29 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/src/fpif.c
+	the mpfr_mul_1 extracted code is not proven yet
 
-[src/fpif.c] removed dead code and simplify code
+2018-08-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12507 | zimmerma | 2018-03-29 09:38:22 +0000 (Thu, 29 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tfpif.c
+	For --enable-formally-proven-code, instead of requiring a check of the
+	type sizes in configure, just enable the proven code only if the types
+	have the sizes expected by this code.
+	  * configure.ac: removed the FIXME.
+	  * src/add1sp.c, src/mul.c: updated the #if test that enables the
+	    proven code (add1sp1_extracted.c and mul_1_extracted.c).
 
-[tests/tfpif.c] improve coverage
+	[configure.ac] Updated FIXME for --enable-formally-proven-code
+	(many failures with -m32 due to assumptions on type sizes).
 
-------------------------------------------------------------------------
-r12506 | zimmerma | 2018-03-29 08:28:14 +0000 (Thu, 29 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/src/fpif.c
-   M /trunk/tests/tfpif.c
+	[configure.ac] Added a FIXME for --enable-formally-proven-code.
 
-[tests/tfpif.c] improve coverage
+	[configure.ac] Updated message for --enable-formally-proven-code.
 
-------------------------------------------------------------------------
-r12505 | vlefevre | 2018-03-29 08:09:58 +0000 (Thu, 29 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tfpif.c
+2018-08-23  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tfpif.c] Really fixed the badData test, completing r12504.
-------------------------------------------------------------------------
-r12504 | vlefevre | 2018-03-29 08:08:58 +0000 (Thu, 29 Mar 2018) | 3 lines
-Changed paths:
-   M /trunk/tests/tfpif.c
+	added configure option --enable-formally-proven-code and corresponding code
 
-[tests/tfpif.c] Fixed a test: for the huge-precision badData case,
-make sure that the data are valid so that we really check that the
-precision does not fit (and not a read error).
-------------------------------------------------------------------------
-r12503 | vlefevre | 2018-03-29 07:26:11 +0000 (Thu, 29 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tfpif.c
+2018-08-22  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tfpif.c] Correction just in case MPFR_PREC_BITS > 64.
-------------------------------------------------------------------------
-r12502 | vlefevre | 2018-03-29 00:02:43 +0000 (Thu, 29 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tgmpop.c
+	[doc/algorithms.tex] Ulp calculus: swap Rule 4 and Rule 5.
 
-Removed trailing whitespace.
-------------------------------------------------------------------------
-r12501 | vlefevre | 2018-03-28 23:57:49 +0000 (Wed, 28 Mar 2018) | 5 lines
-Changed paths:
-   M /trunk/src/fpif.c
+	[doc/algorithms.tex] Ulp calculus Rule 4: make the proof much simpler.
 
-[src/fpif.c]
-  * Replaced an incorrect comment from r12500 by a correct assertion.
-  * Fixed a theoretical bug coming from this incorrect comment.
-  * Added a MPFR_ASSERTN assertion to double-check correctness.
-  * Added a comment explaining a ... >= 0x80 test.
-------------------------------------------------------------------------
-r12500 | zimmerma | 2018-03-28 10:35:33 +0000 (Wed, 28 Mar 2018) | 3 lines
-Changed paths:
-   M /trunk/src/fpif.c
-   M /trunk/tests/tfpif.c
+	[doc/algorithms.tex] Error calculus: implicitly assume x ≠ 0 in ulp.
 
-[src/fpif.c] removed dead code
-[tests/tfpif.c] improve coverage
+	[src/sub1sp.c] Updated a FIXME.
 
-------------------------------------------------------------------------
-r12499 | zimmerma | 2018-03-28 09:44:59 +0000 (Wed, 28 Mar 2018) | 3 lines
-Changed paths:
-   M /trunk/src/gmp_op.c
-   M /trunk/tests/tgmpop.c
+	[src/sub1sp.c] Removed a comment that brings nothing and is not
+	really correct (this is not a "flag").
 
-[src/gmp_op.c] fixed bug in mpfr_cmp_q for den(q)=0
-[tests/tgmpop.c] improve coverage
+2018-08-22  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r12498 | vlefevre | 2018-03-24 01:52:02 +0000 (Sat, 24 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tests/mpfr-test.h] added macro TEST_FLAGS (debug use only)
 
-[doc/mpfr.texi] Typographic correction (texinfo rule).
-------------------------------------------------------------------------
-r12497 | vlefevre | 2018-03-24 01:48:38 +0000 (Sat, 24 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/tools/mpfrlint
+2018-08-22  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tools/mpfrlint] For codespell, skip mpfr.t2p (directory created
-in doc by "make pdf").
-------------------------------------------------------------------------
-r12496 | vlefevre | 2018-03-24 01:45:59 +0000 (Sat, 24 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/src/total_order.c
+	[tests/tversion.c] Portability corrections related to the use of the
+	preprocessor / code robustness.
 
-[src/total_order.c] Simplified the code (shorter code).
-------------------------------------------------------------------------
-r12495 | vlefevre | 2018-03-24 01:34:17 +0000 (Sat, 24 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/ttotal_order.c
+2018-08-21  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/ttotal_order.c] Rewrote the tests to test every combination
-of classes of values.
-------------------------------------------------------------------------
-r12494 | vlefevre | 2018-03-24 00:28:27 +0000 (Sat, 24 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/tests/Makefile.am
-   D /trunk/tests/total_order.c
-   A /trunk/tests/ttotal_order.c (from /trunk/tests/total_order.c:12493)
+	[src/sub1sp.c] revert mpfr_sub1sp to the version of revision 12241
 
-[tests] Renamed total_order.c to ttotal_order.c.
-------------------------------------------------------------------------
-r12493 | vlefevre | 2018-03-23 18:17:37 +0000 (Fri, 23 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/src/total_order.c
+	[src/sub1sp.c] fixed bug20180813
 
-[src/total_order.c] Suggest to test the sign bit first.
-------------------------------------------------------------------------
-r12492 | vlefevre | 2018-03-23 18:15:22 +0000 (Fri, 23 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tests/tsub1sp.c] improved comment about bug20180813()
 
-[doc/mpfr.texi] Added mpfr_total_order in "Added Functions".
-------------------------------------------------------------------------
-r12491 | vlefevre | 2018-03-23 18:14:05 +0000 (Fri, 23 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2018-08-21  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] Improved mpfr_total_order description.
-------------------------------------------------------------------------
-r12490 | zimmerma | 2018-03-23 17:42:06 +0000 (Fri, 23 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/TODO
+	[doc/mpfr.texi] Updated the month.
 
-[TODO] totalOrder is done
+2018-08-21  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r12489 | zimmerma | 2018-03-23 17:03:58 +0000 (Fri, 23 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/Makefile.am
-   M /trunk/src/mpfr.h
-   A /trunk/src/total_order.c
-   M /trunk/tests/Makefile.am
-   A /trunk/tests/total_order.c
+	[tests/tsub1sp.c] added a test for a bug in mpfr_sub1sp (to be fixed)
 
-added mpfr_total_order
+2018-08-20  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12488 | vlefevre | 2018-03-23 10:06:33 +0000 (Fri, 23 Mar 2018) | 7 lines
-Changed paths:
-   M /trunk/tests/terf.c
-   M /trunk/tests/tpow.c
-   M /trunk/tests/tpow_z.c
+	[doc/mpfr.texi] Replaced "Section ``Rounding''" by "@ref{Rounding}".
 
-[tests] Removed some useless #include's, in particular all the
-unconditional #include <math.h> occurrences.
-Note: There is an incompatibility between glibc 2.27 and the math.h
-provided by ICC 15 (at least), and this solves a compilation failure
-in the build of the tests.
-Moreover, <math.h> is not required by freestanding implementations,
-so that it may be better to avoid it if possible.
-------------------------------------------------------------------------
-r12487 | zimmerma | 2018-03-21 11:02:23 +0000 (Wed, 21 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/TODO
+2018-08-20  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-added 2 suggestions from Patrick Pelissier
+	[doc/mpfr.texi] renamed Section "Rounding Modes" to "Rounding"
 
-------------------------------------------------------------------------
-r12486 | vlefevre | 2018-03-20 15:33:54 +0000 (Tue, 20 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/tools/mpfrlint
+2018-08-18  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tools/mpfrlint] For codespell, skip all the algorithms.* files.
-------------------------------------------------------------------------
-r12485 | vlefevre | 2018-03-15 11:31:10 +0000 (Thu, 15 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/tools/mpfrlint
+	Avoid a pointer-to-int-cast warning with GCC (e.g. under 32-bit Linux)
+	by casting pointers to uintptr_t before the cast to mpfr_uintmax_t.
+	  * acinclude.m4: use AC_TYPE_UINTPTR_T to define uintptr_t if
+	    not available.
+	  * tests/memory.c: added casts to uintptr_t.
 
-[tools/mpfrlint] Added a comment for the mul/sqr test.
-------------------------------------------------------------------------
-r12484 | vlefevre | 2018-03-15 11:27:38 +0000 (Thu, 15 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/tools/mpfrlint
+2018-08-16  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tools/mpfrlint] In the mul/sqr test (r12482), exclude mul.c and sqr.c.
-------------------------------------------------------------------------
-r12483 | zimmerma | 2018-03-15 10:21:18 +0000 (Thu, 15 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/src/acosh.c
-   M /trunk/src/asinh.c
-   M /trunk/src/atanh.c
-   M /trunk/src/cos.c
-   M /trunk/src/digamma.c
-   M /trunk/src/erf.c
-   M /trunk/src/erfc.c
-   M /trunk/src/jn.c
-   M /trunk/src/lngamma.c
-   M /trunk/src/mul.c
-   M /trunk/src/pow_ui.c
-   M /trunk/src/pow_z.c
-   M /trunk/src/sin.c
-   M /trunk/src/sqr.c
-   M /trunk/src/ui_pow_ui.c
-   M /trunk/src/yn.c
+	Code robustness in macro definitions.
 
-changed mpfr_mul (a, b, b, ...) into mpfr_sqr (a, b, ...) whenever possible
+	[src/sqr.c] Changed a variable name to avoid confusion with the function
+	parameter of the same name, which has a different type.
 
-------------------------------------------------------------------------
-r12482 | vlefevre | 2018-03-14 15:59:35 +0000 (Wed, 14 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[src/mpfr-impl.h] Added a cast to mp_bitcnt_t in order to fix potential
+	integer overflow in MPFR_MPZ_SIZEINBASE2.
 
-[tools/mpfrlint] Detect mpfr_mul with identical 2nd and 3rd arguments,
-which can be replaced by mpfr_sqr (suggestion by PZ).
-------------------------------------------------------------------------
-r12481 | zimmerma | 2018-03-14 15:06:00 +0000 (Wed, 14 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/src/const_pi.c
+	[src/round_raw_generic.c] Type consistency.
 
-[src/const_pi.c] added a reference, and replace mpfr_mul by mpfr_sqr
+	Added MPFR_INC_PREC definition (similar to MPFR_ADD_PREC) and replaced
+	some MPFR_ADD_PREC occurrences by MPFR_INC_PREC. In src/bernoulli.c,
+	replaced += by MPFR_INC_PREC to detect overflow.
 
-------------------------------------------------------------------------
-r12478 | vlefevre | 2018-03-10 00:40:13 +0000 (Sat, 10 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_str.c
+2018-08-11  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tget_str.c] Fixed failure from r12473 when mpfr_prec_t is an int
-(missing casts for sprintf / printf).
-------------------------------------------------------------------------
-r12477 | vlefevre | 2018-03-09 23:58:15 +0000 (Fri, 09 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tget_str.c
+	Replaced "TZ=UTC" by "TZ=UTC0" for portability.
 
-[tests/tget_str.c] C++ compatibility.
-------------------------------------------------------------------------
-r12476 | vlefevre | 2018-03-09 23:17:29 +0000 (Fri, 09 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tget_str.c
+2018-08-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tget_str.c] Use tests_allocate / tests_free.
-------------------------------------------------------------------------
-r12474 | vlefevre | 2018-03-09 23:10:41 +0000 (Fri, 09 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/TODO
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/atan.c
-   M /trunk/src/cache.c
-   M /trunk/src/fpif.c
-   M /trunk/src/get_flt.c
-   M /trunk/src/mpfr.h
-   M /trunk/src/sum.c
-   M /trunk/tests/terandom_chisq.c
-   M /trunk/tests/tnrandom_chisq.c
+	[src/round_raw_generic.c] Avoid a useless variable. This should
+	also avoid warnings with Windows ICC, reported at:
+	  https://sympa.inria.fr/sympa/arc/mpfr/2018-08/msg00002.html
 
-Fixed spelling mistakes found by codespell 1.12.0.
-------------------------------------------------------------------------
-r12473 | zimmerma | 2018-03-09 16:55:48 +0000 (Fri, 09 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_str.c
+	[tests/tcan_round.c] Added missing casts for printf (error messages).
+	Bug detected under MS Windows, where size_t > unsigned long. See:
+	  https://sympa.inria.fr/sympa/arc/mpfr/2018-08/msg00002.html
 
-[tests/tget_str.c] added tests for corner cases of mpfr_set_str o mpfr_get_str
+	[tests/tdiv_ui.c] Improved the conditions for test_20170105().
+	In particular, the new preprocessor test can avoid spurious warnings
+	on large shifts (false positives) with MS Windows. See:
+	  https://sympa.inria.fr/sympa/arc/mpfr/2018-08/msg00002.html
 
-------------------------------------------------------------------------
-r12472 | vlefevre | 2018-03-08 11:32:31 +0000 (Thu, 08 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/src/Makefile.am
+	[doc/README.dev] More details about intmax_t, mpfr_intmax_t, etc.
 
-[src/Makefile.am] In EXTRA_DIST, put the mparam.h in alphabetic order.
-------------------------------------------------------------------------
-r12471 | vlefevre | 2018-03-08 11:27:21 +0000 (Thu, 08 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/src/Makefile.am
+	[tests/memory.c] To print a size_t or a pointer in error messages,
+	cast to mpfr_uintmax_t (largest integer type available) instead of
+	unsigned long, which may be too short (e.g. under MS Windows).
+	See: https://sympa.inria.fr/sympa/arc/mpfr/2018-08/msg00002.html
 
-[src/Makefile.am] Updated EXTRA_DIST for amd due to r12387.
-------------------------------------------------------------------------
-r12469 | vlefevre | 2018-03-08 02:33:34 +0000 (Thu, 08 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
-   M /trunk/src/li2.c
-   M /trunk/src/mpfr-gmp.h
-   M /trunk/src/mpfr-thread.h
-   M /trunk/src/vasprintf.c
-   M /trunk/tests/tgmpop.c
-   M /trunk/tests/tset_ld.c
+	[src/mpfr-intmax.h] Define MPFR_INTMAX_FSPEC macro: length modifier
+	for printf corresponding to mpfr_intmax_t and mpfr_uintmax_t.
 
-Fixed spelling mistakes found by codespell 1.11.0.
-------------------------------------------------------------------------
-r12468 | vlefevre | 2018-03-08 02:29:43 +0000 (Thu, 08 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/codespell.ignore
+	[doc/README.dev] Updated/added links about coding standards and C.
 
-[codespell.ignore] Also ignore "cas".
-------------------------------------------------------------------------
-r12467 | vlefevre | 2018-03-08 02:27:22 +0000 (Thu, 08 Mar 2018) | 4 lines
-Changed paths:
-   A /trunk/codespell.ignore
-   M /trunk/tools/mpfrlint
+2018-08-05  Vincent Lefèvre  <vincent at vinc17.net>
 
-Added codespell.ignore file with simple words to ignore with codespell
-("iff" as used in math; "nd" as the n comes from \n in printf, but nd
-could also be a variable name; "te" as used as a variable name).
-Updated tools/mpfrlint to use this file with codespell.
-------------------------------------------------------------------------
-r12466 | vlefevre | 2018-03-05 14:44:44 +0000 (Mon, 05 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tools/mpfrlint] Updated a comment: more details about __GMP_DECLSPEC,
+	in particular those found in GMP's longlong.h file.
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r12464 | zimmerma | 2018-03-05 13:04:37 +0000 (Mon, 05 Mar 2018) | 4 lines
-Changed paths:
-   M /trunk/src/get_str.c
-   M /trunk/tests/tget_str.c
+2018-08-05  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tget_str.c] added tests for mpfr_get_str_ndigits
-[src/get_str.c] fixed bugs in mpfr_get_str_ndigits for b=2^k (value was 1 too
-		large) and very large p (value was 1 too small)
+	[src/mpfr-longlong.h] Replaced __GMP_DECLSPEC by __MPFR_DECLSPEC.
 
-------------------------------------------------------------------------
-r12462 | vlefevre | 2018-03-05 10:40:43 +0000 (Mon, 05 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	Otherwise, with Windows DLL, __GMP_DECLSPEC is replaced by
+	__declspec(dllimport), which is wrong when building MPFR and
+	yields warning LNK4217 such as:
 
-[doc/mpfr.texi] Typographic corrections for mpfr_subnormalize.
-------------------------------------------------------------------------
-r12461 | vlefevre | 2018-03-05 10:31:40 +0000 (Mon, 05 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/NEWS
-   M /trunk/doc/mpfr.texi
+	  eint.obj : warning LNK4217: locally defined symbol mpfr_clz_tab
+	  imported in function mpfr_eint
 
-[NEWS] Added mpfr_get_str_ndigits.
-[doc/mpfr.texi] Added mpfr_get_str_ndigits in "Added Functions".
-------------------------------------------------------------------------
-r12460 | vlefevre | 2018-03-05 10:26:34 +0000 (Mon, 05 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	due to
 
-[doc/mpfr.texi] Minor corrections concerning mpfr_get_str.
-------------------------------------------------------------------------
-r12459 | vlefevre | 2018-03-05 10:05:37 +0000 (Mon, 05 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr.h
+	  extern const unsigned char __GMP_DECLSPEC __clz_tab[129];
 
-[src/mpfr.h] Added a note about a mpfr_prec_t limitation.
-------------------------------------------------------------------------
-r12458 | vlefevre | 2018-03-05 09:59:19 +0000 (Mon, 05 Mar 2018) | 6 lines
-Changed paths:
-   M /trunk/src/get_str.c
+	(note that mpfr_clz_tab is defined with "#define __clz_tab mpfr_clz_tab"
+	only without the GMP build).
 
-[src/get_str.c] Simplified mpfr_get_str_ndigits (changes from r12455):
-  * MPFR_PREC_BITS is used to exactly do what is wanted.
-  * Removed dead code as currently, mpfr_prec_t <= unsigned long.
-    Note: if in the future we support mpfr_prec_t > unsigned long
-    (e.g. to have a 64-bit precision on MS Windows), the generic code
-    could be retrieved back from r12455.
-------------------------------------------------------------------------
-r12457 | zimmerma | 2018-03-05 09:35:32 +0000 (Mon, 05 Mar 2018) | 3 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/get_str.c
-   M /trunk/src/mpfr.h
+	See:
+	  https://sympa.inria.fr/sympa/arc/mpfr/2018-08/msg00000.html
+	  https://sympa.inria.fr/sympa/arc/mpfr/2018-08/msg00001.html
 
-[src/get_str.c,src/mpfr.h] mpfr_get_str_digits -> mpfr_get_str_ndigits
-[doc/mpfr.texi] updated documentation of mpfr_get_str
+2018-08-05  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12456 | zimmerma | 2018-03-05 09:29:42 +0000 (Mon, 05 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/src/get_str.c
+	[tools/mpfrlint] Check that __GMP_DECLSPEC is not used by MPFR.
 
-[src/get_str.c] fixed FIXME
+2018-07-31  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12455 | vlefevre | 2018-03-05 09:19:42 +0000 (Mon, 05 Mar 2018) | 1 line
-Changed paths:
-   M /trunk/src/get_str.c
+	[tests/tversion.c] Try to detect missing output from the first printf
+	that occurred once with i586-mingw32msvc-gcc -D__USE_MINGW_ANSI_STDIO
+	and run under Wine.
+	(merged changesets r12968-12969 from the 4.0 branch)
 
-[src/get_str.c] Portability corrections in mpfr_get_str_digits.
-------------------------------------------------------------------------
-r12454 | zimmerma | 2018-03-05 08:22:18 +0000 (Mon, 05 Mar 2018) | 3 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/get_str.c
-   M /trunk/src/mpfr.h
+2018-07-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/get_str.c] new function mpfr_get_str_digits
-[doc/mpfr.texi] added documentation for mpfr_get_str_digits
+	[acinclude.m4,configure.ac] Check the support of the group flag for
+	  native integers, which is a Single UNIX Specification extension.
+	[tests/tsprintf.c] Test the group flag with the P length modifier only
+	  when supported, since the implementation relies on this support.
 
-------------------------------------------------------------------------
-r12453 | vlefevre | 2018-03-03 01:19:24 +0000 (Sat, 03 Mar 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tfma.c
+	[src/vasprintf.c] Fixed bug with the P length modifier (mpfr_prec_t):
+	  a '0' flag was always added when calling gmp_asprintf. This bug
+	  wasn't detected under Linux because the case for which it was
+	  occurring (left space padding without a precision and without a
+	  '0' flag) was not tested. With Wine, tsprintf was failing because
+	  of a bug in the stdio library: the '0' flag added by mistake should
+	  have been ignored in some test with a precision, but it wasn't.
+	[tests/tsprintf.c] Added a test that made a failure occur under Linux.
 
-[tests/tfma.c] Fixed bug from r12407 with 32-bit long and 64-bit limbs
-(e.g. as under 64-bit MS Windows).
-------------------------------------------------------------------------
-r12452 | vlefevre | 2018-02-26 23:52:34 +0000 (Mon, 26 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	[tests/tsprintf.c] Added 2 other tests with the P length modifier.
 
-[acinclude.m4] Correction for test of the fallback to __float128:
-in the test program, define the variable outside main() in order to
-avoid an error when the -Werror=unused-variable GCC option is used.
-------------------------------------------------------------------------
-r12451 | vlefevre | 2018-02-26 19:17:17 +0000 (Mon, 26 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/get_sj.c
+	[src/vasprintf.c] Fixed bug with the P length modifier (mpfr_prec_t).
+	[tests/tsprintf.c] Corrected/added tests with the P length modifier.
 
-[src/get_sj.c] Avoid an unused variable.
-------------------------------------------------------------------------
-r12450 | vlefevre | 2018-02-26 18:00:38 +0000 (Mon, 26 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+2018-07-26  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/README.dev] Updated description of MPFR_WANT_FLOAT128.
-------------------------------------------------------------------------
-r12449 | vlefevre | 2018-02-26 17:56:40 +0000 (Mon, 26 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/doc/README.dev
+	[src/vasprintf.c] Fixed various overflow and close-to-overflow issues.
+	Those with the P length modifier (mpfr_prec_t) will be fixed later.
 
-[doc/README.dev] Recommend AC_LINK_IFELSE rather than AC_COMPILE_IFELSE
-(see r12448 as an example of an issue with AC_COMPILE_IFELSE).
-------------------------------------------------------------------------
-r12448 | vlefevre | 2018-02-26 17:55:14 +0000 (Mon, 26 Feb 2018) | 4 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	[tests/tsprintf.c] Another failure with the P length modifier.
 
-[acinclude.m4] Fixed a test, which could define MPFR_INTMAX_WITHIN_LIMB
-even when not true (MPFR_STAT_STATIC_ASSERT() was just regarded as a
-function call since the macro was not defined, thus did not yield an
-error).
-------------------------------------------------------------------------
-r12447 | vlefevre | 2018-02-26 17:31:19 +0000 (Mon, 26 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tversion.c
+	[tests/tsprintf.c] Added tests with the P length modifier (mpfr_prec_t),
+	yielding mode failures.
 
-[tests/tversion.c] Output the sizes of long and intmax_t.
-------------------------------------------------------------------------
-r12446 | vlefevre | 2018-02-26 16:36:42 +0000 (Mon, 26 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/acinclude.m4
+	[src/vasprintf.c] Fixed "store to null pointer" and free of bad pointer
+	in case of error.
 
-[acinclude.m4] Fixed incorrect test from r12426.
-------------------------------------------------------------------------
-r12445 | vlefevre | 2018-02-26 15:08:10 +0000 (Mon, 26 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/mulders.c
-   M /trunk/tests/tfma.c
-   M /trunk/tune/tuneup.c
+	[tests/tsprintf.c] Added a test that yields a "store to null pointer",
+	detected by UBsan.
 
-Removed trailing spaces.
-------------------------------------------------------------------------
-r12444 | vlefevre | 2018-02-26 12:43:22 +0000 (Mon, 26 Feb 2018) | 18 lines
-Changed paths:
-   M /trunk/NEWS
-   M /trunk/acinclude.m4
-   M /trunk/src/set_float128.c
+2018-07-25  Vincent Lefèvre  <vincent at vinc17.net>
 
-Updated support for binary128:
-  * __float128 was changed to _Float128 (ISO/IEC TS 18661) in r12391;
-    also changed the suffix of the constants from "q" to "f128".
-  * Use __float128 with the "q" suffix as a fallback in order to avoid
-    regressions with GCC 6- and with C++ mode (g++).
-    As documented in the GCC manual, this is entirely compatible on most
-    platforms where both are supported: _Float128 and __float128 are the
-    same type, and it could be checked that the following prototypes are
-    equivalent (as expected):
-      _Float128 f (__float128)
-      __float128 f (_Float128)
-    The only potential issues would be on hppa and IA-64 HP-UX, where
-    __float128 is an alias for "long double" instead of _Float128, in
-    case the ABI would be different (I have no information about this)
-    and both would be mixed up with software using the MPFR conversion
-    functions for binary128 via __float128 or "long double". The worst
-    thing that could happen is a link error. If the link is accepted,
-    everything should be fine as the representation doesn't change.
-------------------------------------------------------------------------
-r12443 | vlefevre | 2018-02-26 11:41:08 +0000 (Mon, 26 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/set_float128.c
+	[src/vasprintf.c] Bug fix: in case of some errors (via "goto error;"),
+	va_end wasn't called, yielding undefined behavior.
 
-[src/set_float128.c] Removed a useless #include and corrected a comment.
-------------------------------------------------------------------------
-r12442 | vlefevre | 2018-02-25 01:53:11 +0000 (Sun, 25 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/get_z_exp.c
+2018-07-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/get_z_exp.c] Portability.
-------------------------------------------------------------------------
-r12441 | vlefevre | 2018-02-25 01:19:07 +0000 (Sun, 25 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tdiv_ui.c
+	[tests] Added tget_set_d128 to svn:ignore property.
 
-[tests/tdiv_ui.c] Avoid a compilation error with
-gcc -std=c90 -pedantic -Werror in 32-bit ABI.
-------------------------------------------------------------------------
-r12440 | vlefevre | 2018-02-25 01:02:44 +0000 (Sun, 25 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tget_str.c
+	[src/erf.c] More security about tauk.
 
-[tests/tget_str.c] Fixed a return type.
-------------------------------------------------------------------------
-r12439 | zimmerma | 2018-02-24 10:02:40 +0000 (Sat, 24 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/get_z_exp.c
+	[src/erf.c] Removed a meaningless cast.
 
-[src/get_z_exp.c] new try for r12437. If that still does not work, we should
-		  define macros BITS_PER_EXP_T, BITS_PER_PREC_T, ...
+2018-07-22  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r12438 | vlefevre | 2018-02-23 22:13:53 +0000 (Fri, 23 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/get_z_exp.c
+	[src/erf.c] replaced double's by mpfr_t to fix bug reported by Naoki Shibata
 
-[src/get_z_exp.c] Reverted r12437: the size of mpfr_exp_t is not
-always related to the size of mp_limb_t.
-------------------------------------------------------------------------
-r12437 | zimmerma | 2018-02-23 22:04:30 +0000 (Fri, 23 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/get_z_exp.c
+2018-07-22  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/get_z_exp.c] removed dead code on 64-bit computer
+	[tests/terf.c] Added a testcase for bug reported by Naoki Shibata:
+	  https://sympa.inria.fr/sympa/arc/mpfr/2018-07/msg00028.html
+	(uceil_log2.c:40: MPFR assertion failed: exp < 1023).
+	Increased the number of generic tests in order to reproduce the bug
+	there too with the default seed.
 
-------------------------------------------------------------------------
-r12436 | zimmerma | 2018-02-23 20:45:32 +0000 (Fri, 23 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/get_str.c
-   M /trunk/tests/tget_str.c
+2018-07-21  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/get_str.c] improved case m < g
-[tests/tget_str.c] improve coverage
+	[src/subnormal.c] C89 compatibility.
 
-------------------------------------------------------------------------
-r12435 | vlefevre | 2018-02-23 18:15:42 +0000 (Fri, 23 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/acinclude.m4
+2018-07-21  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[acinclude.m4] Correction: for AC_COMPILE_IFELSE, there are only
-2 cases: TRUE and FALSE.
-------------------------------------------------------------------------
-r12434 | zimmerma | 2018-02-23 17:59:56 +0000 (Fri, 23 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_str.c
+	[src/subnormal.c] experimental support for RNDNA
 
-[tests/tget_str.c] fixed not enough allocation issue
+2018-07-20  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12433 | vlefevre | 2018-02-23 17:36:49 +0000 (Fri, 23 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	Added examples/threads.c (and updated Makefile.am): multithreading test
+	to detect scaling issues with MPFR.
 
-[acinclude.m4] Correction: for AC_COMPILE_IFELSE, there are only
-2 cases: TRUE and FALSE.
-------------------------------------------------------------------------
-r12432 | zimmerma | 2018-02-23 17:02:14 +0000 (Fri, 23 Feb 2018) | 4 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/get_str.c
-   M /trunk/tests/tget_str.c
+2018-07-19  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] m=1 is now valid in get_str
-[src/get_str.c] allow m=1 for b=2^k
-[tests/tget_str.c] added test for m=1 and b=2
+	[src/vasprintf.c] Updated a FIXME.
 
-------------------------------------------------------------------------
-r12430 | zimmerma | 2018-02-23 16:40:33 +0000 (Fri, 23 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/get_str.c
-   M /trunk/tests/tget_str.c
+	[src/vasprintf.c] More FIXME's.
 
-[src/get_str.c] added a comment
-[tests/tget_str.c] improved coverage (finding this example was quite hard!)
+	[src/vasprintf.c] Reindentation.
 
-------------------------------------------------------------------------
-r12429 | vlefevre | 2018-02-23 16:34:06 +0000 (Fri, 23 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/get_sj.c
+	[src/vasprintf.c] Added a FIXME for MPFR_PREC_ARG handling.
 
-[src/get_sj.c] Removed two assertions, including an incorrect one.
-Added an assertion.
-------------------------------------------------------------------------
-r12427 | vlefevre | 2018-02-23 15:37:08 +0000 (Fri, 23 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/acinclude.m4
+2018-07-18  Vincent Lefèvre  <vincent at vinc17.net>
 
-[acinclude.m4] Correction: if we cannot test, the portable code must be
-selected.
-------------------------------------------------------------------------
-r12426 | zimmerma | 2018-02-23 15:24:59 +0000 (Fri, 23 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/acinclude.m4
-   M /trunk/configure.ac
-   M /trunk/src/get_sj.c
+	Shared caches: fix and minor changes.
+	  * Fixed detection and use of C11 thread support: the C11 header is
+	    <threads.h>, not <thread.h>.
+	  * Renamed WANT_SHARED_CACHE to MPFR_WANT_SHARED_CACHE for consistency
+	    with the other MPFR_WANT_* macros.
+	  * Added MPFR_THREAD_LOCK_METHOD macro, giving the thread locking
+	    method as a string (when shared caches are enabled).
+	  * doc/README.dev: documented 4 macros for shared caches.
+	  * tests/tversion.c: output MPFR_WANT_SHARED_CACHE and
+	    MPFR_THREAD_LOCK_METHOD information.
 
-[configure.ac,acinclude.m4] added new macro MPFR_INTMAX_WITHIN_LIMB
-[src/get_sj.c] optimized the code when MPFR_INTMAX_WITHIN_LIMB=1
+	[tests/tconst_pi.c] Removed an incorrect assertion, as the #else would
+	be applicable when WANT_SHARED_CACHE is defined but not HAVE_PTHREAD
+	(which may occur when MPFR_HAVE_C11_LOCK is defined).
 
-------------------------------------------------------------------------
-r12425 | vlefevre | 2018-02-23 15:19:12 +0000 (Fri, 23 Feb 2018) | 6 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/set_ld.c
+	[src/vasprintf.c] Fixed type in partition_number to be consistent with
+	the end of the function.
 
-[src/mpfr-impl.h] Removed MPFR_LIMBS_PER_LONG_DOUBLE as it was not
-  properly specified in the general case and was actually used only
-  in src/set_ld.c with HAVE_LDOUBLE_IEEE_EXT_LITTLE.
-[src/set_ld.c] Simplified code. Moreover, the hypothetical case
-  GMP_NUMB_BITS == 16 will trigger a compilation error instead of
-  yielding incorrect code.
-------------------------------------------------------------------------
-r12424 | vlefevre | 2018-02-23 15:08:54 +0000 (Fri, 23 Feb 2018) | 4 lines
-Changed paths:
-   M /trunk/tests/tbuildopt.c
+2018-07-16  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tbuildopt.c]
-  * Added missing const.
-  * Use the variable s to avoid a warning and also to detect potential
-    undefined behavior with debugging tools if s is not a string.
-------------------------------------------------------------------------
-r12423 | zimmerma | 2018-02-23 15:00:55 +0000 (Fri, 23 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/get_sj.c
+	[src/vasprintf.c] Added 2 FIXME and removed an incorrect MPFR_ASSERTN
+	(which came from r5236).
 
-[src/get_sj.c] fixed typo
+	[tests/tsprintf.c] Added other tests to check_length_overflow, which
+	would trigger other bugs in src/vasprintf.c (e.g. when removing the
+	other failing tests).
 
-------------------------------------------------------------------------
-r12422 | zimmerma | 2018-02-23 14:48:40 +0000 (Fri, 23 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/get_sj.c
+	[tests/tsprintf.c] Added check_length_overflow to check the behavior of
+	mpfr_snprintf on a large number of output characters (> INT_MAX) with
+	size = 0. This test is actually done only if INT_MAX == 2147483647 and
+	currently fails in such a case.
 
-[src/get_sj.c] added comments and simplified the code
+	[src/vasprintf.c] Updated comment about overflow on the number of output
+	characters, taking into account the latest ISO C and POSIX standards.
 
-------------------------------------------------------------------------
-r12421 | vlefevre | 2018-02-23 14:31:59 +0000 (Fri, 23 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[tests/tsprintf.c] Updated a comment.
 
-[src/mpfr-impl.h] Typo in a comment.
-------------------------------------------------------------------------
-r12420 | zimmerma | 2018-02-23 14:12:09 +0000 (Fri, 23 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_q.c
+2018-07-13  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tget_q.c] improved coverage
+	[src/vasprintf.c] Simplified mpfr_get_str_wrapper.
 
-------------------------------------------------------------------------
-r12419 | vlefevre | 2018-02-23 13:59:02 +0000 (Fri, 23 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/get_d64.c
+	[src/vasprintf.c] Added a log message.
 
-[src/get_d64.c] Parsing in the portable version of string_to_Decimal64:
-similar changes as in r12416 for the _MPFR_IEEE_FLOATS version.
-------------------------------------------------------------------------
-r12418 | zimmerma | 2018-02-23 13:37:33 +0000 (Fri, 23 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/get_ld.c
+	[src/mpfr-impl.h] Added a FIXME: _Decimal128 code and _MPFR_IEEE_FLOATS
+	(which is about binary IEEE-754 floating point) should be unrelated.
 
-[src/get_ld.c] removed dead code (as in r12413 for mpfr_get_d)
+	[src/get_d64.c]
+	  * Added FIXME's for get_decimal64_nan and get_decimal64_inf internal
+	    functions: possible issue with _MPFR_IEEE_FLOATS code, which also
+	    seems more complex than the generic code.
+	  * Simplified get_decimal64_zero internal function to generate a
+	    decimal zero directly instead of using the fact that a binary64
+	    zero is also the encoding of a decimal zero (and assuming that
+	    double = binary64 with perfect endianness matching).
 
-------------------------------------------------------------------------
-r12417 | zimmerma | 2018-02-23 13:35:35 +0000 (Fri, 23 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/get_flt.c
-   M /trunk/tests/tget_flt.c
+	[acinclude.m4] Updated message about the _Float128 support, since
+	this is not just about the compiler.
 
-[src/get_flt.c] optimized code when MPFR_LIMBS_PER_FLT=1
-[tests/tget_flt.c] improved coverage
+	[acinclude.m4] Fixed the _Float128 / __float128 detection for NetBSD:
+	Optimization made the "undefined reference" error disappear, so that
+	__float128 was misdetected as being supported.
 
-------------------------------------------------------------------------
-r12416 | zimmerma | 2018-02-23 12:02:51 +0000 (Fri, 23 Feb 2018) | 4 lines
-Changed paths:
-   M /trunk/src/get_d64.c
-   M /trunk/src/mpfr-impl.h
-   M /trunk/tests/tget_set_d64.c
+2018-07-12  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/get_d64.c] simplified code, and removed dead code
-[src/mpfr-impl.h] added comment
-[tests/tget_set_d64.c] improve coverage
+	[acinclude.m4] For the _Float128 / __float128 detection, changed
+	AC_COMPILE_IFELSE to AC_LINK_IFELSE since an error may occur only
+	at link time, such as under NetBSD:
+	  https://mail-index.netbsd.org/pkgsrc-users/2018/02/02/msg026220.html
+	  https://mail-index.netbsd.org/pkgsrc-users/2018/02/05/msg026238.html
 
-------------------------------------------------------------------------
-r12415 | vlefevre | 2018-02-23 09:50:25 +0000 (Fri, 23 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/set_q.c
+	[src/Makefile.am] Corrected check-exported-symbols to avoid a failure
+	when the default .SHELLFLAGS value is '-ec' (POSIX) instead of '-c'
+	(GNU Make, which is not in POSIX-conforming mode by default).
+	Bug found on FreeBSD 11.1 (Compile Farm @ HouseGordon.com).
 
-[src/set_q.c] Simplified code.
-------------------------------------------------------------------------
-r12414 | zimmerma | 2018-02-23 08:59:39 +0000 (Fri, 23 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/get_d.c
+2018-07-11  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/get_d.c] removed dead code
+	[src/vasprintf.c] In buffer_sandwich, simplified the handling of the
+	trailing zero (avoid memset and a useless assignment).
 
-------------------------------------------------------------------------
-r12413 | zimmerma | 2018-02-23 08:56:52 +0000 (Fri, 23 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/get_d.c
+2018-07-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/get_d.c] optimized for common case MPFR_LIMBS_PER_DOUBLE=1
+	[doc/mpfr.texi] More changes to Section "Nomenclature and Types";
+	in particular, defined regular numbers and exponents.
 
-------------------------------------------------------------------------
-r12412 | zimmerma | 2018-02-23 08:38:33 +0000 (Fri, 23 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_z_exp.c
+	[doc/mpfr.texi] In Section "Nomenclature and Types", removed all the
+	@noindent, whose purpose is unclear (if one needs something special,
+	an itemized list would be better, or possibly @deffn).
 
-[tests/tset_z_exp.c] improved coverage
+	[doc/mpfr.texi] Rewrote the paragraph defining "floating-point number"
+	in Section "Nomenclature and Types", avoiding ambiguities.
 
-------------------------------------------------------------------------
-r12411 | zimmerma | 2018-02-23 08:28:09 +0000 (Fri, 23 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/set_q.c
+2018-07-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/set_q.c] removed dead code on 64-bit processor
+	[tests/tprintf.c] Grrr... again a copy-paste error. Now OK.
 
-------------------------------------------------------------------------
-r12410 | zimmerma | 2018-02-23 07:40:36 +0000 (Fri, 23 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/set_ld.c
+	[tests/{tprintf.c,tsprintf.c}] Corrected the tests added in r12898,
+	but tprintf still fails.
 
-[src/set_ld.c] improve code when HAVE_LDOUBLE_IEEE_EXT_LITTLE is defined
+	[tests/tsprintf.c] Corrected the latest tests.
 
-------------------------------------------------------------------------
-r12409 | vlefevre | 2018-02-22 22:45:19 +0000 (Thu, 22 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/set_ld.c
+	[tests/tsprintf.c] Added tests (failure on "%09.3Rg" for 1000).
 
-[src/set_ld.c] Reverted r12408: MPFR_LIMBS_PER_LONG_DOUBLE cannot be
-used with the preprocessor due to the use of "sizeof".
-------------------------------------------------------------------------
-r12408 | zimmerma | 2018-02-22 19:24:40 +0000 (Thu, 22 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/set_ld.c
+	[tests/tsprintf.c] Corrected comments.
 
-[src/set_ld.c] improve code for MPFR_LIMBS_PER_LONG_DOUBLE=1
+	[tests/{tprintf.c,tsprintf.c}] Added tests (both programs fail).
 
-------------------------------------------------------------------------
-r12407 | zimmerma | 2018-02-22 19:06:22 +0000 (Thu, 22 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tfma.c
+	[doc/mpfr.texi] Updated the month.
 
-[tests/tfma.c] improved coverage of mpfr_set_1_2
+	[src/vasprintf.c] Corrected comments and coding style.
 
-------------------------------------------------------------------------
-r12406 | zimmerma | 2018-02-22 18:11:44 +0000 (Thu, 22 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tbuildopt.c
+	[src/vasprintf.c] Resolve the FIXME.
+	  * Renamed ip_trailing_zeros to ip_trailing_digits, since when
+	    spec.size == 0, these can be any digits.
+	  * Simplified the buffer_sandwich function since it can be called
+	    only when spec.size != 0, in which case tz (= ip_trailing_digits)
+	    is either 0 or 1 (a trailing zero must be added only when rounding
+	    to the next power of ten in the %f case).
+	  * Corrected/removed/added comments.
 
-[tests/tbuildopt.c] improve coverage
+	[tests/{tprintf.c,tsprintf.c}] Added tests with powers of ten in all
+	rounding modes and powers of ten + 0.5 in rounding to nearest.
 
-------------------------------------------------------------------------
-r12405 | vlefevre | 2018-02-22 16:11:57 +0000 (Thu, 22 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tfma.c
+2018-07-05  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tfma.c] Corrected a comment.
-------------------------------------------------------------------------
-r12404 | vlefevre | 2018-02-22 16:08:46 +0000 (Thu, 22 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/tests/tfma.c
+	[doc/mpfr.texi] typo in Fredrik's name
 
-[tests/tfma.c] Joined test_overflow3 and test_overflow4 by using a loop.
-Improved the corresponding test and error message. Also run this test
-with the default exponent range.
-------------------------------------------------------------------------
-r12403 | vlefevre | 2018-02-22 15:49:53 +0000 (Thu, 22 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/fma.c
+	[AUTHORS] typo in Fredrik's name
 
-[src/fma.c] Added FIXME for r12396, which still seems incorrect.
-------------------------------------------------------------------------
-r12402 | vlefevre | 2018-02-22 13:30:11 +0000 (Thu, 22 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+2018-07-04  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr-impl.h] Typo in a comment.
-------------------------------------------------------------------------
-r12401 | vlefevre | 2018-02-22 13:25:25 +0000 (Thu, 22 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/NEWS
+	[tests/tprintf.c] Added a TODO (for the FIXME in src/vasprintf.c).
 
-[NEWS] Update about the change of __float128 to _Float128: clarification
-that it is from ISO/IEC TS 18661 ("standard" was too vague); added FIXME
-on a possible fallback to __float128 and ABI considerations.
-------------------------------------------------------------------------
-r12400 | vlefevre | 2018-02-22 13:08:15 +0000 (Thu, 22 Feb 2018) | 4 lines
-Changed paths:
-   M /trunk/configure.ac
+	[src/vasprintf.c] Updated the FIXME comment.
 
-[configure.ac] For --enable-float128, this is still autodetect, e.g.:
-  checking if compiler knows _Float128 with C99 constants... no
-Added a FIXME: a fallback to __float128 is necessary to avoid
-regressions.
-------------------------------------------------------------------------
-r12399 | zimmerma | 2018-02-22 13:07:01 +0000 (Thu, 22 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/sqr.c
-   M /trunk/tests/tsqr.c
+	[src/vasprintf.c] Added a FIXME comment about an incorrect comment.
 
-[src/sqr.c] added comments
-[tests/tsqr.c] improve coverage of sqr.c to 100%
+	[src/vasprintf.c] Added log messages in buffer_sandwich.
 
-------------------------------------------------------------------------
-r12398 | zimmerma | 2018-02-22 12:48:52 +0000 (Thu, 22 Feb 2018) | 6 lines
-Changed paths:
-   M /trunk/src/sqr.c
-   M /trunk/tests/tsqr.c
+	[tests/tsprintf.c] Added more tests of the form 10^i - 1/2
+	(like in tprintf.c).
 
-[src/sqr.c] fixed a bug in mpfr_sqr_1n in a rare case near underflow,
-	    only use mpfr_sqr_1, mpfr_sqr_1n, mpfr_sqr_2, mpfr_sqr_3
-	    when all numbers have same precision (like for mpfr_mul),
-	    and added comments
-[tests/tsqr.c] added tests, including non-regression for above bug
+	[tests/tprintf.c] Added more tests of the form 10^i - 1/2.
 
-------------------------------------------------------------------------
-r12397 | zimmerma | 2018-02-22 10:45:53 +0000 (Thu, 22 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/fma.c
+	[tests/tsprintf.c] Added test_locale() test based on the tprintf.c one.
 
-[src/fma.c] added comments and a FIXME
+	[tests/tprintf.c] Minor correction.
 
-------------------------------------------------------------------------
-r12396 | zimmerma | 2018-02-22 10:30:25 +0000 (Thu, 22 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/fma.c
-   M /trunk/tests/tfma.c
+	[tests/tprintf.c] More test_locale() cleanup.
 
-[src/fma.c] fixed last failure
-[tests/tfma.c] removed debug stuff
+	[src/vasprintf.c] English usage in a comment.
 
-------------------------------------------------------------------------
-r12395 | zimmerma | 2018-02-22 10:27:29 +0000 (Thu, 22 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tfma.c
+	[src/vasprintf.c] Renamed mpfr_get_str_aux to mpfr_get_str_wrapper
+	in order to avoid a confusion with the mpfr_get_str_aux function
+	from get_str.c (moreover, this is really a wrapper, which is the
+	reverse of an aux function).
 
-[tests/tfma.c] added new failing test
+	[tests/tsprintf.c] locale_da_DK() cleanup.
 
-------------------------------------------------------------------------
-r12394 | zimmerma | 2018-02-22 10:23:39 +0000 (Thu, 22 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/fma.c
+2018-07-04  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/fma.c] fix failure from last test
+	[src/vasprintf.c] partly revert commit 12873
 
-------------------------------------------------------------------------
-r12393 | zimmerma | 2018-02-22 10:19:52 +0000 (Thu, 22 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/fma.c
-   M /trunk/tests/tfma.c
+2018-07-04  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/fma.c] added comments
-[tests/tfma.c] added a test (currently failing)
+	[tests/tprintf.c] test_locale() cleanup.
+	  * Conditional #include <locale.h> with the other header inclusions.
+	  * Completed a #if (to be like in tsprintf.c).
+	  * Moved a global variable as local to test_locale().
 
-------------------------------------------------------------------------
-r12392 | zimmerma | 2018-02-22 10:01:46 +0000 (Thu, 22 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mips/mparam.h
+2018-07-04  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[mips/mparam.h] updated
+	[src/vasprintf.c] replaced overflow tests by assertions
+	[tests/tprintf.c] improve test coverage
 
-------------------------------------------------------------------------
-r12391 | zimmerma | 2018-02-22 09:18:55 +0000 (Thu, 22 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/NEWS
-   M /trunk/acinclude.m4
-   M /trunk/configure.ac
-   M /trunk/doc/README.dev
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/get_float128.c
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/mpfr.h
-   M /trunk/src/set_float128.c
-   M /trunk/tests/tset_float128.c
+2018-07-04  Vincent Lefèvre  <vincent at vinc17.net>
 
-changed __float128 (gcc specific) into the standard type _Float128
+	Added MPFR_CHECK_LOCALES environment variable for the tests (to be
+	used by developers): when set, terminate with an error if locales
+	cannot be tested.
 
-------------------------------------------------------------------------
-r12390 | zimmerma | 2018-02-22 08:50:12 +0000 (Thu, 22 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/arm/mparam.h
+2018-07-04  Vincent Lefèvre  <vincent at vinc17.net>
 
-[arm/mparam.h] updated
+	[src/vasprintf.c] Fixed several bugs in buffer_sandwich, which could
+	yield memory corruption with non-default memory allocators and other
+	undefined behavior; check the return value when this function is called.
 
-------------------------------------------------------------------------
-r12389 | zimmerma | 2018-02-22 08:27:54 +0000 (Thu, 22 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/x86/mparam.h
+	Details:
+	  * check integer overflow on the size computations;
+	  * computation of q and r without tests;
+	  * fixed the case where r > len (e.g. len = 1 and tz = 1);
+	  * in the loop, increase the str pointer only when needed, otherwise
+	    str could be beyond of the end of the string of the digits, which
+	    is undefined behavior.
 
-[x86/mparam.h] updated
+	The first consequence of the r > len issue was an incorrect generated
+	string. Moreover, since the generated string was shorter than expected,
+	mpfr_free_str would provide an incorrect buffer size to the "free"
+	function of the current GMP memory allocator. By default, this size is
+	ignored, but it may matter if the memory allocators have been changed
+	with the mp_set_memory_functions GMP function, in which case a possible
+	consequence could be memory corruption.
 
-------------------------------------------------------------------------
-r12388 | zimmerma | 2018-02-22 08:14:41 +0000 (Thu, 22 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mparam_h.in
+2018-07-03  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/mparam_h.in] amd/k8/mparam.h -> amd/mparam.h
+	[src/vasprintf.c] added an assertion
+	[tests/tprintf.c] added two tests (one currently fails)
 
-------------------------------------------------------------------------
-r12387 | zimmerma | 2018-02-22 08:14:07 +0000 (Thu, 22 Feb 2018) | 2 lines
-Changed paths:
-   D /trunk/src/amd/amdfam10
-   D /trunk/src/amd/k8
-   A /trunk/src/amd/mparam.h (from /trunk/src/amd/k8/mparam.h:12386)
+2018-06-26  Vincent Lefèvre  <vincent at vinc17.net>
 
-[amd/mparam.h] updated
+	[src/vasprintf.c] C90 compatibility.
 
-------------------------------------------------------------------------
-r12386 | zimmerma | 2018-02-22 08:06:23 +0000 (Thu, 22 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sparc64/mparam.h
+2018-06-26  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[sparc64/mparam.h] updated
+	[tests/tsprintf.c] fixed another test
 
-------------------------------------------------------------------------
-r12385 | zimmerma | 2018-02-22 08:04:27 +0000 (Thu, 22 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/x86_64/core2/mparam.h
+	[tests/tsprintf.c] fixed test
 
-[x86_64/core2/mparam.h] updated
+	[src/vasprintf.c] improve coverage
 
-------------------------------------------------------------------------
-r12384 | zimmerma | 2018-02-22 08:02:12 +0000 (Thu, 22 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/powerpc64/mparam.h
+	[tests/tsprintf.c] improve coverage
 
-[powerpc64/mparam.h] updated
+	[tests/tsprintf.c] improve coverage
 
-------------------------------------------------------------------------
-r12383 | zimmerma | 2018-02-22 07:42:49 +0000 (Thu, 22 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/x86_64/mparam.h
+2018-06-25  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[x86_64/mparam.h] updated
+	[tests/tgamma_inc.c] improve coverage
 
-------------------------------------------------------------------------
-r12382 | zimmerma | 2018-02-22 07:36:02 +0000 (Thu, 22 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mulders.c
+	[tests/tgamma_inc.c] added coverage test
 
-[src/mulders.c] removed dead code
+	[src/gamma.c] added comment
+	[src/gamma_inc.c] fixed bug for gamma_inc(-Inf, 0)
+	[tests/tgamma_inc.c] added coverage tests
 
-------------------------------------------------------------------------
-r12381 | zimmerma | 2018-02-21 20:52:31 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tune/tuneup.c
+2018-06-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tune/tuneup.c] ensure k < n in mpfr_divhigh_n[]
+	[configure.ac] Do not do specific CFLAGS settings for MS-Windows ICC.
+	See <https://sympa.inria.fr/sympa/arc/mpfr/2018-06/msg00027.html>.
 
-------------------------------------------------------------------------
-r12380 | zimmerma | 2018-02-21 17:01:07 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mparam_h.in
+	[src/mpfr-impl.h] Spelling in a comment.
 
-[src/mparam_h.in] added __tune_znver1__ for AMD64 (e.g., gcc67.fsffrance.org)
+	[src/mpfr-impl.h] Fixed change in r12847.
 
-------------------------------------------------------------------------
-r12379 | zimmerma | 2018-02-21 16:08:54 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mips/mparam.h
+	[tests/tget_set_d64.c] Improved a test.
 
-[src/mips/mparam.h] updated on gcc22
+	[tests/tget_set_d128.c] Replaced d != d by DOUBLE_ISNAN (d).
 
-------------------------------------------------------------------------
-r12378 | zimmerma | 2018-02-21 15:07:41 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/NEWS
+	[doc/mpfr.texi] Updated the month.
 
-[NEWS] added item
+	[tests/tget_set_{d64,d128}.c] When MPFR_ERRDIVZERO is defined,
+	disable tests that can trigger a FP exception DIVBYZERO or INVALID
+	(issue detected with -DMPFR_TESTS_FPE_DIV -DMPFR_ERRDIVZERO).
 
-------------------------------------------------------------------------
-r12377 | zimmerma | 2018-02-21 15:03:32 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/Makefile.am
-   M /trunk/src/mparam_h.in
-   D /trunk/src/x86/core2
-   M /trunk/src/x86/mparam.h
+2018-06-22  Vincent Lefèvre  <vincent at vinc17.net>
 
-removed tuning for x86/core2, updated tuning for generic x86
+	[src/mpfr-impl.h] Improved a comment about union ieee_decimal128.
 
-------------------------------------------------------------------------
-r12376 | zimmerma | 2018-02-21 14:57:59 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/arm/mparam.h
-   M /trunk/src/mparam_h.in
-   M /trunk/src/sparc64/mparam.h
+	Do not assume that the bit-field ordering for _Decimal128 is necessarily
+	little endian or big endian (this is more than the usual endianness
+	issue). If this cannot be detected, instead of failing or assuming a
+	possibly wrong default, switch to the portable code.
 
-[src/sparc64/mparam.h] updated tuning parameters for sparc64
+2018-06-22  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r12375 | vlefevre | 2018-02-21 14:32:43 +0000 (Wed, 21 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/mparam_h.in
+	added mpfr_get_decimal128 and mpfr_set_decimal128 to the manual
 
-[src/mparam_h.in] Use the generic parameters for x86_64 with Clang.
-------------------------------------------------------------------------
-r12374 | zimmerma | 2018-02-21 14:24:44 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/Makefile.am
-   A /trunk/src/arm
-   A /trunk/src/arm/mparam.h
-   M /trunk/src/mparam_h.in
+	[tests/tget_set_d128.c] test some random 16-byte inputs
 
-added tuning for ARM
+	[tests/tget_set_d64.c] test random inputs
 
-------------------------------------------------------------------------
-r12373 | vlefevre | 2018-02-21 14:13:28 +0000 (Wed, 21 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/Makefile.am
-   M /trunk/src/mparam_h.in
-   A /trunk/src/sparc64 (from /trunk/src/sparc64:12367)
+	[acinclude.m4] added configure test to determine the encoding of _Decimal128 (little or big endian)
 
-Reverted r12368: sparc64 tuning should be updated on gcc202.
-------------------------------------------------------------------------
-r12372 | zimmerma | 2018-02-21 14:09:31 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mparam_h.in
+	[doc/README.dev] added standard suffixes
 
-[src/mparam_h.in] generic case for all remaining i386's
+	[tests/tget_set_d64.c] fixed a test
 
-------------------------------------------------------------------------
-r12371 | zimmerma | 2018-02-21 13:58:35 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mparam_h.in
+	[tests/tget_set_d64.c] removed TODO (done), added comment
+	[tests/tget_set_d128.c] removed TODO (done)
 
-[src/mparam_h.in] put back __tune_k8__
+	[src/set_d64.c] added comment (like for set_d128.c)
 
-------------------------------------------------------------------------
-r12370 | zimmerma | 2018-02-21 13:48:37 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mparam_h.in
+	[src/get_d64.c] improve comment
+	[src/get_d128.c] likewise
 
-[src/mparam_h.in] check __amd64__ before generic __x86_64__
+	[src/set_d64.c] also deal with non-canonical BID encoding
+	[tests/tget_set_d64.c] added test with non-canonical BID encoding
 
-------------------------------------------------------------------------
-r12369 | zimmerma | 2018-02-21 13:25:44 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/Makefile.am
-   D /trunk/src/hppa
-   M /trunk/src/mparam_h.in
+2018-06-22  Vincent Lefèvre  <vincent at vinc17.net>
 
-removed tuning for hppa (gcc61 is offline)
+	[src/get_d128.c] Bug fix (buffer overflow detected by AddressSanitizer).
 
-------------------------------------------------------------------------
-r12368 | zimmerma | 2018-02-21 13:24:22 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/Makefile.am
-   M /trunk/src/mparam_h.in
-   D /trunk/src/sparc64
+	[src] Moved the FIXME comment from set_d128.c to get_d128.c since the
+	bug occurs in mpfr_get_decimal128 according to the AddressSanitizer.
 
-removed tuning parameters for sparc64 (gcc64, gcc200 and gcc201 are offline)
+	[src/set_d128.c] Updated FIXME comment.
 
-------------------------------------------------------------------------
-r12367 | zimmerma | 2018-02-21 13:23:16 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tune/tuneup.c
+	[src/sqrt.c] Replaced a umul_ppmm by umul_hi, and removed an unused
+	variable as a consequence.
 
-[tune/tuneup.c] for mpfr_div_threshold, start from 3 limbs again
+	[src/set_d64.c] Code improvement (like r12809 and r12828 in set_d128.c).
 
-------------------------------------------------------------------------
-r12366 | zimmerma | 2018-02-21 13:06:31 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/Makefile.am
-   M /trunk/src/mparam_h.in
-   D /trunk/src/powerpc32
+	[src/set_ld.c] Removed unused variable for
+	HAVE_LDOUBLE_MAYBE_DOUBLE_DOUBLE (PowerPC).
 
-removed tuning for powerpc32 (no such machine available any more)
+	[src/invsqrt_limb.h] Avoid a "variable ‘_l’ set but not used" warning
+	on some platforms, such as powerpc64le-unknown-linux-gnu.
 
-------------------------------------------------------------------------
-r12365 | zimmerma | 2018-02-21 12:55:42 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/powerpc64/mparam.h
+	[src/invert_limb.h] Avoid a "variable ‘_l’ set but not used" warning
+	on some platforms, such as powerpc64le-unknown-linux-gnu.
 
-[src/powerpc64/mparam.h] updated tuning parameters for powerpc64
+	[src/set_d128.c] Avoid "unused variable" warnings on platforms with DPD.
 
-------------------------------------------------------------------------
-r12364 | zimmerma | 2018-02-21 11:17:39 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/amd/k8/mparam.h
+	[src/mpfr-impl.h] About union ieee_double_decimal64: removed an
+	incorrect comment and added a TODO.
 
-[src/amd/k8/mparam.h] fixed MPFR_DIV_THRESHOLD
+	Changed union ieee_double_decimal128 to union ieee_decimal128 since this
+	has nothing to do with double (unlike union ieee_double_decimal64). Also
+	refactored code for this union definition.
 
-------------------------------------------------------------------------
-r12363 | zimmerma | 2018-02-21 11:16:20 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/amd/k8/mparam.h
-   M /trunk/src/x86/core2/mparam.h
+	[src/mpfr-impl.h] Updated TODO for DPD.
 
-updated tuning parameters for amd/k8 and x86/core2
+	[src/mpfr-impl.h] Added TODO for DPD (better structure definition).
 
-------------------------------------------------------------------------
-r12362 | vlefevre | 2018-02-21 11:14:29 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/Makefile.am
-   M /trunk/src/mparam_h.in
-   A /trunk/src/x86/mparam.h (from /trunk/src/x86/mparam.h:12358)
+	[tests/tget_set_d128.c] Execute BID code only with BID.
 
-Reverted r12359 and added a comment: tuning for x86 is used when
-building GMP/MPFR with a 32-bit ABI (ABI=32 / -m32).
-------------------------------------------------------------------------
-r12361 | zimmerma | 2018-02-21 11:14:27 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tune/tuneup.c
+	[tests/tget_set_d128.c] Simplification and better portability.
 
-[tuneup.c] start from 4 limbs for mpfr_div_threshold
+2018-06-22  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r12360 | zimmerma | 2018-02-21 10:45:20 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/Makefile.am
-   D /trunk/src/ia64
-   M /trunk/src/mparam_h.in
+	[tests/tget_set_d128.c] added coverage tests for non-canonical BID encodings
 
-removed tuning for ia64 (gcc60.fsffrance.org is now offline)
+	[src/set_d128.c] improve last commit
 
-------------------------------------------------------------------------
-r12359 | zimmerma | 2018-02-21 10:42:40 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/Makefile.am
-   M /trunk/src/mparam_h.in
-   D /trunk/src/x86/mparam.h
+	[src/set_d128.c] improved a comment
 
-removed tuning for x86 (no more access to such machine)
+2018-06-22  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12358 | zimmerma | 2018-02-21 10:35:31 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tune/tuneup.c
+	[src/set_d128.c] Re-added "while (...)" erroneously removed in r12817.
 
-[tune/tuneup.c] make tune_simple_func more robust for small precisions
+2018-06-22  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r12357 | zimmerma | 2018-02-21 10:32:43 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/x86_64/mparam.h
+	[src/set_d64.c] added comment
+	[src/set_d128.c] likewise
 
-[src/x86_64/mparam.h] fixed MPFR_DIV_THRESHOLD
+	[src/set_d128.c] avoid variable conflict for DPD
 
-------------------------------------------------------------------------
-r12356 | zimmerma | 2018-02-21 10:29:58 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/x86_64/core2/mparam.h
+	[src/set_d128.c] implement for DFD encoding
 
-[x86_64/core2/mparam.h] updated on gcc14
+	[src/set_d64.c] added comment and space
 
-------------------------------------------------------------------------
-r12355 | vlefevre | 2018-02-21 09:47:29 +0000 (Wed, 21 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/acinclude.m4
+2018-06-22  Vincent Lefèvre  <vincent at vinc17.net>
 
-[acinclude.m4] In the "long double" format recognition, added
-size information for IEEE extended (not used by MPFR, but this
-may be useful information for the user).
-------------------------------------------------------------------------
-r12354 | zimmerma | 2018-02-21 09:44:15 +0000 (Wed, 21 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/Makefile.am
-   D /trunk/src/amd/athlon
-   M /trunk/src/mparam_h.in
+	[src/set_d128.c] Added a FIXME (stack-buffer-overflow).
 
-removed tuning parameters for amd/athlon (we have no access to such machine
-any more)	
+	[src/set_d128.c] Corrected r12811.
 
-------------------------------------------------------------------------
-r12353 | zimmerma | 2018-02-21 09:32:10 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/Makefile.am
-   M /trunk/src/mparam_h.in
-   D /trunk/src/x86_64/pentium4
+	[src/set_d128.c] _MPFR_IEEE_FLOATS code for BID: correctly support
+	the decoded significand >= 10^34 cases (non-canonical encodings),
+	which must be zero.
 
-removed tuning for pentium4
+	[tests/{tget_set_d64.c,tget_set_d128.c}] TODO: Also test non-canonical
+	encodings.
 
-------------------------------------------------------------------------
-r12352 | zimmerma | 2018-02-21 09:16:47 +0000 (Wed, 21 Feb 2018) | 2 lines
-Changed paths:
-   D /trunk/src/x86_64/corei5
+	[src/set_d128.c]
+	  * Enable the _MPFR_IEEE_FLOATS code only for GMP_NUMB_BITS == 32 or 64
+	    (as the other values are not supported by this code).
+	  * Bug fix for GMP_NUMB_BITS == 32 (→ tget_set_d128 no longer fails).
+	  * Added an assertion corresponding to a comment.
 
-removed tuning for corei5 (was not used)
+	[src/set_d128.c] Fit on 80 columns.
 
-------------------------------------------------------------------------
-r12351 | zimmerma | 2018-02-21 09:09:32 +0000 (Wed, 21 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/Makefile.am
-   M /trunk/src/mparam_h.in
-   A /trunk/src/x86_64/mparam.h
-   M /trunk/tune/tuneup.c
+2018-06-21  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/x86_64/mparam.h] added tuning for generic x86_64
-[tune/tuneup.c] mpfr_divhigh now wants n >= 2
+	[src/mpfr-impl.h] Updated a title comment (→ Decimal support).
 
-------------------------------------------------------------------------
-r12350 | zimmerma | 2018-02-21 07:19:56 +0000 (Wed, 21 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/Makefile.am
-   D /trunk/src/arm
-   M /trunk/src/mparam_h.in
+	[src/mpfr-impl.h] Corrected a comment.
 
-removed thresholds for arm since gcc57 is no longer available, thus we cannot
-tune on an ARM machine
+2018-06-21  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r12349 | vlefevre | 2018-02-21 02:34:18 +0000 (Wed, 21 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/mulders.c
+	[src/set_d128.c] added comments
 
-[src/mulders.c] Removed unused variable dinv.
-------------------------------------------------------------------------
-r12348 | zimmerma | 2018-02-20 17:11:58 +0000 (Tue, 20 Feb 2018) | 6 lines
-Changed paths:
-   M /trunk/src/div.c
-   M /trunk/src/mpfr-gmp.h
-   M /trunk/src/mulders.c
-   M /trunk/tests/tmul.c
-   M /trunk/tune/tuneup.c
+	[src/set_d128.c] remove debug stuff
 
-[src/div.c] added comment
-[src/mpfr-gmp.h] moved definition of MUL_FFT_THRESHOLD
-[src/mulders.c] removed unused code, and force n>=2 in mpfr_divhigh_n_basecase
-[tests/tmul.c] improve coverage
-[tune/tuneup.c] forbid k = n-1 in divhigh_ktab[]
+	[src/mpfr-impl.h] assume little-endian double implies little-endian decimal128
 
-------------------------------------------------------------------------
-r12347 | zimmerma | 2018-02-20 16:37:55 +0000 (Tue, 20 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tdiv.c
+2018-06-21  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tdiv.c] improve coverage, now 100% for div.c
+	[src/mpfr-impl.h] FIXME for _Decimal128.
 
-------------------------------------------------------------------------
-r12346 | zimmerma | 2018-02-20 16:16:40 +0000 (Tue, 20 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/ai.c
-   M /trunk/tests/tai.c
+2018-06-21  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/ai.c] revert part of r12312
-[tests/tai.c] added coverage test provided by Sylvain Chevillard
+	[src/set_d128.c] (partly) implement the _MPFR_IEEE_FLOATS case (BID only so far)
+	[tests/tget_set_d128.c] added more tests
 
-------------------------------------------------------------------------
-r12345 | zimmerma | 2018-02-20 15:36:05 +0000 (Tue, 20 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/sub1.c
+	[src/set_d64.c] added comments
 
-[src/sub1.c] revert r12317 since it did not consider UBFs. For the record,
-	     tfmma was failing with GMP_CHECK_RANDOMIZE=1519138438006416.
+	[src/get_d128.c] removed useless comment
 
-------------------------------------------------------------------------
-r12344 | zimmerma | 2018-02-20 15:19:40 +0000 (Tue, 20 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
-   M /trunk/tests/tdiv.c
+2018-06-20  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/div.c] get rid of mpfr_div_with_mpz_tdiv_q
+	[src/get_d128.c] avoid using doubles
+	[tests/tget_set_d128.c] improve test coverage
 
-------------------------------------------------------------------------
-r12343 | vlefevre | 2018-02-20 14:54:05 +0000 (Tue, 20 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/gmp_op.c
+	[tests/tget_set_d128.c] improve test coverage
 
-[src/gmp_op.c] Fixed a bug in mpfr_cmp_q on NaN rational: the NaN flag
-was set by mpfr_set_q, but the flags were not restored just after.
-------------------------------------------------------------------------
-r12342 | vlefevre | 2018-02-20 14:45:35 +0000 (Tue, 20 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/gmp_op.c
+	[tests/tget_set_d128.c] improve coverage
 
-[src/gmp_op.c] Reverted incorrect change in r12337 for mpfr_cmp_q.
-Explanation in comment. If the code was not tested, it should be by
-using mpq_set_num and mpq_set_den to construct such rationals.
-------------------------------------------------------------------------
-r12341 | zimmerma | 2018-02-20 14:27:22 +0000 (Tue, 20 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tdiv.c
+	added mpfr_get_decimal128 (still experimental)
 
-[tests/tdiv.c] improve coverage
+	[get_d64.c] added comments and simplified code
 
-------------------------------------------------------------------------
-r12340 | zimmerma | 2018-02-20 14:08:20 +0000 (Tue, 20 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tdiv.c
+2018-06-20  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tdiv.c] improve coverage of mpfr_div_2
+	[tests/{tget_set_d64.c,tget_set_d128.c}] Tests on powers of 10:
+	test negative numbers too.
 
-------------------------------------------------------------------------
-r12339 | vlefevre | 2018-02-20 13:55:40 +0000 (Tue, 20 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/add1sp.c
-   M /trunk/src/sub1sp.c
+2018-06-19  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/{add,sub}1sp.c] Updated/added comments for MPFR_WANT_ASSERT >= 2.
-------------------------------------------------------------------------
-r12338 | zimmerma | 2018-02-20 13:53:51 +0000 (Tue, 20 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+	[doc/README.dev] Added a note about FP constants and native FP.
 
-[src/div.c] removed dead code
+	[tools/mpfrlint] Check that preprocessing directives have no spaces
+	before.
 
-------------------------------------------------------------------------
-r12337 | zimmerma | 2018-02-20 13:45:08 +0000 (Tue, 20 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/gmp_op.c
-   M /trunk/tests/tgmpop.c
+	[src/set_d128.c] Modified a comment.
 
-[src/gmp_op.c] removed dead code
-[tests/tgmpop.c] improve coverage of gmp_op.c to 100%
+	[src/set_d128.c] Avoid double, which is unreliable with GCC
+	in non-standard mode (see GCC bug 323 and the discussion in
+	GCC bug 85957). But the failure in tget_set_d128 probably came from
+	the fact that (_Decimal128) 0.1 is not 1/10 exactly (the double 0.1
+	has about a 17-digit precision only, while _Decimal128 has more);
+	this test now passes.
 
-------------------------------------------------------------------------
-r12336 | vlefevre | 2018-02-20 12:33:38 +0000 (Tue, 20 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/acinclude.m4
+	[src/set_d128.c] Simplified code and added assertions.
 
-[acinclude.m4] Added missing ";;" before "esac" for code robustness.
-------------------------------------------------------------------------
-r12335 | vlefevre | 2018-02-20 12:31:34 +0000 (Tue, 20 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/acinclude.m4
+	[src/set_d64.c] Added a log message (like in set_d128.c).
 
-[acinclude.m4] Added a FIXME. Added a ";;" for safety.
-------------------------------------------------------------------------
-r12334 | zimmerma | 2018-02-20 11:48:29 +0000 (Tue, 20 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	[src/{set_d64.c,set_d128.c}] Bug fix: use mpfr_strtofr instead of
+	mpfr_set_str to get the ternary value.
 
-[acinclude.m4] added comment, and define MPFR_LONG_WITHIN_LIMB when cannot test
+	[tests/{tget_set_d64.c,tget_set_d128.c}] Added tests on powers of 10.
+	  * tget_set_d64 fails on negative due to a bad ternary value.
+	  * tget_set_d128 fails on negative due to bad value, etc.
 
-------------------------------------------------------------------------
-r12333 | vlefevre | 2018-02-20 09:33:38 +0000 (Tue, 20 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/random_deviate.c
+	[tests/tget_set_d128.c] Test the flags too.
 
-[src/random_deviate.c] Improved highest_bit_idx in the case where
-MPFR_LONG_WITHIN_LIMB is not defined (tested with GCC).
-------------------------------------------------------------------------
-r12332 | zimmerma | 2018-02-20 09:17:15 +0000 (Tue, 20 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mul.c
+	[tests/tget_set_d128.c] Test more values.
 
-[src/mul.c] resolved FIXME and removed dead code
+	[tests/tget_set_d128.c] Converting an integer into _Decimal128 is better
+	than converting a double into _Decimal128.
 
-------------------------------------------------------------------------
-r12331 | zimmerma | 2018-02-20 08:45:20 +0000 (Tue, 20 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tmul.c
+	[tests/tget_set_d128.c] Simplified the test, avoiding a bug in ICC 15
+	at the same time (1.0D was regarded as 0).
 
-[tests/tmul.c] improve coverage
+	[tests/tget_set_d128.c] Fixed indentation.
 
-------------------------------------------------------------------------
-r12330 | zimmerma | 2018-02-20 08:31:14 +0000 (Tue, 20 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/random_deviate.c
+	[tests/tversion.c] Decimal formats: output the encoding type (DPD/BID).
 
-[src/random_deviate.c] highest_bit_idx() assumes x > 0
+	[src/set_d128.c] Changed _GMP_IEEE_FLOATS to _MPFR_IEEE_FLOATS as per
+	r10958 (in set_d128.c, currently in a comment due to r12772).
 
-------------------------------------------------------------------------
-r12329 | zimmerma | 2018-02-20 08:27:35 +0000 (Tue, 20 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/random_deviate.c
+	[src/set_d128.c] Added a log message.
 
-[src/random_deviate.c] fixed comment
+	[tests/tget_set_d128.c] Added an informative error message.
 
-------------------------------------------------------------------------
-r12328 | zimmerma | 2018-02-20 08:24:24 +0000 (Tue, 20 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/random_deviate.c
+	[src/set_d128.c] Disable the _GMP_IEEE_FLOATS code, which is not
+	complete yet and makes the compilation fail.
 
-[src/random_deviate.c] redo change r12315 using MPFR_LONG_WITHIN_LIMB
+2018-06-13  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12327 | zimmerma | 2018-02-20 08:09:46 +0000 (Tue, 20 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sub1.c
+	[src/set_d128.c] Corrected year in copyright notice.
 
-[src/sub1.c] added 2 FIXME
+	[src/set_d128.c] Minor improvements.
 
-------------------------------------------------------------------------
-r12326 | vlefevre | 2018-02-19 23:32:38 +0000 (Mon, 19 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tai.c
+2018-06-13  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tai.c] Renamed test_near_zero to test_near_m2e, since this is
-"exercise mpfr_ai near m*2^e", as documented. Corrected comments.
-------------------------------------------------------------------------
-r12325 | vlefevre | 2018-02-19 23:29:35 +0000 (Mon, 19 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tai.c
+	[tests/tget_set_d64.c] added -v option to get verbose output
+	[tests/tget_set_d128.c] likewise
 
-[tests/tai.c] For test_near_zero(), check that the NaN flag was not set
-(useful since such tests don't really check that the result is not NaN).
-------------------------------------------------------------------------
-r12324 | zimmerma | 2018-02-19 20:53:27 +0000 (Mon, 19 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tmul.c
+2018-06-13  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tmul.c] improve coverage
+	[TODO] Missing "r".
 
-------------------------------------------------------------------------
-r12323 | zimmerma | 2018-02-19 18:22:00 +0000 (Mon, 19 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tmul.c
+2018-06-13  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tmul.c] improve coverage
+	[TODO] update for mpfr_set_decimal128
 
-------------------------------------------------------------------------
-r12322 | vlefevre | 2018-02-19 17:35:09 +0000 (Mon, 19 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/random_deviate.c
+	added mpfr_set_decimal128 (work in progress, not yet fully tested)
 
-[src/random_deviate.c] Reverted incorrect change r12315: MPFR_LIMB_MAX
-cannot be used with the preprocessor due to the cast. The test should
-be done in "pure" C and the middle-end of the compiler should optimize.
-------------------------------------------------------------------------
-r12321 | vlefevre | 2018-02-19 17:27:03 +0000 (Mon, 19 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/sub1.c
+2018-06-08  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/sub1.c] Removed an unused label.
-------------------------------------------------------------------------
-r12320 | vlefevre | 2018-02-19 16:36:39 +0000 (Mon, 19 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/tests/tzeta.c
+	[tools/coverage] added branch coverage
 
-[tests/tzeta.c] Check that the NaN flag was not set in some tests
-that do not involve NaN (useful since such tests don't really check
-that the result is not NaN).
-------------------------------------------------------------------------
-r12319 | zimmerma | 2018-02-19 16:28:34 +0000 (Mon, 19 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sub1.c
+2018-06-07  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sub1.c] removed dead code, now coverage should be 100%
+	[src/strtofr.c] Moved some computations on the exponents earlier
+	since they may yield an early overflow or underflow, and computing
+	the division by b^e would be useless in such a case.
 
-------------------------------------------------------------------------
-r12318 | vlefevre | 2018-02-19 16:26:51 +0000 (Mon, 19 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/ai.c
+	[src/strtofr.c] Added a MPFR_ASSERTD and a FIXME on things that don't
+	make much sense in the error analysis (still trying to understand…).
 
-[src/ai.c] Avoid more integer overflows.
-------------------------------------------------------------------------
-r12317 | zimmerma | 2018-02-19 16:24:11 +0000 (Mon, 19 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/sub1.c
-   M /trunk/tests/tsub.c
+2018-06-07  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/sub1.c] removed dead code
-[tests/tsub.c] added coverage test
+	[src/const_pi.c] missing reference about Brent-Salamin
 
-------------------------------------------------------------------------
-r12316 | vlefevre | 2018-02-19 16:17:03 +0000 (Mon, 19 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/ai.c
+	[doc/algorithms.bib] added reference
 
-[src/ai.c] Detect some potential integer overflows.
-------------------------------------------------------------------------
-r12315 | zimmerma | 2018-02-19 16:02:44 +0000 (Mon, 19 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/random_deviate.c
+2018-06-05  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/random_deviate.c] don't compile alternate code if not needed
+	[tests/tfmma.c] improve coverage of the UBF case in mpfr_sub
+			(now coverage of sub.c is 100%)
 
-------------------------------------------------------------------------
-r12314 | vlefevre | 2018-02-19 16:00:44 +0000 (Mon, 19 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/ai.c
+2018-06-05  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/ai.c] Coding style. Corrected comments.
-------------------------------------------------------------------------
-r12313 | zimmerma | 2018-02-19 15:52:02 +0000 (Mon, 19 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tzeta.c
+	[src/sum.c] Updated TODO from r12755.
 
-[tests/tzeta.c] improve coverage (and also uceil_exp2.c)
+2018-06-05  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r12312 | zimmerma | 2018-02-19 14:37:07 +0000 (Mon, 19 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/ai.c
-   M /trunk/tests/tai.c
+	[src/fmma.c] now mpfr_fmms calls mpfr_sub for a better coverage
 
-[src/ai.c] removed dead code, and improved coverage
-[tests/tai.c] exercise mpfr_ai near (negative) zeroes
+2018-06-04  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12311 | zimmerma | 2018-02-19 10:38:48 +0000 (Mon, 19 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/ai.c
+	[src/sum.c] Updated TODO from r12755.
 
-[src/ai.c] fixed recomputation of wprec (to be confirmed)
+	[src/sum.c] Added a comment with a TODO about potentially dead code on
+	some platforms.
 
-------------------------------------------------------------------------
-r12310 | zimmerma | 2018-02-19 07:10:52 +0000 (Mon, 19 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/ai.c
+	codespell: simplified exceptions.
+	  * Added codespell.exclude file.
+	  * codespell.ignore: removed some words (particular cases).
+	  * tools/mpfrlint: use the codespell.exclude exclude file, and for
+	    the doc directory, replaced -S by an explicit list of files.
 
-[src/ai.c] removed dead code
+	[codespell.ignore] Also ignore "objext" and "tim" (codespell 1.13).
 
-------------------------------------------------------------------------
-r12309 | vlefevre | 2018-02-19 03:01:53 +0000 (Mon, 19 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/sub1sp.c
+2018-06-04  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/sub1sp.c] Fixed indentation.
-------------------------------------------------------------------------
-r12308 | vlefevre | 2018-02-19 02:55:05 +0000 (Mon, 19 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tsqrt.c
+	[src/sub1.c] fixed a bug and solved a FIXME (underflow for UBFs)
+	Note: this mostly reverts r12319, r12321, and the remaining FIXME
+	from r12327.
+	[tests/tfmma.c] added non-regression tests
 
-Removed trailing whitespace.
-------------------------------------------------------------------------
-r12307 | vlefevre | 2018-02-19 02:54:12 +0000 (Mon, 19 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/sqrt.c
+2018-06-02  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sqrt.c] Coding style.
-------------------------------------------------------------------------
-r12306 | vlefevre | 2018-02-19 02:46:30 +0000 (Mon, 19 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/expm1.c
+	[src/mpfr-impl.h] Concerning r12738, the safer code can be avoided
+	with GCC in ISO C mode (__STRICT_ANSI__).
 
-[src/expm1.c] Avoid a potential integer overflow in a type conversion
-for 32-bit mpfr_exp_t and 64-bit long (e.g. with -D_MPFR_PREC_FORMAT=2
-on a 64-bit Linux machine).
-------------------------------------------------------------------------
-r12305 | vlefevre | 2018-02-19 02:19:29 +0000 (Mon, 19 Feb 2018) | 4 lines
-Changed paths:
-   M /trunk/src/div_2ui.c
-   M /trunk/tests/tmul_2exp.c
+2018-06-02  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/div_2ui.c] Reverted incorrect change in r12272 and added comments
-  and assertions.
-[tests/tmul_2exp.c] Improved a test to trigger the bug in r12272 also
-  when mpfr_exp_t > 32 bits (e.g. on 64-bit Linux machines).
-------------------------------------------------------------------------
-r12304 | vlefevre | 2018-02-19 01:46:30 +0000 (Mon, 19 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tmul_2exp.c
+	[src/invert_limb.h] fixed two typos reported by Marco Bodrato
 
-[tests/tmul_2exp.c] Improved output if mpfr_exp_t > long (for positive).
-------------------------------------------------------------------------
-r12303 | vlefevre | 2018-02-19 01:43:20 +0000 (Mon, 19 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tmul_2exp.c
+2018-06-02  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tmul_2exp.c] Improved output if mpfr_exp_t > long (for negative).
-------------------------------------------------------------------------
-r12302 | vlefevre | 2018-02-19 01:10:13 +0000 (Mon, 19 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_ld.c
-   M /trunk/tests/tsub1sp.c
+	[tests/tversion.c] For GCC, output __STRICT_ANSI__ when defined.
 
-[tests] Fixed type errors with -D_MPFR_PREC_FORMAT=2 in CFLAGS and the
---enable-assert=full configure option (signaled by GCC's -Wformat).
-------------------------------------------------------------------------
-r12301 | vlefevre | 2018-02-19 01:00:48 +0000 (Mon, 19 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/mul.c
+2018-06-01  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/mul.c] Fixed type error with -D_MPFR_PREC_FORMAT=2 in CFLAGS and
-the --enable-assert=full configure option (signaled by GCC's -Wformat).
-------------------------------------------------------------------------
-r12300 | vlefevre | 2018-02-19 00:38:01 +0000 (Mon, 19 Feb 2018) | 6 lines
-Changed paths:
-   M /trunk/doc/README.dev
+	[src/sqrt.c] fixed/improved comments
 
-[doc/README.dev] Removed the mention of MPFR_EXT_EMIN and MPFR_EXT_EMAX,
-replacing them by MPFR_EMIN_MIN and MPFR_EMAX_MAX, as done in r12298.
-Note: These old macros had been introduced in r7863 so that one could
-choose different values for the extended exponent range for debugging
-purpose, but they were not used in practice and were adding complexity
-(and potential inconsistency) for no really good reason.
-------------------------------------------------------------------------
-r12299 | zimmerma | 2018-02-18 17:53:00 +0000 (Sun, 18 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/agm.c
-   M /trunk/tests/tagm.c
+2018-05-31  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/agm.c] added comment about line of code impossible to cover
+	[src/invsqrt_limb.h] fixed typos in comments
 
-------------------------------------------------------------------------
-r12298 | zimmerma | 2018-02-18 14:23:01 +0000 (Sun, 18 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/agm.c
-   M /trunk/src/div.c
-   M /trunk/src/mpfr-impl.h
+2018-05-31  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/agm.c,src/div.c,src/mpfr-impl.h] replaced MPFR_EXT_EMIN by MPFR_EMIN_MIN,
-				      and MPFR_EXT_EMAX by MPFR_EMAX_MAX
+	[doc/README.dev] Updated a URL.
 
-------------------------------------------------------------------------
-r12297 | zimmerma | 2018-02-18 14:09:55 +0000 (Sun, 18 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/sqrt.c
-   M /trunk/tests/tsqrt.c
+	[src/mpfr-impl.h] Fixed potential compilation failure with _Decimal64,
+	detected with r12738.
 
-[src/sqrt.c] removed dead code
-[tests/tsqrt.c] improve coverage of mpfr_sqrt, now at 100%
+	[doc/mpfr.texi] Updated the month.
 
-------------------------------------------------------------------------
-r12296 | zimmerma | 2018-02-18 12:48:51 +0000 (Sun, 18 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tsqrt.c
+	Updated mpfr.org URL's to use https (except in ChangeLog and NEWS).
 
-[tests/tsqrt.c] improve coverage
+	[src/mpfr-impl.h] With GCC, select safer code for DOUBLE_ISNAN(x).
 
-------------------------------------------------------------------------
-r12295 | zimmerma | 2018-02-18 12:31:53 +0000 (Sun, 18 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tsqrt.c
+2018-05-30  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tsqrt.c] improve coverage
+	[tools/announce-text] http → https (for mpfr.org).
 
-------------------------------------------------------------------------
-r12294 | zimmerma | 2018-02-17 19:30:39 +0000 (Sat, 17 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+	[doc] Updated FAQ.html with update-faq.
 
-[src/sqrt.c] removed dead code
+	[doc] Workaround due to the lack of https support in libxml2
+	and the fact that mpfr.org now uses https with HSTS.
+	  * faq.xsl: for the visual.css, use a local URL.
+	  * update-faq: download visual.css from mpfr.org first.
 
-------------------------------------------------------------------------
-r12293 | zimmerma | 2018-02-17 16:53:57 +0000 (Sat, 17 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tsqrt.c
+	[doc/update-faq] http → https
 
-[tests/tsqrt.c] improve coverage
+	[src/mpfr-impl.h] Added a FIXME about DOUBLE_ISNAN and GCC.
 
-------------------------------------------------------------------------
-r12292 | zimmerma | 2018-02-17 12:53:46 +0000 (Sat, 17 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/sqrt.c
-   M /trunk/tests/tsqrt.c
+2018-05-28  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tsqrt.c] improved coverage
-[src/sqrt.c] added comments
+	[src/strtofr.c] Continued to review the new error analysis and code.
+	Changes:
+	  * made the code more SSA-like (avoid a "y += ysize; y -= ysize;");
+	  * clarified comments;
+	  * use MPFR_LIMB_MSB;
+	  * added a FIXME on the error analysis.
 
-------------------------------------------------------------------------
-r12291 | vlefevre | 2018-02-17 12:26:01 +0000 (Sat, 17 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/expm1.c
+	[doc/README.dev] Added info about shell portability, and in particular
+	about quotes (covering changes in r5659, r6128, r12711 and r12721).
 
-[src/expm1.c] Added a FIXME comment.
-------------------------------------------------------------------------
-r12290 | zimmerma | 2018-02-17 11:53:07 +0000 (Sat, 17 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tsqrt.c
+	[tools/{ck-clz_tab,ck-copyright-notice,ck-mparam,update-version}] Fixed
+	non-portable quote nesting in backticks.
 
-[tests/tsqrt.c] improve coverage
+	[examples] Added "mpfr_free_cache ();" at the end of all programs,
+	as this is something that should be done systematically (at least
+	to detect memory leaks with valgrind).
 
-------------------------------------------------------------------------
-r12289 | zimmerma | 2018-02-17 11:01:10 +0000 (Sat, 17 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+2018-05-25  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sqrt.c] removed dead code
+	[src/strtofr.c] Started to review the new error analysis and code
+	(r12705,12706). Minor improvements.
 
-------------------------------------------------------------------------
-r12287 | vlefevre | 2018-02-17 10:28:33 +0000 (Sat, 17 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tsub.c
+	[src/{mpfr-impl.h,mpn_exp.c}] Changed the return type of mpfr_mpn_exp
+	from long to int for consistency with the mpfr_mpn_exp code and with
+	strtofr.c (which expects an int).
 
-[tests/tsub.c] Improved a comment.
-------------------------------------------------------------------------
-r12286 | vlefevre | 2018-02-17 10:27:19 +0000 (Sat, 17 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tsub.c
+	[src/mpn_exp.c] Code cleanup and protection against integer overflow.
 
-[tests/tsub.c] Check reuse of arguments for all mpfr_sub tests, when
-possible.
-------------------------------------------------------------------------
-r12285 | zimmerma | 2018-02-17 09:39:57 +0000 (Sat, 17 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
-   M /trunk/tests/tsub1sp.c
+2018-05-24  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sub1sp.c] fixed bug in mpfr_sub1sp1n (corner case when a=c)
-[tests/tsub1sp.c] added non-regression test
+	[src/hypot.c] Do bitwise operations in unsigned arithmetic.
 
-------------------------------------------------------------------------
-r12284 | zimmerma | 2018-02-17 08:52:47 +0000 (Sat, 17 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[src/hypot.c] Added 2 TODO.
 
-[src/sub1sp.c] fixed case 2e
+2018-05-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12283 | vlefevre | 2018-02-17 03:25:38 +0000 (Sat, 17 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tsub.c
+	[tools/{ck-clz_tab,ck-copyright-notice}] Changed the POSIX $(…) to `…`
+	for Bourne shell compatibility (as under Solaris 10).
+	Note: these scripts are called via dist-hook for "make dist".
 
-[tests/tsub.c] Updated bug20180217 to trigger the bug: one needs to
-reuse the smallest input variable as the output variable.
-------------------------------------------------------------------------
-r12282 | vlefevre | 2018-02-17 03:03:09 +0000 (Sat, 17 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tsub.c
+2018-05-22  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tsub.c] Added a test.
-------------------------------------------------------------------------
-r12281 | vlefevre | 2018-02-17 01:36:28 +0000 (Sat, 17 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/expm1.c
+	[src/mpfr-impl.h] Added a comment for UBF.
 
-[src/expm1.c] Updated a comment.
-------------------------------------------------------------------------
-r12280 | vlefevre | 2018-02-17 01:29:43 +0000 (Sat, 17 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/expm1.c
+	[src/mpfr-impl.h] Added a comment about UBF and alignment requirements.
 
-[src/expm1.c] Fixed an integer overflow from r12276.
-------------------------------------------------------------------------
-r12279 | vlefevre | 2018-02-17 01:12:49 +0000 (Sat, 17 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/expm1.c
+2018-05-17  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/expm1.c] Added a log message.
-------------------------------------------------------------------------
-r12278 | zimmerma | 2018-02-16 19:10:57 +0000 (Fri, 16 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tfmma.c
+	[tests/tstrtofr.c] Removed TODO added in r12681, now obsolete.
 
-[tests/tfmma.c] added coverage test
+2018-05-16  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12277 | zimmerma | 2018-02-16 16:30:09 +0000 (Fri, 16 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tfmma.c
+	Removed trailing whitespace.
 
-[tests/tfmma.c] improve coverage of add.c (ubf case)
+2018-05-16  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r12276 | vlefevre | 2018-02-16 16:11:17 +0000 (Fri, 16 Feb 2018) | 9 lines
-Changed paths:
-   M /trunk/src/expm1.c
+	[src/strtofr.c] revisit error analysis in the division case (end)
 
-[src/expm1.c] It seems that code removed in r12273 wasn't necessarily
-dead code with mpfr_exp_t > long (-D_MPFR_EXP_FORMAT=4 needed) because
-for MPFR_SMALL_INPUT_AFTER_SAVE_EXPO, err would be limited to -LONG_MAX
-and precisions larger than LONG_MAX could be problems. The -LONG_MAX
-bound from r4127 was arbitrary and only used to simplify the code due
-to the fact that mpfr_cmp_si compares to a "long" argument. But now we
-have the internal mpfr_get_exp_t function, allowing us to avoid this
-arbitrary bound (fixing the code and making it more efficient for these
-extreme cases) and simplify the code even more.
-------------------------------------------------------------------------
-r12275 | zimmerma | 2018-02-16 15:54:26 +0000 (Fri, 16 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tools/mbench/mfv5.cc
-   M /trunk/tools/mbench/mfv5.h
+2018-05-15  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[mbench] added new option to usage
+	[src/strtofr.c] revisit error analysis in the division case (work in progress,
+			not yet finished)
 
-------------------------------------------------------------------------
-r12274 | zimmerma | 2018-02-16 15:39:59 +0000 (Fri, 16 Feb 2018) | 4 lines
-Changed paths:
-   M /trunk/tools/mbench/mfv5.cc
-   M /trunk/tools/mbench/mfv5.h
+2018-05-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-[mbench] added option -d to fix the exponent difference between operands
-	 (useful for mpfr_add and mpfr_sub, for example use -d0 for operands
-	 with same exponent, -d1 for operands differing by 1, ...)
+	[tests/tsub.c] Updated the comment added in r12701.
 
-------------------------------------------------------------------------
-r12273 | zimmerma | 2018-02-16 15:09:38 +0000 (Fri, 16 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/expm1.c
+	[tests/tsub.c] Added a comment about the bug fixed in r10697:
+	bug20180217 is a non-regression test for this bug.
 
-[src/expm1.c] improve coverage (by removing dead code)
+2018-05-02  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12272 | vlefevre | 2018-02-16 14:35:38 +0000 (Fri, 16 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/div_2ui.c
+	[tests/tstckintc.c] Avoid false warnings with -Wcast-align=strict from
+	GCC 8.1 by adding casts "(long *) (void *)", still allowing checks of
+	other alignment requirements (which are not handled by the tstckintc.c
+	code).
 
-[src/div_2ui.c] No need for mpfr_uexp_t, due to the constraints on
-the valid exponents.
-------------------------------------------------------------------------
-r12271 | vlefevre | 2018-02-16 14:32:58 +0000 (Fri, 16 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	[TODO] + Use GCC's nonnull and returns_nonnull attributes.
 
-[doc/README.dev] Update about mpfr_exp_t.
-------------------------------------------------------------------------
-r12270 | vlefevre | 2018-02-16 14:13:15 +0000 (Fri, 16 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/mul_2ui.c
+	[acinclude.m4] Added a note on _Decimal64 detection.
 
-[src/mul_2ui.c] Simplified mpfr_mul_2ui (like mpfr_div_2ui).
-------------------------------------------------------------------------
-r12269 | vlefevre | 2018-02-16 14:09:39 +0000 (Fri, 16 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/div_2ui.c
+2018-04-30  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/div_2ui.c] Simplified justification.
-------------------------------------------------------------------------
-r12268 | vlefevre | 2018-02-16 13:50:07 +0000 (Fri, 16 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/div_2ui.c
+	[doc/README.dev] Added info about spelling.
 
-[src/div_2ui.c] Simplified code as suggested by PZ; added justification.
-------------------------------------------------------------------------
-r12267 | zimmerma | 2018-02-16 12:37:56 +0000 (Fri, 16 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/add1.c
-   M /trunk/src/div_ui.c
-   M /trunk/src/sub1sp.c
+	Corrected "runtime" to "run time" (noun) or "run-time" (adjective)
+	when it means the time at which the program is run.
+	See:
+	  https://gcc.gnu.org/codingconventions.html#Spelling
+	  https://en.wikipedia.org/wiki/Run_time
 
-GNU style: https://www.gnu.org/prep/standards/standards.html#Formatting
+2018-04-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12266 | zimmerma | 2018-02-16 12:35:19 +0000 (Fri, 16 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/div_2ui.c
-   M /trunk/tests/tmul_2exp.c
+	[src/strtofr.c] Potentially unnecessary code: comes from r8384.
 
-[src/div_2ui.c] added comment
-[tests/tmul_2exp.c] added coverage test
+	[src/strtofr.c] Updated TODO about potentially unnecessary code.
 
-------------------------------------------------------------------------
-r12265 | vlefevre | 2018-02-16 11:31:31 +0000 (Fri, 16 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/div_2ui.c
+	[src/strtofr.c] Updated TODO about potentially unnecessary code,
+	showing that this code probably increases the error bound (errors
+	accumulate instead of compensating without this code).
 
-[src/div_2ui.c] Replaced FIXME by an explanation.
-------------------------------------------------------------------------
-r12264 | zimmerma | 2018-02-16 10:55:46 +0000 (Fri, 16 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/div_2ui.c
+	[src/strtofr.c] Added a TODO about potentially unnecessary code.
 
-[src/div_2ui.c] added FIXME
+	[src/strtofr.c] Corrected/updated comments and added a log message.
 
-------------------------------------------------------------------------
-r12263 | zimmerma | 2018-02-16 10:43:49 +0000 (Fri, 16 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/cmp_ld.c
+	[src/strtofr.c] Corrected a comment (exp_base and exp_bin description).
 
-[src/cmp_ld.c] simplified code (and avoid useless test when long double is not
-	       double-double)
+	[src/strtofr.c] Added a FIXME: possible bug in very special cases with
+	large exponents, 32-bit mpfr_exp_t and very long strings.
 
-------------------------------------------------------------------------
-r12262 | zimmerma | 2018-02-16 10:32:47 +0000 (Fri, 16 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tsub1sp.c
+	[src/strtofr.c] Added/clarified comments.
 
-[tests/tsub1sp.c] improve coverage
+	[tests/tstrtofr.c] Added a TODO related to the bug fixed in r12573.
 
-------------------------------------------------------------------------
-r12261 | zimmerma | 2018-02-16 09:31:31 +0000 (Fri, 16 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tadd1sp.c
+2018-04-26  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tadd1sp.c] improve coverage of add1sp
+	[tests/tgmpop.c] Coding style.
 
-------------------------------------------------------------------------
-r12260 | zimmerma | 2018-02-16 08:23:06 +0000 (Fri, 16 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[tests/tgmpop.c] For mpfr_cmp_q, improved the test where x is NaN by
+	checking all the flags (not just erange) and added a test where y is
+	a NaN rational.
+	Note: this could be used to detect 2 bugs, fixed in r12343 and r12499,
+	respectively.
 
-[src/sub1sp.c] fixed bug20180216
+	[tests/tcan_round.c] Removed a r2 != MPFR_RNDF test and added 3 TODO's
+	to support r2 == MPFR_RNDF in some other tests.
 
-------------------------------------------------------------------------
-r12259 | zimmerma | 2018-02-16 07:53:26 +0000 (Fri, 16 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tadd1sp.c
+2018-04-24  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tadd1sp.c] added coverage test
+	[src/mpfr-gmp.h] Clarified a comment (the "if" is part of the code,
+	not the English word).
 
-------------------------------------------------------------------------
-r12257 | vlefevre | 2018-02-16 02:22:30 +0000 (Fri, 16 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tsub.c
+2018-04-24  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tsub.c] More tests in bug20180216.
-------------------------------------------------------------------------
-r12256 | vlefevre | 2018-02-16 02:08:03 +0000 (Fri, 16 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/tests/tsub.c
+	[src/mpfr-gmp.h] added comment about MPN_FILL
 
-[tests/tsub.c] Added bug20180216 test currently failing (corresponding
-to the failure mentioned in r12253, r12254 and r12255, but reproducible
-with a simple "./configure").
-------------------------------------------------------------------------
-r12255 | vlefevre | 2018-02-16 01:39:57 +0000 (Fri, 16 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/exp_2.c
+2018-04-20  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/exp_2.c] Note that the internal behavior depends on whether
-MPFR_LONG_WITHIN_LIMB is defined or not (see also r12253). This
-should not matter, possibly except in case of bug, like currently.
-------------------------------------------------------------------------
-r12254 | vlefevre | 2018-02-16 01:29:24 +0000 (Fri, 16 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/acinclude.m4
+	[src/out_str.c] Check for integer overflow (here, a minor issue).
 
-[acinclude.m4] Updated FIXME for MPFR_CHECK_MP_LIMB_T_VS_LONG.
-------------------------------------------------------------------------
-r12253 | vlefevre | 2018-02-16 01:23:07 +0000 (Fri, 16 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/acinclude.m4
+	[src/out_str.c] Support mpfr_exp_t larger than long (with mpfr_eexp_t).
 
-[acinclude.m4] Added a FIXME for MPFR_CHECK_MP_LIMB_T_VS_LONG.
-------------------------------------------------------------------------
-r12252 | vlefevre | 2018-02-16 00:00:13 +0000 (Fri, 16 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/sub1sp.c
+2018-04-19  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sub1sp.c] Squeezed useless double-space.
-------------------------------------------------------------------------
-r12251 | zimmerma | 2018-02-15 18:42:18 +0000 (Thu, 15 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[tests] Added tdot to svn:ignore property.
 
-[src/sub1sp.c] fixed bug20180215()
+	[tests/tdot.c] Various improvements.
 
-------------------------------------------------------------------------
-r12250 | vlefevre | 2018-02-15 15:10:10 +0000 (Thu, 15 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tsub.c
+	[doc/mpfr.texi] Note that mpfr_dot does not yet handle intermediate
+	underflows either.
+	[src/dot.c] Changed an MPFR_ASSERTD to MPFR_ASSERTN since the assertion
+	is not satisfied on some user inputs. Minor improvements.
 
-[tests/tsub.c] Updated comment for bug20180215.
-------------------------------------------------------------------------
-r12249 | vlefevre | 2018-02-15 14:51:02 +0000 (Thu, 15 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[NEWS] Added mpfr_dot.
 
-[src/sub1sp.c] Use "else" for symmetry with above code.
-------------------------------------------------------------------------
-r12248 | vlefevre | 2018-02-15 14:39:54 +0000 (Thu, 15 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tsub.c
+	[doc/mpfr.texi] In the added functions, note that mpfr_dot is incomplete
+	and experimental.
 
-[tests/tsub.c] Added a comment for bug20180215 (bug in the case
-2 <= d < p in generic code mpfr_sub1sp() introduced in r12242).
-------------------------------------------------------------------------
-r12246 | vlefevre | 2018-02-15 14:27:08 +0000 (Thu, 15 Feb 2018) | 5 lines
-Changed paths:
-   M /trunk/tests/tsub.c
+	[tests/tsum.c] Code style.
 
-[tests/tsub.c] Added bug20180215 test currently failing, found from a
-failure using -DMPFR_GENERIC_ABI in CFLAGS and the --enable-assert=full
-configure option; but the test had to be extended so that it also fails
-with a simple "configure", i.e. without -DMPFR_GENERIC_ABI in CFLAGS
-and without the --enable-assert=full configure option.
-------------------------------------------------------------------------
-r12245 | vlefevre | 2018-02-15 14:13:52 +0000 (Thu, 15 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[doc/mpfr.texi] Updated the month.
 
-Removed trailing whitespace.
-------------------------------------------------------------------------
-r12243 | zimmerma | 2018-02-14 16:11:04 +0000 (Wed, 14 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[tests/tdot.c] Code style.
 
-[src/sub1sp.c] review of case 2 <= d < p in generic code mpfr_sub1sp()
+2018-04-19  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r12242 | zimmerma | 2018-02-14 14:41:48 +0000 (Wed, 14 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/div_ui.c
-   M /trunk/src/sub1sp.c
+	added mpfr_dot
 
-[src/div_ui.c] GNU style
-[src/sub1sp.c] reviewed the code for d>=p in mpfr_sub1sp()
+2018-04-19  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12241 | vlefevre | 2018-02-14 11:10:09 +0000 (Wed, 14 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[tests/tget_flt.c] Correction about the use of mpfr_signbit, in case
+	the implementation would change.
 
-[tools/mpfrlint] Much improved the check of the use of GMP internals.
-------------------------------------------------------------------------
-r12240 | zimmerma | 2018-02-14 10:06:46 +0000 (Wed, 14 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[src/sqr.c] Minor code improvement.
 
-[src/sub1sp.c] fixed a FIXME
+	[src/sqr.c] Code formatting.
 
-------------------------------------------------------------------------
-r12239 | zimmerma | 2018-02-14 09:50:02 +0000 (Wed, 14 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
-   M /trunk/src/sub1sp.c
+	[src/sqr.c] Clarified a comment and slightly improved code.
 
-[src/mpfr-gmp.h] define prototype of __gmpn_rsblsh1_n
-[src/sub1sp.c] changed names of variables to something more readable
+	[src/sqr.c] Typo in a comment.
 
-------------------------------------------------------------------------
-r12238 | zimmerma | 2018-02-14 09:36:58 +0000 (Wed, 14 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/configure.ac
-   M /trunk/src/sub1sp.c
+	[tests/tfma.c] Added test_underflow5.
 
-[configure.ac] detect mpn_rsblsh1_n instead of mpn_rsblsh_n
-[src/sub1sp.c] use mpn_rsblsh1_n instead of mpn_rsblsh_n with k=1
+	[tests/tfma.c] Minor correction for test_underflow4.
 
-------------------------------------------------------------------------
-r12237 | vlefevre | 2018-02-14 03:17:10 +0000 (Wed, 14 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[tests/tfma.c] Added a comment.
 
-[src/sub1sp.c] Added 2 FIXME's.
-------------------------------------------------------------------------
-r12236 | vlefevre | 2018-02-14 03:03:16 +0000 (Wed, 14 Feb 2018) | 4 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+2018-04-18  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sub1sp.c] In mpfr_sub1sp, initialize k only once. This slightly
-simplifies the code and avoids a -Wmaybe-uninitialized warning from
-GCC. The only failure on a 64-bit Linux machine is tsub1sp, due to
-an assertion failure in mpfr_sub1sp, as before this change.
-------------------------------------------------------------------------
-r12235 | vlefevre | 2018-02-14 02:49:07 +0000 (Wed, 14 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[tests/tfma.c] Added test_underflow4. This allows to show that the
+	bound MAX (MPFR_PREC (z), MPFR_PREC (s) + 1) in fma.c is optimal:
+	  * If one subtract 1 from the 1st term MPFR_PREC (z), a failure
+	    occurs in test_underflow4.
+	  * If one subtract 1 from the 2nd term MPFR_PREC (s) + 1, a failure
+	    occurs in test_underflow2.
 
-[src/sub1sp.c] Avoid the swapping of the exponents when they are equal.
-------------------------------------------------------------------------
-r12234 | zimmerma | 2018-02-13 16:06:18 +0000 (Tue, 13 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[configure.ac] For the ICC check, also test __INTEL_COMPILER.
 
-[src/sub1sp.c] review of case d=1 in generic code
+	[configure.ac] Corrected comment for the ICC check (GCC is no longer
+	disabled since r5720).
 
-------------------------------------------------------------------------
-r12233 | zimmerma | 2018-02-13 15:42:28 +0000 (Tue, 13 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/add1sp.c
+2018-04-18  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/add1sp.c] no need of MPFR_TMP_MARK any more
+	[src/mpfr.h] enable some code that now works with ICC (tested with ICC 14)
+	[TODO] removed item
 
-------------------------------------------------------------------------
-r12232 | zimmerma | 2018-02-13 15:19:27 +0000 (Tue, 13 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+2018-04-18  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sub1sp.c] end of review of case d=0 in generic code
+	[tests/tversion.c] Updated a comment about __ICC.
 
-------------------------------------------------------------------------
-r12231 | zimmerma | 2018-02-13 15:01:34 +0000 (Tue, 13 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+2018-04-18  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/sub1sp.c] work in progress
+	[TODO] removed item that we won't implement
 
-------------------------------------------------------------------------
-r12230 | vlefevre | 2018-02-13 14:49:52 +0000 (Tue, 13 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/add1sp.c
+	[TODO] removed done item (UBF)
 
-[src/add1sp.c] Moved a MPFR_ASSERTD to the right place.
-------------------------------------------------------------------------
-r12229 | zimmerma | 2018-02-13 14:26:57 +0000 (Tue, 13 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+2018-04-17  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/sub1sp.c] re-enable __gmpn_rsblsh_n (with WANT_GMP_INTERNALS)
+	[TODO] RNDF is done
 
-------------------------------------------------------------------------
-r12228 | zimmerma | 2018-02-13 14:13:23 +0000 (Tue, 13 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[TODO] removed an obsolete item
 
-[src/sub1sp.c] small improvement
+	[TODO] log_ui is done
 
-------------------------------------------------------------------------
-r12227 | zimmerma | 2018-02-13 13:59:18 +0000 (Tue, 13 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tools/cfarm.sh
+2018-04-17  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tools/cfarm.sh] updated for 4.0.1-rc2
+	[tools/mpfrlint] Detect the use of mpfr_div_2exp and mpfr_mul_2exp.
 
-------------------------------------------------------------------------
-r12226 | zimmerma | 2018-02-13 13:53:19 +0000 (Tue, 13 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/add1sp.c
+	[tests/{reuse.c,taway.c}] Added mpfr_div_2ui and mpfr_mul_2ui.
+	Note: si functions are not tested yet.
 
-[src/add1sp.c] mp_ptr -> mp_limb_t*
+	Replaced mpfr_mul_2exp & mpfr_div_2exp by mpfr_mul_2ui & mpfr_div_2ui,
+	respectively (for the tests, except in reuse.c and in taway.c).
+	Note: As documented, mpfr_mul_2exp & mpfr_div_2exp are only kept for
+	compatibility with MPF; mpfr_mul_2ui & mpfr_div_2ui are preferred.
 
-------------------------------------------------------------------------
-r12225 | zimmerma | 2018-02-13 13:49:43 +0000 (Tue, 13 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/add1sp.c
+2018-04-16  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/add1sp.c] get rid of MPN_COPY/MPN_ZERO in generic code
+	[TODO] + function to reduce the precision of a variable, with a
+	ternary value in input, i.e. taking care of double rounding.
 
-------------------------------------------------------------------------
-r12223 | vlefevre | 2018-02-13 02:48:00 +0000 (Tue, 13 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/src/add1sp.c
+	[tests/tfma.c] More tests for test_underflow2.
 
-[src/add1sp.c] Improved comments and other minor changes.
-------------------------------------------------------------------------
-r12222 | vlefevre | 2018-02-13 02:39:54 +0000 (Tue, 13 Feb 2018) | 6 lines
-Changed paths:
-   M /trunk/src/add1sp.c
+	[tests/tfma.c] Corrected r12603 for test_underflow2.
 
-[src/add1sp.c] In the generic code of mpfr_add1sp, fixed the computation
-of the round and sticky bits from r12220. At the same time, improved the
-handling of MPFR_RNDF in this part of the code:
-  * The "while" loop to compute the sticky bit is no longer done in this
-    case (the sticky bit does not matter).
-  * The "goto" is avoided.
-------------------------------------------------------------------------
-r12221 | vlefevre | 2018-02-13 01:22:50 +0000 (Tue, 13 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tadd.c
+	[tests/tfma.c] More tests for test_underflow2.
 
-[tests/tadd.c] Added 2 tests that fail starting with r12220.
-------------------------------------------------------------------------
-r12220 | zimmerma | 2018-02-12 15:40:42 +0000 (Mon, 12 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/src/add1sp.c
+	[src/fma.c] Updated easy case of underflow.
 
-[src/add1sp.c] cleanup generic code mpfr_add1sp()
+	[tests/tfma.c] Updated a comment for test_underflow2.
 
-------------------------------------------------------------------------
-r12219 | vlefevre | 2018-02-09 14:17:18 +0000 (Fri, 09 Feb 2018) | 7 lines
-Changed paths:
-   M /trunk/src/fma.c
-   M /trunk/src/hypot.c
+	[tests/tfma.c] In test_underflow2, also test different signs.
 
-[src/fma.c] Added a FIXME comment about overflow/underflow issues in
-  corner cases (already caught with MPFR_ASSERTN), fixable with UBF
-  like in mpfr_fmma.
-[src/hypot.c] Updated a comment: The problem that would come from an
-  underflow in y^2, in particular because x was scaled in order to
-  avoid an overflow in x^2, has been avoided by using a FMA (though
-  still buggy for these cases, as mentioned just above).
-------------------------------------------------------------------------
-r12215 | vlefevre | 2018-02-08 01:20:13 +0000 (Thu, 08 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tfits.c
-   M /trunk/tests/tfprintf.c
-   M /trunk/tests/tget_set_d64.c
-   M /trunk/tests/tget_sj.c
-   M /trunk/tests/tprintf.c
-   M /trunk/tests/tset_float128.c
-   M /trunk/tests/tset_sj.c
-   M /trunk/tests/tsprintf.c
-   M /trunk/tests/tversion.c
+	[tests] Updated svn:ignore property.
 
-[tests] Added/updated comments about the config.h inclusion.
-------------------------------------------------------------------------
-r12214 | vlefevre | 2018-02-08 01:07:46 +0000 (Thu, 08 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_float128.c
-   M /trunk/tests/tset_ld.c
+	[doc/README.dev] "To make a release": check also with
+	-DMPFR_GROUP_STATIC_SIZE=0 to detect memory leaks.
 
-[tests/{tset_float128.c,tset_ld.c}] Removed obsolete WITH_FPU_CONTROL
-related code (this should have been done in r12185).
-------------------------------------------------------------------------
-r12212 | vlefevre | 2018-02-07 23:37:29 +0000 (Wed, 07 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/INSTALL
+	[src/fma.c] Forgot a MPFR_GROUP_CLEAR.
 
-[INSTALL] Updated GMP URL.
-------------------------------------------------------------------------
-r12210 | vlefevre | 2018-02-07 23:32:29 +0000 (Wed, 07 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/fma.c] Simplified the underflow case by using UBF in the
+	difficult cases, resolving the remaining FIXME's.
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r12208 | vlefevre | 2018-02-07 23:30:03 +0000 (Wed, 07 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
-   M /trunk/tools/mpfrlint
+2018-04-13  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] Corrected minimal GMP version.
-[tools/mpfrlint] Updated test to detect minimal GMP version mismatch.
-------------------------------------------------------------------------
-r12206 | vlefevre | 2018-02-07 23:21:02 +0000 (Wed, 07 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/INSTALL
-   M /trunk/tools/mpfrlint
+	[tests/tfma.c] More tests for test_overflow3 by adding loops on j and k.
 
-[INSTALL] Corrected minimal GMP version (thanks to David Edelsohn).
-[tools/mpfrlint] Added a test to detect minimal GMP version mismatch.
-------------------------------------------------------------------------
-r12198 | vlefevre | 2018-02-07 11:59:15 +0000 (Wed, 07 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/tools/announce-text
+	[tests/tfma.c] Extended test_overflow3 to reversed signs.
 
-[tools/announce-text] For releases, check the VERSION file of the tag.
-------------------------------------------------------------------------
-r12197 | vlefevre | 2018-02-07 11:39:23 +0000 (Wed, 07 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	[tests/tfma.c] Do all the overflow/underflow tests in exponent ranges
+	[-1024,1024], [MPFR_EMIN_MIN,MPFR_EMAX_MAX], and the default one.
 
-[doc/README.dev] "To make a release": moved a sentence.
-------------------------------------------------------------------------
-r12194 | vlefevre | 2018-02-02 13:06:29 +0000 (Fri, 02 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tdiv_ui.c
+	[src/mpfr-sassert.h] Added a comment.
 
-[tests/tdiv_ui.c] Forcibly disable value coverage checking if
-mp_limb_t > unsigned long (e.g. on mips64 with the n32 ABI).
-------------------------------------------------------------------------
-r12193 | vlefevre | 2018-02-02 12:46:28 +0000 (Fri, 02 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tdiv_ui.c
+2018-04-12  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tdiv_ui.c] Corrected comments.
-------------------------------------------------------------------------
-r12190 | vlefevre | 2018-02-02 11:47:35 +0000 (Fri, 02 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/tests/terandom_chisq.c
-   M /trunk/tests/tnrandom_chisq.c
-   M /trunk/tests/trandom.c
-   M /trunk/tests/turandom.c
+	[tests/tfma.c] Forgot a cast for C++ compatibility.
 
-[tests/t*random*.c]
-  * Replaced calloc + free by tests_allocate + tests_free as usual.
-  * trandom.c, turandom.c: do bitwise operations in unsigned arithmetic.
-------------------------------------------------------------------------
-r12189 | vlefevre | 2018-02-02 11:27:03 +0000 (Fri, 02 Feb 2018) | 5 lines
-Changed paths:
-   M /trunk/tests/terandom.c
-   M /trunk/tests/terandom_chisq.c
-   M /trunk/tests/tgrandom.c
-   M /trunk/tests/tnrandom.c
-   M /trunk/tests/tnrandom_chisq.c
-   M /trunk/tests/trandom.c
-   M /trunk/tests/trandom_deviate.c
+	[src/mpfr-impl.h] Reverted r12588: there should be no alignment issues
+	with UBF, since an UBF (__mpfr_ubf_struct) is sometimes regarded as a
+	MPFR number (__mpfr_struct) but not the opposite (or this is just back
+	to __mpfr_ubf_struct).
 
-[tests/t*random*.c]
-  * Replaced some fprintf with stderr by printf (but not those
-    concerning memory allocation errors).
-  * Do bitwise operations in unsigned arithmetic.
-  * Formatting.
-------------------------------------------------------------------------
-r12188 | vlefevre | 2018-02-02 11:08:16 +0000 (Fri, 02 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tset_ld.c
-   M /trunk/tests/tsub_d.c
+	[src/fma.c] Simplified the difficult part of the overflow case by
+	using UBF (this also fixes corner cases in huge precision).
 
-[tests] Formatting.
-------------------------------------------------------------------------
-r12186 | vlefevre | 2018-02-02 10:53:26 +0000 (Fri, 02 Feb 2018) | 7 lines
-Changed paths:
-   M /trunk/tests/tests.c
+	[src/mpfr-impl.h] Added a note about alignment constraints for UBF.
 
-[tests/tests.c] Make stderr unbuffered again.
-Note for the history: both stdout and stderr were made unbuffered in
-r2361, then all stderr were changed to stdout (and the corresponding
-setbuf on stderr removed) in r2449 for consistency, but stderr was
-used later for specific cases (e.g. memory allocation errors or when
-stdout is already used for something else), and it is also used for
-assertion failures. Thus the setbuf on stderr is still needed.
-------------------------------------------------------------------------
-r12185 | vlefevre | 2018-02-02 10:36:50 +0000 (Fri, 02 Feb 2018) | 6 lines
-Changed paths:
-   M /trunk/tests/tremquo.c
-   M /trunk/tests/tset_float128.c
-   M /trunk/tests/tset_ld.c
+	[src/fma.c] Fixed sign related bug in overflow case.
+	[tests/tfma.c] Added test_overflow5 test for this bug.
 
-[tests] Fixed the cases where tests_start_mpfr was called too late,
-i.e. after potential output (to stdout).
-  * tremquo.c: moved the call to tests_start_mpfr to the beginning.
-  * tset_float128.c, tset_ld.c: removed the optional, obsolete code
-    setting the FPU control word; MPFR_FPU_PREC can be used instead
-    (see tests.c).
-------------------------------------------------------------------------
-r12183 | vlefevre | 2018-02-02 10:12:38 +0000 (Fri, 02 Feb 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tabort_defalloc1.c
-   M /trunk/tests/tabort_defalloc2.c
-   M /trunk/tests/tabort_prec_max.c
+	[tests/tfma.c] In test_overflow4, also test different signs.
 
-Reverse-merged r12181 since tests_start_mpfr disables stdout buffering,
-so that the fflush() are unnecessary.
-------------------------------------------------------------------------
-r12181 | vlefevre | 2018-02-02 09:52:45 +0000 (Fri, 02 Feb 2018) | 3 lines
-Changed paths:
-   M /trunk/tests/tabort_defalloc1.c
-   M /trunk/tests/tabort_defalloc2.c
-   M /trunk/tests/tabort_prec_max.c
+	[src/fma.c] Correction for the FIXME from r12403 concerning r12396.
+	The test added in tests/tfma.c r12584 no longer fails.
 
-[tests/tabort_*.c] Flush stdout after a printf(), as an abort() is
-expected. This is needed on platforms where abort() does not flush
-the stdio streams, such as with the GNU C Library (glibc) 2.27.
-------------------------------------------------------------------------
-r12178 | vlefevre | 2018-02-01 14:27:11 +0000 (Thu, 01 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/NEWS
+	[tests/tfma.c] Added a test that fails. It corresponds to the FIXME
+	in src/fma.c about the test on MPFR_GET_EXP (u) - MPFR_GET_EXP (z).
 
-[NEWS] Mention "make check-exported-symbols" (experimental).
-------------------------------------------------------------------------
-r12172 | vlefevre | 2018-02-01 13:28:12 +0000 (Thu, 01 Feb 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tdiv_ui.c
+	[src/fma.c] Removed a redundant test since the second condition of
+	the && expression implies the first one.
+	Note: This test came from the time when the precision type was unsigned,
+	in order to make sure that the result of the subtraction was positive.
 
-[tests/tdiv_ui.c] Portability update, in case MPFR_PREC_MIN > 1.
-------------------------------------------------------------------------
-r12169 | vlefevre | 2018-01-31 15:15:01 +0000 (Wed, 31 Jan 2018) | 3 lines
-Changed paths:
-   M /trunk/tests/tdiv_ui.c
+2018-04-11  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tdiv_ui.c] In corner_cases, test larger values for xn,
-as suggested by Paul, allowing one to cover case 2 for both
-sb=0 and sb=1. Value coverage is now complete.
-------------------------------------------------------------------------
-r12168 | vlefevre | 2018-01-31 15:02:18 +0000 (Wed, 31 Jan 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tdiv_ui.c
+	[tests/tversion.c] Output "Generic ABI code" info (MPFR_GENERIC_ABI).
 
-[tests/tdiv_ui.c] Updated midpoint_exact to also test the divisor
-ULONG_MAX, allowing one to cover cases 3 and 4.
-------------------------------------------------------------------------
-r12167 | vlefevre | 2018-01-31 14:55:17 +0000 (Wed, 31 Jan 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tdiv_ui.c
+	[src/strtofr.c] English usage in a comment.
 
-[tests/tdiv_ui.c] Added tests with simple midpoint and exact cases.
-This covers case 9, sb=0.
-------------------------------------------------------------------------
-r12166 | vlefevre | 2018-01-31 13:45:02 +0000 (Wed, 31 Jan 2018) | 7 lines
-Changed paths:
-   M /trunk/src/div_ui.c
-   M /trunk/src/mpfr-impl.h
+2018-04-11  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-Added a case for the value coverage for tdiv_ui.
-→ Now, on a 64-bit Linux machine:
-    mpfr_div_ui not tested on case 2, sb=0
-    mpfr_div_ui not tested on case 2, sb=1
-    mpfr_div_ui not tested on case 3, sb=0
-    mpfr_div_ui not tested on case 4, sb=0
-    mpfr_div_ui not tested on case 9, sb=0
-------------------------------------------------------------------------
-r12165 | vlefevre | 2018-01-31 13:34:35 +0000 (Wed, 31 Jan 2018) | 6 lines
-Changed paths:
-   M /trunk/src/div_ui.c
-   M /trunk/src/mpfr-impl.h
-   M /trunk/tests/tdiv_ui.c
+	[src/strtofr.c] fixed bug in corner cases
 
-Added value coverage for tdiv_ui (combinations of rb and sb in the
-different cases of the mpfr_div_ui code).
-→ Currently on a 64-bit Linux machine:
-    mpfr_div_ui not tested on case 2, sb=0
-    mpfr_div_ui not tested on case 3, sb=0
-    mpfr_div_ui not tested on case 8, sb=0
-------------------------------------------------------------------------
-r12163 | vlefevre | 2018-01-31 02:37:05 +0000 (Wed, 31 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/src/div_ui.c
+2018-04-10  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/div_ui.c] Case tmp[yn] != 0: simplified code since u ≥ 2.
-------------------------------------------------------------------------
-r12162 | vlefevre | 2018-01-31 02:30:02 +0000 (Wed, 31 Jan 2018) | 5 lines
-Changed paths:
-   M /trunk/src/div_ui.c
+	[src/strtofr.c] Reverted r12569: this is wrong with a 32-bit ABI.
 
-[src/div_ui.c] Case tmp[yn] == 0:
-  * corrected/improved comments;
-  * simplified condition rb && sb to rb (since if rb ≠ 0, then r ≠ 0,
-    so that the current sb ≠ 0);
-  * replaced "& (~MPFR_LIMB_HIGHBIT)" by "<< 1" (should be simpler).
-------------------------------------------------------------------------
-r12161 | zimmerma | 2018-01-30 20:31:58 +0000 (Tue, 30 Jan 2018) | 2 lines
-Changed paths:
-   M /trunk/src/div_ui.c
+	[src/strtofr.c] Added a FIXME.
 
-[src/div_ui.c] fixed corner case (hopefully)
+2018-04-10  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r12160 | vlefevre | 2018-01-30 17:17:11 +0000 (Tue, 30 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[src/strtofr.c] added more comments
 
-[tools/mpfrlint] Improved a regexp (avoiding false positives).
-------------------------------------------------------------------------
-r12159 | vlefevre | 2018-01-30 16:57:55 +0000 (Tue, 30 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tdiv_ui.c
+	[src/strtofr.c] replaced dead code by an assert
+	[tests/tstrtofr.c] fixed bug20170308 and added coverage test
 
-[tests/tdiv_ui.c] corner_cases() requires limbs to fit in unsigned long.
-------------------------------------------------------------------------
-r12158 | vlefevre | 2018-01-30 16:52:57 +0000 (Tue, 30 Jan 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tdiv_ui.c
+2018-04-09  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tdiv_ui.c] Back to a decimal constant (the UL suffix was
-incorrect, but just a U is OK).
-------------------------------------------------------------------------
-r12157 | zimmerma | 2018-01-30 16:38:20 +0000 (Tue, 30 Jan 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tdiv_ui.c
+	[src/strtofr.c] removed dead code (and added explanation)
 
-[tests/tdiv_ui.c] added test for corner case (currently fails)
+	[src/strtofr.c] completed a comment
 
-------------------------------------------------------------------------
-r12156 | vlefevre | 2018-01-30 16:25:08 +0000 (Tue, 30 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tdiv_ui.c
+2018-04-06  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tdiv_ui.c] Fixed a value (from a zsh bug).
-------------------------------------------------------------------------
-r12155 | vlefevre | 2018-01-30 16:21:13 +0000 (Tue, 30 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/src/div_ui.c
+	[src/strtofr.c] added comment
+	[tests/tstrtofr.c] improve coverage
 
-[src/div_ui.c] Comment: now, "i.e." is correct.
-------------------------------------------------------------------------
-r12154 | vlefevre | 2018-01-30 16:17:53 +0000 (Tue, 30 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tdiv_ui.c
+2018-04-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tdiv_ui.c] Added ABI-independent bug20180126 tests.
-------------------------------------------------------------------------
-r12153 | zimmerma | 2018-01-30 15:55:58 +0000 (Tue, 30 Jan 2018) | 2 lines
-Changed paths:
-   M /trunk/src/div_ui.c
+	[src/round_prec.c] Replaced an incorrect comment by an assertion.
 
-[src/div_ui.c] fixed a comment
+	[src/round_raw_generic.c] Check validity of flag.
 
-------------------------------------------------------------------------
-r12152 | vlefevre | 2018-01-30 13:22:48 +0000 (Tue, 30 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/src/div_ui.c
+2018-04-06  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/div_ui.c] Typo in a comment.
-------------------------------------------------------------------------
-r12151 | vlefevre | 2018-01-30 13:14:13 +0000 (Tue, 30 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/src/div_ui.c
+	[NEWS] now 98.2% of test coverage
 
-[src/div_ui.c] Updated a comment.
-------------------------------------------------------------------------
-r12150 | vlefevre | 2018-01-30 13:05:10 +0000 (Tue, 30 Jan 2018) | 2 lines
-Changed paths:
-   M /trunk/src/div_ui.c
+2018-04-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/div_ui.c] Clarified the notation (this was ambiguous, with two
-possible interpretations). Added comments about mpn_divrem_1.
-------------------------------------------------------------------------
-r12149 | vlefevre | 2018-01-30 09:15:21 +0000 (Tue, 30 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/src/div_ui.c
+	[tests/Makefile.am] Tests in lexicographic order.
 
-[src/div_ui.c] Added a FIXME.
-------------------------------------------------------------------------
-r12148 | zimmerma | 2018-01-30 06:35:31 +0000 (Tue, 30 Jan 2018) | 2 lines
-Changed paths:
-   M /trunk/src/div_ui.c
+2018-04-06  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/div_ui.c] fixed a comment, and added a FIXME
+	[src/round_prec.c] added comments
+	[src/round_raw_generic.c] removed dead code
+	[tests/tcan_round.c] improve coverage
 
-------------------------------------------------------------------------
-r12146 | vlefevre | 2018-01-29 14:11:54 +0000 (Mon, 29 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/src/div_ui.c
+	renamed tround_prec.c to tprec_round.c
 
-[src/div_ui.c] Clarified a comment.
-------------------------------------------------------------------------
-r12145 | vlefevre | 2018-01-29 14:05:24 +0000 (Mon, 29 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/src/div_ui.c
+	[src/round_prec.c] removed some dead code (if rnd1 = rnd2 and the case
+			   rnd2 = RNDN was already treated, we cannot have rnd1 = RNDN)
 
-[src/div_ui.c] Started to review the code; minor changes.
-------------------------------------------------------------------------
-r12142 | vlefevre | 2018-01-29 01:23:41 +0000 (Mon, 29 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/src/div_ui.c
+2018-04-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/div_ui.c] Minor update of comments.
-------------------------------------------------------------------------
-r12141 | vlefevre | 2018-01-29 01:06:44 +0000 (Mon, 29 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/src/div_ui.c
+	[tests/tpow.c] Fixed a test:
+	  * For this test, unsigned long and mpfr_exp_t must both have at least
+	    64 bits.
+	  * Use a hardcoded emax, otherwise the test could fail for mpfr_exp_t
+	    larger than 64 bits (one would not have an overflow as expected).
 
-[src/div_ui.c] Fixed the exact case, which used nexttoinf uninitialized.
-------------------------------------------------------------------------
-r12140 | vlefevre | 2018-01-29 01:03:34 +0000 (Mon, 29 Jan 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tdiv_ui.c
+	[src/pow.c] Fixed the code in case the size of the mpfr_exp_t type
+	would be larger than 256 bits. This is also semantically better.
 
-[tests/tdiv_ui.c] bug20180126: enable the test only when a limb fits in
-an unsigned long; clarified a comment.
-------------------------------------------------------------------------
-r12139 | zimmerma | 2018-01-28 09:05:30 +0000 (Sun, 28 Jan 2018) | 4 lines
-Changed paths:
-   M /trunk/src/div_ui.c
-   M /trunk/tests/tdiv_ui.c
+	Moved the MAX, MIN and ABS macros from tests/mpfr-test.h to
+	src/mpfr-impl.h (they can be useful...).
 
-[src/div_ui.c] fixed bug20180126 (from tdiv.c), with a complete rewrite of
-	       mpfr_div_ui using the round and sticky bits
-[tests/tdiv_ui.c] added more tests	       
+	[tests/tpow.c] More tests for (-2)^(2^i + 1), not just with i = 256.
 
-------------------------------------------------------------------------
-r12137 | vlefevre | 2018-01-27 03:50:48 +0000 (Sat, 27 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tdiv.c
+2018-04-06  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tdiv.c] mpfr_div bug bug20180126: also test negative values.
-------------------------------------------------------------------------
-r12136 | vlefevre | 2018-01-27 03:40:19 +0000 (Sat, 27 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tdiv.c
+	[tests/tpow.c] modified a test for better coverage
 
-[tests/tdiv.c] Updated comment about mpfr_div bug bug20180126.
-------------------------------------------------------------------------
-r12134 | vlefevre | 2018-01-27 03:19:43 +0000 (Sat, 27 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tdiv.c
+2018-04-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tdiv.c] mpfr_div bug bug20180126 was introduced by r9086.
-------------------------------------------------------------------------
-r12132 | vlefevre | 2018-01-26 17:03:19 +0000 (Fri, 26 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tdiv.c
+	[tests/tpow.c] Corrected a comment (again).
 
-[tests/tdiv.c] Completed r12128 test with new comments and an assert.
-------------------------------------------------------------------------
-r12128 | vlefevre | 2018-01-26 15:23:39 +0000 (Fri, 26 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tdiv.c
+	[tests/tpow.c] Corrected a comment.
 
-[tests/tdiv.c] Added test case for a mpfr_div bug of MPFR 4.
-------------------------------------------------------------------------
-r12126 | vlefevre | 2018-01-25 15:17:55 +0000 (Thu, 25 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+2018-04-06  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/README.dev] Added information about symbol checking.
-------------------------------------------------------------------------
-r12122 | vlefevre | 2018-01-23 09:40:06 +0000 (Tue, 23 Jan 2018) | 3 lines
-Changed paths:
-   M /trunk/tests/tests.c
+	[src/pow.c] simplified case x=2^b and y < 0
 
-[tests/tests.c] Mention a libtool 2.4.6 bug concerning Solaris, yielding
-potential failures if a compatible MPFR version is already installed:
-this MPFR library is tested instead of the one that has just been built.
-------------------------------------------------------------------------
-r12117 | vlefevre | 2018-01-22 12:20:14 +0000 (Mon, 22 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/NEWS
+2018-04-05  Vincent Lefèvre  <vincent at vinc17.net>
 
-[NEWS] + Improved __GMP_CC and __GMP_CFLAGS retrieval.
-------------------------------------------------------------------------
-r12115 | vlefevre | 2018-01-22 01:48:07 +0000 (Mon, 22 Jan 2018) | 3 lines
-Changed paths:
-   M /trunk/configure.ac
+	[src/pow.c] Updated comments.
 
-[configure.ac] In the CC and CFLAGS setup from gmp.h, added to the
-cpp list: "clang -E"; "cl -E" and "icl -E" for Windows ICC and MSVC
-(suggested by Alexander).
-------------------------------------------------------------------------
-r12114 | vlefevre | 2018-01-20 13:15:43 +0000 (Sat, 20 Jan 2018) | 2 lines
-Changed paths:
-   M /trunk/doc/README.dev
+	[src/pow.c] Reverted r12541 (which yielded a failure in tpow_all),
+	re-indented, and added a comment concerning the failing case.
 
-[doc/README.dev] "To make a release": mention "make check-gmp-symbols"
-and "make check-exported-symbols".
-------------------------------------------------------------------------
-r12113 | vlefevre | 2018-01-20 13:11:23 +0000 (Sat, 20 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/Makefile.am
+2018-04-05  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[Makefile.am] Updated comments.
-------------------------------------------------------------------------
-r12112 | vlefevre | 2018-01-20 12:59:47 +0000 (Sat, 20 Jan 2018) | 3 lines
-Changed paths:
-   M /trunk/src/Makefile.am
+	[src/round_prec.c] fixed a bug (to be reviewed)
+	[tests/tcan_round.c] added coverage tests
 
-[src/Makefile.am] For check-gmp-symbols and check-exported-symbols, if
-the library is not $(top_builddir)/src/.libs/libmpfr.so, these rules
-do nothing instead of potentially failing.
-------------------------------------------------------------------------
-r12111 | vlefevre | 2018-01-20 12:38:52 +0000 (Sat, 20 Jan 2018) | 2 lines
-Changed paths:
-   M /trunk/Makefile.am
-   M /trunk/src/Makefile.am
+	[tests/ttan.c] improve coverage (and also of round_near_x)
 
-Added check-exported-symbols make rule to check that MPFR does not
-define symbols with a GMP reserved prefix.
-------------------------------------------------------------------------
-r12108 | vlefevre | 2018-01-18 12:29:58 +0000 (Thu, 18 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/src/mp_clz_tab.c
+	[src/pow.c] fixed typo
 
-[src/mp_clz_tab.c] Fixed a condition (see bug mentioned at r12107).
-------------------------------------------------------------------------
-r12107 | vlefevre | 2018-01-18 12:27:19 +0000 (Thu, 18 Jan 2018) | 11 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
+2018-04-04  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr-gmp.h] Reverse-merged r11969, which yields a build failure
-under MinGW when GMP is built with "--disable-shared --enable-static
---enable-assert --disable-assembly" and MPFR is built using the GMP
-build. Indeed, this commit was incorrect, as if the GMP build is used,
-then this is GMP's longlong.h that is used and GMP's __clz_tab version
-that should be used.
-The real cause of the "multiple definition of `__gmpn_clz_tab'" error
-reported at
-  https://sympa.inria.fr/sympa/arc/mpfr/2017-12/msg00061.html
-is that MPFR defines its own __gmpn_clz_tab while this is not needed
-(and must not be done) when the GMP build is used.
-------------------------------------------------------------------------
-r12104 | vlefevre | 2018-01-16 11:12:30 +0000 (Tue, 16 Jan 2018) | 2 lines
-Changed paths:
-   M /trunk/doc/texinfo.tex
+	[NEWS] Coverage is specific to x86_64 due to the various #if.
 
-Eliding mergeinfo from 'doc/texinfo.tex' (as done after a
-"svn merge -c -12102 .", though this was an unrelated commit).
-------------------------------------------------------------------------
-r12103 | vlefevre | 2018-01-16 11:09:03 +0000 (Tue, 16 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/TODO
+	[src/pow.c] Corrected indentation.
 
-[TODO] - Decide whether multiple calls to mpfr_clear should be allowed.
-------------------------------------------------------------------------
-r12102 | vlefevre | 2018-01-16 08:58:00 +0000 (Tue, 16 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/TODO
+2018-04-04  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[TODO] + Decide whether multiple calls to mpfr_clear should be allowed.
-------------------------------------------------------------------------
-r12101 | vlefevre | 2018-01-13 13:57:53 +0000 (Sat, 13 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/ChangeLog
+	[NEWS] coverage is now 98.1%
 
-ChangeLog update with "LC_ALL=en_US.UTF8 TZ=UTC svn log -rHEAD:0 -v".
-------------------------------------------------------------------------
-r12100 | vlefevre | 2018-01-13 13:50:28 +0000 (Sat, 13 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/NEWS
+	[src/pow.c] added a comment
 
-[NEWS] Update. Prepare for new version 4.1.0.
-------------------------------------------------------------------------
-r12099 | vlefevre | 2018-01-13 13:43:02 +0000 (Sat, 13 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/doc/FAQ.html
+	[src/pow.c] removed some dead code (with comment explaining why)
+	[tests/tpow.c] added a test
 
-[doc] Updated FAQ.html with update-faq.
-------------------------------------------------------------------------
-r12092 | vlefevre | 2018-01-10 13:40:31 +0000 (Wed, 10 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tlgamma.c
+	[src/pow.c] simplify code for prec=1
+	[tests/tpow.c] added tests for prec=1
 
-[tests/tlgamma.c] bug20180110: test the ternary value and the flags.
-------------------------------------------------------------------------
-r12091 | vlefevre | 2018-01-10 13:32:58 +0000 (Wed, 10 Jan 2018) | 3 lines
-Changed paths:
-   M /trunk/src/lngamma.c
+2018-04-03  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/lngamma.c] Fixed mpfr_lgamma bug for tiny negative x, in case
-emax < exponent of the result (the issue was an overflow in the "fast"
-algorithm, which made it loop with more and more working precision).
-------------------------------------------------------------------------
-r12090 | vlefevre | 2018-01-10 13:24:29 +0000 (Wed, 10 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/src/lngamma.c
+	[src/mparam_h.in] added macros for Microsoft compiler
 
-[src/lngamma.c] Removed a useless cast.
-------------------------------------------------------------------------
-r12089 | vlefevre | 2018-01-10 13:17:50 +0000 (Wed, 10 Jan 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tlgamma.c
+2018-04-03  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tlgamma.c] Added a test case for a bug found from the tgeneric
-change done in r12088.
-------------------------------------------------------------------------
-r12088 | vlefevre | 2018-01-10 12:22:11 +0000 (Wed, 10 Jan 2018) | 5 lines
-Changed paths:
-   M /trunk/tests/tgeneric.c
+	[tools/check_mparam.c] Added a copyright notice.
 
-[tests/tgeneric.c] Do several overflow/underflow tests instead of 1, and
-this for each precision. This allows one to detect the mpfr_ai bug found
-and fixed on 2018-01-07 (with 32-bit *and* 64-bit ABI):
-  https://sympa.inria.fr/sympa/arc/mpfr/2018-01/msg00001.html
-Moreover, this makes tlgamma loop with a 32-bit ABI (x86). To be fixed.
-------------------------------------------------------------------------
-r12087 | vlefevre | 2018-01-10 11:49:52 +0000 (Wed, 10 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tgeneric.c
+	[Makefile.am] Added tools/check_mparam.c and tools/ck-mparam
+	to EXTRA_DIST since tools/ck-mparam is now run in dist-hook.
 
-[tests/tgeneric.c] Added comments for tests in a reduced exponent range.
-------------------------------------------------------------------------
-r12085 | vlefevre | 2018-01-10 10:12:19 +0000 (Wed, 10 Jan 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[tests/Makefile.am] Do not output a useless "PASS ..." line at the end.
 
-[tests/tsprintf.c] About r12084, simplified the code, without needing
-strncpy.
-------------------------------------------------------------------------
-r12084 | vlefevre | 2018-01-10 09:59:30 +0000 (Wed, 10 Jan 2018) | 3 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[tests/Makefile.am] Update of the "check" rule:
+	  * Output svnversion info when applicable.
+	  * Do not echo "cat tversion.log 2> /dev/null || true".
 
-[tests/tsprintf.c] Fixed strncpy usage, in particular to ensure a
-null-terminated string (bug detected by gcc-snapshot 20180107-1 under
-Debian with -Werror=stringop-truncation).
-------------------------------------------------------------------------
-r12082 | vlefevre | 2018-01-09 14:44:43 +0000 (Tue, 09 Jan 2018) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[Makefile.am] Added missing comments for dist-hook.
 
-[doc/mpfr.texi] Fixed the @GMPabs macro in tex mode: due to the use of
-the OT1 encoding, the pipe character "|" was giving a wide dash.
-------------------------------------------------------------------------
-r12081 | vlefevre | 2018-01-09 14:06:43 +0000 (Tue, 09 Jan 2018) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[Makefile.am] Run ck-mparam in dist-hook (for "make dist").
 
-[doc/mpfr.texi] For mpfr_custom_get_exp, restored the spec for NaN,
-infinity and zero, with more details.
-------------------------------------------------------------------------
-r12080 | vlefevre | 2018-01-09 13:51:51 +0000 (Tue, 09 Jan 2018) | 5 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tools/ck-mparam] Commented out the old gcc-specific test since the
+	new one is strictly more powerful. No longer depend on gcc.
 
-[doc/mpfr.texi] Improved description of mpfr_custom_init_set.
-Note: For the versions of the manual generated with TeX (PDF/DVI/PS),
-"|kind|" appears as "—kind—", and the description of mpfr_ai has
-the same issue (since its introduction in MPFR 3.0.0). The cause
-is unclear, and this will be fixed later.
-------------------------------------------------------------------------
-r12079 | zimmerma | 2018-01-09 13:28:21 +0000 (Tue, 09 Jan 2018) | 3 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tools/ck-mparam] Also check the mparam.h files with check_mparam.c.
 
-[doc/mpfr.texi] for mpfr_custom_get_exp, explain the significand is considered
-		in [1/2,1) as for mpfr_get_exp
+	[tools/check_mparam.c] C89 compatibility. Return an error code
+	(useful for scripts).
 
-------------------------------------------------------------------------
-r12076 | vlefevre | 2018-01-09 12:19:03 +0000 (Tue, 09 Jan 2018) | 4 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
-   M /trunk/doc/texinfo.tex
+	[tools/check_mparam.c] A pathname of the mparam.h file can now be
+	provided with -DMPARAM='"..."' when compiling.
 
-[doc]
-  * texinfo.tex: update to the latest version 2018-01-09.11, which
-    supports @var with script font size without any drawback.
-  * mpfr.texi: replaced the now useless @svar by @var.
-------------------------------------------------------------------------
-r12075 | vlefevre | 2018-01-07 20:45:25 +0000 (Sun, 07 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/tests/tai.c
+2018-04-03  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tai.c] In bug20180107, also check the flags.
-------------------------------------------------------------------------
-r12074 | vlefevre | 2018-01-07 20:06:18 +0000 (Sun, 07 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/src/ai.c
+	Moved misc/check_mparam.c into trunk/tools: it will be useful for
+	"make dist" in order to make sure that all mparam.h files are OK
+	before a release.
 
-[src/ai.c] Really fixed the bug.
-------------------------------------------------------------------------
-r12073 | vlefevre | 2018-01-07 19:51:21 +0000 (Sun, 07 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/src/check.c
+	[[Split portion of a mixed commit.]]
 
-[src/check.c] Typo.
-------------------------------------------------------------------------
-r12072 | zimmerma | 2018-01-07 19:51:20 +0000 (Sun, 07 Jan 2018) | 2 lines
-Changed paths:
-   M /trunk/src/ai.c
+	[Added during the Subversion to Git conversion]
+	The "misc" directory referenced here was in the same Subversion
+	repository, but outside the trunk/branches/tags structure. Thus
+	it has not been kept in the same Git repository.
 
-[src/ai.c] missing call to mpfr_check_range
+2018-04-03  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12071 | zimmerma | 2018-01-07 19:47:02 +0000 (Sun, 07 Jan 2018) | 2 lines
-Changed paths:
-   M /trunk/tests/tai.c
+	[src/mulders.c] Re-enable the change done in r12382. This is allowed
+	after the fix in generic/mparam.h r12525 (this file was hand written
+	and did not satisfy the current constraints).
 
-[tests/tai.c] added test that fails on x86_64
+2018-04-03  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r12070 | zimmerma | 2018-01-07 18:51:13 +0000 (Sun, 07 Jan 2018) | 3 lines
-Changed paths:
-   M /trunk/tests/tai.c
+	[generic/mparam.h] ensure divhigh_ktab[n] is 0 or < n-1, as now required
+			   since commit r12382
 
-[tests/tai.c] added test for bug in mpfr_ai (see thread
-https://sympa.inria.fr/sympa/arc/mpfr/2018-01/msg00001.html)
+2018-04-02  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12069 | vlefevre | 2018-01-03 10:58:06 +0000 (Wed, 03 Jan 2018) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/mulders.c] Code style / indentation. Added a comment.
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r12068 | vlefevre | 2018-01-03 10:56:21 +0000 (Wed, 03 Jan 2018) | 2 lines
-Changed paths:
-   M /trunk/tools/ck-mparam
+	[src/mulders.c] Reverting r12382 because divhigh_ktab[n] == n can
+	happen. Note: this probably lacks documentation; moreover, testing
+	that these tables satisfy the requirements would be useful.
 
-[tools/ck-mparam] In the copyright notice, just keep the year 2011
-since this file is not part of the tarball (just used by mpfrlint).
-------------------------------------------------------------------------
-r12067 | vlefevre | 2018-01-03 10:53:21 +0000 (Wed, 03 Jan 2018) | 6 lines
-Changed paths:
-   M /trunk/BUGS
-   M /trunk/INSTALL
-   M /trunk/Makefile.am
-   M /trunk/NEWS
-   M /trunk/README
-   M /trunk/TODO
-   M /trunk/acinclude.m4
-   M /trunk/configure.ac
-   M /trunk/doc/FAQ.html
-   M /trunk/doc/Makefile.am
-   M /trunk/doc/README.dev
-   M /trunk/doc/check-typography
-   M /trunk/doc/faq.xsl
-   M /trunk/doc/mpfr.texi
-   M /trunk/examples/can_round.c
-   M /trunk/examples/divworst.c
-   M /trunk/examples/rndo-add.c
-   M /trunk/examples/sample.c
-   M /trunk/examples/version.c
-   M /trunk/src/Makefile.am
-   M /trunk/src/abort_prec_max.c
-   M /trunk/src/acos.c
-   M /trunk/src/acosh.c
-   M /trunk/src/add.c
-   M /trunk/src/add1.c
-   M /trunk/src/add1sp.c
-   M /trunk/src/add_d.c
-   M /trunk/src/add_ui.c
-   M /trunk/src/agm.c
-   M /trunk/src/ai.c
-   M /trunk/src/amd/amdfam10/mparam.h
-   M /trunk/src/amd/athlon/mparam.h
-   M /trunk/src/amd/k8/mparam.h
-   M /trunk/src/arm/mparam.h
-   M /trunk/src/asin.c
-   M /trunk/src/asinh.c
-   M /trunk/src/atan.c
-   M /trunk/src/atan2.c
-   M /trunk/src/atanh.c
-   M /trunk/src/bernoulli.c
-   M /trunk/src/beta.c
-   M /trunk/src/buildopt.c
-   M /trunk/src/cache.c
-   M /trunk/src/cbrt.c
-   M /trunk/src/check.c
-   M /trunk/src/clear.c
-   M /trunk/src/clears.c
-   M /trunk/src/cmp.c
-   M /trunk/src/cmp2.c
-   M /trunk/src/cmp_abs.c
-   M /trunk/src/cmp_d.c
-   M /trunk/src/cmp_ld.c
-   M /trunk/src/cmp_si.c
-   M /trunk/src/cmp_ui.c
-   M /trunk/src/comparisons.c
-   M /trunk/src/const_catalan.c
-   M /trunk/src/const_euler.c
-   M /trunk/src/const_log2.c
-   M /trunk/src/const_pi.c
-   M /trunk/src/constant.c
-   M /trunk/src/copysign.c
-   M /trunk/src/cos.c
-   M /trunk/src/cosh.c
-   M /trunk/src/cot.c
-   M /trunk/src/coth.c
-   M /trunk/src/csc.c
-   M /trunk/src/csch.c
-   M /trunk/src/d_div.c
-   M /trunk/src/d_sub.c
-   M /trunk/src/digamma.c
-   M /trunk/src/dim.c
-   M /trunk/src/div.c
-   M /trunk/src/div_2exp.c
-   M /trunk/src/div_2si.c
-   M /trunk/src/div_2ui.c
-   M /trunk/src/div_d.c
-   M /trunk/src/div_ui.c
-   M /trunk/src/dump.c
-   M /trunk/src/eint.c
-   M /trunk/src/eq.c
-   M /trunk/src/erandom.c
-   M /trunk/src/erf.c
-   M /trunk/src/erfc.c
-   M /trunk/src/exceptions.c
-   M /trunk/src/exp.c
-   M /trunk/src/exp10.c
-   M /trunk/src/exp2.c
-   M /trunk/src/exp3.c
-   M /trunk/src/exp_2.c
-   M /trunk/src/expm1.c
-   M /trunk/src/extract.c
-   M /trunk/src/factorial.c
-   M /trunk/src/fits_intmax.c
-   M /trunk/src/fits_s.h
-   M /trunk/src/fits_sint.c
-   M /trunk/src/fits_slong.c
-   M /trunk/src/fits_sshort.c
-   M /trunk/src/fits_u.h
-   M /trunk/src/fits_uint.c
-   M /trunk/src/fits_uintmax.c
-   M /trunk/src/fits_ulong.c
-   M /trunk/src/fits_ushort.c
-   M /trunk/src/fma.c
-   M /trunk/src/fmma.c
-   M /trunk/src/fms.c
-   M /trunk/src/fpif.c
-   M /trunk/src/frac.c
-   M /trunk/src/free_cache.c
-   M /trunk/src/frexp.c
-   M /trunk/src/gamma.c
-   M /trunk/src/gamma_inc.c
-   M /trunk/src/gammaonethird.c
-   M /trunk/src/gen_inverse.h
-   M /trunk/src/generic/coverage/mparam.h
-   M /trunk/src/generic/mparam.h
-   M /trunk/src/get_d.c
-   M /trunk/src/get_d64.c
-   M /trunk/src/get_exp.c
-   M /trunk/src/get_f.c
-   M /trunk/src/get_float128.c
-   M /trunk/src/get_flt.c
-   M /trunk/src/get_ld.c
-   M /trunk/src/get_q.c
-   M /trunk/src/get_si.c
-   M /trunk/src/get_sj.c
-   M /trunk/src/get_str.c
-   M /trunk/src/get_ui.c
-   M /trunk/src/get_uj.c
-   M /trunk/src/get_z.c
-   M /trunk/src/get_z_exp.c
-   M /trunk/src/gmp_op.c
-   M /trunk/src/grandom.c
-   M /trunk/src/hppa/mparam.h
-   M /trunk/src/hypot.c
-   M /trunk/src/ia64/mparam.h
-   M /trunk/src/ieee_floats.h
-   M /trunk/src/init.c
-   M /trunk/src/init2.c
-   M /trunk/src/inits.c
-   M /trunk/src/inits2.c
-   M /trunk/src/inp_str.c
-   M /trunk/src/int_ceil_log2.c
-   M /trunk/src/invert_limb.h
-   M /trunk/src/invsqrt_limb.h
-   M /trunk/src/isinf.c
-   M /trunk/src/isinteger.c
-   M /trunk/src/isnan.c
-   M /trunk/src/isnum.c
-   M /trunk/src/isqrt.c
-   M /trunk/src/isregular.c
-   M /trunk/src/iszero.c
-   M /trunk/src/jn.c
-   M /trunk/src/jyn_asympt.c
-   M /trunk/src/li2.c
-   M /trunk/src/lngamma.c
-   M /trunk/src/log.c
-   M /trunk/src/log10.c
-   M /trunk/src/log1p.c
-   M /trunk/src/log2.c
-   M /trunk/src/log_ui.c
-   M /trunk/src/logging.c
-   M /trunk/src/min_prec.c
-   M /trunk/src/minmax.c
-   M /trunk/src/mips/mparam.h
-   M /trunk/src/modf.c
-   M /trunk/src/mp_clz_tab.c
-   M /trunk/src/mparam_h.in
-   M /trunk/src/mpf2mpfr.h
-   M /trunk/src/mpfr-cvers.h
-   M /trunk/src/mpfr-gmp.c
-   M /trunk/src/mpfr-gmp.h
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/mpfr-intmax.h
-   M /trunk/src/mpfr-longlong.h
-   M /trunk/src/mpfr-mini-gmp.c
-   M /trunk/src/mpfr-mini-gmp.h
-   M /trunk/src/mpfr-sassert.h
-   M /trunk/src/mpfr-thread.h
-   M /trunk/src/mpfr.h
-   M /trunk/src/mpn_exp.c
-   M /trunk/src/mul.c
-   M /trunk/src/mul_2exp.c
-   M /trunk/src/mul_2si.c
-   M /trunk/src/mul_2ui.c
-   M /trunk/src/mul_d.c
-   M /trunk/src/mul_ui.c
-   M /trunk/src/mulders.c
-   M /trunk/src/neg.c
-   M /trunk/src/next.c
-   M /trunk/src/nrandom.c
-   M /trunk/src/odd_p.c
-   M /trunk/src/out_str.c
-   M /trunk/src/pool.c
-   M /trunk/src/pow.c
-   M /trunk/src/pow_si.c
-   M /trunk/src/pow_ui.c
-   M /trunk/src/pow_z.c
-   M /trunk/src/powerof2.c
-   M /trunk/src/powerpc32/mparam.h
-   M /trunk/src/powerpc64/mparam.h
-   M /trunk/src/print_raw.c
-   M /trunk/src/print_rnd_mode.c
-   M /trunk/src/printf.c
-   M /trunk/src/random_deviate.c
-   M /trunk/src/random_deviate.h
-   M /trunk/src/rec_sqrt.c
-   M /trunk/src/reldiff.c
-   M /trunk/src/rem1.c
-   M /trunk/src/rint.c
-   M /trunk/src/rndna.c
-   M /trunk/src/root.c
-   M /trunk/src/round_near_x.c
-   M /trunk/src/round_p.c
-   M /trunk/src/round_prec.c
-   M /trunk/src/round_raw_generic.c
-   M /trunk/src/scale2.c
-   M /trunk/src/sec.c
-   M /trunk/src/sech.c
-   M /trunk/src/set.c
-   M /trunk/src/set_d.c
-   M /trunk/src/set_d64.c
-   M /trunk/src/set_dfl_prec.c
-   M /trunk/src/set_exp.c
-   M /trunk/src/set_f.c
-   M /trunk/src/set_float128.c
-   M /trunk/src/set_flt.c
-   M /trunk/src/set_inf.c
-   M /trunk/src/set_ld.c
-   M /trunk/src/set_nan.c
-   M /trunk/src/set_prc_raw.c
-   M /trunk/src/set_prec.c
-   M /trunk/src/set_q.c
-   M /trunk/src/set_rnd.c
-   M /trunk/src/set_si.c
-   M /trunk/src/set_si_2exp.c
-   M /trunk/src/set_sj.c
-   M /trunk/src/set_str.c
-   M /trunk/src/set_str_raw.c
-   M /trunk/src/set_ui.c
-   M /trunk/src/set_ui_2exp.c
-   M /trunk/src/set_uj.c
-   M /trunk/src/set_z.c
-   M /trunk/src/set_z_exp.c
-   M /trunk/src/set_zero.c
-   M /trunk/src/setmax.c
-   M /trunk/src/setmin.c
-   M /trunk/src/setsign.c
-   M /trunk/src/sgn.c
-   M /trunk/src/si_op.c
-   M /trunk/src/signbit.c
-   M /trunk/src/sin.c
-   M /trunk/src/sin_cos.c
-   M /trunk/src/sinh.c
-   M /trunk/src/sinh_cosh.c
-   M /trunk/src/sparc64/mparam.h
-   M /trunk/src/sqr.c
-   M /trunk/src/sqrt.c
-   M /trunk/src/sqrt_ui.c
-   M /trunk/src/stack_interface.c
-   M /trunk/src/strtofr.c
-   M /trunk/src/sub.c
-   M /trunk/src/sub1.c
-   M /trunk/src/sub1sp.c
-   M /trunk/src/sub_d.c
-   M /trunk/src/sub_ui.c
-   M /trunk/src/subnormal.c
-   M /trunk/src/sum.c
-   M /trunk/src/swap.c
-   M /trunk/src/tan.c
-   M /trunk/src/tanh.c
-   M /trunk/src/ubf.c
-   M /trunk/src/uceil_exp2.c
-   M /trunk/src/uceil_log2.c
-   M /trunk/src/ufloor_log2.c
-   M /trunk/src/ui_div.c
-   M /trunk/src/ui_pow.c
-   M /trunk/src/ui_pow_ui.c
-   M /trunk/src/ui_sub.c
-   M /trunk/src/urandom.c
-   M /trunk/src/urandomb.c
-   M /trunk/src/vasprintf.c
-   M /trunk/src/version.c
-   M /trunk/src/volatile.c
-   M /trunk/src/x86/core2/mparam.h
-   M /trunk/src/x86/mparam.h
-   M /trunk/src/x86_64/core2/mparam.h
-   M /trunk/src/x86_64/corei5/mparam.h
-   M /trunk/src/x86_64/pentium4/mparam.h
-   M /trunk/src/yn.c
-   M /trunk/src/zeta.c
-   M /trunk/src/zeta_ui.c
-   M /trunk/tests/Makefile.am
-   M /trunk/tests/cmp_str.c
-   M /trunk/tests/data/digamma
-   M /trunk/tests/data/li2
-   M /trunk/tests/memory.c
-   M /trunk/tests/mpf_compat.c
-   M /trunk/tests/mpf_compat.h
-   M /trunk/tests/mpfr-test.h
-   M /trunk/tests/mpfr_compat.c
-   M /trunk/tests/random2.c
-   M /trunk/tests/reuse.c
-   M /trunk/tests/rnd_mode.c
-   M /trunk/tests/tabort_defalloc1.c
-   M /trunk/tests/tabort_defalloc2.c
-   M /trunk/tests/tabort_prec_max.c
-   M /trunk/tests/tabs.c
-   M /trunk/tests/tacos.c
-   M /trunk/tests/tacosh.c
-   M /trunk/tests/tadd.c
-   M /trunk/tests/tadd1sp.c
-   M /trunk/tests/tadd_d.c
-   M /trunk/tests/tadd_ui.c
-   M /trunk/tests/tagm.c
-   M /trunk/tests/tai.c
-   M /trunk/tests/talloc-cache.c
-   M /trunk/tests/talloc.c
-   M /trunk/tests/tasin.c
-   M /trunk/tests/tasinh.c
-   M /trunk/tests/tassert.c
-   M /trunk/tests/tatan.c
-   M /trunk/tests/tatanh.c
-   M /trunk/tests/taway.c
-   M /trunk/tests/tbeta.c
-   M /trunk/tests/tbuildopt.c
-   M /trunk/tests/tcan_round.c
-   M /trunk/tests/tcbrt.c
-   M /trunk/tests/tcheck.c
-   M /trunk/tests/tcmp.c
-   M /trunk/tests/tcmp2.c
-   M /trunk/tests/tcmp_d.c
-   M /trunk/tests/tcmp_ld.c
-   M /trunk/tests/tcmp_ui.c
-   M /trunk/tests/tcmpabs.c
-   M /trunk/tests/tcomparisons.c
-   M /trunk/tests/tconst_catalan.c
-   M /trunk/tests/tconst_euler.c
-   M /trunk/tests/tconst_log2.c
-   M /trunk/tests/tconst_pi.c
-   M /trunk/tests/tcopysign.c
-   M /trunk/tests/tcos.c
-   M /trunk/tests/tcosh.c
-   M /trunk/tests/tcot.c
-   M /trunk/tests/tcoth.c
-   M /trunk/tests/tcsc.c
-   M /trunk/tests/tcsch.c
-   M /trunk/tests/td_div.c
-   M /trunk/tests/td_sub.c
-   M /trunk/tests/tdigamma.c
-   M /trunk/tests/tdim.c
-   M /trunk/tests/tdiv.c
-   M /trunk/tests/tdiv_d.c
-   M /trunk/tests/tdiv_ui.c
-   M /trunk/tests/teint.c
-   M /trunk/tests/teq.c
-   M /trunk/tests/terandom.c
-   M /trunk/tests/terandom_chisq.c
-   M /trunk/tests/terf.c
-   M /trunk/tests/tests.c
-   M /trunk/tests/texceptions.c
-   M /trunk/tests/texp.c
-   M /trunk/tests/texp10.c
-   M /trunk/tests/texp2.c
-   M /trunk/tests/texpm1.c
-   M /trunk/tests/tfactorial.c
-   M /trunk/tests/tfits.c
-   M /trunk/tests/tfma.c
-   M /trunk/tests/tfmma.c
-   M /trunk/tests/tfmod.c
-   M /trunk/tests/tfms.c
-   M /trunk/tests/tfpif.c
-   M /trunk/tests/tfprintf.c
-   M /trunk/tests/tfrac.c
-   M /trunk/tests/tfrexp.c
-   M /trunk/tests/tgamma.c
-   M /trunk/tests/tgamma_inc.c
-   M /trunk/tests/tgeneric.c
-   M /trunk/tests/tgeneric_ui.c
-   M /trunk/tests/tget_d.c
-   M /trunk/tests/tget_d_2exp.c
-   M /trunk/tests/tget_f.c
-   M /trunk/tests/tget_flt.c
-   M /trunk/tests/tget_ld_2exp.c
-   M /trunk/tests/tget_q.c
-   M /trunk/tests/tget_set_d64.c
-   M /trunk/tests/tget_sj.c
-   M /trunk/tests/tget_str.c
-   M /trunk/tests/tget_z.c
-   M /trunk/tests/tgmpop.c
-   M /trunk/tests/tgrandom.c
-   M /trunk/tests/thyperbolic.c
-   M /trunk/tests/thypot.c
-   M /trunk/tests/tinits.c
-   M /trunk/tests/tinp_str.c
-   M /trunk/tests/tinternals.c
-   M /trunk/tests/tisnan.c
-   M /trunk/tests/tisqrt.c
-   M /trunk/tests/tj0.c
-   M /trunk/tests/tj1.c
-   M /trunk/tests/tjn.c
-   M /trunk/tests/tl2b.c
-   M /trunk/tests/tlgamma.c
-   M /trunk/tests/tli2.c
-   M /trunk/tests/tlngamma.c
-   M /trunk/tests/tlog.c
-   M /trunk/tests/tlog10.c
-   M /trunk/tests/tlog1p.c
-   M /trunk/tests/tlog2.c
-   M /trunk/tests/tlog_ui.c
-   M /trunk/tests/tmin_prec.c
-   M /trunk/tests/tminmax.c
-   M /trunk/tests/tmodf.c
-   M /trunk/tests/tmul.c
-   M /trunk/tests/tmul_2exp.c
-   M /trunk/tests/tmul_d.c
-   M /trunk/tests/tmul_ui.c
-   M /trunk/tests/tnext.c
-   M /trunk/tests/tnrandom.c
-   M /trunk/tests/tnrandom_chisq.c
-   M /trunk/tests/tout_str.c
-   M /trunk/tests/toutimpl.c
-   M /trunk/tests/tpow.c
-   M /trunk/tests/tpow3.c
-   M /trunk/tests/tpow_all.c
-   M /trunk/tests/tpow_z.c
-   M /trunk/tests/tprintf.c
-   M /trunk/tests/trandom.c
-   M /trunk/tests/trandom_deviate.c
-   M /trunk/tests/trec_sqrt.c
-   M /trunk/tests/tremquo.c
-   M /trunk/tests/trint.c
-   M /trunk/tests/trndna.c
-   M /trunk/tests/troot.c
-   M /trunk/tests/trootn_ui.c
-   M /trunk/tests/tround_prec.c
-   M /trunk/tests/tsec.c
-   M /trunk/tests/tsech.c
-   M /trunk/tests/tset.c
-   M /trunk/tests/tset_d.c
-   M /trunk/tests/tset_exp.c
-   M /trunk/tests/tset_f.c
-   M /trunk/tests/tset_float128.c
-   M /trunk/tests/tset_ld.c
-   M /trunk/tests/tset_q.c
-   M /trunk/tests/tset_si.c
-   M /trunk/tests/tset_sj.c
-   M /trunk/tests/tset_str.c
-   M /trunk/tests/tset_z.c
-   M /trunk/tests/tset_z_exp.c
-   M /trunk/tests/tsgn.c
-   M /trunk/tests/tsi_op.c
-   M /trunk/tests/tsin.c
-   M /trunk/tests/tsin_cos.c
-   M /trunk/tests/tsinh.c
-   M /trunk/tests/tsinh_cosh.c
-   M /trunk/tests/tsprintf.c
-   M /trunk/tests/tsqr.c
-   M /trunk/tests/tsqrt.c
-   M /trunk/tests/tsqrt_ui.c
-   M /trunk/tests/tstckintc.c
-   M /trunk/tests/tstdint.c
-   M /trunk/tests/tstrtofr.c
-   M /trunk/tests/tsub.c
-   M /trunk/tests/tsub1sp.c
-   M /trunk/tests/tsub_d.c
-   M /trunk/tests/tsub_ui.c
-   M /trunk/tests/tsubnormal.c
-   M /trunk/tests/tsum.c
-   M /trunk/tests/tswap.c
-   M /trunk/tests/ttan.c
-   M /trunk/tests/ttanh.c
-   M /trunk/tests/ttrunc.c
-   M /trunk/tests/tui_div.c
-   M /trunk/tests/tui_pow.c
-   M /trunk/tests/tui_sub.c
-   M /trunk/tests/turandom.c
-   M /trunk/tests/tvalist.c
-   M /trunk/tests/tversion.c
-   M /trunk/tests/ty0.c
-   M /trunk/tests/ty1.c
-   M /trunk/tests/tyn.c
-   M /trunk/tests/tzeta.c
-   M /trunk/tests/tzeta_ui.c
-   M /trunk/tools/bench/Makefile.am
-   M /trunk/tools/bench/benchtime.h
-   M /trunk/tools/bench/mpfrbench.c
-   M /trunk/tools/ck-clz_tab
-   M /trunk/tools/ck-copyright-notice
-   M /trunk/tools/ck-news
-   M /trunk/tools/ck-version-info
-   M /trunk/tools/get_patches.sh
-   M /trunk/tune/Makefile.am
-   M /trunk/tune/bidimensional_sample.c
-   M /trunk/tune/speed.c
-   M /trunk/tune/tuneup.c
+2018-03-31  Vincent Lefèvre  <vincent at vinc17.net>
 
-Copyright notice update: added 2018 with
-  perl -pi -e 's/ (\d{4}-)?(2017)(?= Free Software)/
-               " ".($1||"$2-").($2+1)/e' **/*(^/)
-under zsh, reverting the ck-mparam and timings-mpfr.c files and
-the mbench directory under "tools" (not distributed with MPFR).
-Removed 2017 from the example in the doc/README.dev file.
-------------------------------------------------------------------------
-r12066 | zimmerma | 2018-01-03 10:20:46 +0000 (Wed, 03 Jan 2018) | 3 lines
-Changed paths:
-   M /trunk/src/zeta.c
+	[src/inp_str.c] Handle size_t overflow, empty string (after skipping
+	spaces), and I/O errors (as opposed to end-of-file).
 
-[src/zeta.c] added comments and FIXME
+2018-03-30  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-Note (2019-04-30): a bug has also been introduced (fixed in r13485).
-------------------------------------------------------------------------
-r12056 | vlefevre | 2017-12-25 11:15:53 +0000 (Mon, 25 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/NEWS
+	[src/inp_str.c] disallow stream=NULL (cf r12520)
 
-[NEWS] Minor corrections for GNU MPFR 4.0.0.
-------------------------------------------------------------------------
-r12055 | vlefevre | 2017-12-23 21:38:16 +0000 (Sat, 23 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tests.c
+	[src/out_str.c] the behavior on a null stream is unspecified (cf r12519)
 
-[tests/tests.c] Added a note about gettimeofday() and a cast.
-------------------------------------------------------------------------
-r12054 | vlefevre | 2017-12-23 21:17:25 +0000 (Sat, 23 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tests.c
+2018-03-30  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tests.c] Fixed a potential integer overflow from r12053 with
-GMP_CHECK_RANDOMIZE=1, in particular under a 32-bit Linux.
-------------------------------------------------------------------------
-r12053 | zimmerma | 2017-12-23 17:08:06 +0000 (Sat, 23 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tests.c
+	Reverted r12516: the behavior on a null stream is unspecified.
 
-[tests/tests.c] decrease probability of collision with random seed
+2018-03-30  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r12048 | zimmerma | 2017-12-23 08:46:50 +0000 (Sat, 23 Dec 2017) | 3 lines
-Changed paths:
-   M /trunk/src/exp_2.c
-   M /trunk/src/subnormal.c
+	[tests/tpow.c] restrict a test to 64-bit exponent
 
-[src/exp_2.c] fixed bug from previous commit
-[src/subnormal.c] added assert
+2018-03-29  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r12047 | zimmerma | 2017-12-23 08:38:01 +0000 (Sat, 23 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/texp.c
+	[src/pow.c] added comment
+	[tests/tpow.c] improve coverage
 
-[tests/texp.c] added test for new bug
+	[tests/tout_str.c] improve coverage (I don't know how to avoid printing to
+			   stdout, but since "make check" no longer shows the test
+			   outputs, this should be fine). However I don't know how
+			   to do the same for mpfr_inp_str...
 
-------------------------------------------------------------------------
-r12045 | vlefevre | 2017-12-22 11:01:53 +0000 (Fri, 22 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tlngamma.c
+	[tests/tconst_pi.c] forgotten line in commit 12512
 
-Removed trailing whitespace.
-------------------------------------------------------------------------
-r12044 | vlefevre | 2017-12-22 10:54:49 +0000 (Fri, 22 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/src/subnormal.c
+	[tests/tgrandom.c] improve coverage
 
-[src/subnormal.c] Replaced FIXME.
-------------------------------------------------------------------------
-r12043 | vlefevre | 2017-12-22 10:48:08 +0000 (Fri, 22 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tj1.c
+	[src/grandom.c] improve coverage, and solved a FIXME
 
-[tests/tj1.c] Avoid a potential integer overflow.
-------------------------------------------------------------------------
-r12042 | zimmerma | 2017-12-22 08:10:22 +0000 (Fri, 22 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/subnormal.c
+	[tests/tconst_pi.c] improve coverage of mpfr_free_cache2
 
-[src/subnormal.c] added FIXME
+2018-03-29  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12041 | zimmerma | 2017-12-22 08:06:04 +0000 (Fri, 22 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/sin.c
+	[src/fpif.c] Reverted another incorrect change done in r12509.
 
-[src/sin.c] simplified code with RNDA
+	[src/fpif.c] Reverted an incorrect change done in r12509.
 
-------------------------------------------------------------------------
-r12040 | zimmerma | 2017-12-22 08:03:49 +0000 (Fri, 22 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/hypot.c
+2018-03-29  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/hypot.c] mimic mpfr_round_near_x
+	[src/fpif.c] simplify code and improve coverage to 100%
 
-------------------------------------------------------------------------
-r12039 | zimmerma | 2017-12-22 07:54:59 +0000 (Fri, 22 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tj1.c
+	[src/fpif.c] removed dead code and simplify code
 
-[tests/tj1.c] exercise corner case
+	[tests/tfpif.c] improve coverage
 
-------------------------------------------------------------------------
-r12038 | zimmerma | 2017-12-22 07:38:25 +0000 (Fri, 22 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tj1.c
+	[tests/tfpif.c] improve coverage
 
-[tests/tj1.c] added test for j1(z) with small z
+2018-03-29  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12037 | zimmerma | 2017-12-22 07:36:41 +0000 (Fri, 22 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/hypot.c
+	[tests/tfpif.c] Really fixed the badData test, completing r12504.
 
-[src/hypot.c] fixed issue with overflow flag not correctly set
+	[tests/tfpif.c] Fixed a test: for the huge-precision badData case,
+	make sure that the data are valid so that we really check that the
+	precision does not fit (and not a read error).
 
-------------------------------------------------------------------------
-r12036 | vlefevre | 2017-12-21 09:17:04 +0000 (Thu, 21 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/next.c
+	[tests/tfpif.c] Correction just in case MPFR_PREC_BITS > 64.
 
-[src/next.c] Reverted r12035 as per documentation, which follows
-IEEE 754 (with the usual special treatment for the single NaN).
-------------------------------------------------------------------------
-r12035 | zimmerma | 2017-12-21 07:37:30 +0000 (Thu, 21 Dec 2017) | 3 lines
-Changed paths:
-   M /trunk/src/next.c
-   M /trunk/tests/thypot.c
+	Removed trailing whitespace.
 
-[src/next.c] fixed nextinf (missing overflow flag)
-[tests/thypot.c] removed debug call to mpfr_dump in previous commit
+2018-03-28  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12034 | zimmerma | 2017-12-21 07:29:57 +0000 (Thu, 21 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/thypot.c
+	[src/fpif.c]
+	  * Replaced an incorrect comment from r12500 by a correct assertion.
+	  * Fixed a theoretical bug coming from this incorrect comment.
+	  * Added a MPFR_ASSERTN assertion to double-check correctness.
+	  * Added a comment explaining a ... >= 0x80 test.
 
-[tests/thypot.c] another fix...
+2018-03-28  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r12033 | zimmerma | 2017-12-21 07:21:29 +0000 (Thu, 21 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/thypot.c
+	[src/fpif.c] removed dead code
+	[tests/tfpif.c] improve coverage
 
-[tests/thypot.c] fixed bug20171221()
+	[src/gmp_op.c] fixed bug in mpfr_cmp_q for den(q)=0
+	[tests/tgmpop.c] improve coverage
 
-------------------------------------------------------------------------
-r12032 | zimmerma | 2017-12-21 07:12:14 +0000 (Thu, 21 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/thypot.c
+2018-03-24  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/thypot.c] new failing test
+	[doc/mpfr.texi] Typographic correction (texinfo rule).
 
-------------------------------------------------------------------------
-r12031 | zimmerma | 2017-12-21 06:18:05 +0000 (Thu, 21 Dec 2017) | 4 lines
-Changed paths:
-   M /trunk/src/lngamma.c
-   M /trunk/tests/tlngamma.c
+	[tools/mpfrlint] For codespell, skip mpfr.t2p (directory created
+	in doc by "make pdf").
 
-[src/lngamma.c] fixed bug when u=0 in case z0 < 1
-[tests/tlngamma.c] fixed test case which was wrong
+	[src/total_order.c] Simplified the code (shorter code).
 
+	[tests/ttotal_order.c] Rewrote the tests to test every combination
+	of classes of values.
 
-------------------------------------------------------------------------
-r12030 | zimmerma | 2017-12-20 20:28:49 +0000 (Wed, 20 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tlngamma.c
+	[tests] Renamed total_order.c to ttotal_order.c.
 
-[tests/tlngamma.c] added test for new failure
+2018-03-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12029 | zimmerma | 2017-12-20 10:48:26 +0000 (Wed, 20 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/lngamma.c
+	[src/total_order.c] Suggest to test the sign bit first.
 
-[src/lngamma.c] fixed bug found in previous commit
+	[doc/mpfr.texi] Added mpfr_total_order in "Added Functions".
 
-------------------------------------------------------------------------
-r12028 | zimmerma | 2017-12-20 10:40:34 +0000 (Wed, 20 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tlngamma.c
+	[doc/mpfr.texi] Improved mpfr_total_order description.
 
-[tests/tlngamma.c] added failing test with mpfr-4.0.0-rc2
+2018-03-23  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r12025 | vlefevre | 2017-12-20 01:54:18 +0000 (Wed, 20 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/INSTALL
-   M /trunk/VERSION
-   M /trunk/configure.ac
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/mpfr.h
-   M /trunk/src/version.c
+	[TODO] totalOrder is done
 
-Updated version to 4.1.0-dev again.
-------------------------------------------------------------------------
-r12023 | vlefevre | 2017-12-20 01:52:21 +0000 (Wed, 20 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/INSTALL
-   M /trunk/VERSION
-   M /trunk/configure.ac
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/mpfr.h
-   M /trunk/src/version.c
+	added mpfr_total_order
 
-Updated version to 4.0.0-rc2 for an attempt to replace the 4.0 branch.
-------------------------------------------------------------------------
-r12022 | vlefevre | 2017-12-20 01:34:49 +0000 (Wed, 20 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/src/fma.c
+2018-03-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/fma.c] Minor improvements. Added an assert.
-------------------------------------------------------------------------
-r12021 | vlefevre | 2017-12-20 01:17:36 +0000 (Wed, 20 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/src/tanh.c
+	[tests] Removed some useless #include's, in particular all the
+	unconditional #include <math.h> occurrences.
+	Note: There is an incompatibility between glibc 2.27 and the math.h
+	provided by ICC 15 (at least), and this solves a compilation failure
+	in the build of the tests.
+	Moreover, <math.h> is not required by freestanding implementations,
+	so that it may be better to avoid it if possible.
 
-[src/tanh.c] GNU coding style.
-------------------------------------------------------------------------
-r12020 | vlefevre | 2017-12-20 01:13:09 +0000 (Wed, 20 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/src/mul.c
+2018-03-21  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/mul.c] Reindentation.
-------------------------------------------------------------------------
-r12019 | vlefevre | 2017-12-20 01:10:54 +0000 (Wed, 20 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/src/exp2.c
+	added 2 suggestions from Patrick Pelissier
 
-[src/exp2.c] Replaced two MPFR_ASSERTN by MPFR_STAT_STATIC_ASSERT.
-------------------------------------------------------------------------
-r12018 | vlefevre | 2017-12-19 16:30:09 +0000 (Tue, 19 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/exp2.c
+2018-03-20  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/exp2.c] Fixed the double rounding problem in an underflow case,
-triggered by the test added in r12017.
-------------------------------------------------------------------------
-r12017 | vlefevre | 2017-12-19 16:13:48 +0000 (Tue, 19 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/texp2.c
+	[tools/mpfrlint] For codespell, skip all the algorithms.* files.
 
-[tests/texp2.c] Added test of underflow in MPFR_RNDN with exact value
-close to 2^(emin-2). Currently fails due to double rounding.
-------------------------------------------------------------------------
-r12016 | vlefevre | 2017-12-19 14:45:00 +0000 (Tue, 19 Dec 2017) | 3 lines
-Changed paths:
-   M /trunk/tests/tdiv.c
+2018-03-15  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tdiv.c] Added new non-regression test: the was the real cause of
-the ttanh failure in r11993 without the tanh.c fix in this same commit.
-But this mpfr_div was fixed in r12002.
-------------------------------------------------------------------------
-r12015 | vlefevre | 2017-12-19 08:56:43 +0000 (Tue, 19 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tools/mpfrlint] Added a comment for the mul/sqr test.
 
-[doc/mpfr.texi] Added a comment about a bug/limitation in makeinfo 5.2.
-------------------------------------------------------------------------
-r12014 | vlefevre | 2017-12-19 08:21:55 +0000 (Tue, 19 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tools/mpfrlint] In the mul/sqr test (r12482), exclude mul.c and sqr.c.
 
-[doc/mpfr.texi] Improved svar macro for nottex, in case it is used
-in the future.
-------------------------------------------------------------------------
-r12013 | vlefevre | 2017-12-19 08:20:18 +0000 (Tue, 19 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2018-03-15  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/mpfr.texi] Define svar even for nottex, though it is not used
-(attempt to avoid a failure with makeinfo 5.2).
-------------------------------------------------------------------------
-r12012 | zimmerma | 2017-12-19 06:51:47 +0000 (Tue, 19 Dec 2017) | 3 lines
-Changed paths:
-   M /trunk/src/fma.c
-   M /trunk/tests/tfma.c
+	changed mpfr_mul (a, b, b, ...) into mpfr_sqr (a, b, ...) whenever possible
 
-[src/fma.c] fixed bug in mpfr_fma
-[tests/tfma.c] added non-regression test
+2018-03-14  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r12011 | vlefevre | 2017-12-19 03:38:58 +0000 (Tue, 19 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/exp2.c
+	[tools/mpfrlint] Detect mpfr_mul with identical 2nd and 3rd arguments,
+	which can be replaced by mpfr_sqr (suggestion by PZ).
 
-[src/exp2.c] Update concerning the underflow/overflow cases.
-Still incomplete.
-------------------------------------------------------------------------
-r12010 | vlefevre | 2017-12-19 02:32:33 +0000 (Tue, 19 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2018-03-14  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/mpfr.texi] Updated a comment.
-------------------------------------------------------------------------
-r12009 | vlefevre | 2017-12-19 02:29:51 +0000 (Tue, 19 Dec 2017) | 8 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
-   M /trunk/doc/texinfo.tex
+	[src/const_pi.c] added a reference, and replace mpfr_mul by mpfr_sqr
 
-[doc]
-  * texinfo.tex: update to the latest version 2017-12-18.20, which
-    reverts the change done in 2017-12-01.13 attempting to support
-    @var with script font size (e.g. in exponent); but this change
-    didn't work correctly.
-  * mpfr.texi: introduced a @svar macro to handle this case. It
-    currently disables the use of @var, the other workaround being
-    worse.
-------------------------------------------------------------------------
-r12008 | vlefevre | 2017-12-18 17:59:35 +0000 (Mon, 18 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/src/mul.c
+2018-03-10  Vincent Lefèvre  <vincent at vinc17.net>
 
-Removed trailing whitespace.
-------------------------------------------------------------------------
-r12007 | vlefevre | 2017-12-18 17:05:28 +0000 (Mon, 18 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/algorithms.tex
-   M /trunk/src/tanh.c
+	[tests/tget_str.c] Fixed failure from r12473 when mpfr_prec_t is an int
+	(missing casts for sprintf / printf).
 
-[doc/algorithms.tex,src/tanh.c] Fixed the bound, in particular from
-the recent improvements in the error analysis.
-------------------------------------------------------------------------
-r12006 | zimmerma | 2017-12-18 16:21:36 +0000 (Mon, 18 Dec 2017) | 3 lines
-Changed paths:
-   M /trunk/src/mul.c
+2018-03-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mul.c] we should compare the smaller size and not the larger one to
-	    MPFR_MUL_THRESHOLD or MPFR_SQR_THRESHOLD for Mulders' short product
+	[tests/tget_str.c] C++ compatibility.
 
-------------------------------------------------------------------------
-r12005 | zimmerma | 2017-12-18 16:17:19 +0000 (Mon, 18 Dec 2017) | 3 lines
-Changed paths:
-   M /trunk/src/mul.c
-   M /trunk/tests/tmul_d.c
+	[tests/tget_str.c] Use tests_allocate / tests_free.
 
-[src/mul.c] with Mulders', convert RNDF to RNDZ
-[tests/tmul_d.c] added a non-regression test
+	Fixed spelling mistakes found by codespell 1.12.0.
 
-------------------------------------------------------------------------
-r12004 | vlefevre | 2017-12-18 16:04:59 +0000 (Mon, 18 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/doc/algorithms.tex
+2018-03-09  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/algorithms.tex] mpfr_tanh: corrected bounds (thanks to Paul).
-------------------------------------------------------------------------
-r12003 | vlefevre | 2017-12-18 15:54:05 +0000 (Mon, 18 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/doc/algorithms.tex
+	[tests/tget_str.c] added tests for corner cases of mpfr_set_str o mpfr_get_str
 
-[doc/algorithms.tex] mpfr_tanh: detailed some inequalities.
-------------------------------------------------------------------------
-r12002 | zimmerma | 2017-12-18 15:06:45 +0000 (Mon, 18 Dec 2017) | 4 lines
-Changed paths:
-   M /trunk/src/div.c
-   M /trunk/tests/tdiv.c
-   M /trunk/tests/ttan.c
+2018-03-08  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/div.c] fixed bug in mpfr_div2_approx()
-[tests/tdiv.c] added non-regression test
-[tests/ttan.c] added test triggering bug in mpfr_div2_approx()
+	[src/Makefile.am] In EXTRA_DIST, put the mparam.h in alphabetic order.
 
-------------------------------------------------------------------------
-r12001 | vlefevre | 2017-12-18 14:44:33 +0000 (Mon, 18 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/doc/algorithms.tex
+	[src/Makefile.am] Updated EXTRA_DIST for amd due to r12387.
 
-[doc/algorithms.tex] mpfr_tanh: resolved both FIXME's.
-------------------------------------------------------------------------
-r12000 | vlefevre | 2017-12-18 13:37:07 +0000 (Mon, 18 Dec 2017) | 4 lines
-Changed paths:
-   M /trunk/doc/algorithms.tex
+	Fixed spelling mistakes found by codespell 1.11.0.
 
-[doc/algorithms.tex] mpfr_tanh: corrected a part of the error analysis
-(2^k+4 ≤ |theta_4|^(−1/2) was not necessarily true, since theta_4 can
-be very small). As a consequence, the lemma can be simplified/improved
-(first FIXME). Added a second FIXME on a condition that is not checked.
-------------------------------------------------------------------------
-r11999 | vlefevre | 2017-12-18 12:22:26 +0000 (Mon, 18 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/doc/algorithms.tex
+	[codespell.ignore] Also ignore "cas".
 
-[doc/algorithms.tex] mpfr_tanh: missing absolute value; added a \cdot.
-------------------------------------------------------------------------
-r11998 | vlefevre | 2017-12-18 12:15:31 +0000 (Mon, 18 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/src/exp2.c
-   M /trunk/tests/texp2.c
+	Added codespell.ignore file with simple words to ignore with codespell
+	("iff" as used in math; "nd" as the n comes from \n in printf, but nd
+	could also be a variable name; "te" as used as a variable name).
+	Updated tools/mpfrlint to use this file with codespell.
 
-Removed trailing whitespace.
-------------------------------------------------------------------------
-r11997 | vlefevre | 2017-12-18 12:08:36 +0000 (Mon, 18 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/doc/algorithms.tex
+2018-03-05  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/algorithms.tex] Added another \cdot for readability.
-------------------------------------------------------------------------
-r11996 | zimmerma | 2017-12-18 12:01:41 +0000 (Mon, 18 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/exp2.c
+	[doc/mpfr.texi] Updated the month.
 
-[src/exp2.c] added FIXME
+2018-03-05  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r11995 | vlefevre | 2017-12-18 11:55:11 +0000 (Mon, 18 Dec 2017) | 7 lines
-Changed paths:
-   M /trunk/doc/algorithms.tex
+	[tests/tget_str.c] added tests for mpfr_get_str_ndigits
+	[src/get_str.c] fixed bugs in mpfr_get_str_ndigits for b=2^k (value was 1 too
+			large) and very large p (value was 1 too small)
 
-[doc/algorithms.tex] Minor corrections for hyperbolic tangent function:
-  * "e" had two different meanings (BTW, the constant e should actually
-    be written \mathrm{e} everywhere in the document).
-  * Use \left...\right instead of |...| when it contains an expression
-    starting with \log (the latter was confusing pdflatex, which added
-    a spurious space before \log).
-  * Added some \cdot for better readability.
-------------------------------------------------------------------------
-r11994 | zimmerma | 2017-12-18 11:36:15 +0000 (Mon, 18 Dec 2017) | 3 lines
-Changed paths:
-   M /trunk/src/exp2.c
-   M /trunk/tests/texp2.c
+2018-03-05  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/exp2.c] fixed bug near underflow
-[tests/texp2.c] added non-regression test
+	[doc/mpfr.texi] Typographic corrections for mpfr_subnormalize.
 
-------------------------------------------------------------------------
-r11993 | zimmerma | 2017-12-18 08:51:06 +0000 (Mon, 18 Dec 2017) | 9 lines
-Changed paths:
-   M /trunk/doc/algorithms.tex
-   M /trunk/src/tanh.c
-   M /trunk/tests/ttanh.c
+	[NEWS] Added mpfr_get_str_ndigits.
+	[doc/mpfr.texi] Added mpfr_get_str_ndigits in "Added Functions".
 
-[tests/ttanh.c] added test for bug in mpfr_tanh
-[doc/algorithms.tex] fixed error analysis for mpfr_tanh
-[src/tanh.c] fixed error analysis
-Note after r12016: Even though mpfr_tanh was incorrect, the failure
-of the test added in ttanh.c was actually *only* due to a bug in the
-mpfr_div code specific to the trunk (fixed in r12002), i.e. this was
-not a non-regression test for the mpfr_tanh bug itself (in particular,
-this test does not introduce a failure in the 3.1 branch, which still
-has the same incorrect mpfr_tanh code but a correct mpfr_div).
-------------------------------------------------------------------------
-r11991 | vlefevre | 2017-12-18 00:04:58 +0000 (Mon, 18 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/INSTALL
-   M /trunk/VERSION
-   M /trunk/configure.ac
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/mpfr.h
-   M /trunk/src/version.c
+	[doc/mpfr.texi] Minor corrections concerning mpfr_get_str.
 
-Updated version to 4.1.0-dev again.
-------------------------------------------------------------------------
-r11989 | vlefevre | 2017-12-17 23:57:39 +0000 (Sun, 17 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/INSTALL
-   M /trunk/VERSION
-   M /trunk/configure.ac
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/mpfr.h
-   M /trunk/src/version.c
+	[src/mpfr.h] Added a note about a mpfr_prec_t limitation.
 
-Updated version to 4.0.0-rc2 for an attempt to replace the 4.0 branch.
-------------------------------------------------------------------------
-r11988 | vlefevre | 2017-12-17 23:52:26 +0000 (Sun, 17 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/ChangeLog
+	[src/get_str.c] Simplified mpfr_get_str_ndigits (changes from r12455):
+	  * MPFR_PREC_BITS is used to exactly do what is wanted.
+	  * Removed dead code as currently, mpfr_prec_t <= unsigned long.
+	    Note: if in the future we support mpfr_prec_t > unsigned long
+	    (e.g. to have a 64-bit precision on MS Windows), the generic code
+	    could be retrieved back from r12455.
 
-ChangeLog update with "LC_ALL=en_US.UTF8 TZ=UTC svn log -rHEAD:0 -v".
-------------------------------------------------------------------------
-r11987 | zimmerma | 2017-12-17 16:23:21 +0000 (Sun, 17 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/add1sp.c
+2018-03-05  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/add1sp.c] fix bug in mpfr_add1sp3() in case d=GMP_NUMB_BITS
+	[src/get_str.c,src/mpfr.h] mpfr_get_str_digits -> mpfr_get_str_ndigits
+	[doc/mpfr.texi] updated documentation of mpfr_get_str
 
-------------------------------------------------------------------------
-r11986 | zimmerma | 2017-12-17 15:16:48 +0000 (Sun, 17 Dec 2017) | 14 lines
-Changed paths:
-   M /trunk/tests/tadd1sp.c
+	[src/get_str.c] fixed FIXME
 
-[tests/tadd1sp.c] added test for new bug (still to be fixed):
+2018-03-05  Vincent Lefèvre  <vincent at vinc17.net>
 
-Seed GMP_CHECK_RANDOMIZE=1514385177 (include this in bug reports)
-add1 & add1sp return different values for MPFR_RNDN
-Prec_a = 137, Prec_b = 137, Prec_c = 137
-B = 0.11111111111111111111111111111111111111111111111111111111111111111111000000000000000000000000000000000000000000000000000000000000000000000E-66
-C = 0.11111111111111111111111111111111111111111111111111111111111111111000000000000000000000000000000000000000000000000000000000000000000110000E-2
+	[src/get_str.c] Portability corrections in mpfr_get_str_digits.
 
-add1  : 0.10000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000001000E-1
-add1sp: 0.11111111111111111111111111111111111111111111111111111111111111111000000000000000000000000000000000000000000000000000000000000000000010000E-2
-Inexact sp = 0 | Inexact = 0
-Flags sp = 8 | Flags = 8
-add1sp.c:89: MPFR assertion failed: 0
+2018-03-05  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r11981 | vlefevre | 2017-12-15 02:44:49 +0000 (Fri, 15 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/src/root.c
+	[src/get_str.c] new function mpfr_get_str_digits
+	[doc/mpfr.texi] added documentation for mpfr_get_str_digits
 
-[src/root.c] Minor comment correction.
-------------------------------------------------------------------------
-r11980 | vlefevre | 2017-12-15 02:36:50 +0000 (Fri, 15 Dec 2017) | 4 lines
-Changed paths:
-   M /trunk/src/root.c
-   M /trunk/tests/troot.c
+2018-03-03  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/root.c] Completed fix from r11978, as x=-1 was affected too. Also
-  added comments explaining that mpfr_root_aux assumes |x| ≠ 1 and why.
-  Hence the need of a filter on |x| = 1.
-[tests/troot.c] Added test for x = -1.
-------------------------------------------------------------------------
-r11979 | vlefevre | 2017-12-15 01:44:11 +0000 (Fri, 15 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/tests/troot.c
+	[tests/tfma.c] Fixed bug from r12407 with 32-bit long and 64-bit limbs
+	(e.g. as under 64-bit MS Windows).
 
-[tests/troot.c] Replaced mpfr_root by TF (like in the other tests).
-------------------------------------------------------------------------
-r11978 | zimmerma | 2017-12-14 10:22:32 +0000 (Thu, 14 Dec 2017) | 3 lines
-Changed paths:
-   M /trunk/src/root.c
-   M /trunk/tests/troot.c
+2018-02-26  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/root.c] fixed bug when x=1
-[tests/troot.c] added non-regression test
+	[acinclude.m4] Correction for test of the fallback to __float128:
+	in the test program, define the variable outside main() in order to
+	avoid an error when the -Werror=unused-variable GCC option is used.
 
-------------------------------------------------------------------------
-r11977 | vlefevre | 2017-12-14 07:57:05 +0000 (Thu, 14 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tsub1sp.c
+	[src/get_sj.c] Avoid an unused variable.
 
-[tests/tsub1sp.c] Corrected a type. And mpfr_equal_p being a predicate
-function, it's better to use Boolean operators on it.
-------------------------------------------------------------------------
-r11976 | zimmerma | 2017-12-14 07:35:35 +0000 (Thu, 14 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tsub1sp.c
+	[doc/README.dev] Updated description of MPFR_WANT_FLOAT128.
 
-[tests/tsub1sp.c] added a generic test for bug20171213()
+	[doc/README.dev] Recommend AC_LINK_IFELSE rather than AC_COMPILE_IFELSE
+	(see r12448 as an example of an issue with AC_COMPILE_IFELSE).
 
-------------------------------------------------------------------------
-r11975 | vlefevre | 2017-12-14 02:17:05 +0000 (Thu, 14 Dec 2017) | 7 lines
-Changed paths:
-   M /trunk/src/mul.c
-   M /trunk/src/sqr.c
+	[acinclude.m4] Fixed a test, which could define MPFR_INTMAX_WITHIN_LIMB
+	even when not true (MPFR_STAT_STATIC_ASSERT() was just regarded as a
+	function call since the macro was not defined, thus did not yield an
+	error).
 
-[src/{mul.c,sqr.c}] Minor changes, making code similar to sub1sp.c.
-Checked with
-  grep -A 1 'sb *>>' src/*.c
-that the bug fixed in r11974 does not occur in other parts of the code.
-BTW, there is much duplicate code, as shown by the grep output, and
-using macros could have avoided that, making bugs easier to reproduce
-(since a same bug would be duplicate several times).
-------------------------------------------------------------------------
-r11974 | zimmerma | 2017-12-13 21:18:23 +0000 (Wed, 13 Dec 2017) | 3 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
-   M /trunk/tests/tsub1sp.c
+	[tests/tversion.c] Output the sizes of long and intmax_t.
 
-[src/sub1sp.c] fixed bug in mpfr_sub1sp2()
-[tests/tsub1sp.c] added non-regression test
+	[acinclude.m4] Fixed incorrect test from r12426.
 
-------------------------------------------------------------------------
-r11973 | vlefevre | 2017-12-13 18:00:00 +0000 (Wed, 13 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/src/mpf2mpfr.h
+	Removed trailing spaces.
 
-[src/mpf2mpfr.h] Added a comment.
-------------------------------------------------------------------------
-r11972 | zimmerma | 2017-12-13 17:25:07 +0000 (Wed, 13 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/mpf2mpfr.h
+	Updated support for binary128:
+	  * __float128 was changed to _Float128 (ISO/IEC TS 18661) in r12391;
+	    also changed the suffix of the constants from "q" to "f128".
+	  * Use __float128 with the "q" suffix as a fallback in order to avoid
+	    regressions with GCC 6- and with C++ mode (g++).
+	    As documented in the GCC manual, this is entirely compatible on most
+	    platforms where both are supported: _Float128 and __float128 are the
+	    same type, and it could be checked that the following prototypes are
+	    equivalent (as expected):
+	      _Float128 f (__float128)
+	      __float128 f (_Float128)
+	    The only potential issues would be on hppa and IA-64 HP-UX, where
+	    __float128 is an alias for "long double" instead of _Float128, in
+	    case the ABI would be different (I have no information about this)
+	    and both would be mixed up with software using the MPFR conversion
+	    functions for binary128 via __float128 or "long double". The worst
+	    thing that could happen is a link error. If the link is accepted,
+	    everything should be fine as the representation doesn't change.
 
-[src/mpf2mpfr.h] missing mpf_inits/mpf_clears
+	[src/set_float128.c] Removed a useless #include and corrected a comment.
 
-------------------------------------------------------------------------
-r11969 | zimmerma | 2017-12-13 07:05:01 +0000 (Wed, 13 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
+2018-02-25  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr-gmp.h] redefine __clz_tab also with gmp-build
+	[src/get_z_exp.c] Portability.
 
-------------------------------------------------------------------------
-r11968 | vlefevre | 2017-12-12 22:20:41 +0000 (Tue, 12 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/configure.ac
+	[tests/tdiv_ui.c] Avoid a compilation error with
+	gcc -std=c90 -pedantic -Werror in 32-bit ABI.
 
-[configure.ac] Improved error message.
-------------------------------------------------------------------------
-r11967 | vlefevre | 2017-12-12 15:38:37 +0000 (Tue, 12 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/tests/talloc.c
+	[tests/tget_str.c] Fixed a return type.
 
-[tests/talloc.c] Added a comment about why talloc requires ISO C99.
-------------------------------------------------------------------------
-r11966 | vlefevre | 2017-12-12 15:35:34 +0000 (Tue, 12 Dec 2017) | 4 lines
-Changed paths:
-   M /trunk/src/mpfr-cvers.h
+2018-02-24  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/mpfr-cvers.h] Removed a useless test for __MPFR_STDC, as one just
-needs to check whether we have a C99, C11, etc. implementation (if not
-done via a configure test). Particular incompatibilities with the C90
-standard should always be checked via a configure test.
-------------------------------------------------------------------------
-r11965 | vlefevre | 2017-12-12 12:04:01 +0000 (Tue, 12 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/tests
+	[src/get_z_exp.c] new try for r12437. If that still does not work, we should
+			  define macros BITS_PER_EXP_T, BITS_PER_PREC_T, ...
 
-[tests] Added *.exe to svn:ignore property (files from MinGW builds).
-------------------------------------------------------------------------
-r11964 | zimmerma | 2017-12-12 11:07:36 +0000 (Tue, 12 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/tools/timings-mpfr.c
+2018-02-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tools/timings-mpfr.c] always use clock() [now very accurate under Linux]
+	[src/get_z_exp.c] Reverted r12437: the size of mpfr_exp_t is not
+	always related to the size of mp_limb_t.
 
-------------------------------------------------------------------------
-r11963 | vlefevre | 2017-12-12 10:15:50 +0000 (Tue, 12 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/tools/timings-mpfr.c
+2018-02-23  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tools/timings-mpfr.c] Updated years in copyright notice.
-------------------------------------------------------------------------
-r11962 | vlefevre | 2017-12-12 10:14:08 +0000 (Tue, 12 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/tools/timings-mpfr.c
+	[src/get_z_exp.c] removed dead code on 64-bit computer
 
-[tools/timings-mpfr.c] Fixed prototypes.
-------------------------------------------------------------------------
-r11961 | vlefevre | 2017-12-12 10:12:48 +0000 (Tue, 12 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/tools/timings-mpfr.c
+	[src/get_str.c] improved case m < g
+	[tests/tget_str.c] improve coverage
 
-[tools/timings-mpfr.c] Added a defined(_MSC_VER). But clock() is
-standard, so why not always using it?
-------------------------------------------------------------------------
-r11960 | vlefevre | 2017-12-12 01:17:00 +0000 (Tue, 12 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+2018-02-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/README.dev] Correction.
-------------------------------------------------------------------------
-r11959 | vlefevre | 2017-12-12 01:11:31 +0000 (Tue, 12 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	[acinclude.m4] Correction: for AC_COMPILE_IFELSE, there are only
+	2 cases: TRUE and FALSE.
 
-[doc/README.dev] Made formatting consistent (same as configure --help).
-------------------------------------------------------------------------
-r11958 | vlefevre | 2017-12-12 00:58:43 +0000 (Tue, 12 Dec 2017) | 5 lines
-Changed paths:
-   M /trunk/tests/reuse.c
-   M /trunk/tests/tget_set_d64.c
-   M /trunk/tests/tsum.c
+2018-02-23  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-Completed r11955: There were also DEBUG macros under the "tests"
-directory. Since such macros can still be useful in case a test failure,
-replaced them by MPFR_DEBUG to avoid issues with CI builds that define
-the DEBUG macro. But an environment variable would be a better solution
-(see MPFR_DEBUG_BADCASES as an example).
-------------------------------------------------------------------------
-r11957 | vlefevre | 2017-12-12 00:44:45 +0000 (Tue, 12 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/TODO
+	[tests/tget_str.c] fixed not enough allocation issue
 
-[TODO] Removed item on the DEBUG macro (done in r11955).
-------------------------------------------------------------------------
-r11956 | zimmerma | 2017-12-11 17:36:36 +0000 (Mon, 11 Dec 2017) | 3 lines
-Changed paths:
-   M /trunk/doc/README.dev
-   M /trunk/src/mpfr-impl.h
-   M /trunk/tests/tgeneric.c
+2018-02-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-DEBUG_TGENERIC -> MPFR_DEBUG_TGENERIC
-XDEBUG -> MPFR_DISABLE_IEEE_FLOATS
+	[acinclude.m4] Correction: for AC_COMPILE_IFELSE, there are only
+	2 cases: TRUE and FALSE.
 
-------------------------------------------------------------------------
-r11955 | zimmerma | 2017-12-11 17:02:05 +0000 (Mon, 11 Dec 2017) | 3 lines
-Changed paths:
-   M /trunk/src/add1sp.c
-   M /trunk/src/div.c
-   M /trunk/src/exp.c
-   M /trunk/src/exp_2.c
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/sub1.c
-   M /trunk/src/sub1sp.c
-   M /trunk/src/zeta.c
+2018-02-23  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-get rid of DEBUG macro (but keep corresponding commands in comment to help
-understanding of the code and debugging)
+	[doc/mpfr.texi] m=1 is now valid in get_str
+	[src/get_str.c] allow m=1 for b=2^k
+	[tests/tget_str.c] added test for m=1 and b=2
 
-------------------------------------------------------------------------
-r11954 | vlefevre | 2017-12-11 15:33:31 +0000 (Mon, 11 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tget_q.c
+	[src/get_str.c] added a comment
+	[tests/tget_str.c] improved coverage (finding this example was quite hard!)
 
-[tests/tget_q.c] Removed trailing whitespace.
-------------------------------------------------------------------------
-r11953 | zimmerma | 2017-12-10 07:42:03 +0000 (Sun, 10 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_q.c
+2018-02-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tget_q.c] replaced MPFR_ASSERTN(0) by exit(1)
+	[src/get_sj.c] Removed two assertions, including an incorrect one.
+	Added an assertion.
 
-------------------------------------------------------------------------
-r11952 | vlefevre | 2017-12-10 02:02:43 +0000 (Sun, 10 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/get_q.c
+	[acinclude.m4] Correction: if we cannot test, the portable code must be
+	selected.
 
-[src/get_q.c] Optimization of r11951 suggested by Trevor Spiteri:
-https://sympa.inria.fr/sympa/arc/mpfr/2017-12/msg00040.html
-------------------------------------------------------------------------
-r11951 | zimmerma | 2017-12-09 21:59:21 +0000 (Sat, 09 Dec 2017) | 3 lines
-Changed paths:
-   M /trunk/src/get_q.c
-   M /trunk/tests/tget_q.c
+2018-02-23  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/get_q.c] make result of mpfr_get_q in canonical form
-[tests/tget_q.c] added non-regression test
+	[configure.ac,acinclude.m4] added new macro MPFR_INTMAX_WITHIN_LIMB
+	[src/get_sj.c] optimized the code when MPFR_INTMAX_WITHIN_LIMB=1
 
-------------------------------------------------------------------------
-r11950 | zimmerma | 2017-12-09 21:46:01 +0000 (Sat, 09 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/lngamma.c
+2018-02-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/lngamma.c] replace call to __gmpfr_ceil_log2 by __gmpfr_int_ceil_log2
+	[src/mpfr-impl.h] Removed MPFR_LIMBS_PER_LONG_DOUBLE as it was not
+	  properly specified in the general case and was actually used only
+	  in src/set_ld.c with HAVE_LDOUBLE_IEEE_EXT_LITTLE.
+	[src/set_ld.c] Simplified code. Moreover, the hypothetical case
+	  GMP_NUMB_BITS == 16 will trigger a compilation error instead of
+	  yielding incorrect code.
 
-------------------------------------------------------------------------
-r11949 | vlefevre | 2017-12-09 11:18:20 +0000 (Sat, 09 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/TODO
+	[tests/tbuildopt.c]
+	  * Added missing const.
+	  * Use the variable s to avoid a warning and also to detect potential
+	    undefined behavior with debugging tools if s is not a string.
 
-[TODO] Rename the DEBUG macro to MPFR_DEBUG?
-------------------------------------------------------------------------
-r11945 | vlefevre | 2017-12-08 16:15:36 +0000 (Fri, 08 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/Makefile.am
+2018-02-23  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/Makefile.am] Also distribute generic/coverage/mparam.h
-(at least useful for testing the distributed tarballs).
-------------------------------------------------------------------------
-r11942 | vlefevre | 2017-12-08 14:53:52 +0000 (Fri, 08 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/doc/FAQ.html
+	[src/get_sj.c] fixed typo
 
-[doc] Updated FAQ.html with update-faq.
-------------------------------------------------------------------------
-r11939 | vlefevre | 2017-12-08 14:30:37 +0000 (Fri, 08 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/doc/FAQ.html
+	[src/get_sj.c] added comments and simplified the code
 
-[doc] Updated FAQ.html with update-faq.
-------------------------------------------------------------------------
-r11934 | vlefevre | 2017-12-08 13:56:42 +0000 (Fri, 08 Dec 2017) | 5 lines
-Changed paths:
-   M /trunk/doc/README.dev
+2018-02-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/README.dev] "To make a release":
-  * Note that this needs to be done in a branch.
-  * Swapped (1) and (2), in particular because the coverage might be
-    different in -dev versions and it is better to give results closer
-    to the release.
-------------------------------------------------------------------------
-r11933 | vlefevre | 2017-12-08 13:40:19 +0000 (Fri, 08 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/INSTALL
-   M /trunk/VERSION
-   M /trunk/configure.ac
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/mpfr.h
-   M /trunk/src/version.c
+	[src/mpfr-impl.h] Typo in a comment.
 
-Updated version to 4.1.0-dev.
-------------------------------------------------------------------------
-r11931 | vlefevre | 2017-12-08 13:17:51 +0000 (Fri, 08 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/ChangeLog
+2018-02-23  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-ChangeLog update with "LC_ALL=en_US.UTF8 TZ=UTC svn log -rHEAD:0 -v".
-------------------------------------------------------------------------
-r11930 | vlefevre | 2017-12-08 13:09:08 +0000 (Fri, 08 Dec 2017) | 2 lines
-Changed paths:
-   D /trunk/tests/timings-mpfr.c
-   A /trunk/tools/timings-mpfr.c (from /trunk/tests/timings-mpfr.c:11929)
+	[tests/tget_q.c] improved coverage
 
-Moved tests/timings-mpfr.c into directory "tools" as it is not part
-of the test suite.
-------------------------------------------------------------------------
-r11929 | vlefevre | 2017-12-07 15:10:29 +0000 (Thu, 07 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/fpif.c
+2018-02-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/fpif.c] Removed FIXME about the sign bit of NaN: done in
-r11910 and r11920 (documentation + tests).
-------------------------------------------------------------------------
-r11928 | vlefevre | 2017-12-07 14:58:38 +0000 (Thu, 07 Dec 2017) | 4 lines
-Changed paths:
-   M /trunk/src/div.c
-   M /trunk/src/mul.c
-   M /trunk/src/sqr.c
-   M /trunk/src/sqrt.c
-   M /trunk/src/sub1sp.c
+	[src/get_d64.c] Parsing in the portable version of string_to_Decimal64:
+	similar changes as in r12416 for the _MPFR_IEEE_FLOATS version.
 
-[src] Replaced some "return 0" by "MPFR_RET (0)" (the generated code
-is the same as shown by gcc, thanks to an obvious optimization; this
-is semantically better, which could help provers, and would allow
-code instrumentation in the future, if need be).
-------------------------------------------------------------------------
-r11927 | zimmerma | 2017-12-06 19:54:25 +0000 (Wed, 06 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-mini-gmp.c
-   M /trunk/src/mpfr-mini-gmp.h
-   M /trunk/tests/tget_z.c
-   M /trunk/tests/tgmpop.c
+2018-02-23  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-got rid of mpz_dump (undocumented in GMP)
+	[src/get_ld.c] removed dead code (as in r12413 for mpfr_get_d)
 
-------------------------------------------------------------------------
-r11926 | zimmerma | 2017-12-06 17:14:27 +0000 (Wed, 06 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-mini-gmp.c
+	[src/get_flt.c] optimized code when MPFR_LIMBS_PER_FLT=1
+	[tests/tget_flt.c] improved coverage
 
-[src/mpfr-mini-gmp.c] updated with GMP 6.1.2
+	[src/get_d64.c] simplified code, and removed dead code
+	[src/mpfr-impl.h] added comment
+	[tests/tget_set_d64.c] improve coverage
 
-------------------------------------------------------------------------
-r11925 | vlefevre | 2017-12-06 17:01:14 +0000 (Wed, 06 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2018-02-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] Corrected a Texinfo typography issue.
-------------------------------------------------------------------------
-r11924 | vlefevre | 2017-12-06 16:45:15 +0000 (Wed, 06 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/pool.c
+	[src/set_q.c] Simplified code.
 
-[src/pool.c] Updated description. Corrected copyright years as the
-pool code itself was introduced in 2014.
-------------------------------------------------------------------------
-r11923 | vlefevre | 2017-12-06 16:41:54 +0000 (Wed, 06 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/timings-mpfr.c
+2018-02-23  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/timings-mpfr.c] Removed trailing whitespace, untabified,
-changed GMP_RNDN to MPFR_RNDN.
-------------------------------------------------------------------------
-r11922 | vlefevre | 2017-12-06 16:34:16 +0000 (Wed, 06 Dec 2017) | 15 lines
-Changed paths:
-   M /trunk/NEWS
-   M /trunk/doc/README.dev
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/Makefile.am
-   M /trunk/src/free_cache.c
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/mpfr.h
-   A /trunk/src/pool.c (from /trunk/src/free_cache.c:11921)
+	[src/get_d.c] removed dead code
 
-Cleanup and fixes for the mpz_t pool.
-  * Split src/free_cache.c to itself and a new source file src/pool.c
-    containing pool related code.
-  * src/mpfr-impl.h, src/pool.c: cleanup and fixes. In particular:
-      - renamed MPFR_MY_MPZ_INIT to MPFR_POOL_NENTRIES;
-      - no longer use GMP's symbols __gmpz_init, etc. directly;
-      - improved the condition for mpfr_mpz_init2;
-      - fixed the condition in mpfr_mpz_clear (we want to consider
-        the allocated size, not the size of the current number).
-  * src/Makefile.am: added pool.c.
-  * src/mpfr.h: added mpfr_free_pool prototype.
-  * doc/mpfr.texi: updated pool description in "Memory Handling";
-    new function mpfr_free_pool.
-  * doc/README.dev: update due to the rename of MPFR_MY_MPZ_INIT.
-  * NEWS: better announcement of the mpz_t pool.
-------------------------------------------------------------------------
-r11921 | vlefevre | 2017-12-06 14:45:08 +0000 (Wed, 06 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/get_d.c] optimized for common case MPFR_LIMBS_PER_DOUBLE=1
 
-[doc/mpfr.texi] Small correction concerning the caches.
-------------------------------------------------------------------------
-r11920 | vlefevre | 2017-12-06 14:06:06 +0000 (Wed, 06 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tests/tset_z_exp.c] improved coverage
 
-[doc/mpfr.texi] More details for mpfr_fpif_export and mpfr_fpif_import.
-------------------------------------------------------------------------
-r11919 | zimmerma | 2017-12-06 12:58:31 +0000 (Wed, 06 Dec 2017) | 2 lines
-Changed paths:
-   A /trunk/tests/timings-mpfr.c
+	[src/set_q.c] removed dead code on 64-bit processor
 
-[timings-mpfr.c] test file for measuring timings (added -p option)
+	[src/set_ld.c] improve code when HAVE_LDOUBLE_IEEE_EXT_LITTLE is defined
 
-------------------------------------------------------------------------
-r11918 | vlefevre | 2017-12-06 12:45:40 +0000 (Wed, 06 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/INSTALL
-   M /trunk/src/rec_sqrt.c
+2018-02-22  Vincent Lefèvre  <vincent at vinc17.net>
 
-Updated the remaining www.loria.fr URL's.
-------------------------------------------------------------------------
-r11917 | vlefevre | 2017-12-06 12:44:04 +0000 (Wed, 06 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/doc/algorithms.bib
+	[src/set_ld.c] Reverted r12408: MPFR_LIMBS_PER_LONG_DOUBLE cannot be
+	used with the preprocessor due to the use of "sizeof".
 
-[doc/algorithms.bib] Updated URL's.
-------------------------------------------------------------------------
-r11916 | vlefevre | 2017-12-06 12:37:48 +0000 (Wed, 06 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2018-02-22  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/mpfr.texi] References: typography; updated a URL.
-------------------------------------------------------------------------
-r11914 | zimmerma | 2017-12-06 10:15:40 +0000 (Wed, 06 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/set_ld.c] improve code for MPFR_LIMBS_PER_LONG_DOUBLE=1
 
-[mpfr.texi] updated reference to "Modern Computer Arithmetic"
+	[tests/tfma.c] improved coverage of mpfr_set_1_2
 
-------------------------------------------------------------------------
-r11913 | zimmerma | 2017-12-06 09:59:31 +0000 (Wed, 06 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/free_cache.c
+	[tests/tbuildopt.c] improve coverage
 
-[free_cache.c] limit the size of objects in the mpz_t pool
+2018-02-22  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11912 | vlefevre | 2017-12-06 09:43:02 +0000 (Wed, 06 Dec 2017) | 3 lines
-Changed paths:
-   M /trunk/src/free_cache.c
+	[tests/tfma.c] Corrected a comment.
 
-[src/free_cache.c] Added a comment for the mpz_t pool, and a suggestion
-for mpfr_mpz_clear so that the pool will not take too much memory while
-keeping a possible benefit for very small precision.
-------------------------------------------------------------------------
-r11911 | vlefevre | 2017-12-05 23:33:58 +0000 (Tue, 05 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/src/mpfr.h
+	[tests/tfma.c] Joined test_overflow3 and test_overflow4 by using a loop.
+	Improved the corresponding test and error message. Also run this test
+	with the default exponent range.
 
-[src/mpfr.h] Made box around code examples for clarity and grep.
-------------------------------------------------------------------------
-r11910 | vlefevre | 2017-12-05 16:17:36 +0000 (Tue, 05 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
-   M /trunk/tests/tfpif.c
+	[src/fma.c] Added FIXME for r12396, which still seems incorrect.
 
-[doc/mpfr.texi] For mpfr_fpif_export: the sign of a NaN is stored.
-[tests/tfpif.c] Test the sign of NaN (in particular).
-------------------------------------------------------------------------
-r11909 | vlefevre | 2017-12-05 15:57:33 +0000 (Tue, 05 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/mpfr-impl.h] Typo in a comment.
 
-[doc/mpfr.texi] Updated references.
-------------------------------------------------------------------------
-r11908 | vlefevre | 2017-12-05 15:00:52 +0000 (Tue, 05 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[NEWS] Update about the change of __float128 to _Float128: clarification
+	that it is from ISO/IEC TS 18661 ("standard" was too vague); added FIXME
+	on a possible fallback to __float128 and ABI considerations.
 
-[doc/mpfr.texi] Update about 0 of type without signed zeros, as in
-mpfr_div_ui.
-------------------------------------------------------------------------
-r11907 | vlefevre | 2017-12-05 13:43:39 +0000 (Tue, 05 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[configure.ac] For --enable-float128, this is still autodetect, e.g.:
+	  checking if compiler knows _Float128 with C99 constants... no
+	Added a FIXME: a fallback to __float128 is necessary to avoid
+	regressions.
 
-[doc/mpfr.texi] Document the behavior of mpfr_ui_pow and mpfr_ui_pow_ui
-on the integer 0 (0 does not have a sign here).
-------------------------------------------------------------------------
-r11906 | zimmerma | 2017-12-05 10:24:20 +0000 (Tue, 05 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mini-gmp
+2018-02-22  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/mini-gmp] added information about result of "make check"
+	[src/sqr.c] added comments
+	[tests/tsqr.c] improve coverage of sqr.c to 100%
 
-------------------------------------------------------------------------
-r11905 | vlefevre | 2017-12-05 10:21:46 +0000 (Tue, 05 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
+	[src/sqr.c] fixed a bug in mpfr_sqr_1n in a rare case near underflow,
+		    only use mpfr_sqr_1, mpfr_sqr_1n, mpfr_sqr_2, mpfr_sqr_3
+		    when all numbers have same precision (like for mpfr_mul),
+		    and added comments
+	[tests/tsqr.c] added tests, including non-regression for above bug
 
-[src/mpfr-gmp.h] Removed old code for pre-GMP-5 versions.
-------------------------------------------------------------------------
-r11904 | vlefevre | 2017-12-05 10:20:06 +0000 (Tue, 05 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/urandomb.c
+	[src/fma.c] added comments and a FIXME
 
-[src/urandomb.c] Removed an obsolete "#if __MPFR_GMP(5,0,0)" as we now
-require GMP 5.0+ and mp_bitcnt_t is also defined by mini-gmp.
-------------------------------------------------------------------------
-r11902 | vlefevre | 2017-12-05 10:01:32 +0000 (Tue, 05 Dec 2017) | 4 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
+	[src/fma.c] fixed last failure
+	[tests/tfma.c] removed debug stuff
 
-[src/mpfr-gmp.h] Removed the code that defined mpn_copyi and mpn_copyd
-macros for GMP < 5, since MPFR now requires GMP 5.0+ and these functions
-are also defined by mini-gmp (these macros were used by mini-gmp only
-because mini-gmp does not define GMP_VERSION).
-------------------------------------------------------------------------
-r11901 | vlefevre | 2017-12-05 09:52:56 +0000 (Tue, 05 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
+	[tests/tfma.c] added new failing test
 
-[src/mpfr-gmp.h] Missing parentheses around parameters in mpn_copyi
-and mpn_copyd macro definitions.
-------------------------------------------------------------------------
-r11900 | zimmerma | 2017-12-05 09:44:49 +0000 (Tue, 05 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
+	[src/fma.c] fix failure from last test
 
-fixed bug in replacement function for copyi and copyd (found with mini-gmp)
+	[src/fma.c] added comments
+	[tests/tfma.c] added a test (currently failing)
 
-------------------------------------------------------------------------
-r11899 | zimmerma | 2017-12-05 09:43:54 +0000 (Tue, 05 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mini-gmp
+	[mips/mparam.h] updated
 
-add --disable-shared for mini-gmp (not tested yet with dynamic linking)
+	changed __float128 (gcc specific) into the standard type _Float128
 
-------------------------------------------------------------------------
-r11898 | vlefevre | 2017-12-05 09:09:16 +0000 (Tue, 05 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr.h
+	[arm/mparam.h] updated
 
-[src/mpfr.h] Explain how to avoid the "... is deprecated" warning when
-testing a deprecated function.
-------------------------------------------------------------------------
-r11897 | vlefevre | 2017-12-05 08:52:43 +0000 (Tue, 05 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/README.dev
+	[x86/mparam.h] updated
 
-[doc/README.dev] Removed a -Wno-error=deprecated-declarations as
-the specific warnings are now avoided (r11896).
-------------------------------------------------------------------------
-r11896 | vlefevre | 2017-12-05 08:47:25 +0000 (Tue, 05 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr.h
-   M /trunk/tests/tgrandom.c
-   M /trunk/tests/tpow.c
-   M /trunk/tests/troot.c
+	[src/mparam_h.in] amd/k8/mparam.h -> amd/mparam.h
 
-Disable the "deprecated" attribute of deprecated functions *only* for
-the tests of these functions, to avoid the corresponding warnings.
-------------------------------------------------------------------------
-r11895 | vlefevre | 2017-12-05 08:34:13 +0000 (Tue, 05 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/src/dump.c
-   M /trunk/tests/trint.c
+	[amd/mparam.h] updated
 
-Removed trailing whietespace.
-------------------------------------------------------------------------
-r11894 | zimmerma | 2017-12-05 08:16:00 +0000 (Tue, 05 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-mini-gmp.c
-   M /trunk/src/mpfr-mini-gmp.h
-   M /trunk/tests/terandom.c
-   M /trunk/tests/tgrandom.c
-   M /trunk/tests/tnrandom.c
-   M /trunk/tests/trandom.c
-   M /trunk/tests/turandom.c
+	[sparc64/mparam.h] updated
 
-fixed compiler warnings with mini-gmp
+	[x86_64/core2/mparam.h] updated
 
-------------------------------------------------------------------------
-r11893 | vlefevre | 2017-12-04 22:47:09 +0000 (Mon, 04 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/src/dump.c
-   M /trunk/src/fpif.c
-   M /trunk/src/inp_str.c
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/out_str.c
-   M /trunk/tests/mpfr-test.h
-   M /trunk/tests/tvalist.c
+	[powerpc64/mparam.h] updated
 
-Simplified the use of MPFR_USE_FILE since <stdio.h> (<cstdio> for C++)
-is unconditionally included.
-------------------------------------------------------------------------
-r11892 | vlefevre | 2017-12-04 22:20:08 +0000 (Mon, 04 Dec 2017) | 1 line
-Changed paths:
-   R /trunk/doc/texinfo.tex (from /trunk/doc/texinfo.tex:11890)
+	[x86_64/mparam.h] updated
 
-Restored the history (and mergedinfo) of doc/texinfo.tex
-------------------------------------------------------------------------
-r11891 | zimmerma | 2017-12-04 19:01:20 +0000 (Mon, 04 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mini-gmp
-   R /trunk/doc/texinfo.tex
-   M /trunk/src/dump.c
-   M /trunk/src/fpif.c
-   M /trunk/src/get_q.c
-   M /trunk/src/gmp_op.c
-   M /trunk/src/inp_str.c
-   M /trunk/src/mpfr-mini-gmp.c
-   M /trunk/src/mpfr-mini-gmp.h
-   M /trunk/src/mpfr.h
-   M /trunk/src/out_str.c
-   M /trunk/src/set_q.c
-   M /trunk/tests/mpfr-test.h
-   M /trunk/tests/tget_q.c
-   M /trunk/tests/tget_z.c
-   M /trunk/tests/trint.c
+	[src/mulders.c] removed dead code
 
-make compilation work again (make + make check) with mini-gmp
+2018-02-21  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r11890 | vlefevre | 2017-12-04 15:05:05 +0000 (Mon, 04 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/src/Makefile.am
+	[tune/tuneup.c] ensure k < n in mpfr_divhigh_n[]
 
-Improved portability of the check-gmp-symbols make rule.
-------------------------------------------------------------------------
-r11889 | vlefevre | 2017-12-04 13:43:59 +0000 (Mon, 04 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/src/fpif.c
+	[src/mparam_h.in] added __tune_znver1__ for AMD64 (e.g., gcc67.fsffrance.org)
 
-[src/fpif.c] Clarification.
-------------------------------------------------------------------------
-r11888 | vlefevre | 2017-12-04 13:37:19 +0000 (Mon, 04 Dec 2017) | 3 lines
-Changed paths:
-   M /trunk/tests/tfpif.c
-   M /trunk/tests/tfpif_r1.dat
+	[src/mips/mparam.h] updated on gcc22
 
-[tests]
-  * tfpif.c: in doit(), also test the negative versions of the numbers.
-  * tfpif_r1.dat: update.
-------------------------------------------------------------------------
-r11887 | vlefevre | 2017-12-04 11:36:07 +0000 (Mon, 04 Dec 2017) | 3 lines
-Changed paths:
-   M /trunk/src/get_str.c
-   M /trunk/src/vasprintf.c
+	[NEWS] added item
 
-[src] Update about the internal use of mpfr_get_str.
-  * get_str.c: updated a comment.
-  * vasprintf.c: added assertions.
-------------------------------------------------------------------------
-r11886 | vlefevre | 2017-12-04 11:11:37 +0000 (Mon, 04 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	removed tuning for x86/core2, updated tuning for generic x86
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r11885 | vlefevre | 2017-12-04 10:28:55 +0000 (Mon, 04 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/src/get_str.c
+	[src/sparc64/mparam.h] updated tuning parameters for sparc64
 
-[src/get_str.c] Corrected a comment.
-------------------------------------------------------------------------
-r11884 | vlefevre | 2017-12-04 10:20:34 +0000 (Mon, 04 Dec 2017) | 3 lines
-Changed paths:
-   M /trunk
-   M /trunk/doc/mpfr.texi
+2018-02-21  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] Update about the memory allocation (added references
-to Section "Memory Handling").
-(merged changeset r11632 from the 3.1 branch)
-------------------------------------------------------------------------
-r11883 | vlefevre | 2017-12-04 10:09:02 +0000 (Mon, 04 Dec 2017) | 4 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/mparam_h.in] Use the generic parameters for x86_64 with Clang.
 
-[doc/mpfr.texi] Update for mpfr_get_str:
-  * Added a texi comment explaining why m+1 (so that if the mpfr_get_str
-    implementation is improved, we know whether this is still the case).
-  * Improved the documentation for the case str = null pointer.
-------------------------------------------------------------------------
-r11882 | vlefevre | 2017-12-03 14:16:40 +0000 (Sun, 03 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2018-02-21  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/mpfr.texi] Updated comments about the latest change (r11881).
-------------------------------------------------------------------------
-r11881 | vlefevre | 2017-12-03 14:14:18 +0000 (Sun, 03 Dec 2017) | 5 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	added tuning for ARM
 
-[doc/mpfr.texi] Typography fixes for TeX (DVI/PS/PDF) in math mode.
-  * Corrected the use of \lceil and \rceil.
-  * Added missing @var, including 2 in exponent, as allowed by
-    texinfo.tex 2017-12-01.13.
-  * Removed old comments about Texinfo.
-------------------------------------------------------------------------
-r11880 | vlefevre | 2017-12-03 13:55:51 +0000 (Sun, 03 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/texinfo.tex
+2018-02-21  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/texinfo.tex] Update to the latest version 2017-12-01.13 from
-<https://ftp.gnu.org/gnu/texinfo/>.
-------------------------------------------------------------------------
-r11878 | vlefevre | 2017-12-01 16:27:09 +0000 (Fri, 01 Dec 2017) | 2 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	Reverted r12368: sparc64 tuning should be updated on gcc202.
 
-[acinclude.m4] In r11876, forgot to define MPFR_WANT_DECIMAL_FLOATS in
-the cross-compiling case.
-------------------------------------------------------------------------
-r11877 | vlefevre | 2017-12-01 15:04:21 +0000 (Fri, 01 Dec 2017) | 6 lines
-Changed paths:
-   M /trunk/doc/README.dev
-   M /trunk/tests/tests.c
-   M /trunk/tests/tversion.c
+2018-02-21  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-Solved an output issue on AIX due to the use of setbuf() after output
-in tversion. Indeed, this is disallowed by ISO C.
-  * doc/README.dev: added a note about tests_start_mpfr and this issue.
-  * tests/tests.c: moved test_version() after setbuf().
-  * tests/tversion.c: moved tests_start_mpfr() earlier, before any
-    printf().
-------------------------------------------------------------------------
-r11876 | vlefevre | 2017-12-01 14:06:07 +0000 (Fri, 01 Dec 2017) | 3 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	[src/mparam_h.in] generic case for all remaining i386's
 
-[acinclude.m4] Attempt to fix detection of decimal floats: if _Decimal64
-is known but does not work, no longer fail when --enable-decimal-float
-has not been used; just disable decimal floats.
-------------------------------------------------------------------------
-r11875 | vlefevre | 2017-12-01 13:37:40 +0000 (Fri, 01 Dec 2017) | 3 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	[src/mparam_h.in] put back __tune_k8__
 
-[acinclude.m4] Attempt to fix detection of decimal floats (BID was
-incorrectly assumed in case of link failure, if ld returned 1, which
-was observed on powerpc-ibm-aix7.2.0.0 [gcc119.fsffrance.org]).
-------------------------------------------------------------------------
-r11874 | vlefevre | 2017-12-01 12:28:45 +0000 (Fri, 01 Dec 2017) | 1 line
-Changed paths:
-   M /trunk/src/fpif.c
+	[src/mparam_h.in] check __amd64__ before generic __x86_64__
 
-[src/fpif.c] Updated comments about the format.
-------------------------------------------------------------------------
-r11871 | vlefevre | 2017-11-30 17:27:20 +0000 (Thu, 30 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	removed tuning for hppa (gcc61 is offline)
 
-[doc/README.dev] Typo.
-------------------------------------------------------------------------
-r11870 | vlefevre | 2017-11-30 17:13:25 +0000 (Thu, 30 Nov 2017) | 5 lines
-Changed paths:
-   M /trunk/Makefile.am
-   M /trunk/src/Makefile.am
+	removed tuning parameters for sparc64 (gcc64, gcc200 and gcc201 are offline)
 
-Two fixes for the check-gmp-symbols make rule:
-  * Use $(COMPILE) instead of $(CC) to get the usual compilation flags
-    (in particular, the -I flags may be important to find gmp.h and to
-    get the correct one).
-  * Run the test only if libmpfr.so exists.
-------------------------------------------------------------------------
-r11869 | vlefevre | 2017-11-30 15:32:33 +0000 (Thu, 30 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	[tune/tuneup.c] for mpfr_div_threshold, start from 3 limbs again
 
-[doc/README.dev] Internal GMP symbols: mention "make check-gmp-symbols".
-------------------------------------------------------------------------
-r11868 | vlefevre | 2017-11-30 15:30:30 +0000 (Thu, 30 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/NEWS
+	removed tuning for powerpc32 (no such machine available any more)
 
-[NEWS] Mention "make check-gmp-symbols" (experimental).
-------------------------------------------------------------------------
-r11867 | vlefevre | 2017-11-30 15:27:00 +0000 (Thu, 30 Nov 2017) | 2 lines
-Changed paths:
-   M /trunk/INSTALL
+	[src/powerpc64/mparam.h] updated tuning parameters for powerpc64
 
-[INSTALL] Added an optional step "make check-gmp-symbols" to check
-that MPFR does not use GMP internal symbols.
-------------------------------------------------------------------------
-r11866 | vlefevre | 2017-11-30 15:17:10 +0000 (Thu, 30 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/Makefile.am
-   M /trunk/src/Makefile.am
+	[src/amd/k8/mparam.h] fixed MPFR_DIV_THRESHOLD
 
-Added comment about the check-gmp-symbols make rule (added in r11865).
-------------------------------------------------------------------------
-r11865 | vlefevre | 2017-11-30 15:12:20 +0000 (Thu, 30 Nov 2017) | 2 lines
-Changed paths:
-   M /trunk/Makefile.am
-   M /trunk/src/Makefile.am
+	updated tuning parameters for amd/k8 and x86/core2
 
-Added check-gmp-symbols make rule to check that MPFR does not use
-GMP internal symbols.
-------------------------------------------------------------------------
-r11864 | vlefevre | 2017-11-30 13:57:29 +0000 (Thu, 30 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+2018-02-21  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/README.dev] Detailed the note about the list of GMP symbols.
-------------------------------------------------------------------------
-r11863 | vlefevre | 2017-11-30 13:44:10 +0000 (Thu, 30 Nov 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/README.dev
+	Reverted r12359 and added a comment: tuning for x86 is used when
+	building GMP/MPFR with a 32-bit ABI (ABI=32 / -m32).
 
-[doc/README.dev] Document how to get the list of GMP symbols used
-by MPFR and how to detect GMP internal symbols used by MPFR.
-------------------------------------------------------------------------
-r11862 | vlefevre | 2017-11-30 13:19:03 +0000 (Thu, 30 Nov 2017) | 2 lines
-Changed paths:
-   M /trunk/INSTALL
+2018-02-21  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[INSTALL] Added a paragraph about the potential incorrect use of
-GMP internals.
-------------------------------------------------------------------------
-r11861 | vlefevre | 2017-11-29 15:26:52 +0000 (Wed, 29 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/src/fpif.c
+	[tuneup.c] start from 4 limbs for mpfr_div_threshold
 
-[src/fpif.c] Fixed the sign bug for mpfr_fpif_import.
-------------------------------------------------------------------------
-r11860 | vlefevre | 2017-11-29 15:05:28 +0000 (Wed, 29 Nov 2017) | 4 lines
-Changed paths:
-   M /trunk/tests/tfpif.c
+	removed tuning for ia64 (gcc60.fsffrance.org is now offline)
 
-[tests/tfpif.c] In doit(), before the call to mpfr_fpif_import(), set
-the sign of the target to the opposite of the expected sign. Thus, if
-mpfr_fpif_import forgets to set the sign, this will be detected. And
-a failure actually occurs now!
-------------------------------------------------------------------------
-r11859 | vlefevre | 2017-11-29 14:59:03 +0000 (Wed, 29 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tfpif.c
+	removed tuning for x86 (no more access to such machine)
 
-[tests/tfpif.c] For mpfr_fpif_import, check the precision too.
-------------------------------------------------------------------------
-r11858 | vlefevre | 2017-11-29 02:37:57 +0000 (Wed, 29 Nov 2017) | 3 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/fpif.c
+	[tune/tuneup.c] make tune_simple_func more robust for small precisions
 
-[doc/mpfr.texi,src/fpif.c] For mpfr_fpif_import, in case of failure,
-the argument x is either unchanged or set to NaN, to make sure that
-x has valid contents (otherwise this could yield erratic behavior).
-------------------------------------------------------------------------
-r11857 | vlefevre | 2017-11-29 02:25:19 +0000 (Wed, 29 Nov 2017) | 3 lines
-Changed paths:
-   M /trunk/src/fpif.c
+	[src/x86_64/mparam.h] fixed MPFR_DIV_THRESHOLD
 
-[src/fpif.c] For mpfr_fpif_import, replaced an assertion by a failure
-(since the full format is not described in the manual and MPFR cannot
-currently generate such a case, this is OK).
-------------------------------------------------------------------------
-r11856 | vlefevre | 2017-11-29 02:06:02 +0000 (Wed, 29 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tfpif_r1.dat
+	[x86_64/core2/mparam.h] updated on gcc14
 
-[tests/tfpif_r1.dat] Fixed an obvious error (incorrect sign of 0).
-------------------------------------------------------------------------
-r11855 | vlefevre | 2017-11-29 01:49:34 +0000 (Wed, 29 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tfpif.c
+2018-02-21  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tfpif.c] Output more information in case of error.
-------------------------------------------------------------------------
-r11853 | vlefevre | 2017-11-28 16:46:55 +0000 (Tue, 28 Nov 2017) | 2 lines
-Changed paths:
-   M /trunk/src/fpif.c
+	[acinclude.m4] In the "long double" format recognition, added
+	size information for IEEE extended (not used by MPFR, but this
+	may be useful information for the user).
 
-[src/fpif.c] Fixed some bugs (though unlikely to occur in practice).
-Added comments. Minor code improvement.
-------------------------------------------------------------------------
-r11852 | vlefevre | 2017-11-28 15:41:17 +0000 (Tue, 28 Nov 2017) | 7 lines
-Changed paths:
-   M /trunk/acinclude.m4
-   D /trunk/m4/size_max.m4
-   M /trunk/src/vasprintf.c
+2018-02-21  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-Got rid of the useless SIZE_MAX macro.
-  * src/vasprintf.c: replaced SIZE_MAX by (size_t) -1, already used
-    in some other files.
-  * acinclude.m4: no longer use gl_SIZE_MAX (from m4/size_max.m4).
-  * Removed m4/size_max.m4 as it is no longer needed (note that the
-    definition of SIZE_MAX by this file was unnecessarily complex
-    and potentially incorrect on some platforms).
-------------------------------------------------------------------------
-r11851 | vlefevre | 2017-11-28 15:07:33 +0000 (Tue, 28 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/src/fpif.c
+	removed tuning parameters for amd/athlon (we have no access to such machine
+	any more)
 
-[src/fpif.c] Added static assertions in mpfr_fpif_import().
-------------------------------------------------------------------------
-r11850 | vlefevre | 2017-11-28 14:41:45 +0000 (Tue, 28 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/src/fpif.c
+	removed tuning for pentium4
 
-[src/fpif.c] Improved a test (mpfr_regular_p → !MPFR_IS_SINGULAR).
-------------------------------------------------------------------------
-r11849 | vlefevre | 2017-11-28 14:38:47 +0000 (Tue, 28 Nov 2017) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	removed tuning for corei5 (was not used)
 
-[src/mpfr-impl.h] Added a note about the use of the MPFR_IS_PURE_*(x)
-and MPFR_IS_SINGULAR*(x) macros.
-------------------------------------------------------------------------
-r11848 | vlefevre | 2017-11-27 16:07:23 +0000 (Mon, 27 Nov 2017) | 2 lines
-Changed paths:
-   M /trunk/src/fpif.c
+	[src/x86_64/mparam.h] added tuning for generic x86_64
+	[tune/tuneup.c] mpfr_divhigh now wants n >= 2
 
-[src/fpif.c] Added format description from past mail messages, to be
-checked in case of change (+ FIXME for NaN). Minor code improvement.
-------------------------------------------------------------------------
-r11847 | vlefevre | 2017-11-27 15:04:59 +0000 (Mon, 27 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tfpif.c
+	removed thresholds for arm since gcc57 is no longer available, thus we cannot
+	tune on an ARM machine
 
-[tests/tfpif.c] Added TODO's (but the failure should be fixed first).
-------------------------------------------------------------------------
-r11846 | vlefevre | 2017-11-27 14:33:53 +0000 (Mon, 27 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/src/fpif.c
+2018-02-21  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/fpif.c] Clarified sign variable.
-------------------------------------------------------------------------
-r11845 | vlefevre | 2017-11-27 14:17:52 +0000 (Mon, 27 Nov 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tfpif.c
+	[src/mulders.c] Removed unused variable dinv.
 
-[tests/tfpif.c] Use SAME_VAL instead of mpfr_cmp. This triggers a bug
-that was not detected yet.
-------------------------------------------------------------------------
-r11844 | vlefevre | 2017-11-27 14:15:52 +0000 (Mon, 27 Nov 2017) | 3 lines
-Changed paths:
-   M /trunk/tests/tfpif.c
+2018-02-20  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tfpif.c] Split the main test function into:
-  * doit(): keep only the tests that depend on the precisions.
-  * check_bad(): tests for bad file/data; precisions are not involved.
-------------------------------------------------------------------------
-r11843 | vlefevre | 2017-11-27 13:58:24 +0000 (Mon, 27 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tfpif.c
+	[src/div.c] added comment
+	[src/mpfr-gmp.h] moved definition of MUL_FFT_THRESHOLD
+	[src/mulders.c] removed unused code, and force n>=2 in mpfr_divhigh_n_basecase
+	[tests/tmul.c] improve coverage
+	[tune/tuneup.c] forbid k = n-1 in divhigh_ktab[]
 
-[tests/tfpif.c] Improved a test (NaN checking). Added comments.
-------------------------------------------------------------------------
-r11842 | vlefevre | 2017-11-27 13:53:43 +0000 (Mon, 27 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tfpif.c
+	[tests/tdiv.c] improve coverage, now 100% for div.c
 
-[tests/tfpif.c] Removed a TODO done in r10326 and r10338.
-------------------------------------------------------------------------
-r11841 | vlefevre | 2017-11-27 10:31:33 +0000 (Mon, 27 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/autogen.sh
+	[src/ai.c] revert part of r12312
+	[tests/tai.c] added coverage test provided by Sylvain Chevillard
 
-Updated autogen.sh so that doc/texinfo.tex isn't replaced.
-------------------------------------------------------------------------
-r11840 | vlefevre | 2017-11-27 10:25:01 +0000 (Mon, 27 Nov 2017) | 3 lines
-Changed paths:
-   A /trunk/doc/texinfo.tex
+	[src/sub1.c] revert r12317 since it did not consider UBFs. For the record,
+		     tfmma was failing with GMP_CHECK_RANDOMIZE=1519138438006416.
 
-Added doc/texinfo.tex file from Texinfo 6.5 since the version installed
-by Automake (via "autoreconf -i" as called by autogen.sh) is obsolete:
-more than 4 years older than the current version!
-------------------------------------------------------------------------
-r11839 | vlefevre | 2017-11-27 09:17:37 +0000 (Mon, 27 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/div.c] get rid of mpfr_div_with_mpz_tdiv_q
 
-[doc/mpfr.texi] Updated a comment about a bug in Texinfo.
-------------------------------------------------------------------------
-r11838 | vlefevre | 2017-11-23 14:33:18 +0000 (Thu, 23 Nov 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_exp.c
+2018-02-20  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tset_exp.c] Check mpfr_get_exp too (with two additional tests
-for mpfr_set_exp).
-------------------------------------------------------------------------
-r11837 | vlefevre | 2017-11-23 13:58:12 +0000 (Thu, 23 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/tests/texceptions.c
+	[src/gmp_op.c] Fixed a bug in mpfr_cmp_q on NaN rational: the NaN flag
+	was set by mpfr_set_q, but the flags were not restored just after.
 
-[tests/texceptions.c] Minor improvements.
-------------------------------------------------------------------------
-r11836 | vlefevre | 2017-11-23 13:53:24 +0000 (Thu, 23 Nov 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/gmp_op.c] Reverted incorrect change in r12337 for mpfr_cmp_q.
+	Explanation in comment. If the code was not tested, it should be by
+	using mpq_set_num and mpq_set_den to construct such rationals.
 
-[doc/mpfr.texi] For mpfr_get_exp, document that x can be outside of
-the current range of acceptable values (this was ambiguous).
-------------------------------------------------------------------------
-r11835 | vlefevre | 2017-11-21 15:03:59 +0000 (Tue, 21 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2018-02-20  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/mpfr.texi] Corrected Texinfo typography issues.
-------------------------------------------------------------------------
-r11834 | zimmerma | 2017-11-21 14:11:23 +0000 (Tue, 21 Nov 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tests/tdiv.c] improve coverage
 
-added another example where we can have an overflow
+	[tests/tdiv.c] improve coverage of mpfr_div_2
 
-------------------------------------------------------------------------
-r11833 | zimmerma | 2017-11-21 13:14:23 +0000 (Tue, 21 Nov 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2018-02-20  Vincent Lefèvre  <vincent at vinc17.net>
 
-added pointer to mpfr_subnormalize
+	[src/{add,sub}1sp.c] Updated/added comments for MPFR_WANT_ASSERT >= 2.
 
-------------------------------------------------------------------------
-r11832 | vlefevre | 2017-11-21 12:52:40 +0000 (Tue, 21 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2018-02-20  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/mpfr.texi] Major update of "MPFR and the IEEE 754 Standard".
-------------------------------------------------------------------------
-r11831 | vlefevre | 2017-11-21 11:44:50 +0000 (Tue, 21 Nov 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/div.c] removed dead code
 
-[doc/mpfr.texi] Added "MPFR and the IEEE 754 Standard" to the main menu
-as required. Title capitalization.
-------------------------------------------------------------------------
-r11830 | vlefevre | 2017-11-21 11:41:29 +0000 (Tue, 21 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/gmp_op.c] removed dead code
+	[tests/tgmpop.c] improve coverage of gmp_op.c to 100%
 
-[doc/mpfr.texi] Correction of a @node.
-------------------------------------------------------------------------
-r11829 | zimmerma | 2017-11-21 10:27:43 +0000 (Tue, 21 Nov 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2018-02-20  Vincent Lefèvre  <vincent at vinc17.net>
 
-added section "MPFR and the IEEE 754 standard"
+	[acinclude.m4] Added missing ";;" before "esac" for code robustness.
 
-------------------------------------------------------------------------
-r11828 | vlefevre | 2017-11-20 17:48:30 +0000 (Mon, 20 Nov 2017) | 3 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[acinclude.m4] Added a FIXME. Added a ";;" for safety.
 
-[doc/mpfr.texi] mpfr_can_round: corrected the example; removed
-a reference to "ternary value" as there is already one in the
-previous sentence; clarification.
-------------------------------------------------------------------------
-r11827 | vlefevre | 2017-11-20 17:37:54 +0000 (Mon, 20 Nov 2017) | 4 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2018-02-20  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/mpfr.texi] Faithful rounding (MPFR_RNDF):
-  * Document that this feature is experimental and partially supported.
-  * Update Section "API Compatibility".
-Note: the NEWS file was up-to-date.
-------------------------------------------------------------------------
-r11822 | vlefevre | 2017-11-15 16:17:14 +0000 (Wed, 15 Nov 2017) | 5 lines
-Changed paths:
-   M /trunk/tests/talloc-cache.c
+	[acinclude.m4] added comment, and define MPFR_LONG_WITHIN_LIMB when cannot test
 
-[tests/talloc-cache.c]
-  * Replaced test + abort() by the more informative MPFR_ASSERTN().
-  * Also check that the allocator is the current GMP one (this would
-    fail with MPFR 3.1.6, where the allocation functions are memorized
-    the first time they are seen).
-------------------------------------------------------------------------
-r11821 | vlefevre | 2017-11-15 12:35:39 +0000 (Wed, 15 Nov 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/free_cache.c
-   M /trunk/src/mpfr.h
-   M /trunk/tests/talloc-cache.c
+2018-02-20  Vincent Lefèvre  <vincent at vinc17.net>
 
-mpfr_mp_memory_cleanup() now returns an error code (currently always 0)
-to avoid a future prototype change in case errors would be possible.
-------------------------------------------------------------------------
-r11820 | vlefevre | 2017-11-10 16:48:39 +0000 (Fri, 10 Nov 2017) | 6 lines
-Changed paths:
-   M /trunk/TODO
-   M /trunk/src/ai.c
-   M /trunk/src/bernoulli.c
-   M /trunk/src/clear.c
-   M /trunk/src/exp3.c
-   M /trunk/src/fpif.c
-   M /trunk/src/get_str.c
-   M /trunk/src/init2.c
-   M /trunk/src/inp_str.c
-   M /trunk/src/lngamma.c
-   M /trunk/src/mpfr-gmp.c
-   M /trunk/src/mpfr-gmp.h
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/out_str.c
-   M /trunk/src/rndna.c
-   M /trunk/src/round_prec.c
-   M /trunk/src/set_prec.c
-   M /trunk/src/strtofr.c
-   M /trunk/src/vasprintf.c
-   M /trunk/src/zeta.c
-   M /trunk/tests/tabort_defalloc1.c
-   M /trunk/tests/tabort_defalloc2.c
+	[src/random_deviate.c] Improved highest_bit_idx in the case where
+	MPFR_LONG_WITHIN_LIMB is not defined (tested with GCC).
 
-Cleanup: In src/mpfr-gmp.h, exchanged
-  mpfr_allocate_func    and  *__gmp_allocate_func
-  mpfr_reallocate_func  and  *__gmp_reallocate_func
-  mpfr_free_func        and  *__gmp_free_func
-and in the code, replaced *__gmp_{allocate,reallocate,free}_func
-by mpfr_{allocate,reallocate,free}_func; updated TODO file.
-------------------------------------------------------------------------
-r11819 | vlefevre | 2017-11-10 13:58:25 +0000 (Fri, 10 Nov 2017) | 3 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2018-02-20  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/mpfr.texi] The sign bit of a NaN is now specified for mpfr_abs,
-mpfr_neg and mpfr_set, in order to mimic the IEEE-754 abs, negate
-and copy operations.
-------------------------------------------------------------------------
-r11818 | vlefevre | 2017-11-10 13:13:13 +0000 (Fri, 10 Nov 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tabs.c
+	[src/mul.c] resolved FIXME and removed dead code
 
-[tests/tabs.c] More tests on mpfr_abs, including the ternary value
-and the NaN flag and sign bit for ±NaN.
-------------------------------------------------------------------------
-r11817 | vlefevre | 2017-11-10 12:53:48 +0000 (Fri, 10 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tabs.c
+	[tests/tmul.c] improve coverage
 
-[tests/tabs.c] Coding style.
-------------------------------------------------------------------------
-r11816 | vlefevre | 2017-11-10 12:47:09 +0000 (Fri, 10 Nov 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tset.c
+	[src/random_deviate.c] highest_bit_idx() assumes x > 0
 
-[tests/tset.c] For mpfr_neg on NaN, also check that the variable is
-set to NaN and that the ternary value is 0.
-------------------------------------------------------------------------
-r11815 | vlefevre | 2017-11-10 12:43:04 +0000 (Fri, 10 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tset.c
+	[src/random_deviate.c] fixed comment
 
-[tests/tset.c] More NaN tests for mpfr_set.
-------------------------------------------------------------------------
-r11814 | vlefevre | 2017-11-10 12:34:17 +0000 (Fri, 10 Nov 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tset.c
+	[src/random_deviate.c] redo change r12315 using MPFR_LONG_WITHIN_LIMB
 
-[tests/tset.c] More tests of the NaN flag and the sign bit for mpfr_neg
-on NaN.
-------------------------------------------------------------------------
-r11813 | vlefevre | 2017-11-10 12:22:26 +0000 (Fri, 10 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tset.c
+	[src/sub1.c] added 2 FIXME
 
-[tests/tset.c] The global variable "error" is better as static.
-------------------------------------------------------------------------
-r11812 | vlefevre | 2017-11-10 12:17:15 +0000 (Fri, 10 Nov 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tset.c
+2018-02-19  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tset.c] For mpfr_neg on NaN, check that the sign bit is flipped
-in both ways.
-------------------------------------------------------------------------
-r11811 | vlefevre | 2017-11-10 12:02:02 +0000 (Fri, 10 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/tests
+	[tests/tai.c] Renamed test_near_zero to test_near_m2e, since this is
+	"exercise mpfr_ai near m*2^e", as documented. Corrected comments.
 
-[tests] Added talloc-cache to svn:ignore property.
-------------------------------------------------------------------------
-r11810 | vlefevre | 2017-11-09 14:49:39 +0000 (Thu, 09 Nov 2017) | 3 lines
-Changed paths:
-   M /trunk/tests/tset.c
+	[tests/tai.c] For test_near_zero(), check that the NaN flag was not set
+	(useful since such tests don't really check that the result is not NaN).
 
-[tests/tset.c] In the mpfr_neg test on the sign of NaN:
-C90 compatibility; improved robustness since as specified,
-mpfr_signbit can return any value (not just 0 or 1).
-------------------------------------------------------------------------
-r11809 | vlefevre | 2017-11-09 14:35:17 +0000 (Thu, 09 Nov 2017) | 2 lines
-Changed paths:
-   M /trunk/src/neg.c
+2018-02-19  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/neg.c] Refactored code (BTW, this was not a bug as the sign of NaN
-is currently unspecified for mpfr_neg).
-------------------------------------------------------------------------
-r11808 | zimmerma | 2017-11-09 13:57:40 +0000 (Thu, 09 Nov 2017) | 3 lines
-Changed paths:
-   M /trunk/src/neg.c
-   M /trunk/tests/tset.c
+	[tests/tmul.c] improve coverage
 
-fixed bug reported by Trevor Spiteri
-(https://sympa.inria.fr/sympa/arc/mpfr/2017-11/msg00003.html)
+	[tests/tmul.c] improve coverage
 
-------------------------------------------------------------------------
-r11807 | vlefevre | 2017-11-08 17:04:45 +0000 (Wed, 08 Nov 2017) | 7 lines
-Changed paths:
-   M /trunk/NEWS
-   M /trunk/TODO
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/free_cache.c
-   M /trunk/src/mpfr-gmp.c
-   M /trunk/src/mpfr-gmp.h
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/mpfr.h
-   M /trunk/tests/talloc-cache.c
+2018-02-19  Vincent Lefèvre  <vincent at vinc17.net>
 
-Change the way memory is allocated (as discussed partly in private).
-  * src/mpfr-gmp.c, src/mpfr-gmp.h, src/mpfr-impl.h: update.
-  * src/free_cache.c, src/mpfr.h: added mpfr_mp_memory_cleanup function.
-  * NEWS: describe API change.
-  * TODO: added 2 related items (future clean-up and feature).
-  * doc/mpfr.texi: update.
-  * tests/talloc-cache.c: take API change into account.
-------------------------------------------------------------------------
-r11806 | vlefevre | 2017-11-07 15:59:03 +0000 (Tue, 07 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/random_deviate.c] Reverted incorrect change r12315: MPFR_LIMB_MAX
+	cannot be used with the preprocessor due to the cast. The test should
+	be done in "pure" C and the middle-end of the compiler should optimize.
 
-[doc/mpfr.texi] Updated Section "Compatibility With MPF".
-------------------------------------------------------------------------
-r11805 | vlefevre | 2017-11-07 15:34:11 +0000 (Tue, 07 Nov 2017) | 4 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/sub1.c] Removed an unused label.
 
-[doc/mpfr.texi] Removed a paragraph from r2962 concerning mpf2mpfr.h
-and mpf_init / mpf_init2: since r2985, the mpf_init / mpf_init2 macros
-initialize to 0 like MPF, so that users shouldn't see differences from
-MPF.
-------------------------------------------------------------------------
-r11804 | zimmerma | 2017-11-07 15:33:40 +0000 (Tue, 07 Nov 2017) | 2 lines
-Changed paths:
-   M /trunk/TODO
+	[tests/tzeta.c] Check that the NaN flag was not set in some tests
+	that do not involve NaN (useful since such tests don't really check
+	that the result is not NaN).
 
-added reference
+2018-02-19  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r11803 | vlefevre | 2017-11-07 09:21:02 +0000 (Tue, 07 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/src/mpfr.h
+	[src/sub1.c] removed dead code, now coverage should be 100%
 
-[src/mpfr.h] Formatting.
-------------------------------------------------------------------------
-r11802 | vlefevre | 2017-11-07 09:14:30 +0000 (Tue, 07 Nov 2017) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr.h
+2018-02-19  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr.h] mpfr_free_cache_t: added comments to show that these are
-flags.
-------------------------------------------------------------------------
-r11801 | vlefevre | 2017-11-07 09:09:03 +0000 (Tue, 07 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/ai.c] Avoid more integer overflows.
 
-[doc/mpfr.texi] Updated mpfr_free_cache / mpfr_free_cache2 description.
-------------------------------------------------------------------------
-r11800 | vlefevre | 2017-11-07 08:31:45 +0000 (Tue, 07 Nov 2017) | 2 lines
-Changed paths:
-   M /trunk/src/free_cache.c
+2018-02-19  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/free_cache.c] Minor portability improvement for mpfr_free_cache2
-to accept way = 0 (no effect on two's complement machines).
-------------------------------------------------------------------------
-r11799 | vlefevre | 2017-11-06 16:39:40 +0000 (Mon, 06 Nov 2017) | 8 lines
-Changed paths:
-   M /trunk/tests/talloc-cache.c
-   M /trunk/tests/tests.c
+	[src/sub1.c] removed dead code
+	[tests/tsub.c] added coverage test
 
-[tests]
-  * tests.c: for test programs that use GMP's mp_set_memory_functions,
-    tests_rand_start and tests_rand_end also need to be disabled; to do
-    that, require that tests_memory_disabled be set to 2 in this case
-    (the value 1 is already used for the use with mini-gmp, where only
-    tests_memory_start and tests_memory_end need to be disabled).
-  * talloc-cache.c: call tests_start_mpfr and tests_end_mpfr as usual,
-    with tests_memory_disabled set to 2.
-------------------------------------------------------------------------
-r11798 | vlefevre | 2017-11-06 16:01:32 +0000 (Mon, 06 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2018-02-19  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r11797 | vlefevre | 2017-11-06 14:22:11 +0000 (Mon, 06 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/ai.c] Detect some potential integer overflows.
 
-[doc/mpfr.texi] Minor change.
-------------------------------------------------------------------------
-r11796 | vlefevre | 2017-11-06 14:17:51 +0000 (Mon, 06 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2018-02-19  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/mpfr.texi] + explicit information on pools (in addition to caches).
-------------------------------------------------------------------------
-r11795 | vlefevre | 2017-11-06 12:19:43 +0000 (Mon, 06 Nov 2017) | 2 lines
-Changed paths:
-   M /trunk/NEWS
-   M /trunk/doc/mpfr.texi
+	[src/random_deviate.c] don't compile alternate code if not needed
 
-[NEWS,doc/mpfr.texi] mpfr_free_cache2 is a new function in MPFR 4.0,
-as a consequence of shared caches for multithreaded applications.
-------------------------------------------------------------------------
-r11794 | vlefevre | 2017-11-06 12:07:28 +0000 (Mon, 06 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/src/free_cache.c
+2018-02-19  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/free_cache.c] GNU coding style.
-------------------------------------------------------------------------
-r11793 | vlefevre | 2017-11-06 12:03:04 +0000 (Mon, 06 Nov 2017) | 7 lines
-Changed paths:
-   M /trunk/tests/Makefile.am
-   M /trunk/tests/talloc-cache.c
+	[src/ai.c] Coding style. Corrected comments.
 
-[tests]
-  * Makefile.am: added talloc-cache to check_PROGRAMS.
-  * talloc-cache.c: improved the test allocators so that an incorrect
-    use is detected by this code instead of relying on the C library
-    checking bad use of malloc/realloc/free (which was UB).
-    NOTE: The test currently fails in the trunk due to the mpz_t pool.
-    But anyway, the memory allocation method will change soon.
-------------------------------------------------------------------------
-r11792 | vlefevre | 2017-11-06 10:29:06 +0000 (Mon, 06 Nov 2017) | 1 line
-Changed paths:
-   M /trunk/tests/talloc-cache.c
+2018-02-19  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/talloc-cache.c] Corrected indentation.
-------------------------------------------------------------------------
-r11791 | vlefevre | 2017-10-30 12:46:57 +0000 (Mon, 30 Oct 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tests/tzeta.c] improve coverage (and also uceil_exp2.c)
 
-[doc/mpfr.texi] Improved the mpfr_nexttoward description w.r.t. flags.
-------------------------------------------------------------------------
-r11790 | zimmerma | 2017-10-27 19:12:45 +0000 (Fri, 27 Oct 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/ai.c] removed dead code, and improved coverage
+	[tests/tai.c] exercise mpfr_ai near (negative) zeroes
 
-added note about mpfr_beta
+	[src/ai.c] fixed recomputation of wprec (to be confirmed)
 
-------------------------------------------------------------------------
-r11788 | vlefevre | 2017-10-26 14:39:53 +0000 (Thu, 26 Oct 2017) | 2 lines
-Changed paths:
-   M /trunk/NEWS
-   M /trunk/doc/mpfr.texi
+	[src/ai.c] removed dead code
 
-[NEWS,doc/mpfr.texi] mpfr_beta is incomplete, experimental.
-See <https://sympa.inria.fr/sympa/arc/mpfr/2017-10/msg00007.html>.
-------------------------------------------------------------------------
-r11787 | zimmerma | 2017-10-26 09:06:02 +0000 (Thu, 26 Oct 2017) | 2 lines
-Changed paths:
-   M /trunk/TODO
+2018-02-19  Vincent Lefèvre  <vincent at vinc17.net>
 
-added functions from C++17
+	[src/sub1sp.c] Fixed indentation.
 
-------------------------------------------------------------------------
-r11784 | zimmerma | 2017-10-23 07:18:05 +0000 (Mon, 23 Oct 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/README.dev
+	Removed trailing whitespace.
 
-fixed typo
+	[src/sqrt.c] Coding style.
 
-------------------------------------------------------------------------
-r11782 | vlefevre | 2017-10-11 13:13:32 +0000 (Wed, 11 Oct 2017) | 4 lines
-Changed paths:
-   M /trunk/src/get_float128.c
-   M /trunk/tests/tset_float128.c
+	[src/expm1.c] Avoid a potential integer overflow in a type conversion
+	for 32-bit mpfr_exp_t and 64-bit long (e.g. with -D_MPFR_PREC_FORMAT=2
+	on a 64-bit Linux machine).
 
-[src/get_float128.c] Fixed failure in mpfr_get_float128 when called with
-  a very reduced exponent range.
-[tests/tset_float128.c] Also test mpfr_get_float128 in reduced exponent
-  range (triggering a failure before the fix).
-------------------------------------------------------------------------
-r11781 | vlefevre | 2017-10-10 08:09:02 +0000 (Tue, 10 Oct 2017) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	[src/div_2ui.c] Reverted incorrect change in r12272 and added comments
+	  and assertions.
+	[tests/tmul_2exp.c] Improved a test to trigger the bug in r12272 also
+	  when mpfr_exp_t > 32 bits (e.g. on 64-bit Linux machines).
 
-[doc/README.dev] "To make a release": + Check the generic code.
-------------------------------------------------------------------------
-r11779 | vlefevre | 2017-10-09 15:02:46 +0000 (Mon, 09 Oct 2017) | 3 lines
-Changed paths:
-   M /trunk/src/get_ld.c
+	[tests/tmul_2exp.c] Improved output if mpfr_exp_t > long (for positive).
 
-[src/get_ld.c] Fixed the generic code when called with a very reduced
-exponent range. The tset_ld failure could be triggered on x86 by running
-"./configure ... mpfr_cv_c_long_double_format=unknown".
-------------------------------------------------------------------------
-r11778 | vlefevre | 2017-10-09 12:17:18 +0000 (Mon, 09 Oct 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_ld.c
+	[tests/tmul_2exp.c] Improved output if mpfr_exp_t > long (for negative).
 
-[tests/tset_ld.c] Also test mpfr_get_ld in reduced exponent range
-(no failures on x86).
-------------------------------------------------------------------------
-r11777 | vlefevre | 2017-10-09 11:39:32 +0000 (Mon, 09 Oct 2017) | 6 lines
-Changed paths:
-   M /trunk/src/get_z.c
-   M /trunk/tests/tget_z.c
+	[tests] Fixed type errors with -D_MPFR_PREC_FORMAT=2 in CFLAGS and the
+	--enable-assert=full configure option (signaled by GCC's -Wformat).
 
-[src/get_z.c] Fixed failure in mpfr_get_z when called with a very
-  reduced exponent range.
-[tests/tget_z.c] Added tests in the various rounding modes (triggering
-  a failure before the above fix). Also call check_one() on an integer
-  congruent to 1 mod 4 (useful to check even rounding). Fixed 2 issues
-  in the error message (for inex and the flags).
-------------------------------------------------------------------------
-r11776 | vlefevre | 2017-10-09 09:17:50 +0000 (Mon, 09 Oct 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_z.c
+	[src/mul.c] Fixed type error with -D_MPFR_PREC_FORMAT=2 in CFLAGS and
+	the --enable-assert=full configure option (signaled by GCC's -Wformat).
 
-[tests/tget_z.c] Also test mpfr_get_z in reduced exponent range
-(no failures though its code seems incorrect).
-------------------------------------------------------------------------
-r11775 | vlefevre | 2017-10-06 15:08:25 +0000 (Fri, 06 Oct 2017) | 2 lines
-Changed paths:
-   M /trunk/src/get_si.c
-   M /trunk/src/get_sj.c
+	[doc/README.dev] Removed the mention of MPFR_EXT_EMIN and MPFR_EXT_EMAX,
+	replacing them by MPFR_EMIN_MIN and MPFR_EMAX_MAX, as done in r12298.
+	Note: These old macros had been introduced in r7863 so that one could
+	choose different values for the extended exponent range for debugging
+	purpose, but they were not used in practice and were adding complexity
+	(and potential inconsistency) for no really good reason.
 
-[src/{get_si.c,get_sj.c}] Minor improvement, removing an obsolete note
-in get_sj.c at the same time.
-------------------------------------------------------------------------
-r11774 | vlefevre | 2017-10-06 14:17:38 +0000 (Fri, 06 Oct 2017) | 3 lines
-Changed paths:
-   M /trunk/src/get_sj.c
-   M /trunk/src/get_uj.c
-   M /trunk/tests/tget_sj.c
+2018-02-18  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/{get_sj.c,get_uj.c}] Fixed failure in mpfr_get_sj and mpfr_get_uj
-  when called with a very reduced exponent range.
-[tests/tget_sj.c] Added corresponding test cases.
-------------------------------------------------------------------------
-r11773 | vlefevre | 2017-10-06 13:52:29 +0000 (Fri, 06 Oct 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tset_si.c
+	[src/agm.c] added comment about line of code impossible to cover
 
-[tests/tset_si.c] Minor correction in error message.
-------------------------------------------------------------------------
-r11772 | vlefevre | 2017-10-05 12:52:59 +0000 (Thu, 05 Oct 2017) | 1 line
-Changed paths:
-   M /trunk/TODO
+	[src/agm.c,src/div.c,src/mpfr-impl.h] replaced MPFR_EXT_EMIN by MPFR_EMIN_MIN,
+					      and MPFR_EXT_EMAX by MPFR_EMAX_MAX
 
-[TODO] Function multiversioning (FMV): more details.
-------------------------------------------------------------------------
-r11771 | vlefevre | 2017-10-05 12:47:27 +0000 (Thu, 05 Oct 2017) | 1 line
-Changed paths:
-   M /trunk/TODO
+	[src/sqrt.c] removed dead code
+	[tests/tsqrt.c] improve coverage of mpfr_sqrt, now at 100%
 
-[TODO] Mention function multiversioning (FMV).
-------------------------------------------------------------------------
-r11770 | vlefevre | 2017-10-04 15:25:26 +0000 (Wed, 04 Oct 2017) | 2 lines
-Changed paths:
-   M /trunk/src/get_si.c
-   M /trunk/src/get_ui.c
+	[tests/tsqrt.c] improve coverage
 
-[src/{get_si.c,get_ui.c}] Fixed failure in mpfr_get_si and mpfr_get_ui
-when called with a very reduced exponent range.
-------------------------------------------------------------------------
-r11769 | vlefevre | 2017-10-04 15:07:56 +0000 (Wed, 04 Oct 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_si.c
+	[tests/tsqrt.c] improve coverage
 
-[tests/tset_si.c] get_tests: added comments and tests in a reduced
-exponent range, which currently trigger an assertion failure.
-------------------------------------------------------------------------
-r11768 | vlefevre | 2017-10-02 08:53:14 +0000 (Mon, 02 Oct 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2018-02-17  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r11767 | vlefevre | 2017-10-02 08:39:52 +0000 (Mon, 02 Oct 2017) | 1 line
-Changed paths:
-   M /trunk/NEWS
+	[src/sqrt.c] removed dead code
 
-[NEWS] Mention mpfr_dump.
-------------------------------------------------------------------------
-r11766 | vlefevre | 2017-10-02 08:37:28 +0000 (Mon, 02 Oct 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tests/tsqrt.c] improve coverage
 
-[doc/mpfr.texi] Describe the current output format of mpfr_dump.
-------------------------------------------------------------------------
-r11765 | vlefevre | 2017-10-02 08:22:37 +0000 (Mon, 02 Oct 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tests/tsqrt.c] improved coverage
+	[src/sqrt.c] added comments
 
-[doc/mpfr.texi] Replaced @code by @samp for things that are not
-actually code, but parts of character strings.
-------------------------------------------------------------------------
-r11764 | vlefevre | 2017-09-29 15:58:51 +0000 (Fri, 29 Sep 2017) | 2 lines
-Changed paths:
-   M /trunk/src/dump.c
-   M /trunk/tests/toutimpl.c
+2018-02-17  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/dump.c] mpfr_dump now outputs specific info for invalid data.
-[tests/toutimpl.c] Added mpfr_dump tests.
-------------------------------------------------------------------------
-r11763 | vlefevre | 2017-09-29 13:44:52 +0000 (Fri, 29 Sep 2017) | 6 lines
-Changed paths:
-   M /trunk/src/dump.c
+	[src/expm1.c] Added a FIXME comment.
 
-[src/dump.c]
-  * Output the sign even for NaN, since this can be useful information
-    (the sign of a NaN has an effect with some functions, following
-    IEEE 754-2008).
-  * This changes allows one to get rid of the mpfr_fprint_binary
-    static function at the same time.
-------------------------------------------------------------------------
-r11762 | vlefevre | 2017-09-29 13:31:25 +0000 (Fri, 29 Sep 2017) | 1 line
-Changed paths:
-   M /trunk/src/dump.c
-   M /trunk/src/print_raw.c
+2018-02-17  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/{dump.c,print_raw.c}] Updated the description.
-------------------------------------------------------------------------
-r11761 | vlefevre | 2017-09-29 13:25:34 +0000 (Fri, 29 Sep 2017) | 20 lines
-Changed paths:
-   M /trunk/src/add1sp.c
-   M /trunk/src/dump.c
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/mul.c
-   M /trunk/src/print_raw.c
-   M /trunk/src/sub1sp.c
+	[tests/tsqrt.c] improve coverage
 
-[src] Clean up of debugging output functions:
-  * Replaced the internal function mpfr_fprint_binary by a new
-    internal function mpfr_fdump, similar to mpfr_dump, but with
-    a FILE * argument.
-  * Got rid of mpfr_print_binary entirely (it became internal in
-    r2466 for MPFR 2.0.2, released in 2003).
+	[src/sqrt.c] removed dead code
 
-Details:
-  * print_raw.c:
-      - moved the mpfr_fprint_binary code to dump.c;
-      - removed mpfr_print_binary.
-  * dump.c:
-      - mpfr_fprint_binary (from print_raw.c) is now defined as static;
-      - added function mpfr_fdump, using mpfr_fprint_binary;
-      - mpfr_dump: use mpfr_fdump instead of the old mpfr_print_binary.
-  * mpfr-impl.h:
-      - replaced mpfr_fprint_binary declaration by mpfr_fdump;
-      - removed mpfr_print_binary declaration.
-  * add1sp.c, mul.c, sub1sp.c: replaced mpfr_fprint_binary by mpfr_fdump
-    and removed the '\n', now output by mpfr_fdump.
-------------------------------------------------------------------------
-r11759 | vlefevre | 2017-09-28 11:27:54 +0000 (Thu, 28 Sep 2017) | 1 line
-Changed paths:
-   M /trunk/tests
+2018-02-17  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests] Added trootn_ui to svn:ignore property.
-------------------------------------------------------------------------
-r11758 | vlefevre | 2017-09-20 14:11:30 +0000 (Wed, 20 Sep 2017) | 3 lines
-Changed paths:
-   M /trunk/tests/toutimpl.c
+	[tests/tsub.c] Improved a comment.
 
-[tests/toutimpl.c]
-  * Check mpfr_print_mant_binary() too.
-  * GNU coding style.
-------------------------------------------------------------------------
-r11757 | vlefevre | 2017-09-20 13:57:58 +0000 (Wed, 20 Sep 2017) | 4 lines
-Changed paths:
-   M /trunk/src/print_raw.c
+	[tests/tsub.c] Check reuse of arguments for all mpfr_sub tests, when
+	possible.
 
-[src/print_raw.c] Changes in mpfr_print_mant_binary():
-  * Output a ']' when a '[' was output earlier.
-  * Correction: putchar() takes an int (or unsigned char), not a char.
-  * GNU coding style.
-------------------------------------------------------------------------
-r11756 | zimmerma | 2017-09-18 14:02:23 +0000 (Mon, 18 Sep 2017) | 2 lines
-Changed paths:
-   M /trunk/tools/mbench/timp.h
+2018-02-17  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-changed .align 64 into .p2align 6 (cf https://trac.sagemath.org/ticket/19233)
+	[src/sub1sp.c] fixed bug in mpfr_sub1sp1n (corner case when a=c)
+	[tests/tsub1sp.c] added non-regression test
 
-------------------------------------------------------------------------
-r11755 | vlefevre | 2017-09-15 11:51:18 +0000 (Fri, 15 Sep 2017) | 21 lines
-Changed paths:
-   M /trunk/tests/mpfr-test.h
-   M /trunk/tests/tacos.c
-   M /trunk/tests/tasin.c
-   M /trunk/tests/tasinh.c
-   M /trunk/tests/tatanh.c
-   M /trunk/tests/tcbrt.c
-   M /trunk/tests/tdim.c
-   M /trunk/tests/tdiv.c
-   M /trunk/tests/terf.c
-   M /trunk/tests/texp.c
-   M /trunk/tests/texp10.c
-   M /trunk/tests/texp2.c
-   M /trunk/tests/texpm1.c
-   M /trunk/tests/tgmpop.c
-   M /trunk/tests/tmul.c
-   M /trunk/tests/tset.c
-   M /trunk/tests/tset_str.c
-   M /trunk/tests/tsgn.c
-   M /trunk/tests/tui_div.c
+	[src/sub1sp.c] fixed case 2e
 
-[tests] Solve issues with the incorrect use of mpfr_sgn, and make sure
-that this cannot happen again without being detected: on zero, +1 or -1
-was sometimes expected to check the sign of zero, but mpfr_sgn actually
-returned 0, so that the check always succeeded whatever the sign of the
-null result.
-  * mpfr-test.h: define a new mpfr_sgn macro that fails when used on NaN
-    or zero (whose sign is not +1 or -1), except when MPFR_TESTS_TSGN is
-    defined.
-  * tacos.c, tasin.c, tasinh.c, tatanh.c, tcbrt.c, tdim.c, terf.c,
-    texp.c, texp10.c, texp2.c, texpm1.c, tset.c, tset_str.c: replaced
-    the incorrect use of mpfr_sgn; some other related improvements.
-    Note: in tset.c, a "mpfr_sgn (x) < 0" test had to be replaced by
-    "MPFR_IS_POS (x)" since we really want to test whether the sign
-    is positive (not negative).
-  * tdiv.c, tmul.c, tui_div.c: simplified some tests, in particular to
-    avoid a failure with the new mpfr_sgn macro for the tests; here,
-    the use of mpfr_sgn was correct, but one could do simpler.
-  * tgmpop.c: replaced "mpfr_sgn (z)" by "(mpfr_sgn) (z)" to avoid the
-    new mpfr_sgn macro (here, we really want the mathematical sign).
-  * tsgn.c: define MPFR_TESTS_TSGN as the goal of this program is to
-    test mpfr_sgn itself (both the function and the macro in mpfr.h).
-------------------------------------------------------------------------
-r11754 | vlefevre | 2017-09-15 07:45:21 +0000 (Fri, 15 Sep 2017) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+2018-02-17  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/README.dev] "To make a release": Enhanced step 5 (tarballs).
-------------------------------------------------------------------------
-r11753 | zimmerma | 2017-09-14 18:55:02 +0000 (Thu, 14 Sep 2017) | 2 lines
-Changed paths:
-   M /trunk/tools/mbench/Makefile
+	[tests/tsub.c] Updated bug20180217 to trigger the bug: one needs to
+	reuse the smallest input variable as the output variable.
 
-patch to avoid using the system mpfr.h
+	[tests/tsub.c] Added a test.
 
-------------------------------------------------------------------------
-r11752 | vlefevre | 2017-09-14 15:41:35 +0000 (Thu, 14 Sep 2017) | 4 lines
-Changed paths:
-   M /trunk/tests/tfms.c
+	[src/expm1.c] Updated a comment.
 
-[tests/tfms.c] Similar changes to what was done in tfma.c:
-  * replaced "mpfr_cmp" by "! mpfr_equal_p";
-  * code formatting (mainly reindentation);
-  * use of SAME_SIGN for better clarity.
-------------------------------------------------------------------------
-r11751 | vlefevre | 2017-09-14 15:39:24 +0000 (Thu, 14 Sep 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tfma.c
+	[src/expm1.c] Fixed an integer overflow from r12276.
 
-[tests/tfma.c] Similar change to what was done in tfms.c (may be useful
-in the future).
-------------------------------------------------------------------------
-r11750 | vlefevre | 2017-09-14 15:28:21 +0000 (Thu, 14 Sep 2017) | 4 lines
-Changed paths:
-   M /trunk/tests/tabs.c
-   M /trunk/tests/tcmp2.c
-   M /trunk/tests/tconst_euler.c
-   M /trunk/tests/tcos.c
-   M /trunk/tests/tcoth.c
-   M /trunk/tests/tdiv.c
-   M /trunk/tests/texp.c
-   M /trunk/tests/texp10.c
-   M /trunk/tests/texp2.c
-   M /trunk/tests/tfactorial.c
-   M /trunk/tests/tfma.c
-   M /trunk/tests/tfms.c
-   M /trunk/tests/tgeneric_ui.c
-   M /trunk/tests/tgmpop.c
-   M /trunk/tests/toutimpl.c
-   M /trunk/tests/tpow3.c
-   M /trunk/tests/trint.c
-   M /trunk/tests/tsec.c
-   M /trunk/tests/tsech.c
-   M /trunk/tests/tset_d.c
-   M /trunk/tests/tset_q.c
-   M /trunk/tests/tset_si.c
-   M /trunk/tests/tsin_cos.c
-   M /trunk/tests/tsqrt.c
-   M /trunk/tests/tsub.c
-   M /trunk/tests/tsub_ui.c
-   M /trunk/tests/ttan.c
-   M /trunk/tests/tui_pow.c
-   M /trunk/tests/tzeta.c
+	[src/expm1.c] Added a log message.
 
-[tests] Got rid of the use of mpfr_print_binary, in general with
-mpfr_dump. Replaced some "mpfr_out_str (stdout, 2, ...)" by mpfr_dump
-for consistency or as improvements. Some other corrections in the
-related error messages.
-------------------------------------------------------------------------
-r11749 | zimmerma | 2017-09-14 14:03:59 +0000 (Thu, 14 Sep 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/README.dev
+2018-02-16  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-added info about autoconf-archive
+	[tests/tfmma.c] added coverage test
 
-------------------------------------------------------------------------
-r11748 | vlefevre | 2017-09-14 09:23:39 +0000 (Thu, 14 Sep 2017) | 1 line
-Changed paths:
-   M /trunk/NEWS
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/mpfr.h
+	[tests/tfmma.c] improve coverage of add.c (ubf case)
 
-Old, deprecated macros mpfr_add_one_ulp and mpfr_sub_one_ulp removed.
-------------------------------------------------------------------------
-r11747 | vlefevre | 2017-09-13 15:06:51 +0000 (Wed, 13 Sep 2017) | 3 lines
-Changed paths:
-   M /trunk/tools/mpfrlint
+2018-02-16  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tools/mpfrlint] Do the tests_start_mpfr / tests_end_mpfr check only if
-the .c file has a main() function; this avoids an error on trootn_ui.c,
-which just does a #include.
-------------------------------------------------------------------------
-r11746 | vlefevre | 2017-09-13 14:46:00 +0000 (Wed, 13 Sep 2017) | 4 lines
-Changed paths:
-   M /trunk/tests/troot.c
+	[src/expm1.c] It seems that code removed in r12273 wasn't necessarily
+	dead code with mpfr_exp_t > long (-D_MPFR_EXP_FORMAT=4 needed) because
+	for MPFR_SMALL_INPUT_AFTER_SAVE_EXPO, err would be limited to -LONG_MAX
+	and precisions larger than LONG_MAX could be problems. The -LONG_MAX
+	bound from r4127 was arbitrary and only used to simplify the code due
+	to the fact that mpfr_cmp_si compares to a "long" argument. But now we
+	have the internal mpfr_get_exp_t function, allowing us to avoid this
+	arbitrary bound (fixing the code and making it more efficient for these
+	extreme cases) and simplify the code even more.
 
-[tests/troot.c]
-  * Use mpfr_set_zero instead of mpfr_set_ui / mpfr_neg (like what was
-    done for the infinity, using mpfr_set_inf).
-  * For exact cases (NaN, ±Inf, ±0), check that the ternary value is 0.
-------------------------------------------------------------------------
-r11745 | vlefevre | 2017-09-13 14:36:25 +0000 (Wed, 13 Sep 2017) | 3 lines
-Changed paths:
-   M /trunk/tests/troot.c
+2018-02-16  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/troot.c] For the root(±0,k) tests, before calling the function,
-we set the target y to NaN with the wrong sign, so that if the code of
-the function forgets to do something, this will be detected.
-------------------------------------------------------------------------
-r11744 | vlefevre | 2017-09-13 14:17:46 +0000 (Wed, 13 Sep 2017) | 1 line
-Changed paths:
-   M /trunk/tests/troot.c
+	[mbench] added new option to usage
 
-[tests/troot.c] Also check root(+0,42) and root(-0,17) for completeness.
-------------------------------------------------------------------------
-r11743 | vlefevre | 2017-09-13 14:11:35 +0000 (Wed, 13 Sep 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/troot.c
+	[mbench] added option -d to fix the exponent difference between operands
+		 (useful for mpfr_add and mpfr_sub, for example use -d0 for operands
+		 with same exponent, -d1 for operands differing by 1, ...)
 
-[tests/troot.c] Really check the sign of the result 0 (the old test
-was always false, thus useless!).
-------------------------------------------------------------------------
-r11742 | vlefevre | 2017-09-13 14:00:15 +0000 (Wed, 13 Sep 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/expm1.c] improve coverage (by removing dead code)
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r11741 | vlefevre | 2017-09-13 13:59:20 +0000 (Wed, 13 Sep 2017) | 11 lines
-Changed paths:
-   M /trunk/NEWS
-   M /trunk/TODO
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/mpfr.h
-   M /trunk/src/root.c
-   M /trunk/tests/Makefile.am
-   M /trunk/tests/troot.c
-   A /trunk/tests/trootn_ui.c
+2018-02-16  Vincent Lefèvre  <vincent at vinc17.net>
 
-New mpfr_rootn_ui function; mpfr_root deprecated.
-  * src/root.c: mpfr_rootn_ui is now the main code, and mpfr_root calls
-    mpfr_rootn_ui.
-  * src/mpfr.h: added mpfr_rootn_ui prototype; marked mpfr_root as
-    deprecated.
-  * Added tests/trootn_ui.c (includes troot.c).
-  * tests/troot.c: made it usable (via #include) by the new trootn_ui.c
-    test.
-  * tests/Makefile.am: added trootn_ui; at the same time, corrected the
-    order of the test programs (lexicographic, with exceptions).
-  * NEWS, TODO, doc/mpfr.texi: update.
-------------------------------------------------------------------------
-r11740 | vlefevre | 2017-09-13 13:28:05 +0000 (Wed, 13 Sep 2017) | 1 line
-Changed paths:
-   M /trunk/doc/add-with-carry.c
-   M /trunk/tests/talloc-cache.c
+	[src/div_2ui.c] No need for mpfr_uexp_t, due to the constraints on
+	the valid exponents.
 
-Removed the text/x-csrc svn:mime-type property present on 2 files.
-------------------------------------------------------------------------
-r11739 | vlefevre | 2017-09-13 13:22:33 +0000 (Wed, 13 Sep 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/mpfr-test.h
-   M /trunk/tests/tgeneric.c
-   M /trunk/tests/tversion.c
+	[doc/README.dev] Update about mpfr_exp_t.
 
-[tests] Avoid duplicate code by defining the MAKE_STR() macro in
-mpfr-test.h only instead of tgeneric.c and tversion.c.
-------------------------------------------------------------------------
-r11734 | vlefevre | 2017-09-08 10:26:37 +0000 (Fri, 08 Sep 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/README.dev
+	[src/mul_2ui.c] Simplified mpfr_mul_2ui (like mpfr_div_2ui).
 
-[doc/README.dev] "To make a release": Updated the warning, as the issue
-concerns the .ps file only (the .dvi file has no papersize info).
-------------------------------------------------------------------------
-r11733 | vlefevre | 2017-09-08 10:07:03 +0000 (Fri, 08 Sep 2017) | 3 lines
-Changed paths:
-   M /trunk/doc/README.dev
+	[src/div_2ui.c] Simplified justification.
 
-[doc/README.dev] "To make a release": Added a warning to check the
-papersize of the generated dvi and ps files, which may be incorrect
-(bug in texinfo(?) reported as Debian bug 874632).
-------------------------------------------------------------------------
-r11729 | vlefevre | 2017-09-08 08:34:24 +0000 (Fri, 08 Sep 2017) | 1 line
-Changed paths:
-   M /trunk/NEWS
-   M /trunk/configure.ac
-   M /trunk/tests/tstrtofr.c
+	[src/div_2ui.c] Simplified code as suggested by PZ; added justification.
 
-Switched other gmplib.org URL's to https.
-------------------------------------------------------------------------
-r11728 | vlefevre | 2017-09-08 08:31:36 +0000 (Fri, 08 Sep 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2018-02-16  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/mpfr.texi] Updated URL:
-  http://gmplib.orghttps://gmplib.org/
-------------------------------------------------------------------------
-r11727 | vlefevre | 2017-09-08 08:29:52 +0000 (Fri, 08 Sep 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	GNU style: https://www.gnu.org/prep/standards/standards.html#Formatting
 
-[doc/mpfr.texi] Updated URL:
-  ftp://ftp.gnu.org/gnu/mpfr/https://ftp.gnu.org/gnu/mpfr/
-------------------------------------------------------------------------
-r11726 | vlefevre | 2017-09-08 08:25:49 +0000 (Fri, 08 Sep 2017) | 1 line
-Changed paths:
-   M /trunk/tools/announce-text
+	[src/div_2ui.c] added comment
+	[tests/tmul_2exp.c] added coverage test
 
-[tools/announce-text] Switched to https for ftp.gnu.org.
-------------------------------------------------------------------------
-r11724 | vlefevre | 2017-09-07 14:20:45 +0000 (Thu, 07 Sep 2017) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+2018-02-16  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/README.dev] "To make a release": update about the uploads.
-------------------------------------------------------------------------
-r11715 | vlefevre | 2017-09-06 15:30:04 +0000 (Wed, 06 Sep 2017) | 1 line
-Changed paths:
-   M /trunk/NEWS
+	[src/div_2ui.c] Replaced FIXME by an explanation.
 
-[NEWS] Completed item on thread-safe DLL (shared library) support.
-------------------------------------------------------------------------
-r11714 | vlefevre | 2017-09-06 13:49:07 +0000 (Wed, 06 Sep 2017) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+2018-02-16  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/mpfr-impl.h] Completed the fix in r11713.
-------------------------------------------------------------------------
-r11713 | vlefevre | 2017-09-06 13:47:45 +0000 (Wed, 06 Sep 2017) | 4 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[src/div_2ui.c] added FIXME
 
-[src/mpfr-impl.h] Fixed thread-safe DLL support with ICC and MSVC
-on MS Windows without the GMP build directory (r11712 contained
-inconsistent function names, yielding "unresolved external symbol"
-errors in tabort_defalloc1.obj), second try.
-------------------------------------------------------------------------
-r11712 | vlefevre | 2017-09-06 11:48:21 +0000 (Wed, 06 Sep 2017) | 7 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.c
-   M /trunk/src/mpfr-gmp.h
-   M /trunk/src/mpfr-impl.h
+	[src/cmp_ld.c] simplified code (and avoid useless test when long double is not
+		       double-double)
 
-[src] Attempt to fix thread-safe DLL support with ICC and MSVC on
-MS Windows without the GMP build directory. See:
-  https://sympa.inria.fr/sympa/arc/mpfr/2017-09/msg00009.html
-  https://sympa.inria.fr/sympa/arc/mpfr/2017-09/msg00014.html
-i.e. for the mpfr_allocate_func, mpfr_reallocate_func & mpfr_free_func
-external TLS variables, one does the same thing as what had been done
-for the other ones (__gmpfr_flags, __gmpfr_emin, __gmpfr_emax, etc.).
-------------------------------------------------------------------------
-r11711 | vlefevre | 2017-09-06 11:11:13 +0000 (Wed, 06 Sep 2017) | 1 line
-Changed paths:
-   M /trunk/tests
+	[tests/tsub1sp.c] improve coverage
 
-[tests] Added tget_q to svn:ignore property.
-------------------------------------------------------------------------
-r11706 | vlefevre | 2017-09-05 12:48:04 +0000 (Tue, 05 Sep 2017) | 3 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[tests/tadd1sp.c] improve coverage of add1sp
 
-[tests/tsprintf.c] With MPFR_CHECK_LIBC_PRINTF, disable the test of
-the "'" flag with a non-glibc C library (SUS extension in printf).
-In particular, it is not supported by AIX 7.2.
-------------------------------------------------------------------------
-r11705 | vlefevre | 2017-09-05 12:37:19 +0000 (Tue, 05 Sep 2017) | 4 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[src/sub1sp.c] fixed bug20180216
 
-[src/mpfr-impl.h] In case decimal_point and/or thousands_sep are
-non-single-byte characters (as found on FreeBSD 11 in fr_FR.UTF-8),
-revert to the default value. Added a FIXME to support multibyte
-decimal_point and thousands_sep.
-------------------------------------------------------------------------
-r11704 | vlefevre | 2017-09-05 11:46:44 +0000 (Tue, 05 Sep 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[tests/tadd1sp.c] added coverage test
 
-[tests/tsprintf.c] Formatting.
-------------------------------------------------------------------------
-r11702 | vlefevre | 2017-09-05 10:33:34 +0000 (Tue, 05 Sep 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/README.dev
+2018-02-16  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/README.dev] Added a paragraph about temporary result files created
-by test programs.
-------------------------------------------------------------------------
-r11701 | vlefevre | 2017-09-05 10:19:58 +0000 (Tue, 05 Sep 2017) | 1 line
-Changed paths:
-   M /trunk/tests/Makefile.am
+	[tests/tsub.c] More tests in bug20180216.
 
-[tests/Makefile.am] Added tfpif_rw.dat to CLEANFILES.
-------------------------------------------------------------------------
-r11700 | vlefevre | 2017-09-05 10:17:34 +0000 (Tue, 05 Sep 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/Makefile.am
-   D /trunk/tests/mpfrtest.dat
-   D /trunk/tests/mpfrtest2.dat
-   M /trunk/tests/tfpif.c
-   A /trunk/tests/tfpif_r1.dat (from /trunk/tests/mpfrtest.dat:11699)
-   A /trunk/tests/tfpif_r2.dat (from /trunk/tests/mpfrtest2.dat:11699)
+	[tests/tsub.c] Added bug20180216 test currently failing (corresponding
+	to the failure mentioned in r12253, r12254 and r12255, but reproducible
+	with a simple "./configure").
 
-[tests] Renamed mpfrtest.txt, mpfrtest.dat and mpfrtest2.dat to
-tfpif_rw.dat, tfpif_r1.dat and tfpif_r2.dat respectively.
-------------------------------------------------------------------------
-r11699 | vlefevre | 2017-09-05 09:32:11 +0000 (Tue, 05 Sep 2017) | 8 lines
-Changed paths:
-   M /trunk/tests/Makefile.am
-   M /trunk/tests/toutimpl.c
+	[src/exp_2.c] Note that the internal behavior depends on whether
+	MPFR_LONG_WITHIN_LIMB is defined or not (see also r12253). This
+	should not matter, possibly except in case of bug, like currently.
 
-[tests]
-  * toutimpl.c: Changed the filename of the result file like what
-    has been done in other test programs, to make sure that it will
-    not be reused by mistake. Removed comments about tmpname (which
-    does not exist).
-  * Makefile.am: Added this filename to CLEANFILES (even though the
-    file is removed by the test program, an error could occur before
-    its actual removal).
-------------------------------------------------------------------------
-r11698 | vlefevre | 2017-09-05 09:13:13 +0000 (Tue, 05 Sep 2017) | 10 lines
-Changed paths:
-   M /trunk/tests/Makefile.am
-   M /trunk/tests/tfprintf.c
-   M /trunk/tests/tout_str.c
-   M /trunk/tests/tprintf.c
+	[acinclude.m4] Updated FIXME for MPFR_CHECK_MP_LIMB_T_VS_LONG.
 
-[tests]
-  * tfprintf.c, tout_str.c, tprintf.c: Do not use the same filename
-    for result files created in these test programs, as this breaks
-    parallel tests (note that such files are used only if /dev/null
-    does not work, so that Unix-like systems were not affected).
-    This should fix the bug reported in
-      https://sympa.inria.fr/sympa/arc/mpfr/2017-09/msg00000.html
-    as said in
-      https://sympa.inria.fr/sympa/arc/mpfr/2017-09/msg00005.html
-  * Makefile.am: added a CLEANFILES line with these files.
-------------------------------------------------------------------------
-r11695 | vlefevre | 2017-09-01 15:24:42 +0000 (Fri, 01 Sep 2017) | 2 lines
-Changed paths:
-   M /trunk
-   M /trunk/tests/turandom.c
+	[acinclude.m4] Added a FIXME for MPFR_CHECK_MP_LIMB_T_VS_LONG.
 
-[tests/turandom.c] Added test_underflow().
-(merged changesets r11691-11694 from the 3.1 branch)
-------------------------------------------------------------------------
-r11690 | zimmerma | 2017-08-29 12:26:42 +0000 (Tue, 29 Aug 2017) | 2 lines
-Changed paths:
-   M /trunk/tools/cfarm.sh
+	[src/sub1sp.c] Squeezed useless double-space.
 
-update
+2018-02-15  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r11688 | zimmerma | 2017-08-29 12:00:05 +0000 (Tue, 29 Aug 2017) | 2 lines
-Changed paths:
-   M /trunk/tools/cfarm.sh
+	[src/sub1sp.c] fixed bug20180215()
 
-updated for mpfr-3.1.6-rc1
+2018-02-15  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11679 | vlefevre | 2017-08-28 10:29:23 +0000 (Mon, 28 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[tests/tsub.c] Updated comment for bug20180215.
 
-[tools/mpfrlint] Run tools/ck-version-info.
-------------------------------------------------------------------------
-r11678 | vlefevre | 2017-08-28 10:27:04 +0000 (Mon, 28 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[src/sub1sp.c] Use "else" for symmetry with above code.
 
-[tools/mpfrlint] Updated a message due to the change in r11673.
-------------------------------------------------------------------------
-r11677 | vlefevre | 2017-08-28 10:22:44 +0000 (Mon, 28 Aug 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/README.dev
+	[tests/tsub.c] Added a comment for bug20180215 (bug in the case
+	2 <= d < p in generic code mpfr_sub1sp() introduced in r12242).
 
-[doc/README.dev] "To make a release": The DLL version may need to be
-updated too.
-------------------------------------------------------------------------
-r11676 | vlefevre | 2017-08-28 10:18:44 +0000 (Mon, 28 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/configure.ac
+	[tests/tsub.c] Added bug20180215 test currently failing, found from a
+	failure using -DMPFR_GENERIC_ABI in CFLAGS and the --enable-assert=full
+	configure option; but the test had to be extended so that it also fails
+	with a simple "configure", i.e. without -DMPFR_GENERIC_ABI in CFLAGS
+	and without the --enable-assert=full configure option.
 
-[configure.ac] Added a comment about the DLL version.
-------------------------------------------------------------------------
-r11675 | vlefevre | 2017-08-28 10:12:35 +0000 (Mon, 28 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/configure.ac
+	Removed trailing whitespace.
 
-[configure.ac] Updated DLL version to 6 (cur - age).
-------------------------------------------------------------------------
-r11674 | vlefevre | 2017-08-28 10:04:47 +0000 (Mon, 28 Aug 2017) | 2 lines
-Changed paths:
-   M /trunk/tools/ck-copyright-notice
-   M /trunk/tools/ck-inits-clears
+2018-02-14  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tools/{ck-copyright-notice,ck-inits-clears}] Ignore Emacs lock files
-(symbolic links) to avoid a failure when a file is being edited.
-------------------------------------------------------------------------
-r11673 | vlefevre | 2017-08-28 09:53:35 +0000 (Mon, 28 Aug 2017) | 5 lines
-Changed paths:
-   D /trunk/tools/check_inits_clears
-   A /trunk/tools/ck-inits-clears (from /trunk/tools/check_inits_clears:11672)
-   M /trunk/tools/mpfrlint
+	[src/sub1sp.c] review of case 2 <= d < p in generic code mpfr_sub1sp()
 
-[tools] Clean up.
-  * Renamed check_inits_clears to ck-inits-clears (the other "check"
-    scripts have a name starting with "ck-").
-  * mpfrlint: updated the invocation of this test, simplifying it to
-    make it similar to the other ones (it was based on old code).
-------------------------------------------------------------------------
-r11669 | vlefevre | 2017-08-27 22:06:31 +0000 (Sun, 27 Aug 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/turandom.c
+	[src/div_ui.c] GNU style
+	[src/sub1sp.c] reviewed the code for d>=p in mpfr_sub1sp()
 
-[tests/turandom.c] Disabled the reprod_abi test with GMP < 4.2.0
-since the hardcoded values would be different.
-------------------------------------------------------------------------
-r11664 | vlefevre | 2017-08-25 14:11:40 +0000 (Fri, 25 Aug 2017) | 6 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+2018-02-14  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr-impl.h] Replaced
-  (MPFR_LIKELY(expr)) || (ASSERT_FAIL(expr),0)
-by
-  (MPFR_LIKELY(expr)) || (ASSERT_FAIL(expr),MPFR_ASSUME(expr),0)
-as a workaround to the fact that mpfr_assert_fail is not marked as
-"no return" (bug 21415). Thus, after this code, expr must be true.
-------------------------------------------------------------------------
-r11663 | vlefevre | 2017-08-25 12:23:31 +0000 (Fri, 25 Aug 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/turandom.c
+	[tools/mpfrlint] Much improved the check of the use of GMP internals.
 
-[tests/turandom.c] Check that the behavior does not depend on the
-platform ABI or MPFR version.
-------------------------------------------------------------------------
-r11662 | vlefevre | 2017-08-25 12:19:08 +0000 (Fri, 25 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/tests/turandom.c
+2018-02-14  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/turandom.c] Corrected error messages after r11661.
-------------------------------------------------------------------------
-r11661 | vlefevre | 2017-08-25 11:42:36 +0000 (Fri, 25 Aug 2017) | 3 lines
-Changed paths:
-   M /trunk/tests/turandom.c
+	[src/sub1sp.c] fixed a FIXME
 
-[tests/turandom.c] Renamed "reprod" to "reprod_rnd_exp" (reproducibility
-test with several rounding modes and exponent ranges), because a second
-reproducibility test will be added.
-------------------------------------------------------------------------
-r11660 | vlefevre | 2017-08-25 10:41:21 +0000 (Fri, 25 Aug 2017) | 7 lines
-Changed paths:
-   M /trunk/tests/turandom.c
+	[src/mpfr-gmp.h] define prototype of __gmpn_rsblsh1_n
+	[src/sub1sp.c] changed names of variables to something more readable
 
-[tests/turandom.c]
-  * In underflow_tests, test the flags in all cases (not just when the
-    returned result is 0), possibly by first computing the result in a
-    large exponent range.
-  * Since the flags are now well tested in underflow_tests, no longer
-    test them in the second test of test_urandom for k = 0, which was
-    the incorrect test that was failing (see r11659).
-------------------------------------------------------------------------
-r11659 | vlefevre | 2017-08-25 08:00:19 +0000 (Fri, 25 Aug 2017) | 6 lines
-Changed paths:
-   M /trunk/tests/turandom.c
+	[configure.ac] detect mpn_rsblsh1_n instead of mpn_rsblsh_n
+	[src/sub1sp.c] use mpn_rsblsh1_n instead of mpn_rsblsh_n with k=1
 
-[tests/turandom.c] Do some test several times in order to trigger
-a "mpfr_urandom() returns incorrect flags for emin = 1" failure
-when GMP_CHECK_RANDOMIZE is not set (default).
-Note: It is this test that is actually wrong (it corresponds to the
-old behavior, currently found in the 3.1 branch, and was not updated
-after the mpfr_urandom code was fixed).
-------------------------------------------------------------------------
-r11658 | vlefevre | 2017-08-25 07:56:42 +0000 (Fri, 25 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/tests/turandom.c
+2018-02-14  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/turandom.c] Code formatting. Added an assertion.
-------------------------------------------------------------------------
-r11657 | vlefevre | 2017-08-24 14:34:33 +0000 (Thu, 24 Aug 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/turandom.c
+	[src/sub1sp.c] Added 2 FIXME's.
 
-[tests/turandom.c] Check that the behavior of mpfr_urandom() does not
-depend on the rounding mode.
-------------------------------------------------------------------------
-r11656 | vlefevre | 2017-08-24 07:38:38 +0000 (Thu, 24 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/sub1sp.c] In mpfr_sub1sp, initialize k only once. This slightly
+	simplifies the code and avoids a -Wmaybe-uninitialized warning from
+	GCC. The only failure on a 64-bit Linux machine is tsub1sp, due to
+	an assertion failure in mpfr_sub1sp, as before this change.
 
-[doc/mpfr.texi] Completed the description of mpfr_urandom.
-------------------------------------------------------------------------
-r11655 | vlefevre | 2017-08-24 07:32:30 +0000 (Thu, 24 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/src/urandom.c
+	[src/sub1sp.c] Avoid the swapping of the exponents when they are equal.
 
-[src/urandom.c] Completed comment.
-------------------------------------------------------------------------
-r11654 | vlefevre | 2017-08-23 14:30:59 +0000 (Wed, 23 Aug 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/turandom.c
+2018-02-13  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/turandom.c] In bug20170123, use a local gmp_randstate_t variable
-instead of mpfr_rands, due to the gmp_randseed_ui (see r11653).
-------------------------------------------------------------------------
-r11653 | vlefevre | 2017-08-23 14:26:42 +0000 (Wed, 23 Aug 2017) | 4 lines
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[src/sub1sp.c] review of case d=1 in generic code
 
-[tools/mpfrlint] Detect the use of gmp_randseed* functions on mpfr_rands
-(this is bad practice: this would affect later tests, defeating the
-purpose of GMP_CHECK_RANDOMIZE; another gmp_randstate_t variable should
-be used instead of mpfr_rands).
-------------------------------------------------------------------------
-r11652 | vlefevre | 2017-08-23 14:09:13 +0000 (Wed, 23 Aug 2017) | 3 lines
-Changed paths:
-   M /trunk/tests/mpfr-test.h
-   M /trunk/tests/tests.c
+	[src/add1sp.c] no need of MPFR_TMP_MARK any more
 
-[tests/{mpfr-test.h,tests.c}] Got rid of __gmp_randstate_struct, which
-is internal to GMP: its use came from very old code (r2330 in 2003-06)
-and it is no longer needed.
-------------------------------------------------------------------------
-r11651 | vlefevre | 2017-08-23 13:40:39 +0000 (Wed, 23 Aug 2017) | 3 lines
-Changed paths:
-   M /trunk/tests/turandom.c
+	[src/sub1sp.c] end of review of case d=0 in generic code
 
-[tests/turandom.c] Disabled a test with GMP < 4.2.0 since it depends on
-a specific behavior of the random generator, which changed in GMP 4.2.0
-(the test would probably fail with such old GMP versions).
-------------------------------------------------------------------------
-r11650 | vlefevre | 2017-08-23 10:08:57 +0000 (Wed, 23 Aug 2017) | 8 lines
-Changed paths:
-   M /trunk/NEWS
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/urandom.c
+	[src/sub1sp.c] work in progress
 
-[src/urandom.c] Partly rewrote mpfr_urandom() so that the next
-  random state no longer depends on the current exponent range
-  and the rounding mode, and that the exceptions due to the
-  rounding of the random number are now correctly generated.
-[doc/mpfr.texi] Updated the mpfr_urandom() documentation and
-  updated Section "API Compatibility / Changed Functions" to
-  mention the change in MPFR 4.0.
-[NEWS] Mentioned the change for MPFR 4.0.
-------------------------------------------------------------------------
-r11647 | vlefevre | 2017-08-22 09:24:45 +0000 (Tue, 22 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/src/urandom.c
+2018-02-13  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/urandom.c] Minor change about underflow, following the usage.
-------------------------------------------------------------------------
-r11646 | vlefevre | 2017-08-22 09:08:38 +0000 (Tue, 22 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/tests/turandom.c
+	[src/add1sp.c] Moved a MPFR_ASSERTD to the right place.
 
-[tests/turandom.c] Added inex test for the underflow & overflow tests.
-------------------------------------------------------------------------
-r11645 | vlefevre | 2017-08-22 08:00:54 +0000 (Tue, 22 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/tests/turandom.c
+2018-02-13  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/turandom.c] Added overflow tests.
-------------------------------------------------------------------------
-r11644 | vlefevre | 2017-08-22 07:46:21 +0000 (Tue, 22 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/tests/turandom.c
+	[src/sub1sp.c] re-enable __gmpn_rsblsh_n (with WANT_GMP_INTERNALS)
 
-[tests/turandom.c] Indentation.
-------------------------------------------------------------------------
-r11643 | vlefevre | 2017-08-22 07:44:38 +0000 (Tue, 22 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/tests/turandom.c
+	[src/sub1sp.c] small improvement
 
-[tests/turandom.c] Added underflow tests.
-------------------------------------------------------------------------
-r11642 | vlefevre | 2017-08-22 07:11:23 +0000 (Tue, 22 Aug 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/turandom.c
+	[tools/cfarm.sh] updated for 4.0.1-rc2
 
-[tests/turandom.c] With mini-gmp, omit another test that assumes
-a deterministic random generator.
-------------------------------------------------------------------------
-r11641 | vlefevre | 2017-08-22 06:57:27 +0000 (Tue, 22 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/src/urandom.c
+	[src/add1sp.c] mp_ptr -> mp_limb_t*
 
-[src/urandom.c] Bug fix: the inexact flag was not set on underflow.
-------------------------------------------------------------------------
-r11640 | vlefevre | 2017-08-22 06:55:11 +0000 (Tue, 22 Aug 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/turandom.c
+	[src/add1sp.c] get rid of MPN_COPY/MPN_ZERO in generic code
 
-[tests/turandom.c] Added tests of the flags. This currently yields
-a failure (inexact flag not set on underflow).
-------------------------------------------------------------------------
-r11639 | vlefevre | 2017-08-22 06:40:13 +0000 (Tue, 22 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/tests/turandom.c
+2018-02-13  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/turandom.c] Added a test of the underflow flag.
-------------------------------------------------------------------------
-r11638 | vlefevre | 2017-08-21 15:12:51 +0000 (Mon, 21 Aug 2017) | 10 lines
-Changed paths:
-   M /trunk/src/urandom.c
+	[src/add1sp.c] Improved comments and other minor changes.
 
-[src/urandom.c] Set the underflow flag if the drawn exponent is less
-than emin. This corresponds to "underflow before rounding" while the
-normal rule in MPFR is "underflow after rounding". Thus this needs to
-be fixed.
-Note: This simple change has been done so that it can be merged with
-the 3.1 branch. But this will not be fixable in the 3.1 branch since
-the significand is not drawn in this case, and drawing the significand
-to determine whether there is an underflow would change the state of
-the PRNG at the end of the function, breaking the ABI and the users'
-expectations.
-------------------------------------------------------------------------
-r11637 | vlefevre | 2017-08-21 14:17:20 +0000 (Mon, 21 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/src/urandom.c
+	[src/add1sp.c] In the generic code of mpfr_add1sp, fixed the computation
+	of the round and sticky bits from r12220. At the same time, improved the
+	handling of MPFR_RNDF in this part of the code:
+	  * The "while" loop to compute the sticky bit is no longer done in this
+	    case (the sticky bit does not matter).
+	  * The "goto" is avoided.
 
-[src/urandom.c] Updated comments about overflow and its flag.
-------------------------------------------------------------------------
-r11636 | vlefevre | 2017-08-21 14:12:20 +0000 (Mon, 21 Aug 2017) | 5 lines
-Changed paths:
-   M /trunk/src/urandom.c
+	[tests/tadd.c] Added 2 tests that fail starting with r12220.
 
-[src/urandom.c] Simplified the code, but, except for precision 1,
-without changing the state of the PRNG.
-Note: The code could be simplified even further, but the goal of the
-current change is to allow it to be merged with the 3.1 branch (where
-precision 1 is not supported) without too many conflicts.
-------------------------------------------------------------------------
-r11635 | vlefevre | 2017-08-21 13:54:51 +0000 (Mon, 21 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/src/urandom.c
+2018-02-12  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/urandom.c] Moved some code without consequences. Updated comments.
-------------------------------------------------------------------------
-r11634 | vlefevre | 2017-08-21 13:08:47 +0000 (Mon, 21 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/src/urandom.c
+	[src/add1sp.c] cleanup generic code mpfr_add1sp()
 
-[src/urandom.c] Useless parentheses; reformatting.
-------------------------------------------------------------------------
-r11629 | vlefevre | 2017-08-17 11:17:51 +0000 (Thu, 17 Aug 2017) | 6 lines
-Changed paths:
-   M /trunk/src/set_float128.c
+2018-02-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/set_float128.c] No longer depend on the native FP type "double"
-(via mpfr_set_d), avoiding the usual precision issues with the x87
-traditional FPU in particular. Use the internal representation with
-limbs, instead. The code is simpler and should also be faster.
-Note: together with r11627, this avoids the tset_float128 failure
-with the "-m32 -mpc32" GCC options.
-------------------------------------------------------------------------
-r11628 | vlefevre | 2017-08-17 08:49:11 +0000 (Thu, 17 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/src/get_float128.c
+	[src/fma.c] Added a FIXME comment about overflow/underflow issues in
+	  corner cases (already caught with MPFR_ASSERTN), fixable with UBF
+	  like in mpfr_fmma.
+	[src/hypot.c] Updated a comment: The problem that would come from an
+	  underflow in y^2, in particular because x was scaled in order to
+	  avoid an overflow in x^2, has been avoided by using a FMA (though
+	  still buggy for these cases, as mentioned just above).
 
-[src/get_float128.c] Removed variable z (no longer useful).
-------------------------------------------------------------------------
-r11627 | vlefevre | 2017-08-17 08:34:45 +0000 (Thu, 17 Aug 2017) | 4 lines
-Changed paths:
-   M /trunk/src/get_float128.c
+2018-02-08  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/get_float128.c] No longer depend on the native FP type "double"
-(via mpfr_get_d), avoiding the usual precision issues with the x87
-traditional FPU in particular. Use the internal representation with
-limbs, instead. The code is simpler and should also be faster.
-------------------------------------------------------------------------
-r11626 | vlefevre | 2017-08-14 18:19:46 +0000 (Mon, 14 Aug 2017) | 2 lines
-Changed paths:
-   M /trunk/src/get_float128.c
+	[tests] Added/updated comments about the config.h inclusion.
 
-[src/get_float128.c] Fixed the remaining cases of mpfr_get_float128
-(when the value is below the smallest subnormal in absolute value).
-------------------------------------------------------------------------
-r11625 | vlefevre | 2017-08-14 17:31:33 +0000 (Mon, 14 Aug 2017) | 3 lines
-Changed paths:
-   M /trunk/src/get_float128.c
-   M /trunk/tests/tset_float128.c
+	[tests/{tset_float128.c,tset_ld.c}] Removed obsolete WITH_FPU_CONTROL
+	related code (this should have been done in r12185).
 
-[src/get_float128.c] Partly fixed mpfr_get_float128 when it underflows.
-[tests/tset_float128.c] Added tests for small values, in particular
-  involving underflows (and subnormals).
-------------------------------------------------------------------------
-r11624 | vlefevre | 2017-08-13 00:35:17 +0000 (Sun, 13 Aug 2017) | 2 lines
-Changed paths:
-   M /trunk/src/get_float128.c
+2018-02-07  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/get_float128.c] Reverted r11623 (a note mainly for the 3.1 branch,
-which actually doesn't support __float128).
-------------------------------------------------------------------------
-r11623 | vlefevre | 2017-08-12 15:54:07 +0000 (Sat, 12 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/src/get_float128.c
+	[INSTALL] Updated GMP URL.
 
-[src/get_float128.c] Updated the FIXME.
-------------------------------------------------------------------------
-r11622 | vlefevre | 2017-08-08 14:46:54 +0000 (Tue, 08 Aug 2017) | 2 lines
-Changed paths:
-   M /trunk/src/get_float128.c
+	[doc/mpfr.texi] Updated the month.
 
-[src/get_float128.c] Added a FIXME after a bug report by Rob:
-https://sympa.inria.fr/sympa/arc/mpfr/2017-08/msg00003.html
-------------------------------------------------------------------------
-r11621 | vlefevre | 2017-08-03 16:12:26 +0000 (Thu, 03 Aug 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[doc/mpfr.texi] Corrected minimal GMP version.
+	[tools/mpfrlint] Updated test to detect minimal GMP version mismatch.
 
-[doc/mpfr.texi] Section "Getting the Best Efficiency Out of MPFR" moved
-from "Installing MPFR" to "MPFR Basics". Added corresponding node.
-------------------------------------------------------------------------
-r11620 | zimmerma | 2017-08-03 14:21:38 +0000 (Thu, 03 Aug 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[INSTALL] Corrected minimal GMP version (thanks to David Edelsohn).
+	[tools/mpfrlint] Added a test to detect minimal GMP version mismatch.
 
-new section "How to get the best out of MPFR"
+	[tools/announce-text] For releases, check the VERSION file of the tag.
 
-------------------------------------------------------------------------
-r11619 | vlefevre | 2017-08-03 08:27:12 +0000 (Thu, 03 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[doc/README.dev] "To make a release": moved a sentence.
 
-[doc/mpfr.texi] Added a FIXME about memory allocation.
-------------------------------------------------------------------------
-r11617 | vlefevre | 2017-08-03 08:16:17 +0000 (Thu, 03 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2018-02-02  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r11615 | vlefevre | 2017-08-03 08:06:38 +0000 (Thu, 03 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tests/tdiv_ui.c] Forcibly disable value coverage checking if
+	mp_limb_t > unsigned long (e.g. on mips64 with the n32 ABI).
 
-[doc/mpfr.texi] Removed obsolete comments.
-------------------------------------------------------------------------
-r11614 | vlefevre | 2017-08-03 08:04:20 +0000 (Thu, 03 Aug 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tests/tdiv_ui.c] Corrected comments.
 
-[doc/mpfr.texi] Updated paragraph on the MPFR formatted output functions
-and overflow on the return type int.
-------------------------------------------------------------------------
-r11612 | vlefevre | 2017-08-02 11:15:01 +0000 (Wed, 02 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/NEWS
+	[tests/t*random*.c]
+	  * Replaced calloc + free by tests_allocate + tests_free as usual.
+	  * trandom.c, turandom.c: do bitwise operations in unsigned arithmetic.
 
-[NEWS] Mention the use of the old dtags under Linux (see r11588).
-------------------------------------------------------------------------
-r11611 | vlefevre | 2017-08-02 09:20:39 +0000 (Wed, 02 Aug 2017) | 3 lines
-Changed paths:
-   M /trunk/src/printf.c
-   M /trunk/src/vasprintf.c
+	[tests/t*random*.c]
+	  * Replaced some fprintf with stderr by printf (but not those
+	    concerning memory allocation errors).
+	  * Do bitwise operations in unsigned arithmetic.
+	  * Formatting.
 
-[src] Moved mpfr_vasprintf from vasprintf.c to printf.c and updated
-file descriptions for consistency (vasprintf.c should probably be
-renamed later to something like printf_aux.c).
-------------------------------------------------------------------------
-r11610 | vlefevre | 2017-08-02 09:05:11 +0000 (Wed, 02 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/src/printf.c
+	[tests] Formatting.
 
-[src/printf.c] Updated a comment (taking r11269 into account).
-------------------------------------------------------------------------
-r11609 | vlefevre | 2017-08-02 08:55:34 +0000 (Wed, 02 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[tests/tests.c] Make stderr unbuffered again.
+	Note for the history: both stdout and stderr were made unbuffered in
+	r2361, then all stderr were changed to stdout (and the corresponding
+	setbuf on stderr removed) in r2449 for consistency, but stderr was
+	used later for specific cases (e.g. memory allocation errors or when
+	stdout is already used for something else), and it is also used for
+	assertion failures. Thus the setbuf on stderr is still needed.
 
-[src/vasprintf.c] Added an assertion.
-------------------------------------------------------------------------
-r11608 | vlefevre | 2017-08-02 08:53:13 +0000 (Wed, 02 Aug 2017) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[tests] Fixed the cases where tests_start_mpfr was called too late,
+	i.e. after potential output (to stdout).
+	  * tremquo.c: moved the call to tests_start_mpfr to the beginning.
+	  * tset_float128.c, tset_ld.c: removed the optional, obsolete code
+	    setting the FPU control word; MPFR_FPU_PREC can be used instead
+	    (see tests.c).
 
-[src/vasprintf.c] Completed mpfr_vasnprintf_aux description.
-------------------------------------------------------------------------
-r11604 | vlefevre | 2017-08-01 09:31:49 +0000 (Tue, 01 Aug 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tstdint.c
-   M /trunk/tests/tvalist.c
+	Reverse-merged r12181 since tests_start_mpfr disables stdout buffering,
+	so that the fflush() are unnecessary.
 
-[tests/{tstdint.c,tvalist.c}] Include "mpfr-test.h" instead of
-"mpfr-impl.h" (this is done only when compiling with mini-gmp).
-------------------------------------------------------------------------
-r11603 | vlefevre | 2017-08-01 09:29:27 +0000 (Tue, 01 Aug 2017) | 3 lines
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[tests/tabort_*.c] Flush stdout after a printf(), as an abort() is
+	expected. This is needed on platforms where abort() does not flush
+	the stdio streams, such as with the GNU C Library (glibc) 2.27.
 
-[tools/mpfrlint] Detect "mpfr-impl.h" inclusion by the test programs:
-"mpfr-test.h" should be included instead; otherwise __MPFR_WITHIN_MPFR
-will be defined, yielding failures under MS Windows with DLL.
-------------------------------------------------------------------------
-r11601 | zimmerma | 2017-07-28 10:30:27 +0000 (Fri, 28 Jul 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2018-02-01  Vincent Lefèvre  <vincent at vinc17.net>
 
-fixed typo
+	[NEWS] Mention "make check-exported-symbols" (experimental).
 
-------------------------------------------------------------------------
-r11600 | vlefevre | 2017-07-28 10:12:10 +0000 (Fri, 28 Jul 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tests/tdiv_ui.c] Portability update, in case MPFR_PREC_MIN > 1.
 
-[doc/mpfr.texi] Added important details for the example from r11595.
-------------------------------------------------------------------------
-r11599 | vlefevre | 2017-07-27 17:27:03 +0000 (Thu, 27 Jul 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2018-01-31  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] Minor changes.
-------------------------------------------------------------------------
-r11598 | vlefevre | 2017-07-27 06:30:53 +0000 (Thu, 27 Jul 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tests/tdiv_ui.c] In corner_cases, test larger values for xn,
+	as suggested by Paul, allowing one to cover case 2 for both
+	sb=0 and sb=1. Value coverage is now complete.
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r11597 | zimmerma | 2017-07-27 06:24:49 +0000 (Thu, 27 Jul 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tests/tdiv_ui.c] Updated midpoint_exact to also test the divisor
+	ULONG_MAX, allowing one to cover cases 3 and 4.
 
-fixed FIXME related to r11595
+	[tests/tdiv_ui.c] Added tests with simple midpoint and exact cases.
+	This covers case 9, sb=0.
 
-------------------------------------------------------------------------
-r11596 | vlefevre | 2017-07-27 00:23:22 +0000 (Thu, 27 Jul 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	Added a case for the value coverage for tdiv_ui.
+	→ Now, on a 64-bit Linux machine:
+	    mpfr_div_ui not tested on case 2, sb=0
+	    mpfr_div_ui not tested on case 2, sb=1
+	    mpfr_div_ui not tested on case 3, sb=0
+	    mpfr_div_ui not tested on case 4, sb=0
+	    mpfr_div_ui not tested on case 9, sb=0
 
-[doc/mpfr.texi] Added FIXME on example from r11595.
-------------------------------------------------------------------------
-r11595 | zimmerma | 2017-07-26 10:07:35 +0000 (Wed, 26 Jul 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	Added value coverage for tdiv_ui (combinations of rb and sb in the
+	different cases of the mpfr_div_ui code).
+	→ Currently on a 64-bit Linux machine:
+	    mpfr_div_ui not tested on case 2, sb=0
+	    mpfr_div_ui not tested on case 3, sb=0
+	    mpfr_div_ui not tested on case 8, sb=0
 
-[mpfr.texi] added example showing how to emulate fixed-point arithmetic
+	[src/div_ui.c] Case tmp[yn] != 0: simplified code since u ≥ 2.
 
-------------------------------------------------------------------------
-r11590 | vlefevre | 2017-07-17 23:10:45 +0000 (Mon, 17 Jul 2017) | 3 lines
-Changed paths:
-   M /trunk/src/sin_cos.c
+	[src/div_ui.c] Case tmp[yn] == 0:
+	  * corrected/improved comments;
+	  * simplified condition rb && sb to rb (since if rb ≠ 0, then r ≠ 0,
+	    so that the current sb ≠ 0);
+	  * replaced "& (~MPFR_LIMB_HIGHBIT)" by "<< 1" (should be simpler).
 
-[src/sin_cos.c] Avoid integer overflows with precision 1100000 and
-the 32-bit ABI (32-bit long), fixing bug reported by Simon Byrne:
-https://sympa.inria.fr/sympa/arc/mpfr/2017-07/msg00002.html
-------------------------------------------------------------------------
-r11589 | vlefevre | 2017-07-17 13:55:35 +0000 (Mon, 17 Jul 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tcos.c
-   M /trunk/tests/texp.c
-   M /trunk/tests/tget_f.c
-   M /trunk/tests/tsub1sp.c
-   M /trunk/tests/tui_sub.c
+2018-01-30  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests] Re-indented some RND_LOOP / RND_LOOP_NO_RNDF blocks.
-------------------------------------------------------------------------
-r11588 | vlefevre | 2017-07-17 12:33:27 +0000 (Mon, 17 Jul 2017) | 5 lines
-Changed paths:
-   M /trunk
-   M /trunk/configure.ac
+	[src/div_ui.c] fixed corner case (hopefully)
 
-[configure.ac] Under Linux, make sure that the old dtags are used
-if LD_LIBRARY_PATH is defined, avoiding the following issue:
-  https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=859732
-  https://lists.gnu.org/archive/html/libtool/2017-05/msg00000.html
-(merged changeset r11587 from the 3.1 branch)
-------------------------------------------------------------------------
-r11586 | vlefevre | 2017-07-10 11:53:17 +0000 (Mon, 10 Jul 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tversion.c
+2018-01-30  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tversion.c] Forgot casts for printf in r11585.
-------------------------------------------------------------------------
-r11585 | vlefevre | 2017-07-10 11:17:31 +0000 (Mon, 10 Jul 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tversion.c
+	[tools/mpfrlint] Improved a regexp (avoiding false positives).
 
-[tests/tversion.c] Added ABI information & tests.
-------------------------------------------------------------------------
-r11584 | vlefevre | 2017-06-20 23:25:49 +0000 (Tue, 20 Jun 2017) | 1 line
-Changed paths:
-   M /trunk/src/subnormal.c
+	[tests/tdiv_ui.c] corner_cases() requires limbs to fit in unsigned long.
 
-[src/subnormal.c] Correction in comment (English).
-------------------------------------------------------------------------
-r11583 | vlefevre | 2017-06-19 13:09:48 +0000 (Mon, 19 Jun 2017) | 4 lines
-Changed paths:
-   M /trunk/tests/tversion.c
+	[tests/tdiv_ui.c] Back to a decimal constant (the UL suffix was
+	incorrect, but just a U is OK).
 
-[tests/tversion.c]
-  * Better organization; moved MPFR patches info below MPFR version.
-  * Output __GMP_CC and __GMP_CFLAGS values.
-  * Output GMP ABI info (to be completed with MPFR ABI info).
-------------------------------------------------------------------------
-r11578 | vlefevre | 2017-06-03 09:43:37 +0000 (Sat, 03 Jun 2017) | 1 line
-Changed paths:
-   M /trunk/configure.ac
+2018-01-30  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[configure.ac] Improved some AC_DEFINE comments.
-------------------------------------------------------------------------
-r11577 | vlefevre | 2017-06-03 00:34:15 +0000 (Sat, 03 Jun 2017) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	[tests/tdiv_ui.c] added test for corner case (currently fails)
 
-[doc/README.dev] Added quotes for clarity.
-------------------------------------------------------------------------
-r11576 | vlefevre | 2017-06-03 00:11:12 +0000 (Sat, 03 Jun 2017) | 1 line
-Changed paths:
-   M /trunk/tests/mpf_compat.h
+2018-01-30  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/mpf_compat.h] Always use stdout for failure messages.
-------------------------------------------------------------------------
-r11575 | vlefevre | 2017-06-03 00:04:19 +0000 (Sat, 03 Jun 2017) | 2 lines
-Changed paths:
-   M /trunk/src/get_str.c
+	[tests/tdiv_ui.c] Fixed a value (from a zsh bug).
 
-[src/get_str.c] Improved comments (avoid the confusion between a
-negative base argument and a negative base).
-------------------------------------------------------------------------
-r11574 | vlefevre | 2017-06-02 23:52:24 +0000 (Fri, 02 Jun 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/div_ui.c] Comment: now, "i.e." is correct.
 
-[doc/mpfr.texi] Punctuation.
-------------------------------------------------------------------------
-r11573 | zimmerma | 2017-06-02 20:49:29 +0000 (Fri, 02 Jun 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tests/tdiv_ui.c] Added ABI-independent bug20180126 tests.
 
-added mpfr_get_q in Added Functions
+2018-01-30  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r11572 | zimmerma | 2017-06-02 15:36:52 +0000 (Fri, 02 Jun 2017) | 3 lines
-Changed paths:
-   M /trunk/src/get_str.c
-   M /trunk/tests/tget_str.c
+	[src/div_ui.c] fixed a comment
 
-src/get_str.c: fixed for negative base
-tests/tget_str.c: added tests for negative base
+2018-01-30  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11571 | zimmerma | 2017-06-02 15:11:50 +0000 (Fri, 02 Jun 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/mpf_compat.h
+	[src/div_ui.c] Typo in a comment.
 
-tests/mpf_compat.h: non-regression tests for bugs fixed in revision 11565
+	[src/div_ui.c] Updated a comment.
 
-------------------------------------------------------------------------
-r11570 | zimmerma | 2017-06-02 14:52:45 +0000 (Fri, 02 Jun 2017) | 3 lines
-Changed paths:
-   M /trunk/src/get_str.c
+	[src/div_ui.c] Clarified the notation (this was ambiguous, with two
+	possible interpretations). Added comments about mpn_divrem_1.
 
-src/get_str.c: allow -36 <= b <= -2 too (work in progress) with the same
-	       meaning as in mpf_get_str
+	[src/div_ui.c] Added a FIXME.
 
-------------------------------------------------------------------------
-r11569 | zimmerma | 2017-06-02 14:12:17 +0000 (Fri, 02 Jun 2017) | 3 lines
-Changed paths:
-   M /trunk/src/mul.c
-   M /trunk/tests/tmul.c
+2018-01-30  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-fixed a bug in mpfr_mul for RNDF when Mulders' algorithm is used
-(and resolved a FIXME)
+	[src/div_ui.c] fixed a comment, and added a FIXME
 
-------------------------------------------------------------------------
-r11568 | vlefevre | 2017-06-02 14:03:58 +0000 (Fri, 02 Jun 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2018-01-29  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] Corrected mpfr_get_q documentation.
-------------------------------------------------------------------------
-r11567 | vlefevre | 2017-06-02 13:58:47 +0000 (Fri, 02 Jun 2017) | 2 lines
-Changed paths:
-   M /trunk/src/get_q.c
+	[src/div_ui.c] Clarified a comment.
 
-[src/get_q.c] Added assertions to detect integer overflows, in case
-mpfr_exp_t is larger than mp_bitcnt_t.
-------------------------------------------------------------------------
-r11566 | zimmerma | 2017-06-02 12:15:59 +0000 (Fri, 02 Jun 2017) | 2 lines
-Changed paths:
-   M /trunk/src/mpf2mpfr.h
+	[src/div_ui.c] Started to review the code; minor changes.
 
-src/mpf2mpfr.h: replaced __MPFR_GMP (requires internal mpfr-gmp.h)
+	[src/div_ui.c] Minor update of comments.
 
-------------------------------------------------------------------------
-r11565 | zimmerma | 2017-06-02 11:43:32 +0000 (Fri, 02 Jun 2017) | 2 lines
-Changed paths:
-   M /trunk/src/mpf2mpfr.h
+	[src/div_ui.c] Fixed the exact case, which used nexttoinf uninitialized.
 
-src/mpf2mpfr.h: fixed fits_s* functions and get_si
+	[tests/tdiv_ui.c] bug20180126: enable the test only when a limb fits in
+	an unsigned long; clarified a comment.
 
-------------------------------------------------------------------------
-r11564 | zimmerma | 2017-06-02 11:22:07 +0000 (Fri, 02 Jun 2017) | 2 lines
-Changed paths:
-   M /trunk/src/mpf2mpfr.h
+2018-01-28  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-use macro __MPFR_GMP
+	[src/div_ui.c] fixed bug20180126 (from tdiv.c), with a complete rewrite of
+		       mpfr_div_ui using the round and sticky bits
+	[tests/tdiv_ui.c] added more tests
 
-------------------------------------------------------------------------
-r11563 | zimmerma | 2017-06-02 10:44:12 +0000 (Fri, 02 Jun 2017) | 2 lines
-Changed paths:
-   M /trunk/NEWS
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/Makefile.am
-   A /trunk/src/get_q.c
-   M /trunk/src/mpf2mpfr.h
-   M /trunk/src/mpfr.h
-   M /trunk/tests/Makefile.am
-   A /trunk/tests/tget_q.c
+2018-01-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-added new function mpfr_get_q
+	[tests/tdiv.c] mpfr_div bug bug20180126: also test negative values.
 
-------------------------------------------------------------------------
-r11562 | zimmerma | 2017-06-02 07:03:25 +0000 (Fri, 02 Jun 2017) | 2 lines
-Changed paths:
-   M /trunk/src/mpf2mpfr.h
+	[tests/tdiv.c] Updated comment about mpfr_div bug bug20180126.
 
-src/mpf2mpfr.h: added mpf_cmp_z (appeared in GMP 6.1.0)
+	[tests/tdiv.c] mpfr_div bug bug20180126 was introduced by r9086.
 
-------------------------------------------------------------------------
-r11561 | vlefevre | 2017-06-01 15:03:24 +0000 (Thu, 01 Jun 2017) | 5 lines
-Changed paths:
-   M /trunk/Makefile.am
-   M /trunk/README
+2018-01-26  Vincent Lefèvre  <vincent at vinc17.net>
 
-[Makefile.am] Put doc/README.dev in EXTRA_DIST to provide this file in
-  tarballs too (it is not installed by "make install", though), since
-  it contains information that may be useful for users of tarballs and
-  various distributed files mention it.
-[README] Update about the "doc" directory and "doc/README.dev".
-------------------------------------------------------------------------
-r11560 | vlefevre | 2017-06-01 09:15:31 +0000 (Thu, 01 Jun 2017) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	[tests/tdiv.c] Completed r12128 test with new comments and an assert.
 
-[doc/README.dev] More information about the DEBUG macro.
-------------------------------------------------------------------------
-r11559 | vlefevre | 2017-06-01 00:26:46 +0000 (Thu, 01 Jun 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tests/tdiv.c] Added test case for a mpfr_div bug of MPFR 4.
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r11558 | vlefevre | 2017-06-01 00:25:16 +0000 (Thu, 01 Jun 2017) | 6 lines
-Changed paths:
-   M /trunk/NEWS
-   M /trunk/TODO
-   M /trunk/doc/mpfr.texi
+2018-01-25  Vincent Lefèvre  <vincent at vinc17.net>
 
-Update about MPFR_RNDF (faithful rounding):
-  * NEWS: mention that it is partially supported (should be updated
-    once MPFR_RNDF is completely supported).
-  * TODO: moved an item to the right place (MPFR_RNDF is not removed
-    from the TODO because it is not completely supported yet).
-  * doc/mpfr.texi: added a FIXME about the partial support.
-------------------------------------------------------------------------
-r11557 | vlefevre | 2017-05-31 23:59:06 +0000 (Wed, 31 May 2017) | 4 lines
-Changed paths:
-   M /trunk/src/atanh.c
-   M /trunk/src/log1p.c
+	[doc/README.dev] Added information about symbol checking.
 
-[src/{atanh.c,log1p.c}]
-  * Replaced mpfr_get_exp by MPFR_GET_EXP (so that the exponent is
-    checked with --enable-assert).
-  * For a test, doing the division first should be better.
-------------------------------------------------------------------------
-r11556 | zimmerma | 2017-05-31 20:37:02 +0000 (Wed, 31 May 2017) | 2 lines
-Changed paths:
-   M /trunk/NEWS
-   M /trunk/src/atanh.c
-   M /trunk/src/log1p.c
+2018-01-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-improved log1p and atanh for small inputs
+	[tests/tests.c] Mention a libtool 2.4.6 bug concerning Solaris, yielding
+	potential failures if a compatible MPFR version is already installed:
+	this MPFR library is tested instead of the one that has just been built.
 
-------------------------------------------------------------------------
-r11555 | zimmerma | 2017-05-31 12:39:19 +0000 (Wed, 31 May 2017) | 2 lines
-Changed paths:
-   M /trunk/tools/mbench/mfv5-mpfr.cc
+2018-01-22  Vincent Lefèvre  <vincent at vinc17.net>
 
-added expm1 to mbench
+	[NEWS] + Improved __GMP_CC and __GMP_CFLAGS retrieval.
 
-------------------------------------------------------------------------
-r11554 | zimmerma | 2017-05-31 12:33:48 +0000 (Wed, 31 May 2017) | 2 lines
-Changed paths:
-   M /trunk/tools/mbench/mfv5-mpfr.cc
+	[configure.ac] In the CC and CFLAGS setup from gmp.h, added to the
+	cpp list: "clang -E"; "cl -E" and "icl -E" for Windows ICC and MSVC
+	(suggested by Alexander).
 
-added log1p to mbench
+2018-01-20  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11553 | vlefevre | 2017-05-29 22:55:34 +0000 (Mon, 29 May 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[doc/README.dev] "To make a release": mention "make check-gmp-symbols"
+	and "make check-exported-symbols".
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r11552 | vlefevre | 2017-05-29 22:54:46 +0000 (Mon, 29 May 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tfmma.c
+	[Makefile.am] Updated comments.
 
-Removed trailing spaces.
-------------------------------------------------------------------------
-r11551 | vlefevre | 2017-05-29 22:48:06 +0000 (Mon, 29 May 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tdiv.c
-   M /trunk/tests/tests.c
-   M /trunk/tests/tpow_all.c
-   M /trunk/tests/tsum.c
+	[src/Makefile.am] For check-gmp-symbols and check-exported-symbols, if
+	the library is not $(top_builddir)/src/.libs/libmpfr.so, these rules
+	do nothing instead of potentially failing.
 
-[tests] Code simplification and improvement by using SAME_VAL().
-------------------------------------------------------------------------
-r11550 | vlefevre | 2017-05-29 22:39:49 +0000 (Mon, 29 May 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tbeta.c
+	Added check-exported-symbols make rule to check that MPFR does not
+	define symbols with a GMP reserved prefix.
 
-[tests/tbeta.c] Replaced not_same() by the simpler ! SAME_VAL().
-------------------------------------------------------------------------
-r11549 | vlefevre | 2017-05-29 21:48:21 +0000 (Mon, 29 May 2017) | 2 lines
-Changed paths:
-   M /trunk/src/sum.c
+2018-01-18  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sum.c] Code reindentation due to a new test for MPFR_RNDF support,
-and other minor changes in formatting and comments.
-------------------------------------------------------------------------
-r11548 | vlefevre | 2017-05-29 21:37:27 +0000 (Mon, 29 May 2017) | 1 line
-Changed paths:
-   M /trunk/doc/sum.txt
+	[src/mp_clz_tab.c] Fixed a condition (see bug mentioned at r12107).
 
-[doc/sum.txt] Typo in the MPFR_RNDF text.
-------------------------------------------------------------------------
-r11546 | vlefevre | 2017-05-29 17:26:28 +0000 (Mon, 29 May 2017) | 2 lines
-Changed paths:
-   M /trunk
-   M /trunk/TODO
-   M /trunk/doc/mpfr.texi
-   M /trunk/doc/sum.txt
-   M /trunk/src/add1.c
-   M /trunk/src/add1sp.c
-   M /trunk/src/div.c
-   M /trunk/src/div_ui.c
-   M /trunk/src/fits_intmax.c
-   M /trunk/src/fits_s.h
-   M /trunk/src/fits_u.h
-   M /trunk/src/get_str.c
-   M /trunk/src/hypot.c
-   M /trunk/src/jyn_asympt.c
-   M /trunk/src/li2.c
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/mpfr.h
-   M /trunk/src/mul.c
-   M /trunk/src/print_rnd_mode.c
-   M /trunk/src/round_near_x.c
-   M /trunk/src/round_prec.c
-   M /trunk/src/round_raw_generic.c
-   M /trunk/src/sqr.c
-   M /trunk/src/sqrt.c
-   M /trunk/src/sub1.c
-   M /trunk/src/sub1sp.c
-   M /trunk/src/sum.c
-   M /trunk/src/vasprintf.c
-   M /trunk/src/zeta_ui.c
-   M /trunk/tests/mpfr-test.h
-   M /trunk/tests/reuse.c
-   M /trunk/tests/tabs.c
-   M /trunk/tests/tadd.c
-   M /trunk/tests/tadd1sp.c
-   M /trunk/tests/tcan_round.c
-   M /trunk/tests/tconst_euler.c
-   M /trunk/tests/tconst_log2.c
-   M /trunk/tests/tconst_pi.c
-   M /trunk/tests/tcos.c
-   M /trunk/tests/tcot.c
-   M /trunk/tests/tcoth.c
-   M /trunk/tests/tdiv.c
-   M /trunk/tests/texceptions.c
-   M /trunk/tests/texp.c
-   M /trunk/tests/texp10.c
-   M /trunk/tests/texp2.c
-   M /trunk/tests/tfactorial.c
-   M /trunk/tests/tfits.c
-   M /trunk/tests/tfma.c
-   M /trunk/tests/tfmma.c
-   M /trunk/tests/tfms.c
-   M /trunk/tests/tgamma.c
-   M /trunk/tests/tgeneric.c
-   M /trunk/tests/tgeneric_ui.c
-   M /trunk/tests/tget_f.c
-   M /trunk/tests/tget_sj.c
-   M /trunk/tests/tgmpop.c
-   M /trunk/tests/tinternals.c
-   M /trunk/tests/tmul.c
-   M /trunk/tests/tmul_2exp.c
-   M /trunk/tests/tmul_ui.c
-   M /trunk/tests/tpow.c
-   M /trunk/tests/tpow3.c
-   M /trunk/tests/tpow_all.c
-   M /trunk/tests/trint.c
-   M /trunk/tests/troot.c
-   M /trunk/tests/tsec.c
-   M /trunk/tests/tsech.c
-   M /trunk/tests/tset.c
-   M /trunk/tests/tset_si.c
-   M /trunk/tests/tsin_cos.c
-   M /trunk/tests/tsqr.c
-   M /trunk/tests/tsqrt.c
-   M /trunk/tests/tstrtofr.c
-   M /trunk/tests/tsub.c
-   M /trunk/tests/tsub1sp.c
-   M /trunk/tests/tsum.c
-   M /trunk/tests/tui_div.c
-   M /trunk/tests/tui_pow.c
-   M /trunk/tests/tui_sub.c
-   M /trunk/tests/tzeta_ui.c
+	[src/mpfr-gmp.h] Reverse-merged r11969, which yields a build failure
+	under MinGW when GMP is built with "--disable-shared --enable-static
+	--enable-assert --disable-assembly" and MPFR is built using the GMP
+	build. Indeed, this commit was incorrect, as if the GMP build is used,
+	then this is GMP's longlong.h that is used and GMP's __clz_tab version
+	that should be used.
+	The real cause of the "multiple definition of `__gmpn_clz_tab'" error
+	reported at
+	  https://sympa.inria.fr/sympa/arc/mpfr/2017-12/msg00061.html
+	is that MPFR defines its own __gmpn_clz_tab while this is not needed
+	(and must not be done) when the GMP build is used.
 
-Merged the "faithful" branch into the trunk:
-faithful rounding (MPFR_RNDF).
-------------------------------------------------------------------------
-r11542 | zimmerma | 2017-05-29 09:04:44 +0000 (Mon, 29 May 2017) | 2 lines
-Changed paths:
-   M /trunk/TODO
+2018-01-16  Vincent Lefèvre  <vincent at vinc17.net>
 
-added new reference
+	[TODO] - Decide whether multiple calls to mpfr_clear should be allowed.
 
-------------------------------------------------------------------------
-r11533 | vlefevre | 2017-05-24 11:33:50 +0000 (Wed, 24 May 2017) | 4 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[TODO] + Decide whether multiple calls to mpfr_clear should be allowed.
 
-[tests/tsprintf.c] Fixed setlocale usage (problem detected with MinGW)
-by not using the returned string any longer. Indeed, ISO C99 says that
-this string "may be overwritten by a subsequent call to the setlocale
-function".
-------------------------------------------------------------------------
-r11532 | vlefevre | 2017-05-24 09:15:54 +0000 (Wed, 24 May 2017) | 4 lines
-Changed paths:
-   M /trunk/src/printf.c
-   M /trunk/src/vasprintf.c
+2018-01-13  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src] Moved "#include <errno.h>" from printf.c to vasprintf.c
-(this should have been done in r5230, where EOVERFLOW was moved).
-This fixes the "Got r = -1, errno = 0" errors in tprintf with
-MPFR_CHECK_LARGEMEM=1.
-------------------------------------------------------------------------
-r11531 | vlefevre | 2017-05-24 09:09:53 +0000 (Wed, 24 May 2017) | 6 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+	ChangeLog update with "LC_ALL=en_US.UTF8 TZ=UTC svn log -rHEAD:0 -v".
 
-[src/vasprintf.c] Added overflow detection at the end (due to the switch
-to mpfr_intmax_t for the string length in the string_buffer structure,
-it was no longer detected; however, this bug was not normally visible in
-the tests because here, a negative value was returned thanks to wrapping
-in a type conversion and the negative value was changed to the expected
--1 value in printf.c).
-------------------------------------------------------------------------
-r11530 | vlefevre | 2017-05-24 08:47:36 +0000 (Wed, 24 May 2017) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[NEWS] Update. Prepare for new version 4.1.0.
 
-[src/vasprintf.c] Added log messages.
-------------------------------------------------------------------------
-r11529 | vlefevre | 2017-05-24 08:30:55 +0000 (Wed, 24 May 2017) | 2 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[doc] Updated FAQ.html with update-faq.
 
-[src/vasprintf.c] In case of overflow, do not stop before everything has
-been processed, allowing the %...n arguments to be filled, as decided.
-------------------------------------------------------------------------
-r11528 | vlefevre | 2017-05-24 08:12:56 +0000 (Wed, 24 May 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tprintf.c
+2018-01-10  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tprintf.c] check_long_string() error handling: initialize n2 to
-an invalid value and do all tests before exiting.
-------------------------------------------------------------------------
-r11527 | vlefevre | 2017-05-24 08:01:28 +0000 (Wed, 24 May 2017) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[tests/tlgamma.c] bug20180110: test the ternary value and the flags.
 
-[src/vasprintf.c] Fixed some parts of overflow tracking.
-------------------------------------------------------------------------
-r11526 | vlefevre | 2017-05-24 07:49:39 +0000 (Wed, 24 May 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tprintf.c
+	[src/lngamma.c] Fixed mpfr_lgamma bug for tiny negative x, in case
+	emax < exponent of the result (the issue was an overflow in the "fast"
+	algorithm, which made it loop with more and more working precision).
 
-[tests/tprintf.c] More detailed error message.
-------------------------------------------------------------------------
-r11525 | vlefevre | 2017-05-24 07:46:26 +0000 (Wed, 24 May 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tprintf.c
+	[src/lngamma.c] Removed a useless cast.
 
-[tests/tprintf.c] Added tests with %ln.
-------------------------------------------------------------------------
-r11524 | vlefevre | 2017-05-24 07:15:40 +0000 (Wed, 24 May 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tprintf.c
+	[tests/tlgamma.c] Added a test case for a bug found from the tgeneric
+	change done in r12088.
 
-[tests/tprintf.c] Improved check_vprintf_failure().
-------------------------------------------------------------------------
-r11523 | vlefevre | 2017-05-24 07:10:21 +0000 (Wed, 24 May 2017) | 7 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
-   M /trunk/tests/tprintf.c
+	[tests/tgeneric.c] Do several overflow/underflow tests instead of 1, and
+	this for each precision. This allows one to detect the mpfr_ai bug found
+	and fixed on 2018-01-07 (with 32-bit *and* 64-bit ABI):
+	  https://sympa.inria.fr/sympa/arc/mpfr/2018-01/msg00001.html
+	Moreover, this makes tlgamma loop with a 32-bit ABI (x86). To be fixed.
 
-[src/vasprintf.c] Fixed the handling of the 'n' format specifier
-  for size = 0, still allowing its support in case of overflow on
-  the return value (i.e. when the number of characters that would
-  have been output is > INT_MAX).
-  Note: full support in case of overflow is still limited by GMP
-  and the C library.
-[tests/tprintf.c] Increased the memory needed in check_long_string().
-------------------------------------------------------------------------
-r11522 | vlefevre | 2017-05-23 13:17:12 +0000 (Tue, 23 May 2017) | 5 lines
-Changed paths:
-   M /trunk/src/mpfr-intmax.h
+	[tests/tgeneric.c] Added comments for tests in a reduced exponent range.
 
-[src/mpfr-intmax.h] Define mpfr_uintmax_t and MPFR_INTMAX_MAX too.
-However, this will not necessarily be used by src/vasprintf.c, as
-this can be regarded as an EOVERFLOW error for which the behavior
-on the %...n values is not specified, i.e. we may not need to
-support size values larger than INT_MAX.
-------------------------------------------------------------------------
-r11521 | vlefevre | 2017-05-22 15:07:36 +0000 (Mon, 22 May 2017) | 2 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[tests/tsprintf.c] About r12084, simplified the code, without needing
+	strncpy.
 
-[src/vasprintf.c] In a macro definition, changed a parameter to
-lowercase so that it doesn't look like a constant to mpfrlint.
-------------------------------------------------------------------------
-r11520 | vlefevre | 2017-05-22 14:08:07 +0000 (Mon, 22 May 2017) | 4 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[tests/tsprintf.c] Fixed strncpy usage, in particular to ensure a
+	null-terminated string (bug detected by gcc-snapshot 20180107-1 under
+	Debian with -Werror=stringop-truncation).
 
-[src/vasprintf.c] Added a FIXME for the percent_n() / mixed() bug due
-to the 'n' format specifier with size = 0. The way to fix this issue
-depends on the specifications in case of overflow on the return value,
-and for POSIX, they are unclear. Waiting for comments...
-------------------------------------------------------------------------
-r11519 | vlefevre | 2017-05-22 12:33:48 +0000 (Mon, 22 May 2017) | 7 lines
-Changed paths:
-   M /trunk/src/mpfr-intmax.h
+2018-01-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr-intmax.h] Define mpfr_intmax_t as being the largest
-signed integer type available for the MPFR build. It will be
-useful for the formatted output functions (src/vasprintf.c) to
-handle the 'n' format specifier, assuming that the value may
-be larger than INT_MAX, which is possible assuming that the
-C standard has a defect in the corresponding specification:
-https://sourceware.org/bugzilla/show_bug.cgi?id=21360
-------------------------------------------------------------------------
-r11518 | vlefevre | 2017-05-22 11:38:10 +0000 (Mon, 22 May 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[doc/mpfr.texi] Fixed the @GMPabs macro in tex mode: due to the use of
+	the OT1 encoding, the pipe character "|" was giving a wide dash.
 
-[tests/tsprintf.c] Added explanation for the bugs triggered by
-percent_n() and mixed().
-------------------------------------------------------------------------
-r11517 | vlefevre | 2017-05-22 11:31:16 +0000 (Mon, 22 May 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[doc/mpfr.texi] For mpfr_custom_get_exp, restored the spec for NaN,
+	infinity and zero, with more details.
 
-[tests/tsprintf.c] Added percent_n() test to reproduce the bug found
-in mixed(), test without random data.
-------------------------------------------------------------------------
-r11516 | vlefevre | 2017-05-22 10:53:50 +0000 (Mon, 22 May 2017) | 2 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[doc/mpfr.texi] Improved description of mpfr_custom_init_set.
+	Note: For the versions of the manual generated with TeX (PDF/DVI/PS),
+	"|kind|" appears as "—kind—", and the description of mpfr_ai has
+	the same issue (since its introduction in MPFR 3.0.0). The cause
+	is unclear, and this will be fixed later.
 
-[src/vasprintf.c] In partition_number(), complete check for overflow
-on total.
-------------------------------------------------------------------------
-r11515 | vlefevre | 2017-05-22 09:29:51 +0000 (Mon, 22 May 2017) | 2 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+2018-01-09  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/vasprintf.c] Partially fixed check for integer overflow when
-the long and int types have the same size.
-------------------------------------------------------------------------
-r11514 | vlefevre | 2017-05-22 09:23:57 +0000 (Mon, 22 May 2017) | 3 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[doc/mpfr.texi] for mpfr_custom_get_exp, explain the significand is considered
+			in [1/2,1) as for mpfr_get_exp
 
-[src/vasprintf.c] With assertions enabled, check that the number of
-characters to be written computed in partition_number() corresponds
-to what is really written.
-------------------------------------------------------------------------
-r11513 | vlefevre | 2017-05-22 09:17:51 +0000 (Mon, 22 May 2017) | 7 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+2018-01-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/vasprintf.c] Fixed the bug triggered by the da_DK locale test: the
-computation of the number of characters to be written was incorrect in
-partition_number() when the thousands separator was not empty. This bug
-was visible with size = 0 and could be visible near overflow on the
-number of characters.
-Note: the buggy code was introduced in r5288 (2008-02-15), which fixed
-other issues with the thousands separator.
-------------------------------------------------------------------------
-r11512 | vlefevre | 2017-05-22 09:13:33 +0000 (Mon, 22 May 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[doc]
+	  * texinfo.tex: update to the latest version 2018-01-09.11, which
+	    supports @var with script font size without any drawback.
+	  * mpfr.texi: replaced the now useless @svar by @var.
 
-[tests/tsprintf.c] Do more tests in the da_DK locale (these are the
-only tests for which the thousands separator is not empty).
-------------------------------------------------------------------------
-r11511 | vlefevre | 2017-05-22 08:56:55 +0000 (Mon, 22 May 2017) | 3 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+2018-01-07  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tsprintf.c] Do more tests involving check_sprintf() in a loop
-(to test mpfr_snprintf with size = 0 more often), and call mixed()
-later in order to get failures without the use of %n first.
-------------------------------------------------------------------------
-r11510 | zimmerma | 2017-05-19 15:04:24 +0000 (Fri, 19 May 2017) | 2 lines
-Changed paths:
-   M /trunk/src/zeta.c
+	[tests/tai.c] In bug20180107, also check the flags.
 
-get rid of computations with 'double' in mpfr_zeta
+	[src/ai.c] Really fixed the bug.
 
-------------------------------------------------------------------------
-r11509 | vlefevre | 2017-05-19 14:47:51 +0000 (Fri, 19 May 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[src/check.c] Typo.
 
-[tests/tsprintf.c] Added a TODO about %n test.
-------------------------------------------------------------------------
-r11508 | vlefevre | 2017-05-19 14:04:46 +0000 (Fri, 19 May 2017) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+2018-01-07  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/README.dev] Added MPFR_TESTS_FPE_TRAP documentation.
-------------------------------------------------------------------------
-r11507 | vlefevre | 2017-05-19 13:59:19 +0000 (Fri, 19 May 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tests.c
+	[src/ai.c] missing call to mpfr_check_range
 
-[tests/tests.c] Corrected comment about MPFR_TESTS_FPE_TRAP.
-------------------------------------------------------------------------
-r11506 | vlefevre | 2017-05-19 13:57:15 +0000 (Fri, 19 May 2017) | 2 lines
-Changed paths:
-   M /trunk/acinclude.m4
-   M /trunk/doc/README.dev
-   M /trunk/tests/tests.c
+	[tests/tai.c] added test that fails on x86_64
 
-Renamed MPFR_TESTS_DIVBYZERO to MPFR_TESTS_FPE_DIV (less confusing).
-In doc/README.dev, updated the corresponding description.
-------------------------------------------------------------------------
-r11505 | vlefevre | 2017-05-19 13:49:50 +0000 (Fri, 19 May 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tests.c
+	[tests/tai.c] added test for bug in mpfr_ai (see thread
+	https://sympa.inria.fr/sympa/arc/mpfr/2018-01/msg00001.html)
 
-[tests] Renamed MPFR_RAISE_EXCEPTIONS to MPFR_TESTS_FPE_TRAP.
-------------------------------------------------------------------------
-r11504 | vlefevre | 2017-05-19 13:45:10 +0000 (Fri, 19 May 2017) | 13 lines
-Changed paths:
-   M /trunk/tests/tcmp_d.c
-   M /trunk/tests/tcmp_ld.c
-   M /trunk/tests/td_div.c
-   M /trunk/tests/tests.c
-   M /trunk/tests/tget_d.c
-   M /trunk/tests/tget_d_2exp.c
-   M /trunk/tests/tget_flt.c
-   M /trunk/tests/tget_ld_2exp.c
-   M /trunk/tests/tget_set_d64.c
-   M /trunk/tests/tset_d.c
-   M /trunk/tests/tset_float128.c
-   M /trunk/tests/tset_ld.c
+2018-01-03  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests] Got rid of MPFR_TESTS_EXCEPTIONS (added in r11489 and above),
-which is redundant with MPFR_TESTS_DIVBYZERO and MPFR_ERRDIVZERO. The
-code related to these exceptions is now like r11488 (see the output of
-"svn diff -r11488"), but keeping the following changes:
-  * Missing !defined(MPFR_ERRDIVZERO) tests added in r11498,11499.
-  * In tests.c:
-      - code related to traps (macro MPFR_RAISE_EXCEPTIONS, which will
-        be renamed);
-      - more detailed output about which FP exceptions occurred;
-      - removal of "#ifdef MPFR_ERRDIVZERO" (as in r11493), as this is
-        better with Automake 1.13+ (required by MPFR since r9375).
-Note: EXCEPTIONS_FLAG renamed to FPE_FLAGS, since EXCEPTIONS_FLAG is
-reserved by ISO C when <errno.h> is included.
-------------------------------------------------------------------------
-r11503 | vlefevre | 2017-05-19 11:54:29 +0000 (Fri, 19 May 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[doc/mpfr.texi] Updated the month.
 
-[tests/tsprintf.c] Do the locale_da_DK() test several times to yield
-a failure by default once the bug triggered by mixed() is fixed.
-------------------------------------------------------------------------
-r11502 | vlefevre | 2017-05-19 11:24:03 +0000 (Fri, 19 May 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[tools/ck-mparam] In the copyright notice, just keep the year 2011
+	since this file is not part of the tarball (just used by mpfrlint).
 
-[tests/tsprintf.c] Updated comment about r11501: the failure occurs
-with %n when the size argument of mpfr_vsnprintf is 0.
-------------------------------------------------------------------------
-r11501 | vlefevre | 2017-05-19 11:08:14 +0000 (Fri, 19 May 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	Copyright notice update: added 2018 with
+	  perl -pi -e 's/ (\d{4}-)?(2017)(?= Free Software)/
+	               " ".($1||"$2-").($2+1)/e' **/*(^/)
+	under zsh, reverting the ck-mparam and timings-mpfr.c files and
+	the mbench directory under "tools" (not distributed with MPFR).
+	Removed 2017 from the example in the doc/README.dev file.
 
-[tests/tsprintf.c] Do more tests with %n. One now gets a failure
-by default (which occurs when one gets randsize <= 0).
-------------------------------------------------------------------------
-r11500 | vlefevre | 2017-05-19 10:45:25 +0000 (Fri, 19 May 2017) | 4 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+2018-01-03  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tsprintf.c] Fixed portability issues: The va_end(3) man page
-of Linux Programmer's Manual says: "On some systems, va_end contains
-a closing '}' matching a '{' in va_start, so that both macros must
-occur in the same function, and in a way that allows this."
-------------------------------------------------------------------------
-r11499 | vlefevre | 2017-05-19 09:26:18 +0000 (Fri, 19 May 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_set_d64.c
+	[src/zeta.c] added comments and FIXME
 
-[tests/tget_set_d64.c] Disable tests with a division by 0 (which now
-occurs only with -DXDEBUG) if MPFR_ERRDIVZERO is defined.
-------------------------------------------------------------------------
-r11498 | vlefevre | 2017-05-19 09:20:19 +0000 (Fri, 19 May 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_ld.c
+	Note (2019-04-30): a bug has also been introduced (fixed in r13485).
 
-[tests/tset_ld.c] Disable an overflow test with a division by 0
-(now occurs only with -DXDEBUG) if MPFR_ERRDIVZERO is defined.
-------------------------------------------------------------------------
-r11497 | vlefevre | 2017-05-19 08:54:32 +0000 (Fri, 19 May 2017) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+2017-12-25  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/README.dev] Details for "-DMPFR_TESTS_DIVBYZERO -DMPFR_ERRDIVZERO".
-------------------------------------------------------------------------
-r11496 | vlefevre | 2017-05-19 08:34:00 +0000 (Fri, 19 May 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[NEWS] Minor corrections for GNU MPFR 4.0.0.
 
-[tests/tsprintf.c] In mixed(), initialize n2 to an invalid value
-in order to ease failure analysis.
-------------------------------------------------------------------------
-r11495 | zimmerma | 2017-05-19 08:15:46 +0000 (Fri, 19 May 2017) | 2 lines
-Changed paths:
-   M /trunk/src/set_d.c
+2017-12-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-removed leftover debug statement in last commit
+	[tests/tests.c] Added a note about gettimeofday() and a cast.
 
-------------------------------------------------------------------------
-r11494 | zimmerma | 2017-05-19 08:14:58 +0000 (Fri, 19 May 2017) | 2 lines
-Changed paths:
-   M /trunk/src/set_d.c
+	[tests/tests.c] Fixed a potential integer overflow from r12053 with
+	GMP_CHECK_RANDOMIZE=1, in particular under a 32-bit Linux.
 
-fix for clang bug (https://bugs.llvm.org//show_bug.cgi?id=17686)
+2017-12-23  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r11493 | vlefevre | 2017-05-19 08:04:05 +0000 (Fri, 19 May 2017) | 8 lines
-Changed paths:
-   M /trunk/tests/tests.c
+	[tests/tests.c] decrease probability of collision with random seed
 
-[tests/tests.c] Change for MPFR_TESTS_DIVBYZERO: in case of FE_DIVBYZERO
-or FE_INVALID, fail unconditionally, not just when MPFR_ERRDIVZERO is
-defined, otherwise one cannot see the output about the floating-point
-exceptions with "make check" (the test of MPFR_ERRDIVZERO here should
-have been removed after switching to Automake 1.13, which discards the
-output when the test program succeeds).
-Note: defining MPFR_TESTS_DIVBYZERO without MPFR_ERRDIVZERO is just for
-debugging.
-------------------------------------------------------------------------
-r11492 | zimmerma | 2017-05-19 08:03:19 +0000 (Fri, 19 May 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tcmp_d.c
-   M /trunk/tests/tcmp_ld.c
-   M /trunk/tests/td_div.c
-   M /trunk/tests/tests.c
-   M /trunk/tests/tget_d.c
-   M /trunk/tests/tget_d_2exp.c
-   M /trunk/tests/tget_flt.c
-   M /trunk/tests/tget_ld_2exp.c
-   M /trunk/tests/tset_d.c
-   M /trunk/tests/tset_float128.c
-   M /trunk/tests/tset_ld.c
+	[src/exp_2.c] fixed bug from previous commit
+	[src/subnormal.c] added assert
 
-more work on MPFR_TESTS_EXCEPTIONS
+	[tests/texp.c] added test for new bug
 
-------------------------------------------------------------------------
-r11491 | vlefevre | 2017-05-19 07:29:24 +0000 (Fri, 19 May 2017) | 3 lines
-Changed paths:
-   M /trunk/tests/tests.c
+2017-12-22  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tests.c] Re-added code testing FE_DIVBYZERO and FE_INVALID with
--DMPFR_TESTS_DIVBYZERO -DMPFR_ERRDIVZERO, because MPFR_TESTS_EXCEPTIONS
-is not ready yet.
-------------------------------------------------------------------------
-r11490 | vlefevre | 2017-05-19 07:04:23 +0000 (Fri, 19 May 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tversion.c
+	Removed trailing whitespace.
 
-[tests/tversion.c] Output IEEE floats status.
-------------------------------------------------------------------------
-r11489 | zimmerma | 2017-05-19 06:09:23 +0000 (Fri, 19 May 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tests.c
+	[src/subnormal.c] Replaced FIXME.
 
-check for fp exceptions (experimental)
+	[tests/tj1.c] Avoid a potential integer overflow.
 
-------------------------------------------------------------------------
-r11488 | vlefevre | 2017-05-17 14:08:40 +0000 (Wed, 17 May 2017) | 1 line
-Changed paths:
-   M /trunk/src/cmp2.c
+2017-12-22  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/cmp2.c] Added/updated comments.
-------------------------------------------------------------------------
-r11487 | vlefevre | 2017-05-17 13:34:28 +0000 (Wed, 17 May 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tcmp2.c
+	[src/subnormal.c] added FIXME
 
-[tests/tcmp2.c] Added tests with equal numbers, possibly of different
-sizes.
-------------------------------------------------------------------------
-r11486 | vlefevre | 2017-05-17 10:15:30 +0000 (Wed, 17 May 2017) | 1 line
-Changed paths:
-   M /trunk/src/cmp2.c
+	[src/sin.c] simplified code with RNDA
 
-[src/cmp2.c] Corrected comments.
-------------------------------------------------------------------------
-r11485 | vlefevre | 2017-05-17 06:46:27 +0000 (Wed, 17 May 2017) | 2 lines
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[src/hypot.c] mimic mpfr_round_near_x
 
-[tools/mpfrlint] In the detection of reserved macro names, skip ERR
-from src/mpfr-gmp.h (this is a special case).
-------------------------------------------------------------------------
-r11484 | vlefevre | 2017-05-17 06:31:23 +0000 (Wed, 17 May 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tget_set_d64.c
+	[tests/tj1.c] exercise corner case
 
-[tests/tget_set_d64.c] Made PRINT_ERR_MISC more robust.
-------------------------------------------------------------------------
-r11483 | vlefevre | 2017-05-17 06:27:14 +0000 (Wed, 17 May 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tfma.c
-   M /trunk/tests/tfms.c
-   M /trunk/tests/tget_set_d64.c
-   M /trunk/tests/tsi_op.c
+	[tests/tj1.c] added test for j1(z) with small z
 
-[tests/*.c] Renamed the remaining macros whose names are reserved
-by ISO C when <errno.h> is included.
-------------------------------------------------------------------------
-r11482 | vlefevre | 2017-05-16 13:44:56 +0000 (Tue, 16 May 2017) | 1 line
-Changed paths:
-   M /trunk/tests/texceptions.c
+	[src/hypot.c] fixed issue with overflow flag not correctly set
 
-[tests/texceptions.c] Made code formatting consistent.
-------------------------------------------------------------------------
-r11481 | vlefevre | 2017-05-16 13:41:49 +0000 (Tue, 16 May 2017) | 3 lines
-Changed paths:
-   M /trunk/tests/tcmpabs.c
-   M /trunk/tests/texceptions.c
-   M /trunk/tests/tpow_z.c
-   M /trunk/tests/tset_si.c
-   M /trunk/tests/tset_sj.c
+2017-12-21  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/*.c] Renamed "ERROR" macro (macro name reserved by ISO C
-when <errno.h> is included) to "PRINT_ERROR", and made the macro
-more robust.
-------------------------------------------------------------------------
-r11480 | vlefevre | 2017-05-16 13:21:15 +0000 (Tue, 16 May 2017) | 2 lines
-Changed paths:
-   M /trunk/src/get_f.c
-   M /trunk/src/mpfr-gmp.h
-   M /trunk/src/set_f.c
-   M /trunk/tests/tget_f.c
+	[src/next.c] Reverted r12035 as per documentation, which follows
+	IEEE 754 (with the usual special treatment for the single NaN).
 
-Define the EXP() macro in src/mpfr-gmp.h only when needed (macro name
-reserved by ISO C when <errno.h> is included).
-------------------------------------------------------------------------
-r11479 | vlefevre | 2017-05-16 10:35:35 +0000 (Tue, 16 May 2017) | 5 lines
-Changed paths:
-   M /trunk/src/gamma.c
+2017-12-21  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/gamma.c] Got rid of the EXPM1_STR macro (macro name reserved
-by ISO C when <errno.h> is included), made no longer interesting by
-using mpfr_set_str_binary only once and another temporary variable.
-At the same time, replaced the usual allocation by a GROUP allocation
-(more efficient).
-------------------------------------------------------------------------
-r11478 | vlefevre | 2017-05-15 15:39:18 +0000 (Mon, 15 May 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tcheck.c
+	[src/next.c] fixed nextinf (missing overflow flag)
+	[tests/thypot.c] removed debug call to mpfr_dump in previous commit
 
-[tests/tcheck.c] Code reformatting (GNU coding style).
-------------------------------------------------------------------------
-r11477 | vlefevre | 2017-05-15 15:27:29 +0000 (Mon, 15 May 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tcheck.c
+	[tests/thypot.c] another fix...
 
-[tests/tcheck.c] Renamed "ERROR" macro (macro name reserved by ISO C
-when <errno.h> is included) to "PRINT_ERROR".
-------------------------------------------------------------------------
-r11476 | vlefevre | 2017-05-15 15:19:11 +0000 (Mon, 15 May 2017) | 8 lines
-Changed paths:
-   M /trunk/src/jn.c
-   M /trunk/src/mpfr-impl.h
-   M /trunk/tests/mpfr-test.h
-   M /trunk/tests/tabs.c
-   M /trunk/tests/tagm.c
-   M /trunk/tests/tasin.c
-   M /trunk/tests/tatan.c
-   M /trunk/tests/terf.c
-   M /trunk/tests/tgamma.c
-   M /trunk/tests/tmul_2exp.c
-   M /trunk/tests/tpow_all.c
-   M /trunk/tests/tsin_cos.c
-   M /trunk/tests/tstckintc.c
-   M /trunk/tests/tstrtofr.c
+	[tests/thypot.c] fixed bug20171221()
 
-Do not define macro names starting with "SIG" (+ uppercase letter)
-as they are reserved when <signal.h> is included (ISO C, 7.31.7),
-which happens to be the case in tests/tests.c, which also includes
-tests/mpfr-test.h and src/mpfr-impl.h indirectly.
-  * src/mpfr-impl.h, tests/mpfr-test.h: renamed macros:
-      SIGN → VSIGN
-      SIGN_RAND → RAND_SIGN
-  * {src,tests}/*.{c,h}: updated the names in the use of these macros.
-------------------------------------------------------------------------
-r11475 | vlefevre | 2017-05-15 14:53:04 +0000 (Mon, 15 May 2017) | 2 lines
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[tests/thypot.c] new failing test
 
-[tools/mpfrlint] Added a comment about the definition of reserved
-identifiers (in particular, macro names).
-------------------------------------------------------------------------
-r11474 | vlefevre | 2017-05-15 14:47:06 +0000 (Mon, 15 May 2017) | 1 line
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[src/lngamma.c] fixed bug when u=0 in case z0 < 1
+	[tests/tlngamma.c] fixed test case which was wrong
 
-[tools/mpfrlint] Detect the definition of reserved macro names.
-------------------------------------------------------------------------
-r11473 | vlefevre | 2017-05-15 14:20:37 +0000 (Mon, 15 May 2017) | 4 lines
-Changed paths:
-   M /trunk/src/bernoulli.c
+2017-12-20  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/bernoulli.c] Changed isprime to is_prime in order to avoid obscure
-problems if <ctype.h> is added to mpfr-impl.h in the future (or if this
-function is made external). See ISO C "Future library directions",
-Clause 7.31.2 "Character handling <ctype.h>".
-------------------------------------------------------------------------
-r11472 | vlefevre | 2017-05-12 13:01:17 +0000 (Fri, 12 May 2017) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[tests/tlngamma.c] added test for new failure
 
-[src/mpfr-impl.h] Improved comments about assertions and MPFR_ASSUME().
-------------------------------------------------------------------------
-r11471 | vlefevre | 2017-05-09 15:33:20 +0000 (Tue, 09 May 2017) | 2 lines
-Changed paths:
-   M /trunk/INSTALL
+	[src/lngamma.c] fixed bug found in previous commit
 
-[INSTALL] Mention the problem when almost all the tests fails with a
-message "Incorrect MPFR version! ...".
-------------------------------------------------------------------------
-r11470 | vlefevre | 2017-05-09 13:02:22 +0000 (Tue, 09 May 2017) | 3 lines
-Changed paths:
-   M /trunk/tests/tl2b.c
-   M /trunk/tests/tpow_all.c
+	[tests/tlngamma.c] added failing test with mpfr-4.0.0-rc2
 
-Increase the buffer sizes even more, and added a comment. This may
-be better in case of quick future changes (possibly for debugging),
-without checking carefully. For the tests, optimal code is useless.
-------------------------------------------------------------------------
-r11469 | zimmerma | 2017-05-09 10:47:36 +0000 (Tue, 09 May 2017) | 3 lines
-Changed paths:
-   M /trunk/tests/tl2b.c
-   M /trunk/tests/tpow_all.c
+2017-12-20  Vincent Lefèvre  <vincent at vinc17.net>
 
-fixed bugs found by gcc 7.1.0 (-Werror=format-overflow=)
-[VL] The MPFR code was correct. This is actually a bug in GCC:
-  https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79257
-------------------------------------------------------------------------
-r11468 | vlefevre | 2017-05-09 09:11:57 +0000 (Tue, 09 May 2017) | 1 line
-Changed paths:
-   M /trunk/doc/FAQ.html
+	Updated version to 4.1.0-dev again.
 
-[doc] Updated FAQ.html with update-faq.
-------------------------------------------------------------------------
-r11461 | vlefevre | 2017-05-05 08:17:09 +0000 (Fri, 05 May 2017) | 6 lines
-Changed paths:
-   M /trunk/tools/mbench/timp.h
+	Updated version to 4.0.0-rc2 for an attempt to replace the 4.0 branch.
 
-[tools/mbench/timp.h] Updated TIMP_MEASURE() to handle the case where
-the return value is 0: this probably means that timp_overhead was too
-large and incorrect. In this case, TIMP_OVERHEAD() is called again to
-recompute timp_overhead and the timing is redone.
-Note: if we do not call TIMP_OVERHEAD() again, then TIMP_MEASURE()
-loops indefinitely, meaning that timp_overhead was really too large.
-------------------------------------------------------------------------
-r11460 | vlefevre | 2017-05-05 07:42:06 +0000 (Fri, 05 May 2017) | 1 line
-Changed paths:
-   M /trunk/tools/mbench/timp.h
+	[src/fma.c] Minor improvements. Added an assert.
 
-[tools/mbench/timp.h] Comment at the wrong place. Fixed.
-------------------------------------------------------------------------
-r11459 | vlefevre | 2017-05-05 07:40:54 +0000 (Fri, 05 May 2017) | 1 line
-Changed paths:
-   M /trunk/tools/mbench/timp.h
+	[src/tanh.c] GNU coding style.
 
-[tools/mbench/timp.h] Added a comment about r11458.
-------------------------------------------------------------------------
-r11458 | vlefevre | 2017-05-04 17:07:27 +0000 (Thu, 04 May 2017) | 1 line
-Changed paths:
-   M /trunk/tools/mbench/timp.h
+	[src/mul.c] Reindentation.
 
-[tools/mbench/timp.h] Fixed overflows on unsigned arithmetic.
-------------------------------------------------------------------------
-r11457 | vlefevre | 2017-05-04 16:56:59 +0000 (Thu, 04 May 2017) | 2 lines
-Changed paths:
-   M /trunk/tools/mbench/mfv5.h
+	[src/exp2.c] Replaced two MPFR_ASSERTN by MPFR_STAT_STATIC_ASSERT.
 
-[tools/mbench/mfv5.h] Increased values from 2^60-1 to 2^64-1
-(it is possible to get more than 2^60-1 cycles in practice!).
-------------------------------------------------------------------------
-r11452 | vlefevre | 2017-05-02 14:28:40 +0000 (Tue, 02 May 2017) | 1 line
-Changed paths:
-   M /trunk/src/gamma.c
+2017-12-19  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/gamma.c] Clarified proof for tiny arguments again.
-------------------------------------------------------------------------
-r11451 | vlefevre | 2017-05-02 14:07:25 +0000 (Tue, 02 May 2017) | 1 line
-Changed paths:
-   M /trunk/src/gamma.c
+	[src/exp2.c] Fixed the double rounding problem in an underflow case,
+	triggered by the test added in r12017.
 
-[src/gamma.c] Clarified proof for tiny arguments.
-------------------------------------------------------------------------
-r11450 | vlefevre | 2017-05-02 12:38:02 +0000 (Tue, 02 May 2017) | 3 lines
-Changed paths:
-   M /trunk/src/gamma.c
+	[tests/texp2.c] Added test of underflow in MPFR_RNDN with exact value
+	close to 2^(emin-2). Currently fails due to double rounding.
 
-[src/gamma.c] In the proof for tiny arguments:
-  * Simplification suggested by Paul.
-  * Attempt to clarify the end.
-------------------------------------------------------------------------
-r11449 | zimmerma | 2017-05-02 09:23:25 +0000 (Tue, 02 May 2017) | 2 lines
-Changed paths:
-   M /trunk/tools/mbench/timp.h
+	[tests/tdiv.c] Added new non-regression test: the was the real cause of
+	the ttanh failure in r11993 without the tanh.c fix in this same commit.
+	But this mpfr_div was fixed in r12002.
 
-added comment
+	[doc/mpfr.texi] Added a comment about a bug/limitation in makeinfo 5.2.
 
-------------------------------------------------------------------------
-r11448 | zimmerma | 2017-05-02 08:10:53 +0000 (Tue, 02 May 2017) | 2 lines
-Changed paths:
-   M /trunk/tools/mbench/timp.h
+	[doc/mpfr.texi] Improved svar macro for nottex, in case it is used
+	in the future.
 
-added reference for mbench (rdtsc vs rdtscp)
+	[doc/mpfr.texi] Define svar even for nottex, though it is not used
+	(attempt to avoid a failure with makeinfo 5.2).
 
-------------------------------------------------------------------------
-r11447 | vlefevre | 2017-04-28 15:41:36 +0000 (Fri, 28 Apr 2017) | 2 lines
-Changed paths:
-   M /trunk/src/gamma.c
+2017-12-19  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/gamma.c] Tiny arguments: corrected a typo and added a TODO
-(one might get a better condition).
-------------------------------------------------------------------------
-r11446 | vlefevre | 2017-04-28 15:19:16 +0000 (Fri, 28 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/src/gamma.c
+	[src/fma.c] fixed bug in mpfr_fma
+	[tests/tfma.c] added non-regression test
 
-[src/gamma.c] Corrections in a proof for tiny arguments. Added a TODO.
-------------------------------------------------------------------------
-r11445 | vlefevre | 2017-04-27 12:00:50 +0000 (Thu, 27 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+2017-12-19  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/README.dev] Update about the MPFR_GENERIC_ABI macro.
-------------------------------------------------------------------------
-r11444 | vlefevre | 2017-04-27 11:45:24 +0000 (Thu, 27 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/src/sqr.c
+	[src/exp2.c] Update concerning the underflow/overflow cases.
+	Still incomplete.
 
-[src/sqr.c] Corrected a comment.
-------------------------------------------------------------------------
-r11443 | vlefevre | 2017-04-27 11:44:22 +0000 (Thu, 27 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/src/sqrt.c
+	[doc/mpfr.texi] Updated a comment.
 
-[src/sqrt.c] Blank line like in add1sp.c, sub1sp.c, etc.
-------------------------------------------------------------------------
-r11442 | vlefevre | 2017-04-27 11:42:50 +0000 (Thu, 27 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/src/sqr.c
+	[doc]
+	  * texinfo.tex: update to the latest version 2017-12-18.20, which
+	    reverts the change done in 2017-12-01.13 attempting to support
+	    @var with script font size (e.g. in exponent); but this change
+	    didn't work correctly.
+	  * mpfr.texi: introduced a @svar macro to handle this case. It
+	    currently disables the use of @var, the other workaround being
+	    worse.
 
-[src/sqr.c] Blank lines and comment like in add1sp.c, sub1sp.c, etc.
-------------------------------------------------------------------------
-r11441 | vlefevre | 2017-04-27 11:38:51 +0000 (Thu, 27 Apr 2017) | 3 lines
-Changed paths:
-   M /trunk/src/mul.c
+2017-12-18  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mul.c] Like in add1sp.c and sub1sp.c, do not define the specific
-functions for low precision if MPFR_GENERIC_ABI is defined (they are
-not called in such a case).
-------------------------------------------------------------------------
-r11440 | vlefevre | 2017-04-27 11:31:50 +0000 (Thu, 27 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/src/sub1sp.c
+	Removed trailing whitespace.
 
-[src/sub1sp.c] Added blank lines for readability (like in add1sp.c).
-------------------------------------------------------------------------
-r11439 | vlefevre | 2017-04-27 11:12:24 +0000 (Thu, 27 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/tools/mbench/timp.h
+	[doc/algorithms.tex,src/tanh.c] Fixed the bound, in particular from
+	the recent improvements in the error analysis.
 
-s/interruption/interrupt/
-------------------------------------------------------------------------
-r11438 | vlefevre | 2017-04-27 09:23:51 +0000 (Thu, 27 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/tools/mbench/Makefile
-   M /trunk/tools/mbench/timp.h
+2017-12-18  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[mbench] Updated copyright years. Added a comment.
-------------------------------------------------------------------------
-r11437 | zimmerma | 2017-04-27 08:22:31 +0000 (Thu, 27 Apr 2017) | 2 lines
-Changed paths:
-   M /trunk/tools/mbench/Makefile
-   M /trunk/tools/mbench/timp.h
+	[src/mul.c] we should compare the smaller size and not the larger one to
+		    MPFR_MUL_THRESHOLD or MPFR_SQR_THRESHOLD for Mulders' short product
 
-better detection of rdtscp
+	[src/mul.c] with Mulders', convert RNDF to RNDZ
+	[tests/tmul_d.c] added a non-regression test
 
-------------------------------------------------------------------------
-r11436 | vlefevre | 2017-04-18 17:18:54 +0000 (Tue, 18 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+2017-12-18  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr-impl.h] Updated a comment, with reference to GCC bug 80454.
-------------------------------------------------------------------------
-r11434 | vlefevre | 2017-04-09 13:06:36 +0000 (Sun, 09 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tprintf.c
+	[doc/algorithms.tex] mpfr_tanh: corrected bounds (thanks to Paul).
 
-[tests/tprintf.c] Avoid integer overflow from r11411 with 32-bit long.
-------------------------------------------------------------------------
-r11433 | vlefevre | 2017-04-07 15:15:34 +0000 (Fri, 07 Apr 2017) | 2 lines
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[doc/algorithms.tex] mpfr_tanh: detailed some inequalities.
 
-[tools/mpfrlint] Updated test to check that the snprintf function (C99)
-is not used.
-------------------------------------------------------------------------
-r11430 | vlefevre | 2017-04-07 14:52:12 +0000 (Fri, 07 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2017-12-18  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/mpfr.texi] Corrected an English error.
-------------------------------------------------------------------------
-r11429 | vlefevre | 2017-04-07 13:59:03 +0000 (Fri, 07 Apr 2017) | 3 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[src/div.c] fixed bug in mpfr_div2_approx()
+	[tests/tdiv.c] added non-regression test
+	[tests/ttan.c] added test triggering bug in mpfr_div2_approx()
 
-[src/vasprintf.c] Fixed bug triggered by the test added in r11428:
-the size field of struct printf_spec must have type size_t, not int,
-because the size argument of mpfr_snprintf has type size_t.
-------------------------------------------------------------------------
-r11428 | vlefevre | 2017-04-07 13:53:58 +0000 (Fri, 07 Apr 2017) | 3 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+2017-12-18  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tsprintf.c] Added a test that fails on 64-bit machines
-(4-byte int, 8-byte size_t), due to the use of mpfr_snprintf
-with required size = (size_t) UINT_MAX + 1.
-------------------------------------------------------------------------
-r11427 | vlefevre | 2017-04-07 08:18:47 +0000 (Fri, 07 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[doc/algorithms.tex] mpfr_tanh: resolved both FIXME's.
 
-[src/vasprintf.c] Minor changes.
-------------------------------------------------------------------------
-r11426 | vlefevre | 2017-04-07 08:09:46 +0000 (Fri, 07 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[doc/algorithms.tex] mpfr_tanh: corrected a part of the error analysis
+	(2^k+4 ≤ |theta_4|^(−1/2) was not necessarily true, since theta_4 can
+	be very small). As a consequence, the lemma can be simplified/improved
+	(first FIXME). Added a second FIXME on a condition that is not checked.
 
-[src/vasprintf.c] Comment re-indentation.
-------------------------------------------------------------------------
-r11425 | vlefevre | 2017-04-07 07:21:47 +0000 (Fri, 07 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/src/ubf.c
+	[doc/algorithms.tex] mpfr_tanh: missing absolute value; added a \cdot.
 
-[src/ubf.c] Renamed mpfr_get_zexp to mpfr_init_get_zexp for clarity.
-------------------------------------------------------------------------
-r11424 | vlefevre | 2017-04-06 23:37:51 +0000 (Thu, 06 Apr 2017) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	Removed trailing whitespace.
 
-[src/mpfr-impl.h] Fixed silly typo in MPFR_UBF_CLEAR_EXP() yielding
-either an obscure memory leak or a crash in some mpfr_fmma calls.
-We would really need formal proofs on the code... Or avoid macros.
-------------------------------------------------------------------------
-r11423 | zimmerma | 2017-04-06 17:51:39 +0000 (Thu, 06 Apr 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tfmma.c
+	[doc/algorithms.tex] Added another \cdot for readability.
 
-[tests/tfmma.c] added one test
+2017-12-18  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r11422 | zimmerma | 2017-04-06 17:15:03 +0000 (Thu, 06 Apr 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tfmma.c
+	[src/exp2.c] added FIXME
 
-[tests/tfmma.c] fixed test
+2017-12-18  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11421 | vlefevre | 2017-04-06 17:06:12 +0000 (Thu, 06 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/src/add1.c
+	[doc/algorithms.tex] Minor corrections for hyperbolic tangent function:
+	  * "e" had two different meanings (BTW, the constant e should actually
+	    be written \mathrm{e} everywhere in the document).
+	  * Use \left...\right instead of |...| when it contains an expression
+	    starting with \log (the latter was confusing pdflatex, which added
+	    a spurious space before \log).
+	  * Added some \cdot for better readability.
 
-[src/add1.c] Updated comment about underflow.
-------------------------------------------------------------------------
-r11420 | vlefevre | 2017-04-06 17:01:59 +0000 (Thu, 06 Apr 2017) | 3 lines
-Changed paths:
-   M /trunk/src/add1.c
+2017-12-18  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/add1.c] Handling of UBF and overflow/underflow.
-  * Added a MPFR_ASSERTD related to the overflow code.
-  * Bug fix: handle underflow, possible if UBF input(s).
-------------------------------------------------------------------------
-r11419 | zimmerma | 2017-04-06 16:02:27 +0000 (Thu, 06 Apr 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tfmma.c
+	[src/exp2.c] fixed bug near underflow
+	[tests/texp2.c] added non-regression test
 
-[tests/tfmma.c] added another test (currently fails)
+	[tests/ttanh.c] added test for bug in mpfr_tanh
+	[doc/algorithms.tex] fixed error analysis for mpfr_tanh
+	[src/tanh.c] fixed error analysis
+	Note after r12016: Even though mpfr_tanh was incorrect, the failure
+	of the test added in ttanh.c was actually *only* due to a bug in the
+	mpfr_div code specific to the trunk (fixed in r12002), i.e. this was
+	not a non-regression test for the mpfr_tanh bug itself (in particular,
+	this test does not introduce a failure in the 3.1 branch, which still
+	has the same incorrect mpfr_tanh code but a correct mpfr_div).
 
-------------------------------------------------------------------------
-r11418 | vlefevre | 2017-04-06 15:24:33 +0000 (Thu, 06 Apr 2017) | 2 lines
-Changed paths:
-   M /trunk/src/sub1.c
+2017-12-18  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sub1.c] Bug fix: underflow was not detected in the case cancel = 0
-with UBF numbers. At the same time, refactored the related code a bit.
-------------------------------------------------------------------------
-r11417 | vlefevre | 2017-04-06 13:45:27 +0000 (Thu, 06 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/tests
+	Updated version to 4.1.0-dev again.
 
-[tests] Added tbeta to svn:ignore property.
-------------------------------------------------------------------------
-r11416 | vlefevre | 2017-04-06 13:24:35 +0000 (Thu, 06 Apr 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2017-12-17  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] Formatting of the mpfr_can_round example for 80-column
-terminals + GNU coding style.
-------------------------------------------------------------------------
-r11415 | vlefevre | 2017-04-06 12:53:23 +0000 (Thu, 06 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tfmma.c
+	Updated version to 4.0.0-rc2 for an attempt to replace the 4.0 branch.
 
-[tests/tfmma.c] Updated comment about bug20170405 (fixed in r11414).
-------------------------------------------------------------------------
-r11414 | vlefevre | 2017-04-06 12:47:03 +0000 (Thu, 06 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/src/sub1.c
+	ChangeLog update with "LC_ALL=en_US.UTF8 TZ=UTC svn log -rHEAD:0 -v".
 
-[src/sub1.c] Also corrected the comment about overflow detection.
-------------------------------------------------------------------------
-r11413 | vlefevre | 2017-04-06 12:45:14 +0000 (Thu, 06 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/src/sub1.c
+2017-12-17  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/sub1.c] Really fixed overflow detection (r11412 is broken).
-------------------------------------------------------------------------
-r11412 | vlefevre | 2017-04-06 12:43:01 +0000 (Thu, 06 Apr 2017) | 4 lines
-Changed paths:
-   M /trunk/src/sub1.c
+	[src/add1sp.c] fix bug in mpfr_add1sp3() in case d=GMP_NUMB_BITS
 
-[src/sub1.c] Fixed/improved UBF cases.
-  * Added an assertion (usual MPFR limitation with huge precisions,
-    affecting 32-bit ABI only in practice).
-  * Fixed overflow detection.
-------------------------------------------------------------------------
-r11411 | vlefevre | 2017-04-06 11:56:58 +0000 (Thu, 06 Apr 2017) | 3 lines
-Changed paths:
-   M /trunk/tests/tprintf.c
+2017-12-17  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tprintf.c] In check_long_string(), which is called when
-MPFR_CHECK_LARGEMEM is defined, increase tests_memory_limit if need be
-in order to avoid an obvious failure due to insufficient memory.
-------------------------------------------------------------------------
-r11410 | vlefevre | 2017-04-06 11:47:59 +0000 (Thu, 06 Apr 2017) | 3 lines
-Changed paths:
-   M /trunk/tests/memory.c
+	[tests/tadd1sp.c] added test for new bug (still to be fixed):
 
-[tests/memory.c] Write all error messages to stderr in order to make
-sure that they remain visible when the standard output is redirected
-(e.g. in tprintf). Rewrote the messages in a consistent way.
-------------------------------------------------------------------------
-r11409 | vlefevre | 2017-04-06 11:20:31 +0000 (Thu, 06 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tfmma.c
+	Seed GMP_CHECK_RANDOMIZE=1514385177 (include this in bug reports)
+	add1 & add1sp return different values for MPFR_RNDN
+	Prec_a = 137, Prec_b = 137, Prec_c = 137
+	B = 0.11111111111111111111111111111111111111111111111111111111111111111111000000000000000000000000000000000000000000000000000000000000000000000E-66
+	C = 0.11111111111111111111111111111111111111111111111111111111111111111000000000000000000000000000000000000000000000000000000000000000000110000E-2
 
-[tests/tfmma.c] Fixed return type of test added in r11407.
-------------------------------------------------------------------------
-r11408 | vlefevre | 2017-04-06 11:18:53 +0000 (Thu, 06 Apr 2017) | 3 lines
-Changed paths:
-   M /trunk/tests/tinits.c
+	add1  : 0.10000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000001000E-1
+	add1sp: 0.11111111111111111111111111111111111111111111111111111111111111111000000000000000000000000000000000000000000000000000000000000000000010000E-2
+	Inexact sp = 0 | Inexact = 0
+	Flags sp = 8 | Flags = 8
+	add1sp.c:89: MPFR assertion failed: 0
 
-[tests/tinits.c] When MPFR_CHECK_LARGEMEM is defined, increase
-tests_memory_limit if need be in order to avoid an obvious failure
-due to insufficient memory.
-------------------------------------------------------------------------
-r11407 | zimmerma | 2017-04-06 11:00:38 +0000 (Thu, 06 Apr 2017) | 3 lines
-Changed paths:
-   M /trunk/tests/tfmma.c
+2017-12-15  Vincent Lefèvre  <vincent at vinc17.net>
 
-added test that triggers an error
-(see https://sympa.inria.fr/sympa/arc/mpfr/2017-04/msg00016.html)
+	[src/root.c] Minor comment correction.
 
-------------------------------------------------------------------------
-r11406 | vlefevre | 2017-04-05 12:46:15 +0000 (Wed, 05 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/root.c] Completed fix from r11978, as x=-1 was affected too. Also
+	  added comments explaining that mpfr_root_aux assumes |x| ≠ 1 and why.
+	  Hence the need of a filter on |x| = 1.
+	[tests/troot.c] Added test for x = -1.
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r11405 | vlefevre | 2017-04-05 08:35:18 +0000 (Wed, 05 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tests/troot.c] Replaced mpfr_root by TF (like in the other tests).
 
-[doc/mpfr.texi] More details about errno.
-------------------------------------------------------------------------
-r11404 | vlefevre | 2017-04-04 14:43:40 +0000 (Tue, 04 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+2017-12-14  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/README.dev] Added a paragraph about the use of errno.
-------------------------------------------------------------------------
-r11403 | vlefevre | 2017-04-04 14:19:31 +0000 (Tue, 04 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/root.c] fixed bug when x=1
+	[tests/troot.c] added non-regression test
 
-[doc/mpfr.texi] Details about EOVERFLOW.
-------------------------------------------------------------------------
-r11402 | zimmerma | 2017-04-04 06:22:46 +0000 (Tue, 04 Apr 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tstrtofr.c
+2017-12-14  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tstrtofr.c] added test in bug20161217()
+	[tests/tsub1sp.c] Corrected a type. And mpfr_equal_p being a predicate
+	function, it's better to use Boolean operators on it.
 
-------------------------------------------------------------------------
-r11401 | vlefevre | 2017-04-03 13:04:23 +0000 (Mon, 03 Apr 2017) | 2 lines
-Changed paths:
-   M /trunk/TODO
+2017-12-14  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[TODO] Update about functions returning a native floating-point value
-and underflow/overflow.
-------------------------------------------------------------------------
-r11400 | vlefevre | 2017-04-03 11:46:48 +0000 (Mon, 03 Apr 2017) | 2 lines
-Changed paths:
-   M /trunk/src/atanh.c
+	[tests/tsub1sp.c] added a generic test for bug20171213()
 
-[src/atanh.c] Removed comment giving the "optimal" working precision
-(I do not see any proof in algorithms.tex, and it seems incorrect).
-------------------------------------------------------------------------
-r11399 | vlefevre | 2017-04-03 11:28:24 +0000 (Mon, 03 Apr 2017) | 2 lines
-Changed paths:
-   M /trunk/TODO
-   M /trunk/src/log1p.c
+2017-12-14  Vincent Lefèvre  <vincent at vinc17.net>
 
-[TODO,src/log1p.c] log1p(x) on small x should also be improved instead
-of computing log(1+x).
-------------------------------------------------------------------------
-r11398 | vlefevre | 2017-04-03 09:16:27 +0000 (Mon, 03 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/TODO
-   M /trunk/src/atanh.c
+	[src/{mul.c,sqr.c}] Minor changes, making code similar to sub1sp.c.
+	Checked with
+	  grep -A 1 'sb *>>' src/*.c
+	that the bug fixed in r11974 does not occur in other parts of the code.
+	BTW, there is much duplicate code, as shown by the grep output, and
+	using macros could have avoided that, making bugs easier to reproduce
+	(since a same bug would be duplicate several times).
 
-[TODO,src/atanh.c] Suggest a faster formula for atanh(x) on small x.
-------------------------------------------------------------------------
-r11397 | vlefevre | 2017-04-03 09:04:04 +0000 (Mon, 03 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/src/atanh.c
+2017-12-13  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/atanh.c] Cosmetic changes (comments and whitespace).
-------------------------------------------------------------------------
-r11396 | vlefevre | 2017-04-03 08:24:03 +0000 (Mon, 03 Apr 2017) | 1 line
-Changed paths:
-   M /trunk/TODO
+	[src/sub1sp.c] fixed bug in mpfr_sub1sp2()
+	[tests/tsub1sp.c] added non-regression test
 
-[TODO] Update about ERANGE.
-------------------------------------------------------------------------
-r11395 | vlefevre | 2017-03-27 14:57:20 +0000 (Mon, 27 Mar 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tbeta.c
+2017-12-13  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tbeta.c] Fixed a macro (use of mpfr_printf, missing cast).
-------------------------------------------------------------------------
-r11390 | vlefevre | 2017-03-09 10:58:49 +0000 (Thu, 09 Mar 2017) | 1 line
-Changed paths:
-   M /trunk/NEWS
+	[src/mpf2mpfr.h] Added a comment.
 
-[NEWS] Mention how to find the full list of bug fixes.
-------------------------------------------------------------------------
-r11388 | vlefevre | 2017-03-09 09:45:02 +0000 (Thu, 09 Mar 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tstrtofr.c
+2017-12-13  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tstrtofr.c] Updated comments about bug20161217 and bug20170308.
-------------------------------------------------------------------------
-r11386 | vlefevre | 2017-03-09 09:28:47 +0000 (Thu, 09 Mar 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tstrtofr.c
+	[src/mpf2mpfr.h] missing mpf_inits/mpf_clears
 
-[tests/tstrtofr.c] Added comments about bug20161217 and bug20170308.
-------------------------------------------------------------------------
-r11385 | vlefevre | 2017-03-09 01:34:37 +0000 (Thu, 09 Mar 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tstrtofr.c
+	[src/mpfr-gmp.h] redefine __clz_tab also with gmp-build
 
-[tests/tstrtofr.c] Updated comment: bug20170308 checks the same bug
-as bug20161217.
-------------------------------------------------------------------------
-r11384 | vlefevre | 2017-03-09 01:27:39 +0000 (Thu, 09 Mar 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2017-12-12  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r11383 | zimmerma | 2017-03-08 20:58:00 +0000 (Wed, 08 Mar 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tstrtofr.c
+	[configure.ac] Improved error message.
 
-added non-regression test
+	[tests/talloc.c] Added a comment about why talloc requires ISO C99.
 
-------------------------------------------------------------------------
-r11382 | zimmerma | 2017-03-07 14:12:39 +0000 (Tue, 07 Mar 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/mpfr-cvers.h] Removed a useless test for __MPFR_STDC, as one just
+	needs to check whether we have a C99, C11, etc. implementation (if not
+	done via a configure test). Particular incompatibilities with the C90
+	standard should always be checked via a configure test.
 
-[doc/mpfr.texi] results should not depend on machine rounding mode/precision
+	[tests] Added *.exe to svn:ignore property (files from MinGW builds).
 
-------------------------------------------------------------------------
-r11381 | vlefevre | 2017-03-06 10:55:45 +0000 (Mon, 06 Mar 2017) | 1 line
-Changed paths:
-   M /trunk/doc/sum.txt
+2017-12-12  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/sum.txt] Minor corrections.
-------------------------------------------------------------------------
-r11380 | vlefevre | 2017-03-05 02:11:52 +0000 (Sun, 05 Mar 2017) | 1 line
-Changed paths:
-   M /trunk/src/sum.c
+	[tools/timings-mpfr.c] always use clock() [now very accurate under Linux]
 
-[src/sum.c] Added a comment about shiftq.
-------------------------------------------------------------------------
-r11379 | vlefevre | 2017-02-28 11:11:29 +0000 (Tue, 28 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tbeta.c
+2017-12-12  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tbeta.c] C89 compatibility and some code reformatting.
-------------------------------------------------------------------------
-r11378 | vlefevre | 2017-02-28 10:10:44 +0000 (Tue, 28 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/beta.c
+	[tools/timings-mpfr.c] Updated years in copyright notice.
 
-[src/beta.c] Slightly improved comments.
-------------------------------------------------------------------------
-r11377 | vlefevre | 2017-02-28 10:06:10 +0000 (Tue, 28 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/beta.c
+	[tools/timings-mpfr.c] Fixed prototypes.
 
-[src/beta.c] Fixed a bug in reduced exponent range (not detected by
-the current tests).
-------------------------------------------------------------------------
-r11376 | vlefevre | 2017-02-28 10:02:51 +0000 (Tue, 28 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/beta.c
+	[tools/timings-mpfr.c] Added a defined(_MSC_VER). But clock() is
+	standard, so why not always using it?
 
-[src/beta.c] Added a comment for Beta(0,negative integer).
-------------------------------------------------------------------------
-r11375 | vlefevre | 2017-02-28 09:53:31 +0000 (Tue, 28 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/beta.c
+	[doc/README.dev] Correction.
 
-[src/beta.c] Eventually fixed the case z or w is 0 (note: r11374
-did also other unwanted changes, reverted here).
-------------------------------------------------------------------------
-r11374 | vlefevre | 2017-02-28 09:40:01 +0000 (Tue, 28 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/beta.c
+	[doc/README.dev] Made formatting consistent (same as configure --help).
 
-[src/beta.c] Reverted my changes (this was incorrect).
-------------------------------------------------------------------------
-r11373 | vlefevre | 2017-02-28 09:32:01 +0000 (Tue, 28 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/beta.c
+	Completed r11955: There were also DEBUG macros under the "tests"
+	directory. Since such macros can still be useful in case a test failure,
+	replaced them by MPFR_DEBUG to avoid issues with CI builds that define
+	the DEBUG macro. But an environment variable would be a better solution
+	(see MPFR_DEBUG_BADCASES as an example).
 
-[src/beta.c] Fixed special cases.
-------------------------------------------------------------------------
-r11372 | vlefevre | 2017-02-28 09:10:28 +0000 (Tue, 28 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/beta.c
+	[TODO] Removed item on the DEBUG macro (done in r11955).
 
-[src/beta.c] Added comments and some corrections (incomplete) for the
-case "z or w is 0".
-------------------------------------------------------------------------
-r11371 | zimmerma | 2017-02-28 08:06:05 +0000 (Tue, 28 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/beta.c
+2017-12-11  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/beta.c] fixed case z or w is 0
+	DEBUG_TGENERIC -> MPFR_DEBUG_TGENERIC
+	XDEBUG -> MPFR_DISABLE_IEEE_FLOATS
 
-------------------------------------------------------------------------
-r11370 | zimmerma | 2017-02-28 07:11:09 +0000 (Tue, 28 Feb 2017) | 4 lines
-Changed paths:
-   M /trunk/tests/tbeta.c
+	get rid of DEBUG macro (but keep corresponding commands in comment to help
+	understanding of the code and debugging)
 
-[tests/tbeta.c] patch from Cade Brown
-- signed zeros are checked in is_same
-- the case above (summing non-integer negative z, w which sum to a negative integer)
+2017-12-11  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11369 | zimmerma | 2017-02-27 22:00:55 +0000 (Mon, 27 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tests/tget_q.c] Removed trailing whitespace.
 
-[doc/mpfr.texi] added mpfr_beta in "Added Functions"
+2017-12-10  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r11368 | vlefevre | 2017-02-27 15:48:12 +0000 (Mon, 27 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/jn.c
+	[tests/tget_q.c] replaced MPFR_ASSERTN(0) by exit(1)
 
-[src/jn.c] Use MPFR_ADD_PREC.
-------------------------------------------------------------------------
-r11367 | vlefevre | 2017-02-27 15:42:30 +0000 (Mon, 27 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/beta.c
+2017-12-10  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/beta.c] Updated comments; added a FIXME.
-------------------------------------------------------------------------
-r11366 | zimmerma | 2017-02-27 15:10:45 +0000 (Mon, 27 Feb 2017) | 3 lines
-Changed paths:
-   M /trunk/src/jn.c
+	[src/get_q.c] Optimization of r11951 suggested by Trevor Spiteri:
+	https://sympa.inria.fr/sympa/arc/mpfr/2017-12/msg00040.html
 
-[src/jn.c] in case the first Ziv loop failed, take into account the number of
-	   lost bits
+2017-12-09  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r11365 | vlefevre | 2017-02-27 15:06:41 +0000 (Mon, 27 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/beta.c
+	[src/get_q.c] make result of mpfr_get_q in canonical form
+	[tests/tget_q.c] added non-regression test
 
-[src/beta.c] Use MPFR_ARE_SINGULAR.
-------------------------------------------------------------------------
-r11364 | zimmerma | 2017-02-27 14:22:29 +0000 (Mon, 27 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/beta.c
+	[src/lngamma.c] replace call to __gmpfr_ceil_log2 by __gmpfr_int_ceil_log2
 
-[src/beta.c] fix in case z and w are not integers and z+w is a nonpositive integer
+2017-12-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11363 | zimmerma | 2017-02-27 12:07:35 +0000 (Mon, 27 Feb 2017) | 2 lines
-Changed paths:
-   A /trunk/src/odd_p.c
+	[TODO] Rename the DEBUG macro to MPFR_DEBUG?
 
-[src/odd_p.c] new source file
+2017-12-08  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11362 | zimmerma | 2017-02-27 12:07:15 +0000 (Mon, 27 Feb 2017) | 5 lines
-Changed paths:
-   M /trunk/src/Makefile.am
-   M /trunk/src/beta.c
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/pow.c
+	[src/Makefile.am] Also distribute generic/coverage/mparam.h
+	(at least useful for testing the distributed tarballs).
 
-[src/Makefile.am] new file odd_p.c
-[src/beta.c] fixed bug
-[src/mpfr-impl.h] renamed mpfr_is_odd into mpfr_odd_p
-[src/pow.c] moved mpfr_is_odd (renamed mpfr_odd_p) into separate file
+	[doc] Updated FAQ.html with update-faq.
 
-------------------------------------------------------------------------
-r11361 | vlefevre | 2017-02-27 11:10:11 +0000 (Mon, 27 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/beta.c
+	[doc] Updated FAQ.html with update-faq.
 
-[src/beta.c] Added a FIXME (test failure with assertions).
-------------------------------------------------------------------------
-r11360 | vlefevre | 2017-02-27 10:48:32 +0000 (Mon, 27 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/beta.c
+	[doc/README.dev] "To make a release":
+	  * Note that this needs to be done in a branch.
+	  * Swapped (1) and (2), in particular because the coverage might be
+	    different in -dev versions and it is better to give results closer
+	    to the release.
 
-[src/beta.c] Removed an unusual space.
-------------------------------------------------------------------------
-r11359 | vlefevre | 2017-02-27 10:42:30 +0000 (Mon, 27 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tbuildopt.c
+	Updated version to 4.1.0-dev.
 
-[tests/tbuildopt.c] Added calls to tests_start_mpfr and tests_end_mpfr.
-------------------------------------------------------------------------
-r11358 | vlefevre | 2017-02-27 10:35:25 +0000 (Mon, 27 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/tools/mpfrlint
+	ChangeLog update with "LC_ALL=en_US.UTF8 TZ=UTC svn log -rHEAD:0 -v".
 
-[tools/mpfrlint] Added a test to check that the usual test programs
-call tests_start_mpfr and tests_end_mpfr.
-------------------------------------------------------------------------
-r11357 | zimmerma | 2017-02-27 10:27:40 +0000 (Mon, 27 Feb 2017) | 5 lines
-Changed paths:
-   M /trunk/src/beta.c
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/pow.c
-   M /trunk/tests/tbeta.c
+	Moved tests/timings-mpfr.c into directory "tools" as it is not part
+	of the test suite.
 
-[src/beta.c] several fixes
-[src/pow.c] renamed is_odd to mpfr_is_odd, and export it
-[src/mpfr-impl.h] export mpfr_is_odd as internal function
-[tests/tbeta.c] added generic tests
+2017-12-07  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11356 | vlefevre | 2017-02-27 09:43:46 +0000 (Mon, 27 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tbeta.c
+	[src/fpif.c] Removed FIXME about the sign bit of NaN: done in
+	r11910 and r11920 (documentation + tests).
 
-[tests/tbeta.c] Added missing void in prototype.
-------------------------------------------------------------------------
-r11355 | vlefevre | 2017-02-27 09:32:39 +0000 (Mon, 27 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/NEWS
-   M /trunk/src/set.c
+	[src] Replaced some "return 0" by "MPFR_RET (0)" (the generated code
+	is the same as shown by gcc, thanks to an obvious optimization; this
+	is semantically better, which could help provers, and would allow
+	code instrumentation in the future, if need be).
 
-Removed trailing spaces.
-------------------------------------------------------------------------
-r11354 | vlefevre | 2017-02-27 08:30:31 +0000 (Mon, 27 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tbeta.c
+2017-12-06  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tbeta.c] Fixed the usage of MPFR types.
-------------------------------------------------------------------------
-r11353 | vlefevre | 2017-02-27 08:28:03 +0000 (Mon, 27 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tbeta.c
+	got rid of mpz_dump (undocumented in GMP)
 
-[tests/tbeta.c] Minor correction. Added a FIXME and a TODO.
-------------------------------------------------------------------------
-r11352 | zimmerma | 2017-02-27 07:11:05 +0000 (Mon, 27 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tbeta.c
+	[src/mpfr-mini-gmp.c] updated with GMP 6.1.2
 
-[tests/tbeta.c] GNU style and C89 portability
+2017-12-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11351 | zimmerma | 2017-02-27 06:56:40 +0000 (Mon, 27 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/TODO
+	[doc/mpfr.texi] Corrected a Texinfo typography issue.
 
-[TODO] removed beta entry
+	[src/pool.c] Updated description. Corrected copyright years as the
+	pool code itself was introduced in 2014.
 
-------------------------------------------------------------------------
-r11350 | zimmerma | 2017-02-27 06:56:03 +0000 (Mon, 27 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/NEWS
-   M /trunk/doc/mpfr.texi
-   M /trunk/src/Makefile.am
-   M /trunk/src/mpfr.h
-   M /trunk/tests/Makefile.am
+	[tests/timings-mpfr.c] Removed trailing whitespace, untabified,
+	changed GMP_RNDN to MPFR_RNDN.
 
-new function mpfr_beta
+	Cleanup and fixes for the mpz_t pool.
+	  * Split src/free_cache.c to itself and a new source file src/pool.c
+	    containing pool related code.
+	  * src/mpfr-impl.h, src/pool.c: cleanup and fixes. In particular:
+	      - renamed MPFR_MY_MPZ_INIT to MPFR_POOL_NENTRIES;
+	      - no longer use GMP's symbols __gmpz_init, etc. directly;
+	      - improved the condition for mpfr_mpz_init2;
+	      - fixed the condition in mpfr_mpz_clear (we want to consider
+	        the allocated size, not the size of the current number).
+	  * src/Makefile.am: added pool.c.
+	  * src/mpfr.h: added mpfr_free_pool prototype.
+	  * doc/mpfr.texi: updated pool description in "Memory Handling";
+	    new function mpfr_free_pool.
+	  * doc/README.dev: update due to the rename of MPFR_MY_MPZ_INIT.
+	  * NEWS: better announcement of the mpz_t pool.
 
-------------------------------------------------------------------------
-r11349 | zimmerma | 2017-02-27 06:55:23 +0000 (Mon, 27 Feb 2017) | 4 lines
-Changed paths:
-   A /trunk/tests/tbeta.c
+	[doc/mpfr.texi] Small correction concerning the caches.
 
-[tests/tbeta.c] test file for mpfr_beta, contributed by Cade Brown from
-		ChemicalDevelopment (this commit is the file as it was
-		contributed, except the mpfr-test.h include)
+	[doc/mpfr.texi] More details for mpfr_fpif_export and mpfr_fpif_import.
 
-------------------------------------------------------------------------
-r11348 | vlefevre | 2017-02-27 02:25:55 +0000 (Mon, 27 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/beta.c
+2017-12-06  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/beta.c] Portability corrections.
-------------------------------------------------------------------------
-r11347 | zimmerma | 2017-02-26 22:13:00 +0000 (Sun, 26 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/beta.c
+	[timings-mpfr.c] test file for measuring timings (added -p option)
 
-[src/beta.c] fix for exact case beta(1,2^k) for k negative integer
+2017-12-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11346 | zimmerma | 2017-02-26 15:47:17 +0000 (Sun, 26 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/beta.c
+	Updated the remaining www.loria.fr URL's.
 
-[src/beta.c] special values are now implemented (should be reviewed)
+	[doc/algorithms.bib] Updated URL's.
 
-------------------------------------------------------------------------
-r11343 | vlefevre | 2017-02-25 22:52:23 +0000 (Sat, 25 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/TODO
+	[doc/mpfr.texi] References: typography; updated a URL.
 
-[TODO] mpfr_root: replace "obsolete" by "deprecated" (the right word).
-------------------------------------------------------------------------
-r11342 | vlefevre | 2017-02-25 22:46:23 +0000 (Sat, 25 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/TODO
+2017-12-06  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[TODO] Update about rootn.
-------------------------------------------------------------------------
-r11341 | vlefevre | 2017-02-25 22:31:48 +0000 (Sat, 25 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/TODO
+	[mpfr.texi] updated reference to "Modern Computer Arithmetic"
 
-[TODO] Added some propositions about rootn.
-------------------------------------------------------------------------
-r11340 | zimmerma | 2017-02-25 13:58:10 +0000 (Sat, 25 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/root.c
+	[free_cache.c] limit the size of objects in the mpz_t pool
 
-[src/root.c] added comment
+2017-12-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11339 | zimmerma | 2017-02-25 07:21:08 +0000 (Sat, 25 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/algorithms.tex
+	[src/free_cache.c] Added a comment for the mpz_t pool, and a suggestion
+	for mpfr_mpz_clear so that the pool will not take too much memory while
+	keeping a possible benefit for very small precision.
 
-added reference
+2017-12-05  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11338 | vlefevre | 2017-02-23 13:00:06 +0000 (Thu, 23 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/beta.c
+	[src/mpfr.h] Made box around code examples for clarity and grep.
 
-[src/beta.c] Call mpfr_check_range as usual.
-------------------------------------------------------------------------
-r11337 | vlefevre | 2017-02-23 12:18:10 +0000 (Thu, 23 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/beta.c
+	[doc/mpfr.texi] For mpfr_fpif_export: the sign of a NaN is stored.
+	[tests/tfpif.c] Test the sign of NaN (in particular).
 
-[src/beta.c] Extended the exponent range for the generic case.
-------------------------------------------------------------------------
-r11336 | vlefevre | 2017-02-23 12:15:45 +0000 (Thu, 23 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/beta.c
+	[doc/mpfr.texi] Updated references.
 
-[src/beta.c] Added a comment.
-------------------------------------------------------------------------
-r11335 | vlefevre | 2017-02-23 12:14:19 +0000 (Thu, 23 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/beta.c
+	[doc/mpfr.texi] Update about 0 of type without signed zeros, as in
+	mpfr_div_ui.
 
-[src/beta.c] Various code improvement / fixes.
-------------------------------------------------------------------------
-r11334 | vlefevre | 2017-02-23 11:49:35 +0000 (Thu, 23 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/beta.c
+	[doc/mpfr.texi] Document the behavior of mpfr_ui_pow and mpfr_ui_pow_ui
+	on the integer 0 (0 does not have a sign here).
 
-[src/beta.c] Added a FIXME.
-------------------------------------------------------------------------
-r11333 | zimmerma | 2017-02-23 11:10:39 +0000 (Thu, 23 Feb 2017) | 3 lines
-Changed paths:
-   M /trunk/src/Makefile.am
-   A /trunk/src/beta.c
-   M /trunk/src/mpfr.h
+2017-12-05  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/beta.c] added beta function (work in progress, not yet fully implemented,
-	     and not tested)
+	[doc/mini-gmp] added information about result of "make check"
 
-------------------------------------------------------------------------
-r11332 | zimmerma | 2017-02-21 14:06:56 +0000 (Tue, 21 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/fmma.c
-   M /trunk/src/set.c
-   M /trunk/src/ubf.c
+2017-12-05  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/fmma.c] speedup of mpfr_fmma and mpfr_fmms
+	[src/mpfr-gmp.h] Removed old code for pre-GMP-5 versions.
 
-------------------------------------------------------------------------
-r11331 | zimmerma | 2017-02-21 12:40:52 +0000 (Tue, 21 Feb 2017) | 3 lines
-Changed paths:
-   M /trunk/src/fma.c
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/set.c
+	[src/urandomb.c] Removed an obsolete "#if __MPFR_GMP(5,0,0)" as we now
+	require GMP 5.0+ and mp_bitcnt_t is also defined by mini-gmp.
 
-[src/fma.c] speedup of mpfr_fma when all operands have the same precision
-	    (less than one full limb)
+	[src/mpfr-gmp.h] Removed the code that defined mpn_copyi and mpn_copyd
+	macros for GMP < 5, since MPFR now requires GMP 5.0+ and these functions
+	are also defined by mini-gmp (these macros were used by mini-gmp only
+	because mini-gmp does not define GMP_VERSION).
 
-------------------------------------------------------------------------
-r11330 | vlefevre | 2017-02-21 10:28:04 +0000 (Tue, 21 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/NEWS
+	[src/mpfr-gmp.h] Missing parentheses around parameters in mpn_copyi
+	and mpn_copyd macro definitions.
 
-[NEWS] Note that the position of "const" in the mpfr_sum prototype
-has been fixed (in case writers of interfaces for MPFR use that).
-------------------------------------------------------------------------
-r11328 | vlefevre | 2017-02-21 09:44:35 +0000 (Tue, 21 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/get_d64.c
-   M /trunk/src/set_d64.c
+2017-12-05  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-"a IEEE 754r decimal64 float" → "an IEEE 754-2008 decimal64 float".
-------------------------------------------------------------------------
-r11327 | zimmerma | 2017-02-20 18:03:00 +0000 (Mon, 20 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/fma.c
+	fixed bug in replacement function for copyi and copyd (found with mini-gmp)
 
-[src/fma.c] speedup mpfr_fma for 1 limb
+	add --disable-shared for mini-gmp (not tested yet with dynamic linking)
 
-------------------------------------------------------------------------
-r11326 | zimmerma | 2017-02-20 18:01:15 +0000 (Mon, 20 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/fms.c
+2017-12-05  Vincent Lefèvre  <vincent at vinc17.net>
 
-754R -> 754-2008
+	[src/mpfr.h] Explain how to avoid the "... is deprecated" warning when
+	testing a deprecated function.
 
-------------------------------------------------------------------------
-r11325 | vlefevre | 2017-02-20 02:36:50 +0000 (Mon, 20 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/sqrt.c
+	[doc/README.dev] Removed a -Wno-error=deprecated-declarations as
+	the specific warnings are now avoided (r11896).
 
-Removed trailing spaces.
-------------------------------------------------------------------------
-r11324 | vlefevre | 2017-02-20 02:32:10 +0000 (Mon, 20 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	Disable the "deprecated" attribute of deprecated functions *only* for
+	the tests of these functions, to avoid the corresponding warnings.
 
-[src/vasprintf.c] Solved the FIXME for %g on easy cases.
-------------------------------------------------------------------------
-r11323 | vlefevre | 2017-02-17 12:54:47 +0000 (Fri, 17 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/zeta.c
+	Removed trailing whietespace.
 
-[src/zeta.c] mpfr_reflection_overflow: reverted r11322 as the rounding
-direction was correct; it was a comment that was incorrect, now fixed.
-------------------------------------------------------------------------
-r11322 | vlefevre | 2017-02-17 12:47:41 +0000 (Fri, 17 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/zeta.c
+2017-12-05  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/zeta.c] mpfr_reflection_overflow: fixed a rounding direction.
-------------------------------------------------------------------------
-r11321 | vlefevre | 2017-02-17 12:39:56 +0000 (Fri, 17 Feb 2017) | 5 lines
-Changed paths:
-   M /trunk/src/zeta.c
+	fixed compiler warnings with mini-gmp
 
-[src/zeta.c] Improvements of mpfr_reflection_overflow:
-  * Moved identical parts of the code at the beginning of if/else blocks
-    as a single part before the "if".
-  * When the rounding mode doesn't matter (exact result), use MPFR_RNDN.
-  * Updated comments (making them more consistent at the same time).
-------------------------------------------------------------------------
-r11320 | zimmerma | 2017-02-16 19:16:58 +0000 (Thu, 16 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/zeta.c
+2017-12-04  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/zeta.c] added more comments for the overflow case
+	Simplified the use of MPFR_USE_FILE since <stdio.h> (<cstdio> for C++)
+	is unconditionally included.
 
-------------------------------------------------------------------------
-r11319 | vlefevre | 2017-02-14 15:37:03 +0000 (Tue, 14 Feb 2017) | 3 lines
-Changed paths:
-   M /trunk/doc/sum.txt
-   M /trunk/src/sum.c
+2017-12-04  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/sum.c] Added a note about why one uses "const mpfr_ptr *x" in the
-  prototypes instead of "const mpfr_srcptr *x" (old info from r5381).
-[doc/sum.txt] Fixed the const position (see r11316) and added this note.
-------------------------------------------------------------------------
-r11318 | vlefevre | 2017-02-14 11:57:11 +0000 (Tue, 14 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/mpfr.h
+	make compilation work again (make + make check) with mini-gmp
 
-[src/{mpfr-impl.h,mpfr.h}] Code reformatting and other cosmetic changes.
-------------------------------------------------------------------------
-r11317 | vlefevre | 2017-02-14 11:30:50 +0000 (Tue, 14 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2017-12-04  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] For mpfr_sum, changed "mpfr_ptr const" to the equivalent
-"const mpfr_ptr" (usual style, less confusing).
-------------------------------------------------------------------------
-r11316 | vlefevre | 2017-02-14 11:28:28 +0000 (Tue, 14 Feb 2017) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr.h
-   M /trunk/src/sum.c
+	Improved portability of the check-gmp-symbols make rule.
 
-For mpfr_sum and its auxiliary functions, moved the const type qualifier
-to the right place (mpfr_ptr *const → const mpfr_ptr *). This bug had
-been introduced in r3642 (2005-06-10).
-------------------------------------------------------------------------
-r11315 | vlefevre | 2017-02-13 17:03:16 +0000 (Mon, 13 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/zeta.c
+	[src/fpif.c] Clarification.
 
-[src/zeta.c] mpfr_reflection_overflow: added comments and FIXME's;
-fixed obvious typos in a comment and the code.
-------------------------------------------------------------------------
-r11314 | vlefevre | 2017-02-13 15:44:56 +0000 (Mon, 13 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/zeta.c
+	[tests]
+	  * tfpif.c: in doit(), also test the negative versions of the numbers.
+	  * tfpif_r1.dat: update.
 
-[src/zeta.c] mpfr_reflection_overflow: typo in a comment.
-------------------------------------------------------------------------
-r11313 | vlefevre | 2017-02-13 12:13:11 +0000 (Mon, 13 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/zeta.c
+	[src] Update about the internal use of mpfr_get_str.
+	  * get_str.c: updated a comment.
+	  * vasprintf.c: added assertions.
 
-[src/zeta.c] Untabified.
-------------------------------------------------------------------------
-r11312 | vlefevre | 2017-02-13 12:11:18 +0000 (Mon, 13 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/zeta.c
+	[doc/mpfr.texi] Updated the month.
 
-[src/zeta.c] mpfr_reflection_overflow: added an assertion and a comment.
-------------------------------------------------------------------------
-r11311 | vlefevre | 2017-02-13 09:37:17 +0000 (Mon, 13 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[src/get_str.c] Corrected a comment.
 
-[src/vasprintf.c] Added a comment in a FIXME.
-------------------------------------------------------------------------
-r11310 | vlefevre | 2017-02-13 09:28:06 +0000 (Mon, 13 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[doc/mpfr.texi] Update about the memory allocation (added references
+	to Section "Memory Handling").
+	(merged changeset r11632 from the 3.1 branch)
 
-[src/vasprintf.c] Added MPFR_ASSERTD's.
-------------------------------------------------------------------------
-r11309 | vlefevre | 2017-02-13 09:17:03 +0000 (Mon, 13 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[doc/mpfr.texi] Update for mpfr_get_str:
+	  * Added a texi comment explaining why m+1 (so that if the mpfr_get_str
+	    implementation is improved, we know whether this is still the case).
+	  * Improved the documentation for the case str = null pointer.
 
-[src/vasprintf.c] Avoid some potential integer overflows.
-------------------------------------------------------------------------
-r11308 | zimmerma | 2017-02-13 09:11:19 +0000 (Mon, 13 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/zeta.c
+2017-12-03  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/zeta.c] improved overflow detection
+	[doc/mpfr.texi] Updated comments about the latest change (r11881).
 
-------------------------------------------------------------------------
-r11307 | vlefevre | 2017-02-13 08:57:06 +0000 (Mon, 13 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[doc/mpfr.texi] Typography fixes for TeX (DVI/PS/PDF) in math mode.
+	  * Corrected the use of \lceil and \rceil.
+	  * Added missing @var, including 2 in exponent, as allowed by
+	    texinfo.tex 2017-12-01.13.
+	  * Removed old comments about Texinfo.
 
-[src/vasprintf.c] Added FIXME's: possible integer overflows.
-------------------------------------------------------------------------
-r11306 | zimmerma | 2017-02-12 08:06:55 +0000 (Sun, 12 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/zeta.c
+	[doc/texinfo.tex] Update to the latest version 2017-12-01.13 from
+	<https://ftp.gnu.org/gnu/texinfo/>.
 
-fix for mpfr_zeta overflow on 32-bit computers
+2017-12-01  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11305 | zimmerma | 2017-02-11 15:26:07 +0000 (Sat, 11 Feb 2017) | 3 lines
-Changed paths:
-   M /trunk/src/sqr.c
+	[acinclude.m4] In r11876, forgot to define MPFR_WANT_DECIMAL_FLOATS in
+	the cross-compiling case.
 
-[src/sqr.c] revert detection of leading bit in sqr_1 and sqr_2
-	    (not clear it is faster)
+	Solved an output issue on AIX due to the use of setbuf() after output
+	in tversion. Indeed, this is disallowed by ISO C.
+	  * doc/README.dev: added a note about tests_start_mpfr and this issue.
+	  * tests/tests.c: moved test_version() after setbuf().
+	  * tests/tversion.c: moved tests_start_mpfr() earlier, before any
+	    printf().
 
-------------------------------------------------------------------------
-r11304 | vlefevre | 2017-02-10 18:25:21 +0000 (Fri, 10 Feb 2017) | 3 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[acinclude.m4] Attempt to fix detection of decimal floats: if _Decimal64
+	is known but does not work, no longer fail when --enable-decimal-float
+	has not been used; just disable decimal floats.
 
-[tests/tsprintf.c] Added a mpfr_snprintf test with a null pointer,
-"%#.*RDg" and a large precision (it currently takes too much memory,
-like the similar ones).
-------------------------------------------------------------------------
-r11303 | vlefevre | 2017-02-10 16:03:47 +0000 (Fri, 10 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
-   M /trunk/tests/tsprintf.c
+	[acinclude.m4] Attempt to fix detection of decimal floats (BID was
+	incorrectly assumed in case of link failure, if ld returned 1, which
+	was observed on powerpc-ibm-aix7.2.0.0 [gcc119.fsffrance.org]).
 
-[src/vasprintf.c] Added a FIXME for %g on easy cases (too much memory).
-[tests/tsprintf.c] Added corresponding tests.
-------------------------------------------------------------------------
-r11302 | vlefevre | 2017-02-09 17:47:38 +0000 (Thu, 09 Feb 2017) | 4 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[src/fpif.c] Updated comments about the format.
 
-[src/vasprintf.c] Fix for mpfr_snprintf with size=0: do not allocate
-a buffer for the output if not needed. This really fixes bug #21056.
-The case size_t < unsigned int could not be solved completely due to
-limitations from the C standard and GMP.
-------------------------------------------------------------------------
-r11301 | vlefevre | 2017-02-09 17:04:03 +0000 (Thu, 09 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+2017-11-30  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sqrt.c] Avoid a warning due to an unused variable with
-MPFR_GENERIC_ABI defined or GMP_NUMB_BITS != 64.
-------------------------------------------------------------------------
-r11300 | vlefevre | 2017-02-09 13:45:53 +0000 (Thu, 09 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/sqrt.c
+	[doc/README.dev] Typo.
 
-[src/sqrt.c] Added MPFR_ASSERTD's from comments.
-------------------------------------------------------------------------
-r11299 | zimmerma | 2017-02-09 12:03:41 +0000 (Thu, 09 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tzeta.c
+	Two fixes for the check-gmp-symbols make rule:
+	  * Use $(COMPILE) instead of $(CC) to get the usual compilation flags
+	    (in particular, the -I flags may be important to find gmp.h and to
+	    get the correct one).
+	  * Run the test only if libmpfr.so exists.
 
-[tests/tzeta.c] interm_overflow -> intermediate_overflow
+	[doc/README.dev] Internal GMP symbols: mention "make check-gmp-symbols".
 
-------------------------------------------------------------------------
-r11298 | vlefevre | 2017-02-09 11:34:52 +0000 (Thu, 09 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/zeta.c
+	[NEWS] Mention "make check-gmp-symbols" (experimental).
 
-[src/zeta.c] Updated a FIXME.
-------------------------------------------------------------------------
-r11297 | zimmerma | 2017-02-09 10:48:50 +0000 (Thu, 09 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/tools/mbench/Makefile
-   M /trunk/tools/mbench/mfv5-mpfr.cc
+	[INSTALL] Added an optional step "make check-gmp-symbols" to check
+	that MPFR does not use GMP internal symbols.
 
-improved detection of fmma and fmms
+	Added comment about the check-gmp-symbols make rule (added in r11865).
 
-------------------------------------------------------------------------
-r11296 | zimmerma | 2017-02-09 10:21:54 +0000 (Thu, 09 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/zeta.c
+	Added check-gmp-symbols make rule to check that MPFR does not use
+	GMP internal symbols.
 
-[src/zeta.c] fixed long-standing failure in tzeta
+	[doc/README.dev] Detailed the note about the list of GMP symbols.
 
-------------------------------------------------------------------------
-r11295 | zimmerma | 2017-02-08 20:55:18 +0000 (Wed, 08 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
-   M /trunk/tests/tsqrt.c
+	[doc/README.dev] Document how to get the list of GMP symbols used
+	by MPFR and how to detect GMP internal symbols used by MPFR.
 
-[src/sqrt.c] fixed a bug, and simplified code (sb=0 implies rb=0)
+	[INSTALL] Added a paragraph about the potential incorrect use of
+	GMP internals.
 
-------------------------------------------------------------------------
-r11294 | vlefevre | 2017-02-08 17:36:48 +0000 (Wed, 08 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+2017-11-29  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/vasprintf.c] Updated FIXME.
-------------------------------------------------------------------------
-r11293 | zimmerma | 2017-02-08 17:22:22 +0000 (Wed, 08 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+	[src/fpif.c] Fixed the sign bug for mpfr_fpif_import.
 
-[src/sqrt.c] new code for prec=GMP_NUMB_BITS
+	[tests/tfpif.c] In doit(), before the call to mpfr_fpif_import(), set
+	the sign of the target to the opposite of the expected sign. Thus, if
+	mpfr_fpif_import forgets to set the sign, this will be detected. And
+	a failure actually occurs now!
 
-------------------------------------------------------------------------
-r11292 | vlefevre | 2017-02-08 17:00:18 +0000 (Wed, 08 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[tests/tfpif.c] For mpfr_fpif_import, check the precision too.
 
-[src/vasprintf.c] Moved the size_t vs int FIXME, with details added.
-------------------------------------------------------------------------
-r11291 | vlefevre | 2017-02-08 16:51:51 +0000 (Wed, 08 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[doc/mpfr.texi,src/fpif.c] For mpfr_fpif_import, in case of failure,
+	the argument x is either unchanged or set to NaN, to make sure that
+	x has valid contents (otherwise this could yield erratic behavior).
 
-[src/vasprintf.c] Added a MPFR_ASSERTN for security.
-------------------------------------------------------------------------
-r11290 | vlefevre | 2017-02-08 16:44:16 +0000 (Wed, 08 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[src/fpif.c] For mpfr_fpif_import, replaced an assertion by a failure
+	(since the full format is not described in the manual and MPFR cannot
+	currently generate such a case, this is OK).
 
-[src/vasprintf.c] Added a FIXME for the case size_t < unsigned int.
-------------------------------------------------------------------------
-r11289 | vlefevre | 2017-02-08 16:34:31 +0000 (Wed, 08 Feb 2017) | 4 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[tests/tfpif_r1.dat] Fixed an obvious error (incorrect sign of 0).
 
-[src/vasprintf.c] Solved the r11288 FIXME, introducing new ones
-with a more visible failure. Not fixed yet because there seems
-to be another issue (already present at the beginning in r4993),
-which should be considered first.
-------------------------------------------------------------------------
-r11288 | vlefevre | 2017-02-08 16:00:28 +0000 (Wed, 08 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[tests/tfpif.c] Output more information in case of error.
 
-[src/vasprintf.c] Added a FIXME (related to the cause of the failure).
-------------------------------------------------------------------------
-r11287 | vlefevre | 2017-02-08 15:44:53 +0000 (Wed, 08 Feb 2017) | 7 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+2017-11-28  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/vasprintf.c] Added some precondition assertions, as the buffer_cat
-implementation requires that the current buffer position contains \0.
-Note[VL]: tsprintf is still failing with assertions on my machine in
-the 32-bit Linux/x86 ABI, but now on the new precondition instead of
-postcondition. The behavior with size = 0 actually depends on the state
-of uninitialized memory (even in the 64-bit ABI), so that the failures
-may be random; the problem is detected by valgrind.
-------------------------------------------------------------------------
-r11286 | vlefevre | 2017-02-08 15:33:32 +0000 (Wed, 08 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+	[src/fpif.c] Fixed some bugs (though unlikely to occur in practice).
+	Added comments. Minor code improvement.
 
-[src/div.c] Declare variables used by GMP_NUMB_BITS == 64 only in the
-related code.
-------------------------------------------------------------------------
-r11285 | zimmerma | 2017-02-08 15:07:28 +0000 (Wed, 08 Feb 2017) | 3 lines
-Changed paths:
-   M /trunk/src/div.c
-   M /trunk/src/mul.c
+	Got rid of the useless SIZE_MAX macro.
+	  * src/vasprintf.c: replaced SIZE_MAX by (size_t) -1, already used
+	    in some other files.
+	  * acinclude.m4: no longer use gl_SIZE_MAX (from m4/size_max.m4).
+	  * Removed m4/size_max.m4 as it is no longer needed (note that the
+	    definition of SIZE_MAX by this file was unnecessarily complex
+	    and potentially incorrect on some platforms).
 
-[src/mul.c] simplified logic for special code
-[src/div.c] fixed bug in mpfr_div_1n when extra=0
+	[src/fpif.c] Added static assertions in mpfr_fpif_import().
 
-------------------------------------------------------------------------
-r11284 | zimmerma | 2017-02-08 14:28:56 +0000 (Wed, 08 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+	[src/fpif.c] Improved a test (mpfr_regular_p → !MPFR_IS_SINGULAR).
 
-[src/div.c] special code for prec=GMP_NUMB_BITS
+	[src/mpfr-impl.h] Added a note about the use of the MPFR_IS_PURE_*(x)
+	and MPFR_IS_SINGULAR*(x) macros.
 
-------------------------------------------------------------------------
-r11283 | zimmerma | 2017-02-08 14:04:11 +0000 (Wed, 08 Feb 2017) | 3 lines
-Changed paths:
-   M /trunk/src/mul.c
-   M /trunk/src/sqr.c
+2017-11-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sqr.c] new code for p = GMP_NUMB_BITS, and small improvement in mpfr_sqr_1
-[src/mul.c] cosmetic changes
+	[src/fpif.c] Added format description from past mail messages, to be
+	checked in case of change (+ FIXME for NaN). Minor code improvement.
 
-------------------------------------------------------------------------
-r11282 | vlefevre | 2017-02-08 13:28:21 +0000 (Wed, 08 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tsub1sp.c
+	[tests/tfpif.c] Added TODO's (but the failure should be fixed first).
 
-[tests/tsub1sp.c] Fix: C++ compatibility.
-------------------------------------------------------------------------
-r11281 | zimmerma | 2017-02-08 13:17:45 +0000 (Wed, 08 Feb 2017) | 4 lines
-Changed paths:
-   M /trunk/src/add1sp.c
-   M /trunk/src/mul.c
-   M /trunk/src/sub1sp.c
+	[src/fpif.c] Clarified sign variable.
 
-[src/mul.c] added special code for prec=GMP_NUMB_BITS
-[src/add1sp.c] use special code only when MPFR_GENERIC_ABI is not defined
-[src/sub1sp.c] idem as above
+	[tests/tfpif.c] Use SAME_VAL instead of mpfr_cmp. This triggers a bug
+	that was not detected yet.
 
-------------------------------------------------------------------------
-r11280 | vlefevre | 2017-02-08 13:09:44 +0000 (Wed, 08 Feb 2017) | 5 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[tests/tfpif.c] Split the main test function into:
+	  * doit(): keep only the tests that depend on the precisions.
+	  * check_bad(): tests for bad file/data; precisions are not involved.
 
-[src/mpfr-impl.h] Declare the mpfr_vasnprintf_aux prototype (which
-uses va_list) only if <stdarg.h> has been included, otherwise the
-build was failing with GCC in C90 mode under Linux (and could fail
-with other C implementations where this header isn't automatically
-included as a consequence of the inclusion of some other header).
-------------------------------------------------------------------------
-r11279 | zimmerma | 2017-02-08 12:58:43 +0000 (Wed, 08 Feb 2017) | 3 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
-   M /trunk/tests/tsub1sp.c
+	[tests/tfpif.c] Improved a test (NaN checking). Added comments.
 
-[src/sub1sp.c] new function for p=GMP_NUMB_BITS, fixed bug in mpfr_sub1sp3
-[tests/tsub1sp.c] added new tests
+	[tests/tfpif.c] Removed a TODO done in r10326 and r10338.
 
-------------------------------------------------------------------------
-r11278 | vlefevre | 2017-02-08 12:02:40 +0000 (Wed, 08 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	Updated autogen.sh so that doc/texinfo.tex isn't replaced.
 
-[src/vasprintf.c] Fixed bug introduced in r11273.
-------------------------------------------------------------------------
-r11277 | vlefevre | 2017-02-08 11:54:14 +0000 (Wed, 08 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/tools/mpfrlint
+	Added doc/texinfo.tex file from Texinfo 6.5 since the version installed
+	by Automake (via "autoreconf -i" as called by autogen.sh) is obsolete:
+	more than 4 years older than the current version!
 
-[tools/mpfrlint] Updated the "simple mp_limb_t constants" test.
-------------------------------------------------------------------------
-r11276 | vlefevre | 2017-02-08 11:51:37 +0000 (Wed, 08 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/add_ui.c
-   M /trunk/src/div_ui.c
-   M /trunk/src/exp_2.c
-   M /trunk/src/sub_ui.c
-   M /trunk/src/ui_sub.c
+	[doc/mpfr.texi] Updated a comment about a bug in Texinfo.
 
-Made some assertions a bit more readable.
-------------------------------------------------------------------------
-r11275 | vlefevre | 2017-02-08 11:18:51 +0000 (Wed, 08 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tsub1sp.c
+2017-11-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tsub1sp.c] Fixed mpfr_inits2/mpfr_clears sentinel → (mpfr_ptr) 0
-------------------------------------------------------------------------
-r11274 | vlefevre | 2017-02-08 11:13:57 +0000 (Wed, 08 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	[tests/tset_exp.c] Check mpfr_get_exp too (with two additional tests
+	for mpfr_set_exp).
 
-[tests/tsprintf.c] C90 compatibility.
-------------------------------------------------------------------------
-r11273 | zimmerma | 2017-02-08 10:28:58 +0000 (Wed, 08 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
-   M /trunk/tests/tsprintf.c
+	[tests/texceptions.c] Minor improvements.
 
-[src/vasprintf.c] avoid memory allocation for snprintf with size=0
+	[doc/mpfr.texi] For mpfr_get_exp, document that x can be outside of
+	the current range of acceptable values (this was ambiguous).
 
-------------------------------------------------------------------------
-r11272 | zimmerma | 2017-02-08 08:42:49 +0000 (Wed, 08 Feb 2017) | 3 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
-   M /trunk/tests/tsub1sp.c
+2017-11-21  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sub1sp.c] fixed a bug in mpfr_sub1sp1 and mpfr_sub1sp2 (corner case)
-[tests/tsub1sp.c] added non-regression test
+	[doc/mpfr.texi] Corrected Texinfo typography issues.
 
-------------------------------------------------------------------------
-r11271 | zimmerma | 2017-02-07 18:42:53 +0000 (Tue, 07 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/add1sp.c
+2017-11-21  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/add1sp.c] added special code for p=GMP_NUMB_BITS
+	added another example where we can have an overflow
 
-------------------------------------------------------------------------
-r11270 | zimmerma | 2017-02-07 16:35:29 +0000 (Tue, 07 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
-   M /trunk/tests/tsprintf.c
+	added pointer to mpfr_subnormalize
 
-[src/vasprintf.c] improved also %a and %e
+2017-11-21  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11269 | zimmerma | 2017-02-07 15:07:28 +0000 (Tue, 07 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/printf.c
-   M /trunk/src/vasprintf.c
-   M /trunk/tests/tsprintf.c
+	[doc/mpfr.texi] Major update of "MPFR and the IEEE 754 Standard".
 
-[src/vasprintf.c] fixed bug #21056
+	[doc/mpfr.texi] Added "MPFR and the IEEE 754 Standard" to the main menu
+	as required. Title capitalization.
 
-------------------------------------------------------------------------
-r11268 | vlefevre | 2017-02-07 10:44:03 +0000 (Tue, 07 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/TODO
+	[doc/mpfr.texi] Correction of a @node.
 
-[TODO] More about the mpz_t pool.
-------------------------------------------------------------------------
-r11267 | vlefevre | 2017-02-07 10:13:35 +0000 (Tue, 07 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/free_cache.c
+2017-11-21  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/free_cache.c] Better file description (keeping it short).
-------------------------------------------------------------------------
-r11266 | vlefevre | 2017-02-07 10:10:10 +0000 (Tue, 07 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/free_cache.c
+	added section "MPFR and the IEEE 754 standard"
 
-[src/free_cache.c] Updated comments (mpz_t cache → mpz_t pool).
-------------------------------------------------------------------------
-r11265 | vlefevre | 2017-02-07 01:47:16 +0000 (Tue, 07 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2017-11-20  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r11264 | vlefevre | 2017-02-07 01:46:14 +0000 (Tue, 07 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[doc/mpfr.texi] mpfr_can_round: corrected the example; removed
+	a reference to "ternary value" as there is already one in the
+	previous sentence; clarification.
 
-[doc/mpfr.texi] Clarified mpfr_asprintf & mpfr_vasprintf specification
-in case of error.
-------------------------------------------------------------------------
-r11263 | vlefevre | 2017-02-07 00:59:37 +0000 (Tue, 07 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[doc/mpfr.texi] Faithful rounding (MPFR_RNDF):
+	  * Document that this feature is experimental and partially supported.
+	  * Update Section "API Compatibility".
+	Note: the NEWS file was up-to-date.
 
-[src/vasprintf.c] Code cleanup.
-------------------------------------------------------------------------
-r11262 | zimmerma | 2017-02-06 17:24:23 +0000 (Mon, 06 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
-   M /trunk/tests/tsprintf.c
+2017-11-15  Vincent Lefèvre  <vincent at vinc17.net>
 
-partial solution of bug #21056: a test of mpfr_sprintf still fails
+	[tests/talloc-cache.c]
+	  * Replaced test + abort() by the more informative MPFR_ASSERTN().
+	  * Also check that the allocator is the current GMP one (this would
+	    fail with MPFR 3.1.6, where the allocation functions are memorized
+	    the first time they are seen).
 
-------------------------------------------------------------------------
-r11261 | zimmerma | 2017-02-06 15:09:39 +0000 (Mon, 06 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tmul.c
+	mpfr_mp_memory_cleanup() now returns an error code (currently always 0)
+	to avoid a future prototype change in case errors would be possible.
 
-[tests/tmul.c] added test for underflow corner case
+2017-11-10  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11260 | zimmerma | 2017-02-06 13:48:40 +0000 (Mon, 06 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+	Cleanup: In src/mpfr-gmp.h, exchanged
+	  mpfr_allocate_func    and  *__gmp_allocate_func
+	  mpfr_reallocate_func  and  *__gmp_reallocate_func
+	  mpfr_free_func        and  *__gmp_free_func
+	and in the code, replaced *__gmp_{allocate,reallocate,free}_func
+	by mpfr_{allocate,reallocate,free}_func; updated TODO file.
 
-[src/div.c] simplified underflow in div_1 and div_2 (one case is not possible)
+	[doc/mpfr.texi] The sign bit of a NaN is now specified for mpfr_abs,
+	mpfr_neg and mpfr_set, in order to mimic the IEEE-754 abs, negate
+	and copy operations.
 
-------------------------------------------------------------------------
-r11259 | zimmerma | 2017-02-06 13:10:24 +0000 (Mon, 06 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/sqr.c
-   M /trunk/tests/tsqr.c
+	[tests/tabs.c] More tests on mpfr_abs, including the ternary value
+	and the NaN flag and sign bit for ±NaN.
 
-[tests/tsqr.c] added another corner case for underflow and mpfr_sqr_2
+	[tests/tabs.c] Coding style.
 
-------------------------------------------------------------------------
-r11258 | zimmerma | 2017-02-06 12:58:48 +0000 (Mon, 06 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/sqr.c
-   M /trunk/tests/tsqr.c
+	[tests/tset.c] For mpfr_neg on NaN, also check that the variable is
+	set to NaN and that the ternary value is 0.
 
-[tests/tsqr.c] added a corner underflow case
+	[tests/tset.c] More NaN tests for mpfr_set.
 
-------------------------------------------------------------------------
-r11257 | vlefevre | 2017-02-06 12:45:49 +0000 (Mon, 06 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[tests/tset.c] More tests of the NaN flag and the sign bit for mpfr_neg
+	on NaN.
 
-[src/mpfr-impl.h] Added missing function prototype after r11256.
-------------------------------------------------------------------------
-r11256 | zimmerma | 2017-02-06 12:04:33 +0000 (Mon, 06 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/src/free_cache.c
-   M /trunk/src/mpfr-impl.h
+	[tests/tset.c] The global variable "error" is better as static.
 
-[mpfr-impl.h] now mpz_init2 uses the mpz spool too
+	[tests/tset.c] For mpfr_neg on NaN, check that the sign bit is flipped
+	in both ways.
 
-------------------------------------------------------------------------
-r11255 | vlefevre | 2017-02-03 14:10:51 +0000 (Fri, 03 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/TODO
+	[tests] Added talloc-cache to svn:ignore property.
 
-[TODO] Added: check the small-precision tables in the tests?
-------------------------------------------------------------------------
-r11254 | vlefevre | 2017-02-03 01:28:43 +0000 (Fri, 03 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/src/sqrt.c
-   M /trunk/tests/tdiv.c
+2017-11-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-Removed trailing whitespace.
-------------------------------------------------------------------------
-r11253 | vlefevre | 2017-02-03 01:09:38 +0000 (Fri, 03 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/acinclude.m4
+	[tests/tset.c] In the mpfr_neg test on the sign of NaN:
+	C90 compatibility; improved robustness since as specified,
+	mpfr_signbit can return any value (not just 0 or 1).
 
-[acinclude.m4] Fixed code for the _mulx_u64 test.
-------------------------------------------------------------------------
-r11252 | vlefevre | 2017-02-02 17:59:51 +0000 (Thu, 02 Feb 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tversion.c
+	[src/neg.c] Refactored code (BTW, this was not a bug as the sign of NaN
+	is currently unspecified for mpfr_neg).
 
-[tests/tversion.c] Output whether _mulx_u64 is available.
-------------------------------------------------------------------------
-r11251 | vlefevre | 2017-02-02 17:23:20 +0000 (Thu, 02 Feb 2017) | 2 lines
-Changed paths:
-   M /trunk/acinclude.m4
+2017-11-09  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[acinclude.m4] Fixed _mulx_u64 detection to avoid failures in tests
-with ICC 15: we need an AC_RUN_IFELSE, not just an AC_LINK_IFELSE.
-------------------------------------------------------------------------
-r11250 | vlefevre | 2017-01-31 13:43:30 +0000 (Tue, 31 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/invsqrt_limb.h
+	fixed bug reported by Trevor Spiteri
+	(https://sympa.inria.fr/sympa/arc/mpfr/2017-11/msg00003.html)
 
-[src/invsqrt_limb.h] Improved constants: make their meaning explicit;
-portability with 32-bit long (and 64-bit limb).
-------------------------------------------------------------------------
-r11249 | zimmerma | 2017-01-31 13:08:48 +0000 (Tue, 31 Jan 2017) | 3 lines
-Changed paths:
-   M /trunk/src/invsqrt_limb.h
-   M /trunk/src/sqrt.c
+2017-11-08  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/invsqrt_limb.h] new macro __gmpfr_sqrt_limb_approx
-[src/sqrt.c] new sqrt1 code using __gmpfr_sqrt_limb_approx
+	Change the way memory is allocated (as discussed partly in private).
+	  * src/mpfr-gmp.c, src/mpfr-gmp.h, src/mpfr-impl.h: update.
+	  * src/free_cache.c, src/mpfr.h: added mpfr_mp_memory_cleanup function.
+	  * NEWS: describe API change.
+	  * TODO: added 2 related items (future clean-up and feature).
+	  * doc/mpfr.texi: update.
+	  * tests/talloc-cache.c: take API change into account.
 
-------------------------------------------------------------------------
-r11248 | zimmerma | 2017-01-30 17:52:19 +0000 (Mon, 30 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+2017-11-07  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sqrt.c] improved slow branch of mpfr_sqrt2
+	[doc/mpfr.texi] Updated Section "Compatibility With MPF".
 
-------------------------------------------------------------------------
-r11247 | zimmerma | 2017-01-30 16:43:19 +0000 (Mon, 30 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+	[doc/mpfr.texi] Removed a paragraph from r2962 concerning mpf2mpfr.h
+	and mpf_init / mpf_init2: since r2985, the mpf_init / mpf_init2 macros
+	initialize to 0 like MPF, so that users shouldn't see differences from
+	MPF.
 
-[src/div.c] improved slow branch of mpfr_div_2
+2017-11-07  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r11246 | zimmerma | 2017-01-30 16:06:27 +0000 (Mon, 30 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+	added reference
 
-[src/div.c] fixed TODO: replaced two if-statements by while-loop
+2017-11-07  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11245 | vlefevre | 2017-01-30 15:15:44 +0000 (Mon, 30 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/div.c
+	[src/mpfr.h] Formatting.
 
-[src/div.c] Added TODO's.
-------------------------------------------------------------------------
-r11244 | vlefevre | 2017-01-30 14:04:33 +0000 (Mon, 30 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/div.c
+	[src/mpfr.h] mpfr_free_cache_t: added comments to show that these are
+	flags.
 
-[src/div.c] Added a MPFR_ASSERTD.
-------------------------------------------------------------------------
-r11243 | zimmerma | 2017-01-28 20:16:52 +0000 (Sat, 28 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/atan.c
+	[doc/mpfr.texi] Updated mpfr_free_cache / mpfr_free_cache2 description.
 
-[src/atan.c] added comment
+	[src/free_cache.c] Minor portability improvement for mpfr_free_cache2
+	to accept way = 0 (no effect on two's complement machines).
 
-------------------------------------------------------------------------
-r11242 | zimmerma | 2017-01-28 17:38:56 +0000 (Sat, 28 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/invsqrt_limb.h
+2017-11-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/invsqrt_limb.h] fixed __gmpfr_sqrt_limb macro
+	[tests]
+	  * tests.c: for test programs that use GMP's mp_set_memory_functions,
+	    tests_rand_start and tests_rand_end also need to be disabled; to do
+	    that, require that tests_memory_disabled be set to 2 in this case
+	    (the value 1 is already used for the use with mini-gmp, where only
+	    tests_memory_start and tests_memory_end need to be disabled).
+	  * talloc-cache.c: call tests_start_mpfr and tests_end_mpfr as usual,
+	    with tests_memory_disabled set to 2.
 
-------------------------------------------------------------------------
-r11241 | zimmerma | 2017-01-28 09:20:50 +0000 (Sat, 28 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/atan.c
+	[doc/mpfr.texi] Updated the month.
 
-[src/atan.c] small optimization
+	[doc/mpfr.texi] Minor change.
 
-------------------------------------------------------------------------
-r11240 | zimmerma | 2017-01-27 20:45:45 +0000 (Fri, 27 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/atan.c
+	[doc/mpfr.texi] + explicit information on pools (in addition to caches).
 
-[src/atan.c] speedup for small precision
+	[NEWS,doc/mpfr.texi] mpfr_free_cache2 is a new function in MPFR 4.0,
+	as a consequence of shared caches for multithreaded applications.
 
-------------------------------------------------------------------------
-r11239 | vlefevre | 2017-01-27 10:44:37 +0000 (Fri, 27 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/mul.c
+	[src/free_cache.c] GNU coding style.
 
-[src/mul.c] Disable mpfr_mul_{1,2,3} if MPFR_GENERIC_ABI is defined.
-------------------------------------------------------------------------
-r11238 | vlefevre | 2017-01-27 10:39:47 +0000 (Fri, 27 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/mul.c
+	[tests]
+	  * Makefile.am: added talloc-cache to check_PROGRAMS.
+	  * talloc-cache.c: improved the test allocators so that an incorrect
+	    use is detected by this code instead of relying on the C library
+	    checking bad use of malloc/realloc/free (which was UB).
+	    NOTE: The test currently fails in the trunk due to the mpz_t pool.
+	    But anyway, the memory allocation method will change soon.
 
-[src/mul.c] Removed useless parentheses that can inhibit warnings.
-------------------------------------------------------------------------
-r11237 | vlefevre | 2017-01-26 16:19:34 +0000 (Thu, 26 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/mul.c
+	[tests/talloc-cache.c] Corrected indentation.
 
-[src/mul.c] Updated TODO.
-------------------------------------------------------------------------
-r11236 | vlefevre | 2017-01-26 16:17:55 +0000 (Thu, 26 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/mul.c
+2017-10-30  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mul.c] Added a TODO about an optimization.
-------------------------------------------------------------------------
-r11235 | zimmerma | 2017-01-26 10:03:11 +0000 (Thu, 26 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+	[doc/mpfr.texi] Improved the mpfr_nexttoward description w.r.t. flags.
 
-[src/sqrt.c] fixed error bound for mpfr_sqrt2_approx
+2017-10-27  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r11234 | vlefevre | 2017-01-25 17:55:47 +0000 (Wed, 25 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/TODO
+	added note about mpfr_beta
 
-[TODO] Added optimization of test + shift for some processors.
-------------------------------------------------------------------------
-r11233 | vlefevre | 2017-01-25 16:04:38 +0000 (Wed, 25 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/sub1sp.c
+2017-10-26  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sub1sp.c] Added MPFR_FULLSUB code for mpfr_sub1sp2.
-------------------------------------------------------------------------
-r11232 | zimmerma | 2017-01-25 13:49:11 +0000 (Wed, 25 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/invsqrt_limb.h
-   M /trunk/src/sqrt.c
+	[NEWS,doc/mpfr.texi] mpfr_beta is incomplete, experimental.
+	See <https://sympa.inria.fr/sympa/arc/mpfr/2017-10/msg00007.html>.
 
-[src/sqrt.c] changed error bound back from 16 to 15
+2017-10-26  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r11231 | vlefevre | 2017-01-25 13:44:42 +0000 (Wed, 25 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/add-with-carry.c
+	added functions from C++17
 
-[doc/add-with-carry.c] Added reference to my bug report about Clang's
-carry detection missed optimization in chained add-with-carry.
-------------------------------------------------------------------------
-r11230 | zimmerma | 2017-01-25 13:16:19 +0000 (Wed, 25 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/invsqrt_limb.h
-   M /trunk/src/sqrt.c
+2017-10-23  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/sqrt.c] updated error bound for __gmpfr_invsqrt_limb_approx
+	fixed typo
 
-------------------------------------------------------------------------
-r11229 | vlefevre | 2017-01-25 12:40:00 +0000 (Wed, 25 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/sub1sp.c
+2017-10-11  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sub1sp.c] Added refs to missed/broken optimization with Clang/LLVM.
-------------------------------------------------------------------------
-r11228 | vlefevre | 2017-01-25 09:23:08 +0000 (Wed, 25 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[src/get_float128.c] Fixed failure in mpfr_get_float128 when called with
+	  a very reduced exponent range.
+	[tests/tset_float128.c] Also test mpfr_get_float128 in reduced exponent
+	  range (triggering a failure before the fix).
 
-[src/sub1sp.c] Use the FULLSUB only. Added a comment about the change
-in r11227.
-------------------------------------------------------------------------
-r11227 | zimmerma | 2017-01-25 07:20:57 +0000 (Wed, 25 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+2017-10-10  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sub1sp.c] changed MPFR_FULLSUB variant into faster code
+	[doc/README.dev] "To make a release": + Check the generic code.
 
-------------------------------------------------------------------------
-r11226 | vlefevre | 2017-01-24 15:46:52 +0000 (Tue, 24 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2017-10-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] Texinfo typography correction.
-------------------------------------------------------------------------
-r11225 | vlefevre | 2017-01-24 14:37:58 +0000 (Tue, 24 Jan 2017) | 7 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/get_ld.c] Fixed the generic code when called with a very reduced
+	exponent range. The tset_ld failure could be triggered on x86 by running
+	"./configure ... mpfr_cv_c_long_double_format=unknown".
 
-[doc/mpfr.texi] Improvements concerning the exponent range.
-  * mpfr_get_exp: added a FIXME in a comment (documented behavior?).
-  * mpfr_set_emin / mpfr_set_emax: more specification and details.
-  * mpfr_subnormalize: clarification; added a warning about emin.
-  * Example of mpfr_subnormalize: added a note.
-In particular, this follows a confusion:
-  https://sympa.inria.fr/sympa/arc/mpfr/2017-01/msg00024.html
-------------------------------------------------------------------------
-r11224 | zimmerma | 2017-01-24 10:34:36 +0000 (Tue, 24 Jan 2017) | 3 lines
-Changed paths:
-   M /trunk/src/invsqrt_limb.h
+	[tests/tset_ld.c] Also test mpfr_get_ld in reduced exponent range
+	(no failures on x86).
 
-[src/invsqrt_limb.h] changed slightly definition of d10 and d37 (does not
-		     change final error analysis)
+	[src/get_z.c] Fixed failure in mpfr_get_z when called with a very
+	  reduced exponent range.
+	[tests/tget_z.c] Added tests in the various rounding modes (triggering
+	  a failure before the above fix). Also call check_one() on an integer
+	  congruent to 1 mod 4 (useful to check even rounding). Fixed 2 issues
+	  in the error message (for inex and the flags).
 
-------------------------------------------------------------------------
-r11223 | vlefevre | 2017-01-23 15:41:35 +0000 (Mon, 23 Jan 2017) | 3 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[tests/tget_z.c] Also test mpfr_get_z in reduced exponent range
+	(no failures though its code seems incorrect).
 
-[src/sub1sp.c] Updated comments about subtraction with borrow; the first
-one from r11213 was incorrect (bad interpretation of the generated code
-for GCC, potentially on a different alternate source code for Clang).
-------------------------------------------------------------------------
-r11222 | zimmerma | 2017-01-23 14:11:17 +0000 (Mon, 23 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+2017-10-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sub1sp.c] simplified mpfr_sub1sp1()
+	[src/{get_si.c,get_sj.c}] Minor improvement, removing an obsolete note
+	in get_sj.c at the same time.
 
-------------------------------------------------------------------------
-r11221 | zimmerma | 2017-01-23 11:38:04 +0000 (Mon, 23 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/turandom.c
+	[src/{get_sj.c,get_uj.c}] Fixed failure in mpfr_get_sj and mpfr_get_uj
+	  when called with a very reduced exponent range.
+	[tests/tget_sj.c] Added corresponding test cases.
 
-[tests/turandom.c] added non-regression test
+	[tests/tset_si.c] Minor correction in error message.
 
-------------------------------------------------------------------------
-r11220 | vlefevre | 2017-01-23 10:23:40 +0000 (Mon, 23 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/urandom.c
+2017-10-05  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/urandom.c] Added a FIXME as mpfr_urandom does not always set flags.
-------------------------------------------------------------------------
-r11219 | vlefevre | 2017-01-23 09:46:50 +0000 (Mon, 23 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/urandom.c
+	[TODO] Function multiversioning (FMV): more details.
 
-[src/urandom.c] Simplified code (no changes in the behavior).
-------------------------------------------------------------------------
-r11218 | zimmerma | 2017-01-23 07:27:10 +0000 (Mon, 23 Jan 2017) | 3 lines
-Changed paths:
-   M /trunk/src/urandom.c
+	[TODO] Mention function multiversioning (FMV).
 
-[src/urandom.c] fixed bug reported by Trevor Spiteri
-(https://sympa.inria.fr/sympa/arc/mpfr/2017-01/msg00020.html)
+2017-10-04  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11217 | zimmerma | 2017-01-21 12:58:34 +0000 (Sat, 21 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
-   M /trunk/src/mpn_exp.c
-   M /trunk/src/mulders.c
-   M /trunk/src/sqr.c
+	[src/{get_si.c,get_ui.c}] Fixed failure in mpfr_get_si and mpfr_get_ui
+	when called with a very reduced exponent range.
 
-changed mpn_sqr_n into mpn_sqr
+	[tests/tset_si.c] get_tests: added comments and tests in a reduced
+	exponent range, which currently trigger an assertion failure.
 
-------------------------------------------------------------------------
-r11216 | zimmerma | 2017-01-20 17:21:15 +0000 (Fri, 20 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/Makefile.am
-   M /trunk/src/invsqrt_limb.h
-   M /trunk/src/sqrt.c
-   D /trunk/src/sqrt_tab.h
+2017-10-02  Vincent Lefèvre  <vincent at vinc17.net>
 
-new version of mpfr_sqrt2_approx (no longer needs sqrt_tab.h)
+	[doc/mpfr.texi] Updated the month.
 
-------------------------------------------------------------------------
-r11215 | vlefevre | 2017-01-20 16:24:56 +0000 (Fri, 20 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[NEWS] Mention mpfr_dump.
 
-[src/sub1sp.c] Updated TODO, mentioning an optimization bug in LLVM.
-------------------------------------------------------------------------
-r11214 | vlefevre | 2017-01-20 16:13:45 +0000 (Fri, 20 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[doc/mpfr.texi] Describe the current output format of mpfr_dump.
 
-[src/sub1sp.c] Updated TODO about full subtraction with borrow.
-------------------------------------------------------------------------
-r11213 | vlefevre | 2017-01-20 13:58:11 +0000 (Fri, 20 Jan 2017) | 3 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[doc/mpfr.texi] Replaced @code by @samp for things that are not
+	actually code, but parts of character strings.
 
-[src/sub1sp.c] Added alternate code (enabled with -DMPFR_FULLSUB, until
-fully tested) to replace a test + correction by a 2-limb subtraction,
-recognized by GCC and Clang.
-------------------------------------------------------------------------
-r11212 | zimmerma | 2017-01-20 13:56:05 +0000 (Fri, 20 Jan 2017) | 3 lines
-Changed paths:
-   M /trunk/src/invsqrt_limb.h
-   M /trunk/src/sqrt.c
+2017-09-29  Vincent Lefèvre  <vincent at vinc17.net>
 
-renamed __gmpfr_invsqrt_limb into __gmpfr_invsqrt_limb_approx to better reflect
-it only gives an approximation
+	[src/dump.c] mpfr_dump now outputs specific info for invalid data.
+	[tests/toutimpl.c] Added mpfr_dump tests.
 
-------------------------------------------------------------------------
-r11211 | vlefevre | 2017-01-20 11:59:39 +0000 (Fri, 20 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/invert_limb.h
+	[src/dump.c]
+	  * Output the sign even for NaN, since this can be useful information
+	    (the sign of a NaN has an effect with some functions, following
+	    IEEE 754-2008).
+	  * This changes allows one to get rid of the mpfr_fprint_binary
+	    static function at the same time.
 
-[src/invert_limb.h] Just like for invsqrt_limb.h (r11210), in 1UL << 60,
-replaced 1UL by MPFR_LIMB_ONE to make the code valid with 32-bit long.
-------------------------------------------------------------------------
-r11210 | vlefevre | 2017-01-20 11:54:33 +0000 (Fri, 20 Jan 2017) | 4 lines
-Changed paths:
-   M /trunk/src/invsqrt_limb.h
+	[src/{dump.c,print_raw.c}] Updated the description.
 
-[src/invsqrt_limb.h] Bug fix: replaced 1UL by MPFR_LIMB_ONE since the
-computations are done on limbs, which are expected to have 64 bits in
-this context (the old code would fail on MS Windows / MinGW, where limbs
-are 64-bit unsigned long long and unsigned long is a 32-bit type).
-------------------------------------------------------------------------
-r11209 | vlefevre | 2017-01-20 11:47:59 +0000 (Fri, 20 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/invsqrt_limb.h
+2017-09-29  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/invsqrt_limb.h] Portability correction: avoid lines longer than the
-POSIX line-length limit of 2047 characters; actually fit on 80 columns.
-------------------------------------------------------------------------
-r11208 | zimmerma | 2017-01-20 11:15:54 +0000 (Fri, 20 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/Makefile.am
-   M /trunk/src/invert_limb.h
-   A /trunk/src/invsqrt_limb.h
-   M /trunk/src/sqrt.c
-   M /trunk/src/sqrt_tab.h
+	[src] Clean up of debugging output functions:
+	  * Replaced the internal function mpfr_fprint_binary by a new
+	    internal function mpfr_fdump, similar to mpfr_dump, but with
+	    a FILE * argument.
+	  * Got rid of mpfr_print_binary entirely (it became internal in
+	    r2466 for MPFR 2.0.2, released in 2003).
 
-faster version of mpfr_sqrt1(), with smaller table
+	Details:
+	  * print_raw.c:
+	      - moved the mpfr_fprint_binary code to dump.c;
+	      - removed mpfr_print_binary.
+	  * dump.c:
+	      - mpfr_fprint_binary (from print_raw.c) is now defined as static;
+	      - added function mpfr_fdump, using mpfr_fprint_binary;
+	      - mpfr_dump: use mpfr_fdump instead of the old mpfr_print_binary.
+	  * mpfr-impl.h:
+	      - replaced mpfr_fprint_binary declaration by mpfr_fdump;
+	      - removed mpfr_print_binary declaration.
+	  * add1sp.c, mul.c, sub1sp.c: replaced mpfr_fprint_binary by mpfr_fdump
+	    and removed the '\n', now output by mpfr_fdump.
 
-------------------------------------------------------------------------
-r11207 | zimmerma | 2017-01-20 08:09:20 +0000 (Fri, 20 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/invert_limb.h
+2017-09-28  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/invert_limb.h] improved __gmpfr_invert_limb* for 64-bit limb
+	[tests] Added trootn_ui to svn:ignore property.
 
-------------------------------------------------------------------------
-r11206 | zimmerma | 2017-01-17 11:04:25 +0000 (Tue, 17 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+2017-09-20  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/div.c] use ADD_LIMB macro, and fixed comment
+	[tests/toutimpl.c]
+	  * Check mpfr_print_mant_binary() too.
+	  * GNU coding style.
 
-------------------------------------------------------------------------
-r11205 | vlefevre | 2017-01-17 10:51:28 +0000 (Tue, 17 Jan 2017) | 5 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	[src/print_raw.c] Changes in mpfr_print_mant_binary():
+	  * Output a ']' when a '[' was output earlier.
+	  * Correction: putchar() takes an int (or unsigned char), not a char.
+	  * GNU coding style.
 
-[acinclude.m4] MPFR_PARSE_DIRECTORY macro definition: workaround if
-the realpath command is not found. Suggestion by Trevor Spiteri:
-  https://sympa.inria.fr/sympa/arc/mpfr/2017-01/msg00013.html
-Note: I had to modify the patch to use quadrigraphs, otherwise the
-generated configure file was invalid.
-------------------------------------------------------------------------
-r11204 | zimmerma | 2017-01-17 10:35:43 +0000 (Tue, 17 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tdiv.c
+2017-09-18  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tdiv.c] added code to exercise mpfr_div2_approx
+	changed .align 64 into .p2align 6 (cf https://trac.sagemath.org/ticket/19233)
 
-------------------------------------------------------------------------
-r11203 | zimmerma | 2017-01-16 16:49:01 +0000 (Mon, 16 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+2017-09-15  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/div.c] new variant of mpfr_div2_approx()
+	[tests] Solve issues with the incorrect use of mpfr_sgn, and make sure
+	that this cannot happen again without being detected: on zero, +1 or -1
+	was sometimes expected to check the sign of zero, but mpfr_sgn actually
+	returned 0, so that the check always succeeded whatever the sign of the
+	null result.
+	  * mpfr-test.h: define a new mpfr_sgn macro that fails when used on NaN
+	    or zero (whose sign is not +1 or -1), except when MPFR_TESTS_TSGN is
+	    defined.
+	  * tacos.c, tasin.c, tasinh.c, tatanh.c, tcbrt.c, tdim.c, terf.c,
+	    texp.c, texp10.c, texp2.c, texpm1.c, tset.c, tset_str.c: replaced
+	    the incorrect use of mpfr_sgn; some other related improvements.
+	    Note: in tset.c, a "mpfr_sgn (x) < 0" test had to be replaced by
+	    "MPFR_IS_POS (x)" since we really want to test whether the sign
+	    is positive (not negative).
+	  * tdiv.c, tmul.c, tui_div.c: simplified some tests, in particular to
+	    avoid a failure with the new mpfr_sgn macro for the tests; here,
+	    the use of mpfr_sgn was correct, but one could do simpler.
+	  * tgmpop.c: replaced "mpfr_sgn (z)" by "(mpfr_sgn) (z)" to avoid the
+	    new mpfr_sgn macro (here, we really want the mathematical sign).
+	  * tsgn.c: define MPFR_TESTS_TSGN as the goal of this program is to
+	    test mpfr_sgn itself (both the function and the macro in mpfr.h).
 
-------------------------------------------------------------------------
-r11202 | vlefevre | 2017-01-13 23:59:23 +0000 (Fri, 13 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/invert_limb.h
+	[doc/README.dev] "To make a release": Enhanced step 5 (tarballs).
 
-[src/invert_limb.h] Fit on 80 columns (one line was over the
-POSIX line-length limit of 2047 characters).
-------------------------------------------------------------------------
-r11201 | vlefevre | 2017-01-13 23:43:26 +0000 (Fri, 13 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/invert_limb.h
+2017-09-14  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/invert_limb.h] Correction in __gmpfr_invert_limb for 32-bit ABI:
-_d was used before being defined.
-------------------------------------------------------------------------
-r11200 | zimmerma | 2017-01-13 23:24:20 +0000 (Fri, 13 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/invert_limb.h
+	patch to avoid using the system mpfr.h
 
-[invert_limb.h] added invert_limb code for 32-bit
+2017-09-14  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11199 | vlefevre | 2017-01-13 15:18:34 +0000 (Fri, 13 Jan 2017) | 4 lines
-Changed paths:
-   M /trunk/src/add1sp.c
+	[tests/tfms.c] Similar changes to what was done in tfma.c:
+	  * replaced "mpfr_cmp" by "! mpfr_equal_p";
+	  * code formatting (mainly reindentation);
+	  * use of SAME_SIGN for better clarity.
 
-[src/add1sp.c] Improved a line based on analysis (+ timings I've done
-on x86_64 with GCC and Clang give better results, though they cannot
-be conclusive since the gain is too small compared to other possible
-causes of variations).
-------------------------------------------------------------------------
-r11198 | vlefevre | 2017-01-13 14:40:29 +0000 (Fri, 13 Jan 2017) | 3 lines
-Changed paths:
-   M /trunk/tools/mbench/Makefile
+	[tests/tfma.c] Similar change to what was done in tfms.c (may be useful
+	in the future).
 
-[tools/mbench/Makefile] Added -static to CFLAGS in order to avoid
-a link error when MPFR has been built with Clang (linking is done
-with .a libraries, i.e. static libraries).
-------------------------------------------------------------------------
-r11197 | vlefevre | 2017-01-13 10:53:51 +0000 (Fri, 13 Jan 2017) | 4 lines
-Changed paths:
-   M /trunk/src/add1sp.c
+	[tests] Got rid of the use of mpfr_print_binary, in general with
+	mpfr_dump. Replaced some "mpfr_out_str (stdout, 2, ...)" by mpfr_dump
+	for consistency or as improvements. Some other corrections in the
+	related error messages.
 
-[src/add1sp.c] Replaced "return 0;" by "MPFR_RET(0);" to emphasize on
-the fact that we return a ternary value (code instrumentation may also
-be easier later). Note: this is equivalent since the macro expands to
-0 != 0 ? ... : 0, which gives 0 via trivial optimization.
-------------------------------------------------------------------------
-r11196 | vlefevre | 2017-01-13 10:44:44 +0000 (Fri, 13 Jan 2017) | 3 lines
-Changed paths:
-   M /trunk/src/add1sp.c
+2017-09-14  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/add1sp.c] Improvements in mpfr_add1sp1; added a TODO.
-Note for rb -> bp[0]: the generated code is the same, but the source
-is more readable (-> rb has only one meaning).
-------------------------------------------------------------------------
-r11195 | vlefevre | 2017-01-13 00:51:29 +0000 (Fri, 13 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+	added info about autoconf-archive
 
-[src/div.c] C90 compatibility (avoid initializer elements not computable
-at load time).
-------------------------------------------------------------------------
-r11194 | zimmerma | 2017-01-12 23:20:22 +0000 (Thu, 12 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+2017-09-14  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/div.c] added some alternate code for mpfr_div2_approx (disabled for now)
+	Old, deprecated macros mpfr_add_one_ulp and mpfr_sub_one_ulp removed.
 
-------------------------------------------------------------------------
-r11193 | zimmerma | 2017-01-12 21:40:50 +0000 (Thu, 12 Jan 2017) | 4 lines
-Changed paths:
-   M /trunk/src/frac.c
-   M /trunk/src/mpfr-gmp.h
-   M /trunk/src/round_raw_generic.c
-   M /trunk/src/set_uj.c
-   M /trunk/src/strtofr.c
-   M /trunk/src/sub1sp.c
-   M /trunk/src/sum.c
+2017-09-13  Vincent Lefèvre  <vincent at vinc17.net>
 
-fixed bug in urandomb.c reported by Dominic Chen
-(https://sympa.inria.fr/sympa/arc/mpfr/2017-01/msg00011.html)
-and replaced MPN_COPY_INCR/MPN_COPY_DECR by mpn_copyi/mpn_copyd
+	[tools/mpfrlint] Do the tests_start_mpfr / tests_end_mpfr check only if
+	the .c file has a main() function; this avoids an error on trootn_ui.c,
+	which just does a #include.
 
-------------------------------------------------------------------------
-r11192 | zimmerma | 2017-01-12 21:19:12 +0000 (Thu, 12 Jan 2017) | 3 lines
-Changed paths:
-   M /trunk/src/div.c
+	[tests/troot.c]
+	  * Use mpfr_set_zero instead of mpfr_set_ui / mpfr_neg (like what was
+	    done for the infinity, using mpfr_set_inf).
+	  * For exact cases (NaN, ±Inf, ±0), check that the ternary value is 0.
 
-[src/div.c] small improvement in div_1 and div_2: force all precisions to be
-	    equal, then we cannot have rb <> 0 and sb = 0
+	[tests/troot.c] For the root(±0,k) tests, before calling the function,
+	we set the target y to NaN with the wrong sign, so that if the code of
+	the function forgets to do something, this will be detected.
 
-------------------------------------------------------------------------
-r11191 | zimmerma | 2017-01-12 17:24:36 +0000 (Thu, 12 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+	[tests/troot.c] Also check root(+0,42) and root(-0,17) for completeness.
 
-[src/div.c] improved case p=127 (or two-limb case with hard to round case)
+	[tests/troot.c] Really check the sign of the result 0 (the old test
+	was always false, thus useless!).
 
-------------------------------------------------------------------------
-r11190 | vlefevre | 2017-01-12 14:26:36 +0000 (Thu, 12 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/add1sp.c
+	[doc/mpfr.texi] Updated the month.
 
-[src/add1sp.c] Added a TODO: slightly better code?
-------------------------------------------------------------------------
-r11189 | zimmerma | 2017-01-12 13:30:28 +0000 (Thu, 12 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+	New mpfr_rootn_ui function; mpfr_root deprecated.
+	  * src/root.c: mpfr_rootn_ui is now the main code, and mpfr_root calls
+	    mpfr_rootn_ui.
+	  * src/mpfr.h: added mpfr_rootn_ui prototype; marked mpfr_root as
+	    deprecated.
+	  * Added tests/trootn_ui.c (includes troot.c).
+	  * tests/troot.c: made it usable (via #include) by the new trootn_ui.c
+	    test.
+	  * tests/Makefile.am: added trootn_ui; at the same time, corrected the
+	    order of the test programs (lexicographic, with exceptions).
+	  * NEWS, TODO, doc/mpfr.texi: update.
 
-[src/div.c] improve mpfr_div_1 for precision 63
+	[tests] Avoid duplicate code by defining the MAKE_STR() macro in
+	mpfr-test.h only instead of tgeneric.c and tversion.c.
 
-------------------------------------------------------------------------
-r11188 | vlefevre | 2017-01-12 10:17:49 +0000 (Thu, 12 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/rndna.c
+2017-09-08  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/rndna.c] Updated comments.
-------------------------------------------------------------------------
-r11187 | zimmerma | 2017-01-12 10:16:40 +0000 (Thu, 12 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+	[doc/README.dev] "To make a release": Updated the warning, as the issue
+	concerns the .ps file only (the .dvi file has no papersize info).
 
-[src/sqrt.c] improved mpfr_sqrt2_approx()
+	[doc/README.dev] "To make a release": Added a warning to check the
+	papersize of the generated dvi and ps files, which may be incorrect
+	(bug in texinfo(?) reported as Debian bug 874632).
 
-------------------------------------------------------------------------
-r11186 | vlefevre | 2017-01-12 08:59:23 +0000 (Thu, 12 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	Switched other gmplib.org URL's to https.
 
-[doc/mpfr.texi] Typographic correction (including generated spaces).
-------------------------------------------------------------------------
-r11185 | vlefevre | 2017-01-10 16:17:05 +0000 (Tue, 10 Jan 2017) | 5 lines
-Changed paths:
-   A /trunk/doc/add-with-carry.c
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/sqr.c
+	[doc/mpfr.texi] Updated URL:
+	  http://gmplib.orghttps://gmplib.org/
 
-Improvement of additions with carry.
-  * Added doc/add-with-carry.c showing how to do an addition with carry
-    in C (to make the compiler understand the code).
-  * src/mpfr-impl.h: added ADD_LIMB macro (addition with carry).
-  * src/sqr.c: use this ADD_LIMB macro to improve the generated code.
-------------------------------------------------------------------------
-r11184 | zimmerma | 2017-01-10 15:20:00 +0000 (Tue, 10 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/sqr.c
+	[doc/mpfr.texi] Updated URL:
+	  ftp://ftp.gnu.org/gnu/mpfr/https://ftp.gnu.org/gnu/mpfr/
 
-[src/sqr.c] 2 calls to umul_ppmm are enough in mpfr_sqr_2 in most cases
+	[tools/announce-text] Switched to https for ftp.gnu.org.
 
-------------------------------------------------------------------------
-r11183 | zimmerma | 2017-01-10 13:56:38 +0000 (Tue, 10 Jan 2017) | 3 lines
-Changed paths:
-   M /trunk/src/div.c
-   M /trunk/src/sub1sp.c
+2017-09-07  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/div.c] added FIXME
-[src/sub1sp.c] added comments
+	[doc/README.dev] "To make a release": update about the uploads.
 
-------------------------------------------------------------------------
-r11182 | zimmerma | 2017-01-10 10:10:32 +0000 (Tue, 10 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+2017-09-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sqrt.c] made code coherent with comment
+	[NEWS] Completed item on thread-safe DLL (shared library) support.
 
-------------------------------------------------------------------------
-r11181 | vlefevre | 2017-01-10 09:58:49 +0000 (Tue, 10 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/sqrt.c
+	[src/mpfr-impl.h] Completed the fix in r11713.
 
-[src/sqrt.c] Improved comment from r11180.
-------------------------------------------------------------------------
-r11180 | zimmerma | 2017-01-10 09:48:30 +0000 (Tue, 10 Jan 2017) | 3 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+	[src/mpfr-impl.h] Fixed thread-safe DLL support with ICC and MSVC
+	on MS Windows without the GMP build directory (r11712 contained
+	inconsistent function names, yielding "unresolved external symbol"
+	errors in tabort_defalloc1.obj), second try.
 
-[src/sqrt.c] improved error bound for mpfr_sqrt2_approx, with known direction
-	     of error
+	[src] Attempt to fix thread-safe DLL support with ICC and MSVC on
+	MS Windows without the GMP build directory. See:
+	  https://sympa.inria.fr/sympa/arc/mpfr/2017-09/msg00009.html
+	  https://sympa.inria.fr/sympa/arc/mpfr/2017-09/msg00014.html
+	i.e. for the mpfr_allocate_func, mpfr_reallocate_func & mpfr_free_func
+	external TLS variables, one does the same thing as what had been done
+	for the other ones (__gmpfr_flags, __gmpfr_emin, __gmpfr_emax, etc.).
 
-------------------------------------------------------------------------
-r11178 | vlefevre | 2017-01-10 02:35:23 +0000 (Tue, 10 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[tests] Added tget_q to svn:ignore property.
 
-[src/sub1sp.c] Fixed other two bugs in special code for 3 limbs.
-TODO: non-regression tests should be added for both.
-------------------------------------------------------------------------
-r11177 | vlefevre | 2017-01-10 02:17:03 +0000 (Tue, 10 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/sub1sp.c
+2017-09-05  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sub1sp.c] Fixed some bugs in special code for 3 limbs.
-------------------------------------------------------------------------
-r11176 | vlefevre | 2017-01-10 01:17:54 +0000 (Tue, 10 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[tests/tsprintf.c] With MPFR_CHECK_LIBC_PRINTF, disable the test of
+	the "'" flag with a non-glibc C library (SUS extension in printf).
+	In particular, it is not supported by AIX 7.2.
 
-[src/sub1sp.c] Simplified a test.
-------------------------------------------------------------------------
-r11173 | zimmerma | 2017-01-09 21:10:56 +0000 (Mon, 09 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[src/mpfr-impl.h] In case decimal_point and/or thousands_sep are
+	non-single-byte characters (as found on FreeBSD 11 in fr_FR.UTF-8),
+	revert to the default value. Added a FIXME to support multibyte
+	decimal_point and thousands_sep.
 
-[src/sub1sp.c] added special code for 3 limbs
+	[tests/tsprintf.c] Formatting.
 
-------------------------------------------------------------------------
-r11171 | vlefevre | 2017-01-09 16:58:51 +0000 (Mon, 09 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/add1sp.c
+	[doc/README.dev] Added a paragraph about temporary result files created
+	by test programs.
 
-[src/add1sp.c] Fixed too large shift count in r11170 (code for 3 limbs).
-------------------------------------------------------------------------
-r11170 | zimmerma | 2017-01-09 16:32:29 +0000 (Mon, 09 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/add1sp.c
+	[tests/Makefile.am] Added tfpif_rw.dat to CLEANFILES.
 
-[src/add1sp.c] added special code for 3 limbs
+	[tests] Renamed mpfrtest.txt, mpfrtest.dat and mpfrtest2.dat to
+	tfpif_rw.dat, tfpif_r1.dat and tfpif_r2.dat respectively.
 
-------------------------------------------------------------------------
-r11169 | zimmerma | 2017-01-09 14:41:14 +0000 (Mon, 09 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/sqr.c
+	[tests]
+	  * toutimpl.c: Changed the filename of the result file like what
+	    has been done in other test programs, to make sure that it will
+	    not be reused by mistake. Removed comments about tmpname (which
+	    does not exist).
+	  * Makefile.am: Added this filename to CLEANFILES (even though the
+	    file is removed by the test program, an error could occur before
+	    its actual removal).
 
-[src/sqr.c] added special code for 3 limbs
+	[tests]
+	  * tfprintf.c, tout_str.c, tprintf.c: Do not use the same filename
+	    for result files created in these test programs, as this breaks
+	    parallel tests (note that such files are used only if /dev/null
+	    does not work, so that Unix-like systems were not affected).
+	    This should fix the bug reported in
+	      https://sympa.inria.fr/sympa/arc/mpfr/2017-09/msg00000.html
+	    as said in
+	      https://sympa.inria.fr/sympa/arc/mpfr/2017-09/msg00005.html
+	  * Makefile.am: added a CLEANFILES line with these files.
 
-------------------------------------------------------------------------
-r11167 | vlefevre | 2017-01-09 13:57:41 +0000 (Mon, 09 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tsub1sp.c
+2017-09-01  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tsub1sp.c] Fixed a return type.
-------------------------------------------------------------------------
-r11166 | vlefevre | 2017-01-09 13:46:44 +0000 (Mon, 09 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	[tests/turandom.c] Added test_underflow().
+	(merged changesets r11691-11694 from the 3.1 branch)
 
-[doc/README.dev] Updated note added in r11165.
-------------------------------------------------------------------------
-r11165 | vlefevre | 2017-01-09 13:44:44 +0000 (Mon, 09 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/doc/README.dev
+2017-08-29  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/README.dev] Added a note about cross-compilation and test
-under Wine, with references to bugs in autoconf and dash.
-------------------------------------------------------------------------
-r11164 | zimmerma | 2017-01-09 10:53:20 +0000 (Mon, 09 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tmul.c
+	update
 
-[tests/tmul.c] fixed typo
+	updated for mpfr-3.1.6-rc1
 
-------------------------------------------------------------------------
-r11162 | zimmerma | 2017-01-09 08:51:42 +0000 (Mon, 09 Jan 2017) | 3 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
-   M /trunk/tests/tsub1sp.c
+2017-08-28  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sub1sp.c] fixed bug in mpfr_sub1sp2 when exponent diff. is GMP_NUMB_BITS
-[tests/tsub1sp.c] added testcase
+	[tools/mpfrlint] Run tools/ck-version-info.
 
-------------------------------------------------------------------------
-r11161 | vlefevre | 2017-01-09 01:22:26 +0000 (Mon, 09 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/mul.c
+	[tools/mpfrlint] Updated a message due to the change in r11673.
 
-[src/mul.c] Bug fix in mpfr_mul_3; tmul no longer fails (64-bit ABI).
-------------------------------------------------------------------------
-r11160 | vlefevre | 2017-01-09 01:17:03 +0000 (Mon, 09 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tmul.c
+	[doc/README.dev] "To make a release": The DLL version may need to be
+	updated too.
 
-[tests/tmul.c] Added test of mpfr_mul on 1 to 3 limbs. Currently fails.
-------------------------------------------------------------------------
-r11159 | vlefevre | 2017-01-08 23:45:49 +0000 (Sun, 08 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/mul.c
+	[configure.ac] Added a comment about the DLL version.
 
-[src/mul.c] Define aq = MPFR_GET_PREC (a), and use this.
-------------------------------------------------------------------------
-r11158 | zimmerma | 2017-01-08 22:22:36 +0000 (Sun, 08 Jan 2017) | 4 lines
-Changed paths:
-   M /trunk/src/mul.c
-   M /trunk/src/sqrt.c
-   M /trunk/src/sub1sp.c
+	[configure.ac] Updated DLL version to 6 (cur - age).
 
-[src/mul.c] added mpfr_mul_3
-[src/sqrt.c] renamed internal functions
-[src/sub1sp.c] cosmetic change
+	[tools/{ck-copyright-notice,ck-inits-clears}] Ignore Emacs lock files
+	(symbolic links) to avoid a failure when a file is being edited.
 
-------------------------------------------------------------------------
-r11157 | zimmerma | 2017-01-07 07:57:37 +0000 (Sat, 07 Jan 2017) | 3 lines
-Changed paths:
-   M /trunk/src/exp.c
-   M /trunk/src/sqrt.c
+	[tools] Clean up.
+	  * Renamed check_inits_clears to ck-inits-clears (the other "check"
+	    scripts have a name starting with "ck-").
+	  * mpfrlint: updated the invocation of this test, simplifying it to
+	    make it similar to the other ones (it was based on old code).
 
-[src/exp.c] avoid using a full limb as precision
-[src/sqrt.c] removed obsolete comment
+2017-08-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11156 | zimmerma | 2017-01-07 07:46:02 +0000 (Sat, 07 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/get_str.c
+	[tests/turandom.c] Disabled the reprod_abi test with GMP < 4.2.0
+	since the hardcoded values would be different.
 
-[src/get_str.c] avoid precision = GMP_NUMB_BITS
+2017-08-25  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11155 | zimmerma | 2017-01-07 07:26:12 +0000 (Sat, 07 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/div_ui.c
+	[src/mpfr-impl.h] Replaced
+	  (MPFR_LIKELY(expr)) || (ASSERT_FAIL(expr),0)
+	by
+	  (MPFR_LIKELY(expr)) || (ASSERT_FAIL(expr),MPFR_ASSUME(expr),0)
+	as a workaround to the fact that mpfr_assert_fail is not marked as
+	"no return" (bug 21415). Thus, after this code, expr must be true.
 
-[src/div_ui.c] added comment
+	[tests/turandom.c] Check that the behavior does not depend on the
+	platform ABI or MPFR version.
 
-------------------------------------------------------------------------
-r11154 | vlefevre | 2017-01-06 15:17:12 +0000 (Fri, 06 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/tools/mbench/README
+	[tests/turandom.c] Corrected error messages after r11661.
 
-[tools/mbench/README] Say how to disable a non-working library.
-------------------------------------------------------------------------
-r11152 | zimmerma | 2017-01-06 06:59:41 +0000 (Fri, 06 Jan 2017) | 3 lines
-Changed paths:
-   M /trunk/src/div.c
+	[tests/turandom.c] Renamed "reprod" to "reprod_rnd_exp" (reproducibility
+	test with several rounding modes and exponent ranges), because a second
+	reproducibility test will be added.
 
-[src/div.c] fixed previous commit: mpfr_div_1 and mpfr_div_2 also work for
-	    GMP_NUMB_BITS <> 64, only some fast code inside is not defined
+	[tests/turandom.c]
+	  * In underflow_tests, test the flags in all cases (not just when the
+	    returned result is 0), possibly by first computing the result in a
+	    large exponent range.
+	  * Since the flags are now well tested in underflow_tests, no longer
+	    test them in the second test of test_urandom for k = 0, which was
+	    the incorrect test that was failing (see r11659).
 
-------------------------------------------------------------------------
-r11150 | vlefevre | 2017-01-05 23:29:35 +0000 (Thu, 05 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/div.c
+	[tests/turandom.c] Do some test several times in order to trigger
+	a "mpfr_urandom() returns incorrect flags for emin = 1" failure
+	when GMP_CHECK_RANDOMIZE is not set (default).
+	Note: It is this test that is actually wrong (it corresponds to the
+	old behavior, currently found in the 3.1 branch, and was not updated
+	after the mpfr_urandom code was fixed).
 
-[src/div.c] Use mpfr_limb_ptr instead of mp_ptr.
-------------------------------------------------------------------------
-r11149 | vlefevre | 2017-01-05 23:27:43 +0000 (Thu, 05 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/div.c
+	[tests/turandom.c] Code formatting. Added an assertion.
 
-[src/div.c] Fix for GMP_NUMB_BITS != 64.
-------------------------------------------------------------------------
-r11148 | zimmerma | 2017-01-05 21:13:50 +0000 (Thu, 05 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
-   M /trunk/src/invert_limb.h
+2017-08-24  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/div.c] faster division for 2 limbs
+	[tests/turandom.c] Check that the behavior of mpfr_urandom() does not
+	depend on the rounding mode.
 
-------------------------------------------------------------------------
-r11147 | vlefevre | 2017-01-05 12:28:53 +0000 (Thu, 05 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/div_ui.c
+	[doc/mpfr.texi] Completed the description of mpfr_urandom.
 
-[src/div_ui.c] Coding style.
-------------------------------------------------------------------------
-r11146 | vlefevre | 2017-01-05 12:25:59 +0000 (Thu, 05 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/div_ui.c
+	[src/urandom.c] Completed comment.
 
-[src/div_ui.c] Simplification.
-------------------------------------------------------------------------
-r11145 | vlefevre | 2017-01-05 12:22:47 +0000 (Thu, 05 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/div_ui.c
+2017-08-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/div_ui.c] Replaced a MPFR_ASSERTN by MPFR_STAT_STATIC_ASSERT.
-------------------------------------------------------------------------
-r11144 | vlefevre | 2017-01-05 12:17:32 +0000 (Thu, 05 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tdiv_ui.c
+	[tests/turandom.c] In bug20170123, use a local gmp_randstate_t variable
+	instead of mpfr_rands, due to the gmp_randseed_ui (see r11653).
 
-[tests/tdiv_ui.c] Correction for 64-bit limb with 32-bit unsigned long.
-------------------------------------------------------------------------
-r11143 | vlefevre | 2017-01-05 11:27:53 +0000 (Thu, 05 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tdiv_ui.c
+	[tools/mpfrlint] Detect the use of gmp_randseed* functions on mpfr_rands
+	(this is bad practice: this would affect later tests, defeating the
+	purpose of GMP_CHECK_RANDOMIZE; another gmp_randstate_t variable should
+	be used instead of mpfr_rands).
 
-[tests/tdiv_ui.c] Fix when GMP_NUMB_BITS != 64.
-------------------------------------------------------------------------
-r11142 | zimmerma | 2017-01-05 10:38:44 +0000 (Thu, 05 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/src/div_ui.c
-   M /trunk/tests/tdiv_ui.c
+	[tests/{mpfr-test.h,tests.c}] Got rid of __gmp_randstate_struct, which
+	is internal to GMP: its use came from very old code (r2330 in 2003-06)
+	and it is no longer needed.
 
-last fix was incomplete
+	[tests/turandom.c] Disabled a test with GMP < 4.2.0 since it depends on
+	a specific behavior of the random generator, which changed in GMP 4.2.0
+	(the test would probably fail with such old GMP versions).
 
-------------------------------------------------------------------------
-r11141 | zimmerma | 2017-01-05 09:43:59 +0000 (Thu, 05 Jan 2017) | 3 lines
-Changed paths:
-   M /trunk/src/div_ui.c
-   M /trunk/tests/tdiv.c
-   M /trunk/tests/tdiv_ui.c
+	[src/urandom.c] Partly rewrote mpfr_urandom() so that the next
+	  random state no longer depends on the current exponent range
+	  and the rounding mode, and that the exceptions due to the
+	  rounding of the random number are now correctly generated.
+	[doc/mpfr.texi] Updated the mpfr_urandom() documentation and
+	  updated Section "API Compatibility / Changed Functions" to
+	  mention the change in MPFR 4.0.
+	[NEWS] Mentioned the change for MPFR 4.0.
 
-[src/div_ui.c] fixed a bug in mpfr_div_ui (also affects mpfr_div since it calls
-	       mpfr_div_ui when the divisor has a few bits)
+2017-08-22  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11140 | zimmerma | 2017-01-05 07:51:15 +0000 (Thu, 05 Jan 2017) | 4 lines
-Changed paths:
-   M /trunk/src/div.c
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/mul.c
-   M /trunk/src/round_near_x.c
-   M /trunk/src/sqr.c
-   M /trunk/src/sqrt.c
-   M /trunk/tests/tdiv_ui.c
+	[src/urandom.c] Minor change about underflow, following the usage.
 
-fixed underflow bug by replacing !MPFR_IS_LIKE_RNDZ by new macro
-MPFR_IS_LIKE_RNDA: for RNDN, !MPFR_IS_LIKE_RNDZ was true, while new macro
-MPFR_IS_LIKE_RNDA is false
+	[tests/turandom.c] Added inex test for the underflow & overflow tests.
 
-------------------------------------------------------------------------
-r11139 | vlefevre | 2017-01-04 19:39:41 +0000 (Wed, 04 Jan 2017) | 3 lines
-Changed paths:
-   M /trunk/tests/tdiv.c
+	[tests/turandom.c] Added overflow tests.
 
-[tests/tdiv.c] Added a test that triggers an assertion failure
-in a reduced exponent range (found from the generic tests with
-GMP_CHECK_RANDOMIZE=1483628702).
-------------------------------------------------------------------------
-r11138 | vlefevre | 2017-01-04 19:28:48 +0000 (Wed, 04 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tgeneric.c
+	[tests/turandom.c] Indentation.
 
-[tests/tgeneric.c] Added debug messages for overflow & underflow tests.
-------------------------------------------------------------------------
-r11137 | vlefevre | 2017-01-04 19:03:49 +0000 (Wed, 04 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/tests/tdiv_ui.c
+	[tests/turandom.c] Added underflow tests.
 
-[tests/tdiv_ui.c] Added a comment on new test (doesn't fail).
-------------------------------------------------------------------------
-r11136 | zimmerma | 2017-01-04 18:04:18 +0000 (Wed, 04 Jan 2017) | 2 lines
-Changed paths:
-   M /trunk/tests/tdiv_ui.c
+	[tests/turandom.c] With mini-gmp, omit another test that assumes
+	a deterministic random generator.
 
-[tdiv_ui.c] added new test
+	[src/urandom.c] Bug fix: the inexact flag was not set on underflow.
 
-------------------------------------------------------------------------
-r11130 | vlefevre | 2017-01-03 11:46:41 +0000 (Tue, 03 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/src/invert_limb.h
+	[tests/turandom.c] Added tests of the flags. This currently yields
+	a failure (inexact flag not set on underflow).
 
-[src/invert_limb.h] Removed an unused variable.
-------------------------------------------------------------------------
-r11129 | zimmerma | 2017-01-03 10:58:02 +0000 (Tue, 03 Jan 2017) | 3 lines
-Changed paths:
-   M /trunk/src/Makefile.am
-   M /trunk/src/div.c
-   D /trunk/src/invert_limb.c
-   A /trunk/src/invert_limb.h
-   M /trunk/src/mpfr-gmp.h
-   M /trunk/src/mpfr-impl.h
+	[tests/turandom.c] Added a test of the underflow flag.
 
-use a macro instead of a function for __gmpfr_invert_limb and
-__gmpfr_invert_limb_approx saves 2-3 cycles
+2017-08-21  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11118 | vlefevre | 2017-01-01 01:35:42 +0000 (Sun, 01 Jan 2017) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/urandom.c] Set the underflow flag if the drawn exponent is less
+	than emin. This corresponds to "underflow before rounding" while the
+	normal rule in MPFR is "underflow after rounding". Thus this needs to
+	be fixed.
+	Note: This simple change has been done so that it can be merged with
+	the 3.1 branch. But this will not be fixable in the 3.1 branch since
+	the significand is not drawn in this case, and drawing the significand
+	to determine whether there is an underflow would change the state of
+	the PRNG at the end of the function, breaking the ABI and the users'
+	expectations.
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r11117 | vlefevre | 2017-01-01 01:34:35 +0000 (Sun, 01 Jan 2017) | 5 lines
-Changed paths:
-   M /trunk/BUGS
-   M /trunk/INSTALL
-   M /trunk/Makefile.am
-   M /trunk/NEWS
-   M /trunk/README
-   M /trunk/TODO
-   M /trunk/acinclude.m4
-   M /trunk/configure.ac
-   M /trunk/doc/FAQ.html
-   M /trunk/doc/Makefile.am
-   M /trunk/doc/README.dev
-   M /trunk/doc/check-typography
-   M /trunk/doc/faq.xsl
-   M /trunk/doc/mpfr.texi
-   M /trunk/examples/can_round.c
-   M /trunk/examples/divworst.c
-   M /trunk/examples/rndo-add.c
-   M /trunk/examples/sample.c
-   M /trunk/examples/version.c
-   M /trunk/src/Makefile.am
-   M /trunk/src/abort_prec_max.c
-   M /trunk/src/acos.c
-   M /trunk/src/acosh.c
-   M /trunk/src/add.c
-   M /trunk/src/add1.c
-   M /trunk/src/add1sp.c
-   M /trunk/src/add_d.c
-   M /trunk/src/add_ui.c
-   M /trunk/src/agm.c
-   M /trunk/src/ai.c
-   M /trunk/src/amd/amdfam10/mparam.h
-   M /trunk/src/amd/athlon/mparam.h
-   M /trunk/src/amd/k8/mparam.h
-   M /trunk/src/arm/mparam.h
-   M /trunk/src/asin.c
-   M /trunk/src/asinh.c
-   M /trunk/src/atan.c
-   M /trunk/src/atan2.c
-   M /trunk/src/atanh.c
-   M /trunk/src/bernoulli.c
-   M /trunk/src/buildopt.c
-   M /trunk/src/cache.c
-   M /trunk/src/cbrt.c
-   M /trunk/src/check.c
-   M /trunk/src/clear.c
-   M /trunk/src/clears.c
-   M /trunk/src/cmp.c
-   M /trunk/src/cmp2.c
-   M /trunk/src/cmp_abs.c
-   M /trunk/src/cmp_d.c
-   M /trunk/src/cmp_ld.c
-   M /trunk/src/cmp_si.c
-   M /trunk/src/cmp_ui.c
-   M /trunk/src/comparisons.c
-   M /trunk/src/const_catalan.c
-   M /trunk/src/const_euler.c
-   M /trunk/src/const_log2.c
-   M /trunk/src/const_pi.c
-   M /trunk/src/constant.c
-   M /trunk/src/copysign.c
-   M /trunk/src/cos.c
-   M /trunk/src/cosh.c
-   M /trunk/src/cot.c
-   M /trunk/src/coth.c
-   M /trunk/src/csc.c
-   M /trunk/src/csch.c
-   M /trunk/src/d_div.c
-   M /trunk/src/d_sub.c
-   M /trunk/src/digamma.c
-   M /trunk/src/dim.c
-   M /trunk/src/div.c
-   M /trunk/src/div_2exp.c
-   M /trunk/src/div_2si.c
-   M /trunk/src/div_2ui.c
-   M /trunk/src/div_d.c
-   M /trunk/src/div_ui.c
-   M /trunk/src/dump.c
-   M /trunk/src/eint.c
-   M /trunk/src/eq.c
-   M /trunk/src/erandom.c
-   M /trunk/src/erf.c
-   M /trunk/src/erfc.c
-   M /trunk/src/exceptions.c
-   M /trunk/src/exp.c
-   M /trunk/src/exp10.c
-   M /trunk/src/exp2.c
-   M /trunk/src/exp3.c
-   M /trunk/src/exp_2.c
-   M /trunk/src/expm1.c
-   M /trunk/src/extract.c
-   M /trunk/src/factorial.c
-   M /trunk/src/fits_intmax.c
-   M /trunk/src/fits_s.h
-   M /trunk/src/fits_sint.c
-   M /trunk/src/fits_slong.c
-   M /trunk/src/fits_sshort.c
-   M /trunk/src/fits_u.h
-   M /trunk/src/fits_uint.c
-   M /trunk/src/fits_uintmax.c
-   M /trunk/src/fits_ulong.c
-   M /trunk/src/fits_ushort.c
-   M /trunk/src/fma.c
-   M /trunk/src/fmma.c
-   M /trunk/src/fms.c
-   M /trunk/src/fpif.c
-   M /trunk/src/frac.c
-   M /trunk/src/free_cache.c
-   M /trunk/src/frexp.c
-   M /trunk/src/gamma.c
-   M /trunk/src/gamma_inc.c
-   M /trunk/src/gammaonethird.c
-   M /trunk/src/gen_inverse.h
-   M /trunk/src/generic/coverage/mparam.h
-   M /trunk/src/generic/mparam.h
-   M /trunk/src/get_d.c
-   M /trunk/src/get_d64.c
-   M /trunk/src/get_exp.c
-   M /trunk/src/get_f.c
-   M /trunk/src/get_float128.c
-   M /trunk/src/get_flt.c
-   M /trunk/src/get_ld.c
-   M /trunk/src/get_si.c
-   M /trunk/src/get_sj.c
-   M /trunk/src/get_str.c
-   M /trunk/src/get_ui.c
-   M /trunk/src/get_uj.c
-   M /trunk/src/get_z.c
-   M /trunk/src/get_z_exp.c
-   M /trunk/src/gmp_op.c
-   M /trunk/src/grandom.c
-   M /trunk/src/hppa/mparam.h
-   M /trunk/src/hypot.c
-   M /trunk/src/ia64/mparam.h
-   M /trunk/src/ieee_floats.h
-   M /trunk/src/init.c
-   M /trunk/src/init2.c
-   M /trunk/src/inits.c
-   M /trunk/src/inits2.c
-   M /trunk/src/inp_str.c
-   M /trunk/src/int_ceil_log2.c
-   M /trunk/src/invert_limb.c
-   M /trunk/src/isinf.c
-   M /trunk/src/isinteger.c
-   M /trunk/src/isnan.c
-   M /trunk/src/isnum.c
-   M /trunk/src/isqrt.c
-   M /trunk/src/isregular.c
-   M /trunk/src/iszero.c
-   M /trunk/src/jn.c
-   M /trunk/src/jyn_asympt.c
-   M /trunk/src/li2.c
-   M /trunk/src/lngamma.c
-   M /trunk/src/log.c
-   M /trunk/src/log10.c
-   M /trunk/src/log1p.c
-   M /trunk/src/log2.c
-   M /trunk/src/log_ui.c
-   M /trunk/src/logging.c
-   M /trunk/src/min_prec.c
-   M /trunk/src/minmax.c
-   M /trunk/src/mips/mparam.h
-   M /trunk/src/modf.c
-   M /trunk/src/mp_clz_tab.c
-   M /trunk/src/mparam_h.in
-   M /trunk/src/mpf2mpfr.h
-   M /trunk/src/mpfr-cvers.h
-   M /trunk/src/mpfr-gmp.c
-   M /trunk/src/mpfr-gmp.h
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/mpfr-intmax.h
-   M /trunk/src/mpfr-longlong.h
-   M /trunk/src/mpfr-mini-gmp.c
-   M /trunk/src/mpfr-mini-gmp.h
-   M /trunk/src/mpfr-sassert.h
-   M /trunk/src/mpfr-thread.h
-   M /trunk/src/mpfr.h
-   M /trunk/src/mpn_exp.c
-   M /trunk/src/mul.c
-   M /trunk/src/mul_2exp.c
-   M /trunk/src/mul_2si.c
-   M /trunk/src/mul_2ui.c
-   M /trunk/src/mul_d.c
-   M /trunk/src/mul_ui.c
-   M /trunk/src/mulders.c
-   M /trunk/src/neg.c
-   M /trunk/src/next.c
-   M /trunk/src/nrandom.c
-   M /trunk/src/out_str.c
-   M /trunk/src/pow.c
-   M /trunk/src/pow_si.c
-   M /trunk/src/pow_ui.c
-   M /trunk/src/pow_z.c
-   M /trunk/src/powerof2.c
-   M /trunk/src/powerpc32/mparam.h
-   M /trunk/src/powerpc64/mparam.h
-   M /trunk/src/print_raw.c
-   M /trunk/src/print_rnd_mode.c
-   M /trunk/src/printf.c
-   M /trunk/src/random_deviate.c
-   M /trunk/src/random_deviate.h
-   M /trunk/src/rec_sqrt.c
-   M /trunk/src/reldiff.c
-   M /trunk/src/rem1.c
-   M /trunk/src/rint.c
-   M /trunk/src/rndna.c
-   M /trunk/src/root.c
-   M /trunk/src/round_near_x.c
-   M /trunk/src/round_p.c
-   M /trunk/src/round_prec.c
-   M /trunk/src/round_raw_generic.c
-   M /trunk/src/scale2.c
-   M /trunk/src/sec.c
-   M /trunk/src/sech.c
-   M /trunk/src/set.c
-   M /trunk/src/set_d.c
-   M /trunk/src/set_d64.c
-   M /trunk/src/set_dfl_prec.c
-   M /trunk/src/set_exp.c
-   M /trunk/src/set_f.c
-   M /trunk/src/set_float128.c
-   M /trunk/src/set_flt.c
-   M /trunk/src/set_inf.c
-   M /trunk/src/set_ld.c
-   M /trunk/src/set_nan.c
-   M /trunk/src/set_prc_raw.c
-   M /trunk/src/set_prec.c
-   M /trunk/src/set_q.c
-   M /trunk/src/set_rnd.c
-   M /trunk/src/set_si.c
-   M /trunk/src/set_si_2exp.c
-   M /trunk/src/set_sj.c
-   M /trunk/src/set_str.c
-   M /trunk/src/set_str_raw.c
-   M /trunk/src/set_ui.c
-   M /trunk/src/set_ui_2exp.c
-   M /trunk/src/set_uj.c
-   M /trunk/src/set_z.c
-   M /trunk/src/set_z_exp.c
-   M /trunk/src/set_zero.c
-   M /trunk/src/setmax.c
-   M /trunk/src/setmin.c
-   M /trunk/src/setsign.c
-   M /trunk/src/sgn.c
-   M /trunk/src/si_op.c
-   M /trunk/src/signbit.c
-   M /trunk/src/sin.c
-   M /trunk/src/sin_cos.c
-   M /trunk/src/sinh.c
-   M /trunk/src/sinh_cosh.c
-   M /trunk/src/sparc64/mparam.h
-   M /trunk/src/sqr.c
-   M /trunk/src/sqrt.c
-   M /trunk/src/sqrt_tab.h
-   M /trunk/src/sqrt_ui.c
-   M /trunk/src/stack_interface.c
-   M /trunk/src/strtofr.c
-   M /trunk/src/sub.c
-   M /trunk/src/sub1.c
-   M /trunk/src/sub1sp.c
-   M /trunk/src/sub_d.c
-   M /trunk/src/sub_ui.c
-   M /trunk/src/subnormal.c
-   M /trunk/src/sum.c
-   M /trunk/src/swap.c
-   M /trunk/src/tan.c
-   M /trunk/src/tanh.c
-   M /trunk/src/ubf.c
-   M /trunk/src/uceil_exp2.c
-   M /trunk/src/uceil_log2.c
-   M /trunk/src/ufloor_log2.c
-   M /trunk/src/ui_div.c
-   M /trunk/src/ui_pow.c
-   M /trunk/src/ui_pow_ui.c
-   M /trunk/src/ui_sub.c
-   M /trunk/src/urandom.c
-   M /trunk/src/urandomb.c
-   M /trunk/src/vasprintf.c
-   M /trunk/src/version.c
-   M /trunk/src/volatile.c
-   M /trunk/src/x86/core2/mparam.h
-   M /trunk/src/x86/mparam.h
-   M /trunk/src/x86_64/core2/mparam.h
-   M /trunk/src/x86_64/corei5/mparam.h
-   M /trunk/src/x86_64/pentium4/mparam.h
-   M /trunk/src/yn.c
-   M /trunk/src/zeta.c
-   M /trunk/src/zeta_ui.c
-   M /trunk/tests/Makefile.am
-   M /trunk/tests/cmp_str.c
-   M /trunk/tests/data/digamma
-   M /trunk/tests/data/li2
-   M /trunk/tests/memory.c
-   M /trunk/tests/mpf_compat.c
-   M /trunk/tests/mpf_compat.h
-   M /trunk/tests/mpfr-test.h
-   M /trunk/tests/mpfr_compat.c
-   M /trunk/tests/random2.c
-   M /trunk/tests/reuse.c
-   M /trunk/tests/rnd_mode.c
-   M /trunk/tests/tabort_defalloc1.c
-   M /trunk/tests/tabort_defalloc2.c
-   M /trunk/tests/tabort_prec_max.c
-   M /trunk/tests/tabs.c
-   M /trunk/tests/tacos.c
-   M /trunk/tests/tacosh.c
-   M /trunk/tests/tadd.c
-   M /trunk/tests/tadd1sp.c
-   M /trunk/tests/tadd_d.c
-   M /trunk/tests/tadd_ui.c
-   M /trunk/tests/tagm.c
-   M /trunk/tests/tai.c
-   M /trunk/tests/talloc-cache.c
-   M /trunk/tests/talloc.c
-   M /trunk/tests/tasin.c
-   M /trunk/tests/tasinh.c
-   M /trunk/tests/tassert.c
-   M /trunk/tests/tatan.c
-   M /trunk/tests/tatanh.c
-   M /trunk/tests/taway.c
-   M /trunk/tests/tbuildopt.c
-   M /trunk/tests/tcan_round.c
-   M /trunk/tests/tcbrt.c
-   M /trunk/tests/tcheck.c
-   M /trunk/tests/tcmp.c
-   M /trunk/tests/tcmp2.c
-   M /trunk/tests/tcmp_d.c
-   M /trunk/tests/tcmp_ld.c
-   M /trunk/tests/tcmp_ui.c
-   M /trunk/tests/tcmpabs.c
-   M /trunk/tests/tcomparisons.c
-   M /trunk/tests/tconst_catalan.c
-   M /trunk/tests/tconst_euler.c
-   M /trunk/tests/tconst_log2.c
-   M /trunk/tests/tconst_pi.c
-   M /trunk/tests/tcopysign.c
-   M /trunk/tests/tcos.c
-   M /trunk/tests/tcosh.c
-   M /trunk/tests/tcot.c
-   M /trunk/tests/tcoth.c
-   M /trunk/tests/tcsc.c
-   M /trunk/tests/tcsch.c
-   M /trunk/tests/td_div.c
-   M /trunk/tests/td_sub.c
-   M /trunk/tests/tdigamma.c
-   M /trunk/tests/tdim.c
-   M /trunk/tests/tdiv.c
-   M /trunk/tests/tdiv_d.c
-   M /trunk/tests/tdiv_ui.c
-   M /trunk/tests/teint.c
-   M /trunk/tests/teq.c
-   M /trunk/tests/terandom.c
-   M /trunk/tests/terandom_chisq.c
-   M /trunk/tests/terf.c
-   M /trunk/tests/tests.c
-   M /trunk/tests/texceptions.c
-   M /trunk/tests/texp.c
-   M /trunk/tests/texp10.c
-   M /trunk/tests/texp2.c
-   M /trunk/tests/texpm1.c
-   M /trunk/tests/tfactorial.c
-   M /trunk/tests/tfits.c
-   M /trunk/tests/tfma.c
-   M /trunk/tests/tfmma.c
-   M /trunk/tests/tfmod.c
-   M /trunk/tests/tfms.c
-   M /trunk/tests/tfpif.c
-   M /trunk/tests/tfprintf.c
-   M /trunk/tests/tfrac.c
-   M /trunk/tests/tfrexp.c
-   M /trunk/tests/tgamma.c
-   M /trunk/tests/tgamma_inc.c
-   M /trunk/tests/tgeneric.c
-   M /trunk/tests/tgeneric_ui.c
-   M /trunk/tests/tget_d.c
-   M /trunk/tests/tget_d_2exp.c
-   M /trunk/tests/tget_f.c
-   M /trunk/tests/tget_flt.c
-   M /trunk/tests/tget_ld_2exp.c
-   M /trunk/tests/tget_set_d64.c
-   M /trunk/tests/tget_sj.c
-   M /trunk/tests/tget_str.c
-   M /trunk/tests/tget_z.c
-   M /trunk/tests/tgmpop.c
-   M /trunk/tests/tgrandom.c
-   M /trunk/tests/thyperbolic.c
-   M /trunk/tests/thypot.c
-   M /trunk/tests/tinits.c
-   M /trunk/tests/tinp_str.c
-   M /trunk/tests/tinternals.c
-   M /trunk/tests/tisnan.c
-   M /trunk/tests/tisqrt.c
-   M /trunk/tests/tj0.c
-   M /trunk/tests/tj1.c
-   M /trunk/tests/tjn.c
-   M /trunk/tests/tl2b.c
-   M /trunk/tests/tlgamma.c
-   M /trunk/tests/tli2.c
-   M /trunk/tests/tlngamma.c
-   M /trunk/tests/tlog.c
-   M /trunk/tests/tlog10.c
-   M /trunk/tests/tlog1p.c
-   M /trunk/tests/tlog2.c
-   M /trunk/tests/tlog_ui.c
-   M /trunk/tests/tmin_prec.c
-   M /trunk/tests/tminmax.c
-   M /trunk/tests/tmodf.c
-   M /trunk/tests/tmul.c
-   M /trunk/tests/tmul_2exp.c
-   M /trunk/tests/tmul_d.c
-   M /trunk/tests/tmul_ui.c
-   M /trunk/tests/tnext.c
-   M /trunk/tests/tnrandom.c
-   M /trunk/tests/tnrandom_chisq.c
-   M /trunk/tests/tout_str.c
-   M /trunk/tests/toutimpl.c
-   M /trunk/tests/tpow.c
-   M /trunk/tests/tpow3.c
-   M /trunk/tests/tpow_all.c
-   M /trunk/tests/tpow_z.c
-   M /trunk/tests/tprintf.c
-   M /trunk/tests/trandom.c
-   M /trunk/tests/trandom_deviate.c
-   M /trunk/tests/trec_sqrt.c
-   M /trunk/tests/tremquo.c
-   M /trunk/tests/trint.c
-   M /trunk/tests/trndna.c
-   M /trunk/tests/troot.c
-   M /trunk/tests/tround_prec.c
-   M /trunk/tests/tsec.c
-   M /trunk/tests/tsech.c
-   M /trunk/tests/tset.c
-   M /trunk/tests/tset_d.c
-   M /trunk/tests/tset_exp.c
-   M /trunk/tests/tset_f.c
-   M /trunk/tests/tset_float128.c
-   M /trunk/tests/tset_ld.c
-   M /trunk/tests/tset_q.c
-   M /trunk/tests/tset_si.c
-   M /trunk/tests/tset_sj.c
-   M /trunk/tests/tset_str.c
-   M /trunk/tests/tset_z.c
-   M /trunk/tests/tset_z_exp.c
-   M /trunk/tests/tsgn.c
-   M /trunk/tests/tsi_op.c
-   M /trunk/tests/tsin.c
-   M /trunk/tests/tsin_cos.c
-   M /trunk/tests/tsinh.c
-   M /trunk/tests/tsinh_cosh.c
-   M /trunk/tests/tsprintf.c
-   M /trunk/tests/tsqr.c
-   M /trunk/tests/tsqrt.c
-   M /trunk/tests/tsqrt_ui.c
-   M /trunk/tests/tstckintc.c
-   M /trunk/tests/tstdint.c
-   M /trunk/tests/tstrtofr.c
-   M /trunk/tests/tsub.c
-   M /trunk/tests/tsub1sp.c
-   M /trunk/tests/tsub_d.c
-   M /trunk/tests/tsub_ui.c
-   M /trunk/tests/tsubnormal.c
-   M /trunk/tests/tsum.c
-   M /trunk/tests/tswap.c
-   M /trunk/tests/ttan.c
-   M /trunk/tests/ttanh.c
-   M /trunk/tests/ttrunc.c
-   M /trunk/tests/tui_div.c
-   M /trunk/tests/tui_pow.c
-   M /trunk/tests/tui_sub.c
-   M /trunk/tests/turandom.c
-   M /trunk/tests/tvalist.c
-   M /trunk/tests/tversion.c
-   M /trunk/tests/ty0.c
-   M /trunk/tests/ty1.c
-   M /trunk/tests/tyn.c
-   M /trunk/tests/tzeta.c
-   M /trunk/tests/tzeta_ui.c
-   M /trunk/tools/bench/Makefile.am
-   M /trunk/tools/bench/benchtime.h
-   M /trunk/tools/bench/mpfrbench.c
-   M /trunk/tools/ck-clz_tab
-   M /trunk/tools/ck-copyright-notice
-   M /trunk/tools/ck-mparam
-   M /trunk/tools/ck-news
-   M /trunk/tools/ck-version-info
-   M /trunk/tools/get_patches.sh
-   M /trunk/tune/Makefile.am
-   M /trunk/tune/bidimensional_sample.c
-   M /trunk/tune/speed.c
-   M /trunk/tune/tuneup.c
+	[src/urandom.c] Updated comments about overflow and its flag.
 
-Copyright notice update: added 2017 with
-  perl -pi -e 's/ (\d{4}-)?(2016)(?= Free Software)/
-               " ".($1||"$2-").($2+1)/e' **/*(^/)
-under zsh, reverting the tools/mbench directory (not distributed with
-MPFR). Removed 2016 from the example in the doc/README.dev file.
-------------------------------------------------------------------------
-r11116 | vlefevre | 2016-12-31 04:01:05 +0000 (Sat, 31 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sqr.c
+	[src/urandom.c] Simplified the code, but, except for precision 1,
+	without changing the state of the PRNG.
+	Note: The code could be simplified even further, but the goal of the
+	current change is to allow it to be merged with the 3.1 branch (where
+	precision 1 is not supported) without too many conflicts.
 
-[src/sqr.c] Bug fixes (portability): replaced left shift of a value
-that can be negative by a multiplication by 2.
-------------------------------------------------------------------------
-r11115 | vlefevre | 2016-12-31 03:40:00 +0000 (Sat, 31 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/src/sqrt.c
+	[src/urandom.c] Moved some code without consequences. Updated comments.
 
-[src/sqrt.c] C90 compatibility.
-------------------------------------------------------------------------
-r11114 | vlefevre | 2016-12-31 03:28:01 +0000 (Sat, 31 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/src/div.c
+	[src/urandom.c] Useless parentheses; reformatting.
 
-[src/div.c] C90 compatibility.
-------------------------------------------------------------------------
-r11113 | vlefevre | 2016-12-31 03:17:51 +0000 (Sat, 31 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/src/invert_limb.c
+2017-08-17  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/invert_limb.c] Removed unused variable.
-------------------------------------------------------------------------
-r11112 | zimmerma | 2016-12-30 17:23:49 +0000 (Fri, 30 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/mul.c
+	[src/set_float128.c] No longer depend on the native FP type "double"
+	(via mpfr_set_d), avoiding the usual precision issues with the x87
+	traditional FPU in particular. Use the internal representation with
+	limbs, instead. The code is simpler and should also be faster.
+	Note: together with r11627, this avoids the tset_float128 failure
+	with the "-m32 -mpc32" GCC options.
 
-[src/mul.c] small speedup in mpfr_mul_2 by not computing the product b0*c0
+	[src/get_float128.c] Removed variable z (no longer useful).
 
-------------------------------------------------------------------------
-r11111 | zimmerma | 2016-12-30 16:39:13 +0000 (Fri, 30 Dec 2016) | 3 lines
-Changed paths:
-   M /trunk/src/mul.c
-   M /trunk/src/sqr.c
+	[src/get_float128.c] No longer depend on the native FP type "double"
+	(via mpfr_get_d), avoiding the usual precision issues with the x87
+	traditional FPU in particular. Use the internal representation with
+	limbs, instead. The code is simpler and should also be faster.
 
-[src/mul.c] fixed typo in comment
-[src/sqr.c] likewise
+2017-08-14  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11110 | zimmerma | 2016-12-30 15:56:31 +0000 (Fri, 30 Dec 2016) | 4 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/mul.c
-   M /trunk/src/sqr.c
+	[src/get_float128.c] Fixed the remaining cases of mpfr_get_float128
+	(when the value is below the smallest subnormal in absolute value).
 
-[src/mul.c] fixed regression for 1/2 limbs introduced in revision 11098:
-	    critical routines should not be exported, otherwise we lose a few
-	    cycles (maybe they are inlined by the compiler)
+	[src/get_float128.c] Partly fixed mpfr_get_float128 when it underflows.
+	[tests/tset_float128.c] Added tests for small values, in particular
+	  involving underflows (and subnormals).
 
-------------------------------------------------------------------------
-r11109 | zimmerma | 2016-12-30 14:25:47 +0000 (Fri, 30 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
-   M /trunk/src/invert_limb.c
-   M /trunk/src/mpfr-impl.h
+2017-08-13  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/div.c] further improvement in mpfr_div_1()
+	[src/get_float128.c] Reverted r11623 (a note mainly for the 3.1 branch,
+	which actually doesn't support __float128).
 
-------------------------------------------------------------------------
-r11108 | zimmerma | 2016-12-30 13:16:21 +0000 (Fri, 30 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+2017-08-12  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/div.c] use an approximate quotient in mpfr_div_1()
+	[src/get_float128.c] Updated the FIXME.
 
-------------------------------------------------------------------------
-r11107 | zimmerma | 2016-12-30 12:19:40 +0000 (Fri, 30 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+2017-08-08  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/div.c] simplify mpfr_div_1()
+	[src/get_float128.c] Added a FIXME after a bug report by Rob:
+	https://sympa.inria.fr/sympa/arc/mpfr/2017-08/msg00003.html
 
-------------------------------------------------------------------------
-r11106 | zimmerma | 2016-12-30 09:10:24 +0000 (Fri, 30 Dec 2016) | 5 lines
-Changed paths:
-   M /trunk/src/Makefile.am
-   M /trunk/src/div.c
-   A /trunk/src/invert_limb.c
-   M /trunk/src/mpfr-gmp.h
-   M /trunk/src/mpfr-impl.h
+2017-08-03  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/invert_limb.c] new file for __gmpfr_invert_limb internal function
-		    (only provided so far for 64-bit limb)
-[src/div.c] mpfr_div_1 and mpfr_div_2 don't require --enable-gmp-internals
-	    any more
+	[doc/mpfr.texi] Section "Getting the Best Efficiency Out of MPFR" moved
+	from "Installing MPFR" to "MPFR Basics". Added corresponding node.
 
-------------------------------------------------------------------------
-r11105 | zimmerma | 2016-12-30 07:51:35 +0000 (Fri, 30 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt_tab.h
+2017-08-03  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[sqrt_tab.h] better file description
+	new section "How to get the best out of MPFR"
 
-------------------------------------------------------------------------
-r11104 | vlefevre | 2016-12-29 15:32:45 +0000 (Thu, 29 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/acinclude.m4
-   M /trunk/src/div.c
+2017-08-03  Vincent Lefèvre  <vincent at vinc17.net>
 
-Improvement concerning the _mulx_u64 intrinsic.
-------------------------------------------------------------------------
-r11103 | zimmerma | 2016-12-29 11:05:18 +0000 (Thu, 29 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/acinclude.m4
-   M /trunk/src/div.c
+	[doc/mpfr.texi] Added a FIXME about memory allocation.
 
-[src/div.c] replace GMP's invert_limb (internal) by own code
+	[doc/mpfr.texi] Updated the month.
 
-------------------------------------------------------------------------
-r11101 | vlefevre | 2016-12-29 03:06:30 +0000 (Thu, 29 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/src/sqrt.c
+	[doc/mpfr.texi] Removed obsolete comments.
 
-[src/sqrt.c] Replaced constant MPFR_ASSERTD by MPFR_STAT_STATIC_ASSERT.
-------------------------------------------------------------------------
-r11098 | zimmerma | 2016-12-28 12:24:13 +0000 (Wed, 28 Dec 2016) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/mul.c
-   M /trunk/src/sqr.c
-   M /trunk/tools/mbench/mfv5-mpfr.cc
+	[doc/mpfr.texi] Updated paragraph on the MPFR formatted output functions
+	and overflow on the return type int.
 
-[src/sqr.c] use special code for 1 and 2 limbs
-[mbench] added mpfr_sqr
+2017-08-02  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11097 | zimmerma | 2016-12-28 10:25:31 +0000 (Wed, 28 Dec 2016) | 4 lines
-Changed paths:
-   M /trunk/src/sqrt.c
-   M /trunk/src/sqrt_tab.h
+	[NEWS] Mention the use of the old dtags under Linux (see r11588).
 
-[src/sqrt.c] faster sqrt code for 2 limbs and 64-bit limb (removed special code
-	     for 32-bit limb)
-[src/sqrt_tab.h] new table for mpn_sqrtrem4_approx
+	[src] Moved mpfr_vasprintf from vasprintf.c to printf.c and updated
+	file descriptions for consistency (vasprintf.c should probably be
+	renamed later to something like printf_aux.c).
 
-------------------------------------------------------------------------
-r11096 | zimmerma | 2016-12-28 09:20:24 +0000 (Wed, 28 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tlog.c
+	[src/printf.c] Updated a comment (taking r11269 into account).
 
-[tlog.c] missing printf()
+	[src/vasprintf.c] Added an assertion.
 
-------------------------------------------------------------------------
-r11095 | vlefevre | 2016-12-27 10:53:16 +0000 (Tue, 27 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/NEWS
+	[src/vasprintf.c] Completed mpfr_vasnprintf_aux description.
 
-[NEWS] Mention that mpfr_get_str now also sets the inexact flag when
-the conversion is inexact (completing r11073).
-------------------------------------------------------------------------
-r11094 | vlefevre | 2016-12-27 10:33:09 +0000 (Tue, 27 Dec 2016) | 3 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2017-08-01  Vincent Lefèvre  <vincent at vinc17.net>
 
-[mpfr.texi] Be stronger in mpfr_round_nearest_away documentation
-(as the ternary value is used each time the last bit on p+1 bits
-is not 0, i.e. in about half cases).
-------------------------------------------------------------------------
-r11093 | zimmerma | 2016-12-27 08:18:54 +0000 (Tue, 27 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tests/{tstdint.c,tvalist.c}] Include "mpfr-test.h" instead of
+	"mpfr-impl.h" (this is done only when compiling with mini-gmp).
 
-[mpfr.texi] added stuff in mpfr_round_nearest_away documentation
+	[tools/mpfrlint] Detect "mpfr-impl.h" inclusion by the test programs:
+	"mpfr-test.h" should be included instead; otherwise __MPFR_WITHIN_MPFR
+	will be defined, yielding failures under MS Windows with DLL.
 
-------------------------------------------------------------------------
-r11092 | vlefevre | 2016-12-27 02:33:59 +0000 (Tue, 27 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/src/log.c
+2017-07-28  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/log.c] Added another FIXME concerning the error analysis.
-------------------------------------------------------------------------
-r11091 | vlefevre | 2016-12-27 02:20:57 +0000 (Tue, 27 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/log.c
+	fixed typo
 
-[src/log.c] Added an assertion and a FIXME: error in the MPFR code or
-in the proof (error analysis).
-------------------------------------------------------------------------
-r11090 | vlefevre | 2016-12-27 01:58:54 +0000 (Tue, 27 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/src/log.c
+2017-07-28  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/log.c] Slight simplification / improvement.
-------------------------------------------------------------------------
-r11089 | vlefevre | 2016-12-27 01:16:53 +0000 (Tue, 27 Dec 2016) | 7 lines
-Changed paths:
-   M /trunk/doc/algorithms.tex
+	[doc/mpfr.texi] Added important details for the example from r11595.
 
-[doc/algorithms.tex] In Section "The logarithm function" (from r9046),
-removed everything concerning the AGM since this is not what is done
-in the MPFR code, where mpfr_agm is simply called (and this function
-already has its own description later).
-Note: The error analysis of mpfr_log can only be found in log.c, but
-seems incorrect (though the bounds may be valid); it was introduced
-in r416.
-------------------------------------------------------------------------
-r11087 | vlefevre | 2016-12-26 02:43:56 +0000 (Mon, 26 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/log.c
+2017-07-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/log.c] Group constant terms together (GCC takes advantage of this,
-at least on x86_64).
-------------------------------------------------------------------------
-r11086 | vlefevre | 2016-12-26 02:30:02 +0000 (Mon, 26 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/log.c
+	[doc/mpfr.texi] Minor changes.
 
-[src/log.c] Check for integer overflow (no visible changes in
-standard configuration) + explanations.
-------------------------------------------------------------------------
-r11085 | vlefevre | 2016-12-26 02:17:10 +0000 (Mon, 26 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/src/log.c
+	[doc/mpfr.texi] Updated the month.
 
-[src/log.c] Get the exponent of the input only once.
-------------------------------------------------------------------------
-r11075 | vlefevre | 2016-12-20 12:57:31 +0000 (Tue, 20 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sum.c
+2017-07-27  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/sum.c] Delay some assignments so that they are done just before
-the variables are used (this should have been done in r10467).
-------------------------------------------------------------------------
-r11073 | vlefevre | 2016-12-20 11:41:54 +0000 (Tue, 20 Dec 2016) | 4 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	fixed FIXME related to r11595
 
-[doc/mpfr.texi] For mpfr_get_str, explicitly say that the inexact flag
-is set iff the result is inexact (since this may not be obvious and this
-wasn't the case until now). In the compatibility section, mention this
-change.
-------------------------------------------------------------------------
-r11072 | vlefevre | 2016-12-20 11:35:11 +0000 (Tue, 20 Dec 2016) | 3 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2017-07-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/mpfr.texi] For mpfr_get_str, removed the note saying that
-the inexact flag is not set when the conversion is inexact:
-this is fixed in r11071.
-------------------------------------------------------------------------
-r11071 | vlefevre | 2016-12-20 11:17:31 +0000 (Tue, 20 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/get_str.c
+	[doc/mpfr.texi] Added FIXME on example from r11595.
 
-[src/get_str.c] Corrected a comment and a test for inexactness
-(→ the new tget_str.c test no longer fails).
-------------------------------------------------------------------------
-r11068 | vlefevre | 2016-12-19 16:05:20 +0000 (Mon, 19 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/tests/tstrtofr.c
+2017-07-26  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tstrtofr.c] Added a comment.
-------------------------------------------------------------------------
-r11067 | vlefevre | 2016-12-19 15:46:38 +0000 (Mon, 19 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/src/strtofr.c
+	[mpfr.texi] added example showing how to emulate fixed-point arithmetic
 
-[src/strtofr.c] Better indentation.
-------------------------------------------------------------------------
-r11066 | vlefevre | 2016-12-19 15:36:30 +0000 (Mon, 19 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/tests/tstrtofr.c
+2017-07-17  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tstrtofr.c] Replaced mpfr_cmp() == 0 by mpfr_equal_p().
-------------------------------------------------------------------------
-r11065 | vlefevre | 2016-12-19 15:04:12 +0000 (Mon, 19 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/sin_cos.c] Avoid integer overflows with precision 1100000 and
+	the 32-bit ABI (32-bit long), fixing bug reported by Simon Byrne:
+	https://sympa.inria.fr/sympa/arc/mpfr/2017-07/msg00002.html
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r11064 | vlefevre | 2016-12-19 14:17:11 +0000 (Mon, 19 Dec 2016) | 3 lines
-Changed paths:
-   M /trunk/src/get_str.c
+	[tests] Re-indented some RND_LOOP / RND_LOOP_NO_RNDF blocks.
 
-[src/get_str.c] Removed an obsolete comment, which came from r2757
-(and even before, under another form); this comment no longer made
-any sense as the sign of dir is no longer tested.
-------------------------------------------------------------------------
-r11063 | vlefevre | 2016-12-19 14:00:20 +0000 (Mon, 19 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/src/get_str.c
+	[configure.ac] Under Linux, make sure that the old dtags are used
+	if LD_LIBRARY_PATH is defined, avoiding the following issue:
+	  https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=859732
+	  https://lists.gnu.org/archive/html/libtool/2017-05/msg00000.html
+	(merged changeset r11587 from the 3.1 branch)
 
-[src/get_str.c] Indentation fixed.
-------------------------------------------------------------------------
-r11062 | vlefevre | 2016-12-19 13:59:35 +0000 (Mon, 19 Dec 2016) | 6 lines
-Changed paths:
-   M /trunk/src/get_str.c
+2017-07-10  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/get_str.c] Setting the inexact flag as done in r11060 was incorrect
-since the flags are restored. Moreover, this was done even when the Ziv
-loop was going to fail (it's not clear whether this was expected). Moved
-the test out of the Ziv loop, and update the copy of the flags instead
-of the flags that will be overwritten.
-Note: this still fails, but now for another reason.
-------------------------------------------------------------------------
-r11061 | vlefevre | 2016-12-19 13:36:28 +0000 (Mon, 19 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tget_str.c
+	[tests/tversion.c] Forgot casts for printf in r11585.
 
-[tests/tget_str.c] Check the inexact flag for mpfr_get_str.
-The test currently fails.
-------------------------------------------------------------------------
-r11060 | zimmerma | 2016-12-19 08:26:26 +0000 (Mon, 19 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/get_str.c
+	[tests/tversion.c] Added ABI information & tests.
 
-[get_str.c] inexact flag should now be correct in mpfr_get_str
+2017-06-20  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11059 | zimmerma | 2016-12-19 08:08:19 +0000 (Mon, 19 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/strtofr.c
+	[src/subnormal.c] Correction in comment (English).
 
-[strtofr.c] updated comment
+2017-06-19  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11058 | vlefevre | 2016-12-18 22:47:20 +0000 (Sun, 18 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[tests/tversion.c]
+	  * Better organization; moved MPFR patches info below MPFR version.
+	  * Output __GMP_CC and __GMP_CFLAGS values.
+	  * Output GMP ABI info (to be completed with MPFR ABI info).
 
-[doc/mpfr.texi] Added a short note about the default precision for Re.
-------------------------------------------------------------------------
-r11057 | zimmerma | 2016-12-18 18:27:18 +0000 (Sun, 18 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+2017-06-03  Vincent Lefèvre  <vincent at vinc17.net>
 
-[mpfr.texi] added emin in comment about mpfr_round_nearest_away
+	[configure.ac] Improved some AC_DEFINE comments.
 
-------------------------------------------------------------------------
-r11056 | zimmerma | 2016-12-18 09:01:59 +0000 (Sun, 18 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/get_str.c
-   M /trunk/src/strtofr.c
+	[doc/README.dev] Added quotes for clarity.
 
-fixed bug in mpfr_strtofr (and likely similar bug in mpfr_get_str)
+	[tests/mpf_compat.h] Always use stdout for failure messages.
 
-------------------------------------------------------------------------
-r11055 | zimmerma | 2016-12-17 22:22:54 +0000 (Sat, 17 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tstrtofr.c
+	[src/get_str.c] Improved comments (avoid the confusion between a
+	negative base argument and a negative base).
 
-[tstrtofr.c] added test for bug in mpfr_strtofr()
+2017-06-02  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11054 | vlefevre | 2016-12-17 02:27:05 +0000 (Sat, 17 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/src/sqrt.c
+	[doc/mpfr.texi] Punctuation.
 
-[src/sqrt.c] Added "do ... while (0)" in macro definition.
-------------------------------------------------------------------------
-r11053 | vlefevre | 2016-12-16 15:04:26 +0000 (Fri, 16 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/src/div.c
+2017-06-02  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-Removed trailing whitespace.
-------------------------------------------------------------------------
-r11052 | vlefevre | 2016-12-16 14:54:14 +0000 (Fri, 16 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/round_raw_generic.c
+	added mpfr_get_q in Added Functions
 
-[src/round_raw_generic.c] Completed the support for MPFR_RNDNA (set
-*inexp if use_inexp is true), from a patch by John P. Hartmann.
-------------------------------------------------------------------------
-r11051 | zimmerma | 2016-12-16 11:15:14 +0000 (Fri, 16 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
-   M /trunk/src/sqrt_tab.h
+	src/get_str.c: fixed for negative base
+	tests/tget_str.c: added tests for negative base
 
-new mpn_sqrtrem4_approx function (unused so far)
+	tests/mpf_compat.h: non-regression tests for bugs fixed in revision 11565
 
-------------------------------------------------------------------------
-r11048 | vlefevre | 2016-12-15 15:18:42 +0000 (Thu, 15 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/src/sin.c
+	src/get_str.c: allow -36 <= b <= -2 too (work in progress) with the same
+		       meaning as in mpf_get_str
 
-[src/sin.c] Handled a FIXME.
-------------------------------------------------------------------------
-r11047 | vlefevre | 2016-12-15 14:53:27 +0000 (Thu, 15 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/src/sqrt_tab.h
+	fixed a bug in mpfr_mul for RNDF when Mulders' algorithm is used
+	(and resolved a FIXME)
 
-[src/sqrt_tab.h] Added copyright notice.
-------------------------------------------------------------------------
-r11044 | zimmerma | 2016-12-15 08:28:05 +0000 (Thu, 15 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+2017-06-02  Vincent Lefèvre  <vincent at vinc17.net>
 
-[sqrt.c] simplify code for GMP_NUMB_BITS = 64
+	[doc/mpfr.texi] Corrected mpfr_get_q documentation.
 
-------------------------------------------------------------------------
-r11042 | zimmerma | 2016-12-14 21:07:34 +0000 (Wed, 14 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-longlong.h
+	[src/get_q.c] Added assertions to detect integer overflows, in case
+	mpfr_exp_t is larger than mp_bitcnt_t.
 
-better fix than r11025
+2017-06-02  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r11041 | zimmerma | 2016-12-14 16:42:32 +0000 (Wed, 14 Dec 2016) | 3 lines
-Changed paths:
-   M /trunk/src/Makefile.am
-   M /trunk/src/sqrt.c
-   A /trunk/src/sqrt_tab.h
+	src/mpf2mpfr.h: replaced __MPFR_GMP (requires internal mpfr-gmp.h)
 
-[sqrt_tab.h] new header file with table for mpn_sqrtrem2_approx()
-[sqrt.c] new version of mpn_sqrtrem2_approx()
+	src/mpf2mpfr.h: fixed fits_s* functions and get_si
 
-------------------------------------------------------------------------
-r11039 | zimmerma | 2016-12-14 10:52:58 +0000 (Wed, 14 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+	use macro __MPFR_GMP
 
-[sqrt.c] added mathematical error in mpn_sqrtrem2_approx()
+	added new function mpfr_get_q
 
-------------------------------------------------------------------------
-r11038 | zimmerma | 2016-12-14 07:40:46 +0000 (Wed, 14 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tsprintf.c
+	src/mpf2mpfr.h: added mpf_cmp_z (appeared in GMP 6.1.0)
 
-added non-regression test for bug fix in r11037
+2017-06-01  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11037 | vlefevre | 2016-12-14 03:22:12 +0000 (Wed, 14 Dec 2016) | 4 lines
-Changed paths:
-   M /trunk/src/vasprintf.c
+	[Makefile.am] Put doc/README.dev in EXTRA_DIST to provide this file in
+	  tarballs too (it is not installed by "make install", though), since
+	  it contains information that may be useful for users of tarballs and
+	  various distributed files mention it.
+	[README] Update about the "doc" directory and "doc/README.dev".
 
-[src/vasprintf.c] Fixed a bug as spec.prec can be a negative number
-other than -1 (if such a value is given as an argument with ".*").
-This is the probable cause of the assertion failure on:
-https://gforge.inria.fr/tracker/?func=detail&atid=619&aid=21056&group_id=136
-------------------------------------------------------------------------
-r11036 | zimmerma | 2016-12-13 17:42:05 +0000 (Tue, 13 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+	[doc/README.dev] More information about the DEBUG macro.
 
-[sqrt.c] faster version of mpn_sqrtrem2 for 64-bit limb
+	[doc/mpfr.texi] Updated the month.
 
-------------------------------------------------------------------------
-r11035 | zimmerma | 2016-12-13 11:36:56 +0000 (Tue, 13 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+	Update about MPFR_RNDF (faithful rounding):
+	  * NEWS: mention that it is partially supported (should be updated
+	    once MPFR_RNDF is completely supported).
+	  * TODO: moved an item to the right place (MPFR_RNDF is not removed
+	    from the TODO because it is not completely supported yet).
+	  * doc/mpfr.texi: added a FIXME about the partial support.
 
-[sqrt.c] approximate version of mpn_sqrtrem2, saves a few cycles in mpfr_sqrt1
+2017-05-31  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11034 | zimmerma | 2016-12-13 08:09:07 +0000 (Tue, 13 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/add1sp.c
-   M /trunk/src/sub1sp.c
+	[src/{atanh.c,log1p.c}]
+	  * Replaced mpfr_get_exp by MPFR_GET_EXP (so that the exponent is
+	    checked with --enable-assert).
+	  * For a test, doing the division first should be better.
 
-[add/sub] added MPFR_UNLIKELY when adding one ulp changes the binade
+2017-05-31  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r11033 | vlefevre | 2016-12-12 17:53:57 +0000 (Mon, 12 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/src/sin.c
+	improved log1p and atanh for small inputs
 
-[src/sin.c] Added missing word in r11032 comment.
-------------------------------------------------------------------------
-r11032 | vlefevre | 2016-12-12 17:53:02 +0000 (Mon, 12 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/src/sin.c
+	added expm1 to mbench
 
-[src/sin.c] Common/related subexpressions. Added a FIXME.
-------------------------------------------------------------------------
-r11031 | zimmerma | 2016-12-12 17:32:09 +0000 (Mon, 12 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/cos.c
-   M /trunk/src/exp_2.c
-   M /trunk/src/log.c
+	added log1p to mbench
 
-[cos.c,exp_2.c,log.c] improved initial precision for Ziv's strategy
+2017-05-29  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11030 | zimmerma | 2016-12-12 17:01:19 +0000 (Mon, 12 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sin.c
+	[doc/mpfr.texi] Updated the month.
 
-[sin.c] improved strategy for initial precision
+	Removed trailing spaces.
 
-------------------------------------------------------------------------
-r11029 | zimmerma | 2016-12-12 16:43:39 +0000 (Mon, 12 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+	[tests] Code simplification and improvement by using SAME_VAL().
 
-[sqrt.c] updated code and comments
+	[tests/tbeta.c] Replaced not_same() by the simpler ! SAME_VAL().
 
-------------------------------------------------------------------------
-r11028 | zimmerma | 2016-12-12 15:26:22 +0000 (Mon, 12 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+	[src/sum.c] Code reindentation due to a new test for MPFR_RNDF support,
+	and other minor changes in formatting and comments.
 
-[sqrt.c] slightly improve mpn_rsqrtrem1() (and detailed error analysis)
+	[doc/sum.txt] Typo in the MPFR_RNDF text.
 
-------------------------------------------------------------------------
-r11027 | zimmerma | 2016-12-12 10:25:51 +0000 (Mon, 12 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+	Merged the "faithful" branch into the trunk:
+	faithful rounding (MPFR_RNDF).
 
-[sqrt.c] removed mpn_sqrtrem1 (no longer needed since r11023)
+	[tests/tgeneric.c] For MPFR_RNDF, replaced EQUAL() by SAME_VAL(),
+	which also tests the sign (to distinguish +0 and -0).
 
-------------------------------------------------------------------------
-r11026 | zimmerma | 2016-12-12 10:23:39 +0000 (Mon, 12 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+	[tests/tui_sub.c] Avoid a failure in 32-bit ABI by replacing
+	RND_LOOP by RND_LOOP_NO_RNDF.
 
-[sqrt.c] fixed comments to be coherent with the code
+	Merged the latest changes from the trunk.
 
-------------------------------------------------------------------------
-r11025 | zimmerma | 2016-12-12 09:04:19 +0000 (Mon, 12 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-longlong.h
+2017-05-29  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-fixed https://gforge.inria.fr/tracker/?func=detail&atid=619&aid=21053&group_id=136
+	added new reference
 
-------------------------------------------------------------------------
-r11024 | vlefevre | 2016-12-09 19:55:12 +0000 (Fri, 09 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+2017-05-24  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sqrt.c] Corrected a comment (1 has exponent 1 and we support
-precision 1).
-------------------------------------------------------------------------
-r11023 | zimmerma | 2016-12-09 16:59:46 +0000 (Fri, 09 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+	[tests/tsprintf.c] Fixed setlocale usage (problem detected with MinGW)
+	by not using the returned string any longer. Indeed, ISO C99 says that
+	this string "may be overwritten by a subsequent call to the setlocale
+	function".
 
-[sqrt.c] no more special case for prec <= GMP_NUMB_BITS/2, and added comments
+	[src] Moved "#include <errno.h>" from printf.c to vasprintf.c
+	(this should have been done in r5230, where EOVERFLOW was moved).
+	This fixes the "Got r = -1, errno = 0" errors in tprintf with
+	MPFR_CHECK_LARGEMEM=1.
 
-------------------------------------------------------------------------
-r11022 | vlefevre | 2016-12-09 15:13:10 +0000 (Fri, 09 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+	[src/vasprintf.c] Added overflow detection at the end (due to the switch
+	to mpfr_intmax_t for the string length in the string_buffer structure,
+	it was no longer detected; however, this bug was not normally visible in
+	the tests because here, a negative value was returned thanks to wrapping
+	in a type conversion and the negative value was changed to the expected
+	-1 value in printf.c).
 
-[src/sqrt.c] Bug fix (replaced = by ==). Note: this kind of bug could
-be detected by avoiding extra parentheses.
-------------------------------------------------------------------------
-r11021 | vlefevre | 2016-12-09 15:01:25 +0000 (Fri, 09 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/src/div.c
-   M /trunk/src/sqrt.c
+	[src/vasprintf.c] Added log messages.
 
-[src] Simplified ~MPFR_LIMB_ZERO to MPFR_LIMB_MAX.
-------------------------------------------------------------------------
-r11020 | zimmerma | 2016-12-09 14:55:31 +0000 (Fri, 09 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+	[src/vasprintf.c] In case of overflow, do not stop before everything has
+	been processed, allowing the %...n arguments to be filled, as decided.
 
-[div.c] simplified mpfr_div_1 and mpfr_div_2
+	[tests/tprintf.c] check_long_string() error handling: initialize n2 to
+	an invalid value and do all tests before exiting.
 
-------------------------------------------------------------------------
-r11019 | zimmerma | 2016-12-09 14:34:20 +0000 (Fri, 09 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+	[src/vasprintf.c] Fixed some parts of overflow tracking.
 
-[div.c] added comments and simplified code
+	[tests/tprintf.c] More detailed error message.
 
-------------------------------------------------------------------------
-r11018 | zimmerma | 2016-12-09 13:53:45 +0000 (Fri, 09 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+	[tests/tprintf.c] Added tests with %ln.
 
-[div.c] simplified code
+	[tests/tprintf.c] Improved check_vprintf_failure().
 
-------------------------------------------------------------------------
-r11017 | zimmerma | 2016-12-09 13:50:55 +0000 (Fri, 09 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/mul.c
-   M /trunk/tests/tmul.c
+	[src/vasprintf.c] Fixed the handling of the 'n' format specifier
+	  for size = 0, still allowing its support in case of overflow on
+	  the return value (i.e. when the number of characters that would
+	  have been output is > INT_MAX).
+	  Note: full support in case of overflow is still limited by GMP
+	  and the C library.
+	[tests/tprintf.c] Increased the memory needed in check_long_string().
 
-likewise for mpfr_mul_2()
+2017-05-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11016 | zimmerma | 2016-12-09 13:44:45 +0000 (Fri, 09 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/mul.c
-   M /trunk/tests/tmul.c
+	[src/mpfr-intmax.h] Define mpfr_uintmax_t and MPFR_INTMAX_MAX too.
+	However, this will not necessarily be used by src/vasprintf.c, as
+	this can be regarded as an EOVERFLOW error for which the behavior
+	on the %...n values is not specified, i.e. we may not need to
+	support size values larger than INT_MAX.
 
-fixed bug in mpfr_mul_1() introduced in r11004 and added test case
+2017-05-22  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r11015 | zimmerma | 2016-12-09 13:14:56 +0000 (Fri, 09 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+	[src/vasprintf.c] In a macro definition, changed a parameter to
+	lowercase so that it doesn't look like a constant to mpfrlint.
 
-[div.c] simplified underflow test in mpfr_div_1()
+	[src/vasprintf.c] Added a FIXME for the percent_n() / mixed() bug due
+	to the 'n' format specifier with size = 0. The way to fix this issue
+	depends on the specifications in case of overflow on the return value,
+	and for POSIX, they are unclear. Waiting for comments...
 
-------------------------------------------------------------------------
-r11014 | vlefevre | 2016-12-09 12:51:17 +0000 (Fri, 09 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/src/div_ui.c
+	[src/mpfr-intmax.h] Define mpfr_intmax_t as being the largest
+	signed integer type available for the MPFR build. It will be
+	useful for the formatted output functions (src/vasprintf.c) to
+	handle the 'n' format specifier, assuming that the value may
+	be larger than INT_MAX, which is possible assuming that the
+	C standard has a defect in the corresponding specification:
+	https://sourceware.org/bugzilla/show_bug.cgi?id=21360
 
-[src/div_ui.c] underflow is unlikely!
-------------------------------------------------------------------------
-r11013 | vlefevre | 2016-12-09 12:48:20 +0000 (Fri, 09 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/src/sqrt.c
+	[tests/tsprintf.c] Added explanation for the bugs triggered by
+	percent_n() and mixed().
 
-[src/sqrt.c] overflow and underflow are unlikely!
-------------------------------------------------------------------------
-r11012 | zimmerma | 2016-12-09 12:42:08 +0000 (Fri, 09 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+	[tests/tsprintf.c] Added percent_n() test to reproduce the bug found
+	in mixed(), test without random data.
 
-[div.c] overflow and underflow are unlikely!
+	[src/vasprintf.c] In partition_number(), complete check for overflow
+	on total.
 
-------------------------------------------------------------------------
-r11011 | zimmerma | 2016-12-09 12:30:39 +0000 (Fri, 09 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+	[src/vasprintf.c] Partially fixed check for integer overflow when
+	the long and int types have the same size.
 
-[div.c] slightly better code (less dependencies) for mpfr_div_1 when u0 >= v0
+	[src/vasprintf.c] With assertions enabled, check that the number of
+	characters to be written computed in partition_number() corresponds
+	to what is really written.
 
-------------------------------------------------------------------------
-r11010 | zimmerma | 2016-12-09 12:02:19 +0000 (Fri, 09 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+	[src/vasprintf.c] Fixed the bug triggered by the da_DK locale test: the
+	computation of the number of characters to be written was incorrect in
+	partition_number() when the thousands separator was not empty. This bug
+	was visible with size = 0 and could be visible near overflow on the
+	number of characters.
+	Note: the buggy code was introduced in r5288 (2008-02-15), which fixed
+	other issues with the thousands separator.
 
-[div.c] simplified mpfr_div_1() code
+	[tests/tsprintf.c] Do more tests in the da_DK locale (these are the
+	only tests for which the thousands separator is not empty).
 
-------------------------------------------------------------------------
-r11009 | zimmerma | 2016-12-09 11:52:44 +0000 (Fri, 09 Dec 2016) | 3 lines
-Changed paths:
-   M /trunk/src/div.c
+	[tests/tsprintf.c] Do more tests involving check_sprintf() in a loop
+	(to test mpfr_snprintf with size = 0 more often), and call mixed()
+	later in order to get failures without the use of %n first.
 
-[div.c] in mpfr_div_1, do not deal with the case where the precision is
-	<= GMP_NUMB_BITS/2, to not slow down the general case
+2017-05-19  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r11008 | vlefevre | 2016-12-09 11:45:35 +0000 (Fri, 09 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/mul.c
+	get rid of computations with 'double' in mpfr_zeta
 
-[src/mul.c] Slight improvement (but shouldn't affect the generated code
-with an optimizing compiler).
-------------------------------------------------------------------------
-r11007 | zimmerma | 2016-12-09 11:34:58 +0000 (Fri, 09 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/mul.c
+2017-05-19  Vincent Lefèvre  <vincent at vinc17.net>
 
-[mul.c] likewise for mpfr_mul_2()
+	[tests/tsprintf.c] Added a TODO about %n test.
 
-------------------------------------------------------------------------
-r11006 | zimmerma | 2016-12-09 11:31:52 +0000 (Fri, 09 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/mul.c
+	[doc/README.dev] Added MPFR_TESTS_FPE_TRAP documentation.
 
-[mul.c] simplified mpfr_mul_1()
+	[tests/tests.c] Corrected comment about MPFR_TESTS_FPE_TRAP.
 
-------------------------------------------------------------------------
-r11005 | zimmerma | 2016-12-09 10:50:30 +0000 (Fri, 09 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/mul.c
-   M /trunk/tests/tmul.c
+	Renamed MPFR_TESTS_DIVBYZERO to MPFR_TESTS_FPE_DIV (less confusing).
+	In doc/README.dev, updated the corresponding description.
 
-fixed similar bug in mpfr_mul_2() + non-regression test
+	[tests] Renamed MPFR_RAISE_EXCEPTIONS to MPFR_TESTS_FPE_TRAP.
 
-------------------------------------------------------------------------
-r11004 | zimmerma | 2016-12-09 10:30:53 +0000 (Fri, 09 Dec 2016) | 3 lines
-Changed paths:
-   M /trunk/src/mul.c
-   M /trunk/tests/tmul.c
+	[tests] Got rid of MPFR_TESTS_EXCEPTIONS (added in r11489 and above),
+	which is redundant with MPFR_TESTS_DIVBYZERO and MPFR_ERRDIVZERO. The
+	code related to these exceptions is now like r11488 (see the output of
+	"svn diff -r11488"), but keeping the following changes:
+	  * Missing !defined(MPFR_ERRDIVZERO) tests added in r11498,11499.
+	  * In tests.c:
+	      - code related to traps (macro MPFR_RAISE_EXCEPTIONS, which will
+	        be renamed);
+	      - more detailed output about which FP exceptions occurred;
+	      - removal of "#ifdef MPFR_ERRDIVZERO" (as in r11493), as this is
+	        better with Automake 1.13+ (required by MPFR since r9375).
+	Note: EXCEPTIONS_FLAG renamed to FPE_FLAGS, since EXCEPTIONS_FLAG is
+	reserved by ISO C when <errno.h> is included.
 
-[mul.c] simplified the code and fixed a bug
-[tmul.c] added non-regression test for fixed bug
+	[tests/tsprintf.c] Do the locale_da_DK() test several times to yield
+	a failure by default once the bug triggered by mixed() is fixed.
 
-------------------------------------------------------------------------
-r11003 | zimmerma | 2016-12-09 10:10:42 +0000 (Fri, 09 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[tests/tsprintf.c] Updated comment about r11501: the failure occurs
+	with %n when the size argument of mpfr_vsnprintf is 0.
 
-[sub1sp.c] added comment + assert
+	[tests/tsprintf.c] Do more tests with %n. One now gets a failure
+	by default (which occurs when one gets randsize <= 0).
 
-------------------------------------------------------------------------
-r11002 | vlefevre | 2016-12-09 08:59:15 +0000 (Fri, 09 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
-   M /trunk/src/mpfr-impl.h
+	[tests/tsprintf.c] Fixed portability issues: The va_end(3) man page
+	of Linux Programmer's Manual says: "On some systems, va_end contains
+	a closing '}' matching a '{' in va_start, so that both macros must
+	occur in the same function, and in a way that allows this."
 
-[src] Fixed bug introduced in r10964 with --with-gmp-build: move
-the numberof_const() definition from mpfr-gmp.h to mpfr-impl.h.
-------------------------------------------------------------------------
-r11001 | zimmerma | 2016-12-09 08:46:20 +0000 (Fri, 09 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/add1sp.c
+	[tests/tget_set_d64.c] Disable tests with a division by 0 (which now
+	occurs only with -DXDEBUG) if MPFR_ERRDIVZERO is defined.
 
-[add1sp.c] added comment
+	[tests/tset_ld.c] Disable an overflow test with a division by 0
+	(now occurs only with -DXDEBUG) if MPFR_ERRDIVZERO is defined.
 
-------------------------------------------------------------------------
-r11000 | zimmerma | 2016-12-09 08:26:54 +0000 (Fri, 09 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/add1sp.c
+	[doc/README.dev] Details for "-DMPFR_TESTS_DIVBYZERO -DMPFR_ERRDIVZERO".
 
-[add1sp.c] simplified mpfr_add1sp2()
+	[tests/tsprintf.c] In mixed(), initialize n2 to an invalid value
+	in order to ease failure analysis.
 
-------------------------------------------------------------------------
-r10999 | zimmerma | 2016-12-09 07:54:55 +0000 (Fri, 09 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+2017-05-19  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[sub1sp.c] in mpfr_sub1sp2(), compute a0 before a1 whenever possible
+	removed leftover debug statement in last commit
 
-------------------------------------------------------------------------
-r10998 | vlefevre | 2016-12-09 00:33:52 +0000 (Fri, 09 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/tools/mbench/mfv5.cc
+	fix for clang bug (https://bugs.llvm.org//show_bug.cgi?id=17686)
 
-[tools/mbench/mfv5.cc] Fixed type.
-------------------------------------------------------------------------
-r10997 | zimmerma | 2016-12-08 17:16:48 +0000 (Thu, 08 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/tools/mbench/timp.h
+2017-05-19  Vincent Lefèvre  <vincent at vinc17.net>
 
-[mbench] fixed typo
+	[tests/tests.c] Change for MPFR_TESTS_DIVBYZERO: in case of FE_DIVBYZERO
+	or FE_INVALID, fail unconditionally, not just when MPFR_ERRDIVZERO is
+	defined, otherwise one cannot see the output about the floating-point
+	exceptions with "make check" (the test of MPFR_ERRDIVZERO here should
+	have been removed after switching to Automake 1.13, which discards the
+	output when the test program succeeds).
+	Note: defining MPFR_TESTS_DIVBYZERO without MPFR_ERRDIVZERO is just for
+	debugging.
 
-------------------------------------------------------------------------
-r10995 | vlefevre | 2016-12-08 12:34:52 +0000 (Thu, 08 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/src/sub1sp.c
-   M /trunk/tests/tcheck.c
+2017-05-19  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-Replaced two ~0 with mp_limb_t target by MPFR_LIMB_MAX.
-------------------------------------------------------------------------
-r10994 | vlefevre | 2016-12-08 12:25:17 +0000 (Thu, 08 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/tools/mpfrlint
+	more work on MPFR_TESTS_EXCEPTIONS
 
-[tools/mpfrlint] Added a test detecting code like ~0 (either an error
-or poorly written code).
-------------------------------------------------------------------------
-r10993 | zimmerma | 2016-12-08 11:00:19 +0000 (Thu, 08 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/add1sp.c
-   M /trunk/src/sub1sp.c
+2017-05-19  Vincent Lefèvre  <vincent at vinc17.net>
 
-improved add1sp.c and sub1sp.c like in r10991
+	[tests/tests.c] Re-added code testing FE_DIVBYZERO and FE_INVALID with
+	-DMPFR_TESTS_DIVBYZERO -DMPFR_ERRDIVZERO, because MPFR_TESTS_EXCEPTIONS
+	is not ready yet.
 
-------------------------------------------------------------------------
-r10992 | zimmerma | 2016-12-08 10:59:09 +0000 (Thu, 08 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/tools/mbench/mfv5.cc
+	[tests/tversion.c] Output IEEE floats status.
 
-[mbench] set default max_exp to 1 (independent of number of bits per limb)
+2017-05-19  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r10991 | zimmerma | 2016-12-08 10:32:38 +0000 (Thu, 08 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	check for fp exceptions (experimental)
 
-[sub1sp.c] improved further
+2017-05-17  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r10990 | zimmerma | 2016-12-08 08:46:31 +0000 (Thu, 08 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/tools/mbench/mfv5.cc
+	[src/cmp2.c] Added/updated comments.
 
-[mbench] use mpfr_printf to print test numbers
+	[tests/tcmp2.c] Added tests with equal numbers, possibly of different
+	sizes.
 
-------------------------------------------------------------------------
-r10989 | zimmerma | 2016-12-08 08:23:26 +0000 (Thu, 08 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/tools/mbench/mfv5.cc
+	[src/cmp2.c] Corrected comments.
 
-fixed bug in mfv5 (numbers used were 10 times too large)
+	[tools/mpfrlint] In the detection of reserved macro names, skip ERR
+	from src/mpfr-gmp.h (this is a special case).
 
-------------------------------------------------------------------------
-r10987 | zimmerma | 2016-12-07 16:21:48 +0000 (Wed, 07 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[tests/tget_set_d64.c] Made PRINT_ERR_MISC more robust.
 
-[sub1sp.c] corrected a comment, added another one
+	[tests/*.c] Renamed the remaining macros whose names are reserved
+	by ISO C when <errno.h> is included.
 
-------------------------------------------------------------------------
-r10986 | vlefevre | 2016-12-07 15:46:22 +0000 (Wed, 07 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/src/add1sp.c
+2017-05-16  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/add1sp.c] Typo in a comment.
-------------------------------------------------------------------------
-r10985 | vlefevre | 2016-12-07 15:35:15 +0000 (Wed, 07 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/src/pow.c
+	[tests/texceptions.c] Made code formatting consistent.
 
-[src/pow.c] Punctuation to make clear that there are 2 sentences.
-------------------------------------------------------------------------
-r10984 | zimmerma | 2016-12-07 15:29:27 +0000 (Wed, 07 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/add1sp.c
-   M /trunk/src/sub1sp.c
+	[tests/*.c] Renamed "ERROR" macro (macro name reserved by ISO C
+	when <errno.h> is included) to "PRINT_ERROR", and made the macro
+	more robust.
 
-likewise r10983
+	Define the EXP() macro in src/mpfr-gmp.h only when needed (macro name
+	reserved by ISO C when <errno.h> is included).
 
-------------------------------------------------------------------------
-r10983 | zimmerma | 2016-12-07 15:06:48 +0000 (Wed, 07 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/add1sp.c
+	[src/gamma.c] Got rid of the EXPM1_STR macro (macro name reserved
+	by ISO C when <errno.h> is included), made no longer interesting by
+	using mpfr_set_str_binary only once and another temporary variable.
+	At the same time, replaced the usual allocation by a GROUP allocation
+	(more efficient).
 
-[add1sp.c] improved a conditional (if compiler is not smart enough)
+2017-05-15  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r10982 | zimmerma | 2016-12-07 13:14:33 +0000 (Wed, 07 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/exp_2.c
+	[tests/tcheck.c] Code reformatting (GNU coding style).
 
-[exp_2.c] small improvements
+	[tests/tcheck.c] Renamed "ERROR" macro (macro name reserved by ISO C
+	when <errno.h> is included) to "PRINT_ERROR".
 
-------------------------------------------------------------------------
-r10981 | vlefevre | 2016-12-07 12:13:21 +0000 (Wed, 07 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	Do not define macro names starting with "SIG" (+ uppercase letter)
+	as they are reserved when <signal.h> is included (ISO C, 7.31.7),
+	which happens to be the case in tests/tests.c, which also includes
+	tests/mpfr-test.h and src/mpfr-impl.h indirectly.
+	  * src/mpfr-impl.h, tests/mpfr-test.h: renamed macros:
+	      SIGN → VSIGN
+	      SIGN_RAND → RAND_SIGN
+	  * {src,tests}/*.{c,h}: updated the names in the use of these macros.
 
-[src/mpfr-impl.h] MPFR_INT_CEIL_LOG2(x) macro: added a FIXME and an
-assertion concerning whether x <= ULONG_MAX or not.
-------------------------------------------------------------------------
-r10980 | vlefevre | 2016-12-07 11:52:48 +0000 (Wed, 07 Dec 2016) | 1 line
-Changed paths:
-   M /trunk/src/pow.c
+	[tools/mpfrlint] Added a comment about the definition of reserved
+	identifiers (in particular, macro names).
 
-[src/pow.c] Added an assertion.
-------------------------------------------------------------------------
-r10979 | zimmerma | 2016-12-07 11:51:24 +0000 (Wed, 07 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/doc/algorithms.tex
+	[tools/mpfrlint] Detect the definition of reserved macro names.
 
-[algorithms.tex] fixed typo
+	[src/bernoulli.c] Changed isprime to is_prime in order to avoid obscure
+	problems if <ctype.h> is added to mpfr-impl.h in the future (or if this
+	function is made external). See ISO C "Future library directions",
+	Clause 7.31.2 "Character handling <ctype.h>".
 
-------------------------------------------------------------------------
-r10978 | zimmerma | 2016-12-07 11:10:01 +0000 (Wed, 07 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/pow.c
+2017-05-12  Vincent Lefèvre  <vincent at vinc17.net>
 
-[pow.c] tuned starting precision (and removed obsolete comment)
+	[src/mpfr-impl.h] Improved comments about assertions and MPFR_ASSUME().
 
-------------------------------------------------------------------------
-r10977 | zimmerma | 2016-12-07 10:42:04 +0000 (Wed, 07 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/src/pow.c
+2017-05-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-use MPFR_INT_CEIL_LOG2
+	[INSTALL] Mention the problem when almost all the tests fails with a
+	message "Incorrect MPFR version! ...".
 
-------------------------------------------------------------------------
-r10973 | zimmerma | 2016-12-06 17:12:59 +0000 (Tue, 06 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/tools/mbench/mfv5.cc
-   M /trunk/tools/mbench/mfv5.h
+	Increase the buffer sizes even more, and added a comment. This may
+	be better in case of quick future changes (possibly for debugging),
+	without checking carefully. For the tests, optimal code is useless.
 
-[mfv5] added option -e, for example use -e1 to avoid over/underflow in mpfr_pow
+2017-05-09  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r10972 | zimmerma | 2016-12-06 17:11:42 +0000 (Tue, 06 Dec 2016) | 3 lines
-Changed paths:
-   M /trunk/src/pow.c
+	fixed bugs found by gcc 7.1.0 (-Werror=format-overflow=)
+	[VL] The MPFR code was correct. This is actually a bug in GCC:
+	  https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79257
 
-[pow.c] reduced overhead of special cases (gives speedup of a factor of two
-	for 53 bits of precision)
+2017-05-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r10970 | zimmerma | 2016-12-06 14:16:33 +0000 (Tue, 06 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/tools/mbench/mfv5-mpfr.cc
+	[doc] Updated FAQ.html with update-faq.
 
-added mpfr_pow
+2017-05-05  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r10969 | vlefevre | 2016-12-06 08:22:02 +0000 (Tue, 06 Dec 2016) | 2 lines
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[tools/mbench/timp.h] Updated TIMP_MEASURE() to handle the case where
+	the return value is 0: this probably means that timp_overhead was too
+	large and incorrect. In this case, TIMP_OVERHEAD() is called again to
+	recompute timp_overhead and the timing is redone.
+	Note: if we do not call TIMP_OVERHEAD() again, then TIMP_MEASURE()
+	loops indefinitely, meaning that timp_overhead was really too large.
 
-[tools/mpfrlint] Correction for zsh change after v5.2 (POSIX compat:
-"set -e; f() { false && true; }; f; echo OK" no longer prints OK).
-------------------------------------------------------------------------
-r10964 | vlefevre | 2016-11-29 16:06:33 +0000 (Tue, 29 Nov 2016) | 8 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
-   M /trunk/src/mulders.c
+	[tools/mbench/timp.h] Comment at the wrong place. Fixed.
 
-Check that the numberof() macro is used on an array.
-  * src/mpfr-gmp.h: define numberof_const() macro, equivalent to the
-    old numberof() macro: no check, but constant expression; improved
-    the numberof() macro to check that it is used on an array (since
-    an array can silently be converted to a pointer in C). Note that
-    potential failures are currently reported at run time.
-  * src/mulders.c: replaced numberof by numberof_const in #define's
-    (also removed a useless cast at the same time).
-------------------------------------------------------------------------
-r10963 | vlefevre | 2016-11-17 22:28:27 +0000 (Thu, 17 Nov 2016) | 2 lines
-Changed paths:
-   M /trunk/src/set_ld.c
-   M /trunk/tests/tset_ld.c
+	[tools/mbench/timp.h] Added a comment about r11458.
 
-[src/set_ld.c,tests/tset_ld.c] Updated comments, in particular
-concerning LDBL_MAX.
-------------------------------------------------------------------------
-r10961 | vlefevre | 2016-11-15 13:59:58 +0000 (Tue, 15 Nov 2016) | 3 lines
-Changed paths:
-   M /trunk/tests/tset_ld.c
+2017-05-04  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tset_ld.c] Added an overflow test that triggers a bug for
-double-double (IBM long double format). See:
-  https://sympa.inria.fr/sympa/arc/mpfr/2016-11/msg00006.html
-------------------------------------------------------------------------
-r10960 | vlefevre | 2016-11-15 13:48:27 +0000 (Tue, 15 Nov 2016) | 5 lines
-Changed paths:
-   M /trunk/src/get_ld.c
+	[tools/mbench/timp.h] Fixed overflows on unsigned arithmetic.
 
-[src/get_ld.c] Fixed bugs for double-double (IBM long double format):
-  * one from r8650, which could yield a spurious assertion failure
-    in debug mode in case of underflow (with result 0);
-  * one from r8972, which used the variable sign uninitialized and
-    could yield a result with an incorrect sign.
-------------------------------------------------------------------------
-r10959 | vlefevre | 2016-11-15 13:16:04 +0000 (Tue, 15 Nov 2016) | 1 line
-Changed paths:
-   M /trunk/tests/tset_ld.c
+	[tools/mbench/mfv5.h] Increased values from 2^60-1 to 2^64-1
+	(it is possible to get more than 2^60-1 cycles in practice!).
 
-[tests/tset_ld.c] Added a missing exit(1).
-------------------------------------------------------------------------
-r10958 | vlefevre | 2016-11-15 09:44:27 +0000 (Tue, 15 Nov 2016) | 7 lines
-Changed paths:
-   M /trunk/tests/tget_d.c
-   M /trunk/tests/tget_d_2exp.c
-   M /trunk/tests/tget_ld_2exp.c
-   M /trunk/tests/tget_set_d64.c
-   M /trunk/tests/tset_ld.c
+	Merged the latest changes from the trunk, including some old changesets
+	related to mpfr_zeta that were skipped, resolving conflicts. Added RNDF
+	support to new code introduced by this merge:
+	  * mpfr_mul_1n in src/mul.c (from r11281);
+	  * mpfr_sqr_1n in src/sqr.c (from r11283);
+	  * mpfr_div_1n in src/div.c (from r11284);
+	  * mpfr_sqrt1n in src/sqrt.c (from r11293).
 
-[tests] _GMP_IEEE_FLOATS was got rid of in r10150, but still used in
-the tests, meaning that some tests were no longer done. So, get rid of
-_GMP_IEEE_FLOATS also in the tests. Testing !defined(MPFR_ERRDIVZERO)
-or defined(HAVE_SIGNEDZ) should be sufficient, depending on the context
-(they were already used alone at some other places, so that new failures
-are unlikely); anyway, _GMP_IEEE_FLOATS was not the right macro to test.
-Only tget_set_d64.c has a specific change to use _MPFR_IEEE_FLOATS.
-------------------------------------------------------------------------
-r10957 | vlefevre | 2016-11-15 08:43:19 +0000 (Tue, 15 Nov 2016) | 2 lines
-Changed paths:
-   M /trunk/src/get_ld.c
+	Merged r11198-11280 from the trunk; no conflicts but additional changes:
+	  * About r11271 (src/add1sp.c), which introduces new special code
+	    (function mpfr_add1sp1n), handle MPFR_RNDF in the same way as done
+	    in similar existing special code (mpfr_add1sp1 and mpfr_add1sp2).
+	  * In mpfr_add1sp3, do the same thing (this should have been done in
+	    r11172, where this function was introduced via a merge).
+	  * About r11279 (src/sub1sp.c, tests/tsub1sp.c), which introduces new
+	    special code (function mpfr_sub1sp1n), do the same thing.
+	    In tests/tsub1sp.c, s/RND_LOOP/RND_LOOP_NO_RNDF/ as usual to avoid
+	    a failure.
+	  * Note: concerning mpfr_sub1sp3, RNDF support was added at the same
+	    time of the merge in r11179.
+	  * Some style changes related to RNDF, in particular for consistency.
 
-[src/get_ld.c] For double-double (IBM long double format): test other
-special values, as this may be useful.
-------------------------------------------------------------------------
-r10956 | vlefevre | 2016-11-15 07:41:32 +0000 (Tue, 15 Nov 2016) | 4 lines
-Changed paths:
-   M /trunk/src/get_ld.c
+	Merged r11197 from the trunk, resolving the conflict.
 
-[src/get_ld.c] For double-double (IBM long double format), the code
-was incorrect on large finite values, which are infinite as a double:
-(+inf) + (-inf) was computed, which is NaN (thanks to Rob for the
-report). Fixed this bug, with code clean up (not tested).
-------------------------------------------------------------------------
-r10954 | vlefevre | 2016-11-10 15:45:24 +0000 (Thu, 10 Nov 2016) | 2 lines
-Changed paths:
-   M /trunk/INSTALL
+	Merged r11179-11196 from the trunk (no conflicts).
 
-[INSTALL] Added a note about MinGW and libtool error "libobj name ...
-may not contain shell special characters.", with a solution.
-------------------------------------------------------------------------
-r10953 | vlefevre | 2016-11-09 04:27:57 +0000 (Wed, 09 Nov 2016) | 1 line
-Changed paths:
-   M /trunk/doc/sum.txt
+2017-05-02  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/sum.txt] Final corrections.
-------------------------------------------------------------------------
-r10952 | vlefevre | 2016-11-09 03:52:03 +0000 (Wed, 09 Nov 2016) | 1 line
-Changed paths:
-   M /trunk/doc/sum.txt
+	[src/gamma.c] Clarified proof for tiny arguments again.
 
-[doc/sum.txt] Another correction due to the rewrite for reuse support.
-------------------------------------------------------------------------
-r10951 | vlefevre | 2016-11-09 03:20:29 +0000 (Wed, 09 Nov 2016) | 1 line
-Changed paths:
-   M /trunk/doc/sum.txt
+	[src/gamma.c] Clarified proof for tiny arguments.
 
-[doc/sum.txt] Correction.
-------------------------------------------------------------------------
-r10944 | vlefevre | 2016-11-08 10:07:52 +0000 (Tue, 08 Nov 2016) | 1 line
-Changed paths:
-   M /trunk/src/sum.c
+	[src/gamma.c] In the proof for tiny arguments:
+	  * Simplification suggested by Paul.
+	  * Attempt to clarify the end.
 
-[src/sum.c] Added a short explanation for halfway cases.
-------------------------------------------------------------------------
-r10943 | vlefevre | 2016-11-08 01:04:49 +0000 (Tue, 08 Nov 2016) | 1 line
-Changed paths:
-   M /trunk/doc/sum.txt
+2017-05-02  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/sum.txt] Improved an example (from my ARITH-23 slides).
-------------------------------------------------------------------------
-r10942 | vlefevre | 2016-11-08 00:59:47 +0000 (Tue, 08 Nov 2016) | 1 line
-Changed paths:
-   M /trunk/doc/sum.txt
+	added comment
 
-[doc/sum.txt] English usage.
-------------------------------------------------------------------------
-r10941 | vlefevre | 2016-11-07 14:17:28 +0000 (Mon, 07 Nov 2016) | 2 lines
-Changed paths:
-   M /trunk/doc/sum.txt
+	added reference for mbench (rdtsc vs rdtscp)
 
-[doc/sum.txt] Explained the handling of halfway cases for sq = 1
-(since the explanations for sq ≥ 2 are not valid for sq = 1).
-------------------------------------------------------------------------
-r10940 | vlefevre | 2016-11-07 14:06:50 +0000 (Mon, 07 Nov 2016) | 1 line
-Changed paths:
-   M /trunk/doc/sum.txt
+2017-04-28  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/sum.txt] Minor update.
-------------------------------------------------------------------------
-r10939 | vlefevre | 2016-11-07 03:47:24 +0000 (Mon, 07 Nov 2016) | 2 lines
-Changed paths:
-   M /trunk/doc/sum.txt
+	[src/gamma.c] Tiny arguments: corrected a typo and added a TODO
+	(one might get a better condition).
 
-[doc/sum.txt] Last corrections. Concerning the setting of the sign of
-the result, this changed with the support for precision 1 (see r10068).
-------------------------------------------------------------------------
-r10938 | vlefevre | 2016-11-07 03:03:06 +0000 (Mon, 07 Nov 2016) | 1 line
-Changed paths:
-   M /trunk/doc/sum.txt
+	[src/gamma.c] Corrections in a proof for tiny arguments. Added a TODO.
 
-[doc/sum.txt] Correction (English).
-------------------------------------------------------------------------
-r10937 | vlefevre | 2016-11-07 02:41:11 +0000 (Mon, 07 Nov 2016) | 1 line
-Changed paths:
-   M /trunk/doc/sum.txt
+2017-04-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/sum.txt] Correction about neg / sgn.
-------------------------------------------------------------------------
-r10936 | vlefevre | 2016-11-07 01:47:17 +0000 (Mon, 07 Nov 2016) | 2 lines
-Changed paths:
-   M /trunk/doc/sum.txt
+	[doc/README.dev] Update about the MPFR_GENERIC_ABI macro.
 
-[doc/sum.txt] Added details about the handling of halfway cases, as
-the rule is not obvious due to two's complement representation.
-------------------------------------------------------------------------
-r10935 | vlefevre | 2016-11-06 23:46:57 +0000 (Sun, 06 Nov 2016) | 1 line
-Changed paths:
-   M /trunk/src/sum.c
+	[src/sqr.c] Corrected a comment.
 
-[src/sum.c] Cosmetic change for consistency between lbit and rbit.
-------------------------------------------------------------------------
-r10934 | vlefevre | 2016-11-06 22:39:38 +0000 (Sun, 06 Nov 2016) | 1 line
-Changed paths:
-   M /trunk/doc/sum.txt
+	[src/sqrt.c] Blank line like in add1sp.c, sub1sp.c, etc.
 
-[doc/sum.txt] Minor update.
-------------------------------------------------------------------------
-r10933 | vlefevre | 2016-11-04 13:55:53 +0000 (Fri, 04 Nov 2016) | 1 line
-Changed paths:
-   M /trunk/doc/sum.txt
+	[src/sqr.c] Blank lines and comment like in add1sp.c, sub1sp.c, etc.
 
-[doc/sum.txt] A bit more explanations.
-------------------------------------------------------------------------
-r10932 | vlefevre | 2016-11-04 12:52:58 +0000 (Fri, 04 Nov 2016) | 3 lines
-Changed paths:
-   M /trunk/doc/sum.txt
+	[src/mul.c] Like in add1sp.c and sub1sp.c, do not define the specific
+	functions for low precision if MPFR_GENERIC_ABI is defined (they are
+	not called in such a case).
 
-[doc/sum.txt] Corrected the usage of the HYPHEN-MINUS character (-):
-  * If it is a minus sign, use U+2212 MINUS SIGN (as already done).
-  * Do not use "-" after the "non" and "pre" prefixes.
-------------------------------------------------------------------------
-r10931 | vlefevre | 2016-11-04 10:32:55 +0000 (Fri, 04 Nov 2016) | 1 line
-Changed paths:
-   M /trunk/doc/sum.txt
+	[src/sub1sp.c] Added blank lines for readability (like in add1sp.c).
 
-[doc/sum.txt] Minor improvement.
-------------------------------------------------------------------------
-r10929 | vlefevre | 2016-10-27 15:25:34 +0000 (Thu, 27 Oct 2016) | 1 line
-Changed paths:
-   M /trunk/tools/mpfrlint
+	s/interruption/interrupt/
 
-[tools/mpfrlint] Replaced "TZ=UTC" by "TZ=GMT0" for portability.
-------------------------------------------------------------------------
-r10928 | vlefevre | 2016-10-27 13:54:43 +0000 (Thu, 27 Oct 2016) | 1 line
-Changed paths:
-   M /trunk/doc/sum.txt
+	[mbench] Updated copyright years. Added a comment.
 
-[doc/sum.txt] Added a note.
-------------------------------------------------------------------------
-r10927 | vlefevre | 2016-10-27 13:51:11 +0000 (Thu, 27 Oct 2016) | 2 lines
-Changed paths:
-   M /trunk/doc/sum.txt
+2017-04-27  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/sum.txt] Update for the current code (support of reused arguments);
-some other improvements.
-------------------------------------------------------------------------
-r10926 | vlefevre | 2016-10-27 13:47:16 +0000 (Thu, 27 Oct 2016) | 1 line
-Changed paths:
-   M /trunk/doc/sum.txt
+	better detection of rdtscp
 
-[doc/sum.txt] Corrected 2 typos.
-------------------------------------------------------------------------
-r10925 | vlefevre | 2016-10-27 12:30:01 +0000 (Thu, 27 Oct 2016) | 5 lines
-Changed paths:
-   M /trunk/src/sum.c
+2017-04-18  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sum.c] Changed a MPN_COPY_DECR to MPN_COPY, which may be more
-efficient: as of r10464 (support for reused arguments), the memory
-used by the accumulator for the TMD resolution is no longer a part
-of the main accumulator, so that we now know that the memory blocks
-do not overlap.
-------------------------------------------------------------------------
-r10924 | vlefevre | 2016-10-26 13:46:28 +0000 (Wed, 26 Oct 2016) | 1 line
-Changed paths:
-   M /trunk/src/sum.c
+	[src/mpfr-impl.h] Updated a comment, with reference to GCC bug 80454.
 
-[src/sum.c] Corrected a comment from r10503.
-------------------------------------------------------------------------
-r10923 | vlefevre | 2016-10-26 13:39:20 +0000 (Wed, 26 Oct 2016) | 1 line
-Changed paths:
-   M /trunk/src/sum.c
+2017-04-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sum.c] Moved/rewrote a comment (should have been done in r10467).
-------------------------------------------------------------------------
-r10922 | vlefevre | 2016-10-25 14:49:00 +0000 (Tue, 25 Oct 2016) | 1 line
-Changed paths:
-   M /trunk/doc/sum.txt
+	[tests/tprintf.c] Avoid integer overflow from r11411 with 32-bit long.
 
-[doc/sum.txt] Started the update for the code supporting reuse.
-------------------------------------------------------------------------
-r10920 | vlefevre | 2016-10-25 06:57:56 +0000 (Tue, 25 Oct 2016) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+2017-04-07  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr-impl.h] Fixed r10916 (thanks to Eli Zaretskii for the report).
-------------------------------------------------------------------------
-r10918 | vlefevre | 2016-10-24 13:30:10 +0000 (Mon, 24 Oct 2016) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+	[tools/mpfrlint] Updated test to check that the snprintf function (C99)
+	is not used.
 
-[src/mpfr-impl.h] Improved a macro from r10916 (just in case...).
-------------------------------------------------------------------------
-r10916 | vlefevre | 2016-10-24 12:53:55 +0000 (Mon, 24 Oct 2016) | 7 lines
-Changed paths:
-   M /trunk/src/const_catalan.c
-   M /trunk/src/const_euler.c
-   M /trunk/src/const_log2.c
-   M /trunk/src/const_pi.c
-   M /trunk/src/exceptions.c
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/set_dfl_prec.c
-   M /trunk/src/set_rnd.c
+	[doc/mpfr.texi] Corrected an English error.
 
-[src] Support build as thread-safe DLL on Windows: clean-up.
-  * Increased the use of macros to avoid some code duplication
-    (with risks of typos) and to prevent the problems related
-    to thread-safe DLL from appearing in the .c files.
-  * The prototypes of the functions to access the address of a
-    TLS variable are now defined. Otherwise one gets warnings:
-    https://sympa.inria.fr/sympa/arc/mpfr/2016-10/msg00004.html
-------------------------------------------------------------------------
-r10915 | vlefevre | 2016-10-20 15:00:30 +0000 (Thu, 20 Oct 2016) | 1 line
-Changed paths:
-   M /trunk/doc/sum.txt
+	[src/vasprintf.c] Fixed bug triggered by the test added in r11428:
+	the size field of struct printf_spec must have type size_t, not int,
+	because the size argument of mpfr_snprintf has type size_t.
 
-[doc/sum.txt] Minor correction and improvement (English).
-------------------------------------------------------------------------
-r10914 | vlefevre | 2016-10-20 14:22:35 +0000 (Thu, 20 Oct 2016) | 1 line
-Changed paths:
-   M /trunk/doc/sum.txt
+	[tests/tsprintf.c] Added a test that fails on 64-bit machines
+	(4-byte int, 8-byte size_t), due to the use of mpfr_snprintf
+	with required size = (size_t) UINT_MAX + 1.
 
-[doc/sum.txt] "a" → "an" before "additional iteration".
-------------------------------------------------------------------------
-r10912 | vlefevre | 2016-10-18 08:06:35 +0000 (Tue, 18 Oct 2016) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
+	[src/vasprintf.c] Minor changes.
 
-[src/mpfr-gmp.h] Updated a comment about bit-fields.
-------------------------------------------------------------------------
-r10902 | vlefevre | 2016-09-27 15:10:30 +0000 (Tue, 27 Sep 2016) | 8 lines
-Changed paths:
-   M /trunk/src/init2.c
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/round_prec.c
-   M /trunk/src/set_prec.c
+	[src/vasprintf.c] Comment re-indentation.
 
-[src]
-  * mpfr-impl.h: document the memory allocated for a significand;
-    added a cast to avoid a direct conversion from mp_limb_t * to
-    mp_size_t *.
-  * init2.c, round_prec.c, set_prec.c: code clean-up by correcting
-    the type expected for the second argument of MPFR_SET_MANT_PTR
-    (this macro has a cast, so that this should not change anything,
-    but the old type mpfr_limb_ptr was meaningless and confusing).
-------------------------------------------------------------------------
-r10890 | vlefevre | 2016-09-23 14:19:16 +0000 (Fri, 23 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/examples/version.c
+	[src/ubf.c] Renamed mpfr_get_zexp to mpfr_init_get_zexp for clarity.
 
-[examples/version.c] For MPFR >= 4, output float128 support info.
-------------------------------------------------------------------------
-r10888 | vlefevre | 2016-09-23 14:06:48 +0000 (Fri, 23 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/examples/version.c
+2017-04-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-[examples/version.c] A bit more output.
-------------------------------------------------------------------------
-r10886 | vlefevre | 2016-09-23 13:47:14 +0000 (Fri, 23 Sep 2016) | 4 lines
-Changed paths:
-   M /trunk/examples/version.c
+	[src/mpfr-impl.h] Fixed silly typo in MPFR_UBF_CLEAR_EXP() yielding
+	either an obscure memory leak or a crash in some mpfr_fmma calls.
+	We would really need formal proofs on the code... Or avoid macros.
 
-[examples/version.c]
-  * Really support C++ compilers (tested with g++ 6.2.0).
-  * Output information about the C implementation.
-  * Detect MPIR (→ output information on MPIR instead of GMP).
-------------------------------------------------------------------------
-r10885 | vlefevre | 2016-09-23 13:14:12 +0000 (Fri, 23 Sep 2016) | 5 lines
-Changed paths:
-   M /trunk/examples/version.c
+2017-04-06  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[examples/version.c]
-  * Code simplification: support for MPFR versions less than 3.0 had
-    already been dropped with the use of MPFR_RNDN.
-  * For MPFR patches, output "[none]" when there are no patches.
-  * Output mpfr_ptr size.
-------------------------------------------------------------------------
-r10884 | vlefevre | 2016-09-21 15:11:16 +0000 (Wed, 21 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sin_cos.c
+	[tests/tfmma.c] added one test
 
-[src/sin_cos.c] Avoid the reuse of variables for two completely
-different things (with different orders of magnitude)! Changed types.
-------------------------------------------------------------------------
-r10883 | vlefevre | 2016-09-21 15:06:52 +0000 (Wed, 21 Sep 2016) | 3 lines
-Changed paths:
-   M /trunk/src/exp3.c
+	[tests/tfmma.c] fixed test
 
-[src/exp3.c] Avoid the reuse of variables for two completely different
-things (with different orders of magnitude)! Added a cast to avoid a
-potential integer overflow (like in r10881).
-------------------------------------------------------------------------
-r10882 | vlefevre | 2016-09-21 15:05:07 +0000 (Wed, 21 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/src/atan.c
+2017-04-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/atan.c] Avoid the reuse of variables for two completely different
-things (with different orders of magnitude)! Changed types.
-------------------------------------------------------------------------
-r10881 | vlefevre | 2016-09-21 13:54:01 +0000 (Wed, 21 Sep 2016) | 6 lines
-Changed paths:
-   M /trunk/src/atan.c
-   M /trunk/src/sin_cos.c
+	[src/add1.c] Updated comment about underflow.
 
-[src/{atan.c,sin_cos.c}] Added casts to avoid potential integer
-overflows. Possible issue reported by David Binderman:
-  https://sympa.inria.fr/sympa/arc/mpfr/2016-09/msg00029.html
-Note: From tests I've done on mpfr_atan, there would be issues with
-16-bit int, but for 32-bit int, one could need several hundreds of
-billions of bits for the target precision.
-------------------------------------------------------------------------
-r10880 | vlefevre | 2016-09-21 11:34:52 +0000 (Wed, 21 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+	[src/add1.c] Handling of UBF and overflow/underflow.
+	  * Added a MPFR_ASSERTD related to the overflow code.
+	  * Bug fix: handle underflow, possible if UBF input(s).
 
-[doc/README.dev] "To make a release": updated paragraph about warnings.
-------------------------------------------------------------------------
-r10879 | vlefevre | 2016-09-21 11:12:23 +0000 (Wed, 21 Sep 2016) | 4 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
+2017-04-06  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/mpfr-impl.h] In the MPFR_RET macro, avoid the use of an integer
-in a boolean context (even though that this is not wrong in C). Fix
-after a bug report from David Binderman. Explanations:
-  https://sympa.inria.fr/sympa/arc/mpfr/2016-09/msg00028.html
-------------------------------------------------------------------------
-r10878 | vlefevre | 2016-09-16 13:34:49 +0000 (Fri, 16 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/doc/algorithms.tex
+	[tests/tfmma.c] added another test (currently fails)
 
-[doc/algorithms.tex] Riemann Zeta function, case s < 1/2: added a
-paragraph on the sin(...) term of the reflection formula.
-------------------------------------------------------------------------
-r10877 | vlefevre | 2016-09-16 13:05:04 +0000 (Fri, 16 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/doc/algorithms.tex
+2017-04-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/algorithms.tex] More work on the Riemann Zeta function.
-------------------------------------------------------------------------
-r10876 | vlefevre | 2016-09-15 13:31:39 +0000 (Thu, 15 Sep 2016) | 4 lines
-Changed paths:
-   M /trunk/doc/algorithms.tex
+	[src/sub1.c] Bug fix: underflow was not detected in the case cancel = 0
+	with UBF numbers. At the same time, refactored the related code a bit.
 
-[doc/algorithms.tex] Riemann Zeta function, case s < 1/2: added a
-paragraph briefly describing how the precisions of the variables
-will be chosen (this is much more efficient than the current code
-when the target precision is much lower than the input precision).
-------------------------------------------------------------------------
-r10875 | vlefevre | 2016-09-15 13:17:58 +0000 (Thu, 15 Sep 2016) | 10 lines
-Changed paths:
-   M /trunk/doc/algorithms.tex
-   M /trunk/src/zeta.c
+	[tests] Added tbeta to svn:ignore property.
 
-Some improvements / corrections in the description / proof of the
-algorithm for the Riemann Zeta function.
-  * doc/algorithms.tex, section on the Riemann Zeta function: the case
-    s < 1/2 (reflection formula) is now in a new section, which needs
-    to be completed (with the detailed algorithm and error analysis);
-    case "s close to 0" added and now properly proved.
-  * src/zeta.c: update of the comment for s close to 0 (the brief
-    explanations were wrong for precision 1, and this was apparently
-    not checked when we allowed this precision!), adding a reference
-    to algorithms.tex for details.
-------------------------------------------------------------------------
-r10874 | vlefevre | 2016-09-14 14:35:33 +0000 (Wed, 14 Sep 2016) | 3 lines
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[doc/mpfr.texi] Formatting of the mpfr_can_round example for 80-column
+	terminals + GNU coding style.
 
-[tools/mpfrlint] In "[[…]]" conditional expressions, replaced "="
-by the preferred (and equivalent) form "==".
-Discussion: http://www.zsh.org/mla/workers/2016/msg01711.html
-------------------------------------------------------------------------
-r10872 | vlefevre | 2016-09-14 07:59:27 +0000 (Wed, 14 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/tests/tdiv.c
+	[tests/tfmma.c] Updated comment about bug20170405 (fixed in r11414).
 
-[tests/tdiv.c] Improved code readability (related to r10871).
-------------------------------------------------------------------------
-r10871 | zimmerma | 2016-09-14 06:39:43 +0000 (Wed, 14 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tdiv.c
+	[src/sub1.c] Also corrected the comment about overflow detection.
 
-[tests/tdiv.c] improved code (found by David Binderman using cppcheck)
+	[src/sub1.c] Really fixed overflow detection (r11412 is broken).
 
-------------------------------------------------------------------------
-r10870 | vlefevre | 2016-09-14 01:09:00 +0000 (Wed, 14 Sep 2016) | 3 lines
-Changed paths:
-   M /trunk/tools/announce-text
+	[src/sub1.c] Fixed/improved UBF cases.
+	  * Added an assertion (usual MPFR limitation with huge precisions,
+	    affecting 32-bit ABI only in practice).
+	  * Fixed overflow detection.
 
-[tools/announce-text] Use the 64-bit key ID instead of the 32-bit one
-since there are known collisions for 32-bit key ID's:
-https://evil32.com/
-------------------------------------------------------------------------
-r10865 | vlefevre | 2016-09-13 15:11:11 +0000 (Tue, 13 Sep 2016) | 4 lines
-Changed paths:
-   M /trunk/src/zeta.c
-   M /trunk/tests/tzeta.c
+	[tests/tprintf.c] In check_long_string(), which is called when
+	MPFR_CHECK_LARGEMEM is defined, increase tests_memory_limit if need be
+	in order to avoid an obvious failure due to insufficient memory.
 
-[src/zeta.c] Added a FIXME: bug in the error computation due to the
-  use of the native double C type, which can yield an overflow.
-[tests/tzeta.c] Added a corresponding test case, which gives an
-  assertion failure.
-------------------------------------------------------------------------
-r10864 | vlefevre | 2016-09-13 14:53:46 +0000 (Tue, 13 Sep 2016) | 3 lines
-Changed paths:
-   M /trunk/src/uceil_log2.c
-   M /trunk/src/ufloor_log2.c
+	[tests/memory.c] Write all error messages to stderr in order to make
+	sure that they remain visible when the standard output is redirected
+	(e.g. in tprintf). Rewrote the messages in a consistent way.
 
-[src/{uceil_log2.c,ufloor_log2.c}] Added "MPFR_ASSERTN (exp < 1023);"
-to get an assertion failure on infinities (which do not have an
-exponent).
-------------------------------------------------------------------------
-r10863 | vlefevre | 2016-09-13 14:50:38 +0000 (Tue, 13 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/src/uceil_log2.c
+	[tests/tfmma.c] Fixed return type of test added in r11407.
 
-[src/uceil_log2.c] Code style.
-------------------------------------------------------------------------
-r10862 | vlefevre | 2016-09-13 14:46:08 +0000 (Tue, 13 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/src/ufloor_log2.c
+	[tests/tinits.c] When MPFR_CHECK_LARGEMEM is defined, increase
+	tests_memory_limit if need be in order to avoid an obvious failure
+	due to insufficient memory.
 
-[src/ufloor_log2.c] Code style.
-------------------------------------------------------------------------
-r10861 | vlefevre | 2016-09-13 14:05:24 +0000 (Tue, 13 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/src/zeta.c
+2017-04-06  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/zeta.c] Make explicit that we need to use lngamma.
-------------------------------------------------------------------------
-r10860 | vlefevre | 2016-09-13 13:58:51 +0000 (Tue, 13 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/src/zeta.c
+	added test that triggers an error
+	(see https://sympa.inria.fr/sympa/arc/mpfr/2017-04/msg00016.html)
 
-[src/zeta.c] Updated comments on overflows / underflows.
-------------------------------------------------------------------------
-r10859 | vlefevre | 2016-09-13 09:02:16 +0000 (Tue, 13 Sep 2016) | 3 lines
-Changed paths:
-   M /trunk/src/zeta.c
+2017-04-05  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/zeta.c] About internal underflows / cancellation:
-  * Added comments to FIXME's.
-  * Detect a potential integer overflow with MPFR_ASSERTN.
-------------------------------------------------------------------------
-r10851 | vlefevre | 2016-09-12 10:11:31 +0000 (Mon, 12 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/tests/tset_ld.c
+	[doc/mpfr.texi] Updated the month.
 
-[tests/tset_ld.c] Moved a comment.
-------------------------------------------------------------------------
-r10850 | vlefevre | 2016-09-12 10:05:12 +0000 (Mon, 12 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_ld.c
+	[doc/mpfr.texi] More details about errno.
 
-[tests/tset_ld.c] Fixed print_binary (and no longer any failure with
-gcc -mpc64 on x86).
-------------------------------------------------------------------------
-r10849 | vlefevre | 2016-09-12 09:44:19 +0000 (Mon, 12 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/tests/tset_ld.c
+2017-04-04  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tset_ld.c] Corrected note in print_binary.
-------------------------------------------------------------------------
-r10848 | vlefevre | 2016-09-12 09:42:56 +0000 (Mon, 12 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_ld.c
+	[doc/README.dev] Added a paragraph about the use of errno.
 
-[tests/tset_ld.c] Reverted r10847 (it was incomplete and I was testing
-the wrong code).
-------------------------------------------------------------------------
-r10847 | vlefevre | 2016-09-12 09:40:34 +0000 (Mon, 12 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/tests/tset_ld.c
+	[doc/mpfr.texi] Details about EOVERFLOW.
 
-[tests/tset_ld.c] Fixed print_binary.
-------------------------------------------------------------------------
-r10846 | vlefevre | 2016-09-12 09:13:52 +0000 (Mon, 12 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_ld.c
+2017-04-04  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tset_ld.c] Added a FIXME in print_binary, which can yield an
-incorrect output and return a wrong precision (causing the failure).
-------------------------------------------------------------------------
-r10845 | vlefevre | 2016-09-12 09:08:38 +0000 (Mon, 12 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_ld.c
+	[tests/tstrtofr.c] added test in bug20161217()
 
-[tests/tset_ld.c] Added a test that triggers a failure with gcc -mpc64
-on x86 (64-bit ABI).
-------------------------------------------------------------------------
-r10844 | vlefevre | 2016-09-12 08:48:04 +0000 (Mon, 12 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_ld.c
+2017-04-03  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tset_ld.c] Added some tests in case the rounding precision is
-smaller than MPFR_LDBL_MANT_DIG (e.g. with gcc -mpc64 on x86).
-------------------------------------------------------------------------
-r10843 | vlefevre | 2016-09-12 08:09:24 +0000 (Mon, 12 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_ld.c
+	[TODO] Update about functions returning a native floating-point value
+	and underflow/overflow.
 
-[tests/tset_ld.c] In print_binary, added an assertion that may fail
-with flush-to-zero on underflow (avoiding an infinite loop).
-------------------------------------------------------------------------
-r10842 | vlefevre | 2016-09-12 08:03:58 +0000 (Mon, 12 Sep 2016) | 4 lines
-Changed paths:
-   M /trunk/tests/tset_ld.c
+	[src/atanh.c] Removed comment giving the "optimal" working precision
+	(I do not see any proof in algorithms.tex, and it seems incorrect).
 
-[tests/tset_ld.c] Simplified a condition in print_binary (BTW, the old
-condition was based on the fact that the rounding depended only on the
-exact result, which may not be the case when rounding is not completely
-specified, e.g. with double-double arithmetic like on PowerPC).
-------------------------------------------------------------------------
-r10841 | vlefevre | 2016-09-12 07:15:30 +0000 (Mon, 12 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/tests/tset_ld.c
+	[TODO,src/log1p.c] log1p(x) on small x should also be improved instead
+	of computing log(1+x).
 
-[tests/tset_ld.c] Replaced a condition by a simpler, equivalent one.
-------------------------------------------------------------------------
-r10840 | zimmerma | 2016-09-10 05:55:31 +0000 (Sat, 10 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_ld.c
+	[TODO,src/atanh.c] Suggest a faster formula for atanh(x) on small x.
 
-[tests/tset_ld.c] added note
+	[src/atanh.c] Cosmetic changes (comments and whitespace).
 
-------------------------------------------------------------------------
-r10839 | zimmerma | 2016-09-09 14:41:49 +0000 (Fri, 09 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_ld.c
+	[TODO] Update about ERANGE.
 
-[tests/tset_ld.c] get rid of C99-only stuff
+2017-03-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r10838 | vlefevre | 2016-09-09 14:32:14 +0000 (Fri, 09 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/tests/tset_ld.c
+	[tests/tbeta.c] Fixed a macro (use of mpfr_printf, missing cast).
 
-[tests/tset_ld.c] Removed a variable that is no longer used.
-------------------------------------------------------------------------
-r10837 | vlefevre | 2016-09-09 12:49:59 +0000 (Fri, 09 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/tests/tset_ld.c
+2017-03-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tset_ld.c] FIXME: nextafterl and ilogbl are C99 only.
-------------------------------------------------------------------------
-r10836 | zimmerma | 2016-09-09 11:13:31 +0000 (Fri, 09 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_ld.c
+	[NEWS] Mention how to find the full list of bug fixes.
 
-[tests/tset_ld.c] fixed computation of smallest subnormal using nextafterl
+	[tests/tstrtofr.c] Updated comments about bug20161217 and bug20170308.
 
-------------------------------------------------------------------------
-r10835 | zimmerma | 2016-09-09 11:09:48 +0000 (Fri, 09 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_ld.c
+	[tests/tstrtofr.c] Added comments about bug20161217 and bug20170308.
 
-[tests/tset_ld.c] added warning
+	[tests/tstrtofr.c] Updated comment: bug20170308 checks the same bug
+	as bug20161217.
 
-------------------------------------------------------------------------
-r10834 | zimmerma | 2016-09-09 10:52:27 +0000 (Fri, 09 Sep 2016) | 3 lines
-Changed paths:
-   M /trunk/tests/tset_ld.c
+	[doc/mpfr.texi] Updated the month.
 
-[tests/tset_ld.c] fixed print_binary() for when the rounding precision is less
-		  than the precision of long double
+2017-03-08  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r10833 | vlefevre | 2016-09-09 09:02:16 +0000 (Fri, 09 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/src/get_ld.c
-   M /trunk/tests/tset_ld.c
+	added non-regression test
 
-[src/get_ld.c] Replaced FIXME by an explanation of the current behavior.
-[tests/tset_ld.c] Added a FIXME as a consequence.
-------------------------------------------------------------------------
-r10832 | vlefevre | 2016-09-09 00:23:59 +0000 (Fri, 09 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/doc/README.dev
+2017-03-07  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[doc/README.dev] Update about NetBSD.
-------------------------------------------------------------------------
-r10829 | vlefevre | 2016-09-08 16:37:56 +0000 (Thu, 08 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/src/sqrt.c
+	[doc/mpfr.texi] results should not depend on machine rounding mode/precision
 
-[src/sqrt.c] Corrected a spelling mistake.
-------------------------------------------------------------------------
-r10828 | vlefevre | 2016-09-08 16:15:18 +0000 (Thu, 08 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/src/get_ld.c
+2017-03-06  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/get_ld.c] Updated FIXME (mention subnormals).
-------------------------------------------------------------------------
-r10827 | vlefevre | 2016-09-08 15:48:59 +0000 (Thu, 08 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/src/get_ld.c
+	[doc/sum.txt] Minor corrections.
 
-[src/get_ld.c] Updated FIXME (this is NetBSD 5.1).
-------------------------------------------------------------------------
-r10826 | vlefevre | 2016-09-08 15:35:19 +0000 (Thu, 08 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/src/get_ld.c
+2017-03-05  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/get_ld.c] Added a FIXME, in particular for NetBSD.
-------------------------------------------------------------------------
-r10825 | vlefevre | 2016-09-08 15:17:10 +0000 (Thu, 08 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_ld.c
+	[src/sum.c] Added a comment about shiftq.
 
-[tests/tset_ld.c] Avoid a freeze in print_binary under NetBSD due to
-excess precision in LDBL_MAX (we do not run the test in this case).
-------------------------------------------------------------------------
-r10824 | zimmerma | 2016-09-08 14:22:04 +0000 (Thu, 08 Sep 2016) | 3 lines
-Changed paths:
-   M /trunk/src/sqrt.c
-   M /trunk/tests/tsqrt.c
+2017-02-28  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sqrt.c] fixed bug in mpfr_sqrt2
-[tests/tsqrt.c] added non-regression test
+	[tests/tbeta.c] C89 compatibility and some code reformatting.
 
-------------------------------------------------------------------------
-r10823 | vlefevre | 2016-09-08 13:57:26 +0000 (Thu, 08 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_ld.c
+	[src/beta.c] Slightly improved comments.
 
-[tests/tset_ld.c] The print_binary function is freezing on a NetBSD
-machine; let's start with some improvements (assertions...).
-------------------------------------------------------------------------
-r10822 | vlefevre | 2016-09-08 13:31:38 +0000 (Thu, 08 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/tests/tabs.c
+	[src/beta.c] Fixed a bug in reduced exponent range (not detected by
+	the current tests).
 
-[tests/tabs.c] Removed mpfr_test_init (not needed here).
-------------------------------------------------------------------------
-r10821 | vlefevre | 2016-09-08 13:30:35 +0000 (Thu, 08 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_ld.c
+	[src/beta.c] Added a comment for Beta(0,negative integer).
 
-[tests/tset_ld.c] Moved mpfr_test_init at the right place (like
-tget_d.c, tset_d.c, etc.).
-------------------------------------------------------------------------
-r10820 | zimmerma | 2016-09-08 13:30:14 +0000 (Thu, 08 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+	[src/beta.c] Eventually fixed the case z or w is 0 (note: r11374
+	did also other unwanted changes, reverted here).
 
-[src/sqrt.c] divsp1 -> div_1
+	[src/beta.c] Reverted my changes (this was incorrect).
 
-------------------------------------------------------------------------
-r10819 | vlefevre | 2016-09-08 13:24:00 +0000 (Thu, 08 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_ld.c
+	[src/beta.c] Fixed special cases.
 
-[tests/tset_ld.c] Fixed a loop in case an extended range is used
-(there are issues on a NetBSD machine, and this could be a cause).
-------------------------------------------------------------------------
-r10818 | vlefevre | 2016-09-08 13:19:12 +0000 (Thu, 08 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/tests/tset_ld.c
+	[src/beta.c] Added comments and some corrections (incomplete) for the
+	case "z or w is 0".
 
-[tests/tset_ld.c] Corrected a type (due to a printf with %ld).
-------------------------------------------------------------------------
-r10817 | zimmerma | 2016-09-08 13:14:30 +0000 (Thu, 08 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+2017-02-28  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/div.c] divsp1 -> div_1, divsp2 -> div_2 (not necessarily same precision)
+	[src/beta.c] fixed case z or w is 0
 
-------------------------------------------------------------------------
-r10816 | zimmerma | 2016-09-08 13:12:14 +0000 (Thu, 08 Sep 2016) | 3 lines
-Changed paths:
-   M /trunk/src/mul.c
+	[tests/tbeta.c] patch from Cade Brown
+	- signed zeros are checked in is_same
+	- the case above (summing non-integer negative z, w which sum to a negative integer)
 
-[src/mul.c] mulsp1 -> mul_1, mulsp2 -> mul_2 (the precision of operands is not
-	    necessarily the same)
+2017-02-27  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r10813 | vlefevre | 2016-09-08 00:15:19 +0000 (Thu, 08 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/src/get_d.c
-   M /trunk/src/get_ld.c
+	[doc/mpfr.texi] added mpfr_beta in "Added Functions"
 
-[src/{get_d,get_ld}.c] Use MPFR_ALIAS.
-------------------------------------------------------------------------
-r10812 | vlefevre | 2016-09-07 12:35:33 +0000 (Wed, 07 Sep 2016) | 9 lines
-Changed paths:
-   M /trunk/src/get_ld.c
+2017-02-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/get_ld.c] Improved the fix done in r10808: The mpfr_set_emin value
-is not changed, but let's make the LDBL_MIN_EXP and LDBL_MAX_EXP values
-appear as expected.
-Note: The code for x86 extended precision first appeared in r3226 with
-the usual emin and emax values, as found in the IEEE 754-1985 standard
-(bounds) or on <https://en.wikipedia.org/wiki/IEEE_floating_point>. But
-MPFR uses a different convention, with a significand between 1/2 and 1
-instead of between 1 and 2, so that these values were off by 1. The
-emax one was fixed in r6101, but the error on emin remained undetected.
-------------------------------------------------------------------------
-r10811 | vlefevre | 2016-09-07 09:39:52 +0000 (Wed, 07 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_ld.c
+	[src/jn.c] Use MPFR_ADD_PREC.
 
-[tests/tset_ld.c] The bug_20160907 test is valid only with
-HAVE_LDOUBLE_IEEE_EXT_LITTLE.
-------------------------------------------------------------------------
-r10810 | vlefevre | 2016-09-07 08:20:28 +0000 (Wed, 07 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/src/zeta.c
+	[src/beta.c] Updated comments; added a FIXME.
 
-[src/zeta.c] Updated FIXME: also suggest a scaling.
-------------------------------------------------------------------------
-r10809 | zimmerma | 2016-09-07 07:58:43 +0000 (Wed, 07 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_ld.c
+2017-02-27  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tset_ld.c] check more numbers in bug_20160907()
+	[src/jn.c] in case the first Ziv loop failed, take into account the number of
+		   lost bits
 
-------------------------------------------------------------------------
-r10808 | zimmerma | 2016-09-07 07:38:09 +0000 (Wed, 07 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/src/get_ld.c
+2017-02-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/get_ld.c] fixed bug reported by Walter Mascarenhas
+	[src/beta.c] Use MPFR_ARE_SINGULAR.
 
-------------------------------------------------------------------------
-r10807 | zimmerma | 2016-09-07 07:28:32 +0000 (Wed, 07 Sep 2016) | 3 lines
-Changed paths:
-   M /trunk/tests/tset_ld.c
+2017-02-27  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tset_ld.c] added test that triggers bug in mpfr_get_ld
-		  (https://sympa.inria.fr/sympa/arc/mpfr/2016-09/msg00005.html)
+	[src/beta.c] fix in case z and w are not integers and z+w is a nonpositive integer
 
-------------------------------------------------------------------------
-r10806 | vlefevre | 2016-09-07 01:12:06 +0000 (Wed, 07 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/src/zeta.c
+	[src/odd_p.c] new source file
 
-[src/zeta.c] Updated FIXME with a suggestion.
-------------------------------------------------------------------------
-r10805 | vlefevre | 2016-09-07 01:05:34 +0000 (Wed, 07 Sep 2016) | 3 lines
-Changed paths:
-   M /trunk/src/zeta.c
-   M /trunk/tests/tzeta.c
+	[src/Makefile.am] new file odd_p.c
+	[src/beta.c] fixed bug
+	[src/mpfr-impl.h] renamed mpfr_is_odd into mpfr_odd_p
+	[src/pow.c] moved mpfr_is_odd (renamed mpfr_odd_p) into separate file
 
-[src/zeta.c] Added a FIXME: An overflow in gamma(s1) does not imply
-  that Zeta(s) will overflow.
-[tests/tzeta.c] Added a test that triggers this bug with a 32-bit ABI.
-------------------------------------------------------------------------
-r10804 | vlefevre | 2016-09-07 00:25:25 +0000 (Wed, 07 Sep 2016) | 3 lines
-Changed paths:
-   M /trunk/doc/README.dev
+2017-02-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-[doc/README.dev] Concerning GCC's AddressSanitizer (-fsanitize=address),
-mention that LD_PRELOAD needs to be unset (or -static-libasan needs to
-be used, but does not work yet).
-------------------------------------------------------------------------
-r10802 | zimmerma | 2016-09-06 14:04:02 +0000 (Tue, 06 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/doc/algorithms.tex
+	[src/beta.c] Added a FIXME (test failure with assertions).
 
-[doc/algorithms.tex] l -> \ell
+	[src/beta.c] Removed an unusual space.
 
-------------------------------------------------------------------------
-r10801 | zimmerma | 2016-09-06 13:58:27 +0000 (Tue, 06 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/doc/algorithms.tex
+	[tests/tbuildopt.c] Added calls to tests_start_mpfr and tests_end_mpfr.
 
-[doc/algorithms.tex] du -> {\mathrm d}u
+	[tools/mpfrlint] Added a test to check that the usual test programs
+	call tests_start_mpfr and tests_end_mpfr.
 
-------------------------------------------------------------------------
-r10800 | zimmerma | 2016-09-06 13:45:18 +0000 (Tue, 06 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/src/log_ui.c
+2017-02-27  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/log_ui.c] added FIXME
+	[src/beta.c] several fixes
+	[src/pow.c] renamed is_odd to mpfr_is_odd, and export it
+	[src/mpfr-impl.h] export mpfr_is_odd as internal function
+	[tests/tbeta.c] added generic tests
 
-------------------------------------------------------------------------
-r10799 | vlefevre | 2016-09-06 13:08:38 +0000 (Tue, 06 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+2017-02-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sqrt.c] Avoid a warning due to an unused variable with
-GMP_NUMB_BITS == 32.
-------------------------------------------------------------------------
-r10798 | vlefevre | 2016-09-06 12:33:16 +0000 (Tue, 06 Sep 2016) | 3 lines
-Changed paths:
-   M /trunk/acinclude.m4
+	[tests/tbeta.c] Added missing void in prototype.
 
-[acinclude.m4] Fixed m4_pattern_forbid argument to avoid an error with
-recent ax_pthread.m4 (such as in Debian's autoconf-archive 20160320-1,
-which has just appeared in unstable).
-------------------------------------------------------------------------
-r10797 | vlefevre | 2016-09-06 11:46:31 +0000 (Tue, 06 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/src/zeta.c
+	Removed trailing spaces.
 
-[src/zeta.c] Updated FIXME.
-------------------------------------------------------------------------
-r10796 | zimmerma | 2016-09-06 11:10:56 +0000 (Tue, 06 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/src/zeta.c
+	[tests/tbeta.c] Fixed the usage of MPFR types.
 
-[src/zeta.c] added FIXME
+	[tests/tbeta.c] Minor correction. Added a FIXME and a TODO.
 
-------------------------------------------------------------------------
-r10795 | zimmerma | 2016-09-06 06:57:17 +0000 (Tue, 06 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+2017-02-27  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/sqrt.c] added alternate code for mpn_sqrtrem4 (disabled for now)
+	[tests/tbeta.c] GNU style and C89 portability
 
-------------------------------------------------------------------------
-r10794 | zimmerma | 2016-09-05 15:46:32 +0000 (Mon, 05 Sep 2016) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
-   M /trunk/src/mpfr-gmp.h
+	[TODO] removed beta entry
 
-move macros from div.c to mpfr-gmp.h
+	new function mpfr_beta
 
-------------------------------------------------------------------------
-r10790 | vlefevre | 2016-09-05 09:07:28 +0000 (Mon, 05 Sep 2016) | 3 lines
-Changed paths:
-   M /trunk/TODO
-   M /trunk/tests/tzeta.c
+	[tests/tbeta.c] test file for mpfr_beta, contributed by Cade Brown from
+			ChemicalDevelopment (this commit is the file as it was
+			contributed, except the mpfr-test.h include)
 
-About the tzeta timing issue (since r9848):
-  * TODO: updated item on tzeta.
-  * tests/tzeta.c: updated FIXME for test_generic.
-------------------------------------------------------------------------
-r10789 | vlefevre | 2016-09-05 08:50:16 +0000 (Mon, 05 Sep 2016) | 7 lines
-Changed paths:
-   M /trunk/TODO
+2017-02-27  Vincent Lefèvre  <vincent at vinc17.net>
 
-[TODO] Updated item on tzeta:
-  * removed the old problem: the fact that the traces for the trunk and
-    for r9954 are different is normal (fixes in mpfr_can_round affecting
-    tgeneric.c), and the timings depend on GMP_CHECK_RANDOMIZE and seem
-    equivalent in average with "test_generic (..., 5);" in both cases;
-  * added the fact that tzeta has been much slower since r9848, at least
-    with the x86 32-bit ABI.
-------------------------------------------------------------------------
-r10775 | vlefevre | 2016-09-02 07:07:31 +0000 (Fri, 02 Sep 2016) | 1 line
-Changed paths:
-   M /trunk/src/sqrt.c
+	[src/beta.c] Portability corrections.
 
-Removed trailing whitespace.
-------------------------------------------------------------------------
-r10774 | zimmerma | 2016-09-01 08:45:19 +0000 (Thu, 01 Sep 2016) | 13 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+2017-02-26  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/sqrt.c] new code for 2 limbs on 64-bit machines, giving speedup of almost
-	     a factor of two:
+	[src/beta.c] fix for exact case beta(1,2^k) for k negative integer
 
-bavette.loria.fr (Intel(R) Core(TM) i5-6500 CPU @ 3.20GHz)
-numactl --physcpubind=0 ./mfv5 -p113 mpfr_sqrt
+	[src/beta.c] special values are now implemented (should be reviewed)
 
-3.1.4:
- mpfr_sqrt:        234 /   243.72 /   258
+2017-02-25  Vincent Lefèvre  <vincent at vinc17.net>
 
-4.0-dev:
- mpfr_sqrt:        122 /   127.63 /   136
+	[TODO] mpfr_root: replace "obsolete" by "deprecated" (the right word).
 
+	[TODO] Update about rootn.
 
-------------------------------------------------------------------------
-r10773 | zimmerma | 2016-08-31 08:54:41 +0000 (Wed, 31 Aug 2016) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+	[TODO] Added some propositions about rootn.
 
-[src/div.c] fixed error triggered by previous commit
+2017-02-25  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r10772 | zimmerma | 2016-08-31 08:50:17 +0000 (Wed, 31 Aug 2016) | 3 lines
-Changed paths:
-   M /trunk/src/div.c
-   M /trunk/tests/tdiv.c
+	[src/root.c] added comment
 
-[src/div.c] added missing assertion
-[tests/tdiv.c] added test case that make new assertion fail (with --enable-assert --enable-gmp-internals on a 64-bit machine)
+	added reference
 
-------------------------------------------------------------------------
-r10771 | zimmerma | 2016-08-31 06:38:33 +0000 (Wed, 31 Aug 2016) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+2017-02-23  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/div.c] fixed bug found by Vincent
+	[src/beta.c] Call mpfr_check_range as usual.
 
-------------------------------------------------------------------------
-r10770 | vlefevre | 2016-08-31 00:06:31 +0000 (Wed, 31 Aug 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tdiv.c
+	[src/beta.c] Extended the exponent range for the generic case.
 
-[tests/tdiv.c] Added a test triggering an assertion failure with
-"--enable-assert --enable-gmp-internals".
-------------------------------------------------------------------------
-r10769 | vlefevre | 2016-08-30 23:01:03 +0000 (Tue, 30 Aug 2016) | 1 line
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[src/beta.c] Added a comment.
 
-[tools/mpfrlint] Update.
-------------------------------------------------------------------------
-r10768 | vlefevre | 2016-08-30 22:58:50 +0000 (Tue, 30 Aug 2016) | 1 line
-Changed paths:
-   M /trunk/src/div.c
+	[src/beta.c] Various code improvement / fixes.
 
-[src/div.c] Untabified. Clarified a comment.
-------------------------------------------------------------------------
-r10767 | zimmerma | 2016-08-30 14:18:00 +0000 (Tue, 30 Aug 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+	[src/beta.c] Added a FIXME.
 
-[src/sqrt.c] document mpn_sqrtrem2()
+2017-02-23  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r10766 | zimmerma | 2016-08-30 14:09:59 +0000 (Tue, 30 Aug 2016) | 2 lines
-Changed paths:
-   M /trunk/src/div.c
+	[src/beta.c] added beta function (work in progress, not yet fully implemented,
+		     and not tested)
 
-[src/div.c] don't use mpfr_divsp1 and mpfr_divsp2 when MPFR_GENERIC_ABI is defined
+2017-02-21  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r10765 | zimmerma | 2016-08-30 12:10:24 +0000 (Tue, 30 Aug 2016) | 3 lines
-Changed paths:
-   M /trunk/src/div.c
-   M /trunk/tests/tdiv.c
+	[src/fmma.c] speedup of mpfr_fmma and mpfr_fmms
 
-[src/div.c] faster code for 2 limbs
-[tests/tdiv.c] added special test for 2 limbs
+	[src/fma.c] speedup of mpfr_fma when all operands have the same precision
+		    (less than one full limb)
 
-------------------------------------------------------------------------
-r10764 | vlefevre | 2016-08-30 07:21:07 +0000 (Tue, 30 Aug 2016) | 7 lines
-Changed paths:
-   M /trunk/tests/mpfr-test.h
-   M /trunk/tests/tests.c
+2017-02-21  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests] Define global variable tests_memory_disabled, which needs to
-be set when the memory.c allocators (to track memory leaks) must not
-be used; i.e., setting it disables the calls to tests_memory_start()
-and tests_memory_end(). In tests.c, it is initialized to 0 (unset),
-except when mini-gmp is used (same behavior as before this commit).
-Programs that test GMP's mp_set_memory_functions() need to set this
-variable before calling tests_start_mpfr().
-------------------------------------------------------------------------
-r10763 | vlefevre | 2016-08-29 15:35:16 +0000 (Mon, 29 Aug 2016) | 4 lines
-Changed paths:
-   A /trunk/tests/talloc-cache.c
+	[NEWS] Note that the position of "const" in the mpfr_sum prototype
+	has been fixed (in case writers of interfaces for MPFR use that).
 
-Added tests/talloc-cache.c (not run by "make check") testing multiple
-calls to mp_set_memory_functions. It yields a crash in the MPFR trunk,
-which is unexpected with the current code. However, in the 3.1 branch,
-r9467 fixed the crash as expected.
-------------------------------------------------------------------------
-r10762 | zimmerma | 2016-08-29 14:20:09 +0000 (Mon, 29 Aug 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+	"a IEEE 754r decimal64 float" → "an IEEE 754-2008 decimal64 float".
 
-[src/sqrt.c] added Sage code used to generate the bipartite tables
+2017-02-20  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r10761 | vlefevre | 2016-08-29 13:50:47 +0000 (Mon, 29 Aug 2016) | 1 line
-Changed paths:
-   M /trunk/tests/talloc.c
+	[src/fma.c] speedup mpfr_fma for 1 limb
 
-[tests/talloc.c] Added a warning about new tests.
-------------------------------------------------------------------------
-r10760 | zimmerma | 2016-08-29 13:20:14 +0000 (Mon, 29 Aug 2016) | 2 lines
-Changed paths:
-   M /trunk/src/atan.c
+	754R -> 754-2008
 
-[src/atan.c] fixed TODOs, and simplified code
+2017-02-20  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r10759 | vlefevre | 2016-08-29 13:09:50 +0000 (Mon, 29 Aug 2016) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	Removed trailing spaces.
 
-[doc/mpfr.texi] Added a FIXME comment about memory allocation.
-------------------------------------------------------------------------
-r10758 | vlefevre | 2016-08-29 12:55:26 +0000 (Mon, 29 Aug 2016) | 1 line
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/vasprintf.c] Solved the FIXME for %g on easy cases.
 
-[doc/mpfr.texi] Updated the month.
-------------------------------------------------------------------------
-r10757 | vlefevre | 2016-08-29 12:54:47 +0000 (Mon, 29 Aug 2016) | 1 line
-Changed paths:
-   M /trunk/TODO
+2017-02-17  Vincent Lefèvre  <vincent at vinc17.net>
 
-[TODO] Done in r10756: unify is_power_of_two() and mpfr_powerof2_raw().
-------------------------------------------------------------------------
-r10756 | zimmerma | 2016-08-29 08:15:17 +0000 (Mon, 29 Aug 2016) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/powerof2.c
-   M /trunk/src/round_prec.c
+	[src/zeta.c] mpfr_reflection_overflow: reverted r11322 as the rounding
+	direction was correct; it was a comment that was incorrect, now fixed.
 
-unified is_power_of_two() and mpfr_powerof2_raw()
+	[src/zeta.c] mpfr_reflection_overflow: fixed a rounding direction.
 
-------------------------------------------------------------------------
-r10755 | zimmerma | 2016-08-29 07:49:12 +0000 (Mon, 29 Aug 2016) | 2 lines
-Changed paths:
-   M /trunk/doc/mpfr.texi
+	[src/zeta.c] Improvements of mpfr_reflection_overflow:
+	  * Moved identical parts of the code at the beginning of if/else blocks
+	    as a single part before the "if".
+	  * When the rounding mode doesn't matter (exact result), use MPFR_RNDN.
+	  * Updated comments (making them more consistent at the same time).
 
-[doc/mpfr.texi] improved documentation of mpfr_free_cache()
+2017-02-16  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-------------------------------------------------------------------------
-r10754 | vlefevre | 2016-08-28 17:48:57 +0000 (Sun, 28 Aug 2016) | 1 line
-Changed paths:
-   M /trunk/tests/tcan_round.c
+	[src/zeta.c] added more comments for the overflow case
 
-[tests/tcan_round.c] Improved a test now that mpfr_can_round is exact.
-------------------------------------------------------------------------
-r10753 | vlefevre | 2016-08-28 00:12:04 +0000 (Sun, 28 Aug 2016) | 1 line
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
+2017-02-14  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mpfr-gmp.h] Added a warning about r10749.
-------------------------------------------------------------------------
-r10752 | vlefevre | 2016-08-27 23:53:19 +0000 (Sat, 27 Aug 2016) | 6 lines
-Changed paths:
-   M /trunk/src/round_prec.c
+	[src/sum.c] Added a note about why one uses "const mpfr_ptr *x" in the
+	  prototypes instead of "const mpfr_srcptr *x" (old info from r5381).
+	[doc/sum.txt] Fixed the const position (see r11316) and added this note.
 
-[src/round_prec.c] Various corrections/improvements:
-  * Unified the return, making sure that temporary memory is no longer
-    used after MPFR_TMP_FREE(marker), which was not the case in some
-    places.
-  * C90 compatibility.
-  * Minor improvements (use of MPFR_PREC2LIMBS, code on 78 columns...).
-------------------------------------------------------------------------
-r10751 | vlefevre | 2016-08-27 23:01:59 +0000 (Sat, 27 Aug 2016) | 1 line
-Changed paths:
-   M /trunk/TODO
+	[src/{mpfr-impl.h,mpfr.h}] Code reformatting and other cosmetic changes.
 
-[TODO] Added: unify is_power_of_two() and mpfr_powerof2_raw()?
-------------------------------------------------------------------------
-r10750 | vlefevre | 2016-08-27 22:58:07 +0000 (Sat, 27 Aug 2016) | 3 lines
-Changed paths:
-   M /trunk/src/atan2.c
-   M /trunk/src/mpfr-impl.h
+	[doc/mpfr.texi] For mpfr_sum, changed "mpfr_ptr const" to the equivalent
+	"const mpfr_ptr" (usual style, less confusing).
 
-[src/atan2.c] Replaced the use of the MPFR_IS_POWER_OF_2(x) macro by
-  a more efficient solution based on mpfr_powerof2_raw().
-[src/mpfr-impl.h] Removed the now obsolete MPFR_IS_POWER_OF_2 macro.
-------------------------------------------------------------------------
-r10749 | zimmerma | 2016-08-26 12:49:48 +0000 (Fri, 26 Aug 2016) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-gmp.h
+	For mpfr_sum and its auxiliary functions, moved the const type qualifier
+	to the right place (mpfr_ptr *const → const mpfr_ptr *). This bug had
+	been introduced in r3642 (2005-06-10).
 
-[src/mpfr-gmp.h] added comment about GMP memory allocation functions
+2017-02-13  Vincent Lefèvre  <vincent at vinc17.net>
 
-------------------------------------------------------------------------
-r10748 | zimmerma | 2016-08-25 07:22:38 +0000 (Thu, 25 Aug 2016) | 3 lines
-Changed paths:
-   M /trunk/src/round_p.c
+	[src/zeta.c] mpfr_reflection_overflow: added comments and FIXME's;
+	fixed obvious typos in a comment and the code.
 
-[src/round_p.c] since mpfr_can_round is now always correct, we cannot compare
-		it blindly to mpfr_round_p any more
+	[src/zeta.c] mpfr_reflection_overflow: typo in a comment.
 
-------------------------------------------------------------------------
-r10747 | zimmerma | 2016-08-24 15:48:39 +0000 (Wed, 24 Aug 2016) | 2 lines
-Changed paths:
-   M /trunk/src/round_prec.c
+	[src/zeta.c] Untabified.
 
-[src/round_prec.c] fixed mpfr_can_round() so that all tests of tcan_round pass
+	[src/zeta.c] mpfr_reflection_overflow: added an assertion and a comment.
 
-------------------------------------------------------------------------
-r10746 | zimmerma | 2016-08-23 12:38:22 +0000 (Tue, 23 Aug 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tcan_round.c
+	[src/vasprintf.c] Added a comment in a FIXME.
 
-[tests/tcan_round.c] more information in case of error in check_can_round()
+	[src/vasprintf.c] Added MPFR_ASSERTD's.
 
-------------------------------------------------------------------------
-r10744 | vlefevre | 2016-08-22 18:53:46 +0000 (Mon, 22 Aug 2016) | 1 line
-Changed paths:
-   M /trunk/tools/mbench/mfv5.cc
+	[src/vasprintf.c] Avoid some potential integer overflows.
 
-[tools/mbench/mfv5.cc] Fixed code (C++11 compatibility).
-------------------------------------------------------------------------
-r10743 | vlefevre | 2016-08-22 13:57:53 +0000 (Mon, 22 Aug 2016) | 4 lines
-Changed paths:
-   M /trunk/tests/tcan_round.c
+2017-02-13  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tcan_round.c] Added a comprehensive test of mpfr_can_round,
-based on a naive implementation.
-Note: if the exit() is removed, many cases are failing, for both kinds
-of answers (there might also remain an error in my test...).
-------------------------------------------------------------------------
-r10741 | vlefevre | 2016-08-19 14:34:01 +0000 (Fri, 19 Aug 2016) | 1 line
-Changed paths:
-   M /trunk/TODO
+	[src/zeta.c] improved overflow detection
 
-[TODO] More thoughts about mpz_t caching (mpz_t pool).
-------------------------------------------------------------------------
-r10740 | vlefevre | 2016-08-19 13:59:11 +0000 (Fri, 19 Aug 2016) | 1 line
-Changed paths:
-   M /trunk/TODO
+2017-02-13  Vincent Lefèvre  <vincent at vinc17.net>
 
-[TODO] Issues with mpz_t caching.
-------------------------------------------------------------------------
-r10739 | vlefevre | 2016-08-19 12:07:55 +0000 (Fri, 19 Aug 2016) | 1 line
-Changed paths:
-   M /trunk/TODO
+	[src/vasprintf.c] Added FIXME's: possible integer overflows.
 
-[TODO] Update about mpz_t caching (mpz_t pool).
-------------------------------------------------------------------------
-r10738 | vlefevre | 2016-08-19 11:55:31 +0000 (Fri, 19 Aug 2016) | 2 lines
-Changed paths:
-   M /trunk/src/atan.c
+2017-02-12  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/atan.c] Added TODO's to use mpz_init2 instead mpz_init: I could
-check that without "mpz_t cache" (pool), this makes the code faster.
-------------------------------------------------------------------------
-r10737 | vlefevre | 2016-08-19 11:52:01 +0000 (Fri, 19 Aug 2016) | 2 lines
-Changed paths:
-   M /trunk/doc/README.dev
+	fix for mpfr_zeta overflow on 32-bit computers
 
-[doc/README.dev] Added a note about memory reallocations; recommend
-mpz_init2 with the estimated maximum size instead of mpz_init.
-------------------------------------------------------------------------
-r10736 | vlefevre | 2016-08-19 08:54:30 +0000 (Fri, 19 Aug 2016) | 1 line
-Changed paths:
-   M /trunk/tests/tests.c
+2017-02-11  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tests.c] Updated the error message on incorrect MPFR version.
-------------------------------------------------------------------------
-r10735 | vlefevre | 2016-08-19 08:36:16 +0000 (Fri, 19 Aug 2016) | 1 line
-Changed paths:
-   M /trunk/INSTALL
+	[src/sqr.c] revert detection of leading bit in sqr_1 and sqr_2
+		    (not clear it is faster)
 
-[INSTALL] Added note on Solaris and the LD_OPTIONS environment variable.
-------------------------------------------------------------------------
-r10734 | vlefevre | 2016-08-11 16:32:23 +0000 (Thu, 11 Aug 2016) | 3 lines
-Changed paths:
-   M /trunk/tools/coverage
+2017-02-10  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tools/coverage] Added a warning: on a machine shared with other users,
-by running this script, the account can easily be compromised due to a
-libtool bug.
-------------------------------------------------------------------------
-r10732 | vlefevre | 2016-08-06 23:24:24 +0000 (Sat, 06 Aug 2016) | 3 lines
-Changed paths:
-   M /trunk/src/mpfr.h
+	[tests/tsprintf.c] Added a mpfr_snprintf test with a null pointer,
+	"%#.*RDg" and a large precision (it currently takes too much memory,
+	like the similar ones).
 
-[src/mpfr.h] Moved MPFR_DEPRECATED before __MPFR_DECLSPEC for
-compatibility with MSVC (and documented this requirement).
-Thanks to Brian Gladman for the information.
-------------------------------------------------------------------------
-r10731 | vlefevre | 2016-08-04 23:31:17 +0000 (Thu, 04 Aug 2016) | 2 lines
-Changed paths:
-   M /trunk/doc/README.dev
+	[src/vasprintf.c] Added a FIXME for %g on easy cases (too much memory).
+	[tests/tsprintf.c] Added corresponding tests.
 
-[doc/README.dev] Added a note about the C++11 compatibility issue
-with a string literal immediately followed by a macro name.
-------------------------------------------------------------------------
-r10727 | vlefevre | 2016-08-04 15:06:52 +0000 (Thu, 04 Aug 2016) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr-impl.h
-   M /trunk/src/mpfr-longlong.h
-   M /trunk/src/rec_sqrt.c
-   M /trunk/tests/reuse.c
-   M /trunk/tests/tadd1sp.c
-   M /trunk/tests/taway.c
+2017-02-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-Fixed remaining macros with missing "do" … "while (0)", detected with
-mpfrlint. There were no consequences except spurious null statements.
-------------------------------------------------------------------------
-r10726 | vlefevre | 2016-08-04 15:02:00 +0000 (Thu, 04 Aug 2016) | 1 line
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[src/vasprintf.c] Fix for mpfr_snprintf with size=0: do not allocate
+	a buffer for the output if not needed. This really fixes bug #21056.
+	The case size_t < unsigned int could not be solved completely due to
+	limitations from the C standard and GMP.
 
-[tools/mpfrlint] Added a comment.
-------------------------------------------------------------------------
-r10725 | vlefevre | 2016-08-04 13:43:31 +0000 (Thu, 04 Aug 2016) | 5 lines
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[src/sqrt.c] Avoid a warning due to an unused variable with
+	MPFR_GENERIC_ABI defined or GMP_NUMB_BITS != 64.
 
-[tools/mpfrlint] Added a test detecting (unsafe) macros of the form:
-  #define FOO { ... }
-The following form is preferred in most of the cases to avoid spurious
-null statements:
-  #define FOO do { ... } while (0)
-------------------------------------------------------------------------
-r10724 | vlefevre | 2016-08-04 13:17:31 +0000 (Thu, 04 Aug 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tsi_op.c
+	[src/sqrt.c] Added MPFR_ASSERTD's from comments.
 
-[tests/tsi_op.c] Fixed a macro. There were no consequences except
-spurious null statements.
-------------------------------------------------------------------------
-r10723 | vlefevre | 2016-08-04 12:30:53 +0000 (Thu, 04 Aug 2016) | 1 line
-Changed paths:
-   M /trunk/tests/tset_si.c
-   M /trunk/tests/tset_sj.c
+2017-02-09  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tset_{si,sj}.c] Style improvements. Added a comment.
-------------------------------------------------------------------------
-r10721 | vlefevre | 2016-08-04 12:17:34 +0000 (Thu, 04 Aug 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tset_si.c
-   M /trunk/tests/tset_sj.c
+	[tests/tzeta.c] interm_overflow -> intermediate_overflow
 
-[tests/tset_{si,sj}.c] Fixed macros. There were no consequences except
-spurious null statements.
-------------------------------------------------------------------------
-r10719 | vlefevre | 2016-08-04 01:48:33 +0000 (Thu, 04 Aug 2016) | 5 lines
-Changed paths:
-   M /trunk/tests/tpow_z.c
-   M /trunk/tests/tset_si.c
-   M /trunk/tests/tset_sj.c
-   M /trunk/tests/tsi_op.c
+2017-02-09  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests] C++ compatibility: avoid errors with "g++ -std=c++11" or later.
-Note that as of GCC 6, "the default mode for C++ is now -std=gnu++14
-instead of -std=gnu++98" <https://gcc.gnu.org/gcc-6/changes.html>.
-So, this fixes the failures in the build of the MPFR tests with g++
-from GCC 6 without particular options.
-------------------------------------------------------------------------
-r10718 | vlefevre | 2016-08-03 16:23:55 +0000 (Wed, 03 Aug 2016) | 1 line
-Changed paths:
-   M /trunk/src/round_prec.c
+	[src/zeta.c] Updated a FIXME.
 
-[src/round_prec.c] mpfr_can_round_raw: added another FIXME.
-------------------------------------------------------------------------
-r10717 | vlefevre | 2016-08-03 16:02:40 +0000 (Wed, 03 Aug 2016) | 2 lines
-Changed paths:
-   M /trunk/src/round_prec.c
+2017-02-09  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/round_prec.c] mpfr_can_round_raw: added an assertion, corrected
-a condition in a comment, and added comments, showing a new bug.
-------------------------------------------------------------------------
-r10716 | vlefevre | 2016-08-02 15:25:58 +0000 (Tue, 02 Aug 2016) | 1 line
-Changed paths:
-   M /trunk/tests/tmul.c
+	improved detection of fmma and fmms
 
-[tests/tmul.c] Various corrections and improvements in test_underflow.
-------------------------------------------------------------------------
-r10714 | vlefevre | 2016-08-02 11:04:48 +0000 (Tue, 02 Aug 2016) | 2 lines
-Changed paths:
-   M /trunk/src/mpfr.h
+	[src/zeta.c] fixed long-standing failure in tzeta
 
-[src/mpfr.h] Mark mpfr_grandom as deprecated (this had already been done
-in mpfr.texi r8548).
-------------------------------------------------------------------------
-r10713 | vlefevre | 2016-08-02 10:29:36 +0000 (Tue, 02 Aug 2016) | 1 line
-Changed paths:
-   M /trunk/src/mpfr.h
+2017-02-08  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/mpfr.h] Suggest MPFR_EXPERIMENTAL for experimental functions.
-------------------------------------------------------------------------
-r10712 | vlefevre | 2016-08-01 12:40:38 +0000 (Mon, 01 Aug 2016) | 1 line
-Changed paths:
-   M /trunk/tests/tversion.c
+	[src/sqrt.c] fixed a bug, and simplified code (sb=0 implies rb=0)
 
-[tests/tversion.c] Correction in the info about the C implementation.
-------------------------------------------------------------------------
-r10711 | vlefevre | 2016-08-01 12:26:15 +0000 (Mon, 01 Aug 2016) | 1 line
-Changed paths:
-   M /trunk/tests/tversion.c
+2017-02-08  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/tversion.c] Corrections in the info about the C implementation.
-------------------------------------------------------------------------
-r10710 | vlefevre | 2016-08-01 09:56:19 +0000 (Mon, 01 Aug 2016) | 3 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+	[src/vasprintf.c] Updated FIXME.
 
-[src/sqrt.c] Corrected a bound in the proof of mpfr_sqrt1 (one-limb
-precisions), related to the right shift of a negative value. Added
-a warning and a TODO about such an operation.
-------------------------------------------------------------------------
-r10709 | vlefevre | 2016-08-01 09:06:06 +0000 (Mon, 01 Aug 2016) | 6 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+2017-02-08  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/sqrt.c] Enable mpfr_sqrt1 code for one-limb precisions (which
-depends on implementation-defined features of the C standard) only
-when __GNUC__ is defined, as it is known to be correct with GCC and
-compatible compilers, but nothing is known yet for other compilers.
-Removed the corresponding FIXME and added a note. In the future, a
-configure test could be used as an alternative solution.
-------------------------------------------------------------------------
-r10708 | vlefevre | 2016-08-01 08:37:09 +0000 (Mon, 01 Aug 2016) | 1 line
-Changed paths:
-   M /trunk/tests/tversion.c
+	[src/sqrt.c] new code for prec=GMP_NUMB_BITS
 
-[tests/tversion.c] Output more information about the C implementation.
-------------------------------------------------------------------------
-r10707 | vlefevre | 2016-07-31 17:39:38 +0000 (Sun, 31 Jul 2016) | 1 line
-Changed paths:
-   M /trunk/src/sqrt.c
+2017-02-08  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sqrt.c] Fixed some portability issues.
-------------------------------------------------------------------------
-r10706 | vlefevre | 2016-07-31 17:32:32 +0000 (Sun, 31 Jul 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+	[src/vasprintf.c] Moved the size_t vs int FIXME, with details added.
 
-[src/sqrt.c] Fix if mp_limb_t > unsigned long (this fixed failures
-with mingw-w64).
-------------------------------------------------------------------------
-r10705 | vlefevre | 2016-07-31 17:30:28 +0000 (Sun, 31 Jul 2016) | 3 lines
-Changed paths:
-   M /trunk/src/cos.c
-   M /trunk/src/lngamma.c
+	[src/vasprintf.c] Added a MPFR_ASSERTN for security.
 
-[src/lngamma.c] Fix in case mp_limb_t is more than twice as large
-  as unsigned long (that would make it at least 128 bits).
-[src/cos.c] Made code similar to the rest of the code.
-------------------------------------------------------------------------
-r10704 | vlefevre | 2016-07-31 17:19:43 +0000 (Sun, 31 Jul 2016) | 2 lines
-Changed paths:
-   M /trunk/src/div_ui.c
+	[src/vasprintf.c] Added a FIXME for the case size_t < unsigned int.
 
-[src/div_ui.c] Improved a comment (to make it closer to what correct
-C code should be), avoiding a false positive with mpfrlint.
-------------------------------------------------------------------------
-r10703 | vlefevre | 2016-07-31 17:15:31 +0000 (Sun, 31 Jul 2016) | 2 lines
-Changed paths:
-   M /trunk/tools/mpfrlint
+	[src/vasprintf.c] Solved the r11288 FIXME, introducing new ones
+	with a more visible failure. Not fixed yet because there seems
+	to be another issue (already present at the beginning in r4993),
+	which should be considered first.
 
-[tools/mpfrlint] Detect possibly wrong code with some C/GMP
-implementations, related to shifts and integer types.
-------------------------------------------------------------------------
-r10702 | vlefevre | 2016-07-31 16:17:46 +0000 (Sun, 31 Jul 2016) | 1 line
-Changed paths:
-   M /trunk/src/sqrt.c
+	[src/vasprintf.c] Added a FIXME (related to the cause of the failure).
 
-[src/sqrt.c] Completed the FIXME (another portability issue).
-------------------------------------------------------------------------
-r10701 | vlefevre | 2016-07-31 00:39:14 +0000 (Sun, 31 Jul 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sqrt.c
+	[src/vasprintf.c] Added some precondition assertions, as the buffer_cat
+	implementation requires that the current buffer position contains \0.
+	Note[VL]: tsprintf is still failing with assertions on my machine in
+	the 32-bit Linux/x86 ABI, but now on the new precondition instead of
+	postcondition. The behavior with size = 0 actually depends on the state
+	of uninitialized memory (even in the 64-bit ABI), so that the failures
+	may be random; the problem is detected by valgrind.
 
-[src/sqrt.c] Added a FIXME. The current code for prec < GMP_NUMB_BITS
-is not portable.
-------------------------------------------------------------------------
-r10700 | vlefevre | 2016-07-31 00:27:31 +0000 (Sun, 31 Jul 2016) | 1 line
-Changed paths:
-   M /trunk/src/sqrt.c
+	[src/div.c] Declare variables used by GMP_NUMB_BITS == 64 only in the
+	related code.
 
-[src/sqrt.c] Fixed code for implementations with 16-bit int's.
-------------------------------------------------------------------------
-r10699 | vlefevre | 2016-07-31 00:23:11 +0000 (Sun, 31 Jul 2016) | 1 line
-Changed paths:
-   M /trunk/tests/tsqrt.c
+2017-02-08  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[tests/tsqrt.c] Fixed output bug in a test.
-------------------------------------------------------------------------
-r10698 | zimmerma | 2016-07-29 13:46:09 +0000 (Fri, 29 Jul 2016) | 10 lines
-Changed paths:
-   M /trunk/NEWS
-   M /trunk/src/mul.c
+	[src/mul.c] simplified logic for special code
+	[src/div.c] fixed bug in mpfr_div_1n when extra=0
 
-[src/mul.c] speedup for 2 limbs: numactl --physcpubind=0 ./mfv5 -p113 mpfr_mul
+	[src/div.c] special code for prec=GMP_NUMB_BITS
 
-3.1.5-dev:
- mpfr_mul:          45 /    61.60 /    84
+	[src/sqr.c] new code for p = GMP_NUMB_BITS, and small improvement in mpfr_sqr_1
+	[src/mul.c] cosmetic changes
 
-4.0-dev:
- mpfr_mul:          30 /    32.15 /    36
+2017-02-08  Vincent Lefèvre  <vincent at vinc17.net>
 
-[NEWS] mention that speedup
+	[tests/tsub1sp.c] Fix: C++ compatibility.
 
-------------------------------------------------------------------------
-r10697 | zimmerma | 2016-07-29 13:42:10 +0000 (Fri, 29 Jul 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+2017-02-08  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/sub1sp.c] fixed bug in mpfr_sub1sp2
+	[src/mul.c] added special code for prec=GMP_NUMB_BITS
+	[src/add1sp.c] use special code only when MPFR_GENERIC_ABI is not defined
+	[src/sub1sp.c] idem as above
 
-------------------------------------------------------------------------
-r10696 | zimmerma | 2016-07-29 12:44:56 +0000 (Fri, 29 Jul 2016) | 2 lines
-Changed paths:
-   M /trunk/src/mul.c
+2017-02-08  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/mul.c] removed useless code
+	[src/mpfr-impl.h] Declare the mpfr_vasnprintf_aux prototype (which
+	uses va_list) only if <stdarg.h> has been included, otherwise the
+	build was failing with GCC in C90 mode under Linux (and could fail
+	with other C implementations where this header isn't automatically
+	included as a consequence of the inclusion of some other header).
 
-------------------------------------------------------------------------
-r10695 | zimmerma | 2016-07-29 12:33:12 +0000 (Fri, 29 Jul 2016) | 2 lines
-Changed paths:
-   M /trunk/src/mul.c
+2017-02-08  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/mul.c] code simplification
+	[src/sub1sp.c] new function for p=GMP_NUMB_BITS, fixed bug in mpfr_sub1sp3
+	[tests/tsub1sp.c] added new tests
 
-------------------------------------------------------------------------
-r10694 | zimmerma | 2016-07-29 12:21:15 +0000 (Fri, 29 Jul 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+2017-02-08  Vincent Lefèvre  <vincent at vinc17.net>
 
-[src/sub1sp.c] another code simplification
+	[src/vasprintf.c] Fixed bug introduced in r11273.
 
-------------------------------------------------------------------------
-r10693 | zimmerma | 2016-07-29 12:16:38 +0000 (Fri, 29 Jul 2016) | 2 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+	[tools/mpfrlint] Updated the "simple mp_limb_t constants" test.
 
-[src/sub1sp.c] code simplification
+	Made some assertions a bit more readable.
 
-------------------------------------------------------------------------
-r10692 | zimmerma | 2016-07-29 12:06:05 +0000 (Fri, 29 Jul 2016) | 2 lines
-Changed paths:
-   M /trunk/NEWS
+	[tests/tsub1sp.c] Fixed mpfr_inits2/mpfr_clears sentinel → (mpfr_ptr) 0
 
-[NEWS] mention speedup in mpfr_add and mpfr_sub for 2 limbs
+	[tests/tsprintf.c] C90 compatibility.
 
-------------------------------------------------------------------------
-r10691 | zimmerma | 2016-07-29 12:03:28 +0000 (Fri, 29 Jul 2016) | 10 lines
-Changed paths:
-   M /trunk/src/sub1sp.c
+2017-02-08  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/sub1sp.c] faster code for 2 limbs. Results with mbench
-(numactl --physcpubind=0 ./mfv5 -p113 mpfr_sub):
+	[src/vasprintf.c] avoid memory allocation for snprintf with size=0
 
-3.1.5-dev:
- mpfr_sub:          36 /    65.33 /    81
+	[src/sub1sp.c] fixed a bug in mpfr_sub1sp1 and mpfr_sub1sp2 (corner case)
+	[tests/tsub1sp.c] added non-regression test
 
-4.0-dev:
- mpfr_sub:          24 /    33.00 /    36
+2017-02-07  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
+	[src/add1sp.c] added special code for p=GMP_NUMB_BITS
 
-------------------------------------------------------------------------
-r10690 | zimmerma | 2016-07-28 15:09:21 +0000 (Thu, 28 Jul 2016) | 2 lines
-Changed paths:
-   M /trunk/tests/tmul.c
+	[src/vasprintf.c] improved also %a and %e
 
-[tests/tmul.c] fixed wrong test
+	[src/vasprintf.c] fixed bug #21056
 
-------------------------------------------------------------------------
-r10689 | vlefevre | 2016-07-28 13:50:35 +0000 (Thu, 28 Jul 2016) | 3 lines
-Changed paths:
-   M /trunk/tests/reuse.c
+2017-02-07  Vincent Lefèvre  <vincent at vinc17.net>
 
-[tests/reuse.c] Perform each reuse test on 1 to 5 limbs, with a random
-number of trailing bits. This allows one to test code specific to 1 or
-2 limbs.
-------------------------------------------------------------------------
-r10688 | zimmerma | 2016-07-28 11:39:10 +0000 (Thu, 28 Jul 2016) | 2 lines
-Changed paths:
-   M /trunk/src/add1sp.c
+	[TODO] More about the mpz_t pool.
 
-[src/add1sp.c] fixed issues found with --enable-assert=full
+	[src/free_cache.c] Better file description (keeping it short).
 
-------------------------------------------------------------------------
-r10687 | zimmerma | 2016-07-27 19:53:02 +0000 (Wed, 27 Jul 2016) | 2 lines
-Changed paths:
-   M /trunk/src/add1sp.c
+	[src/free_cache.c] Updated comments (mpz_t cache → mpz_t pool).
 
-[src/add1sp.c] new code to deal with p in [GMP_NUMB_BITS+1,2*GMP_NUMB_BITS-1]
+	[doc/mpfr.texi] Updated the month.
 
-------------------------------------------------------------------------
-r10686 | vlefevre | 2016-07-27 15:05:21 +0000 (Wed, 27 Jul 2016) | 9 lines
-Changed paths:
-   M /trunk/src/round_prec.c
+	[doc/mpfr.texi] Clarified mpfr_asprintf & mpfr_vasprintf specification
+	in case of error.
 
-[src/round_prec.c] Various minor improvements:
-  * Added a MPFR_ASSERTN since mpfr_can_round is a function in the API.
-  * Changed error variables to be more consistent with the context.
-  * Removed unnecessary code (casts...) about the error: it came from
-    round.c r1574, where types were different at that time.
-  * Made err2 (the old err) local to a small block to make sure that it
-    will not be used by mistake instead of err in future changes.
-  * Made equivalent expressions appear under the same form:
-      (rnd1 == rnd2 || rnd2 == MPFR_RNDN) && err - 2 >= prec
-------------------------------------------------------------------------
-r10685 | vlefevre | 2016-07-27 14:28:44 +0000 (Wed, 27 Jul 2016) | 1 line
-Changed paths:
-   M /trunk/src/round_prec.c
+	[src/vasprintf.c] Code cleanup.
 
-[src/round_prec.c] Changed precision variables to be like SSA.
-------------------------------------------------------------------------
-r10684 | vlefevre | 2016-07-27 14:17:36 +0000 (Wed, 27 Jul 2016) | 2 lines
-Changed paths:
-   M /trunk/src/round_prec.c
+2017-02-06  Paul Zimmermann  <Paul.Zimmermann at inria.fr>
 
-[src/round_prec.c] Simplified code, making it more similar to code
-that has just been fixed.
-------------------------------------------------------------------------

@@ Diff output truncated at 1234567 characters. @@


More information about the tex-live-commits mailing list.