When using Future.then with onError callback return value of onError
should agree with onValue callback. Inferred type of 'throw ...' is
Never, so Future.then(() => throw, onError: ...) will fail in strong
mode if onError callback returns null.
This can be fixed by explicitly specifying result type as a type
argument of Future.then.
The following tests began passing:
dartk-strong-linux-release-x64:lib/isolate/function_send1_test/0 was fixed (RuntimeError -> Pass)
dartk-strong-linux-release-x64:lib/isolate/function_send1_test/1 was fixed (RuntimeError -> Pass)
dartk-strong-linux-release-x64:lib/isolate/function_send_test/0 was fixed (RuntimeError -> Pass)
dartk-strong-linux-release-x64:lib/isolate/function_send_test/1 was fixed (RuntimeError -> Pass)
dartkp-strong-linux-release-x64:lib/isolate/function_send1_test/0 was fixed (RuntimeError -> Pass)
dartkp-strong-linux-release-x64:lib/isolate/function_send1_test/1 was fixed (RuntimeError -> Pass)
dartkp-strong-linux-release-x64:lib/isolate/function_send_test/0 was fixed (RuntimeError -> Pass)
dartkp-strong-linux-release-x64:lib/isolate/function_send_test/1 was fixed (RuntimeError -> Pass)
Change-Id: I9a904a2c2bc577348fd923acb94e87a90c75da73
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/142262
Reviewed-by: Liam Appelbe <liama@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>