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 serhiy.storchaka
Recipients corona10, ivb, methane, ned.deily, pablogsal, remi.lapeyre, serhiy.storchaka, xtreak
Date 2019-10-19.15:53:16
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1571500396.5.0.315458750211.issue38525@roundup.psfhosted.org>
In-reply-to
Content
The proposed fix fixes a crash, but there is other bug in iterating shared dicts.

class A:
    def __init__(self, x, y):
        if x: self.x = x
        if y: self.y = y

a = A(1, 2)
print(list(iter(a.__dict__)))
print(list(reversed(a.__dict__)))
b = A(1, 0)
print(list(iter(b.__dict__)))
print(list(reversed(b.__dict__)))

With PR 16846 the last print outputs [] instead of expected ['x']. It crashes without PR 16846, so this issue is not only about empty dicts.
History
Date User Action Args
2019-10-19 15:53:16serhiy.storchakasetrecipients: + serhiy.storchaka, ned.deily, methane, ivb, corona10, pablogsal, remi.lapeyre, xtreak
2019-10-19 15:53:16serhiy.storchakasetmessageid: <1571500396.5.0.315458750211.issue38525@roundup.psfhosted.org>
2019-10-19 15:53:16serhiy.storchakalinkissue38525 messages
2019-10-19 15:53:16serhiy.storchakacreate