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
gh-81057: Move Signal-Related Globals to _PyRuntimeState #100085
gh-81057: Move Signal-Related Globals to _PyRuntimeState #100085
Conversation
ericsnowcurrently
commented
Dec 7, 2022
•
edited by bedevere-bot
edited by bedevere-bot
- Issue: [subinterpreters] Global C variables are a problem #81057
|
Name | Link |
---|---|
38596a0 | |
https://app.netlify.com/sites/python-cpython-preview/deploys/6397b5e1a4ac130008314bbc |
b8ae626
to
3b416b1
Compare
5cd67d8
to
c1ac129
Compare
Include/internal/pycore_signal.h
Outdated
#ifdef MS_WINDOWS | ||
# ifdef PYCORE_SIGNAL_WITH_PRE_INCLUDES | ||
# ifndef SOCKET | ||
# error "<winsock2.h> must be included before this header" | ||
# endif | ||
# ifndef HANDLE | ||
# error "<windows.h> must be included before this header" | ||
# endif | ||
# endif | ||
#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.
@zooba, did I do this right? This is how I understood your recommendation.
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.
I don't think you want PYCORE_SIGNAL_WITH_PRE_INCLUDES
in there. The header file is simply wrong if the system headers haven't been included, so it should always fail.
If the header needs to be used somewhere else, then that somewhere else also needs to include the headers. Alternatively, if it doesn't need to use the values (but just be able to allocate the structures), replace the SOCKET
and HANDLE
types entirely with void *
and do casts anywhere they're actually being used.
This reverts commit d9a5dfa.
b8ff9df
to
08799ad
Compare