Page 1 of 1

MISRA C:2004 deviation permits reusable in MISRA C:2012

Posted: Thu May 02, 2019 4:39 pm
by andream
Within MISRA Compliance 2016 it was cited the possibility to utilize possible deviation permits. However, unless wrong, since 2016 only the MISRA C:2004 deviation permits have been published, while no official deviation permits for MISRA C:2012 (am I wrong?). If this is confirmed, in case a given MISRA C:2004 rule, which is substantially confirmed also in MISRA C:2012, is associated to a deviation permit, can this latter also be applied/utilized in for MISRA C:2012?

Re: MISRA C:2004 deviation permits reusable in MISRA C:2012

Posted: Fri Oct 11, 2019 3:01 pm
by misra-c
Compliance permits are basically templates that allow most of the paperwork required for a deviation use-case to be reused within multiple projects or organisations, allowing what can be a significant of work to be reused more easily.

For example, consider an organization that uses processors from a device family within a number of products that it supplies to its customers. It is likely that deviations will be needed when interacting with the peripherals of the processors, and the permit system allows the background work to identify the use-case, justify why non-compliance is required and demonstrate how code quality is maintained to be captured. This "template" can then be referenced from within the deviation documentation for any product that uses one of the processors that it covers.

Permits for use with MISRA C:2012 do not have to originate from MISRA, though MISRA is currently working on a set for MISRA C:2012 along the lines of those that have already been published for MISRA C:2004.

If you need permits for 2012 with the use-cases identified within the 2004 Permits, then it would be appropriate for you to produce your own permits (with Permit identifiers different to the ones in the 2004 permits document) based on the ones that have been published, though you will have to ensure that any undefined (etc) behaviours listed within the corresponding 2010 guidelines are adequately covered (they may or may not be the same for C90 and C99 code).