```python import glob from typing import Callable, List def fun1(b: str) -> List[str]: return ["a", "b"] + [b] def fun(a: str) -> Callable: return fun1 if a == "hello" else glob.glob ``` Running mypy (v 0.931) on this file gives: ```python error: Incompatible return value type (got "function", expected "Callable[..., Any]") [return-value] ``` Crossposting from [stackoverflow](https://stackoverflow.com/questions/70831013/mypy-got-function-expected-callable-any/70832391#70832391) where an answer suggests that this problem is limited to using the ternary operator, but a bug nevertheless.