mypy
0aa2cafc - Fix recently added enum value type prediction (#10057)

Commit
5 years ago
Fix recently added enum value type prediction (#10057) In #9443, some code was added to predict the type of enum values where it is not explicitly when all enum members have the same type. However, it didn't consider that subclasses of Enum that have a custom __new__ implementation may use any type for the enum value (typically it would use only one of their parameters instead of a whole tuple that is specified in the definition of the member). Fix this by avoiding to guess the enum value type in classes that implement __new__. In addition, the added code was buggy in that it didn't only consider class attributes as enum members, but also instance attributes assigned to self.* in __init__. Fix this by ignoring implicit nodes when checking the enum members. Fixes #10000. Co-authored-by: Kevin Wolf <mail@kevin-wolf.de>
Author
Parents
Loading