...
Throwing unexpected exceptions disrupts control flow and can cause premature termination and denial of service.
Rule | Severity | Likelihood | Detectable | RepairableRemediation Cost | Priority | Level |
|---|---|---|---|---|---|---|
ERR55-CPP | Low | Likely | No | YesLow | P9P6 | L2 |
Automated Detection
Tool | Version | Checker | Description | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Astrée |
| unhandled-throw-noexcept | Partially checked | ||||||
| Axivion Bauhaus Suite |
| CertC++-ERR55 | |||||||
| CodeSonar |
| LANG.STRUCT.EXCP.THROW | Use of throw | ||||||
| Helix QAC |
| C++4035, C++4036, C++4632 | |||||||
| LDRA tool suite |
| 56 D | Partially implemented | ||||||
| Parasoft C/C++Test |
| CERT_CPP-ERR55-a | Where a function's declaration includes an exception-specification, the function shall only be capable of throwing exceptions of the indicated type(s) | ||||||
| Polyspace Bug Finder |
| CERT C++: ERR55-CPP | Checks for noexcept functions exiting with exception (rule fully covered) | ||||||
| RuleChecker |
| unhandled-throw-noexcept | Partially checked |
...