mirror of https://github.com/python/cpython
bpo-46007: Exclude PyUnicode_CHECK_INTERNED() from limited C API (GH-29987)
Exclude the PyUnicode_CHECK_INTERNED() macro from the limited C API, because it uses the PyASCIIObject structure which is excluded from the limited C API. Automerge-Triggered-By: GH:encukou
This commit is contained in:
parent
5de39f4b41
commit
73325bbe77
|
@ -723,6 +723,12 @@ Porting to Python 3.11
|
|||
been included directly, consider including ``Python.h`` instead.
|
||||
(Contributed by Victor Stinner in :issue:`35134`.)
|
||||
|
||||
* The :c:func:`PyUnicode_CHECK_INTERNED` macro has been excluded from the
|
||||
limited C API. It was never usable there, because it used internal structures
|
||||
which are not available in the limited C API.
|
||||
(Contributed by Victor Stinner in :issue:`46007`.)
|
||||
|
||||
|
||||
Deprecated
|
||||
----------
|
||||
|
||||
|
|
|
@ -279,6 +279,10 @@ PyAPI_FUNC(int) _PyUnicode_CheckConsistency(
|
|||
#define SSTATE_INTERNED_MORTAL 1
|
||||
#define SSTATE_INTERNED_IMMORTAL 2
|
||||
|
||||
/* Use only if you know it's a string */
|
||||
#define PyUnicode_CHECK_INTERNED(op) \
|
||||
(((PyASCIIObject *)(op))->state.interned)
|
||||
|
||||
/* Return true if the string contains only ASCII characters, or 0 if not. The
|
||||
string may be compact (PyUnicode_IS_COMPACT_ASCII) or not, but must be
|
||||
ready. */
|
||||
|
|
|
@ -269,10 +269,6 @@ PyAPI_FUNC(PyObject *) PyUnicode_InternFromString(
|
|||
// and will be removed in Python 3.12. Use PyUnicode_InternInPlace() instead.
|
||||
Py_DEPRECATED(3.10) PyAPI_FUNC(void) PyUnicode_InternImmortal(PyObject **);
|
||||
|
||||
/* Use only if you know it's a string */
|
||||
#define PyUnicode_CHECK_INTERNED(op) \
|
||||
(((PyASCIIObject *)(op))->state.interned)
|
||||
|
||||
/* --- wchar_t support for platforms which support it --------------------- */
|
||||
|
||||
#ifdef HAVE_WCHAR_H
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
The :c:func:`PyUnicode_CHECK_INTERNED` macro has been excluded from the limited
|
||||
C API. It was never usable there, because it used internal structures which are
|
||||
not available in the limited C API. Patch by Victor Stinner.
|
Loading…
Reference in New Issue