The type of b is incorrectly List[Union[None, int]] instead of List[int] when using --strict-optional:
from typing import Optional, List
a = [] # type: List[Optional[int]]
b = [x for x in a if x]
reveal_type(b)
Generators and other comprehensions are related (not checked them).
The type of
bis incorrectlyList[Union[None, int]]instead ofList[int]when using--strict-optional:Generators and other comprehensions are related (not checked them).