dart-lang / sdk

The Dart SDK, including the VM, JS and Wasm compilers, analysis, core libraries, and more.
https://dart.dev
BSD 3-Clause "New" or "Revised" License
10.22k stars 1.57k forks source link

[analyzer] Implement updated treatment of least upper bound #43717

Open eernstg opened 4 years ago

eernstg commented 4 years ago

This is the analyzer specific issue for #43715, which has the details.

scheglov commented 4 years ago

After changes to the analyzer, f7 still fails because UP(dynamic Function(Function), Null) is dynamic Function(Function)? because we applied UP(T1, T2) where NULL(T2).

scheglov commented 4 years ago

https://dart-review.googlesource.com/c/sdk/+/166783

eernstg commented 4 years ago

@scheglov wrote:

we applied UP(T1, T2) where NULL(T2).

Indeed, thanks for catching that! Fixed in dart-lang/sdk@a369992f4bf106f127d530db43cb11e9228ac4e8.