...
Abrupt completion of a finally
block masks any exceptions thrown inside the associated try
and catch
blocks.
Rule | Severity | Likelihood | Remediation Cost | Priority | Level |
---|---|---|---|---|---|
ERR04-J | Low | Probable | Medium | P4 | L3 |
Automated Detection
Tool | Version | Checker | Description |
---|
Coverity | 7.5 | PW.ABNORMAL_TERMINATION_ OF_FINALLY_BLOCK | Implemented | ||||
Parasoft Jtest |
|
CERT. |
ERR04.ARCF |
CERT. |
ERR04.ATSF | Avoid using 'return's inside 'finally blocks if thare are other 'return's inside the try-catch block Do not exit "finally" blocks abruptly | ||||||||
PVS-Studio |
| V6051 | |||||||
SonarQube |
| S1143 |
Jump statements should not occur in "finally" blocks |
Related Guidelines
Bibliography
Puzzle 36. Indecision | |
Section 8.2, "Managing Exceptions, The Vanishing Exception" | |
[JLS 2015] |
...
...