Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork32.4k
gh-104922: MakePY_SSIZE_T_CLEAN
not mandatory#104923
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Uh oh!
There was an error while loading.Please reload this page.
Conversation
f1b028c
tof1141a1
Compare#ifdef PY_SSIZE_T_CLEAN | ||
# define _PyObject_CallMethodId _PyObject_CallMethodId_SizeT | ||
#endif | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
These are not a part of stable ABI._PyObject_CallMethodId_SizeT
is removed and_PyObject_CallMethodId
is ssize_t version.
PyAPI_FUNC(PyObject **) _Py_VaBuildStack_SizeT( | ||
PyObject **small_stack, | ||
Py_ssize_t small_stack_len, | ||
const char *format, | ||
va_list va, | ||
Py_ssize_t *p_nargs); | ||
#endif |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Both of_Py_VaBuildStack
and_Py_VaBuildStack_SizeT
are remained, without macro alias.
@@ -211,7 +211,7 @@ sys_audit_tstate(PyThreadState *ts, const char *event, | |||
/* Initialize event args now */ | |||
if (argFormat && argFormat[0]) { | |||
eventArgs =_Py_VaBuildValue_SizeT(argFormat, vargs); | |||
eventArgs =Py_VaBuildValue(argFormat, vargs); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
sysmodule.c
doesn't define PY_SSIZE_T_CLEAN, butPy_VaBuildValue
is now alias to_Py_VaBuildValue_SizeT
.
Uh oh!
There was an error while loading.Please reload this page.
This PR keeps ABIs like
PyArg_Parse()
raise SystemError.At API level, PyArg_Parse is always replaced to
_PyArg_Parse_Size_T
by C macro regardlessPY_SSIZE_T_CLEAN
.📚 Documentation preview 📚:https://cpython-previews--104923.org.readthedocs.build/