2022-11-17  Vincent Lefevre  <vincent@vinc17.net>

	Updated version to 4.1.1.

2022-11-17  Vincent Lefevre  <vincent@vinc17.net>

	[NEWS] Update for 4.1.1.

	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).

2022-11-17  Vincent Lefevre  <vincent@vinc17.net>

	[doc/mpfr.texi] Changed a @need command due to a bug in @need.

	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!

2022-11-17  Vincent Lefevre  <vincent@vinc17.net>

	[doc/mpfr.texi] Added @need commands to prevent page breaks.

2022-11-17  Vincent Lefevre  <vincent@vinc17.net>

	[doc/mpfr.texi] Hack to improve TeX output (PDF).

	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).

2022-11-17  Vincent Lefevre  <vincent@vinc17.net>

	[doc/mpfr.texi] Added a note about a TeX output (PDF) issue.

	This affects "[]", which appears in the mpfr_sum and mpfr_dot
	function prototypes.

2022-11-16  Vincent Lefevre  <vincent@vinc17.net>

	Consistency: s/non(zero|positive|negative)/non-$1/

	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.

2022-11-16  Vincent Lefevre  <vincent@vinc17.net>

	[doc/mpfr.texi] Final typographic and style corrections.

	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.

2022-11-16  Vincent Lefevre  <vincent@vinc17.net>

	Updated version to 4.1.1-rc1 again with the new tools/update-version.

	All the expected replacements have now *really* been done thanks to
	commit 9f1d88a7ab750a9f33ff5c7f6b27bc2e941ca4b6.

2022-11-16  Vincent Lefevre  <vincent@vinc17.net>

	[tools/update-version] Fixed replacements in "doc/mpfr.texi".

	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.

2022-11-15  Vincent Lefevre  <vincent@vinc17.net>

	Updated doc/texinfo.tex to 2022-11-13.08

2022-11-11  Vincent Lefevre  <vincent@vinc17.net>

	[doc/README.dev] Updated "To make a release".

	[doc/README.dev] "To make a release": mention the README file.

2022-11-11  Vincent Lefevre  <vincent@vinc17.net>

	[README] Changed link to the README.dev file to the 4.1 branch.

	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.

2022-11-10  Vincent Lefevre  <vincent@vinc17.net>

	Updated version to 4.1.1-rc1 again with the new tools/update-version.

	All the expected replacements have now been done in doc/mpfr.texi,
	thanks to commit 9645c5255492c6d00133a3a90e479d374b6c061d.

2022-11-10  Vincent Lefevre  <vincent@vinc17.net>

	[tools/update-version] Updated a replacement.

	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.

2022-11-10  Vincent Lefevre  <vincent@vinc17.net>

	[tools/update-version] Check for failing replacements.

	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.

	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.

2022-11-09  Vincent Lefevre  <vincent@vinc17.net>

	Updated doc/texinfo.tex to 2022-11-07.17 (from GNU Texinfo 7.0).

2022-11-08  Vincent Lefevre  <vincent@vinc17.net>

	[doc/mpfr.texi] Various corrections and improvements.

	* mpfr_subnormalize: define EXP(x) and PREC(x).
	* More typographic corrections and improvements.

2022-11-07  Vincent Lefevre  <vincent@vinc17.net>

	[doc/mpfr.texi] Added a comment (ref to the GNU Texinfo spacing bug).

2022-11-07  Vincent Lefevre  <vincent@vinc17.net>

	[doc/mpfr.texi] Remaining typographic correction for a math expression.

	This is specific to the 4.1 branch as the text was removed in master
	with the new function mpfr_rootn_si.

2022-11-07  Vincent Lefevre  <vincent@vinc17.net>

	[doc/mpfr.texi] Typographic corrections and English usage.

	* 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.

2022-11-04  Vincent Lefevre  <vincent@vinc17.net>

	[doc/mpfr.texi] Minor typographic correction.

	This corrects commit d1a6e781428506bc49bc98d632265cf2d4406c9f.

2022-11-04  Vincent Lefevre  <vincent@vinc17.net>

	[doc/mpfr.texi] Updated the month.

2022-11-04  Vincent Lefevre  <vincent@vinc17.net>

	[doc/mpfr.texi] Various improvements and style corrections from master.

	with conflict resolutions.

2022-11-03  Vincent Lefevre  <vincent@vinc17.net>

	[manual] For sqrt, mention the relation with rootn.

	This corresponds to commit a9bdb273b79ae470ad2177c27e7e978f4bc9831e
	from master, ignoring mpfr_rootn_si, which is not in the 4.1 branch.

2022-11-03  Vincent Lefevre  <vincent@vinc17.net>

	Fixed some minor mistakes.

	* 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.

2022-11-03  Vincent Lefèvre  <vincent@vinc17.net>

	[doc] Update about "case insensitive" and issue with Turkish locales
	for "I" / "i".

	  * mpfr.texi: added "with the rules of the C locale" in the
	    mpfr_strtofr description.
	  * README.dev: completed information about Turkish locales.

2022-11-03  Vincent Lefevre  <vincent@vinc17.net>

	Updated doc/texinfo.tex to 2022-10-18.18

	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.

2022-10-05  Vincent Lefevre  <vincent@vinc17.net>

	ChangeLog update with tools/update-changelog

	[tools/update-changelog] Use UTC to generate the ChangeLog file.

2022-10-05  Vincent Lefevre  <vincent@vinc17.net>

	[tools/gitlog-to-changelog] Improve --strip-cherry-pick for this repository.

	Remove all the cherry-pick information from what can be found in
	the 4.1 branch.

2022-10-05  Vincent Lefevre  <vincent@vinc17.net>

	[doc/README.dev] "To make a release": corrections about the tag.

	ChangeLog update with tools/update-changelog

	[tests/tnrandom.c] Fixed compilation failure with mini-gmp.

	ChangeLog update with tools/update-changelog

2022-10-05  Vincent Lefevre  <vincent@vinc17.net>

	[tools] Improvement for the ChangeLog generation.

	* 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.

2022-10-05  Vincent Lefevre  <vincent@vinc17.net>

	[doc/README.dev] "To make a release": update for the ChangeLog file.

	See commit 1dc281851408fc7d330576327545857c93392521 for the reason.

2022-10-05  Vincent Lefevre  <vincent@vinc17.net>

	[doc/README.dev] "To make a release": update for abi-compliance-checker.

	Added an example of use of build-multi and abi-compliance-checker
	for the 4.1.1 release candidate.

2022-10-05  Vincent Lefevre  <vincent@vinc17.net>

	Fix for "make dist" / "make distcheck" about ChangeLog regeneration.

	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.

	* 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.

2022-10-05  Vincent Lefevre  <vincent@vinc17.net>

	Corrected comment about the ".POSIX" line in all Makefile.am files.

	[doc/README.dev] "To make a release": update for abi-compliance-checker.

2022-10-05  Vincent Lefevre  <vincent@vinc17.net>

	[doc/README.dev] "To make a release": update about build-multi.

	Needed due to the switch from InriaForge to Inria GitLab.

2022-10-04  Vincent Lefevre  <vincent@vinc17.net>

	[tests/tnrandom.c] Improved the support non-default seed.

	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.

2022-10-04  Vincent Lefevre  <vincent@vinc17.net>

	[tests/tnrandom.c] Added a comment for tnrandom with an argument.

	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.

2022-10-04  Vincent Lefevre  <vincent@vinc17.net>

	[tests/tnrandom.c] Support non-default seed (GMP_CHECK_RANDOMIZE).

	This fixes a failure due to 98014bfa2e453dd96dece493a88f983f111fc6a3
	when GMP_CHECK_RANDOMIZE is set.

2022-10-04  Vincent Lefevre  <vincent@vinc17.net>

	[doc/README.dev] "To make a release": added note about GMP_CHECK_RANDOMIZE.

2022-10-03  Vincent Lefevre  <vincent@vinc17.net>

	[doc] Updated FAQ.html with update-faq.

	[doc/update-faq] Ensure that the code is run from the doc directory.

	[tools/coverage] Typo.

	[doc/README.dev] Updated "To make a release".

	[NEWS] Update for 4.1.1.

	doc/mpfr.texi: Updated the month.

	Updated version to 4.1.1-rc1 (with tools/update-version).

	Updated URLs.

2022-10-03  Vincent Lefevre  <vincent@vinc17.net>

	[doc/README.dev] Corrected "To make a release".

	The addition of the <branch>-root tag applies only after a branch
	is created, i.e. for non-patchlevel releases (item 0).

2022-09-18  Vincent Lefevre  <vincent@vinc17.net>

	Updated doc/texinfo.tex to 2022-09-14.01

	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.

2022-09-07  Vincent Lefevre  <vincent@vinc17.net>

	[doc/README.dev] New C2x draft (N3054).

2022-09-05  Vincent Lefevre  <vincent@vinc17.net>

	[doc/README.dev] Updated "To make a release" (about texinfo.tex).

	[autogen.sh] Added a comment about files we handle in the repository.

2022-09-05  Vincent Lefevre  <vincent@vinc17.net>

	[doc/.gitignore] Removed /texinfo.tex since it is in the repository.

	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.

2022-08-27  Vincent Lefevre  <vincent@vinc17.net>

	[doc/README.dev] Changed "trunk" (Subversion) to "master" (Git).

2022-08-27  Vincent Lefevre  <vincent@vinc17.net>

	[doc/README.dev] Update from master, minus a few things.

	From the master version, removed
	  * text that do not apply to the 4.1 branch;
	  * an obsolete URL.

2022-08-27  Vincent Lefevre  <vincent@vinc17.net>

	Added m4/ax_pthread.m4 file, and related updates.

	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.

2022-08-27  Vincent Lefevre  <vincent@vinc17.net>

	Added tools/export-release sh script from master.

	Export some release identified by a Git tag in order to get a tarball.

2022-08-27  Vincent Lefevre  <vincent@vinc17.net>

	[tools/ck-copyright-notice] Better indentation.

	[tools/ck-copyright-notice] Support the future ChangeLog format.

2022-08-27  Vincent Lefevre  <vincent@vinc17.net>

	[tools/ck-copyright-notice] Better error handling.

	Note: One currently gets a failure with the future ChangeLog format,
	obtained with gitlog-to-changelog (via "make ChangeLog").

2022-08-27  Vincent Lefevre  <vincent@vinc17.net>

	Support ChangeLog regeneration from a Git working tree.

	* Added tools/gitlog-to-changelog file from Gnulib.
	* Makefile.am: added a rule for the Changelog file.

	Needed as the GNU MPFR repository has been converted to Git.

	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).

	Note: In the future, if there is any change to do to a Git commit
	message (typo, etc.), the --amend option could be used.

2022-08-27  Vincent Lefevre  <vincent@vinc17.net>

	[tools/announce-text] Update from master.

2022-08-27  Vincent Lefèvre  <vincent@vinc17.net>

	With wget, use the --no-config option.

	[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>.

2022-08-23  Vincent Lefevre  <vincent@vinc17.net>

	[codespell.ignore] Ignore RO and SIZ (codespell 2.2.0).

	Corrected spelling mistake found by codespell 2.2.0

	doc/mpfr.texi: Updated the month.

2022-08-08  Vincent Lefevre  <vincent@vinc17.net>

	version-ext.sh: replaced a remaining "sed" by "$SED".

	Thanks to Trevor Spiteri for noticing that.

2022-08-08  Vincent Lefevre  <vincent@vinc17.net>

	version-ext.sh: handle the case where no Git branches are found.

	This should solve the issue reported on 2022-08-08 by Trevor Spiteri:
	https://sympa.inria.fr/sympa/arc/mpfr/2022-08/msg00002.html

2022-08-08  Vincent Lefevre  <vincent@vinc17.net>

	For version-ext.sh, use "$SED" instead of "sed".

	* tests/Makefile.am: pass $SED to version-ext.sh.
	* version-ext.sh: use $SED (default to "sed").

2022-08-08  Vincent Lefevre  <vincent@vinc17.net>

	Fixed version-ext.sh when in an origin/* remote branch.

2022-07-06  Vincent Lefevre  <vincent@vinc17.net>

	[configure.ac] Update about GNU gold ld and LD_RUN_PATH.

	* Comment update: added URL of the upstream bug report.
	* Mention the GNU gold linker in the warning.

2022-07-06  Vincent Lefèvre  <vincent@vinc17.net>

	Punctuation (missing comma after "however").

2022-06-13  Vincent Lefevre  <vincent@vinc17.net>

	[README] Replaced "Subversion" by "Git".

2022-06-11  Vincent Lefevre  <vincent@vinc17.net>

	Fixed tsprintf %a tests when GMP and libc produce different outputs.

	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.

	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).

	Bug report:
	  https://sympa.inria.fr/sympa/arc/mpfr/2022-06/msg00004.html

2022-05-20  Vincent Lefevre  <vincent@vinc17.net>

	Fixes related to the native types in the formatted output functions.

	* 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.

2022-05-19  Vincent Lefevre  <vincent@vinc17.net>

	[tests/tnrandom.c] With mini-gmp, disable the tests that check the values.

2022-05-18  Vincent Lefevre  <vincent@vinc17.net>

	[tests/tnrandom.c] Check some mpfr_nrandom values to detect changes.

	The values should be the same on different machines and with
	different MPFR versions (or this would be an ABI change).

2022-05-10  Vincent Lefevre  <vincent@vinc17.net>

	doc/mpfr.texi: Updated the month.

	[NEWS] Update.

2022-05-10  Vincent Lefevre  <vincent@vinc17.net>

	Improved 2 macros of the custom interface and updated manual.

	* 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).

2022-05-06  Vincent Lefevre  <vincent@vinc17.net>

	Testsuite: C++11 compatibility (GCC's -Wliteral-suffix).

	With "g++ -Werror", several .c files in the "tests" directory were
	yielding

	  error: invalid suffix on literal; C++11 requires a space between
	  literal and string macro [-Werror=literal-suffix]

2022-05-06  Vincent Lefevre  <vincent@vinc17.net>

	Fixed issues with the macro versions of the custom interface.

	* 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++.

2022-04-07  Vincent Lefevre  <vincent@vinc17.net>

	doc/mpfr.texi: Updated the month.

2022-04-06  Vincent Lefevre  <vincent@vinc17.net>

	[src/log_ui.c] Updated comments to better understand that the code is correct.

2022-04-04  Vincent Lefevre  <vincent@vinc17.net>

	[src/root.c] Updated a comment for mpfr_rootn_ui.

	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.

2022-04-04  Vincent Lefevre  <vincent@vinc17.net>

	[tests/tpow.c] Corrected messages.

2022-04-04  Vincent Lefevre  <vincent@vinc17.net>

	In the tests, fixed "randlimb () % 1", mistaken for "randlimb () & 1".

	This occurred only in tests/tfmma.c (5 occurrences), with the
	consequence of fewer cases of different kinds in the tests.

	Such a kind of mistake is now detected by mpfrlint (commit 02a17d21a).

2022-04-04  Vincent Lefevre  <vincent@vinc17.net>

	mpfrlint: detect "% 1" (modulo 1), which always gives 0.

	This is probably mistaken for "& 1" or "% 2", as currently in
	"tests/tfmma.c".

	(same as commit 2a90f0c91b35b23bd85a8a9ceb23426e3b36b91b)

2022-03-30  Vincent Lefevre  <vincent@vinc17.net>

	Fixed version-ext.sh, in particular when used after "./autogen.sh".

	After running autogen.sh, version-ext.sh incorrectly detected files
	as modified. Solution: refresh the git index before git diff-index.

2022-03-30  Vincent Lefevre  <vincent@vinc17.net>

	[acinclude.m4] Fix/improve MPFR_CHECK_LIBM and MPFR_CHECK_LIBQUADMATH.

	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.

2022-01-06  Vincent Lefevre  <vincent@vinc17.net>

	Copyright notice update: added 2022.

	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.

2021-12-26  Vincent Lefevre  <vincent@vinc17.net>

	Corrected style (spurious space before comma).

2021-12-26  Paul Zimmermann  <Paul.Zimmermann@inria.fr>

	gnu style

2021-11-25  Vincent Lefevre  <vincent@vinc17.net>

	Move code for git info to its own shell script "version-ext.sh".

	* 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.

2021-11-25  Vincent Lefevre  <vincent@vinc17.net>

	Another fix in the code for git info output by "make check".

	tests/Makefile.am: in output_info, replaced "grep" by "$(GREP)".

2021-11-25  Vincent Lefevre  <vincent@vinc17.net>

	Fixed git info output by "make check".

	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).

2021-11-22  Vincent Lefevre  <vincent@vinc17.net>

	Add git info for "make check".

	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).

2021-10-24  Vincent Lefevre  <vincent@vinc17.net>

	Updated README due to the migration to Inria GitLab.

	doc/mpfr.texi: Updated the month.

2021-10-24  Vincent Lefevre  <vincent@vinc17.net>

	mpfrlint: update for git.

	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.

2021-10-24  Vincent Lefevre  <vincent@vinc17.net>

	In mpfr.texi, added a "@." to avoid a warning from mpfrlint.

	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.

2021-10-24  Vincent Lefevre  <vincent@vinc17.net>

	mpfr.texi cleanup: removed the obsolete @refill command.

	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

2021-09-16  Vincent Lefèvre  <vincent@vinc17.net>

	[doc/mpfr.texi] Updated the month.

2021-09-16  Vincent Lefèvre  <vincent@vinc17.net>

	[doc/mpfr.texi] Corrected garbled mpfr_set* description.

	Thanks to Rob for noticing:
	  https://sympa.inria.fr/sympa/arc/mpfr/2021-09/msg00003.html

	The cause is a sentence that was inserted at the wrong place in r8225
	(2012-06-25).

	(merged changeset r14580 from the trunk)

2021-09-13  Vincent Lefèvre  <vincent@vinc17.net>

	[configure.ac] Reverted r14572, which was solving an issue about the
	ordering of macros with ax_pthread.m4 29.

	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).

2021-09-07  Vincent Lefèvre  <vincent@vinc17.net>

	[tests/tests.c] Fixed bad_cases when y is ±0 (rare case).

	(merged changeset r14570 from the trunk, with GMP_CHECK_RANDOMIZE value
	in a comment changed for the current revision in the 4.1 branch)

2021-09-07  Vincent Lefèvre  <vincent@vinc17.net>

	[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

	(merged changeset r14481 from the trunk)

2021-09-07  Vincent Lefèvre  <vincent@vinc17.net>

	Get rid of obsolescent AC_HEADER_TIME. Cleanup about sys/time.h usage.

	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>.

	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.

	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.

	(merged changeset r14479 from the trunk)

2021-06-01  Vincent Lefèvre  <vincent@vinc17.net>

	[tests/tests.c] fixed bug introduced in r13787, which invalidated data_check
	in some cases

	(merged changeset r14531 from the trunk)

2021-05-17  Vincent Lefèvre  <vincent@vinc17.net>

	[tests/tsprintf.c] Commented out a test added in r14524.

	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.

2021-05-17  Vincent Lefèvre  <vincent@vinc17.net>

	Formatted output functions (mpfr_*printf): bug fix; added tests.

	  * 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.

	(merged changesets r14514,14520-14521 from the trunk)

2021-05-17  Vincent Lefèvre  <vincent@vinc17.net>

	[doc/mpfr.texi] Updated the month.

2021-05-17  Vincent Lefèvre  <vincent@vinc17.net>

	[doc/mpfr.texi] Punctuation.

	(merged changeset r14515 from the trunk)

2021-04-23  Vincent Lefèvre  <vincent@vinc17.net>

	Fixed bug in mpfr_get_str_ndigits.

	* 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.

	[*] https://sympa.inria.fr/sympa/arc/mpfr/2021-04/msg00000.html

	(merged changeset r14488 from the trunk)

2021-03-09  Vincent Lefèvre  <vincent@vinc17.net>

	[doc/mpfr.texi] Updated the month.

2021-03-09  Vincent Lefèvre  <vincent@vinc17.net>

	[tests/{tset_si.c,tset_sj.c}] Fix when -DMPFR_USE_NO_MACRO is used.

	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.

	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.

	(merged changeset r14464 from the trunk)

2021-03-09  Vincent Lefèvre  <vincent@vinc17.net>

	In mpfr.h, fixed some macros implementing functions. Added tests.

	* 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.

	(merged changesets r14447-14463 from the trunk)

2021-03-09  Vincent Lefèvre  <vincent@vinc17.net>

	Completed tests/tcopysign.c to test with a reused argument.

	(merged part of changeset r14227 from the trunk)

2021-02-15  Vincent Lefèvre  <vincent@vinc17.net>

	[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)

	[src/digamma.c] Fixed a bug in mpfr_digamma_reflection.
	[tests/tdigamma.c] Added testcase.
	(merged changesets r14430,14432-14433 from the trunk)

2021-02-10  Vincent Lefèvre  <vincent@vinc17.net>

	[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)

	[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)

	[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)

2021-02-09  Vincent Lefèvre  <vincent@vinc17.net>

	[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).

	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.

	(merged changesets r14103,14154 from the trunk)

2021-01-03  Vincent Lefèvre  <vincent@vinc17.net>

	[doc/mpfr.texi] Updated the month.

	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.

2020-09-28  Vincent Lefèvre  <vincent@vinc17.net>

	[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)

2020-09-25  Vincent Lefèvre  <vincent@vinc17.net>

	[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.

	[tests/tset_z_exp.c] Added testcases, enabled only when the
