MISRA C++ 2008 Checklist

MISRA, the Motor Industry Software Reliability Association, provides world-leading best practice guidelines for the safe application of both embedded control systems and standalone software. The association is a collaboration between manufacturers, component suppliers and engineering consultancies which seeks to promote best practices in developing safety-related embedded electronic systems and other software-intensive applications.

The Imagix MISRA C++ 2008 checklist provides guided checklist review of the rules in the current version of the standard MISRA C++:2008. This review supports all rules except the rules in chapter 14 (Rule 14-[5678]-[123]), and is fully automated with the following exceptions. The ⚯ symbol indicates rules that have no automated steps but ask users to attach documentation. Compliance with rules identified by the ☑ symbol is not fully decidable so the corresponding checks require a user review step to eliminate potential false positives.

Software being reviewed with this checklist should be loaded into Imagix 4D with the -nosys option disabled and the -nosysbodies option enabled.

"MISRA", "MISRA C" and the triangle logo are registered trademarks owned by HORIBA MIRA Ltd, held on behalf of the MISRA Consortium.

MISRA C++ Rules

Rule 0-1-1Rule 0-1-2 ☑
Rule 0-1-3 Rule 0-1-4
Rule 0-1-5 Rule 0-1-6 ☑
Rule 0-1-7 Rule 0-1-8 ☑
Rule 0-1-9 ☑Rule 0-1-10 ☑
Rule 0-1-11 Rule 0-1-12
Rule 0-2-1 ☑Rule 0-3-1 ☑
Rule 0-3-2 Rule 0-4-1 ⚯
Rule 0-4-2 ⚯Rule 0-4-3 ⚯
Rule 1-0-1 ⚯Rule 1-0-2 ⚯
Rule 1-0-3 ⚯Rule 2-2-1 ⚯
Rule 2-3-1 Rule 2-5-1
Rule 2-7-1 Rule 2-7-2 ☑
Rule 2-7-3 ☑Rule 2-10-1
Rule 2-10-2 Rule 2-10-3
Rule 2-10-4 Rule 2-10-5
Rule 2-10-6 Rule 2-13-1
Rule 2-13-2 Rule 2-13-3
Rule 2-13-4 Rule 2-13-5
Rule 3-1-1 Rule 3-1-2
Rule 3-1-3 Rule 3-2-1
Rule 3-2-2 Rule 3-2-3
Rule 3-2-4 Rule 3-3-1
Rule 3-3-2 Rule 3-4-1
Rule 3-9-1 Rule 3-9-2
Rule 3-9-3 Rule 4-5-1
Rule 4-5-2 Rule 4-5-3
Rule 4-10-1 Rule 4-10-2
Rule 5-0-1 ☑Rule 5-0-2
Rule 5-0-3 Rule 5-0-4
Rule 5-0-5 Rule 5-0-6
Rule 5-0-7 Rule 5-0-8
Rule 5-0-9 Rule 5-0-10
Rule 5-0-11 Rule 5-0-12
Rule 5-0-13 Rule 5-0-14
Rule 5-0-15 Rule 5-0-16 ☑
Rule 5-0-17 ☑Rule 5-0-18 ☑
Rule 5-0-19 Rule 5-0-20
Rule 5-0-21 Rule 5-2-1
Rule 5-2-2 Rule 5-2-3
Rule 5-2-4 Rule 5-2-5
Rule 5-2-6 Rule 5-2-7
Rule 5-2-8 Rule 5-2-9
Rule 5-2-10 Rule 5-2-11
Rule 5-2-12 Rule 5-3-1
Rule 5-3-2 Rule 5-3-3
Rule 5-3-4 Rule 5-8-1 ☑
Rule 5-14-1 ☑Rule 5-17-1 ☑
Rule 5-18-1 Rule 5-19-1
Rule 6-2-1 Rule 6-2-2
Rule 6-2-3 Rule 6-3-1
Rule 6-4-1 Rule 6-4-2
Rule 6-4-3 Rule 6-4-4
Rule 6-4-5 Rule 6-4-6
Rule 6-4-7 Rule 6-4-8
Rule 6-5-1 Rule 6-5-2
Rule 6-5-3 ☑Rule 6-5-4
Rule 6-5-5 ☑Rule 6-5-6
Rule 6-6-1 Rule 6-6-2
Rule 6-6-3 Rule 6-6-4
Rule 6-6-5 Rule 7-1-1
Rule 7-1-2 ☑Rule 7-2-1 ☑
Rule 7-3-1 Rule 7-3-2
Rule 7-3-3 Rule 7-3-4
Rule 7-3-5 Rule 7-3-6
Rule 7-4-1 ⚯Rule 7-4-2
Rule 7-4-3 Rule 7-5-1
Rule 7-5-2 ☑Rule 7-5-3
Rule 7-5-4 ☑Rule 8-0-1
Rule 8-3-1 Rule 8-4-1
Rule 8-4-2 Rule 8-4-3
Rule 8-4-4 Rule 8-5-1
Rule 8-5-2 Rule 8-5-3
Rule 9-3-1 Rule 9-3-2
Rule 9-3-3 Rule 9-5-1
Rule 9-6-1 ⚯Rule 9-6-2
Rule 9-6-3 Rule 9-6-4
Rule 10-1-1 Rule 10-1-2
Rule 10-1-3 Rule 10-2-1
Rule 10-3-1 Rule 10-3-2
Rule 10-3-3 Rule 11-0-1
Rule 12-1-1 Rule 12-1-2
Rule 12-1-3 Rule 12-8-1
Rule 12-8-2 Rule 15-0-1
Rule 15-0-2 Rule 15-0-3
Rule 15-1-1 ☑Rule 15-1-2
Rule 15-1-3 Rule 15-3-1 ☑
Rule 15-3-2 Rule 15-3-3
Rule 15-3-4 ☑Rule 15-3-5
Rule 15-3-6 Rule 15-3-7
Rule 15-4-1 Rule 15-5-1 ☑
Rule 15-5-2 Rule 15-5-3
Rule 16-0-1 Rule 16-0-2
Rule 16-0-3 Rule 16-0-4
Rule 16-0-5 Rule 16-0-6
Rule 16-0-7 Rule 16-0-8
Rule 16-1-1 Rule 16-1-2
Rule 16-2-1 Rule 16-2-2
Rule 16-2-3 Rule 16-2-4
Rule 16-2-5 Rule 16-2-6
Rule 16-3-1 Rule 16-3-2
Rule 16-6-1 ⚯Rule 17-0-1
Rule 17-0-2 Rule 17-0-3
Rule 17-0-4 ⚯Rule 17-0-5
Rule 18-0-1 Rule 18-0-2
Rule 18-0-3 Rule 18-0-4
Rule 18-0-5 Rule 18-2-1
Rule 18-4-1 Rule 18-7-1
Rule 19-3-1 Rule 27-0-1
Rule 0-1-1Rule 3-2-4 Rule 5-2-12 Rule 7-4-3 Rule 15-3-4 ☑
Rule 0-1-2 ☑Rule 3-3-1 Rule 5-3-1 Rule 7-5-1 Rule 15-3-5
Rule 0-1-3 Rule 3-3-2 Rule 5-3-2 Rule 7-5-2 ☑Rule 15-3-6
Rule 0-1-4 Rule 3-4-1 Rule 5-3-3 Rule 7-5-3 Rule 15-3-7
Rule 0-1-5 Rule 3-9-1 Rule 5-3-4 Rule 7-5-4 ☑Rule 15-4-1
Rule 0-1-6 ☑Rule 3-9-2 Rule 5-8-1 ☑Rule 8-0-1 Rule 15-5-1 ☑
Rule 0-1-7 Rule 3-9-3 Rule 5-14-1 ☑Rule 8-3-1 Rule 15-5-2
Rule 0-1-8 ☑Rule 4-5-1 Rule 5-17-1 ☑Rule 8-4-1 Rule 15-5-3
Rule 0-1-9 ☑Rule 4-5-2 Rule 5-18-1 Rule 8-4-2 Rule 16-0-1
Rule 0-1-10 ☑Rule 4-5-3 Rule 5-19-1 Rule 8-4-3 Rule 16-0-2
Rule 0-1-11 Rule 4-10-1 Rule 6-2-1 Rule 8-4-4 Rule 16-0-3
Rule 0-1-12 Rule 4-10-2 Rule 6-2-2 Rule 8-5-1 Rule 16-0-4
Rule 0-2-1 ☑Rule 5-0-1 ☑Rule 6-2-3 Rule 8-5-2 Rule 16-0-5
Rule 0-3-1 ☑Rule 5-0-2 Rule 6-3-1 Rule 8-5-3 Rule 16-0-6
Rule 0-3-2 Rule 5-0-3 Rule 6-4-1 Rule 9-3-1 Rule 16-0-7
Rule 0-4-1 ⚯Rule 5-0-4 Rule 6-4-2 Rule 9-3-2 Rule 16-0-8
Rule 0-4-2 ⚯Rule 5-0-5 Rule 6-4-3 Rule 9-3-3 Rule 16-1-1
Rule 0-4-3 ⚯Rule 5-0-6 Rule 6-4-4 Rule 9-5-1 Rule 16-1-2
Rule 1-0-1 ⚯Rule 5-0-7 Rule 6-4-5 Rule 9-6-1 ⚯Rule 16-2-1
Rule 1-0-2 ⚯Rule 5-0-8 Rule 6-4-6 Rule 9-6-2 Rule 16-2-2
Rule 1-0-3 ⚯Rule 5-0-9 Rule 6-4-7 Rule 9-6-3 Rule 16-2-3
Rule 2-2-1 ⚯Rule 5-0-10 Rule 6-4-8 Rule 9-6-4 Rule 16-2-4
Rule 2-3-1 Rule 5-0-11 Rule 6-5-1 Rule 10-1-1 Rule 16-2-5
Rule 2-5-1 Rule 5-0-12 Rule 6-5-2 Rule 10-1-2 Rule 16-2-6
Rule 2-7-1 Rule 5-0-13 Rule 6-5-3 ☑Rule 10-1-3 Rule 16-3-1
Rule 2-7-2 ☑Rule 5-0-14 Rule 6-5-4 Rule 10-2-1 Rule 16-3-2
Rule 2-7-3 ☑Rule 5-0-15 Rule 6-5-5 ☑Rule 10-3-1 Rule 16-6-1 ⚯
Rule 2-10-1 Rule 5-0-16 ☑Rule 6-5-6 Rule 10-3-2 Rule 17-0-1
Rule 2-10-2 Rule 5-0-17 ☑Rule 6-6-1 Rule 10-3-3 Rule 17-0-2
Rule 2-10-3 Rule 5-0-18 ☑Rule 6-6-2 Rule 11-0-1 Rule 17-0-3
Rule 2-10-4 Rule 5-0-19 Rule 6-6-3 Rule 12-1-1 Rule 17-0-4 ⚯
Rule 2-10-5 Rule 5-0-20 Rule 6-6-4 Rule 12-1-2 Rule 17-0-5
Rule 2-10-6 Rule 5-0-21 Rule 6-6-5 Rule 12-1-3 Rule 18-0-1
Rule 2-13-1 Rule 5-2-1 Rule 7-1-1 Rule 12-8-1 Rule 18-0-2
Rule 2-13-2 Rule 5-2-2 Rule 7-1-2 ☑Rule 12-8-2 Rule 18-0-3
Rule 2-13-3 Rule 5-2-3 Rule 7-2-1 ☑Rule 15-0-1 Rule 18-0-4
Rule 2-13-4 Rule 5-2-4 Rule 7-3-1 Rule 15-0-2 Rule 18-0-5
Rule 2-13-5 Rule 5-2-5 Rule 7-3-2 Rule 15-0-3 Rule 18-2-1
Rule 3-1-1 Rule 5-2-6 Rule 7-3-3 Rule 15-1-1 ☑Rule 18-4-1
Rule 3-1-2 Rule 5-2-7 Rule 7-3-4 Rule 15-1-2 Rule 18-7-1
Rule 3-1-3 Rule 5-2-8 Rule 7-3-5 Rule 15-1-3 Rule 19-3-1
Rule 3-2-1 Rule 5-2-9 Rule 7-3-6 Rule 15-3-1 ☑Rule 27-0-1
Rule 3-2-2 Rule 5-2-10 Rule 7-4-1 ⚯Rule 15-3-2
Rule 3-2-3 Rule 5-2-11 Rule 7-4-2 Rule 15-3-3