summaryrefslogtreecommitdiffstats
path: root/Include/pystate.h
diff options
context:
space:
mode:
authorEric Snow <ericsnowcurrently@gmail.com>2017-09-06 04:43:08 (GMT)
committerGitHub <noreply@github.com>2017-09-06 04:43:08 (GMT)
commit05351c1bd8b70d1878527762174cdaaba3572395 (patch)
treee97ef4ba0ae7ffe5bd2c8969199616bffbbc4d6f /Include/pystate.h
parent833860615bedfd2484ac0623d6f01ff0578ba09f (diff)
downloadcpython-05351c1bd8b70d1878527762174cdaaba3572395.zip
cpython-05351c1bd8b70d1878527762174cdaaba3572395.tar.gz
cpython-05351c1bd8b70d1878527762174cdaaba3572395.tar.bz2
Revert "bpo-30860: Consolidate stateful runtime globals." (#3379)
Windows buildbots started failing due to include-related errors.
Diffstat (limited to 'Include/pystate.h')
-rw-r--r--Include/pystate.h30
1 files changed, 14 insertions, 16 deletions
diff --git a/Include/pystate.h b/Include/pystate.h
index 90081c5..8a92f3e 100644
--- a/Include/pystate.h
+++ b/Include/pystate.h
@@ -29,10 +29,9 @@ typedef struct {
int use_hash_seed;
unsigned long hash_seed;
int _disable_importlib; /* Needed by freeze_importlib */
- char *allocator;
} _PyCoreConfig;
-#define _PyCoreConfig_INIT {0, -1, 0, 0, NULL}
+#define _PyCoreConfig_INIT {0, -1, 0, 0}
/* Placeholders while working on the new configuration API
*
@@ -58,19 +57,6 @@ typedef struct _is {
PyObject *builtins;
PyObject *importlib;
- /* Used in Python/sysmodule.c. */
- int check_interval;
- PyObject *warnoptions;
- PyObject *xoptions;
-
- /* Used in Modules/_threadmodule.c. */
- long num_threads;
- /* Support for runtime thread stack size tuning.
- A value of 0 means using the platform's default stack size
- or the size specified by the THREAD_STACK_SIZE macro. */
- /* Used in Python/thread.c. */
- size_t pythread_stacksize;
-
PyObject *codec_search_path;
PyObject *codec_search_cache;
PyObject *codec_error_registry;
@@ -199,6 +185,9 @@ typedef struct _ts {
#endif
+#ifndef Py_LIMITED_API
+PyAPI_FUNC(void) _PyInterpreterState_Init(void);
+#endif /* !Py_LIMITED_API */
PyAPI_FUNC(PyInterpreterState *) PyInterpreterState_New(void);
PyAPI_FUNC(void) PyInterpreterState_Clear(PyInterpreterState *);
PyAPI_FUNC(void) PyInterpreterState_Delete(PyInterpreterState *);
@@ -257,7 +246,7 @@ PyAPI_FUNC(int) PyThreadState_SetAsyncExc(unsigned long, PyObject *);
/* Assuming the current thread holds the GIL, this is the
PyThreadState for the current thread. */
#ifdef Py_BUILD_CORE
-# define _PyThreadState_Current _PyRuntime.gilstate.tstate_current
+PyAPI_DATA(_Py_atomic_address) _PyThreadState_Current;
# define PyThreadState_GET() \
((PyThreadState*)_Py_atomic_load_relaxed(&_PyThreadState_Current))
#else
@@ -312,6 +301,10 @@ PyAPI_FUNC(void) PyGILState_Release(PyGILState_STATE);
PyAPI_FUNC(PyThreadState *) PyGILState_GetThisThreadState(void);
#ifndef Py_LIMITED_API
+/* Issue #26558: Flag to disable PyGILState_Check().
+ If set to non-zero, PyGILState_Check() always return 1. */
+PyAPI_DATA(int) _PyGILState_check_enabled;
+
/* Helper/diagnostic function - return 1 if the current thread
currently holds the GIL, 0 otherwise.
@@ -347,6 +340,11 @@ PyAPI_FUNC(PyThreadState *) PyThreadState_Next(PyThreadState *);
typedef struct _frame *(*PyThreadFrameGetter)(PyThreadState *self_);
#endif
+/* hook for PyEval_GetFrame(), requested for Psyco */
+#ifndef Py_LIMITED_API
+PyAPI_DATA(PyThreadFrameGetter) _PyThreadState_GetFrame;
+#endif
+
#ifdef __cplusplus
}
#endif