Can Polyspace prove recursion to be impossible?
显示 更早的评论
We have a statemachine implementation in C for an embedded automotive product, using a table-approach. The table contains pointers to functions handling the transition and during actions for states. As these functions can call the table again, there is a chance on recursion (reported by another 3rd party static code analysis tool).
From the code design we 'know' it is not possible to have recursion, but we need proof for that as we're following ISO26262-6 (ASIL-C) and MISRA-2012 rules. From these norms, recursion in the implementation is not allowed.
Can polyspace bugfinder/codeprover report on the recursion of this tabular approached state machine implementation? If yes, how?
回答(1 个)
Anirban
2018-12-13
0 个投票
Polyspace can detect use of recursion. There are many ways you can turn on recursion detection:
- Enable checkers for MISRA C:2012 Rule 17.2, MISRA C:2004 Rule 16.2 or JSF Rule 119.
- Compute the metric 'Number of recursions'.
类别
在 帮助中心 和 File Exchange 中查找有关 Run Settings 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!