このリリースには以下の拡張が含まれます。 リリース日: 2024年11月21日
静的解析の拡張
コード カバレッジの拡張カバレッジ エンジンが拡張され、モダン C/C++ 構文のサポートが改善されました。 VSCode Extension の拡張VSCode Extension for C/C++test が Copilot Chat と統合して静的解析違反に対して AI 生成の修正を提示できるようになりました。詳細については、次の VSCode extension のドキュメントを参照してください: https://marketplace.visualstudio.com/items?itemName=parasoft.vscode-cpptest ファイル内抑制の拡張
詳細については、「抑制ファイルでの抑制の定義」を参照してください。 サポート対象コンパイラ以下のコンパイラがサポートされています。
* - 実行時解析のサポートが追加されました。 以下のコンパイラのサポート レベルが Extended から Standard に変更されました。
「サポート対象コンパイラ」を参照してください。 IDE のサポート以下の IDE がサポートされています。
テスト コンフィギュレーションの更新以下のテスト コンフィギュレーションに新規ルールが追加されました。
その他のアップデート
2024.2.1 でのアップデート
サポートの非推奨および廃止非推奨の IDE次の IDE のサポートは非推奨であり、将来のリリースで削除される予定です。
廃止された IDE次の IDE のサポートは廃止されました。
非推奨予定のコンパイラ次のコンパイラのサポートは、将来のリリースで非推奨になる予定です。
非推奨のコンパイラ次のコンパイラのサポートは非推奨であり、将来のリリースで削除される予定です。
廃止されたコンパイラ以下のコンパイラはサポートされなくなりました。
解決済みのバグおよび FR
ルールの更新
|
ルール ID | ヘッダー |
---|---|
AUTOSAR-A5_2_5-e | コレクションの境界外にアクセスしてはならない |
AUTOSAR-M0_1_3-f | プロジェクトに未初期化ローカル変数が含まれていてはならない |
AUTOSAR-M0_1_3-g | プロジェクトに内部リンケージを持つ未初期化変数が含まれるべきではない |
BD-PB-COOB | コレクションの境界外にアクセスしてはならない |
CERT_C-DCL37-b | アンダースコアおよび大文字またはもう 1 つのアンダースコアで始まる識別子を定義するべきではない |
CERT_C-DCL37-c | 名前がアンダースコアで始まるファイルスコープのオブジェクトを宣言しない |
CERT_C-DCL37-d | 標準ライブラリのマクロの名前を再利用するべきではない (C11 コード) |
CERT_C-DCL37-e | ファイル スコープを持つ標準ライブラリの名前を再利用するべきではない (C11 コード) |
CERT_C-DCL37-f | 外部リンケージを持つ標準ライブラリの識別子名を再利用するべきではない (C11 コード) |
CERT_C-DCL37-g | アンダースコアおよび大文字またはもう 1 つのアンダースコアで始まるマクロを定義するべきではない |
CERT_C-ERR32-b | シグナル ハンドラーを適切に定義する |
CERT_C-ERR33-e | fopen の呼び出しの直後にファイル オープン エラーの処理を置く |
CERT_C-FIO01-c | 識別にファイル名を使用する関数は注意して使用する |
CERT_C-FIO21-b | 安全な一時ファイル名関数を使用する |
CODSTA-303 | 内側のスコープで宣言された変数が外側のスコープで宣言された変数を隠蔽してはならない |
CODSTA-92_c | 標準ライブラリのマクロの名前を再利用するべきではない (C11 コード) |
CODSTA-92_d | ファイル スコープを持つ標準ライブラリの名前を再利用するべきではない (C11 コード) |
CODSTA-92_e | 外部リンケージを持つ標準ライブラリの識別子名を再利用するべきではない (C11 コード) |
CWE-119-l | コレクションの境界外にアクセスしてはならない |
CWE-125-f | コレクションの境界外にアクセスしてはならない |
CWE-787-i | コレクションの境界外にアクセスしてはならない |
JSF-127_b | Doxygen コメントを使用してコード セクションを「コメント アウト」してはならない |
MISRA2004-2_4_b | Doxygen コメントを使用してコード セクションを「コメント アウト」してはならない |
MISRA2008-0_1_3_f | プロジェクトに未初期化ローカル変数が含まれていてはならない |
MISRA2008-0_1_3_g | プロジェクトに内部リンケージを持つ未初期化変数が含まれるべきではない |
MISRA2008-2_7_2_b | C スタイルのコメントを使ってコード セクションを ’コメント アウト’ してはならない |
MISRA2008-2_7_3_b | C++ スタイルのコメントを使ってコード セクションを 'コメント アウト' してはならない |
MISRA2012-DIR-4_4_b | Doxygen コメントを使用してコード セクションを「コメント アウト」してはならない |
MISRAC2012-DIR_4_4-b | Doxygen コメントを使用してコード セクションを「コメント アウト」してはならない |
MISRACPP2023-19_2_1-b | ユニークな多重インクルード ガードを使用する |
MISRACPP2023-6_4_1-g | 内側のスコープで宣言された変数が外側のスコープで宣言された変数を隠蔽してはならない |
NAMING-33_c | アンダースコアおよび大文字またはもう 1 つのアンダースコアで始まるマクロを定義するべきではない |
NAMING-33_d | アンダースコアおよび大文字またはもう 1 つのアンダースコアで始まる識別子を定義するべきではない |
NAMING-33_e | 名前がアンダースコアで始まるファイルスコープのオブジェクトを宣言しない |
OPT-02_b | プロジェクトに未初期化ローカル変数が含まれていてはならない |
OPT-43_b | プロジェクトに内部リンケージを持つ未初期化変数が含まれるべきではない |
OWASP2019-API3-r | コレクションの境界外にアクセスしてはならない |
PFO-02_b | ユニークな多重インクルード ガードを使用する |
PREPROC-29 | 標準ライブラリのヘッダーをインクルードする場合、山括弧 <> を使用する |
SECURITY-55 | 識別にファイル名を使用する関数は注意して使用する |
カテゴリ ID | ルール ID |
---|---|
AUTOSAR C++14 Coding Guidelines | AUTOSAR-A0_1_2-a, AUTOSAR-A0_4_4-a, AUTOSAR-A10_1_1-a, AUTOSAR-A10_2_1-a, AUTOSAR-A10_2_1-b, AUTOSAR-A12_0_1-a, AUTOSAR-A13_5_2-a, AUTOSAR-A14_7_2-a, AUTOSAR-A18_9_4-a, AUTOSAR-A23_0_2-b, AUTOSAR-A27_0_2-a, AUTOSAR-A27_0_2-b, AUTOSAR-A2_10_1-e, AUTOSAR-A2_3_1-a, AUTOSAR-A2_7_2-a, AUTOSAR-A4_7_1-c, AUTOSAR-A5_0_1-b, AUTOSAR-A5_2_5-a, AUTOSAR-A5_3_2-a, AUTOSAR-A7_1_7-c, AUTOSAR-A7_2_3-a, AUTOSAR-A7_3_1-a, AUTOSAR-A8_4_2-a, AUTOSAR-A8_4_3-b, AUTOSAR-A8_4_9-a, AUTOSAR-A8_5_0-a, AUTOSAR-M0_1_2-ac, AUTOSAR-M0_1_3-a, AUTOSAR-M0_1_3-e, AUTOSAR-M0_3_1-b, AUTOSAR-M0_3_1-d, AUTOSAR-M0_3_1-f, AUTOSAR-M0_3_1-g, AUTOSAR-M0_3_1-i, AUTOSAR-M0_3_2-a, AUTOSAR-M16_0_5-a, AUTOSAR-M16_0_8-a, AUTOSAR-M16_1_1-a, AUTOSAR-M5_0_16-a, AUTOSAR-M5_14_1-a, AUTOSAR-M7_1_2-c, AUTOSAR-M8_0_1-a |
C++ コーディング規約 | CODSTA-CPP-04, CODSTA-CPP-206, CODSTA-CPP-211, CODSTA-CPP-212, CODSTA-CPP-43, CODSTA-CPP-58, CODSTA-CPP-85 |
モダン C++ コーディング規約 | CODSTA-MCPP-01, CODSTA-MCPP-03, CODSTA-MCPP-47_b, CODSTA-MCPP-56 |
コーディング規約 | CODSTA-122_a, CODSTA-122_b, CODSTA-138, CODSTA-144, CODSTA-226_a, CODSTA-227, CODSTA-29, CODSTA-311, CODSTA-38 |
Common Weakness Enumeration | CWE-119-a, CWE-119-d, CWE-119-e, CWE-125-a, CWE-125-c, CWE-20-f, CWE-362-d, CWE-476-a, CWE-787-a, CWE-787-d |
DISA ASD STIG | APSC_DV-000060-a, APSC_DV-001995-a, APSC_DV-002520-a, APSC_DV-002530-a, APSC_DV-002550-a, APSC_DV-002560-a, APSC_DV-002590-b, APSC_DV-002590-c, APSC_DV-002590-d, APSC_DV-003235-a, APSC_DV-003235-c |
フロー解析 | BD-API-BADPARAM, BD-API-STRSIZE, BD-API-VALPARAM, BD-CO-ITINVCOMP, BD-CO-STRMOD, BD-PB-ARRAY, BD-PB-CC, BD-PB-NOTINIT, BD-PB-NP, BD-PB-OVERFNZT, BD-PB-OVERFRD, BD-PB-OVERFWR, BD-PB-SUBSEQFRWD, BD-PB-UCMETH, BD-PB-VARARGS, BD-RES-INVFREE, BD-SECURITY-TDENV, BD-TRS-FORKFILE |
書式 | FORMAT-33, FORMAT-43 |
グローバル静的解析 | GLOBAL-PREDICATENOSE |
High Integrity C++ | HICPP-10_3_1-a, HICPP-12_1_1-a, HICPP-12_1_1-b, HICPP-13_1_1-a, HICPP-16_1_4-a, HICPP-17_3_3-a, HICPP-1_2_1-h, HICPP-1_2_1-i, HICPP-3_1_1-e, HICPP-5_1_2-f, HICPP-5_1_2-j, HICPP-5_1_6-d, HICPP-5_2_1-a, HICPP-5_2_1-c, HICPP-6_3_2-a, HICPP-7_1_1-b, HICPP-8_3_1-a, HICPP-8_4_1-a |
初期化 | INIT-12 |
Joint Strike Fighter | JSF-003, JSF-003_b, JSF-009, JSF-060_b, JSF-088, JSF-088_b, JSF-094, JSF-094_b, JSF-114, JSF-115, JSF-115_a, JSF-117.1, JSF-127, JSF-135_e, JSF-143_a, JSF-157, JSF-177_b, JSF-180_d, JSF-204.1_f, JSF-214 |
メモリおよびリソース管理 | MRM-19, MRM-39, MRM-40 |
メトリクス | METRIC.CC, METRIC.ECC, METRICS-18, METRICS-28, METRICS-29, METRICS-33, METRICS-34, METRICS-35, METRICS-42 |
MISRA C 1998 | MISRA-005, MISRA-096 |
MISRA C 2004 | MISRA2004-12_2_f, MISRA2004-12_4_a, MISRA2004-16_10, MISRA2004-16_8, MISRA2004-16_8_b, MISRA2004-19_14, MISRA2004-19_16, MISRA2004-19_9, MISRA2004-2_4 |
MISRA C 2012 (Legacy) | MISRA2012-DIR-4_11, MISRA2012-DIR-4_13_c, MISRA2012-DIR-4_14_j, MISRA2012-DIR-4_1_a, MISRA2012-DIR-4_1_b, MISRA2012-DIR-4_1_e, MISRA2012-DIR-4_1_g, MISRA2012-DIR-4_1_h, MISRA2012-DIR-4_4, MISRA2012-RULE-13_2_f, MISRA2012-RULE-13_4, MISRA2012-RULE-13_5, MISRA2012-RULE-14_3_zc, MISRA2012-RULE-17_4, MISRA2012-RULE-17_4_b, MISRA2012-RULE-17_7_a, MISRA2012-RULE-17_7_b, MISRA2012-RULE-18_1_a, MISRA2012-RULE-1_3_b, MISRA2012-RULE-1_3_d, MISRA2012-RULE-1_3_e, MISRA2012-RULE-1_3_k, MISRA2012-RULE-20_13, MISRA2012-RULE-20_6, MISRA2012-RULE-21_17_a, MISRA2012-RULE-21_17_b, MISRA2012-RULE-21_18, MISRA2012-RULE-22_2_b, MISRA2012-RULE-2_1_h, MISRA2012-RULE-2_8_b, MISRA2012-RULE-2_8_c, MISRA2012-RULE-9_1 |
MISRA C 2023 (MISRA C 2012) | MISRAC2012-DIR_4_1-a, MISRAC2012-DIR_4_1-b, MISRAC2012-DIR_4_1-e, MISRAC2012-DIR_4_1-g, MISRAC2012-DIR_4_1-h, MISRAC2012-DIR_4_11-a, MISRAC2012-DIR_4_13-c, MISRAC2012-DIR_4_14-j, MISRAC2012-DIR_4_4-a, MISRAC2012-RULE_13_2-f, MISRAC2012-RULE_13_4-a, MISRAC2012-RULE_13_5-a, MISRAC2012-RULE_14_3-ac, MISRAC2012-RULE_17_4-a, MISRAC2012-RULE_17_4-b, MISRAC2012-RULE_17_7-a, MISRAC2012-RULE_17_7-b, MISRAC2012-RULE_18_1-a, MISRAC2012-RULE_1_3-b, MISRAC2012-RULE_1_3-d, MISRAC2012-RULE_1_3-e, MISRAC2012-RULE_1_3-k, MISRAC2012-RULE_20_13-a, MISRAC2012-RULE_20_6-a, MISRAC2012-RULE_21_17-a, MISRAC2012-RULE_21_17-b, MISRAC2012-RULE_21_18-a, MISRAC2012-RULE_22_2-b, MISRAC2012-RULE_2_1-h, MISRAC2012-RULE_2_8-b, MISRAC2012-RULE_2_8-c, MISRAC2012-RULE_9_1-a |
MISRA C++ 2008 | MISRA2008-0_1_2_aa, MISRA2008-0_1_3_a, MISRA2008-0_1_3_e, MISRA2008-0_1_7, MISRA2008-0_3_1_a, MISRA2008-0_3_1_b, MISRA2008-0_3_1_e, MISRA2008-0_3_1_g, MISRA2008-0_3_1_h, MISRA2008-0_3_2, MISRA2008-16_0_5, MISRA2008-16_0_8, MISRA2008-16_1_1, MISRA2008-2_7_2, MISRA2008-2_7_3, MISRA2008-5_0_16_a, MISRA2008-5_0_1_f, MISRA2008-5_14_1, MISRA2008-7_1_2_b, MISRA2008-8_0_1, MISRA2008-8_4_3 |
MISRA C++ 2023 | MISRACPP2023-0_0_2-a, MISRACPP2023-0_1_2-a, MISRACPP2023-0_2_1-a, MISRACPP2023-0_2_1-b, MISRACPP2023-0_2_3-a, MISRACPP2023-0_2_4-a, MISRACPP2023-0_3_2-a, MISRACPP2023-10_0_1-a, MISRACPP2023-10_1_1-c, MISRACPP2023-10_2_2-a, MISRACPP2023-11_6_2-a, MISRACPP2023-15_1_3-a, MISRACPP2023-15_1_3-b, MISRACPP2023-15_1_5-a, MISRACPP2023-19_0_1-a, MISRACPP2023-19_1_1-a, MISRACPP2023-19_3_5-a, MISRACPP2023-28_3_1-a, MISRACPP2023-28_6_3-a, MISRACPP2023-4_1_3-c, MISRACPP2023-4_6_1-f, MISRACPP2023-5_7_2-a, MISRACPP2023-6_2_3-d, MISRACPP2023-6_4_1-e, MISRACPP2023-6_4_2-a, MISRACPP2023-6_4_2-b, MISRACPP2023-6_8_3-a, MISRACPP2023-6_8_4-a, MISRACPP2023-7_0_1-a, MISRACPP2023-7_0_2-a, MISRACPP2023-8_14_1-a, MISRACPP2023-8_18_2-a, MISRACPP2023-8_7_1-a, MISRACPP2023-8_7_1-c, MISRACPP2023-8_7_1-d, MISRACPP2023-8_7_1-e, MISRACPP2023-9_6_5-a |
オブジェクト指向 | OOP-07, OOP-07_a, OOP-07_b, OOP-07_c, OOP-32, OOP-53 |
最適化 | OPT-02, OPT-43, OPT-46 |
OWASP API Security Top 10 (2019) | OWASP2019-API3-b, OWASP2019-API3-e, OWASP2019-API3-f, OWASP2019-API3-g, OWASP2019-API8-c |
OWASP API Security Top 10 (2023) | OWASP2023-API10-f |
OWASP Top 10 (2017) | OWASP2017-A1-d |
OWASP Top 10 (2021) | OWASP2021-A3-d |
移植性 | PORT-28 |
セキュリティ | SECURITY-39 |
SEI CERT C++ | CERT_CPP-CTR53-b, CERT_CPP-CTR54-a, CERT_CPP-DCL56-a, CERT_CPP-EXP53-a, CERT_CPP-EXP58-a, CERT_CPP-MSC52-a, CERT_CPP-STR50-b, CERT_CPP-STR50-c, CERT_CPP-STR51-a, CERT_CPP-STR52-a |
SEI CERT C | CERT_C-API01-a, CERT_C-ARR30-a, CERT_C-ARR38-a, CERT_C-ARR38-b, CERT_C-ARR38-d, CERT_C-ARR39-a, CERT_C-CON31-c, CERT_C-DCL04-a, CERT_C-DCL06-a, CERT_C-ENV01-c, CERT_C-ERR30-b, CERT_C-ERR33-a, CERT_C-EXP02-a, CERT_C-EXP08-b, CERT_C-EXP12-a, CERT_C-EXP12-b, CERT_C-EXP33-a, CERT_C-EXP34-a, CERT_C-FIO37-a, CERT_C-FLP32-a, CERT_C-MEM00-b, CERT_C-MEM34-a, CERT_C-MSC07-i, CERT_C-MSC09-a, CERT_C-MSC12-i, CERT_C-MSC12-j, CERT_C-MSC19-a, CERT_C-MSC19-b, CERT_C-MSC37-a, CERT_C-MSC39-a, CERT_C-POS30-a, CERT_C-POS30-b, CERT_C-POS38-a, CERT_C-POS54-a, CERT_C-PRE02-a, CERT_C-PRE32-a, CERT_C-STR03-a, CERT_C-STR31-a, CERT_C-STR31-b, CERT_C-STR32-a |
テンプレート | TEMPL-16 |
ルール ID | 注意点 |
---|---|
AUTOSAR-A3_9_1-c | AUTOSAR C++ 14 コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、CODSTA-223_b を代替として使用できます。 |
AUTOSAR-A7_1_2-b | AUTOSAR C++ 14 コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、CODSTA-MCPP-11_b_cpp11 を代替として使用できます。 |
AUTOSAR-M0_1_3-a | AUTOSAR C++ 14 コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、OPT-02 を代替として使用できます。 |
AUTOSAR-M0_1_3-e | AUTOSAR C++ 14 コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、OPT-43 を代替として使用できます。 |
CERT_C-DCL37-a | SEI CERT C コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、MISRA2004-20_1_a を代替として使用できます。 |
CERT_C-ERR30-b | SEI CERT C コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、MRM-39 を代替として使用できます。 |
CERT_C-ERR32-a | SEI CERT C コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、BD-PB-ERRNO を代替として使用できます。 |
CERT_C-FIO01-b | SEI CERT C コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、SECURITY-19 を代替として使用できます。 |
CERT_C-FIO21-a | SEI CERT C コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、SECURITY-19 を代替として使用できます。 |
MISRA2008-0_1_3_a | MISRA C++ 2008 コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、OPT-02 を代替として使用できます。 |
MISRA2008-0_1_3_e | MISRA C++ 2008 コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、OPT-43 を代替として使用できます。 |
MISRACPP2023-19_2_1-a | MISRA C++ 2023 コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、PFO-02 を代替として使用できます。 |
MISRACPP2023-6_4_1-a | MISRA C++ 2023 コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、MISRA2004-5_2_a を代替として使用できます。 |
MISRACPP2023-6_4_1-b | MISRA C++ 2023 コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、MISRA2004-5_2_b を代替として使用できます。 |
MISRACPP2023-6_4_1-c | MISRA C++ 2023 コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、CODSTA-CPP-83 を代替として使用できます。 |
MISRACPP2023-6_4_1-d | MISRA C++ 2023 コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、CODSTA-CPP-84 を代替として使用できます。 |
MISRACPP2023-6_4_1-e | MISRA C++ 2023 コンフィギュレーションから削除されました。他のコンフィギュレーションに関しては、CODSTA-CPP-85 を代替として使用できます。 |
このリリースについての情報は、https://docs.parasoft.com/display/CPPTESTJP20242/Updates+in+2024.2 を参照してください。 |