Files
sdk/pkg/front_end/testcases/nnbd/abstract_field_errors.dart
T
Johnni Winther aa376d1520 [cfe] Check types and initialization on extensions, extension members and factories
Closes #43211

Change-Id: I45bb0ee59bbdc4fdd63861e6e434d95bdcb5791a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/166481
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2020-10-08 16:19:05 +00:00

62 lines
1.5 KiB
Dart

// Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
abstract int topLevelField;
abstract final int finalTopLevelField = 0;
abstract const int constField = 0;
abstract class A {
abstract int fieldWithInitializer = 0;
abstract int initializedField1;
abstract int initializedField2;
A(this.initializedField1) : this.initializedField2 = 0;
abstract static int staticField;
abstract static final int finalStaticField;
abstract late int lateInstanceField;
external abstract int externalInstanceField1;
external abstract final int externalFinalInstanceField1;
external abstract covariant num externalCovariantInstanceField1;
abstract external int externalInstanceField2;
abstract external final int externalFinalInstanceField2;
abstract external covariant num externalCovariantInstanceField2;
external abstract late int externalLateInstanceField;
}
mixin B {
abstract static int staticField;
abstract static final int finalStaticField;
external abstract int externalInstanceField;
external abstract final int externalFinalInstanceField;
external abstract covariant num externalCovariantInstanceField;
}
extension Extension on A {
abstract int extensionInstanceField;
abstract final int finalExtensionInstanceField;
abstract static int extensionStaticField = 0;
abstract static final int finalExtensionStaticField = 0;
}
main() {}