1bc9fba660
Change-Id: Ia2139e3e87a4b141b5e0df41541bab5f74acd5dc Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/122760 Commit-Queue: Johnni Winther <johnniwinther@google.com> Reviewed-by: Jens Johansen <jensj@google.com>
69 lines
1.7 KiB
Dart
69 lines
1.7 KiB
Dart
// Copyright (c) 2019, 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.
|
|
|
|
late int lateTopLevelField;
|
|
late final int lateFinalTopLevelField;
|
|
late final int lateFinalTopLevelFieldWithInit = 0;
|
|
|
|
class Class {
|
|
late int lateInstanceField;
|
|
late final int lateFinalInstanceField1;
|
|
late final int lateFinalInstanceField2;
|
|
late final int lateFinalInstanceFieldWithInit = 0;
|
|
|
|
late Class lateInstanceFieldThis = this;
|
|
late final Class lateFinalInstanceFieldThis = this;
|
|
|
|
static late int lateStaticField;
|
|
static late final int lateFinalStaticField1;
|
|
static late final int lateFinalStaticField2;
|
|
static late final int lateFinalStaticFieldWithInit = 0;
|
|
|
|
method() {
|
|
late int lateVariable;
|
|
late final int lateFinalVariable;
|
|
late final int lateFinalVariableWithInit = 0;
|
|
|
|
lateVariable = 0;
|
|
lateFinalVariable = 0;
|
|
|
|
lateInstanceField = 0;
|
|
lateFinalInstanceField1 = 0;
|
|
|
|
lateStaticField = 0;
|
|
lateFinalStaticField1 = 0;
|
|
}
|
|
|
|
methodWithErrors() {
|
|
late final int lateFinalVariableWithInit = 0;
|
|
lateFinalVariableWithInit = 0;
|
|
|
|
lateFinalInstanceFieldWithInit = 0;
|
|
|
|
lateFinalStaticFieldWithInit = 0;
|
|
}
|
|
}
|
|
|
|
main() {}
|
|
|
|
noErrors() {
|
|
lateTopLevelField = 0;
|
|
lateFinalTopLevelField = 0;
|
|
var c1 = new Class();
|
|
c1.method();
|
|
var c2 = new Class();
|
|
c2.lateInstanceField = 0;
|
|
c2.lateFinalInstanceField2 = 0;
|
|
Class.lateStaticField = 0;
|
|
Class.lateFinalStaticField2 = 0;
|
|
}
|
|
|
|
errors() {
|
|
lateFinalTopLevelFieldWithInit = 0;
|
|
var c = new Class();
|
|
c.lateFinalInstanceFieldWithInit = 0;
|
|
c.methodWithErrors();
|
|
Class.lateFinalStaticFieldWithInit = 0;
|
|
}
|