Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork33.7k
Open
Description
Bug report
Bug description:
This should always print True, that is an attribute accessed from a class should match the value that's in the type's mappingproxy:
classX:def__del__(inner_self):v=C.aprint(v==C.__dict__['a'])classC:a=X()# prime the cacheC.aC.a# destructor shouldn't be able to see inconsisent stateC.a=X()C.a=X()
But this prints False because the destructor can be run when the assignment into the type dict occurs, but before the type version is invalidated.
CPython versions tested on:
3.8, CPython main branch
Operating systems tested on:
Linux