MISRA C++ 2008 チェックリスト
MISRA(Motor Industry Software Reliability Association)は、組込み制御システムとスタンドアロンソフトウェアの安全なアプリケーションのために、世界をリードするベストプラクティス・ガイドラインを提供しています。同協会は、メーカー、部品サプライヤ、エンジニアリングコンサルタントの協力により、安全関連の組込み電子システムおよびその他のソフトウェア集約型アプリケーションの開発におけるベストプラクティスの推進を目指しています。
Imagix MISRA C++ 2008チェックリストは、MISRA C++:2008規約の現行バージョンに含まれるルールのガイド付きチェックリストレビューを提供します。このレビューは、第14章のルール(ルール14-[5678]-[123])を除くすべてのルールに対応しており、以下の例外を除いて完全に自動化されています。記号 ⚯ は、自動化された手順はないが、ユーザーに文書の添付を求める規則を示します。記号 ☑ で特定されるルールへの準拠は完全には決定できないため、対応するチェックでは、誤検出の可能性を排除するためにユーザーレビューのステップが必要となります。
このチェックリストでレビューするソフトウェアは、-nosys オプションを無効にし、-nosysbodies オプションを有効にして Imagix 4D にロードする必要があります。
"MISRA", "MISRA C" and the triangle logo are registered trademarks owned by HORIBA MIRA Ltd, held on behalf of the MISRA Consortium.
MISRA C++ルール
| Rule 0-1-1 | Rule 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-1 | Rule 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 | |
|