From aebaa1d640843cf462923c84a8f744bc60896c4d Mon Sep 17 00:00:00 2001 From: Carlo Bramini Date: Sat, 28 Mar 2026 12:55:16 +0100 Subject: [PATCH] CYGWIN: fix "defined but not used" warnings on mimalloc MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Compiling under CYGWIN prints these warning messages: In file included from ../cpython/Objects/mimalloc/prim/prim.c:22, from ../cpython/Objects/mimalloc/static.c:37, from ../cpython/Objects/obmalloc.c:23: ../cpython/Objects/mimalloc/prim/unix/prim.c:91:12: warning: ‘mi_prim_access’ defined but not used [-Wunused-function] 91 | static int mi_prim_access(const char *fpath, int mode) { | ^~~~~~~~~~~~~~ ../cpython/Objects/mimalloc/prim/unix/prim.c:88:12: warning: ‘mi_prim_close’ defined but not used [-Wunused-function] 88 | static int mi_prim_close(int fd) { | ^~~~~~~~~~~~~ ../cpython/Objects/mimalloc/prim/unix/prim.c:85:16: warning: ‘mi_prim_read’ defined but not used [-Wunused-function] 85 | static ssize_t mi_prim_read(int fd, void* buf, size_t bufsize) { | ^~~~~~~~~~~~ ../cpython/Objects/mimalloc/prim/unix/prim.c:82:12: warning: ‘mi_prim_open’ defined but not used [-Wunused-function] 82 | static int mi_prim_open(const char* fpath, int open_flags) { | ^~~~~~~~~~~~ Looking into the code of Objects/mimalloc/prim/unix/prim.c, there is already a conditional block to avoid the generation of such warnings. Unfortunately, CYGWIN is missing in this list. However, adding it is very easy and the change is self-explanatory, as you can see. --- Objects/mimalloc/prim/unix/prim.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Objects/mimalloc/prim/unix/prim.c b/Objects/mimalloc/prim/unix/prim.c index 1598ebabf0a4da..34382eee54e599 100644 --- a/Objects/mimalloc/prim/unix/prim.c +++ b/Objects/mimalloc/prim/unix/prim.c @@ -77,7 +77,7 @@ static int mi_prim_access(const char *fpath, int mode) { return syscall(SYS_access,fpath,mode); } -#elif !defined(__APPLE__) && !defined(_AIX) && !defined(__OpenBSD__) && !defined(__FreeBSD__) && !defined(__sun) && !defined(__NetBSD__) // avoid unused warnings +#elif !defined(__APPLE__) && !defined(_AIX) && !defined(__CYGWIN__) && !defined(__OpenBSD__) && !defined(__FreeBSD__) && !defined(__sun) && !defined(__NetBSD__) // avoid unused warnings static int mi_prim_open(const char* fpath, int open_flags) { return open(fpath,open_flags);