https://github.com/python/cpython/commit/20c5f969dd12a0b3d5ea7c03fedf3e2ac202c2c0
commit: 20c5f969dd12a0b3d5ea7c03fedf3e2ac202c2c0
branch: main
author: Victor Stinner <[email protected]>
committer: vstinner <[email protected]>
date: 2025-03-19T23:01:32+01:00
summary:
gh-131238: Remove more includes from pycore_interp.h (#131480)
files:
M Include/internal/pycore_ceval.h
M Include/internal/pycore_interp.h
M Include/internal/pycore_runtime_init.h
M Modules/_ctypes/_ctypes.c
M Modules/_io/textio.c
M Modules/_json.c
M Modules/_lsprof.c
M Modules/_pickle.c
M Modules/_posixsubprocess.c
M Modules/_testinternalcapi.c
M Modules/main.c
M Modules/posixmodule.c
M Objects/bytesobject.c
M Objects/codeobject.c
M Objects/dictobject.c
M Objects/frameobject.c
M Objects/genericaliasobject.c
M Objects/genobject.c
M Objects/moduleobject.c
M Python/_warnings.c
M Python/bltinmodule.c
M Python/ceval.c
M Python/ceval_gil.c
M Python/codecs.c
M Python/dynload_shlib.c
M Python/import.c
M Python/instrumentation.c
M Python/pylifecycle.c
M Python/pystate.c
M Python/pythonrun.c
M Python/sysmodule.c
diff --git a/Include/internal/pycore_ceval.h b/Include/internal/pycore_ceval.h
index 436e5dc1d7dce8..7d28d26d887e20 100644
--- a/Include/internal/pycore_ceval.h
+++ b/Include/internal/pycore_ceval.h
@@ -8,10 +8,12 @@ extern "C" {
# error "this header requires Py_BUILD_CORE define"
#endif
-#include "dynamic_annotations.h" // _Py_ANNOTATE_RWLOCK_CREATE
+#include "dynamic_annotations.h" // _Py_ANNOTATE_RWLOCK_CREATE
+#include "pycore_code.h" // _PyCode_GetTLBCFast()
#include "pycore_interp.h" // PyInterpreterState.eval_frame
#include "pycore_pystate.h" // _PyThreadState_GET()
+#include "pycore_stats.h" // EVAL_CALL_STAT_INC()
#include "pycore_typedefs.h" // _PyInterpreterFrame
diff --git a/Include/internal/pycore_interp.h b/Include/internal/pycore_interp.h
index 28ec42377ad8cc..eb8ed2ec6ac2c7 100644
--- a/Include/internal/pycore_interp.h
+++ b/Include/internal/pycore_interp.h
@@ -11,15 +11,7 @@ extern "C" {
#include <stdbool.h> // bool
#include "pycore_runtime_structs.h"
-#include "pycore_code.h" // struct callable_cache
-#include "pycore_floatobject.h" // struct _Py_float_state
-#include "pycore_gc.h" // struct _gc_runtime_state
#include "pycore_genobject.h" // _PyGen_FetchStopIterationValue
-#include "pycore_import.h" // struct _import_state
-#include "pycore_optimizer.h" // _PyExecutorObject
-#include "pycore_typeobject.h" // struct types_state
-#include "pycore_unicodeobject.h" // struct _Py_unicode_state
-#include "pycore_warnings.h" // struct _warnings_runtime_state
/* interpreter state */
diff --git a/Include/internal/pycore_runtime_init.h
b/Include/internal/pycore_runtime_init.h
index 497599f6717e76..8f866fd3497be9 100644
--- a/Include/internal/pycore_runtime_init.h
+++ b/Include/internal/pycore_runtime_init.h
@@ -16,6 +16,7 @@ extern "C" {
#include "pycore_floatobject.h" // _py_float_format_unknown
#include "pycore_function.h"
#include "pycore_hamt.h" // _PyHamt_BitmapNode_Type
+#include "pycore_import.h" // IMPORTS_INIT
#include "pycore_object.h" // _PyObject_HEAD_INIT
#include "pycore_obmalloc_init.h" // _obmalloc_global_state_INIT
#include "pycore_parser.h" // _parser_runtime_state_INIT
diff --git a/Modules/_ctypes/_ctypes.c b/Modules/_ctypes/_ctypes.c
index 7c0ac1a57f534c..cc06759f2d0d59 100644
--- a/Modules/_ctypes/_ctypes.c
+++ b/Modules/_ctypes/_ctypes.c
@@ -108,6 +108,7 @@ bytes(cdata)
#include "pycore_call.h" // _PyObject_CallNoArgs()
#include "pycore_ceval.h" // _Py_EnterRecursiveCall()
+#include "pycore_unicodeobject.h" // _PyUnicode_EqualToASCIIString()
#ifdef MS_WIN32
# include "pycore_modsupport.h" // _PyArg_NoKeywords()
#endif
diff --git a/Modules/_io/textio.c b/Modules/_io/textio.c
index e07291183228b9..377c85f5ac67a6 100644
--- a/Modules/_io/textio.c
+++ b/Modules/_io/textio.c
@@ -7,14 +7,15 @@
*/
#include "Python.h"
-#include "pycore_call.h" // _PyObject_CallMethod()
-#include "pycore_codecs.h" // _PyCodecInfo_GetIncrementalDecoder()
-#include "pycore_fileutils.h" // _Py_GetLocaleEncoding()
-#include "pycore_interp.h" // PyInterpreterState.fs_codec
-#include "pycore_long.h" // _PyLong_GetZero()
-#include "pycore_object.h" // _PyObject_GC_UNTRACK()
-#include "pycore_pyerrors.h" // _PyErr_ChainExceptions1()
-#include "pycore_pystate.h" // _PyInterpreterState_GET()
+#include "pycore_call.h" // _PyObject_CallMethod()
+#include "pycore_codecs.h" // _PyCodecInfo_GetIncrementalDecoder()
+#include "pycore_fileutils.h" // _Py_GetLocaleEncoding()
+#include "pycore_interp.h" // PyInterpreterState.fs_codec
+#include "pycore_long.h" // _PyLong_GetZero()
+#include "pycore_object.h" // _PyObject_GC_UNTRACK()
+#include "pycore_pyerrors.h" // _PyErr_ChainExceptions1()
+#include "pycore_pystate.h" // _PyInterpreterState_GET()
+#include "pycore_unicodeobject.h" // _PyUnicode_AsASCIIString()
#include "_iomodule.h"
diff --git a/Modules/_json.c b/Modules/_json.c
index 7b3328a4c9145d..cd8e697916226b 100644
--- a/Modules/_json.c
+++ b/Modules/_json.c
@@ -9,12 +9,13 @@
#endif
#include "Python.h"
-#include "pycore_ceval.h" // _Py_EnterRecursiveCall()
-#include "pycore_runtime.h" // _PyRuntime
-#include "pycore_pyerrors.h" // _PyErr_FormatNote
+#include "pycore_ceval.h" // _Py_EnterRecursiveCall()
+#include "pycore_global_strings.h" // _Py_ID()
+#include "pycore_pyerrors.h" // _PyErr_FormatNote
+#include "pycore_runtime.h" // _PyRuntime
+#include "pycore_unicodeobject.h" // _PyUnicode_CheckConsistency()
-#include "pycore_global_strings.h" // _Py_ID()
-#include <stdbool.h> // bool
+#include <stdbool.h> // bool
typedef struct _PyScannerObject {
diff --git a/Modules/_lsprof.c b/Modules/_lsprof.c
index 39d900cb824312..92190b06829f8f 100644
--- a/Modules/_lsprof.c
+++ b/Modules/_lsprof.c
@@ -7,6 +7,7 @@
#include "pycore_ceval.h" // _PyEval_SetProfile()
#include "pycore_pystate.h" // _PyThreadState_GET()
#include "pycore_time.h" // _PyTime_FromLong()
+#include "pycore_unicodeobject.h" // _PyUnicode_EqualToASCIIString()
#include "rotatingtree.h"
diff --git a/Modules/_pickle.c b/Modules/_pickle.c
index c2ae33c0fcecc1..d260f1a68f8c70 100644
--- a/Modules/_pickle.c
+++ b/Modules/_pickle.c
@@ -9,17 +9,18 @@
#endif
#include "Python.h"
-#include "pycore_bytesobject.h" // _PyBytesWriter
-#include "pycore_ceval.h" // _Py_EnterRecursiveCall()
-#include "pycore_critical_section.h" // Py_BEGIN_CRITICAL_SECTION()
-#include "pycore_long.h" // _PyLong_AsByteArray()
-#include "pycore_moduleobject.h" // _PyModule_GetState()
-#include "pycore_object.h" // _PyNone_Type
-#include "pycore_pyerrors.h" // _PyErr_FormatNote
-#include "pycore_pystate.h" // _PyThreadState_GET()
-#include "pycore_runtime.h" // _Py_ID()
-#include "pycore_setobject.h" // _PySet_NextEntry()
-#include "pycore_sysmodule.h" // _PySys_GetSizeOf()
+#include "pycore_bytesobject.h" // _PyBytesWriter
+#include "pycore_ceval.h" // _Py_EnterRecursiveCall()
+#include "pycore_critical_section.h" // Py_BEGIN_CRITICAL_SECTION()
+#include "pycore_long.h" // _PyLong_AsByteArray()
+#include "pycore_moduleobject.h" // _PyModule_GetState()
+#include "pycore_object.h" // _PyNone_Type
+#include "pycore_pyerrors.h" // _PyErr_FormatNote
+#include "pycore_pystate.h" // _PyThreadState_GET()
+#include "pycore_runtime.h" // _Py_ID()
+#include "pycore_setobject.h" // _PySet_NextEntry()
+#include "pycore_sysmodule.h" // _PySys_GetSizeOf()
+#include "pycore_unicodeobject.h" // _PyUnicode_EqualToASCIIString()
#include <stdlib.h> // strtol()
diff --git a/Modules/_posixsubprocess.c b/Modules/_posixsubprocess.c
index 8f4b57017635f8..1085e36cfe09b2 100644
--- a/Modules/_posixsubprocess.c
+++ b/Modules/_posixsubprocess.c
@@ -4,6 +4,7 @@
#endif
#include "Python.h"
+#include "pycore_fileutils.h" // _Py_set_inheritable_async_safe()
#include "pycore_interp.h" // _PyInterpreterState_GetFinalizing()
#include "pycore_pystate.h" // _PyInterpreterState_GET()
#include "pycore_signal.h" // _Py_RestoreSignals()
diff --git a/Modules/_testinternalcapi.c b/Modules/_testinternalcapi.c
index c03652259d0e50..f927d13fc75e76 100644
--- a/Modules/_testinternalcapi.c
+++ b/Modules/_testinternalcapi.c
@@ -23,6 +23,7 @@
#include "pycore_frame.h" // _PyInterpreterFrame
#include "pycore_gc.h" // PyGC_Head
#include "pycore_hashtable.h" // _Py_hashtable_new()
+#include "pycore_import.h" // _PyImport_ClearExtension()
#include "pycore_initconfig.h" // _Py_GetConfigsAsDict()
#include "pycore_instruction_sequence.h" // _PyInstructionSequence_New()
#include "pycore_object.h" // _PyObject_IsFreed()
@@ -31,6 +32,7 @@
#include "pycore_pyerrors.h" // _PyErr_ChainExceptions1()
#include "pycore_pylifecycle.h" // _PyInterpreterConfig_AsDict()
#include "pycore_pystate.h" // _PyThreadState_GET()
+#include "pycore_unicodeobject.h" //
_PyUnicode_TransformDecimalAndSpaceToASCII()
#include "clinic/_testinternalcapi.c.h"
diff --git a/Modules/main.c b/Modules/main.c
index 0aebce0d3b7aa2..3fda4fb4732bb1 100644
--- a/Modules/main.c
+++ b/Modules/main.c
@@ -2,6 +2,8 @@
#include "Python.h"
#include "pycore_call.h" // _PyObject_CallNoArgs()
+#include "pycore_fileutils.h" // struct _Py_stat_struct
+#include "pycore_import.h" // _PyImport_Fini2()
#include "pycore_initconfig.h" // _PyArgv
#include "pycore_interp.h" // _PyInterpreterState.sysdict
#include "pycore_long.h" // _PyLong_GetOne()
diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c
index 25ebc98435c5da..ff798e8a19c0b5 100644
--- a/Modules/posixmodule.c
+++ b/Modules/posixmodule.c
@@ -18,6 +18,7 @@
#include "pycore_call.h" // _PyObject_CallNoArgs()
#include "pycore_ceval.h" // _PyEval_ReInitThreads()
#include "pycore_fileutils.h" // _Py_closerange()
+#include "pycore_import.h" // _PyImport_AcquireLock()
#include "pycore_initconfig.h" // _PyStatus_EXCEPTION()
#include "pycore_long.h" // _PyLong_IsNegative()
#include "pycore_moduleobject.h" // _PyModule_GetState()
diff --git a/Objects/bytesobject.c b/Objects/bytesobject.c
index 1615571035853c..bdb389eb25823e 100644
--- a/Objects/bytesobject.c
+++ b/Objects/bytesobject.c
@@ -13,6 +13,7 @@
#include "pycore_object.h" // _PyObject_GC_TRACK
#include "pycore_pymem.h" // PYMEM_CLEANBYTE
#include "pycore_strhex.h" // _Py_strhex_with_sep()
+#include "pycore_unicodeobject.h" // _PyUnicode_FormatLong()
#include <stddef.h>
diff --git a/Objects/codeobject.c b/Objects/codeobject.c
index 90f0bfb7b92b7e..f06b19b2fb775d 100644
--- a/Objects/codeobject.c
+++ b/Objects/codeobject.c
@@ -15,11 +15,13 @@
#include "pycore_pystate.h" // _PyInterpreterState_GET()
#include "pycore_setobject.h" // _PySet_NextEntry()
#include "pycore_tuple.h" // _PyTuple_ITEMS()
+#include "pycore_unicodeobject.h" // _PyUnicode_InternImmortal()
#include "pycore_uniqueid.h" // _PyObject_AssignUniqueId()
-#include "clinic/codeobject.c.h"
+#include "clinic/codeobject.c.h"
#include <stdbool.h>
+
#define INITIAL_SPECIALIZED_CODE_SIZE 16
static const char *
diff --git a/Objects/dictobject.c b/Objects/dictobject.c
index 254c1317e9031c..614c12bb250ada 100644
--- a/Objects/dictobject.c
+++ b/Objects/dictobject.c
@@ -116,23 +116,25 @@ As a consequence of this, split keys have a maximum size
of 16.
#define PyDict_MINSIZE 8
#include "Python.h"
-#include "pycore_bitutils.h" // _Py_bit_length
-#include "pycore_call.h" // _PyObject_CallNoArgs()
-#include "pycore_ceval.h" // _PyEval_GetBuiltin()
-#include "pycore_code.h" // stats
-#include "pycore_critical_section.h" // Py_BEGIN_CRITICAL_SECTION,
Py_END_CRITICAL_SECTION
-#include "pycore_dict.h" // export _PyDict_SizeOf()
-#include "pycore_freelist.h" // _PyFreeListState_GET()
-#include "pycore_gc.h" // _PyObject_GC_IS_TRACKED()
-#include "pycore_object.h" // _PyObject_GC_TRACK(),
_PyDebugAllocatorStats()
+#include "pycore_bitutils.h" // _Py_bit_length
+#include "pycore_call.h" // _PyObject_CallNoArgs()
+#include "pycore_ceval.h" // _PyEval_GetBuiltin()
+#include "pycore_code.h" // stats
+#include "pycore_critical_section.h" // Py_BEGIN_CRITICAL_SECTION,
Py_END_CRITICAL_SECTION
+#include "pycore_dict.h" // export _PyDict_SizeOf()
+#include "pycore_freelist.h" // _PyFreeListState_GET()
+#include "pycore_gc.h" // _PyObject_GC_IS_TRACKED()
+#include "pycore_object.h" // _PyObject_GC_TRACK(),
_PyDebugAllocatorStats()
#include "pycore_pyatomic_ft_wrappers.h" // FT_ATOMIC_LOAD_SSIZE_RELAXED
-#include "pycore_pyerrors.h" // _PyErr_GetRaisedException()
-#include "pycore_pystate.h" // _PyThreadState_GET()
-#include "pycore_setobject.h" // _PySet_NextEntry()
-#include "stringlib/eq.h" // unicode_eq()
+#include "pycore_pyerrors.h" // _PyErr_GetRaisedException()
+#include "pycore_pystate.h" // _PyThreadState_GET()
+#include "pycore_setobject.h" // _PySet_NextEntry()
+#include "pycore_unicodeobject.h" // _PyUnicode_InternImmortal()
+#include "stringlib/eq.h" // unicode_eq()
#include <stdbool.h>
+
/*[clinic input]
class dict "PyDictObject *" "&PyDict_Type"
[clinic start generated code]*/
diff --git a/Objects/frameobject.c b/Objects/frameobject.c
index 152005a19a8565..665199f7436ee8 100644
--- a/Objects/frameobject.c
+++ b/Objects/frameobject.c
@@ -7,10 +7,12 @@
#include "pycore_function.h" // _PyFunction_FromConstructor()
#include "pycore_genobject.h" // _PyGen_GetGeneratorFromFrame()
#include "pycore_moduleobject.h" // _PyModule_GetDict()
+#include "pycore_cell.h" // PyCell_GetRef() PyCell_SetTakeRef()
#include "pycore_modsupport.h" // _PyArg_CheckPositional()
#include "pycore_object.h" // _PyObject_GC_UNTRACK()
-#include "pycore_cell.h" // PyCell_GetRef() PyCell_SetTakeRef()
#include "pycore_opcode_metadata.h" // _PyOpcode_Deopt, _PyOpcode_Caches
+#include "pycore_optimizer.h" // _Py_Executors_InvalidateDependency()
+#include "pycore_unicodeobject.h" // _PyUnicode_Equal()
#include "frameobject.h" // PyFrameObject
diff --git a/Objects/genericaliasobject.c b/Objects/genericaliasobject.c
index 8e6bc31a05e134..a56ed908d71133 100644
--- a/Objects/genericaliasobject.c
+++ b/Objects/genericaliasobject.c
@@ -5,6 +5,7 @@
#include "pycore_modsupport.h" // _PyArg_NoKeywords()
#include "pycore_object.h"
#include "pycore_typevarobject.h" // _Py_typing_type_repr
+#include "pycore_unicodeobject.h" // _PyUnicode_EqualToASCIIString()
#include "pycore_unionobject.h" // _Py_union_type_or, _PyGenericAlias_Check
diff --git a/Objects/genobject.c b/Objects/genobject.c
index 005f1a13c4b4c2..0669dba1f36c1b 100644
--- a/Objects/genobject.c
+++ b/Objects/genobject.c
@@ -16,6 +16,7 @@
#include "pycore_pyatomic_ft_wrappers.h" // FT_ATOMIC_*
#include "pycore_pyerrors.h" // _PyErr_ClearExcState()
#include "pycore_pystate.h" // _PyThreadState_GET()
+#include "pycore_warnings.h" // _PyErr_WarnUnawaitedCoroutine()
// Forward declarations
static PyObject* gen_close(PyObject *, PyObject *);
diff --git a/Objects/moduleobject.c b/Objects/moduleobject.c
index 1af3ce6fe9bf65..2412f994d4bf51 100644
--- a/Objects/moduleobject.c
+++ b/Objects/moduleobject.c
@@ -5,6 +5,7 @@
#include "pycore_call.h" // _PyObject_CallNoArgs()
#include "pycore_dict.h" // _PyDict_EnablePerThreadRefcounting()
#include "pycore_fileutils.h" // _Py_wgetcwd
+#include "pycore_import.h" // _PyImport_GetNextModuleIndex()
#include "pycore_interp.h" // PyInterpreterState.importlib
#include "pycore_long.h" // _PyLong_GetOne()
#include "pycore_modsupport.h" // _PyModule_CreateInitialized()
@@ -13,6 +14,7 @@
#include "pycore_pyerrors.h" // _PyErr_FormatFromCause()
#include "pycore_pystate.h" // _PyInterpreterState_GET()
#include "pycore_sysmodule.h" // _PySys_GetOptionalAttrString()
+#include "pycore_unicodeobject.h" // _PyUnicode_EqualToASCIIString()
#include "osdefs.h" // MAXPATHLEN
diff --git a/Python/_warnings.c b/Python/_warnings.c
index 64a6e1dea31fcd..3271768e6f68f9 100644
--- a/Python/_warnings.c
+++ b/Python/_warnings.c
@@ -1,6 +1,7 @@
#include "Python.h"
#include "pycore_critical_section.h" // Py_BEGIN_CRITICAL_SECTION_MUT()
#include "pycore_frame.h" // PyFrameObject members
+#include "pycore_import.h" // _PyImport_GetModules()
#include "pycore_interp.h" // PyInterpreterState.warnings
#include "pycore_long.h" // _PyLong_GetZero()
#include "pycore_pyerrors.h" // _PyErr_Occurred()
@@ -8,11 +9,12 @@
#include "pycore_pystate.h" // _PyThreadState_GET()
#include "pycore_sysmodule.h" // _PySys_GetOptionalAttr()
#include "pycore_traceback.h" // _Py_DisplaySourceLine()
+#include "pycore_unicodeobject.h" // _PyUnicode_EqualToASCIIString()
#include <stdbool.h>
-
#include "clinic/_warnings.c.h"
+
#define MODULE_NAME "_warnings"
PyDoc_STRVAR(warnings__doc__,
diff --git a/Python/bltinmodule.c b/Python/bltinmodule.c
index 1b87e6e0b6c7e4..6709f306bb024d 100644
--- a/Python/bltinmodule.c
+++ b/Python/bltinmodule.c
@@ -6,6 +6,7 @@
#include "pycore_ceval.h" // _PyEval_Vector()
#include "pycore_compile.h" // _PyAST_Compile()
#include "pycore_fileutils.h" // _PyFile_Flush
+#include "pycore_floatobject.h" // _PyFloat_ExactDealloc()
#include "pycore_interp.h" // _PyInterpreterState_GetConfig()
#include "pycore_long.h" // _PyLong_CompactValue
#include "pycore_modsupport.h" // _PyArg_NoKwnames()
diff --git a/Python/ceval.c b/Python/ceval.c
index 7248e0bbc0e1bd..42f5eaddd2e510 100644
--- a/Python/ceval.c
+++ b/Python/ceval.c
@@ -11,7 +11,9 @@
#include "pycore_ceval.h"
#include "pycore_code.h"
#include "pycore_emscripten_signal.h" // _Py_CHECK_EMSCRIPTEN_SIGNALS
+#include "pycore_floatobject.h" // _PyFloat_ExactDealloc()
#include "pycore_function.h"
+#include "pycore_import.h" // _PyImport_IsDefaultImportFunc()
#include "pycore_instruments.h"
#include "pycore_intrinsics.h"
#include "pycore_jit.h"
diff --git a/Python/ceval_gil.c b/Python/ceval_gil.c
index 2c1cc17b2ffa13..a382aa6f1e1a09 100644
--- a/Python/ceval_gil.c
+++ b/Python/ceval_gil.c
@@ -3,12 +3,14 @@
#include "pycore_ceval.h" // _PyEval_SignalReceived()
#include "pycore_initconfig.h" // _PyStatus_OK()
#include "pycore_interp.h" // _Py_RunGC()
+#include "pycore_optimizer.h" // _Py_Executors_InvalidateCold()
#include "pycore_pyerrors.h" // _PyErr_GetRaisedException()
#include "pycore_pylifecycle.h" // _PyErr_Print()
#include "pycore_pymem.h" // _PyMem_IsPtrFreed()
#include "pycore_pystate.h" // PyThread_hang_thread()
#include "pycore_pystats.h" // _Py_PrintSpecializationStats()
+
/*
Notes about the implementation:
diff --git a/Python/codecs.c b/Python/codecs.c
index 51f4beb84669c8..265f5214e5bad2 100644
--- a/Python/codecs.c
+++ b/Python/codecs.c
@@ -15,6 +15,7 @@ Copyright (c) Corporation for National Research Initiatives.
#include "pycore_pystate.h" // _PyInterpreterState_GET()
#include "pycore_runtime.h" // _Py_ID()
#include "pycore_ucnhash.h" // _PyUnicode_Name_CAPI
+#include "pycore_unicodeobject.h" // _PyUnicode_InternMortal()
static const char *codecs_builtin_error_handlers[] = {
diff --git a/Python/dynload_shlib.c b/Python/dynload_shlib.c
index 5a37a83805ba78..583c9b752dfd90 100644
--- a/Python/dynload_shlib.c
+++ b/Python/dynload_shlib.c
@@ -2,9 +2,11 @@
/* Support for dynamic loading of extension modules */
#include "Python.h"
-#include "pycore_interp.h" // _PyInterpreterState.dlopenflags
-#include "pycore_pystate.h" // _PyInterpreterState_GET()
+#include "pycore_fileutils.h" // struct _Py_stat_struct
+#include "pycore_import.h" // _PyImport_GetDLOpenFlags()
#include "pycore_importdl.h"
+#include "pycore_interp.h" // _PyInterpreterState.dlopenflags
+#include "pycore_pystate.h" // _PyInterpreterState_GET()
#include <sys/types.h>
#include <sys/stat.h>
diff --git a/Python/import.c b/Python/import.c
index 690793edb807f4..8742b6ec767c9b 100644
--- a/Python/import.c
+++ b/Python/import.c
@@ -18,6 +18,7 @@
#include "pycore_pystate.h" // _PyInterpreterState_GET()
#include "pycore_sysmodule.h" // _PySys_ClearAttrString()
#include "pycore_time.h" // _PyTime_AsMicroseconds()
+#include "pycore_unicodeobject.h" // _PyUnicode_AsUTF8NoNUL()
#include "pycore_weakref.h" // _PyWeakref_GET_REF()
#include "marshal.h" // PyMarshal_ReadObjectFromString()
diff --git a/Python/instrumentation.c b/Python/instrumentation.c
index 56035d6ae5a598..031c450bb600ba 100644
--- a/Python/instrumentation.c
+++ b/Python/instrumentation.c
@@ -12,6 +12,7 @@
#include "pycore_object.h"
#include "pycore_opcode_metadata.h" // IS_VALID_OPCODE, _PyOpcode_Caches
#include "pycore_opcode_utils.h" // IS_CONDITIONAL_JUMP_OPCODE
+#include "pycore_optimizer.h" // _PyExecutorObject
#include "pycore_pyatomic_ft_wrappers.h" // FT_ATOMIC_STORE_UINTPTR_RELEASE
#include "pycore_pyerrors.h"
#include "pycore_pystate.h" // _PyInterpreterState_GET()
diff --git a/Python/pylifecycle.c b/Python/pylifecycle.c
index 0513d614c6e1ef..12a48316cbc243 100644
--- a/Python/pylifecycle.c
+++ b/Python/pylifecycle.c
@@ -1,8 +1,6 @@
/* Python interpreter top-level routines, including init/exit */
#include "Python.h"
-#include "pycore_runtime_structs.h"
-#include "pycore_unicodeobject.h"
#include "pycore_audit.h" // _PySys_ClearAuditHooks()
#include "pycore_call.h" // _PyObject_CallMethod()
#include "pycore_ceval.h" // _PyEval_FiniGIL()
@@ -11,15 +9,16 @@
#include "pycore_dict.h" // _PyDict_Fini()
#include "pycore_exceptions.h" // _PyExc_InitTypes()
#include "pycore_fileutils.h" // _Py_ResetForceASCII()
-#include "pycore_freelist.h" // _PyObject_ClearFreeLists()
#include "pycore_floatobject.h" // _PyFloat_InitTypes()
-#include "pycore_global_objects_fini_generated.h" //
"_PyStaticObjects_CheckRefcnt()
+#include "pycore_freelist.h" // _PyObject_ClearFreeLists()
+#include "pycore_global_objects_fini_generated.h" //
_PyStaticObjects_CheckRefcnt()
#include "pycore_hamt.h" // _PyHamt_Type
#include "pycore_import.h" // _PyImport_BootstrapImp()
#include "pycore_initconfig.h" // _PyStatus_OK()
#include "pycore_list.h" // _PyList_Fini()
#include "pycore_long.h" // _PyLong_InitTypes()
#include "pycore_object.h" // _PyDebug_PrintTotalRefs()
+#include "pycore_obmalloc.h" // _PyMem_init_obmalloc()
#include "pycore_pathconfig.h" // _PyPathConfig_UpdateGlobal()
#include "pycore_pyerrors.h" // _PyErr_Occurred()
#include "pycore_pylifecycle.h" // _PyErr_Print()
@@ -27,16 +26,17 @@
#include "pycore_pystate.h" // _PyThreadState_GET()
#include "pycore_runtime.h" // _Py_ID()
#include "pycore_runtime_init.h" // _PyRuntimeState_INIT
+#include "pycore_runtime_structs.h"
#include "pycore_setobject.h" // _PySet_NextEntry()
#include "pycore_sliceobject.h" // _PySlice_Fini()
#include "pycore_sysmodule.h" // _PySys_ClearAttrString()
#include "pycore_traceback.h" // _Py_DumpTracebackThreads()
-#include "pycore_uniqueid.h" // _PyObject_FinalizeUniqueIdPool()
#include "pycore_typeobject.h" // _PyTypes_InitTypes()
#include "pycore_typevarobject.h" // _Py_clear_generic_types()
#include "pycore_unicodeobject.h" // _PyUnicode_InitTypes()
+#include "pycore_uniqueid.h" // _PyObject_FinalizeUniqueIdPool()
+#include "pycore_warnings.h" // _PyWarnings_InitState()
#include "pycore_weakref.h" // _PyWeakref_GET_REF()
-#include "pycore_obmalloc.h" // _PyMem_init_obmalloc()
#include "opcode.h"
diff --git a/Python/pystate.c b/Python/pystate.c
index 3aec10219b0382..c755e0d9f27cc7 100644
--- a/Python/pystate.c
+++ b/Python/pystate.c
@@ -16,6 +16,7 @@
#include "pycore_freelist.h" // _PyObject_ClearFreeLists()
#include "pycore_initconfig.h" // _PyStatus_OK()
#include "pycore_object.h" // _PyType_InitCache()
+#include "pycore_optimizer.h" // JIT_CLEANUP_THRESHOLD
#include "pycore_parking_lot.h" // _PyParkingLot_AfterFork()
#include "pycore_pyerrors.h" // _PyErr_Clear()
#include "pycore_pylifecycle.h" // _PyAST_Fini()
diff --git a/Python/pythonrun.c b/Python/pythonrun.c
index 6e24131e5b1113..23af8b6f6be8e8 100644
--- a/Python/pythonrun.c
+++ b/Python/pythonrun.c
@@ -15,6 +15,7 @@
#include "pycore_ceval.h" // _Py_EnterRecursiveCall()
#include "pycore_compile.h" // _PyAST_Compile()
#include "pycore_fileutils.h" // _PyFile_Flush
+#include "pycore_import.h" // _PyImport_GetImportlibExternalLoader()
#include "pycore_interp.h" // PyInterpreterState.importlib
#include "pycore_object.h" // _PyDebug_PrintTotalRefs()
#include "pycore_parser.h" // _PyParser_ASTFromString()
@@ -24,6 +25,7 @@
#include "pycore_pythonrun.h" // export _PyRun_InteractiveLoopObject()
#include "pycore_sysmodule.h" // _PySys_SetAttr()
#include "pycore_traceback.h" // _PyTraceBack_Print()
+#include "pycore_unicodeobject.h" // _PyUnicode_Equal()
#include "errcode.h" // E_EOF
#include "marshal.h" // PyMarshal_ReadLongFromFile()
diff --git a/Python/sysmodule.c b/Python/sysmodule.c
index adaa5ee1c74aa5..c06ae90ee2bd11 100644
--- a/Python/sysmodule.c
+++ b/Python/sysmodule.c
@@ -20,11 +20,13 @@ Data members:
#include "pycore_ceval.h" // _PyEval_SetAsyncGenFinalizer()
#include "pycore_dict.h" // _PyDict_GetItemWithError()
#include "pycore_frame.h" // _PyInterpreterFrame
+#include "pycore_import.h" // _PyImport_SetDLOpenFlags()
#include "pycore_initconfig.h" // _PyStatus_EXCEPTION()
#include "pycore_long.h" // _PY_LONG_MAX_STR_DIGITS_THRESHOLD
#include "pycore_modsupport.h" // _PyModule_CreateInitialized()
#include "pycore_namespace.h" // _PyNamespace_New()
#include "pycore_object.h" // _PyObject_DebugTypeStats()
+#include "pycore_optimizer.h" // _PyDumpExecutors()
#include "pycore_pathconfig.h" // _PyPathConfig_ComputeSysPath0()
#include "pycore_pyerrors.h" // _PyErr_GetRaisedException()
#include "pycore_pylifecycle.h" // _PyErr_WriteUnraisableDefaultHook()
@@ -35,6 +37,7 @@ Data members:
#include "pycore_structseq.h" // _PyStructSequence_InitBuiltinWithFlags()
#include "pycore_sysmodule.h" // export _PySys_GetSizeOf()
#include "pycore_tuple.h" // _PyTuple_FromArray()
+#include "pycore_unicodeobject.h" // _PyUnicode_InternImmortal()
#include "pydtrace.h" // PyDTrace_AUDIT()
#include "osdefs.h" // DELIM
_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3/lists/python-checkins.python.org/
Member address: [email protected]