Files
sdk/tests/language/final/variable_assignment_test.dart
T
Robert Nystrom a7e3c5507f Migrate language_2/final to NNBD.
Change-Id: I20328968f057658d4cb25e2a51a02745af3af211
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/142885
Commit-Queue: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Srujan Gaddam <srujzs@google.com>
Auto-Submit: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Srujan Gaddam <srujzs@google.com>
2020-04-09 00:00:26 +00:00

26 lines
784 B
Dart

// Copyright (c) 2012, 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.
// Test to make sure we catch assignments to final local variables.
main() {
final x = 30;
x = 0;
//^
// [analyzer] STATIC_WARNING.ASSIGNMENT_TO_FINAL_LOCAL
// [cfe] Can't assign to the final variable 'x'.
x += 1;
//^
// [analyzer] STATIC_WARNING.ASSIGNMENT_TO_FINAL_LOCAL
// [cfe] Can't assign to the final variable 'x'.
++x;
//^
// [analyzer] STATIC_WARNING.ASSIGNMENT_TO_FINAL_LOCAL
// [cfe] Can't assign to the final variable 'x'.
x++;
//^
// [analyzer] STATIC_WARNING.ASSIGNMENT_TO_FINAL_LOCAL
// [cfe] Can't assign to the final variable 'x'.
}