このリリースには、以下の拡張が含まれます。

リリース日: 2023年5月31日

Automotive Compliance Pack の拡張

  • MISRA C:2012 ルール セットが拡張され、MISRA C:2012 Amendment 4 に関する新規ルールの追加およびルールの更新が行われました。

さらに、MISRA C:2012 に Amendment 4 を含むすべての Amendment を統合した MISRA C:2023 が導入されたことに従って、"MISRA C 2012" ビルトイン テスト コンフィギュレーションが "MISRA C 2023 (MISRA C 2012)" に変更されました。このコンフィギュレーションには、Parasoft C/C++test が提供するすべての MISRA C:2023 / MISRA C:2012 および Amendment 4 ルールが含まれます。

注意: 互換性とコンプライアンス プロセスの一貫性を維持するため、ルールの識別子は変更されておらず、すべての MISRA C:2023 / MISRA C:2012 および Amendment 4 ルールには、継続して "MISRAC2012" という接頭辞が使用されます (例: "MISRAC2012-RULE_11_10-a")。

  • HIS Source Code Metrics コンフィギュレーションが拡張され、Number of paths (PATH) / METRICS-44 が追加されました。

静的解析の拡張

  • フロー解析エンジンのパフォーマンスが改善されました。
  • 静的解析ルールの精度に関して全般的な改善が行われました。
  • 新規コード解析ルールが追加され、より広くコンプライアンス規格がカバーされるようになりました。追加および更新されたルールの一覧は「新規ルール」、「更新されたルール」を参照してください。

プラットフォームのサポート

C/C++test は Windows Server 2022 をサポートするようになりました。 

サポート対象コンパイラ

以下のコンパイラがサポートされています。

コンパイラ名コンパイラ識別子
GNU GCC 12 for x86-64gcc_12-64
GNU GCC 12 for aarch64/arm64gcc_12-aarch64
GNU GCC 11 for aarch32/armgcc_11-aarch32
GNU GCC 10 for aarch32/armgcc_10-aarch32
GNU GCC 9 for aarch64/arm64gcc_9-aarch64
GNU GCC 9 for aarch32/armgcc_9-aarch32
GNU GCC 8 for aarch32/armgcc_8-aarch32
Hexagon 8.6hexagon-clang_8_6
WindRiver Clang/ARM 9.0wrclang_9_0-x86_64、wrclang_9_0-aarch32

さらに、Microsoft Visual C++ Compiler 17.4 のサポートが拡張されました。

コンパイラ」を参照してください。

テスト コンフィギュレーションの更新

MISRA C 2012 コンフィギュレーションが更新され、MISRA C 2023 (MISRA C 2012) に名前が変更されました。

以下のテスト コンフィギュレーションに新規ルールが追加されました。

  • AUTOSAR C++14 Coding Guidelines
  • Flow Analysis Aggressive
  • Flow Analysis Fast
  • Flow Analysis Standard
  • Global Analysis
  • High Integrity C++
  • HIS Source Code Metrics
  • Joint Strike Fighter
  • MISRA C 1998
  • MISRA C 2004
  • MISRA C 2012 > MISRA C 2023 (MISRA C 2012)
  • MISRA C++ 2008
  • Recommended Rules for FDA (C)
  • Recommended Rules for FDA (C++)
  • Recommended Rules
  • SEI CERT C Guidelines
  • SEI CERT C Rules
  • SEI CERT C++ Rules
  • Sutter-Alexandrescu

その他のアップデート

  •  Visual Studio IDE のダーク テーマで実行したときのルック & フィールが改善されました。 

サポートの非推奨および廃止

Team Server サポートの廃止

DTP 2022.1 で非推奨になった Team Server が廃止されました。チーム コンフィギュレーション、ルール、ルール マッピングがまだ DTP の Team Server に保存されている場合、共有の場所に移行してください。「Team Server から共有の場所へのテスト コンフィギュレーション、ルール、ルール マッピングの移行」を参照してください。

廃止されたプラットフォーム

次のプラットフォームのサポートは廃止されました。

  • Windows Server 2016

非推奨予定のコンパイラ

次のコンパイラのサポートは、将来のリリースで非推奨になる予定です。

  • Altium TASKING Vx-toolset for TriCore C/C++ Compiler 6.2
  • Clang 6.0
  • FR Family SOFTUNE C/C++ Compiler V6
  • Green Hills Software Compiler Native v. 5.0
  • Green Hills Software Compiler for ARM64 v. 2014_1.x
  • Green Hills Software Compiler for PPC v. 4.2
  • Green Hills Software Compiler for V850 v. 2014.1.x
  • Microsoft Visual C++ 14.0
  • Microsoft Visual C++ 14.0 (x64)
  • Renesas SH SERIES C/C++ Compiler V.9.04.xx
  • TI MSP430 C/C++ Compiler GNU GCC 6.x
  • TI TMS320C2000 C/C++ Compiler v16.9
  • Wind River GCC 4.8.x

非推奨のコンパイラ

次のコンパイラのサポートは非推奨であり、将来のリリースで削除される予定です。

  • Altium TASKING C compiler for 80C196 v. 6.0 r1
  • Clang 5.0
  • Freescale C/C++ Compiler v. 5.1 for Embedded ARM
  • Freescale CodeWarrior ANSI-C/cC++ Compiler 5.0.x for HC12
  • Freescale CodeWarrior C/C++ Compiler v. 6.0 for ColdFire
  • Green Hills Software Compiler for ARM v. 2014_1.x
  • Green Hills Software Compiler for PPC v. 4.0.x
  • Green Hills Software Compiler for V850 v. 2013.5.x
  • IAR Compiler for STM8 v. 1.4x

廃止されたコンパイラ

以下のコンパイラはサポートされなくなりました。

  • ARM Clang 6.6
  • ARM GCC 4.5
  • ARM RealView 4.1
  • ARM RealView 4.1 for uVision
  • Altium TASKING Vx-toolset for TriCore C/C++ Compiler 4.0
  • Altium TASKING Vx-toolset for TriCore C/C++ Compiler 6.0
  • Altium TASKING classic compiler for C166/ST10 v. 6.0
  • COSMIC Software 68HC08 C Cross Compiler V4.6.x
  • Clang 3.9
  • Clang 4.0
  • CodeSourcery Sourcery G++ Lite 2009q1-203
  • Embarcadero C++ Compiler 6.2
  • Embarcadero C++ Compiler 6.9
  • GNU GCC 4.0.x (x86)
  • GNU GCC 4.0.x (x86_64)
  • GNU GCC 4.1.x (x86)
  • GNU GCC 4.1.x (x86_64)
  • GNU GCC 4.2.x (x86)
  • GNU GCC 4.2.x (x86_64)
  • GNU GCC 4.3.x (x86)
  • GNU GCC 4.3.x (x86_64)
  • GNU GCC 4.4.x (x86)
  • GNU GCC 4.4.x (x86_64)
  • GNU GCC 4.5.x (x86)
  • GNU GCC 4.5.x (x86_64)
  • GNU GCC 4.6.x (x86)
  • GNU GCC 4.6.x (x86_64)
  • GNU GCC 4.7.x (x86)
  • GNU GCC 4.7.x (x86_64)
  • GNU GCC 4.8.x (x86)
  • GNU GCC 4.8.x (x86_64)
  • GNU GCC 4.9.x (x86)
  • GNU GCC 4.9.x (x86_64)
  • Green Hills Software Compiler Native v. 4.2
  • Green Hills Software Compiler for V850 v. 5.1.x
  • Green Hills Software Compiler for PPC v. 3.5
  • IAR Compiler for ARM v. 6.1x
  • IAR Compiler for ARM v. 6.3x
  • IAR Compiler for ARM v. 6.6x
  • IAR Compiler for ARM v. 6.7x
  • IAR Compiler for MSP430 v. 5.4x
  • Intel(R) C++ Compiler v 18.0
  • Keil C166 7.0
  • Keil C51 8.x
  • Microsoft Visual C++ 11.0
  • Microsoft Visual C++ 11.0 (x64)
  • Microsoft Visual C++ 12.0
  • Microsoft Visual C++ 12.0 (x64)
  • National Instruments LabWindows/CVI 2013 Clang C/C++ Compiler v2.9
  • National Instruments LabWindows/CVI 9.0
  • QNX GCC 4.2.x
  • QNX GCC 4.4.x
  • Renesas M16C/R8C C Compiler 5.4x
  • Renesas RX C/C++ Compiler 2.2x
  • Renesas SH SERIES C/C++ Compiler V.5.1x.x
  • Renesas SH SERIES C/C++ Compiler V.9.03.xx
  • TI ARM C/C++ Compiler v5.1.x
  • TI TMS320C2000 C/C++ Compiler v6.2
  • TI TMS320C6x C/C++ Compiler v7.3

削除されたテスト コンフィギュレーション

以下のテスト コンフィギュレーションは削除されました。

  • Run Altium TASKING CTC Application with Mem Monitoring - CrossView
  • Run Altium TASKING CTC Tests - CrossView

解決済みのバグおよび FR

バグ/FR ID

説明

CPP-39580

[static] MISRA2012-RULE-5_6 および MISRA2012-RULE-5_7 ルールはグローバル ルールであるべき

CPP-40072

[rulewizard] constexpr if のサポートを追加

CPP-42545

[static] CERT-C-FIO41: 既存のマッピングが一般的すぎる

CPP-42649

[static] AUTOSAR A2-10-5、MISRA2008 2-10-5、MISRA C 2012 Rule 5.8 および 5.9 のマッピングを改善する

CPP-43932

[static] HIS metric - number of paths (PATH)

CPP-44741

[engine] Constexpr c-tor は非定数式のコンテキストでのメンバー初期化を必要とする

CPP-44752

[static] CODSTA-145 (CERT_C-POS30-c) で、'\0' によって初期化されているバッファーを例外にする

CPP-44917

[static] CERT MEM02 のマッピングを改善する

CPP-45439

[static] AUTOSAR-A2_10_5_a は静的ローカル変数をチェックするべきではない

CPP-46011

[static] CERT-ERR33 および CERT-POS54 のマッピングを改善する

CPP-46408

[static] CERT_C-CON33-a: SECURITY-25 ルールの関数のリストを見直す

CPP-47128

[static] MISRAC2012-RULE_5_9-a がリンケージのないオブジェクトに対して違反を誤検出する

CPP-47470

[static] CODSTA-127 および CODSTA-127_b を拡張して配列型から整数型への変換を検出する

CPP-47508

[static] MISRA2008-5_0_10 ルールが MISRA C++ Rule 5-0-10 の例外に従っていない

CPP-47804

[static] CODSTA-203 は std::cout で使用されている文字列に対して違反を検出するべきではない

CPP-47863

[engine] 指示付きの初期化子でのキャストの復元が誤っている

CPP-48197

[静的] AUTOSAR A8-4-7 のマッピングを改善する

CPP-49197

[static] OOP-48 (AUTOSAR-M11_0_1-a) の POD の定義を改善する

CPP-49771

[静的] AUTOSAR A5-2-2 のマッピングを改善する

CPP-49849

[static] AUTOSAR A3-9-1: 文字に使用されるプレーンな char 型に対して違反をレポートしないことを検討する

CPP-49917

[静的] CERT_C-EXP36 のマッピングを改善する必要がある

CPP-50105

[static] AUTOSAR A2-3-1 で未定義の文字を表示する

CPP-50174

[静的] CERT_C-POS44 のマッピングを改善する

CPP-51175

[engine] edg.implicit_typename_enabled=true によるパース エラー

CPP-51288

[engine] error: qualified name is not allowed

CPP-51304

[engine] cpptestcc error: no instance of overloaded function "vfc::slerp" matches the argument list

CPP-51452

[rulewizard] _Static_assert の式を静的解析ルールで検出するべきである

CPP-51594

[compiler] GNU GCC 10 aarch32/arm のサポート

CPP-51687

[static] GLOBAL-UNUSEDTYPE (MISRA2008-0_1_5) が、使用されているエイリアスに対して違反を誤検出する

CPP-51753

[compiler] WindRiver Clang/ARM 9.0.1 および VxWorks 7.0 SR 640 for Linux (extended) のサポート

CPP-51767

[static] MISRA2004-11_3_a (AUTOSAR-M5_2_9-a) は uintptr_t および intptr_t 型を例外にするべきである

CPP-51773

[compiler] GNU GCC 11 aarch32/arm のサポート

CPP-51843

[compiler] 静的 asm プロシージャおよび 'rvct_5_0_uV' でパース エラー

CPP-51853

[static] テンプレート関数で変数が使用されている場合、MISRA2004-8_7 (AUTOSAR-M3_4_1-b) が違反を誤検出する

CPP-51854

[static] EXCEPT-17 (AUTOSAR-M15_3_6-a) がネストされた try-catch ブロックに対して違反を誤検出する

CPP-52158

[engine] CWC internal error: assertion failed at: "exprutil.c", line 17859 in alloc_expr_ctor_dynamic_init

CPP-52163

[compiler] TASKING-6.3 で '_packed_' 属性に対してパース エラー

CPP-52185

[static] MISRAC2012-RULE_2_1 のマッピングに BD-PB-UCMETH ルールを追加するべき

CPP-52188

[静的] CERT_C-EXP20 のマッピングを改善する

CPP-52196

[static] MISRAC2012-RULE_10_1-a (CODSTA-161_a) は、ポインターが論理演算子のオペランドである場合に違反を検出するべき

CPP-52212

[engine] Instrumentation error: final specifier on templated class not reconstructed

CPP-52222

[ide] C+test Professional によって開始される C+test Engine (Standard) に渡す build.id 値は、現在時刻ではなくセッション開始時刻を使用して計算するべき

CPP-52242

[static] CERT-MSC07_C および CERT-MSC12_C のマッピングを改善する

CPP-52250

[engine] CRTP C++ 技術のインストゥルメンテーション エラー

CPP-52260

[engine] テンプレート クラス特殊化のボディ外テンプレート メソッド定義のカバレッジを収集できない

CPP-52264

[static] PB-69 が python エラーをレポートする

CPP-52266

[static] CODSTA-CPP-92 (MISRA2008-10_2_1) が代入演算子に対して違反を誤検出する

CPP-52274

[rulewizard] Typedef がコンストラクターの呼び出しに使用されている場合に参照できない

CPP-52302

[compiler] iccarm レスポンス ファイル内の Windows 形式のパスが評価されるべきでない場合に評価されている

CPP-52322

[static] CERT-C INT10 のマッピングを改善する

CPP-52338

[static] GLOBAL-UNUSEDTYPE (MISRA2008-0_1_5) が、実際は使用されているエイリアスに対して違反を誤検出する

CPP-52344

[static] MISRA2008-2_10_6_a (CODSTA-CPP-87_a) の誤検出: クラス名とそのコンストラクター名の競合する識別子に対して違反がレポートされる

CPP-52345

[static] CERT_CPP-DCL60-a (GLOBAL-UNIQUETYPE) 違反の誤検出: クラスとそのコンストラクターが同じ名前であることに違反がレポートされる

CPP-52351

[engine] error: expression must have a constant value

CPP-52372

[compiler] Hexagon 8.6 のサポート (Linux, Extended, Full)

CPP-52384

[rulewizard] Using 宣言がテンプレート基底クラスの entity->MemberFunction を参照しない

CPP-52385

[rulewizard] 推論補助を関数定義として検出するべきではない

CPP-52386

[engine] clang コンパイラの識別対象オプションとして enable-trivial-auto-var-init-zero-knowing-it-will-be-removed-from-clang を追加する

CPP-52416

[static] 行抑制の不一致

CPP-52483

[docs] CPPTEST_MULTI_PROCESSES_LOG コンフィギュレーション マクロをドキュメントに記載する

CPP-52515

[static] OPT-32_b (MISRA2008-0_1_8_b) が static_assert 式だけを含むテンプレート関数に対して違反を誤検出する

CPP-52521

[engine] インストゥルメンテーションの誤り

CPP-52530

[static] GLOBAL-UNUSEDTYPE (MISRA2008-0_1_5) がテンプレート引数としてだけ使用されているローカル構造体に対して違反を誤検出する

CPP-52538

[rulewizard] テンプレート インスタンス内の _Static_assert の式を静的解析ルールで検出するべきである

CPP-52544

[static] CODSTA-CPP-53 (AUTOSAR-A7_1_1-a) ルールを分割する (パラメーターを個別にチェックする)

CPP-52558

[engine] error: 'key_only' is not captured

CPP-52577

[static] 識別子が特定の文字の組み合わせで異なっている場合、NAMING-47 (MISRA2008-2_10_1) が違反を検出しない

CPP-52578

[static] パラメーターが decltype() でだけ使用されている場合、OPT-03 (AUTOSAR-A0_1_4-a) が違反を誤検出する()

CPP-52581

[static] テンプレートで使用されている const/constexpr の初期化子内にあるハードコード値に対して CODSTA-26 (HICPP-5_1_1-a) が違反を誤検出する

CPP-52593

[static] MISRA2004-16_8 (AUTOSAR-A8_4_2-a) が 'if constexpr' 内に 'return' がある関数に対して違反を誤検出する

CPP-52599

[engine] Error[Pe265]: member "A::c_numberOfA" (declared at line 19) is inaccessible

CPP-52602

[static] MISRA2004-17_5 (MISRAC2012-RULE_18_5-a) が関数パラメーター内の配列へのポインターに対して違反を誤検出する

CPP-52603

[static] MISRA2004-16_7 (MISRAC2012-RULE_8_13-a) が配列型へのポインターに対して違反を誤検出する

CPP-52623

[static] 関数の 'if constexpr' 内に非 static コードがある場合、CODSTA-CPP-78 (MISRA2008-9_3_3) が違反を誤検出する

CPP-52625

[static] 関数が間接的な無名の名前空間に宣言されている場合、CODSTA-81 (MISRA2008-3_3_2) が違反を誤検出する

CPP-52648

[rulewizard] decltype() 内の式を静的解析ルールで検出するべきである

CPP-52656

[static] [[fallthrough]] 属性が null ステートメントと同じ行にある場合に MISRA2004-14_3 (AUTOSAR-M6_2_3-a) が違反を検出する

CPP-52659

[static] for-range 要素へのアドレスが返される場合、MISRA2004-17_6_a (AUTOSAR-A3_8_1-b) が違反を誤検出する

CPP-52669

[static] INTERNAL-METRICS-METHODS2 ルール実行時にエラーが発生する

CPP-52674

[engine] キャプチャがないラムダで参照が利用できない

CPP-52702

[engine] error: expression must have a constant value

CPP-52736

[static] 派生クラスのコンストラクターがメンバーを初期化している場合に CODSTA-MCPP-37 (AUTOSAR-A12_1_6-a) が違反を誤検出する()

CPP-52743

[static] コンストラクターで静的メンバーに代入されている場合、INIT-18 (AUTOSAR-A12_1_2-a) が違反を誤検出する

CPP-52745

[engine] error: invalid cast from type '__m128i {aka __vector(2) long long int}' to type 'cv_ void_ptr {aka const volatile void*}'

CPP-52760

[static] MISRA2008-5_2_10 が非算術演算子を違反としてレポートする

CPP-52769

[engine] aarch64 の __va_list 型のサポートを追加する

CPP-52797

[compiler] IAR コンパイラの --utf8_text_in オプションの解釈が誤っている

CPP-52819

[static] OOP-07 (AUTOSAR-A10_1_1-a) がインターフェイス クラスを適切に検出できない

CPP-52825

[engine] 関数テンプレート "f" のインスタンスが引数リストに一致しない

CPP-52831

[static] テンプレートの static_assert で変数が使用されている場合、GLOBAL-ONEUSEVAR (MISRA2008-0_1_4) が違反を誤検出する

CPP-52839

[静的] AUTOSAR A8-4-3 のマッピングを改善する

CPP-52875

[static] MISRAC2012-RULE-12_2 ルールのマッピングを改善する

CPP-52876

[static] 列挙型の前方宣言に対して GLOBAL-ONEFILEDECL (AUTOSAR-M3_2_3) が違反を誤検出する

CPP-52877

[static] 'std::initializer_list' による初期化リストが使用されている場合に PB-41_b が違反を誤検出する

CPP-52879

[compiler] 属性によって Clang 10 の無効なアライメント値が指定されている

CPP-52890

[compiler] error C3615: constexpr function 'operator new' cannot result in a constant expression

CPP-52892

[static] コンストラクターの初期化リストでパラメーターが使用されている場合に CODSTA-CPP-103 (AUTOSAR-A8_4_8-a) が違反を誤検出する

CPP-52977

[static] CODSTA-224 (AUTOSAR-A5_16_1-a) がテンプレート メンバー初期化子で使用されている条件演算子に対して違反を誤検出する

CPP-52984

[engine] GCC は "weak" 文字列が constexpr であることを許可する

CPP-53007

[ide] Update the title with the information using "collapse all" link on test case editor

CPP-53070

[static] CODSTA-184 が IndexError: list index out of range をレポートする

CPP-53100

[cli] スキップされたテストがある GoogleTest レポートで C/C++test Standard CLI がクラッシュする

CPP-53683

[ide] テスト ケース エディターの「コード」で「スタブ設定」を編集する際の問題

FA-4985

値がテンプレート パラメーターに依存する条件に対して BD-PB-CC が違反を誤検出する

FA-9225

BD-PB-VOVR の [変数の値が使用されていないパスが少なくとも 1 つある場合にレポートする] パラメーターの動作が説明と一致していない

FA-9261

範囲外の値の等価性をチェックしている場合、BD-PB-CC が違反を検出できない。

FA-9265

参照型での失敗した dynamic_cast のモデルが誤って 'std::bad_cast' ではなく 'int' をスローしている

FA-9335

センシティブ モードで除数がキャストされている場合に BD-PB-ZERO が違反を誤検出する

FA-9368

BD-PB-NOTINIT の誤検出

PT-1350Command Line 機能が見つからない場合、cpptest.license.wait.for.tokens.time not が待機しない
PT-1704[ VS ] Visual Studio プラグインでプロキシがサポートされていない
PT-1727

[起動時にライセンスを無効にし、アイドル時に自動的に解放する] オプションが動作していない

XT-41092ルール リンクへの相対パスが絶対パスに解決されるため、レポートおよびルール ドキュメントがポータブルではない 
CPP-52820*[engine] Instrumentation error: Expression must have a constant value instrumentation failure
CPP-53718*[engine] constexpr __builtin_strcmp/__builtin_memcmp causes memory buffer overrun
CPP-53785*[static] OPT-43: IndexError: string index out of range
XT-41178*Gitlab SAST v.15 レポート フォーマットのサポート

* C/C++test 2023.1.1 以降で利用可能

ルールの更新

新規ルール

ルール ID

ヘッダー

APSC_DV-002590-l

符号付き整数のオーバーフローを避ける

AUTOSAR-A2_10_5-c

内部リンケージを持つオブジェクトを定義する識別子は一意でなければならない

AUTOSAR-A2_10_5-d

内部リンケージを持つ関数を定義する識別子は一意でなければならない

AUTOSAR-A3_9_1-c

プレーンな char 型の代わりに typedef を使用するべきである

AUTOSAR-A4_7_1-i

整数型の変換によるデータの損失を避ける

AUTOSAR-A4_7_1-j

符号付き整数のオーバーフローを避ける

AUTOSAR-A4_7_1-k

整数型の変換による値の変化を避ける

AUTOSAR-A7_1_1-b

可能な場合は常にパラメーターを const 宣言する

AUTOSAR-M0_1_3-d

プロジェクトに外部リンケージを持つ未使用の型があるべきではない

AUTOSAR-M0_1_3-e

プロジェクトに内部リンケージを持つ未使用の変数が含まれるべきではない

BD-PB-INTDL

整数型の変換によるデータの損失を避ける

BD-PB-INTUB

符号付き整数のオーバーフローを避ける

BD-PB-INTVC

整数型の変換による値の変化を避ける

BD-PB-INTWRAP

整数の算術演算によるラップアラウンドを避ける

BD-PB-NOTINITAT

アトミック オブジェクトを使用する前に、適切に初期化する

BD-TRS-THRDR

スレッド間のデータ競合があってはならない

BD-TRS-THRDSTR

スレッド同期オブジェクトをスレッドで破棄するべきではない

BD-TRS-THRINIT

スレッド同期オブジェクトをスレッドで初期化するべきではない

BD-TRS-THRTHR

スレッドでスレッドを作成するべきではない

BD-TRS-THRTSS

スレッド固有のストレージをスレッドで作成するべきではない

BD-TRS-TIMEDLOCK

タイムアウトをサポートしていない mutex で標準ライブラリ関数 mtx_timedlock() を呼び出すべきではない

CERT_C-DCL00-b

可能な場合は常にパラメーターを const 宣言する

CERT_C-EXP20-b

オペランドが実質的にブール型である場合を除き、 0 との比較テストは明示的に行うべきである

CERT_C-INT08-b

符号付き整数のオーバーフローを避ける

CERT_C-INT08-c

整数型の変換による値の変化を避ける

CERT_C-INT08-d

整数の算術演算によるラップアラウンドを避ける

CERT_C-INT31-p

整数型の変換による値の変化を避ける

CERT_C-MSC07-i

到達できないメソッドを避ける

CERT_C-MSC12-i

到達できないメソッドを避ける

CERT_C-MSC12-j

常に同じ値に評価される条件式を避ける

CERT_C-MSC12-k

すべての空でない文は、どのように実行されても1つ以上の副作用を持つか、制御フローを変えなければならない

CODSTA-112_b

可変的に変更された配列へのポインター型を使用するべきではない

CODSTA-220_b

small integer 版の最少幅整数定数マクロを使用するべきではない

CODSTA-223_b

プレーンな char 型の代わりに typedef を使用するべきである

CODSTA-226_a

エラーを返す可能性がある標準ライブラリ関数から返された値を使用するべきである

CODSTA-226_b

戻り値をチェックする必要がない標準ライブラリ関数を 'void' にキャストするべきである

CODSTA-227

エラーを返す可能性がある POSIX ライブラリ関数から返された値を使用するべきである

CODSTA-228_a

代入、インクリメント、デクリメント演算子を含むストリーム引数を使用して 'getc()'、'putc()'、'getwc()'、または 'putwc()' を呼び出さない

CODSTA-228_b

関数呼び出しまたは関数マクロの呼び出しを含むストリーム引数を使用して 'getc()'、'putc()'、'getwc()'、または 'putwc()' を呼び出さない

CODSTA-229

剰余演算子 '%' のオペランドは符号なし整数型でなければならない

CODSTA-230

ポインターをより厳密にアライメントされたポインター型にキャストしない

CODSTA-231

スレッド記憶域期間を持つオブジェクトのアドレスを静的記憶域期間を持つオブジェクトに代入してはならない

CODSTA-232

インクリメント (++) およびデクリメント (--) 演算子と算術演算子を 1 つの式で混在させるべきではない

CODSTA-301

ポインターが指す型から変換によって 'const'、'volatile'、'_Atomic' 修飾子を取り除いてはならない

CODSTA-302

シフト演算子の右辺のオペランドは、ゼロと左辺のオペランドの実質型のビット数より 1 少ない数の間でなければならない

CODSTA-CPP-108

コピーのコストが低い型への const 参照のパラメーターは、値で渡すべきである

CODSTA-CPP-108_b

トリビアルなコピー コンストラクターを持つ小さいオブジェクトは値で渡す

CODSTA-CPP-109

「コピーのコストが低い」型以外のパラメーターは参照で渡すべきである

CODSTA-CPP-53_b

可能な場合は常にパラメーターを const 宣言する

CODSTA-MC-101

スレッド オブジェクト、スレッド同期オブジェクト、スレッド固有記憶域ポインターは自動記憶域期間を持ってはならない

CODSTA-MC-16

'void' 型に '_Atomic' 修飾子を使用するべきではない

CODSTA-MC-17

構造体および共用体型の atomic オブジェクトのメンバーに直接アクセスするべきではない

CODSTA-MC-18

キャストでポインターの型から '_Atomic' 修飾子を取り除いてはならない

CODSTA-MC-19

atomic 型の式の値は、スレッドの交互アクセスの影響を受けるべきではない

CODSTA-MC-20

明示的なメモリ順序引数として 'memory_order_seq_cst' だけを使用するべきである

CODSTA-MC-21

'mtx_init()' 関数の呼び出しに渡される 2 番目の引数は、 'mtx_plain'、'mtx_timed'、'mtx_plain | mtx_recursive'、または 'mtx_timed | mtx_recursive' にするべきである

CODSTA-MC-22

スレッド オブジェクト、スレッド同期オブジェクト、スレッド固有記憶域ポインターは、適切な標準ライブラリ関数を使用してアクセスする

CWE-190-h

符号付き整数のオーバーフローを避ける

GLOBAL-REUSEDEXTFUN

外部リンケージを持つ関数を定義する識別子は一意でなければならない

GLOBAL-REUSEDEXTFUN

外部リンケージを持つオブジェクトを定義する識別子は一意でなければならない

GLOBAL-REUSEDSTATFUN

内部リンケージを持つ関数を定義する識別子は一意でなければならない

GLOBAL-REUSEDSTATVAR

内部リンケージを持つオブジェクトを定義する識別子は一意でなければならない

GLOBAL-UNIQUETYPEC

タグ名は一意の識別子でなければならない

GLOBAL-UNIQUETYPEDEFC

typedef 名は一意の識別子でなければならない

GLOBAL-UNUSEDEXTVAR

プロジェクトに外部リンケージを持つ未使用の型があるべきではない

HICPP-4_2_2-g

整数型の変換によるデータの損失を避ける

HICPP-4_2_2-h

符号付き整数のオーバーフローを避ける

HICPP-4_2_2-i

整数型の変換による値の変化を避ける

HICPP-7_1_2-b

可能な場合は常にパラメーターを const 宣言する

METRICS-44

関数内の実行パスの数が 80 を超えるべきではない

MISRA2008-0_1_3_d

プロジェクトに外部リンケージを持つ未使用の型があるべきではない

MISRA2008-0_1_3_e

プロジェクトに内部リンケージを持つ未使用の変数が含まれるべきではない

MISRA2008-2_10_5_c

静的記憶域期間を持つ非メンバー オブジェクトおよび関数の識別子名は、再使用すべきでない

MISRA2008-2_10_5_d

静的記憶域期間を持つ非メンバー オブジェクトおよび関数の識別子名は、再使用すべきでない

MISRA2008-7_1_1_b

可能な場合は常にパラメーターを const 宣言する

MISRA2012-DIR-4_1_l

符号付き整数のオーバーフローを避ける

MISRA2012-DIR-4_1_m

整数型の変換によるデータの損失を避ける

MISRA2012-DIR-5_1

異なるロック間でグローバル変数を使用しない

MISRA2012-DIR-5_1_b

変数は単一の critical セクションのコンテキストで使用するべきである

MISRA2012-DIR-5_1_c

スレッド間のデータ競合があってはならない

MISRA2012-DIR-5_2

異なる順序でロックを獲得しない

MISRA2012-DIR-5_3

スレッドでスレッドを作成するべきではない

MISRA2012-RULE-11_10

不完全な型 void に _Atomic 修飾子を適用してはならない

MISRA2012-RULE-12_2_b

シフト演算子の右辺のオペランドは、ゼロと左辺のオペランドの実質型のビット数より 1 少ない数の間でなければならない

MISRA2012-RULE-12_6

atomic オブジェクトの構造体および共用体メンバーに直接アクセスしてはならない

MISRA2012-RULE-13_2_h

atomic 型の式の値は、スレッドの交互アクセスの影響を受けるべきではない

MISRA2012-RULE-18_10

可変的に変更された配列へのポインター型を使用するべきではない

MISRA2012-RULE-18_6_c

スレッド記憶域期間を持つオブジェクトのアドレスを静的記憶域期間を持つオブジェクトに代入してはならない

MISRA2012-RULE-21_25

明示的なメモリ順序引数として 'memory_order_seq_cst' だけを使用するべきである

MISRA2012-RULE-21_26

タイムアウトをサポートしていない mutex で標準ライブラリ関数 mtx_timedlock() を呼び出すべきではない

MISRA2012-RULE-22_11

すでに結合または切り離しされたスレッドを結合または切り離ししない

MISRA2012-RULE-22_12

スレッド オブジェクト、スレッド同期オブジェクト、スレッド固有記憶域ポインターは、適切な標準ライブラリ関数を使用してアクセスする

MISRA2012-RULE-22_13

スレッド オブジェクト、スレッド同期オブジェクト、スレッド固有記憶域ポインターは自動記憶域期間を持ってはならない

MISRA2012-RULE-22_14_a

スレッド同期オブジェクトをスレッドで初期化するべきではない

MISRA2012-RULE-22_14_b

'mtx_init()' 関数の呼び出しに渡される 2 番目の引数は、 'mtx_plain'、'mtx_timed'、'mtx_plain | mtx_recursive'、または 'mtx_timed | mtx_recursive' にするべきである

MISRA2012-RULE-22_15

スレッド同期オブジェクトをスレッドで破棄するべきではない

MISRA2012-RULE-22_16

解放されていないロックを放棄してはならない

MISRA2012-RULE-22_17

獲得されていないロックを解放しない

MISRA2012-RULE-22_18

二重ロックを避ける

MISRA2012-RULE-22_19

条件変数は最大で 1 つの mutex 変数と関連付ける

MISRA2012-RULE-22_20

スレッド固有のストレージをスレッドで作成するべきではない

MISRA2012-RULE-2_1_h

到達できないメソッドを避ける

MISRA2012-RULE-2_8_a

プロジェクトに外部リンケージを持つ未使用の型があるべきではない

MISRA2012-RULE-2_8_b

プロジェクトに内部リンケージを持つ未使用の変数が含まれるべきではない

MISRA2012-RULE-2_8_c

使用されないローカル変数は避ける

MISRA2012-RULE-5_8_b

外部リンケージを持つ関数を定義する識別子は一意でなければならない

MISRA2012-RULE-7_6

small integer 版の最少幅整数定数マクロを使用するべきではない

MISRA2012-RULE-9_6

連結された指示子を使用する初期化子に指示子なしの初期化子が含まれていてはならない

MISRA2012-RULE-9_7

アトミック オブジェクトを使用する前に、適切に初期化する

MISRAC2012-DIR_4_1-l

符号付き整数のオーバーフローを避ける

MISRAC2012-DIR_4_1-m

整数型の変換によるデータの損失を避ける

MISRAC2012-DIR_5_1-a

異なるロック間でグローバル変数を使用しない

MISRAC2012-DIR_5_1-b

変数は単一の critical セクションのコンテキストで使用するべきである

MISRAC2012-DIR_5_1-c

スレッド間のデータ競合があってはならない

MISRAC2012-DIR_5_2-a

異なる順序でロックを獲得しない

MISRAC2012-DIR_5_3-a

スレッドでスレッドを作成するべきではない

MISRAC2012-RULE_11_10-a

'void' 型に '_Atomic' 修飾子を使用するべきではない

MISRAC2012-RULE_12_2-b

シフト演算子の右辺のオペランドは、ゼロと左辺のオペランドの実質型のビット数より 1 少ない数の間でなければならない

MISRAC2012-RULE_12_6-a

構造体および共用体型の atomic オブジェクトのメンバーに直接アクセスするべきではない

MISRAC2012-RULE_13_2-h

atomic 型の式の値は、スレッドの交互アクセスの影響を受けるべきではない

MISRAC2012-RULE_18_10-a

可変的に変更された配列へのポインター型を使用するべきではない

MISRAC2012-RULE_18_6-c

スレッド記憶域期間を持つオブジェクトのアドレスを静的記憶域期間を持つオブジェクトに代入してはならない

MISRAC2012-RULE_21_25-a

明示的なメモリ順序引数として 'memory_order_seq_cst' だけを使用するべきである

MISRAC2012-RULE_21_26-a

タイムアウトをサポートしていない mutex で標準ライブラリ関数 mtx_timedlock() を呼び出すべきではない

MISRAC2012-RULE_22_11-a

すでに結合または切り離しされたスレッドを結合または切り離ししない

MISRAC2012-RULE_22_12-a

スレッド オブジェクト、スレッド同期オブジェクト、スレッド固有記憶域ポインターは、適切な標準ライブラリ関数を使用してアクセスする

MISRAC2012-RULE_22_13-a

スレッド オブジェクト、スレッド同期オブジェクト、スレッド固有記憶域ポインターは自動記憶域期間を持ってはならない

MISRAC2012-RULE_22_14-a

スレッド同期オブジェクトをスレッドで初期化するべきではない

MISRAC2012-RULE_22_14-b

'mtx_init()' 関数の呼び出しに渡される 2 番目の引数は、 'mtx_plain'、'mtx_timed'、'mtx_plain | mtx_recursive'、または 'mtx_timed | mtx_recursive' にするべきである

MISRAC2012-RULE_22_15-a

スレッド同期オブジェクトをスレッドで破棄するべきではない

MISRAC2012-RULE_22_16-a

解放されていないロックを放棄してはならない

MISRAC2012-RULE_22_17-a

獲得されていないロックを解放しない

MISRAC2012-RULE_22_18-a

二重ロックを避ける

MISRAC2012-RULE_22_19-a

1 つの条件変数に対する並行待機処理に複数の mutex を使用しない

MISRAC2012-RULE_22_20-a

スレッド固有のストレージをスレッドで作成するべきではない

MISRAC2012-RULE_2_1-h

到達できないメソッドを避ける

MISRAC2012-RULE_2_8-a

プロジェクトに外部リンケージを持つ未使用の型があるべきではない

MISRAC2012-RULE_2_8-b

プロジェクトに内部リンケージを持つ未使用の変数が含まれるべきではない

MISRAC2012-RULE_2_8-c

使用されないローカル変数は避ける

MISRAC2012-RULE_5_8-b

外部リンケージを持つ関数を定義する識別子は一意でなければならない

MISRAC2012-RULE_7_6-a

small integer 版の最少幅整数定数マクロを使用するべきではない

MISRAC2012-RULE_9_6-a

連結された指示子を使用する初期化子に指示子なしの初期化子が含まれていてはならない

MISRAC2012-RULE_9_7-a

アトミック オブジェクトを使用する前に、適切に初期化する

MRM-58_a

メモリ割り当て関数の結果をただちにキャストするべきである

MRM-58_b

メモリ割り当て関数の結果をただちに割り当てられた型のポインターにキャストするべきである

OOP-07_c

派生クラスのインターフェイス クラスではない基底クラスは最大で 1 つであることを確認する

OPT-43

プロジェクトに内部リンケージを持つ未使用の変数が含まれるべきではない

PB-80

連結された指示子を使用する初期化子に指示子なしの初期化子が含まれていてはならない

SECURITY-53

'pthread_kill'、'pthread_sigqueue'、および 'tgkill' 関数を使用してスレッドにシグナルを送信するべきではない

更新されたルール

カテゴリ ID

ルール ID

DISA ASD STI

APSC_DV-001995-e, APSC_DV-001995-f, APSC_DV-002000-a, APSC_DV-002400-d, APSC_DV-002590-e, APSC_DV-003110-a

AUTOSAR C++14 Coding Guidelines

AUTOSAR-A0_1_1-a, AUTOSAR-A0_1_6-a, AUTOSAR-A10_1_1-a, AUTOSAR-A12_1_2-a, AUTOSAR-A12_1_6-a, AUTOSAR-A12_8_3-a, AUTOSAR-A15_0_2-a, AUTOSAR-A15_1_4-a, AUTOSAR-A15_5_3-j, AUTOSAR-A2_10_4-a, AUTOSAR-A2_10_4-b, AUTOSAR-A2_10_5-a, AUTOSAR-A2_10_5-b, AUTOSAR-A2_3_1-a, AUTOSAR-A3_8_1-a, AUTOSAR-A3_8_1-b, AUTOSAR-A3_9_1-b, AUTOSAR-A4_7_1-h, AUTOSAR-A5_0_3-a, AUTOSAR-A5_16_1-a, AUTOSAR-A5_1_1-a, AUTOSAR-A5_2_2-a, AUTOSAR-A5_2_3-a, AUTOSAR-A5_3_2-a, AUTOSAR-A5_6_1-a, AUTOSAR-A7_1_1-a, AUTOSAR-A7_3_1-a, AUTOSAR-A8_4_2-a, AUTOSAR-A8_4_3-a, AUTOSAR-A8_4_7-a, AUTOSAR-A8_4_8-a, AUTOSAR-A8_5_0-a, AUTOSAR-M0_1_2-ac, AUTOSAR-M0_1_4-a, AUTOSAR-M0_3_1-e, AUTOSAR-M0_3_1-f, AUTOSAR-M10_2_1-a, AUTOSAR-M11_0_1-a, AUTOSAR-M15_3_6-a, AUTOSAR-M2_10_1-a, AUTOSAR-M3_2_3-a, AUTOSAR-M3_3_2-a, AUTOSAR-M3_4_1-b, AUTOSAR-M5_0_10-a, AUTOSAR-M5_2_10-a, AUTOSAR-M5_2_9-a, AUTOSAR-M6_2_3-a, AUTOSAR-M6_4_1-a, AUTOSAR-M7_1_2-b, AUTOSAR-M7_5_1-a

Flow Analysis

BD-PB-BADSHIFT , BD-PB-CC, BD-PB-EXCEPT, BD-PB-NOTINIT, BD-PB-NP, BD-PB-SUBSEQMOVE, BD-PB-UCMETH , BD-PB-VOVR, BD-PB-ZERO, BD-RES-FREE, BD-RES-LEAKS, BD-TRS-MLOCK, BD-TRS-REVLOCK

SEI CERT C

CERT_C-CON30-a, CERT_C-CON31-b, CERT_C-CON33-a, CERT_C-CON43-a, CERT_C-DCL00-a, CERT_C-DCL13-a, CERT_C-DCL22-a, CERT_C-DCL30-a, CERT_C-ERR33-a, CERT_C-ERR33-b, CERT_C-EXP05-a, CERT_C-EXP32-a, CERT_C-EXP33-a, CERT_C-EXP34-a, CERT_C-EXP36-a, CERT_C-EXP40-a, CERT_C-FIO22-a, CERT_C-FIO41-a, CERT_C-FIO41-b, CERT_C-FIO42-a, CERT_C-FIO46-a, CERT_C-FLP03-a, CERT_C-INT08-a, CERT_C-INT10-a, CERT_C-INT30-a, CERT_C-INT31-a, CERT_C-INT31-o, CERT_C-INT32-a, CERT_C-INT33-a, CERT_C-INT34-a, CERT_C-INT36-b, CERT_C-MEM00-d, CERT_C-MEM00-e, CERT_C-MEM01-a, CERT_C-MEM02-a, CERT_C-MEM02-b, CERT_C-MEM12-a, CERT_C-MEM30-a, CERT_C-MEM31-a, CERT_C-MSC09-a, CERT_C-MSC19-b, CERT_C-MSC37-a, CERT_C-MSC41-a, CERT_C-POS30-c, CERT_C-POS44-a, CERT_C-POS48-b, CERT_C-POS53-a, CERT_C-POS54-a, CERT_C-WIN30-a

SEI CERT C++

CERT_CPP-DCL57-b, CERT_CPP-DCL60-a, CERT_CPP-ERR50-j, CERT_CPP-ERR51-a, CERT_CPP-ERR54-a, CERT_CPP-ERR56-a, CERT_CPP-ERR57-a, CERT_CPP-EXP53-a, CERT_CPP-EXP54-a, CERT_CPP-EXP54-b, CERT_CPP-EXP55-a, CERT_CPP-EXP63-a, CERT_CPP-FIO51-a, CERT_CPP-MEM50-a, CERT_CPP-MSC52-a, CERT_CPP-STR51-a

コーディング規約

CODSTA-112, CODSTA-126, CODSTA-127, CODSTA-127_b, CODSTA-145, CODSTA-161_a, CODSTA-184, CODSTA-203, CODSTA-223, CODSTA-224, CODSTA-26, CODSTA-81

C++ コーディング規約

CODSTA-CPP-103, CODSTA-CPP-11, CODSTA-CPP-53, CODSTA-CPP-92

Modern C++ コーディング規約

CODSTA-MCPP-37

Common Weakness Enumeration

CWE-190-a, CWE-362-e, CWE-401-a, CWE-415-a, CWE-416-a, CWE-476-a, CWE-704-d, CWE-704-e, CWE-772-a, CWE-798-a

例外

EXCEPT-17

グローバル静的解析

GLOBAL-CONDMUTEXVAR, GLOBAL-ONEDEFTYPE, GLOBAL-ONEFILEDECL, GLOBAL-ONEUSEVAR, GLOBAL-REUSEDQUALGLOBVAR, GLOBAL-REUSEDQUALSTATFUN, GLOBAL-UNIQUETYPE, GLOBAL-UNIQUETYPEDEF, GLOBAL-UNUSEDTYPE

High Integrity C++

HICPP-10_3_1-a, HICPP-13_1_1-a, HICPP-15_3_2-a, HICPP-18_2_2-a, HICPP-1_2_1-h, HICPP-1_2_1-i, HICPP-2_4_1-a, HICPP-3_4_1-a, HICPP-4_1_1-b, HICPP-4_2_2-e, HICPP-4_2_2-f, HICPP-5_1_1-a, HICPP-5_2_1-c, HICPP-5_4_1-a, HICPP-5_4_1-c, HICPP-5_5_1-a, HICPP-5_8_1-a, HICPP-6_1_1-b, HICPP-6_3_2-a, HICPP-7_1_2-a, HICPP-7_4_2-c, HICPP-7_4_3-a, HICPP-8_4_1-a, HICPP-8_4_1-b

初期化

INIT-18

Joint Strike Fighter

JSF-009, JSF-059_b, JSF-097_d, JSF-111, JSF-114, JSF-118, JSF-136_a, JSF-151, JSF-164, JSF-170

MISRA C 1998

MISRA-005, MISRA-083

MISRA C 2004

MISRA2004-10_5, MISRA2004-11_3_a, MISRA2004-11_3_b, MISRA2004-11_5, MISRA2004-14_3, MISRA2004-14_9, MISRA2004-16_7, MISRA2004-16_8, MISRA2004-16_8_b, MISRA2004-17_5, MISRA2004-17_6_a, MISRA2004-8_7

MISRA C++ 2008

MISRA2008-0_1_2_aa, MISRA2008-0_1_4, MISRA2008-0_1_5, MISRA2008-0_1_6, MISRA2008-0_3_1_b, MISRA2008-0_3_1_c, MISRA2008-10_2_1, MISRA2008-11_0_1, MISRA2008-15_3_6, MISRA2008-15_5_3_j, MISRA2008-2_10_1, MISRA2008-2_10_3, MISRA2008-2_10_4, MISRA2008-2_10_5_a, MISRA2008-2_10_5_b, MISRA2008-3_2_3, MISRA2008-3_3_2, MISRA2008-3_4_1_b, MISRA2008-5_0_10, MISRA2008-5_0_19, MISRA2008-5_2_10, MISRA2008-5_2_5, MISRA2008-5_2_9, MISRA2008-6_2_3, MISRA2008-6_4_1, MISRA2008-7_1_1, MISRA2008-7_1_2_a, MISRA2008-7_5_1, MISRA2008-7_5_2_a, MISRA2008-8_4_3

MISRA C 2012 (Legacy)

MISRA2012-DIR-4_13_a, MISRA2012-DIR-4_13_b, MISRA2012-DIR-4_13_f, MISRA2012-DIR-4_1_b, MISRA2012-DIR-4_1_c, MISRA2012-DIR-4_1_k, MISRA2012-RULE-10_1_a, MISRA2012-RULE-11_3, MISRA2012-RULE-11_4, MISRA2012-RULE-11_8, MISRA2012-RULE-12_2, MISRA2012-RULE-14_3_zc, MISRA2012-RULE-15_6_b, MISRA2012-RULE-17_4, MISRA2012-RULE-17_4_b, MISRA2012-RULE-18_5, MISRA2012-RULE-18_6_a, MISRA2012-RULE-18_8, MISRA2012-RULE-1_3_a, MISRA2012-RULE-1_3_b, MISRA2012-RULE-1_3_c, MISRA2012-RULE-1_3_m, MISRA2012-RULE-21_16, MISRA2012-RULE-22_1, MISRA2012-RULE-22_2_a, MISRA2012-RULE-22_6, MISRA2012-RULE-2_2_b, MISRA2012-RULE-5_6_a, MISRA2012-RULE-5_7_a, MISRA2012-RULE-5_8, MISRA2012-RULE-5_9_a, MISRA2012-RULE-5_9_b, MISRA2012-RULE-8_13_a, MISRA2012-RULE-8_9, MISRA2012-RULE-9_1, MISRA2012-RULE-9_4

MISRA C 2023 (MISRA C 2012)

MISRAC2012-DIR_4_1-b, MISRAC2012-DIR_4_1-c, MISRAC2012-DIR_4_1-k, MISRAC2012-DIR_4_13-a, MISRAC2012-DIR_4_13-b, MISRAC2012-DIR_4_13-f, MISRAC2012-RULE_10_1-a, MISRAC2012-RULE_11_3-a, MISRAC2012-RULE_11_4-a, MISRAC2012-RULE_11_8-a, MISRAC2012-RULE_12_2-a, MISRAC2012-RULE_14_3-ac, MISRAC2012-RULE_15_6-b, MISRAC2012-RULE_17_4-a, MISRAC2012-RULE_17_4-b, MISRAC2012-RULE_18_5-a, MISRAC2012-RULE_18_6-a, MISRAC2012-RULE_18_8-a, MISRAC2012-RULE_1_3-a, MISRAC2012-RULE_1_3-b, MISRAC2012-RULE_1_3-c, MISRAC2012-RULE_1_3-m, MISRAC2012-RULE_21_16-a, MISRAC2012-RULE_22_1-a, MISRAC2012-RULE_22_2-a, MISRAC2012-RULE_22_6-a, MISRAC2012-RULE_2_2-b, MISRAC2012-RULE_5_6-a, MISRAC2012-RULE_5_7-a, MISRAC2012-RULE_5_8-a, MISRAC2012-RULE_5_9-a, MISRAC2012-RULE_5_9-b, MISRAC2012-RULE_8_13-a, MISRAC2012-RULE_8_9-a, MISRAC2012-RULE_9_1-a, MISRAC2012-RULE_9_4-a

MISRA C++ 202X

MISRACPP202X-0090-a, MISRACPP202X-0097-a, MISRACPP202X-0110-b, MISRACPP202X-0150-a, MISRACPP202X-0152-a, MISRACPP202X-0280-b

名前付け規則

NAMING-20, NAMING-47

Object Oriented

OOP-07, OOP-48

OWASP Top 10 2017

OWASP2017-A6-a

OWASP Top 10 2019

OWASP2019-API4-b, OWASP2019-API7-b

OWASP Top 10 2021

OWASP2021-A5-a

バグの可能性

PB-41_b, PB-69

セキュリティ

SECURITY-25

STL Best Practices

STL-31, STL-34, STL-35

削除されたルール

ルール ID

注意

AUTOSAR-A8_4_7-b

AUTOSAR C++ 14 コンフィギュレーションから削除されました - AUTOSAR-A8_4_7-a に置き換えられました。

CERT_C-ERR33-c

CERT C コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、BD-PB-NP を代替として使用できます。

CERT_C-FIO41-c

CERT C コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、MISRA2004-12_2_c を代替として使用できます。

CERT_C-FIO41-d

CERT C コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、MISRA2004-12_2_d を代替として使用できます。

CERT_C-FIO41-e

CERT C コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、CODSTA-123 を代替として使用できます。

CERT_C-POS54-b

CERT C コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、CODSTA-122_b を代替として使用できます。

CERT_C-POS54-c

CERT C コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、BD-PB-NP を代替として使用できます。

CODSTA-180

代わりに GLOBAL-REUSEDEXTVAR、GLOBAL-REUSEDEXTFUN を使用できます。

HICPP-8_2_3-b

High Integrity C++ コンフィギュレーションから削除されました - HICPP-8_2_3-a に置き換えられました。

MISRA2012-RULE-1_4_d

MISRA C 2012 コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、CODSTA-214 を代替として使用できます。

MISRA2012-RULE-1_4_e

MISRA C 2012 コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、CODSTA-209 を代替として使用できます。

MISRA2012-RULE-1_4_f

MISRA C 2012 コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、CODSTA-210 を代替として使用できます。

MISRA2012-RULE-1_4_g

MISRA C 2012 コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、CODSTA-211 を代替として使用できます。

MISRA2012-RULE-5_6_b

MISRA C 2012 コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、MISRA2004-5_3_b を代替として使用できます。

MISRA2012-RULE-5_7_b

MISRA C 2012 コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、MISRA2004-5_4_b を代替として使用できます。

MISRAC2012-RULE_1_4-d

MISRA C 2012 コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、CODSTA-214 を代替として使用できます

MISRAC2012-RULE_1_4-e

MISRA C 2012 コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、CODSTA-209 を代替として使用できます。

MISRAC2012-RULE_1_4-f

MISRA C 2012 コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、CODSTA-210 を代替として使用できます。

MISRAC2012-RULE_1_4-g

MISRA C 2012 コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、CODSTA-211 を代替として使用できます。

MISRAC2012-RULE_5_6-b

MISRA C 2012 コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、MISRA2004-5_3_b を代替として使用できます。

MISRAC2012-RULE_5_7-b

MISRA C 2012 コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、MISRA2004-5_4_b を代替として使用できます。

  • No labels