summaryrefslogtreecommitdiffstats
path: root/Modules/clinic
diff options
context:
space:
mode:
authorNice Zombies <nineteendo19d0@gmail.com>2024-05-24 18:04:17 (GMT)
committerGitHub <noreply@github.com>2024-05-24 18:04:17 (GMT)
commit96b392df303b2cfaea823afcb462c0b455704ce8 (patch)
tree70a9efffceeb22ccf24dd2afb1c3edeada732c96 /Modules/clinic
parentf0ed1863bd7a0b9d021fb59e156663a7ec553f0e (diff)
downloadcpython-96b392df303b2cfaea823afcb462c0b455704ce8.zip
cpython-96b392df303b2cfaea823afcb462c0b455704ce8.tar.gz
cpython-96b392df303b2cfaea823afcb462c0b455704ce8.tar.bz2
gh-118263: Add additional arguments to path_t (Argument Clinic type) in posixmodule (GH-118355)
Diffstat (limited to 'Modules/clinic')
-rw-r--r--Modules/clinic/posixmodule.c.h227
1 files changed, 135 insertions, 92 deletions
diff --git a/Modules/clinic/posixmodule.c.h b/Modules/clinic/posixmodule.c.h
index 5ec5635..c7a447b 100644
--- a/Modules/clinic/posixmodule.c.h
+++ b/Modules/clinic/posixmodule.c.h
@@ -72,7 +72,7 @@ os_stat(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *kwn
#undef KWTUPLE
PyObject *argsbuf[3];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 1;
- path_t path = PATH_T_INITIALIZE("stat", "path", 0, 1);
+ path_t path = PATH_T_INITIALIZE_P("stat", "path", 0, 0, 0, 1);
int dir_fd = DEFAULT_DIR_FD;
int follow_symlinks = 1;
@@ -154,7 +154,7 @@ os_lstat(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *kw
#undef KWTUPLE
PyObject *argsbuf[2];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 1;
- path_t path = PATH_T_INITIALIZE("lstat", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("lstat", "path", 0, 0, 0, 0);
int dir_fd = DEFAULT_DIR_FD;
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 1, 1, 0, argsbuf);
@@ -250,7 +250,7 @@ os_access(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *k
#undef KWTUPLE
PyObject *argsbuf[5];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 2;
- path_t path = PATH_T_INITIALIZE("access", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("access", "path", 0, 0, 0, 0);
int mode;
int dir_fd = DEFAULT_DIR_FD;
int effective_ids = 0;
@@ -409,7 +409,7 @@ os_chdir(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *kw
};
#undef KWTUPLE
PyObject *argsbuf[1];
- path_t path = PATH_T_INITIALIZE("chdir", "path", 0, PATH_HAVE_FCHDIR);
+ path_t path = PATH_T_INITIALIZE_P("chdir", "path", 0, 0, 0, PATH_HAVE_FCHDIR);
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 1, 1, 0, argsbuf);
if (!args) {
@@ -560,7 +560,7 @@ os_chmod(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *kw
#undef KWTUPLE
PyObject *argsbuf[4];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 2;
- path_t path = PATH_T_INITIALIZE("chmod", "path", 0, PATH_HAVE_FCHMOD);
+ path_t path = PATH_T_INITIALIZE_P("chmod", "path", 0, 0, 0, PATH_HAVE_FCHMOD);
int mode;
int dir_fd = DEFAULT_DIR_FD;
int follow_symlinks = CHMOD_DEFAULT_FOLLOW_SYMLINKS;
@@ -725,7 +725,7 @@ os_lchmod(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *k
};
#undef KWTUPLE
PyObject *argsbuf[2];
- path_t path = PATH_T_INITIALIZE("lchmod", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("lchmod", "path", 0, 0, 0, 0);
int mode;
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 2, 2, 0, argsbuf);
@@ -802,7 +802,7 @@ os_chflags(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *
#undef KWTUPLE
PyObject *argsbuf[3];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 2;
- path_t path = PATH_T_INITIALIZE("chflags", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("chflags", "path", 0, 0, 0, 0);
unsigned long flags;
int follow_symlinks = 1;
@@ -884,7 +884,7 @@ os_lchflags(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject
};
#undef KWTUPLE
PyObject *argsbuf[2];
- path_t path = PATH_T_INITIALIZE("lchflags", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("lchflags", "path", 0, 0, 0, 0);
unsigned long flags;
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 2, 2, 0, argsbuf);
@@ -954,7 +954,7 @@ os_chroot(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *k
};
#undef KWTUPLE
PyObject *argsbuf[1];
- path_t path = PATH_T_INITIALIZE("chroot", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("chroot", "path", 0, 0, 0, 0);
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 1, 1, 0, argsbuf);
if (!args) {
@@ -1190,7 +1190,7 @@ os_chown(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *kw
#undef KWTUPLE
PyObject *argsbuf[5];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 3;
- path_t path = PATH_T_INITIALIZE("chown", "path", 0, PATH_HAVE_FCHOWN);
+ path_t path = PATH_T_INITIALIZE_P("chown", "path", 0, 0, 0, PATH_HAVE_FCHOWN);
uid_t uid;
gid_t gid;
int dir_fd = DEFAULT_DIR_FD;
@@ -1355,7 +1355,7 @@ os_lchown(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *k
};
#undef KWTUPLE
PyObject *argsbuf[3];
- path_t path = PATH_T_INITIALIZE("lchown", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("lchown", "path", 0, 0, 0, 0);
uid_t uid;
gid_t gid;
@@ -1476,8 +1476,8 @@ os_link(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *kwn
#undef KWTUPLE
PyObject *argsbuf[5];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 2;
- path_t src = PATH_T_INITIALIZE("link", "src", 0, 0);
- path_t dst = PATH_T_INITIALIZE("link", "dst", 0, 0);
+ path_t src = PATH_T_INITIALIZE_P("link", "src", 0, 0, 0, 0);
+ path_t dst = PATH_T_INITIALIZE_P("link", "dst", 0, 0, 0, 0);
int src_dir_fd = DEFAULT_DIR_FD;
int dst_dir_fd = DEFAULT_DIR_FD;
int follow_symlinks = 1;
@@ -1583,7 +1583,7 @@ os_listdir(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *
#undef KWTUPLE
PyObject *argsbuf[1];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 0;
- path_t path = PATH_T_INITIALIZE("listdir", "path", 1, PATH_HAVE_FDOPENDIR);
+ path_t path = PATH_T_INITIALIZE_P("listdir", "path", 1, 0, 0, PATH_HAVE_FDOPENDIR);
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 0, 1, 0, argsbuf);
if (!args) {
@@ -1699,7 +1699,7 @@ os_listmounts(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObjec
};
#undef KWTUPLE
PyObject *argsbuf[1];
- path_t volume = PATH_T_INITIALIZE("listmounts", "volume", 0, 0);
+ path_t volume = PATH_T_INITIALIZE_P("listmounts", "volume", 0, 0, 0, 0);
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 1, 1, 0, argsbuf);
if (!args) {
@@ -1763,7 +1763,7 @@ os__path_isdevdrive(PyObject *module, PyObject *const *args, Py_ssize_t nargs, P
};
#undef KWTUPLE
PyObject *argsbuf[1];
- path_t path = PATH_T_INITIALIZE("_path_isdevdrive", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("_path_isdevdrive", "path", 0, 0, 0, 0);
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 1, 1, 0, argsbuf);
if (!args) {
@@ -1800,7 +1800,7 @@ static PyObject *
os__getfullpathname(PyObject *module, PyObject *arg)
{
PyObject *return_value = NULL;
- path_t path = PATH_T_INITIALIZE("_getfullpathname", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("_getfullpathname", "path", 0, 0, 0, 0);
if (!path_converter(arg, &path)) {
goto exit;
@@ -1834,7 +1834,7 @@ static PyObject *
os__getfinalpathname(PyObject *module, PyObject *arg)
{
PyObject *return_value = NULL;
- path_t path = PATH_T_INITIALIZE("_getfinalpathname", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("_getfinalpathname", "path", 0, 0, 0, 0);
if (!path_converter(arg, &path)) {
goto exit;
@@ -1868,7 +1868,7 @@ static PyObject *
os__findfirstfile(PyObject *module, PyObject *arg)
{
PyObject *return_value = NULL;
- path_t path = PATH_T_INITIALIZE("_findfirstfile", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("_findfirstfile", "path", 0, 0, 0, 0);
if (!path_converter(arg, &path)) {
goto exit;
@@ -1928,7 +1928,7 @@ os__getvolumepathname(PyObject *module, PyObject *const *args, Py_ssize_t nargs,
};
#undef KWTUPLE
PyObject *argsbuf[1];
- path_t path = PATH_T_INITIALIZE("_getvolumepathname", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("_getvolumepathname", "path", 0, 0, 0, 0);
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 1, 1, 0, argsbuf);
if (!args) {
@@ -1992,7 +1992,7 @@ os__path_splitroot(PyObject *module, PyObject *const *args, Py_ssize_t nargs, Py
};
#undef KWTUPLE
PyObject *argsbuf[1];
- path_t path = PATH_T_INITIALIZE("_path_splitroot", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("_path_splitroot", "path", 0, 0, 0, 0);
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 1, 1, 0, argsbuf);
if (!args) {
@@ -2024,21 +2024,28 @@ PyDoc_STRVAR(os__path_exists__doc__,
{"_path_exists", (PyCFunction)os__path_exists, METH_O, os__path_exists__doc__},
static int
-os__path_exists_impl(PyObject *module, PyObject *path);
+os__path_exists_impl(PyObject *module, path_t *path);
static PyObject *
-os__path_exists(PyObject *module, PyObject *path)
+os__path_exists(PyObject *module, PyObject *arg)
{
PyObject *return_value = NULL;
+ path_t path = PATH_T_INITIALIZE_P("_path_exists", "path", 0, 0, 1, 1);
int _return_value;
- _return_value = os__path_exists_impl(module, path);
+ if (!path_converter(arg, &path)) {
+ goto exit;
+ }
+ _return_value = os__path_exists_impl(module, &path);
if ((_return_value == -1) && PyErr_Occurred()) {
goto exit;
}
return_value = PyBool_FromLong((long)_return_value);
exit:
+ /* Cleanup for path */
+ path_cleanup(&path);
+
return return_value;
}
@@ -2056,21 +2063,28 @@ PyDoc_STRVAR(os__path_lexists__doc__,
{"_path_lexists", (PyCFunction)os__path_lexists, METH_O, os__path_lexists__doc__},
static int
-os__path_lexists_impl(PyObject *module, PyObject *path);
+os__path_lexists_impl(PyObject *module, path_t *path);
static PyObject *
-os__path_lexists(PyObject *module, PyObject *path)
+os__path_lexists(PyObject *module, PyObject *arg)
{
PyObject *return_value = NULL;
+ path_t path = PATH_T_INITIALIZE_P("_path_lexists", "path", 0, 0, 1, 1);
int _return_value;
- _return_value = os__path_lexists_impl(module, path);
+ if (!path_converter(arg, &path)) {
+ goto exit;
+ }
+ _return_value = os__path_lexists_impl(module, &path);
if ((_return_value == -1) && PyErr_Occurred()) {
goto exit;
}
return_value = PyBool_FromLong((long)_return_value);
exit:
+ /* Cleanup for path */
+ path_cleanup(&path);
+
return return_value;
}
@@ -2088,7 +2102,7 @@ PyDoc_STRVAR(os__path_isdir__doc__,
{"_path_isdir", _PyCFunction_CAST(os__path_isdir), METH_FASTCALL|METH_KEYWORDS, os__path_isdir__doc__},
static int
-os__path_isdir_impl(PyObject *module, PyObject *path);
+os__path_isdir_impl(PyObject *module, path_t *path);
static PyObject *
os__path_isdir(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames)
@@ -2120,21 +2134,26 @@ os__path_isdir(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObje
};
#undef KWTUPLE
PyObject *argsbuf[1];
- PyObject *path;
+ path_t path = PATH_T_INITIALIZE_P("_path_isdir", "path", 0, 0, 1, 1);
int _return_value;
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 1, 1, 0, argsbuf);
if (!args) {
goto exit;
}
- path = args[0];
- _return_value = os__path_isdir_impl(module, path);
+ if (!path_converter(args[0], &path)) {
+ goto exit;
+ }
+ _return_value = os__path_isdir_impl(module, &path);
if ((_return_value == -1) && PyErr_Occurred()) {
goto exit;
}
return_value = PyBool_FromLong((long)_return_value);
exit:
+ /* Cleanup for path */
+ path_cleanup(&path);
+
return return_value;
}
@@ -2152,7 +2171,7 @@ PyDoc_STRVAR(os__path_isfile__doc__,
{"_path_isfile", _PyCFunction_CAST(os__path_isfile), METH_FASTCALL|METH_KEYWORDS, os__path_isfile__doc__},
static int
-os__path_isfile_impl(PyObject *module, PyObject *path);
+os__path_isfile_impl(PyObject *module, path_t *path);
static PyObject *
os__path_isfile(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames)
@@ -2184,21 +2203,26 @@ os__path_isfile(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObj
};
#undef KWTUPLE
PyObject *argsbuf[1];
- PyObject *path;
+ path_t path = PATH_T_INITIALIZE_P("_path_isfile", "path", 0, 0, 1, 1);
int _return_value;
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 1, 1, 0, argsbuf);
if (!args) {
goto exit;
}
- path = args[0];
- _return_value = os__path_isfile_impl(module, path);
+ if (!path_converter(args[0], &path)) {
+ goto exit;
+ }
+ _return_value = os__path_isfile_impl(module, &path);
if ((_return_value == -1) && PyErr_Occurred()) {
goto exit;
}
return_value = PyBool_FromLong((long)_return_value);
exit:
+ /* Cleanup for path */
+ path_cleanup(&path);
+
return return_value;
}
@@ -2216,7 +2240,7 @@ PyDoc_STRVAR(os__path_islink__doc__,
{"_path_islink", _PyCFunction_CAST(os__path_islink), METH_FASTCALL|METH_KEYWORDS, os__path_islink__doc__},
static int
-os__path_islink_impl(PyObject *module, PyObject *path);
+os__path_islink_impl(PyObject *module, path_t *path);
static PyObject *
os__path_islink(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames)
@@ -2248,21 +2272,26 @@ os__path_islink(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObj
};
#undef KWTUPLE
PyObject *argsbuf[1];
- PyObject *path;
+ path_t path = PATH_T_INITIALIZE_P("_path_islink", "path", 0, 0, 1, 1);
int _return_value;
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 1, 1, 0, argsbuf);
if (!args) {
goto exit;
}
- path = args[0];
- _return_value = os__path_islink_impl(module, path);
+ if (!path_converter(args[0], &path)) {
+ goto exit;
+ }
+ _return_value = os__path_islink_impl(module, &path);
if ((_return_value == -1) && PyErr_Occurred()) {
goto exit;
}
return_value = PyBool_FromLong((long)_return_value);
exit:
+ /* Cleanup for path */
+ path_cleanup(&path);
+
return return_value;
}
@@ -2280,7 +2309,7 @@ PyDoc_STRVAR(os__path_isjunction__doc__,
{"_path_isjunction", _PyCFunction_CAST(os__path_isjunction), METH_FASTCALL|METH_KEYWORDS, os__path_isjunction__doc__},
static int
-os__path_isjunction_impl(PyObject *module, PyObject *path);
+os__path_isjunction_impl(PyObject *module, path_t *path);
static PyObject *
os__path_isjunction(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames)
@@ -2312,21 +2341,26 @@ os__path_isjunction(PyObject *module, PyObject *const *args, Py_ssize_t nargs, P
};
#undef KWTUPLE
PyObject *argsbuf[1];
- PyObject *path;
+ path_t path = PATH_T_INITIALIZE_P("_path_isjunction", "path", 0, 0, 1, 1);
int _return_value;
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 1, 1, 0, argsbuf);
if (!args) {
goto exit;
}
- path = args[0];
- _return_value = os__path_isjunction_impl(module, path);
+ if (!path_converter(args[0], &path)) {
+ goto exit;
+ }
+ _return_value = os__path_isjunction_impl(module, &path);
if ((_return_value == -1) && PyErr_Occurred()) {
goto exit;
}
return_value = PyBool_FromLong((long)_return_value);
exit:
+ /* Cleanup for path */
+ path_cleanup(&path);
+
return return_value;
}
@@ -2335,13 +2369,16 @@ exit:
PyDoc_STRVAR(os__path_splitroot_ex__doc__,
"_path_splitroot_ex($module, /, path)\n"
"--\n"
-"\n");
+"\n"
+"Split a pathname into drive, root and tail.\n"
+"\n"
+"The tail contains anything after the root.");
#define OS__PATH_SPLITROOT_EX_METHODDEF \
{"_path_splitroot_ex", _PyCFunction_CAST(os__path_splitroot_ex), METH_FASTCALL|METH_KEYWORDS, os__path_splitroot_ex__doc__},
static PyObject *
-os__path_splitroot_ex_impl(PyObject *module, PyObject *path);
+os__path_splitroot_ex_impl(PyObject *module, path_t *path);
static PyObject *
os__path_splitroot_ex(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames)
@@ -2373,20 +2410,21 @@ os__path_splitroot_ex(PyObject *module, PyObject *const *args, Py_ssize_t nargs,
};
#undef KWTUPLE
PyObject *argsbuf[1];
- PyObject *path;
+ path_t path = PATH_T_INITIALIZE("_path_splitroot_ex", "path", 0, 1, 1, 0, 0);
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 1, 1, 0, argsbuf);
if (!args) {
goto exit;
}
- if (!PyUnicode_Check(args[0])) {
- _PyArg_BadArgument("_path_splitroot_ex", "argument 'path'", "str", args[0]);
+ if (!path_converter(args[0], &path)) {
goto exit;
}
- path = args[0];
- return_value = os__path_splitroot_ex_impl(module, path);
+ return_value = os__path_splitroot_ex_impl(module, &path);
exit:
+ /* Cleanup for path */
+ path_cleanup(&path);
+
return return_value;
}
@@ -2394,13 +2432,13 @@ PyDoc_STRVAR(os__path_normpath__doc__,
"_path_normpath($module, /, path)\n"
"--\n"
"\n"
-"Basic path normalization.");
+"Normalize path, eliminating double slashes, etc.");
#define OS__PATH_NORMPATH_METHODDEF \
{"_path_normpath", _PyCFunction_CAST(os__path_normpath), METH_FASTCALL|METH_KEYWORDS, os__path_normpath__doc__},
static PyObject *
-os__path_normpath_impl(PyObject *module, PyObject *path);
+os__path_normpath_impl(PyObject *module, path_t *path);
static PyObject *
os__path_normpath(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames)
@@ -2432,16 +2470,21 @@ os__path_normpath(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyO
};
#undef KWTUPLE
PyObject *argsbuf[1];
- PyObject *path;
+ path_t path = PATH_T_INITIALIZE("_path_normpath", "path", 0, 1, 1, 0, 0);
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 1, 1, 0, argsbuf);
if (!args) {
goto exit;
}
- path = args[0];
- return_value = os__path_normpath_impl(module, path);
+ if (!path_converter(args[0], &path)) {
+ goto exit;
+ }
+ return_value = os__path_normpath_impl(module, &path);
exit:
+ /* Cleanup for path */
+ path_cleanup(&path);
+
return return_value;
}
@@ -2496,7 +2539,7 @@ os_mkdir(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *kw
#undef KWTUPLE
PyObject *argsbuf[3];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 1;
- path_t path = PATH_T_INITIALIZE("mkdir", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("mkdir", "path", 0, 0, 0, 0);
int mode = 511;
int dir_fd = DEFAULT_DIR_FD;
@@ -2757,8 +2800,8 @@ os_rename(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *k
#undef KWTUPLE
PyObject *argsbuf[4];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 2;
- path_t src = PATH_T_INITIALIZE("rename", "src", 0, 0);
- path_t dst = PATH_T_INITIALIZE("rename", "dst", 0, 0);
+ path_t src = PATH_T_INITIALIZE_P("rename", "src", 0, 0, 0, 0);
+ path_t dst = PATH_T_INITIALIZE_P("rename", "dst", 0, 0, 0, 0);
int src_dir_fd = DEFAULT_DIR_FD;
int dst_dir_fd = DEFAULT_DIR_FD;
@@ -2848,8 +2891,8 @@ os_replace(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *
#undef KWTUPLE
PyObject *argsbuf[4];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 2;
- path_t src = PATH_T_INITIALIZE("replace", "src", 0, 0);
- path_t dst = PATH_T_INITIALIZE("replace", "dst", 0, 0);
+ path_t src = PATH_T_INITIALIZE_P("replace", "src", 0, 0, 0, 0);
+ path_t dst = PATH_T_INITIALIZE_P("replace", "dst", 0, 0, 0, 0);
int src_dir_fd = DEFAULT_DIR_FD;
int dst_dir_fd = DEFAULT_DIR_FD;
@@ -2937,7 +2980,7 @@ os_rmdir(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *kw
#undef KWTUPLE
PyObject *argsbuf[2];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 1;
- path_t path = PATH_T_INITIALIZE("rmdir", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("rmdir", "path", 0, 0, 0, 0);
int dir_fd = DEFAULT_DIR_FD;
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 1, 1, 0, argsbuf);
@@ -3186,7 +3229,7 @@ os_unlink(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *k
#undef KWTUPLE
PyObject *argsbuf[2];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 1;
- path_t path = PATH_T_INITIALIZE("unlink", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("unlink", "path", 0, 0, 0, 0);
int dir_fd = DEFAULT_DIR_FD;
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 1, 1, 0, argsbuf);
@@ -3260,7 +3303,7 @@ os_remove(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *k
#undef KWTUPLE
PyObject *argsbuf[2];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 1;
- path_t path = PATH_T_INITIALIZE("remove", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("remove", "path", 0, 0, 0, 0);
int dir_fd = DEFAULT_DIR_FD;
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 1, 1, 0, argsbuf);
@@ -3378,7 +3421,7 @@ os_utime(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *kw
#undef KWTUPLE
PyObject *argsbuf[5];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 1;
- path_t path = PATH_T_INITIALIZE("utime", "path", 0, PATH_UTIME_HAVE_FD);
+ path_t path = PATH_T_INITIALIZE_P("utime", "path", 0, 0, 0, PATH_UTIME_HAVE_FD);
PyObject *times = Py_None;
PyObject *ns = NULL;
int dir_fd = DEFAULT_DIR_FD;
@@ -3513,7 +3556,7 @@ static PyObject *
os_execv(PyObject *module, PyObject *const *args, Py_ssize_t nargs)
{
PyObject *return_value = NULL;
- path_t path = PATH_T_INITIALIZE("execv", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("execv", "path", 0, 0, 0, 0);
PyObject *argv;
if (!_PyArg_CheckPositional("execv", nargs, 2, 2)) {
@@ -3585,7 +3628,7 @@ os_execve(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *k
};
#undef KWTUPLE
PyObject *argsbuf[3];
- path_t path = PATH_T_INITIALIZE("execve", "path", 0, PATH_HAVE_FEXECVE);
+ path_t path = PATH_T_INITIALIZE_P("execve", "path", 0, 0, 0, PATH_HAVE_FEXECVE);
PyObject *argv;
PyObject *env;
@@ -3681,7 +3724,7 @@ os_posix_spawn(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObje
#undef KWTUPLE
PyObject *argsbuf[10];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 3;
- path_t path = PATH_T_INITIALIZE("posix_spawn", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("posix_spawn", "path", 0, 0, 0, 0);
PyObject *argv;
PyObject *env;
PyObject *file_actions = NULL;
@@ -3831,7 +3874,7 @@ os_posix_spawnp(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObj
#undef KWTUPLE
PyObject *argsbuf[10];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 3;
- path_t path = PATH_T_INITIALIZE("posix_spawnp", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("posix_spawnp", "path", 0, 0, 0, 0);
PyObject *argv;
PyObject *env;
PyObject *file_actions = NULL;
@@ -3935,7 +3978,7 @@ os_spawnv(PyObject *module, PyObject *const *args, Py_ssize_t nargs)
{
PyObject *return_value = NULL;
int mode;
- path_t path = PATH_T_INITIALIZE("spawnv", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("spawnv", "path", 0, 0, 0, 0);
PyObject *argv;
if (!_PyArg_CheckPositional("spawnv", nargs, 3, 3)) {
@@ -3989,7 +4032,7 @@ os_spawnve(PyObject *module, PyObject *const *args, Py_ssize_t nargs)
{
PyObject *return_value = NULL;
int mode;
- path_t path = PATH_T_INITIALIZE("spawnve", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("spawnve", "path", 0, 0, 0, 0);
PyObject *argv;
PyObject *env;
@@ -6165,7 +6208,7 @@ os_readlink(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject
#undef KWTUPLE
PyObject *argsbuf[2];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 1;
- path_t path = PATH_T_INITIALIZE("readlink", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("readlink", "path", 0, 0, 0, 0);
int dir_fd = DEFAULT_DIR_FD;
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 1, 1, 0, argsbuf);
@@ -6249,8 +6292,8 @@ os_symlink(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *
#undef KWTUPLE
PyObject *argsbuf[4];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 2;
- path_t src = PATH_T_INITIALIZE("symlink", "src", 0, 0);
- path_t dst = PATH_T_INITIALIZE("symlink", "dst", 0, 0);
+ path_t src = PATH_T_INITIALIZE_P("symlink", "src", 0, 0, 0, 0);
+ path_t dst = PATH_T_INITIALIZE_P("symlink", "dst", 0, 0, 0, 0);
int target_is_directory = 0;
int dir_fd = DEFAULT_DIR_FD;
@@ -6892,7 +6935,7 @@ os_open(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *kwn
#undef KWTUPLE
PyObject *argsbuf[4];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 2;
- path_t path = PATH_T_INITIALIZE("open", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("open", "path", 0, 0, 0, 0);
int flags;
int mode = 511;
int dir_fd = DEFAULT_DIR_FD;
@@ -8480,7 +8523,7 @@ os_mkfifo(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *k
#undef KWTUPLE
PyObject *argsbuf[3];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 1;
- path_t path = PATH_T_INITIALIZE("mkfifo", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("mkfifo", "path", 0, 0, 0, 0);
int mode = 438;
int dir_fd = DEFAULT_DIR_FD;
@@ -8580,7 +8623,7 @@ os_mknod(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *kw
#undef KWTUPLE
PyObject *argsbuf[4];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 1;
- path_t path = PATH_T_INITIALIZE("mknod", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("mknod", "path", 0, 0, 0, 0);
int mode = 384;
dev_t device = 0;
int dir_fd = DEFAULT_DIR_FD;
@@ -8834,7 +8877,7 @@ os_truncate(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject
};
#undef KWTUPLE
PyObject *argsbuf[2];
- path_t path = PATH_T_INITIALIZE("truncate", "path", 0, PATH_HAVE_FTRUNCATE);
+ path_t path = PATH_T_INITIALIZE_P("truncate", "path", 0, 0, 0, PATH_HAVE_FTRUNCATE);
Py_off_t length;
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 2, 2, 0, argsbuf);
@@ -9733,7 +9776,7 @@ os_statvfs(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *
};
#undef KWTUPLE
PyObject *argsbuf[1];
- path_t path = PATH_T_INITIALIZE("statvfs", "path", 0, PATH_HAVE_FSTATVFS);
+ path_t path = PATH_T_INITIALIZE_P("statvfs", "path", 0, 0, 0, PATH_HAVE_FSTATVFS);
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 1, 1, 0, argsbuf);
if (!args) {
@@ -9797,7 +9840,7 @@ os__getdiskusage(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyOb
};
#undef KWTUPLE
PyObject *argsbuf[1];
- path_t path = PATH_T_INITIALIZE("_getdiskusage", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("_getdiskusage", "path", 0, 0, 0, 0);
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 1, 1, 0, argsbuf);
if (!args) {
@@ -9911,7 +9954,7 @@ os_pathconf(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject
};
#undef KWTUPLE
PyObject *argsbuf[2];
- path_t path = PATH_T_INITIALIZE("pathconf", "path", 0, PATH_HAVE_FPATHCONF);
+ path_t path = PATH_T_INITIALIZE_P("pathconf", "path", 0, 0, 0, PATH_HAVE_FPATHCONF);
int name;
long _return_value;
@@ -10101,10 +10144,10 @@ os_startfile(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject
#undef KWTUPLE
PyObject *argsbuf[5];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 1;
- path_t filepath = PATH_T_INITIALIZE("startfile", "filepath", 0, 0);
+ path_t filepath = PATH_T_INITIALIZE_P("startfile", "filepath", 0, 0, 0, 0);
const wchar_t *operation = NULL;
const wchar_t *arguments = NULL;
- path_t cwd = PATH_T_INITIALIZE("startfile", "cwd", 1, 0);
+ path_t cwd = PATH_T_INITIALIZE_P("startfile", "cwd", 1, 0, 0, 0);
int show_cmd = 1;
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 1, 5, 0, argsbuf);
@@ -10439,8 +10482,8 @@ os_getxattr(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject
#undef KWTUPLE
PyObject *argsbuf[3];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 2;
- path_t path = PATH_T_INITIALIZE("getxattr", "path", 0, 1);
- path_t attribute = PATH_T_INITIALIZE("getxattr", "attribute", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("getxattr", "path", 0, 0, 0, 1);
+ path_t attribute = PATH_T_INITIALIZE_P("getxattr", "attribute", 0, 0, 0, 0);
int follow_symlinks = 1;
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 2, 2, 0, argsbuf);
@@ -10526,8 +10569,8 @@ os_setxattr(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject
#undef KWTUPLE
PyObject *argsbuf[5];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 3;
- path_t path = PATH_T_INITIALIZE("setxattr", "path", 0, 1);
- path_t attribute = PATH_T_INITIALIZE("setxattr", "attribute", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("setxattr", "path", 0, 0, 0, 1);
+ path_t attribute = PATH_T_INITIALIZE_P("setxattr", "attribute", 0, 0, 0, 0);
Py_buffer value = {NULL, NULL};
int flags = 0;
int follow_symlinks = 1;
@@ -10634,8 +10677,8 @@ os_removexattr(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObje
#undef KWTUPLE
PyObject *argsbuf[3];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 2;
- path_t path = PATH_T_INITIALIZE("removexattr", "path", 0, 1);
- path_t attribute = PATH_T_INITIALIZE("removexattr", "attribute", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("removexattr", "path", 0, 0, 0, 1);
+ path_t attribute = PATH_T_INITIALIZE_P("removexattr", "attribute", 0, 0, 0, 0);
int follow_symlinks = 1;
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 2, 2, 0, argsbuf);
@@ -10720,7 +10763,7 @@ os_listxattr(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject
#undef KWTUPLE
PyObject *argsbuf[2];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 0;
- path_t path = PATH_T_INITIALIZE("listxattr", "path", 1, 1);
+ path_t path = PATH_T_INITIALIZE_P("listxattr", "path", 1, 0, 0, 1);
int follow_symlinks = 1;
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 0, 1, 0, argsbuf);
@@ -11697,7 +11740,7 @@ os_scandir(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *
#undef KWTUPLE
PyObject *argsbuf[1];
Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 0;
- path_t path = PATH_T_INITIALIZE("scandir", "path", 1, PATH_HAVE_FDOPENDIR);
+ path_t path = PATH_T_INITIALIZE_P("scandir", "path", 1, 0, 0, PATH_HAVE_FDOPENDIR);
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 0, 1, 0, argsbuf);
if (!args) {
@@ -11909,7 +11952,7 @@ os__add_dll_directory(PyObject *module, PyObject *const *args, Py_ssize_t nargs,
};
#undef KWTUPLE
PyObject *argsbuf[1];
- path_t path = PATH_T_INITIALIZE("_add_dll_directory", "path", 0, 0);
+ path_t path = PATH_T_INITIALIZE_P("_add_dll_directory", "path", 0, 0, 0, 0);
args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 1, 1, 0, argsbuf);
if (!args) {
@@ -12752,4 +12795,4 @@ os__supports_virtual_terminal(PyObject *module, PyObject *Py_UNUSED(ignored))
#ifndef OS__SUPPORTS_VIRTUAL_TERMINAL_METHODDEF
#define OS__SUPPORTS_VIRTUAL_TERMINAL_METHODDEF
#endif /* !defined(OS__SUPPORTS_VIRTUAL_TERMINAL_METHODDEF) */
-/*[clinic end generated code: output=af5074c4ce4b19f1 input=a9049054013a1b77]*/
+/*[clinic end generated code: output=300bd1c54dc43765 input=a9049054013a1b77]*/