commit | 4a50b023648eba95a10749f12cff289ae2067748 | [log] [tgz] |
---|---|---|
author | Jenny Messerly <jmesserly@google.com> | Thu Feb 21 22:48:10 2019 +0000 |
committer | commit-bot@chromium.org <commit-bot@chromium.org> | Thu Feb 21 22:48:10 2019 +0000 |
tree | c1b149a39dd92d457e6ca19d3b186ebafc9322b3 | |
parent | d253642f25eecaab8070d92085f9367448feb94b [diff] |
[dartdevc] fix #36001, non-generic classes and recursive supertypes When two non-generic class had supertypes with mutually recursive type arguments, the resulting module failed at startup. The compiler detected the recursion and attempted to defer the supertype type argument evaluation, but did not defer it long enough. The fix is to move these deferrals after all classes are declared. Longer term, a better fix will be #31003 which removes the need to evaluate supertype type arguments during module initialization. Change-Id: Ic8c5819521b3fedfcc207e932f11ae11cb03222d Reviewed-on: https://dart-review.googlesource.com/c/93924 Commit-Queue: Mark Zhou <markzipan@google.com> Auto-Submit: Jenny Messerly <jmesserly@google.com> Reviewed-by: Mark Zhou <markzipan@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.