From: Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> Date: Tue, 14 Mar 2023 09:32:09 +0000 (-0700) Subject: gh-100315: clarification to `__slots__` docs. (GH-102621) X-Git-Tag: v3.11.3~61 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=1f7eb8fe6c1a566caf934a96c6fe2877b2447d5b;p=thirdparty%2FPython%2Fcpython.git gh-100315: clarification to `__slots__` docs. (GH-102621) refer to tp_itemsize in discussion on "variable-length" built-in types (cherry picked from commit 88c262c086077377b40dfae5e46f597e28ffe3c9) Co-authored-by: T --- diff --git a/Doc/reference/datamodel.rst b/Doc/reference/datamodel.rst index e94b535901c5..87c538f6f2c1 100644 --- a/Doc/reference/datamodel.rst +++ b/Doc/reference/datamodel.rst @@ -1944,8 +1944,10 @@ Notes on using *__slots__* descriptor directly from the base class). This renders the meaning of the program undefined. In the future, a check may be added to prevent this. -* Nonempty *__slots__* does not work for classes derived from "variable-length" - built-in types such as :class:`int`, :class:`bytes` and :class:`tuple`. +* :exc:`TypeError` will be raised if nonempty *__slots__* are defined for a + class derived from a + :c:member:`"variable-length" built-in type ` such as + :class:`int`, :class:`bytes`, and :class:`tuple`. * Any non-string :term:`iterable` may be assigned to *__slots__*.