Software test tools add support for MISRA C: 2012

July 22, 2014 // By Graham Prophet
With the aims of improve safety, and enhancing use of C in critical systems, Vector Software has announced that the VectorCAST software test solution now supports the MISRA C: 2012 (MISRA C3) standard. The new benchmark offers improvements to earlier versions, and extends support for the MISRA C: 2012 C99 version of the C language (ISO/IEC 9899:1999).

The VectorCAST software test environment is used in safety-critical applications that utilise the MISRA C standard, and the regulation is the most widely used set of coding guidelines for C language development. VectorCAST/Lint utilises the powerful Lint source code analysis engine from Gimpel Software, and is configured for checking the MISRA C standard. These standards recommend the use of a restricted subset of constructs for the C and C++ languages, with the goal being a safer and more maintainable use of the language. The VectorCAST/Lint tool supports MISRA regulations with these features:

  1. An easy-to-use GUI
  2. Support for MISRA C and C++
  3. Customisable reporting

Support for MISRA C: 2012 is part of Gimpel Software's ongoing commitment to embedded development and safety critical applications. Support for the standard was originally included in PC-lint and FlexeLint in 2001 and since then has been expanded to include newer versions of MISRA C and support for MISRA C++. The implementation of MISRA C: 2012 allows fine-grained control on a per-rule basis. This allows organisations to not only selectively choose which rules are enforced, but also to easily specify exceptions to individual rules for specific symbols, functions, macros, and arbitrary code regions to reflect the deviations employed on a particular project.

MISRA C: 2012 includes a number of improvements that help reduce the cost and complexity of compliance, while offering enhancements that assist in the consistent and safe use of C in safety-critical systems. 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 — and adheres to guidelines for C90. Originally developed for automotive applications, MISRA is now broadly adopted for aerospace, defence, medical and industrial control applications. The latest MISRA C standard includes additional rules, plus a number of improvements that promote the understanding and use of the guidelines. Based on MISRA C2 user experience, they include: