MISRA C++:2023 Rule 9.6.2
Description
Rule Definition
A goto
statement shall reference a label in a surrounding
block.
Rationale
Using a goto
statement to jump into nested blocks creates complex
control flow, which might cause developer confusion or unexpected results. To avoid
unexpected results, place the label the goto
statement is referring to in
the same block or in a block that encloses the goto
statement.
Polyspace Implementation
Polyspace® raises this defect when the goto
destination is in a
different block than the goto
statement. This defect is not raised if the
goto
destination is in a block enclosing the goto
statement.
Troubleshooting
If you expect a rule violation but Polyspace does not report it, see Diagnose Why Coding Standard Violations Do Not Appear as Expected.
Examples
Check Information
Group: Statements |
Category: Required |
Version History
Introduced in R2024b