[ddc] Make it possible to move all dart.applyMixin()
calls to a library link method
#55545
Labels
area-web
Use area-web for Dart web related issues, including the DDC and dart2js compilers and JS interop.
web-dev-compiler
There is a need to move all class hierarchy connections into a single method in each library so they can be linked after all class definitions have been evaluated. Initially, this meant removing the use of the
extends
keyword in compiled output and start stitching together prototype chains manually later in the evaluation of a library.All calls of
dart.applyMixin()
need to be moved as well so that when new classes are created (this happens in the body of the method) at the time of a mixin application they have the correct superclass set before copying members from one class to another.The representation of generic type parameters is also intertwined with mixins in some class hierarchies. This is preventing simply moving all calls of
dart.applyMixin()
to the link method. It might be easier to change the generic class representation first. #31003The text was updated successfully, but these errors were encountered: