dart-lang / sdk

The Dart SDK, including the VM, JS and Wasm compilers, analysis, core libraries, and more.
https://dart.dev
BSD 3-Clause "New" or "Revised" License
10.05k stars 1.55k forks source link

dartdevk doesn't handle noSuchMethod forwarders on mixins #33461

Open jmesserly opened 6 years ago

jmesserly commented 6 years ago

found investigating https://github.com/dart-lang/sdk/issues/33459

dartdevk is using Kernel noSuchMethod forwarders, but working around Kernel mixins. This means that we drop stubs that are generated into the synthetic mixin classes.

It may be worth trying Kernel mixins again, and seeing if they're in a state where DDK can use them directly

jmesserly commented 5 years ago

we may have a similar issue with the new mixin syntax: https://dart-review.googlesource.com/c/sdk/+/76141/6

I wonder if it's possible to remove DDC's unrolling for Kernel at this point. DDC's Analyzer backend is being deprecated and hopefully will be removed, or at the very least, won't need any new language features to be implemented there after 2.1.

vsmenon commented 5 years ago

We should make sure we have test coverage on this. Likely to need to address this to switch google to DDK.

jmesserly commented 5 years ago

marked this blocked on removing the Analyzer backend (otherwise they'll diverge a lot and be very difficult to maintain)

vsmenon commented 5 years ago

Bumping this to the next milestone.