fdc765faad
TEST=existing Change-Id: I0a8fdf09f742b55357411f12dc6164d4050bb83c Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/196283 Commit-Queue: Johnni Winther <johnniwinther@google.com> Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
103 lines
4.1 KiB
Plaintext
103 lines
4.1 KiB
Plaintext
library /*isNonNullableByDefault*/;
|
|
//
|
|
// Problems in library:
|
|
//
|
|
// pkg/front_end/testcases/nnbd/non_nullable_field_initialization.dart:7:5: Error: Field 'topLevelField' should be initialized because its type 'int' doesn't allow null.
|
|
// int topLevelField; // Error.
|
|
// ^^^^^^^^^^^^^
|
|
//
|
|
// pkg/front_end/testcases/nnbd/non_nullable_field_initialization.dart:10:14: Error: Field 'staticFieldOfA' should be initialized because its type 'int' doesn't allow null.
|
|
// static int staticFieldOfA; // Error.
|
|
// ^^^^^^^^^^^^^^
|
|
//
|
|
// pkg/front_end/testcases/nnbd/non_nullable_field_initialization.dart:24:14: Error: Field 'staticFieldOfM' should be initialized because its type 'int' doesn't allow null.
|
|
// static int staticFieldOfM; // Error.
|
|
// ^^^^^^^^^^^^^^
|
|
//
|
|
// pkg/front_end/testcases/nnbd/non_nullable_field_initialization.dart:34:14: Error: Field 'staticFieldOfE' should be initialized because its type 'int' doesn't allow null.
|
|
// static int staticFieldOfE; // Error.
|
|
// ^^^^^^^^^^^^^^
|
|
//
|
|
import self as self;
|
|
import "dart:core" as core;
|
|
|
|
class Foo extends core::Object {
|
|
synthetic constructor •() → self::Foo
|
|
;
|
|
}
|
|
class A extends core::Object {
|
|
static field core::int staticFieldOfA;
|
|
field core::int fieldOfA;
|
|
constructor foo() → self::A
|
|
;
|
|
constructor bar(core::int fieldOfA) → self::A
|
|
;
|
|
}
|
|
class B<X extends core::Object?, Y extends core::Object> extends core::Object {
|
|
generic-covariant-impl field self::B::X% fieldOfB;
|
|
generic-covariant-impl field self::B::Y fieldOfB2;
|
|
constructor foo() → self::B<self::B::X%, self::B::Y>
|
|
;
|
|
constructor bar(self::B::X% fieldOfB, self::B::Y fieldOfB2) → self::B<self::B::X%, self::B::Y>
|
|
;
|
|
}
|
|
abstract class M extends core::Object /*isMixinDeclaration*/ {
|
|
static field core::int staticFieldOfM;
|
|
field core::int fieldOfM;
|
|
}
|
|
abstract class N<X extends core::Object?, Y extends core::Object> extends core::Object /*isMixinDeclaration*/ {
|
|
generic-covariant-impl field self::N::X% fieldOfN;
|
|
generic-covariant-impl field self::N::Y fieldOfN2;
|
|
}
|
|
class C<X extends core::Object?, Y extends core::Object> extends core::Object {
|
|
static field core::int? staticFieldOfX;
|
|
static field core::int staticFieldOfXInitialized;
|
|
generic-covariant-impl field self::C::X? fieldOfX;
|
|
field core::int? fieldOfX2;
|
|
field dynamic fieldOfX3;
|
|
field Null fieldOfX4;
|
|
field () →? core::int fieldOfX5;
|
|
generic-covariant-impl field self::C::Y? fieldOfX6;
|
|
late static field core::int lateStaticFieldOfC;
|
|
late field core::int fieldOfC7;
|
|
late generic-covariant-impl field self::C::X% fieldOfC8;
|
|
late generic-covariant-impl field self::C::Y fieldOfC9;
|
|
field core::int fieldOfC10;
|
|
constructor foo(core::int fieldOfC10) → self::C<self::C::X%, self::C::Y>
|
|
;
|
|
constructor bar(core::int fieldOfC10) → self::C<self::C::X%, self::C::Y>
|
|
;
|
|
}
|
|
abstract class L<X extends core::Object?, Y extends core::Object> extends core::Object /*isMixinDeclaration*/ {
|
|
static field core::int? staticFieldOfL;
|
|
static field core::int staticFieldOfLInitialized;
|
|
generic-covariant-impl field self::L::X? fieldOfL;
|
|
field core::int? fieldOfL2;
|
|
field dynamic fieldOfL3;
|
|
field Null fieldOfL4;
|
|
field () →? core::int fieldOfL5;
|
|
generic-covariant-impl field self::L::Y? fieldOfL6;
|
|
late static field core::int lateStaticFieldOfM;
|
|
late field core::int fieldOfM7;
|
|
late generic-covariant-impl field self::L::X% fieldOfM8;
|
|
late generic-covariant-impl field self::L::Y fieldOfM9;
|
|
}
|
|
extension P on self::Foo {
|
|
static field staticFieldOfE = self::P|staticFieldOfE;
|
|
}
|
|
extension Q on self::Foo {
|
|
static field staticFieldOfQ = self::Q|staticFieldOfQ;
|
|
static field lateStaticFieldOfQ = self::Q|lateStaticFieldOfQ;
|
|
static field staticFieldOfQInitialized = self::Q|staticFieldOfQInitialized;
|
|
}
|
|
static field core::int topLevelField;
|
|
static field core::int P|staticFieldOfE;
|
|
static field core::int? nullableTopLevelField;
|
|
late static field core::int lateTopLevelField;
|
|
static field core::int topLevelFieldWithInitializer;
|
|
static field core::int? Q|staticFieldOfQ;
|
|
late static field core::int Q|lateStaticFieldOfQ;
|
|
static field core::int Q|staticFieldOfQInitialized;
|
|
static method main() → dynamic
|
|
;
|