[newlib-cygwin/main] Cygwin: asm/socket.h: drop outdated casts
Corinna Vinschen
corinna@sourceware.org
Wed Aug 7 15:12:10 GMT 2024
https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=50cf10dfa485682f08d2975d69cee0a3b63c81b9
commit 50cf10dfa485682f08d2975d69cee0a3b63c81b9
Author: Corinna Vinschen <corinna@vinschen.de>
AuthorDate: Wed Aug 7 17:09:44 2024 +0200
Commit: Corinna Vinschen <corinna@vinschen.de>
CommitDate: Wed Aug 7 17:10:03 2024 +0200
Cygwin: asm/socket.h: drop outdated casts
The _IOR anbd _IOW macros cast the sizeof of their third arg
uselessly to long. The _IO definitions have been taken from BSD
in 1995 and never changed again. The fact that the sizeof() gets
cast to long is probably a remnant from the past when the stuff
was supposed to be used on 16 bit machines, but the value was
supposed to be 32 bit.
Given that the values are not supposed to be ever bigger than 32 bit,
we drop the (long) cast. Compare with current FreeBSD, which does
not cast at all.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Diff:
---
winsup/cygwin/include/asm/socket.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/winsup/cygwin/include/asm/socket.h b/winsup/cygwin/include/asm/socket.h
index 9aeb889b87bd..276df3a0b5fd 100644
--- a/winsup/cygwin/include/asm/socket.h
+++ b/winsup/cygwin/include/asm/socket.h
@@ -17,8 +17,8 @@ details. */
#define IOC_IN 0x80000000 /* copy in parameters */
#define _IO(x,y) (IOC_VOID|(x<<8)|y)
-#define _IOR(x,y,t) (IOC_OUT|(((long)sizeof(t)&IOCPARM_MASK)<<16)|(x<<8)|y)
-#define _IOW(x,y,t) (IOC_IN|(((long)sizeof(t)&IOCPARM_MASK)<<16)|(x<<8)|y)
+#define _IOR(x,y,t) (IOC_OUT|((sizeof(t)&IOCPARM_MASK)<<16)|(x<<8)|y)
+#define _IOW(x,y,t) (IOC_IN|((sizeof(t)&IOCPARM_MASK)<<16)|(x<<8)|y)
#define SIOCATMARK _IOR('s', 7, long) /* at oob mark? */
#define FIONREAD _IOR('f', 127, long) /* get # bytes to read */
More information about the Cygwin-cvs
mailing list