Even after following MISRA Guidelines and Model adviser ran with zero errors POLYSPACE is throwing MISRA C 2012 violations

1 view (last 30 days)
  2 Comments
Walter Roberson
Walter Roberson on 17 Jan 2025
u8_retriesCounter hints that you are working with an 8 bit unsigned value. In C when you add 1 to the maximum 8 bit unsigned value, the value overflows back to 0 rather than saturating.
I am not currently convinced that qY is anything other than 8 bit unsigned; if so then it cannot be greater than 255.
Walter Roberson
Walter Roberson on 21 Jan 2025
Better code would be
if SMIT_EHL_LITE_b_DW.u8_retriesCounter >= 254U
qy = 255U;
else
qy = SMIT_EHL_LITE_b_DW.u8_retriesCounter + 1U;
end

Sign in to comment.

Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!