In the beginning “C” was considered unsuitable for safety critical and safety related systems, however, it was so used…

In 1998, as a response to this situation, MISRA produced MISRA C, a set of guidelines to aid the development of safety related systems in “C” in the automotive world. Since then, MISRA C has been adopted by the wider embedded systems community and has become the dominant, international coding guidelines for the use of “C” in critical systems. The MISRA C guidelines are widely accepted as fulfilling the requirements for a language subset as required by both the 1994 MISRA Development guidelines for vehicle based software and IEC 61508.

Things move on, and now C++ is in the position once held by “C”; many people believe that it should not be used for critical systems, but its use within the field is growing and that growth is without a common set of guidelines. MISRA has recently completed work on the production of a set of guidelines for the use of C++ in critical systems, the output of which will be a set of guidelines similar to those that were produced for “C”.
The document, known as MISRA C++ Guidelines for the use of the C++ language in critical systems, was published and officially launched on 5 June 2008.