commit | f35bb0379d249e197c45b94fbbf52c5d5e8bf019 | [log] [tgz] |
---|---|---|
author | Vyacheslav Egorov <vegorov@google.com> | Fri May 04 11:11:05 2018 +0000 |
committer | commit-bot@chromium.org <commit-bot@chromium.org> | Fri May 04 11:11:05 2018 +0000 |
tree | 68d8a249b0a76a3d50d60b0283d5b8e43d66bc45 | |
parent | 19cf8d17686e938529f67aecb9672b5583fafbf8 [diff] |
[vm/kernel] Initialize function type args even when resuming from yield. Previously the graph was constructed in such a way that :function_type_arguments_var was only initialized when we call the function with yield points for the first time. Which meant that on resumption we would the type arguments. Alternative to this fix would be to capture :function_type_arguments_var but that does not make sense: yield points only occur inside non-generic functions at the moment, which means that :function_type_arguments_var is cheaper then capturing it as it is just a load of a field from the closure object. Fixes https://github.com/dart-lang/sdk/issues/33025 Bug: 33025 Change-Id: I0543b64202511a6c48744d462e384cf8a79e903e Reviewed-on: https://dart-review.googlesource.com/53664 Commit-Queue: Vyacheslav Egorov <vegorov@google.com> Reviewed-by: Martin Kustermann <kustermann@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.