Skip to content
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 our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add vector call functions to the limited API #98586

Open
wjakob opened this issue Oct 24, 2022 · 1 comment · May be fixed by #98587
Open

Add vector call functions to the limited API #98586

wjakob opened this issue Oct 24, 2022 · 1 comment · May be fixed by #98587
Labels
expert-C-API type-feature A feature request or enhancement

Comments

@wjakob
Copy link
Contributor

wjakob commented Oct 24, 2022

Feature or enhancement

Starting in Python 3.12, it is possible to receive vector calls in the limited API. However, it is not possible to issue them from a binary extension module compiled for the limited API.

Pitch

Since the PEP-590 is presumably stable at this point, I propose exposing more of it through the limited API. This would entail the functions

  • PyObject_Vectorcall
  • PyObject_VectorcallMethod
  • PyObject_VectorcallDict
  • PY_VECTORCALL_ARGUMENTS_OFFSET (a macro constant that is needed to use these effectively)

Previous discussion

Some related discussion took place here: https://discuss.python.org/t/ideas-for-forward-compatible-and-fast-extension-libraries-in-python-3-12. This PR Is specifically about item #5 from the list in the first post.

@wjakob wjakob added the type-feature A feature request or enhancement label Oct 24, 2022
@wjakob
Copy link
Contributor Author

wjakob commented Oct 24, 2022

PR #98587 contains a tentative set of changes realizing the addition of these functions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
expert-C-API type-feature A feature request or enhancement
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants