MISRA Compliance ๐Ÿ”—

MISRA C is a widely accepted model for best practices used by automotive, telecom, aerospace, medical, and other critical industries. Charisma honors all Mandatory, Required, and Advisory rules defined by MISRA C:2012 and its amendments.

Conformance to most MISRA rules is verified with static analysis tools. If you believe there is a MISRA violation and/or an inaccuracy in the compliance table, then please report it here.

Compliance Summary Table ๐Ÿ”—

The MISRA C:2012 rule texts cannot be freely distributed therefore the compliance summary table lists the rule number, but omits the description. It is assumed the reader has access to the MISRA C:2012 standard and can cross-reference the rule numbers with the standard.

Click here to view a tool-generated MISRA compliance summary table.

Implementation ๐Ÿ”—

Directive Category Compliance
D1.1 Required Compliant (manually verified)

Compilation and Build ๐Ÿ”—

Directive Category Compliance
D2.1 Required Compliant (verified with GCC, Clang, and MSVC)

Requirements Traceability ๐Ÿ”—

Directive Category Compliance
D3.1 Required Compliant (manually verified)

Code Design ๐Ÿ”—

Directive Category Compliance
D4.1 Required Compliant (manually verified)
D4.2 Advisory Compliant (manually verified)
D4.3 Required Compliant
D4.4 Advisory Compliant
D4.5 Advisory Compliant
D4.6 Advisory Compliant
D4.7 Required Compliant (manually verified)
D4.8 Advisory Compliant (manually verified)
D4.9 Advisory Compliant
D4.10 Required Compliant (manually verified)
D4.11 Required Compliant (verified by unit tests)
D4.12 Required Compliant (manually verified)
D4.13 Advisory Compliant (manually verified)

Standard C Environment ๐Ÿ”—

Rule Category Compliance
1.1 Required Compliant
1.2 Advisory Compliant
1.3 Required Compliant
1.4 Required Compliant
1.5 Required Compliant

Unused Code ๐Ÿ”—

Rule Category Compliance
2.1 Required Compliant
2.2 Required Compliant
2.3 Advisory Compliant
2.4 Advisory Compliant
2.5 Advisory Compliant
2.6 Advisory Compliant
2.7 Advisory Compliant
2.8 Advisory Compliant

Comments ๐Ÿ”—

Rule Category Compliance
3.1 Required Compliant
3.2 Required Compliant

Character Sets and Lexical Conventions ๐Ÿ”—

Rule Category Compliance
4.1 Required Compliant
4.2 Advisory Compliant

Identifiers ๐Ÿ”—

Rule Category Compliance
5.1 Required Compliant
5.2 Required Compliant
5.3 Required Compliant
5.4 Required Compliant
5.5 Required Compliant
5.6 Required Compliant
5.7 Required Compliant
5.8 Required Compliant
5.9 Advisory Compliant

Types ๐Ÿ”—

Rule Category Compliance
6.1 Required Compliant
6.2 Required Compliant
6.3 Required Compliant

Literals and Constants ๐Ÿ”—

Rule Category Compliance
7.1 Required Compliant
7.2 Required Compliant
7.3 Required Compliant
7.4 Required Compliant
7.5 Mandatory Compliant
7.6 Required Compliant

Declarations and Definitions ๐Ÿ”—

Rule Category Compliance
8.1 Required Compliant
8.2 Required Compliant
8.3 Required Compliant
8.4 Required Compliant
8.5 Required Compliant
8.6 Required Compliant
8.7 Advisory Compliant
8.8 Required Compliant
8.9 Advisory Compliant
8.10 Required Compliant
8.11 Advisory Compliant
8.12 Required Compliant
8.13 Advisory Compliant
8.14 Required Compliant
8.15 Required Compliant
8.16 Advisory Compliant
8.17 Advisory Compliant

Initialization ๐Ÿ”—

Rule Category Compliance
9.1 Mandatory Compliant
9.2 Required Compliant
9.3 Required Compliant
9.4 Required Compliant
9.5 Required Compliant
9.6 Required Compliant
9.7 Mandatory Compliant

The Essential Type Modal ๐Ÿ”—

Rule Category Compliance
10.1 Required Compliant
10.2 Required Compliant
10.3 Required Compliant
10.4 Required Compliant
10.5 Advisory Compliant
10.6 Required Compliant
10.7 Required Compliant
10.8 Required Compliant

Pointer Type Conversion ๐Ÿ”—

Rule Category Compliance
11.1 Required Compliant
11.2 Required Compliant
11.3 Required Compliant
11.4 Advisory Compliant
11.5 Advisory Compliant
11.6 Required Compliant
11.7 Required Compliant
11.8 Required Compliant
11.9 Required Compliant
11.10 Required Compliant

Expressions ๐Ÿ”—

Rule Category Compliance
12.1 Advisory Compliant
12.2 Required Compliant
12.3 Advisory Compliant
12.4 Advisory Compliant
12.5 Mandatory Compliant
12.6 Required Compliant

Side Effects ๐Ÿ”—

Rule Category Compliance
13.1 Required Compliant
13.2 Required Compliant
13.3 Advisory Compliant
13.4 Advisory Compliant
13.5 Required Compliant
13.6 Mandatory Compliant

Control Statement Expressions ๐Ÿ”—

Rule Category Compliance
14.1 Required Compliant
14.2 Required Compliant
14.3 Required Compliant
14.4 Required Compliant

Control Flow ๐Ÿ”—

Rule Category Compliance
15.1 Advisory Compliant
15.2 Required Compliant
15.3 Required Compliant
15.4 Advisory Compliant
15.5 Advisory Compliant
15.6 Required Compliant
15.7 Required Compliant

Switch Statements ๐Ÿ”—

Rule Category Compliance
16.1 Required Compliant
16.2 Required Compliant
16.3 Required Compliant
16.4 Required Compliant
16.5 Required Compliant
16.6 Required Compliant
16.7 Required Compliant

Functions ๐Ÿ”—

Rule Category Compliance
17.1 Required Compliant
17.2 Required Compliant
17.3 Mandatory Compliant
17.4 Mandatory Compliant
17.5 Advisory Compliant
17.6 Mandatory Compliant
17.7 Required Compliant
17.8 Advisory Compliant
17.9 Mandatory Compliant
17.10 Required Compliant
17.11 Advisory Compliant
17.12 Advisory Compliant
17.13 Required Compliant

Pointers and Arrays ๐Ÿ”—

Rule Category Compliance
18.1 Required Compliant
18.2 Required Compliant
18.3 Required Compliant
18.4 Advisory Compliant
18.5 Advisory Compliant
18.6 Required Compliant
18.7 Required Compliant
18.8 Required Compliant
18.9 Required Compliant
18.10 Mandatory Compliant

Overlapping Storage ๐Ÿ”—

Rule Category Compliance
19.1 Mandatory Compliant
19.2 Advisory Compliant

Preprocessing Directives ๐Ÿ”—

Rule Category Compliance
20.1 Advisory Compliant
20.2 Required Compliant
20.3 Required Compliant
20.4 Required Compliant
20.5 Advisory Compliant
20.6 Required Compliant
20.7 Required Compliant
20.8 Required Compliant
20.9 Required Compliant
20.10 Advisory Compliant
20.11 Required Compliant
20.12 Required Compliant
20.13 Required Compliant
20.14 Required Compliant

Standard Libraries ๐Ÿ”—

Rule Category Compliance
21.1 Required Compliant
21.2 Required Compliant
21.3 Required Compliant
21.4 Required Compliant
21.5 Required Compliant
21.6 Required Compliant
21.7 Required Compliant
21.8 Required Compliant
21.9 Required Compliant
21.10 Required Compliant
21.11 Required Compliant
21.12 Advisory Compliant
21.13 Mandatory Compliant
21.14 Required Compliant
21.15 Required Compliant
21.16 Required Compliant
21.17 Required Compliant
21.18 Mandatory Compliant
21.19 Mandatory Compliant
21.20 Mandatory Compliant
21.21 Required Compliant
21.22 Mandatory Compliant
21.23 Required Compliant
21.24 Required Compliant
21.25 Required Compliant
21.26 Required Compliant

Resources ๐Ÿ”—

Rule Category Compliance
22.1 Required Compliant
22.2 Mandatory Compliant
22.3 Required Compliant
22.4 Mandatory Compliant
22.5 Mandatory Compliant
22.6 Mandatory Compliant
22.7 Required Compliant
22.8 Required Compliant
22.9 Required Compliant
22.10 Required Compliant
22.11 Required Compliant
22.12 Mandatory Compliant
22.13 Required Compliant
22.14 Mandatory Compliant
22.15 Required Compliant
22.16 Required Compliant
22.17 Required Compliant
22.18 Required Compliant
22.19 Required Compliant
22.20 Mandatory Compliant

Generic Selections ๐Ÿ”—

Rule Category Compliance
23.1 Advisory Compliant
23.2 Required Compliant
23.3 Advisory Compliant
23.4 Required Compliant
23.5 Advisory Compliant
23.6 Required Compliant
23.7 Advisory Compliant
23.8 Required Compliant