[PATCH 1/2] Cygwin: add compile warning if ENOSHARE or ECASECLASH is used

Christian Franke Christian.Franke@t-online.de
Tue Feb 27 12:16:40 GMT 2024


A suggestion for a first (possibly polite) step to get rid of ENOSHARE 
or ECASECLASH. Would also work with clang.

The internally used ENMFILE is not included yet. In theory, it may be 
returned to outside world as it still appears in errmap[].

-- 
Regards,
Christian

-------------- next part --------------
From f3ad1912a9c7fa4cd28ade5dc7c95134be759615 Mon Sep 17 00:00:00 2001
From: Christian Franke <christian.franke@t-online.de>
Date: Tue, 27 Feb 2024 13:03:08 +0100
Subject: [PATCH 1/2] Cygwin: add compile warning if ENOSHARE or ECASECLASH is
 used

These errno values are no longer used by Cygwin.

Signed-off-by: Christian Franke <christian.franke@t-online.de>
---
 newlib/libc/include/sys/errno.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/newlib/libc/include/sys/errno.h b/newlib/libc/include/sys/errno.h
index f1509712e..7199db0d2 100644
--- a/newlib/libc/include/sys/errno.h
+++ b/newlib/libc/include/sys/errno.h
@@ -176,9 +176,9 @@ extern __IMPORT char *program_invocation_short_name;
 #ifdef __LINUX_ERRNO_EXTENSIONS__
 #define ENOMEDIUM 135   /* No medium (in tape drive) */
 #endif
-#ifdef __CYGWIN__
-#define ENOSHARE 136    /* No such host or network path */
-#define ECASECLASH 137  /* Filename exists with different case */
+#if defined(__CYGWIN__) && !defined(__INSIDE_CYGWIN__)
+#define ENOSHARE (_Pragma("GCC warning \"'ENOSHARE' is no longer used by Cygwin\"") 136)
+#define ECASECLASH (_Pragma("GCC warning \"'ECASECLASH' is no longer used by Cygwin\"") 137)
 #endif
 #define EILSEQ 138		/* Illegal byte sequence */
 #define EOVERFLOW 139	/* Value too large for defined data type */
-- 
2.43.0



More information about the Cygwin-patches mailing list