From: Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> Date: Tue, 14 Mar 2023 09:30:28 +0000 (-0700) Subject: gh-100315: clarification to `__slots__` docs. (GH-102621) X-Git-Tag: v3.10.11~40 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=2c015a674d9f983cec0bac627e09ca3e12631bca;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 e5a1e4d89f74..a5b8009ba9c0 100644 --- a/Doc/reference/datamodel.rst +++ b/Doc/reference/datamodel.rst @@ -1876,8 +1876,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__*.