Fix a bug in valid return detection We had implemented the rule for invalid returns in asynchronous non-generator functions with return type T and a return expression with static type S: is an error if flatten(T) is void and flatten(S) is not void, dynamic, or Null and the actual rule should be: is an error if T is void and flatten(S) is not void, dynamic, or Null which requires T to be exactly void and so signals fewer errors. Change-Id: I296bb8a607d6e5ad862017674091eafe0f6016da Reviewed-on: https://dart-review.googlesource.com/73740 Commit-Queue: Kevin Millikin <kmillikin@google.com> Reviewed-by: Leaf Petersen <leafp@google.com> Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Dart is an open-source, scalable programming language, with robust libraries and runtimes, for building web, server, and mobile apps.
Visit the dartlang.org to learn more about the language, tools, getting started, and more.
Browse pub.dartlang.org for more packages and libraries contributed by the community and the Dart team.
If you want to build Dart yourself, here is a guide to getting the source, preparing your machine to build the SDK, and building.
There are more documents on our wiki.
The easiest way to contribute to Dart is to file issues.
You can also contribute patches, as described in Contributing.