+2020-07-06 Keith Marshall <keith@users.osdn.me>
+
+ Prepare and publish MinGW.org WSL-5.3.4 release.
+
+ * All files (wsl-5.3.4-release): Tag assigned.
+
+2020-07-05 Keith Marshall <keith@users.osdn.me>
+
+ Update MBCS to wide character conversion man pages.
+
+ * man/btowc.3.man man/mbrlen.3.man man/mbrtowc.3.man
+ * man/mbsinit.3.man man/mbsrtowcs.3.man man/wcrtomb.3.man
+ * man/wcsrtombs.3.man man/wctob.3.man: Remove references to Microsoft
+ implementations of documented functions; all means of access to such
+ function implementations have been disabled for MinGW applications.
+
+2020-07-04 Keith Marshall <keith@users.osdn.me>
+
+ Discontinue use of Microsoft's MBCS/wide character converters.
+
+ * include/wchar.h (__mingw_redirect): Delete macro definition.
+ (__mingw_mbrlen, __msvcrt_mbrlen, __mingw_mbrtowc, __msvcrt_mbrtowc)
+ (__mingw_btowc, __msvcrt_btowc, __mingw_mbsrtowcs, __msvcrt_mbsrtowcs)
+ (__mingw_wctob, __msvcrt_wctob, __mingw_wcrtomb, __msvcrt_wcrtomb)
+ (__mingw_wcsrtombs, __msvcrt_wcsrtombs): Delete prototypes, and...
+ (mbrlen, mbrtowc, btowc, mbsrtowcs, wctomb, wcrtomb, wcsrtombs):
+ ...their corresponding redirected inline implementations.
+
+ * mingwex/btowc.c (__msvcrt_btowc): Delete implementation.
+ (__mingw_btowc_fallback, __mingw_btowc): Fold together, into...
+ (btowc): ...this publicly accessible function; add weak aliases...
+ (__mingw_btowc, __msvcrt_btowc): ...named thus.
+
+ * mingwex/mbrlen.c (__msvcrt_mbrlen): Delete implementation.
+ (__mingw_mbrlen_fallback, __mingw_mbrlen): Fold together, into...
+ (mbrlen): ...this publicly accessible function; factor out codeset
+ and codeset property initializations; add weak aliases...
+ (__mingw_mbrlen, __msvcrt_mbrlen): ...named thus.
+
+ * mingwex/mbrtowc.c (__msvcrt_mbrtowc): Delete implementation.
+ (__mingw_mbrtowc_fallback, __mingw_mbrtowc): Fold together, into...
+ (mbrtowc): ...this publicly accessible function; factor out codeset
+ and codeset property initializations; add weak aliases...
+ (__mingw_mbrtowc, __msvcrt_mbrtowc): ...named thus.
+
+ * mingwex/mbsrtowcs.c (__msvcrt_mbsrtowcs): Delete implementation.
+ (__mingw_mbsrtowcs_fallback, __mingw_mbsrtowcs): Fold; rename as...
+ (mbsrtowcs): ...this publicly accessible function; add weak aliases...
+ (__mingw_mbsrtowcs, __msvcrt_mbsrtowcs): ...named thus.
+ (__mbsrtowcs_fallback): Rename it as...
+ (__mbsrtowcs_internal): ...this.
+
+ * mingwex/mbrconv.c (__mingw_mbrtowc_handler): Initialize codeset.
+
+ * mingwex/wcrtomb.c (__msvcrt_wcrtomb): Delete implementation.
+ (__mingw_wcrtomb_fallback, __mingw_wcrtomb): Fold together, into...
+ (wcrtomb): ...this publicly accessible function; add weak aliases...
+ (__mingw_wcrtomb, __msvcrt_wcrtomb): ...named thus.
+ (__wcrtomb_fallback): Rename it as...
+ (__wcrtomb_internal): ...this.
+
+ * mingwex/wcsrtombs.c (__mingw_wcsrtombs): Rename it as...
+ (wcsrtombs): ...this ISO-C99 name; preserve delegation to...
+ (__mingw_wcsrtombs_fallback): ...this, but rename it as...
+ (__mingw_wcsrtombs_internal): ...this; inline it.
+ (__msvcrt_wcsrtombs): Delete implementation.
+ (__mingw_wcsrtombs, __msvcrt_wcsrtombs): Reinstate as weak aliases.
+
+ * mingwex/wctob.c (__msvcrt_wctob): Delete implementation.
+ (__mingw_wctob_fallback, __mingw_wctob): Fold together, into...
+ (wctob): ...this publicly accessible function; add weak aliases...
+ (__mingw_wctob, __msvcrt_wctob): ...named thus.
+
+2020-06-03 Keith Marshall <keith@users.osdn.me>
+
+ Prepare and publish MinGW.org WSL-5.3.3 release.
+
+ * All files (wsl-5.3.3-release): Tag assigned.
+
+2020-06-03 Keith Marshall <keith@users.osdn.me>
+
+ Revert 2020-05-27 changes relating to issue #40438.
+
+ * Makefile.in (libmingw32.a): Remove, and relocate...
+ (codeset.$OBJEXT, mbrscan.$OBJEXT): ...each of these, back to...
+ (libmingwex.a): ...here; the previous relocation created more problems
+ than it solved, and indeed, I can no longer reproduce the issue which
+ prompted the earlier relocation.
+
+2020-05-28 Keith Marshall <keith@users.osdn.me>
+
+ Prepare and publish MinGW.org WSL-5.3.2 release.
+
+ * All files (wsl-5.3.2-release): Tag assigned.
+
+2020-05-28 Keith Marshall <keith@users.osdn.me>
+
+ Avoid recursive optional DLL import library linking.
+
+ * Makefile.in (%.dll.a): Remove target before generation; if it
+ pre-exists, the DLL may appear to recursively depend on itself.
+
+2020-05-27 Keith Marshall <keith@users.osdn.me>
+
+ Fix libmingwex-n.dll dependencies; cf. Issue #40438.
+
+ * Makefile.in (libmingwex.a): Remove...
+ (mbrscan.$OBJEEXT, wcharmap.$OBJEXT): ...these; relocate them to...
+ (libmingw32.a): ...here.
+
+2020-04-30 Keith Marshall <keith@users.osdn.me>
+
+ Prepare and publish MinGW.org WSL-5.3.1 release.
+
+ * All files (wsl-5.3.1-release): Tag assigned.
+
+2020-04-19 Keith Marshall <keith@users.osdn.me>
+
+ Implement POSIX.1-2001 posix_memalign() function.
+
+ * include/stdlib.h [_POSIX_C_SOURCE >= 200112L] (posix_memalign):
+ Implement as inline alias, with libmemalign.a stub, in terms of...
+ (__mingw_aligned_offset_malloc): ...this; duplicate declaration.
+
+2020-04-18 Keith Marshall <keith@users.osdn.me>
+
+ Implement ISO-C11/C++17 aligned_alloc() function.
+
+ * include/stdlib.h (free, realloc): Define as inline aliases for...
+ (__mingw_free, __mingw_realloc): ...these replacements, respectively.
+ [__STDC_VERSION__>=201112L || __cplusplus >=201703L] (aligned_alloc):
+ Implement as inline alias, with libmemalign.a stub, in terms of...
+ (__mingw_aligned_offset_malloc): ...this; duplicate declaration.
+ (_GLIBCXX_HAVE_ALIGNED_ALLOC): Define it.
+
+2020-04-11 Keith Marshall <keith@users.osdn.me>
+
+ Manpage stylistic consistency updates.
+
+ * man/dirname.3.man man/getline.3.man: Miscellaneous stylistic
+ formatting changes.
+
+2020-04-08 Keith Marshall <keith@users.osdn.me>
+
+ Ensure PDF manpages are generated from local sources.
+
+ * Makefile.in (%.$man3ext.pdf): Specify explicit path to $<.$man3ext
+ file, when invoking the 'man -t' command; without it, the command may
+ refer to the build host's native copy, instead of our local version.
+
+2020-04-08 Keith Marshall <keith@users.osdn.me>
+
+ Automatically enumerate manpages for publication.
+
+ * Makefile.in (manpages): New macro; define, and use it...
+ (mingwrt-man3): ...for this, to enumerate associated manpage sources.
+ (manpage_copy, mancopy, manpage_ref): New macros; define them, and...
+ (basename.3, getdelim.3): ...use them.
+
+2020-04-07 Keith Marshall <keith@users.osdn.me>
+
+ Document MinGW MBCS/wide character conversion functions.
+
+ * man/btowc.3.man man/mbrlen.3.man man/mbrtowc.3.man
+ * man/mbsinit.3.man man/mbsrtowcs.3.man man/wcrtomb.3.man
+ * man/wcsrtombs.3.man man/wctob.3.man: New files.
+
+2020-04-02 Keith Marshall <keith@users.osdn.me>
+
+ Handle wcsrtombs() initial surrogate completion.
+
+ * mingwex/wcsrtombs.c (__mingw_wcsrtombs_fallback)
+ [*ps -> high surrogate && **wcs -> low surrogate]: Complete surrogate
+ pair, and evaluate conversion; compute its length, and account for its
+ effect on alloted conversion buffer size. Reset *ps to initial state.
+
2020-04-02 Keith Marshall <keith@users.osdn.me>
Correct wchar_t to MBCS unpaired surrogate handling.