unnecessary_final
Local variables should not be marked as 'final'.
Description
#The analyzer produces this diagnostic when a local variable is marked as being final
.
Example
#The following code produces this diagnostic because the local variable c
is marked as being final
:
dart
void f(int a, int b) {
final c = a + b;
print(c);
}
Common fixes
#If the variable doesn't have a type annotation, then replace the final
with var
:
dart
void f(int a, int b) {
var c = a + b;
print(c);
}
If the variable has a type annotation, then remove the final
modifier:
dart
void f(int a, int b) {
int c = a + b;
print(c);
}
Unless stated otherwise, the documentation on this site reflects Dart 3.7.3. Page last updated on 2025-05-08. View source or report an issue.