Issue #23338: Fixed formatting ctypes error messages on Cygwin.
Patch by Makoto Kato.
diff --git a/Misc/ACKS b/Misc/ACKS
index 3637ab4..6e24cc9 100644
--- a/Misc/ACKS
+++ b/Misc/ACKS
@@ -703,6 +703,7 @@
Per Øyvind Karlsen
Anton Kasyanov
Lou Kates
+Makoto Kato
Hiroaki Kawai
Brian Kearns
Sebastien Keim
diff --git a/Misc/NEWS b/Misc/NEWS
index 8e6ad31..a15600b 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -19,6 +19,9 @@
Library
-------
+- Issue #23338: Fixed formatting ctypes error messages on Cygwin.
+ Patch by Makoto Kato.
+
- Issue #15582: inspect.getdoc() now follows inheritance chains.
- Issue #2175: SAX parsers now support a character stream of InputSource object.
diff --git a/Modules/_ctypes/_ctypes.c b/Modules/_ctypes/_ctypes.c
index 6531aec..70fb08c 100644
--- a/Modules/_ctypes/_ctypes.c
+++ b/Modules/_ctypes/_ctypes.c
@@ -593,7 +593,7 @@
#ifdef __CYGWIN__
/* dlerror() isn't very helpful on cygwin */
PyErr_Format(PyExc_ValueError,
- "symbol '%s' not found (%s) ",
+ "symbol '%s' not found",
name);
#else
PyErr_SetString(PyExc_ValueError, ctypes_dlerror());
@@ -3280,7 +3280,7 @@
#ifdef __CYGWIN__
/* dlerror() isn't very helpful on cygwin */
PyErr_Format(PyExc_AttributeError,
- "function '%s' not found (%s) ",
+ "function '%s' not found",
name);
#else
PyErr_SetString(PyExc_AttributeError, ctypes_dlerror());