``` python def foo(a: bool) -> str: if a: return 'Hello world' ``` Type checks cleanly with --strict-optional but will return `None` in cases where `a` is False. This function should have to have a type signature of `(bool) -> Optional[str]`. I recently came across the `--warn-no-return` flag in https://github.com/python/mypy/pull/1748 . Is the intention is to force all code paths in functions to hit a return statement? I know that'd be more in line with PEP 8, but unfortunately I've got tons of code that relies on the absence of a return statement implying `return None` that I'd like to typecheck. If this isn't a bug, I would suggest we change this to "--strict-optional should imply --warn-no-return".