]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
[3.14] gh-135755: Move SPECIAL_ constants to a private header (GH-135922) (GH-135926)
authorPetr Viktorin <encukou@gmail.com>
Wed, 25 Jun 2025 11:36:46 +0000 (13:36 +0200)
committerGitHub <noreply@github.com>
Wed, 25 Jun 2025 11:36:46 +0000 (13:36 +0200)
Macros without a `Py`/`_Py` prefix should not be defined in public headers.
(cherry picked from commit 1b1ae82fab0093924b8b89eb1c7eea11d7be7b18)

Include/ceval.h
Include/internal/pycore_ceval.h
Modules/_opcode.c
Python/ceval.c
Python/codegen.c

index 32ab38972e548f32770b230eb9e3357a6aae0867..e9df8684996e23f32bda8b8a0d0ef2888f4efade 100644 (file)
@@ -133,13 +133,6 @@ PyAPI_FUNC(void) PyEval_ReleaseThread(PyThreadState *tstate);
 #define FVS_MASK      0x4
 #define FVS_HAVE_SPEC 0x4
 
-/* Special methods used by LOAD_SPECIAL */
-#define SPECIAL___ENTER__   0
-#define SPECIAL___EXIT__    1
-#define SPECIAL___AENTER__  2
-#define SPECIAL___AEXIT__   3
-#define SPECIAL_MAX   3
-
 #ifndef Py_LIMITED_API
 #  define Py_CPYTHON_CEVAL_H
 #  include "cpython/ceval.h"
index 2c678cd97df79c5788924b2041b005d972a975d0..528154c93348d286bce17f14944dab9082734704 100644 (file)
@@ -363,6 +363,13 @@ PyAPI_FUNC(_PyStackRef) _PyFloat_FromDouble_ConsumeInputs(_PyStackRef left, _PyS
 extern int _PyRunRemoteDebugger(PyThreadState *tstate);
 #endif
 
+/* Special methods used by LOAD_SPECIAL */
+#define SPECIAL___ENTER__   0
+#define SPECIAL___EXIT__    1
+#define SPECIAL___AENTER__  2
+#define SPECIAL___AEXIT__   3
+#define SPECIAL_MAX   3
+
 #ifdef __cplusplus
 }
 #endif
index c295f7b3152577f6adeabc82c37160a6849889da..ef271b6ef566b9705d329ed28dce1ec5190b538f 100644 (file)
@@ -5,7 +5,7 @@
 #include "Python.h"
 #include "compile.h"
 #include "opcode.h"
-#include "pycore_ceval.h"
+#include "pycore_ceval.h"           // SPECIAL_MAX
 #include "pycore_code.h"
 #include "pycore_compile.h"
 #include "pycore_intrinsics.h"
index 12d9011f5c7ee25b0d9200a2cec975b7d1cbb203..bacadd0f3aeb6a683579f0fca99a98effa759fe8 100644 (file)
@@ -8,7 +8,7 @@
 #include "pycore_backoff.h"
 #include "pycore_call.h"          // _PyObject_CallNoArgs()
 #include "pycore_cell.h"          // PyCell_GetRef()
-#include "pycore_ceval.h"
+#include "pycore_ceval.h"         // SPECIAL___ENTER__
 #include "pycore_code.h"
 #include "pycore_dict.h"
 #include "pycore_emscripten_signal.h"  // _Py_CHECK_EMSCRIPTEN_SIGNALS
index d708e59ed67bafd4098b5ddeedc1deee567e5b5a..b3dbed7096489b10e39c64087f4347a7384e7fd9 100644 (file)
@@ -28,6 +28,7 @@
 #include "pycore_pystate.h"       // _Py_GetConfig()
 #include "pycore_symtable.h"      // PySTEntryObject
 #include "pycore_unicodeobject.h" // _PyUnicode_EqualToASCIIString
+#include "pycore_ceval.h"         // SPECIAL___ENTER__
 
 #define NEED_OPCODE_METADATA
 #include "pycore_opcode_metadata.h" // _PyOpcode_opcode_metadata, _PyOpcode_num_popped/pushed