avoid name clash with posix_close (closes #20594)
diff --git a/Misc/NEWS b/Misc/NEWS
index 38d8630..d2ef384 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -44,6 +44,8 @@
Library
-------
+- Issue #20594: Avoid name clash with the libc function posix_close.
+
- Issue #19856: shutil.move() failed to move a directory to other directory
on Windows if source name ends with os.altsep.
diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c
index 8352dd3..c1b300a 100644
--- a/Modules/posixmodule.c
+++ b/Modules/posixmodule.c
@@ -6581,8 +6581,12 @@
"close(fd)\n\n\
Close a file descriptor (for low level IO).");
+/*
+The underscore at end of function name avoids a name clash with the libc
+function posix_close.
+*/
static PyObject *
-posix_close(PyObject *self, PyObject *args)
+posix_close_(PyObject *self, PyObject *args)
{
int fd, res;
if (!PyArg_ParseTuple(args, "i:close", &fd))
@@ -8960,7 +8964,7 @@
{"tcsetpgrp", posix_tcsetpgrp, METH_VARARGS, posix_tcsetpgrp__doc__},
#endif /* HAVE_TCSETPGRP */
{"open", posix_open, METH_VARARGS, posix_open__doc__},
- {"close", posix_close, METH_VARARGS, posix_close__doc__},
+ {"close", posix_close_, METH_VARARGS, posix_close__doc__},
{"closerange", posix_closerange, METH_VARARGS, posix_closerange__doc__},
{"dup", posix_dup, METH_VARARGS, posix_dup__doc__},
{"dup2", posix_dup2, METH_VARARGS, posix_dup2__doc__},