Hello Cygwin developers, This email is mainly for issue with exist code for a program. It is inspired from openssl issue #10107 - "test_ssl_old freezes on cygwin". Actually after one or another work-around "unfreeze" test and this shows that one of subtests fail. This failure is main topic of this email. More about failed test "testing connection with weak DH, expecting failure". So failure is expected and program code try to exit with 1. Unfortunately OS returns zero exit code. Since version 1.1 OpenSSL uses "at exit handler" to clean-up allocated resources. Removing registered handler restores program exit code. So something in handler triggers issue. After additional tests (research) I was able to isolate issues to simple test case. Please find attached "test-dlclose.c" and "Makefile". First test is as is: $ make cc -g -Wall -Wextra test-dlclose.c -o test-dlclose ./test-dlclose exit with code 33 make: [Makefile:4: all] Error 33 (ignored) For next test change test-dlclose.c to define DLCLOSE_ATEXIT ( s/#if 0/#if 1/ ): $ make cc -g -Wall -Wextra test-dlclose.c -o test-dlclose ./test-dlclose exit with code 33 As is visible make does not report error, i.e. program exit code is zero. Is there a way to bypass issue? For protocol: $ uname -srvm -> CYGWIN_NT-10.0 3.0.7(0.338/5/3) 2019-04-30 18:08 x86_64 Regards, Roumen Petrov