> > The error message from the main process is a consequence of the error > > in the child process. The comment says that apparently, non-blocking sockets > > don't work. The code in gnulib/lib/nonblocking.c uses Windows system calls > > with pipes. > > > > Maybe the cause is that in your CI you use > > > > defaults: > > run: > > shell: C:\cygwin\bin\bash.exe --login -e {0} > > > > where my CI has > > > > defaults: > > run: > > shell: C:\cygwin\bin\bash.exe -eo pipefail -o igncr '{0}' > > > > ? > > I first tried starting bash with "-o errexit" [1], but > test-nonblocking-socket.sh still failed [2]. > > Then I tried with "-o errexit -o pipefail" [3], and > test-nonblocking-socket.sh failed again [4]. > > The error is always the same:
Another difference between my [1] and your [2] environment is that I may use a stricter value for the PATH environment variable. Since GitHub runners are full of useful tools that can still interfere with the build process, I force the PATH to be as basic as possible: it only contains these folders: /installed /usr/i686-w64-mingw32/bin /usr/i686-w64-mingw32/sys-root/mingw/bin /usr/sbin /usr/bin /sbin /bin /cygdrive/c/Windows/System32 /cygdrive/c/Windows Can this affect "make check"? -- Michele [1] https://github.com/mlocati/gnulib-cygwin-tests [2] https://github.com/gnu-gnulib/ci-testdir-check