Read accesses are now only treated as persistent
side effects if they are syntactically volatile.
This affects rules 13.1, 13.2,
13.5, and 14.2.

Fixed check for-loop-condition-sideeffect
for the case when the third expression of a for-loop is missing.
This affects rule 14.2.

Fixed check side-effect-in-initializer-list
for initializer lists with a single element.
This affects rule 13.1.

The check evaluation-order for rule 13.2
is now also performed in initializer expressions.

The check function-return-type has been moved
from rule 8.2 to rule 8.1.

Fixed false alarm about violation of rule 6.2
when using the _Bool type.

Fixed false alarms about violation of rule 13.3
when performing the check unary-assign-detachment
in combination with volatile variables.

The checks for rules 11.1 and 11.4 have been improved
to also cover implicit conversions.

Both rule sets

The checks for the MISRA-C:2004 rules 11.4 and 11.5
and for the MISRA-C:2012 rules 11.3, 11.6,
11.7, and 11.8 have been extended
to cover implicit conversions.

Added the checks

pointer-qualifier-cast-implicit

inappropriate-pointer-cast-implicit

object-pointer-diff-cast-implicit

object-pointer-diff-cast-strict-implicit

Split the check

cast-pointer-void-arithmetic

⤙

cast-pointer-void-arithmeticcast-pointer-void-arithmetic-implicit

Added pointer-qualifier-cast-implicit
to rule 1.1.

Customer-specific rules

Fixed false alarm in rule X.A.4.8 for comment sequences of the form

/* comment1 *//* comment2
* comment2 continued */

Corrected documentation of rule X.A.3.9.

The rule X.A.4.3 can now be modified by a regular expression parameter.

Other improvements

Simplified the configuration of rule checks.
It is now easier to activate rules within deactivated sections
and to enable or disable categories of MISRA rules (Required, Advisory, etc.).

The XML report may now contain alarm messages without location information.
Currently the only alarms of this kind are violations of MISRA-C:2004 rule 21.1
and MISRA-C:2012 rule D.4.1 in cases where the rule check analysis-run fails.

With the option stop-parse-error-immediate=no,
parse errors no longer stop the rule checking on preprocessed
files completely. Instead it is performed on all successfully parsed files.