DDC: Mixing in an implementer of a covariant field or setter results in getter that always returns null #46867
Labels
area-web
Use area-web for Dart web related issues, including the DDC and dart2js compilers and JS interop.
type-bug
Incorrect behavior (everything from a crash to more subtle misbehavior)
web-dev-compiler
Mixing in an implementer of a covariant field or setter and then concretely implementing that member with another class can result in the target class's getter always returning null in DDC-compiled code. Potentially a similar issue to #29914 (see below).
Reduced test case:
I noticed that the issue does not occur if you tweak this code by either:
implements Interface
to BaseClassimplements Interface
from Mixin to BaseClassWhen logging this class to the console, you can see that there's a setter declared in one of the objects in the prototype chain without a corresponding getter. This seems like a similar issue to #29914, so perhaps the fix is also something similar?
Dart SDKs I've checked in which the issue occurs:
Dart SDKs I've checked in which the issue does not occur:
The text was updated successfully, but these errors were encountered: