throw_in_finally
Use of '{0}' in 'finally' block.
Description
#The analyzer produces this diagnostic when a throw
statement is found inside a finally
block.
Example
#The following code produces this diagnostic because there is a throw
statement inside a finally
block:
dart
void f() {
try {
// ...
} catch (e) {
// ...
} finally {
throw 'error';
}
}
Common fixes
#Rewrite the code so that the throw
statement isn't inside a finally
block:
dart
void f() {
try {
// ...
} catch (e) {
// ...
}
throw 'error';
}
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.