@ 260915.5

260804.1 · 8b661eb3d5ec3323bb88036318c7415fed80b6c9

MinGW portability fixes

- see also #553
- distinct OS_WIN versus OS_WIN_MINGW is necessary, since MinGW is almost windows but not quite, so most changes are for #ifdef checks with a few code blocks moved (no new logic)
- tested with MinGW-w64 UCRT64 with MSYS2 GCC 16.1
- updated verify.sh runs with 'make test' skips directory searches for MinGW, because of the lack of symlink support
- appease -Wunused

reading declarations

Changes to tests/. All files

tests/verify.sh

@@ -115,16 +115,24 @@ fi  export GREP_COLORS='cx=hb:ms=hug:mc=ib+W:fn=h35:ln=32h:cn=1;32:bn=1;32:se=+36' -# set ERR and DIFF to compare and report+# set ERR to report  function ERR() {   echo "Error: ugrep --sort $1 failed"   exit 1 } -DIFF="diff -U1 -"+# set DIFF to compare and report, MinGW should ignore CRL<->LF and ignore "binary" characters -# prepare to test+if test "$OSTYPE" = "msys" || ( test "$OSTYPE" = "cygwin" && test ! -z "$MSYSTEM" ) ; then+  DIFF="diff -a -b -U1 -"+else+  DIFF="diff -U1 -"+fi++# prepare to test, w/o MinGW dir tests (no symlinks)++if test "$OSTYPE" != "msys" && ( test "$OSTYPE" != "cygwin" || test -z "$MSYSTEM" ) ; then  rm -rf dir1/ dir2/ @@ -183,6 +191,8 @@ $UG -Rl --filter='sh:head -n1'           Hello dir1 | $DIFF out/dir--filter.out  rm -rf dir1 dir2 +fi+ for OPS in '' '-F' '-G' ; do   printf .   $UG $OPS -iwco -f lorem lorem.utf8.txt \