bc3089838c
Before landing, two issues to resolve: (1) We appear to allow sideways casts now without static error - e.g., List<Object> -> FutureOr<List<String>> Is that intended? If so, it breaks an assumption that implicit casts are from supertype to subtype. (2) LUB and FutureOr It appears that the LUB of, e.g., String and Future<String> is Object. See fixes in tests to record casts back to FutureOr. Fixes #29251 R=leafp@google.com Review-Url: https://codereview.chromium.org/2801683004 .