When using `--strict-optional`, the type of `a` is incorrectly `Union[None, str]`: ``` from typing import Optional def f(x: Optional[str]) -> None: a = x or 'default' reveal_type(a) # should be str ``` #1698 seems related.