]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
bpo-41123: Remove Py_UNICODE_COPY() and Py_UNICODE_FILL() (GH-28887)
authorVictor Stinner <vstinner@python.org>
Mon, 11 Oct 2021 21:36:37 +0000 (23:36 +0200)
committerGitHub <noreply@github.com>
Mon, 11 Oct 2021 21:36:37 +0000 (23:36 +0200)
Doc/whatsnew/3.11.rst
Include/cpython/unicodeobject.h
Misc/NEWS.d/next/C API/2021-10-11-22-58-33.bpo-41123.myrlIp.rst [new file with mode: 0644]

index 1455a598e1b3c8985a6c2fc0517c2ce622c5b263..0d30fe8b6464436371581908186680467ba3cc7e 100644 (file)
@@ -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`.)
index b40e2ea1011f5c7e391d4ed1f72429c667aee0cb..0cbdbdbbe0af2e4e6e9955a456a6da938d87250c 100644 (file)
     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 (file)
index 0000000..3ae302b
--- /dev/null
@@ -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.