This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author Guido.van.Rossum
Recipients Guido.van.Rossum, Mark.Shannon, christian.heimes, corona10, erlendaasland, gvanrossum, pablogsal, serhiy.storchaka, shihai1991, shreyanavigyan, vstinner
Date 2021-04-29.16:11:00
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <CAP7+vJKZ9hzDJ1wUWFDK2uPgO0v_uBNy3-e0QTQoDGEy5wuDNw@mail.gmail.com>
In-reply-to <1619708369.98.0.0331315724797.issue43908@roundup.psfhosted.org>
Content
That is as intended, right?

On Thu, Apr 29, 2021 at 07:59 STINNER Victor <report@bugs.python.org> wrote:

>
> STINNER Victor <vstinner@python.org> added the comment:
>
> check_set_special_type_attr() is used to prevent setting the following
> attributes:
>
> * __name__
> * __qualname__
> * __module__
> * __bases__
> * __doc__
>
> Right now, I cannot set the attribues on array.array type:
>
> $ ./python
> Python 3.10.0a7+ (heads/debug_doc2-dirty:0623fdb60d, Apr 29 2021, 12:06:18)
> >>> import array
>
> >>> array.array.__name__ = 'newname'
> TypeError: can't set attributes of built-in/extension type 'array.array'
>
> >>> array.array.__qualname__ = 'newname'
> TypeError: can't set attributes of built-in/extension type 'array.array'
>
> >>> array.array.__module__ = 'new module'
> TypeError: can't set attributes of built-in/extension type 'array.array'
>
> >>> array.array.__bases__ = (int,)
> TypeError: can't set attributes of built-in/extension type 'array.array'
>
> >>> array.array.__doc__ = 'doc'
> TypeError: can't set attributes of built-in/extension type 'array.array'
>
> I guess that type_setattro() is used and it checks for
> Py_TPFLAGS_IMMUTABLETYPE flag early.
>
> ----------
>
> _______________________________________
> Python tracker <report@bugs.python.org>
> <https://bugs.python.org/issue43908>
> _______________________________________
>
-- 
--Guido (mobile)
History
Date User Action Args
2021-04-29 16:11:00Guido.van.Rossumsetrecipients: + Guido.van.Rossum, gvanrossum, vstinner, christian.heimes, Mark.Shannon, serhiy.storchaka, corona10, pablogsal, shihai1991, erlendaasland, shreyanavigyan
2021-04-29 16:11:00Guido.van.Rossumlinkissue43908 messages
2021-04-29 16:11:00Guido.van.Rossumcreate