MISRA C is the most widely used set of coding guidelines for development in the C language. Although originally developed for automotive applications it is now broadly adopted across many different industry sectors. Members of the working group responsible for MISRA C:2012 have experience across a wide range of application domains including automotive but also aerospace, defence, medical and process control.
MISRA C:2012 includes support for C99, a version of the C language that was not widely implemented when MISRA C:2004 (MISRA C2) was published, while maintaining guidelines for C90. Other developments include some additional rules, and a wide range of improvements designed to make it easier for users to understand and use the guidelines. These are based on the wide experience gained from users of MISRA C2 around the world, and include:
- Elimination of areas of ambiguity to ensure consistent interpretation of the rule;
- Classification of rules as either “mandatory”, “required” or “advisory”;
- A more explicit recognition of “decidability”, the extent to which enforcement of a rule can be guaranteed;
- Improved rule definition providing a closer focus on dangerous constructs while avoiding unnecessary and irksome restrictions;
- Expanded examples and more extensive explanation of the rationale behind particular rules;
- Better explanation of why a user might want to deviate from (not comply with) a particular rule.
The QA·C Version 8.1 compliance module is available now.
Further details are available at www.programmingresearch.com.