Files
sdk/pkg/front_end/testcases/nnbd/issue43918.dart.weak.expect
T
Johnni Winther 60702d4158 [cfe] Make field assignability immutable
Changes fields to be either mutable or immutable by construction.
This ensure that we don't create setter references for fields that
cannot be assigned to and is a prerequisite for replacing @fields/
@fields= canonical names with @getters/@setters.

TEST=existing expectation tests and verification

Change-Id: I70b9a504ee6f221b7c334ac02620feb0d5f7ae01
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176665
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2020-12-28 16:11:14 +00:00

26 lines
1.3 KiB
Plaintext

library /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;
abstract class A<T extends core::Object? = dynamic> extends core::Object {
static final field dynamic _redirecting# = <dynamic>[self::A::•]/*isLegacy*/;
static factory •<T extends core::Object? = dynamic>(self::A::•::T% value) → self::A<self::A::•::T%>
let dynamic #redirecting_factory = self::_A::• in let self::A::•::T% #typeArg0 = null in invalid-expression;
}
class _A<T extends core::Object? = dynamic> extends core::Object implements self::A<self::_A::T%> {
constructor •(self::_A::T% value) → self::_A<self::_A::T%>
: super core::Object::•()
;
}
abstract class B<T extends core::Object? = dynamic> extends core::Object {
static final field dynamic _redirecting# = <dynamic>[self::B::•]/*isLegacy*/;
static factory •<T extends core::Object? = dynamic>(core::int value) → self::B<self::B::•::T%>
let dynamic #redirecting_factory = self::_B::• in let self::B::•::T% #typeArg0 = null in invalid-expression;
}
class _B<T extends core::Object? = dynamic> extends core::Object implements self::B<self::_B::T%> {
constructor •(core::int value) → self::_B<self::_B::T%>
: super core::Object::•()
;
}
static method main() → dynamic {}