Skip to content

gh-81057: Generate a Separate Initializer For Each Part of the Global Objects Initializer #99389

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

Conversation

ericsnowcurrently
Copy link
Member

@ericsnowcurrently ericsnowcurrently commented Nov 11, 2022

Currently we ge have a single generated initializer macro for all the statically declared global objects in _PyRuntimState, including several one-offs (e.g. the empty tuple). The one-offs don't need to be generated, but are because we have one big initializer. Having separate initializers for the different bottom-level groups of global objects allows us to generate only the ones we need to.

This allows us to add initializers for one-off global objects without having to generate them.

@ericsnowcurrently ericsnowcurrently merged commit fe55ff3 into python:main Nov 11, 2022
@ericsnowcurrently ericsnowcurrently deleted the separate-global-objects-initializers branch November 11, 2022 20:23
ethanfurman pushed a commit to ethanfurman/cpython that referenced this pull request Nov 12, 2022
…Global Objects Initializer (pythongh-99389)

Up until now we had a single generated initializer macro for all the statically declared global objects in _PyRuntimeState, including several one-offs (e.g. the empty tuple). The one-offs don't need to be generated, but were because we had one big initializer. Having separate initializers for set of generated global objects allows us to generate only the ones we need to.  This allows us to add initializers for one-off global objects without having to generate them.

python#81057
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants