このリリースには、以下の拡張が含まれます。 リリース日: 2024 年11 月 21 日
静的解析の拡張
単体テストおよびカバレッジの拡張単体テストおよびカバレッジ エンジンが拡張され、モダン C/C++ 構文のサポートが改善されました。 ファイル内抑制の拡張
詳細については、「抑制ファイルでの抑制の定義」を参照してください。 サポート対象コンパイラ以下のコンパイラがサポートされています。
* - 実行時解析のサポートが追加されました。 以下のコンパイラのサポート レベルが Extended から Standard に変更されました。
「コンパイラ」を参照してください。 テスト コンフィギュレーションの更新以下のテスト コンフィギュレーションに新規ルールが追加されました。
その他のアップデート
サポートの非推奨および廃止廃止された 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 |
Coding Conventions for Modern 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/CPPTESTPROVSJP20242/Updates+in+2024.2 を参照してください。 |