Files
sdk/tests/language/final/variable_assignment_test.dart
T
Robert Nystrom d50d8b67ba Format tests/language/f*.
Change-Id: Ib19a4e3cf90edd4c1496d6b467d172cd73e2f521
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/407100
Reviewed-by: Lasse Nielsen <lrn@google.com>
Auto-Submit: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Bob Nystrom <rnystrom@google.com>
2025-02-26 10:39:51 -08:00

26 lines
896 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;
// [error column 3, length 1]
// [analyzer] COMPILE_TIME_ERROR.ASSIGNMENT_TO_FINAL_LOCAL
// [cfe] Can't assign to the final variable 'x'.
x += 1;
// [error column 3, length 1]
// [analyzer] COMPILE_TIME_ERROR.ASSIGNMENT_TO_FINAL_LOCAL
// [cfe] Can't assign to the final variable 'x'.
++x;
//^
// [analyzer] COMPILE_TIME_ERROR.ASSIGNMENT_TO_FINAL_LOCAL
// [cfe] Can't assign to the final variable 'x'.
x++;
// [error column 3, length 1]
// [analyzer] COMPILE_TIME_ERROR.ASSIGNMENT_TO_FINAL_LOCAL
// [cfe] Can't assign to the final variable 'x'.
}