Closed
Description
Overloaded classmethods don't work correctly in the type checker:
from typing import overload
class A:
@overload
@classmethod
def f(cls, x: int) -> None: pass
@overload
@classmethod
def f(cls, x: str) -> None: pass
A.f(1) # No overload variant matches argument types
A.f('') # No overload variant matches argument types
This affects dict.fromkeys.