fix list comprehension type assumed to the same as input type (#24271)
Summary:
Previously we didn't handle list comprehensions where the expression produced a different type than the input list.
`[float(x) for x in [1, 2, 3]`
Fix for https://github.com/pytorch/pytorch/issues/24239
Pull Request resolved: https://github.com/pytorch/pytorch/pull/24271
Differential Revision: D16806564
Pulled By: eellison
fbshipit-source-id: 1af6a174b9d17a6ea7154511133c12c691eb9188