-
-
Notifications
You must be signed in to change notification settings - Fork 3k
Closed
Labels
bugmypy got something wrongmypy got something wrongtopic-type-narrowingConditional type narrowing / binderConditional type narrowing / binder
Description
$ mypy --version
mypy 0.800
Input file:
from typing import Union
def f(v: Union[int, str]) -> str:
if isinstance(v, str):
try:
v = int(v)
except ValueError:
# return as is
return v
return str(v)Output:
$ mypy --strict ~/test.py
/home/jon/test.py:9: error: Incompatible return value type (got "Union[int, str]", expected "str")
Found 1 error in 1 file (checked 1 source file)
Expected: No error. All return statments can only return str.
Metadata
Metadata
Assignees
Labels
bugmypy got something wrongmypy got something wrongtopic-type-narrowingConditional type narrowing / binderConditional type narrowing / binder