control_flow_in_finally
Use of '{0}' in a 'finally' clause.
Description
#
The analyzer produces this diagnostic when a finally clause contains a
return, break, or continue statement.
Example
#
The following code produces this diagnostic because there is a return
statement inside a finally block:
dart
int f() {
try {
return 1;
} catch (e) {
print(e);
} finally {
return 0;
}
}
Common fixes
#
If the statement isn't needed, then remove the statement, and remove the
finally clause if the block is empty:
dart
int f() {
try {
return 1;
} catch (e) {
print(e);
}
}
If the statement is needed, then move the statement outside the finally
block:
dart
int f() {
try {
return 1;
} catch (e) {
print(e);
}
return 0;
}