pyrefly
pyrefly copied to clipboard
Inconsistent override check doesn't work with generic functions
Minimal repro:
class Base:
def filter[T](self, iterable: T) -> T:
...
class Derived(Base):
def filter[T](self, iterable: T) -> T:
...
Expected: No error
Actual: Class member Derived.filter overrides parent class Base in an inconsistent manner [bad-override]
Might be a consequence of #73
Update: we've fixed #73 but this bug persists.
It may still be related, for example the fix might not have handled something related to BoundMethod wrapping