From: Victor Stinner Date: Mon, 11 Oct 2021 21:36:37 +0000 (+0200) Subject: bpo-41123: Remove Py_UNICODE_COPY() and Py_UNICODE_FILL() (GH-28887) X-Git-Tag: v3.11.0a2~239 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=1f316ea3b4fa319eec4f375fb683467b424c964e;p=thirdparty%2FPython%2Fcpython.git bpo-41123: Remove Py_UNICODE_COPY() and Py_UNICODE_FILL() (GH-28887) --- diff --git a/Doc/whatsnew/3.11.rst b/Doc/whatsnew/3.11.rst index 1455a598e1b3..0d30fe8b6464 100644 --- a/Doc/whatsnew/3.11.rst +++ b/Doc/whatsnew/3.11.rst @@ -591,3 +591,8 @@ Removed * ``Py_SET_ERRNO_ON_MATH_ERROR()`` (Contributed by Victor Stinner in :issue:`45412`.) + +* Remove ``Py_UNICODE_COPY()`` and ``Py_UNICODE_FILL()`` macros, deprecated + since Python 3.3. Use ``PyUnicode_CopyCharacters()`` or ``memcpy()`` + (``wchar_t*`` string), and ``PyUnicode_Fill()`` functions instead. + (Contributed by Victor Stinner in :issue:`41123`.) diff --git a/Include/cpython/unicodeobject.h b/Include/cpython/unicodeobject.h index b40e2ea1011f..0cbdbdbbe0af 100644 --- a/Include/cpython/unicodeobject.h +++ b/Include/cpython/unicodeobject.h @@ -50,19 +50,6 @@ Py_UNICODE_ISDIGIT(ch) || \ Py_UNICODE_ISNUMERIC(ch)) -Py_DEPRECATED(3.3) static inline void -Py_UNICODE_COPY(Py_UNICODE *target, const Py_UNICODE *source, Py_ssize_t length) { - memcpy(target, source, (size_t)(length) * sizeof(Py_UNICODE)); -} - -Py_DEPRECATED(3.3) static inline void -Py_UNICODE_FILL(Py_UNICODE *target, Py_UNICODE value, Py_ssize_t length) { - Py_ssize_t i; - for (i = 0; i < length; i++) { - target[i] = value; - } -} - /* macros to work with surrogates */ #define Py_UNICODE_IS_SURROGATE(ch) (0xD800 <= (ch) && (ch) <= 0xDFFF) #define Py_UNICODE_IS_HIGH_SURROGATE(ch) (0xD800 <= (ch) && (ch) <= 0xDBFF) diff --git a/Misc/NEWS.d/next/C API/2021-10-11-22-58-33.bpo-41123.myrlIp.rst b/Misc/NEWS.d/next/C API/2021-10-11-22-58-33.bpo-41123.myrlIp.rst new file mode 100644 index 000000000000..3ae302bcea24 --- /dev/null +++ b/Misc/NEWS.d/next/C API/2021-10-11-22-58-33.bpo-41123.myrlIp.rst @@ -0,0 +1,4 @@ +Remove ``Py_UNICODE_COPY()`` and ``Py_UNICODE_FILL()`` macros, deprecated +since Python 3.3. Use ``PyUnicode_CopyCharacters()`` or ``memcpy()`` +(``wchar_t*`` string), and ``PyUnicode_Fill()`` functions instead. Patch by +Victor Stinner.