+2017-01-25 Jason Hood <jadoxa@yahoo.com.au>
+
+ Correct quoted backslash handling, per bug [#2328].
+
+ * setargv.c (__mingw32_setargv): Within single quotes, backslashes
+ should be interpreted literally; copy them as-is.
+
+2017-01-25 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Use C99 blanks as default argv separators, per issue [#2329].
+
+ * setargv.c [_ISOC99_SOURCE]: Require it.
+ (__mingw32_setargv): Separate command line arguments based on...
+ [(quoted == 0) && isblank( c )]: ...this condition, instead of on...
+ [(quoted == 0) && isspace( c )]: ...this, so that only blanks, rather
+ than any whitespace characters, serve as default argument separators.
+
+2017-01-10 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Correct <strings.h> preprocessor logic; fix bug [#2322]
+
+ * include/strings.h (_stricmp, _strnicmp): Always declare, unless...
+ [__STRICT_ANSI__ && __NO_INLINE__]: ...both of these are defined.
+
+2016-11-28 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Implement POSIX.1 compatible setenv() and unsetenv() functions.
+
+ * mingwex/setenv.c: New file; it implements...
+ (__mingw_setenv): ...this function, providing common code for...
+ * include/stdlib.h [_POSIX_C_SOURCE >= 200112L] (setenv, unsetenv):
+ ...these user visible functions, implemented as __CRT_ALIAS inlines;
+ qualify them as __JMPSTUB__ and __LIBIMPL__ respectively, so ensuring
+ that their corresponding external representations are automatically
+ added to libmingwex.a
+
+ * Makefile.in (libmingwex.a): Add setenv.$OBJEXT
+
+2016-11-27 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Work around another C++11 compliance issue; fix bug [#2321].
+
+ * include/excpt.h (__try1_setup, __except1_teardown): Add spaces to
+ separate each use of '__wsize' and '__ts' macros from all surrounding
+ string literals, to ensure that C++ parses them as distinct tokens.
+
+2016-11-21 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Replace defective powf() and powl() function implementations.
+
+ * mingwex/math/powf.c mingwex/math/powl.c: Delete; replaced by...
+ * mingwex/math/pow_generic.sx: ...this new file; it implements...
+ (__x87pow): ...this generic power function back-end, serving...
+ (pow, powf, powl): ...each of these front-end entry points.
+
+ * Makefile.in (libmingwex.a): Add x87pow.$OBJEXT
+
+ * include/math.h (powf): Remove inline implementation; it no longer
+ offers any inline advantage.
+
+2016-11-18 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Implement unit tests for power functions.
+
+ * tests/testsuite.at.in: m4_include...
+ * tests/Makefile.in (testsuite): ...and add dependency on...
+ * tests/powerfunc.at: ...this new file; it specifies unit tests to
+ check POSIX.1-2008 compliance of results and errno assignment from...
+ (pow, powf, powl): ...each of these functions.
+
+2016-11-14 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Add POSIX compliant errno assignments to log functions.
+
+ * include/errno.h: Make it assembly language compatible.
+ [__ASSEMBLER__]: Omit <_mingw.h>; do not declare prototype for...
+ (_errno): ...this accessor function; the declaration is syntactically
+ invalid, in assembly language code.
+
+ * mingwex/math/errno.sx: New file; when included by other assembly
+ language files, it provides bindings for assignement of any constant
+ defined in <errno.h> to the global errno variable, facilitated by...
+ (errno): ...this new GAS macro.
+
+ * mingwex/math/log_generic.sx: New file; it provides a generic back
+ end implementation for multiple logarithmic functions, accessed via...
+ (___x87log, ___x87log_chk): ...this pair of entry points, serving...
+ (log, logf, log): ...each of these primary functions; it replaces...
+ * mingwex/math/logf.s mingwex/math/logl.s: ...these; delete them.
+
+ * mingwex/math/log1p_generic.sx mingwex/math/log10_generic.sx
+ * mingwex/math/log2_generic.sx: New files; each acts as a wrapper for
+ log_generic.sx, providing the front end entry stubs for each of...
+ (log1p, log1pf, log1pl, log10, log10f, log10l, log2, log2f, log2l):
+ ...these functions; thus, they provide complete replacements for...
+ * mingwex/math/log1p.s mingwex/math/log1pf.s mingwex/math/log1pl.s
+ * mingwex/math/log10f.s mingwex/math/log10l.s mingwex/math/log2.s
+ * mingwex/math/log2f.s mingwex/math/log2l.s: ...these; delete them.
+
+ * mingwex/math/x87cvt_generic.sx: New file; it implements...
+ (___x87cvt, ___x87cvtf): ...this pair of return value conversion
+ routines, for conversion from the FPU's internal REAL10 data format,
+ to REAL8 and REAL4, for double and float functions respectively.
+
+ * Makefile.in (libmingwex.a): Add dependencies on...
+ (x87cvt.$OBJEXT), x87cvtf.$OBJEXT), x87log.$OBJEXT), x87logf.$OBJEXT):
+ ...these object modules; implement pattern rule to build them from...
+ (x87cvt_generic.sx, log_generic.sx): ...these generic sources; also
+ provide for building the respective log function entry stubs from
+ their respective generic sources.
+
+2016-11-08 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Implement unit tests for logarithmic functions.
+
+ * tests/testsuite.at.in: m4_include...
+ * tests/Makefile.in (testsuite): ...and add dependency on...
+ * tests/logarithms.at: ...this new file; it specifies unit tests to
+ check POSIX.1-2008 compliance of results and errno assignment from...
+ (log, logf, logl, log1p, log1pf, log1pl, log10, log10f, log10l, log2)
+ (log2f, log2l): ...each of these functions.
+
+2016-11-02 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Implement unit tests for ANSI printf() functions.
+
+ * tests/Makefile.in (testsuite): Add dependency for...
+ * tests/ansiprintf.at: ...this new file, and...
+ * tests/testsuite.at.in: ...m4_include it.
+
+2016-11-01 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Fix another printf() hex-float formatting bug.
+
+ * mingwex/stdio/pformat.c (__pformat_emit_xfloat)
+ [stream->flags & PFORMAT_ZEROFILL]: Ignore this; it should be...
+ [(stream->flags & PFORMAT_JUSTIFY) == PFORMAT_ZEROFILL]: ...thus.
+
+2016-10-30 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Merge post 2016-10-18 updates from legacy branch.
+
+ * include/io.h include/wchar.h: Updated.
+ * mingwex/stdio/pformat.c: Likewise.
+
+2016-10-30 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Work around MSDN inconsistencies in _finddata_t naming.
+
+ * include/io.h (_finddata64_t, _wfinddata64_): Define them
+ respectively as aberrant alternative data type names for each of...
+ (__finddata64_t, __wfinddata64_t): ...these original names.
+ (_wfinddata32_t): Similarly, define this with...
+ (__wfinddata32_t): ...this alternative name.
+
+ * include/wchar.h (_wfinddata32_t): Correct references in comments.
+
+2016-10-30 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Fix a potentially infinite printf() format conversion loop.
+
+ * mingwex/stdio/pformat.c (__pformat_emit_xfloat)
+ [value.__pformat_fpreg_mantissa == 0]: Do not attempt to normalize
+ it; there are no 1-bits to promote, so repeated shifting until one
+ appears in most significant position will never terminate.
+
+2016-10-18 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Merge mingwrt-3.22.4 updates into 5.0-active branch.
+
+ * configure.ac: Preserve original 5.0-active state.
+ * include/wchar.h: Update per 2016-10-17 commits.
+
+2016-10-17 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Prepare and tag mingwrt-3.22.4 patch release.
+
+ * configure.ac (AC_INIT): Increment patch level.
+
+2016-10-17 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Resolve an ANSI mode <string.h> vs. <wchar.h> conflict.
+
+ * include/wchar.h [!(_WCHAR_H && _STRING_H)]: Change condition...
+ [!(_WCHAR_H && (_STRING_H && !__STRICT_ANSI__))]: ...to this; the
+ guarded declarations are not exposed by including <string.h> when...
+ [__STRICT_ANSI__]: ...this is defined; hence, we must declare them
+ when including <wchar.h>, even after including <string.h>
+
+2016-10-14 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Add dependency tracking for tests/Makefile.
+
+ * tests/Makefile.in (top_builddir): Define it.
+ (Makefile): Add automatic rebuild rule, tracking both srcdir and
+ top_builddir prerequisite changes.
+
+2016-10-14 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Correct a minor typographic error.
+
+ * tests/atlocal.in (autoconf_input): Replace invalid AC_SUBST tag...
+ (configure_input): ...with this correctly named alternative.
+
+2016-10-14 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Merge mingwrt-3.22.3 updates into 5.0-active branch.
+
+ * configure.ac: Preserve original 5.0-active state.
+ * include/_mingw.h.in include/string.h include/sys/types.h
+ * include/io.h: Update per 2016-10-13 commits.
+
+2016-10-13 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Prepare and tag mingwrt-3.22.3 patch release.
+
+ * configure.ac (AC_INIT): Increment patch level.
+
+2016-10-13 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Emulate glibc <string.h> POSIX.1 non-compliance.
+
+ * include/_mingw.h.in (_EMULATE_GLIBC): New feature test macro.
+ [_GNU_SOURCE || _BSD_SOURCE || !__STRICT_ANSI__]: Enable it when...
+ [_XOPEN_SOURCE || _POSIX_C_SOURCE || _POSIX_SOURCE]: ...none of
+ these have been pre-defined by the user.
+
+ * include/string.h [_EMULATE_GLIBC]: Include <strings.h> in full...
+ (strcasecmp, strncasecmp): ...so prototypes for these are declared.
+ [!_EMULATE_GLIBC]: Preserve partial <strings.h> include, guarded by...
+ [__STRING_H_SOURCED__]: ...this context selector, so suppressing the
+ declarations of those function prototypes.
+
+2016-10-13 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Resolve some non-ANSI typedef omissions.
+
+ * include/sys/types.h (off_t, ssize_t): Always typedef them when...
+ [_POSIX_C_SOURCE || !_NO_OLDNAMES]: ...either of these prevails.
+
+ * include/io.h (_fsize_t): Do not suppress its typedef when...
+ [__STRICT_ANSI__]: ...this compiler option applies, irrespective of...
+ [!(_IO_H && _WCHAR_H)]: ...this, which otherwise causes supression.
+
+2016-09-20 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Prepare and tag mingwrt-3.22.2 patch release.
+
+ * configure.ac (AC_INIT): Increment patch level.
+ * config.guess config.sub: Delete, per 2016-07-16 commit.
+ * include/stdlib.h: Backport, per 2016-09-14 commit.
+ * include/wchar.h: Backport, per 2016-09-17 commits.
+
+2016-09-17 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Add missing <wchar.h> declarations when compiling C++.
+
+ * include/wchar.h (fwide, mbsinit, wmemset, wmemchr, wmemcpy)
+ (wmemmove, wcstoll, wcstoull): Declare each of these for either of...
+ [_ISOC99_SOURCE || __cplusplus]: ...these conditions, rather than...
+ [_ISOC99_SOURCE]: ...this alone.
+
+2016-09-17 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Stricter <wchar.h> ISO-C99 conformity filtering.
+
+ * include/wchar.h [__STRICT_ANSI__]: Do not include any part of...
+ (direct.h, io.h, sys/stat.h, locale.h, process.h): ...any of these.
+
+2016-09-14 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Relax strict ISO-C conformity to facilitate C99 support.
+
+ * include/stdlib.h (_atoi64, _exit) [__STRICT_ANSI__]: Convention
+ dictates that the Microsoft specific functions should not be declared;
+ however, C99 provides equivalents in atoll() and _Exit(), for which we
+ gratuituously use them to provide inline implementations; thus...
+ [_ISOC99_SOURCE && !__NO_INLINE__]: ...declare them anyway.
+
+2016-09-13 Keith Marshall <keithmarshall@users.sourceforge.net>
+
+ Suppress expected header warnings when running testsuite.
+
+ * include/dir.h include/dos.h [__IN_MINGWRT_TESTSUITE__]: New feature
+ test; do not emit warning messages, which declare this pair of headers
+ to be obsolete. These warnings are expected, but their format may not
+ be deterministically predictable; there is no reason to fail any test
+ on account of any such expected warning message.
+
2016-09-13 Keith Marshall <keithmarshall@users.sourceforge.net>
Create a preliminary autotest framework.