MISRA Discussion Forums

Full Version: Rule 16.8 and 14.7
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
In rule 16.8 is stated
All exit paths from a function...
whereas rule 14.7 states
A function shall have a single point of exit...

Is there a difference between "exit path" and "point of exit"? If not, should rule 16.8 be interpreted as beginning with "The single point of exit from a function..."?

Rule 14.7 requires that a function have a single point of exit. However if the rule is deviated, a function might have multiple points of exit. In this case, it is still important that each point of exit in a non-void function return a value. So, Rule 16.8 should be interpreted as applying to *all* points of exit even though this will usually be a single point of exit.

There is no significance in the use of the word "path" in rule 16.8. An exit path must pass through an exit point so the rule could also be interpreted as saying "All exit points from a function ... "