Serhiy Storchaka <storchaka+cpyt...@gmail.com> added the comment:

Is there a full list of types converted to heap types? There may be other 
issues related to differences between heap and static types.

1. Static type with tp_new = NULL does not have public constructor, but heap 
type inherits constructor from base class. As result, it allows to create 
instances without proper initialization, that can lead to crash. It was fixed 
for few standard heap types in issue23815, then reintroduced, then fixed again 
in issue42694. But it should be checked for every type without constructor.

2. Static types was not pickleable with protocol 0 and 1 by default. Heap types 
were pickleable by default, as result, you did not get error when pickle 
instances of newly converted types, but get an error when try to unpickle. It 
was fixed in general enough case in issue41052, but it is worth to recheck it 
for every converted type.

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue43908>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to