ca7dd9654f
The emitter creates classes in bulk, and then later connects them together except for adding stubs for JS-interop is checks. We assumed the class for JavaScriptObject was previously created and stored stubs eagerly while creating classes. We believe this caused a crash with flutter because the class was not yet defined in that case. One theory why this wasn't hit as much externally is that we sort classes by location and process dart:* classes first. Flutter is the first use case where JS-interop classes can be defined within SDK libraries. Fixes #42612 Fixes #25517 Change-Id: Icad0a9a16ec0d05481ed60f581a23c9eeb1ed5d3 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/153943 Commit-Queue: Sigmund Cherem <sigmund@google.com> Reviewed-by: Stephen Adams <sra@google.com>