| Category | Count | Can be deviated? | Typical Coverage |
|---|---|---|---|
| Mandatory rules | 10 | No — violations must be fixed | Memory safety, undefined behaviour |
| Required rules | ~130 | Yes — with documented deviation | Language subset, type safety, control flow |
| Advisory rules | ~16 | Yes — with documented deviation | Style, maintainability |
| Directives | ~17 | Yes — with justification | Process requirements (documentation, testing) |
💡 MISRA Compliance Model
MISRA compliance is not binary pass/fail. A project is compliant if: all Mandatory rules are satisfied (no deviations); all Required and Advisory violations have formal documented deviations with justification and risk assessment; static analysis tools verify compliance; and a qualified reviewer signs off. A common misconception is that a Polyspace or PC-lint warning = MISRA violation — static analysis can produce false positives and cannot check all rules; code review is also required.