-
-
Notifications
You must be signed in to change notification settings - Fork 31k
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
Fix forced arg format in AC-processed modules with custom converters #94512
Labels
Comments
This was referenced Jul 2, 2022
zooba
pushed a commit
that referenced
this issue
Jul 4, 2022
zooba
pushed a commit
that referenced
this issue
Jul 4, 2022
zooba
pushed a commit
that referenced
this issue
Jul 4, 2022
zooba
pushed a commit
that referenced
this issue
Jul 28, 2022
zooba
pushed a commit
that referenced
this issue
Jul 29, 2022
erlend-aasland
pushed a commit
that referenced
this issue
Oct 26, 2024
ebonnal
pushed a commit
to ebonnal/cpython
that referenced
this issue
Jan 12, 2025
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
There are custom Argument Clinic converters that define
format_unit
but omitparse_arg
. As a result, generation of positional argument parsers is forced to back up from the fastest possible_PyArg_CheckPositional
to slower_PyArg_ParseStack
-based format strings.Here is a list of such classes (and fixing PRs except complex cases):
Modules\_multiprocessing\multiprocessing.c (gh-94512: Fix forced arg format in AC-processed multiprocessing #94517)
Modules\_multiprocessing\semaphore.c
Modules\overlapped.c (gh-94512: Fix forced arg format in AC-processed overlapped #94516)
Modules\posixmodule.c (gh-94512: Fix forced arg format in AC-processed
posixmodule.c
#122516)Modules\resource.c (gh-94512: Fix forced arg format in AC-processed resource #94515)
PC\msvcrtmodule.c (gh-94512: Fix forced arg format in AC-processed msvcrtmodule #94514)
PC\winreg.c (gh-94512: Fix forced arg format in AC-processed winreg #94513)
An example of such a converter:
I'm going to teach all of them about low-level generation by replacing manual
format_unit
definitions with:parse_arg
s in other places.For the example it gives:
The text was updated successfully, but these errors were encountered: