summaryrefslogtreecommitdiffstats
path: root/Modules/socketmodule.c
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@python.org>2024-06-27 09:58:44 (GMT)
committerGitHub <noreply@github.com>2024-06-27 09:58:44 (GMT)
commit12af8ec864225248c3d2916cb142a5e7ee36cbe2 (patch)
treed29a5c87668a1cd1e67ceee0b9074ce7f2c74392 /Modules/socketmodule.c
parent4999e0bda091826fcdf303dd439364e1d303a5ce (diff)
downloadcpython-12af8ec864225248c3d2916cb142a5e7ee36cbe2.zip
cpython-12af8ec864225248c3d2916cb142a5e7ee36cbe2.tar.gz
cpython-12af8ec864225248c3d2916cb142a5e7ee36cbe2.tar.bz2
gh-121040: Use __attribute__((fallthrough)) (#121044)
Fix warnings when using -Wimplicit-fallthrough compiler flag. Annotate explicitly "fall through" switch cases with a new _Py_FALLTHROUGH macro which uses __attribute__((fallthrough)) if available. Replace "fall through" comments with _Py_FALLTHROUGH. Add _Py__has_attribute() macro. No longer define __has_attribute() macro if it's not defined. Move also _Py__has_builtin() at the top of pyport.h. Co-Authored-By: Nikita Sobolev <mail@sobolevn.me>
Diffstat (limited to 'Modules/socketmodule.c')
-rw-r--r--Modules/socketmodule.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/Modules/socketmodule.c b/Modules/socketmodule.c
index 0626d79..6d16147 100644
--- a/Modules/socketmodule.c
+++ b/Modules/socketmodule.c
@@ -1887,12 +1887,14 @@ getsockaddrarg(PySocketSockObject *s, PyObject *args,
#ifdef AF_RDS
case AF_RDS:
- /* RDS sockets use sockaddr_in: fall-through */
+ /* RDS sockets use sockaddr_in */
+ _Py_FALLTHROUGH;
#endif /* AF_RDS */
#ifdef AF_DIVERT
case AF_DIVERT:
- /* FreeBSD divert(4) sockets use sockaddr_in: fall-through */
+ /* FreeBSD divert(4) sockets use sockaddr_in */
+ _Py_FALLTHROUGH;
#endif /* AF_DIVERT */
case AF_INET:
@@ -2214,7 +2216,7 @@ getsockaddrarg(PySocketSockObject *s, PyObject *args,
switch (s->sock_proto) {
#ifdef CAN_RAW
case CAN_RAW:
- /* fall-through */
+ _Py_FALLTHROUGH;
#endif
#ifdef CAN_BCM
case CAN_BCM:
@@ -2590,7 +2592,8 @@ getsockaddrlen(PySocketSockObject *s, socklen_t *len_ret)
#ifdef AF_RDS
case AF_RDS:
- /* RDS sockets use sockaddr_in: fall-through */
+ /* RDS sockets use sockaddr_in */
+ _Py_FALLTHROUGH;
#endif /* AF_RDS */
case AF_INET: