PGRelief C/C++ 強化ポイント説明書 1. 最新バージョンの強化ポイント (2017autumn 2018) 1) CERT Cコーディングスタンダードの適合性チェックを追加 CERTオプションの購入が必要 2) 指摘メッセージを16 個追加 ( うち15 個はCERTオプション用 ) 3) Visual C++ 2015 の資産に対応 2. 過去バージョンの強化ポイント 2.1. 強化ポイント (2017 2017autumn) 1) IAR Embedded Workbench for ARM 7.4/8.1の資産に対応 2) 64ビットOSに対応 PGRelief C/C++ のすべての機能を 64 ビットOSに対応 2.2. 強化ポイント (2016autumn 2017) 1) 指摘メッセージを25 個追加 2) MISRA-C:2012コーディング作法のルール対応率向上 すべてのルールに対応 (156ルール中 156ルールに対応 ) 3) Visual C++ 2012 / 2013 の資産に対応 4) Windows Server 2016 に対応 5) Microsoft Windows Server 2016 Hyper-V に対応 ( フローティング版のみ ) 6) pgrfakeコマンドの操作性 / 利便性改善 コマンドパラメタ変換定義ファイルの指定方式を追加 コンパイラのコンパイル抑止オプションに対応 結果出力先の指定方式を改善 2.3. 強化ポイント (2016 2016autumn) 1) SECコーディング作法 (ESCR C++ V2) 適合性チェックを追加 200ルール中 156ルールに対応 2) MISRA-C 適合性チェックを強化 MISRA-C:2012 に MISRA-C:2012 Amendment 1 で追加されたルールを追加 156ルール中 130ルールに対応 2.4. 強化ポイント (2015autumn 2016) 1) セキュリティ脆弱性に関する指摘メッセージを10 個追加 2) GNU 4.0 ~ 4.8 の C11 構文に対応 3) Red Hat Enterprise Linux 7 に対応 ( フローティング版のみ ) 4) CI ツール連携 Jenkins プラグインを提供 ( フローティング版のみ ) 5) Visual Studio 2010 アドインを提供 ( 詳細はホームページ参照 ) 2.5. 強化ポイント (2015 2015autumn) 1) Windows 10 に対応 2) サーバー仮想化ソフトウェアに対応 ( フローティング版のみ ) Microsoft Windows Server 2012 R2 Hyper-V に対応 VMware vsphere 5.0 に対応 3) GUI 使用環境を Java SE Runtime Environment 8 にアップデート 2.6. 強化ポイント (2014autumn 2015) 1
1) 指摘メッセージを 11 個追加 2) SEC コーディング作法 (ESCR C V2) 適合性チェックを追加 132 ルール中 114 ルールに対応 2.7. 強化ポイント (2014 2014autumn) 1) pgr5コマンドに --includeオプションを追加 チェック対象となるソースファイルの解析時に必要な情報を 解析前に先読みする機能を追加 2.8. 強化ポイント (2013autumn 2014) 1) gcc4 の資産に対応 -K GNU/GCC4 GNU Compiler Collection が提供するC C++ Compiler 4.0~4.8の予約語に対応 -K GNU/GCC4_C90 GNU Compiler Collection が提供するC C++ Compiler 4.0~4.8の予約語に対応 2) コマンドマルチ実行機能の追加 同一端末上において C/C++ 解析 1ライセンスでpgr5 pgrmisra pgrsecの各コマンドを 4つまで同時に実行させることができる機能を追加 3) 64ビット版 pgr5 pgrmetricsコマンドの追加 pgr5 pgrmetrics コマンドを64ビットOS 上で ネイティブアプリケーションとして動作させるためのモジュールを追加 4) 品質監視オプション診断レポート生成ツールの追加 5) Windows 8.1 に対応 6) Windows Server 2012 R2 に対応 2.9. 強化ポイント (2013 2013autumn) 1) MISRA-C 適合性チェックを強化 MISRA-C:2012 143ルール中 120ルールに対応 2.10. 強化ポイント (2012autumn 2013) 1) エビデンス出力機能を追加 解析結果をエビデンスとして出力 2) 診断レポート生成ツールを追加 解析結果からソースコードの診断レポートを生成 (Excel ブック形式 ) 3) Visual C++ 2010 の資産に対応 4) 指摘メッセージを9 個追加 5) Windows 8 に対応 6) Windows Server 2012 に対応 2.11. 強化ポイント (2012 2012autumn) 1) 対応コンパイラを追加 RENESAS/78K0R RENESAS/RXの予約語に対応 2.12. 強化ポイント (2011autumn 2012) 1) 解析結果集約モードをサポート pgr5 pgrmisra pgrsecコマンドの解析結果を品質監視オプションで集約 2) 指摘メッセージを5 個追加 2.13. 強化ポイント (2011 2011autumn) 1) 指摘メッセージを 1 個追加 2.14. 強化ポイント (2010autumn 2011) 1) SOFTUNE Development Tools for Eclipse 連携をサポート ( 詳細はホームページ参照 ) 2) 指摘メッセージを16 個追加 3) Windows Server 2008 R2 に対応 2.15. 強化ポイント (2010 2010autumn) 2
1) SECコーディング作法 (ESCR C++) 適合性チェックを追加 167ルール中 130ルールに対応 2) Windows 7 に対応 3) Visual Studio 2008 アドインを提供 ( 詳細はホームページ参照 ) 2.16. 強化ポイント (2009autumn 2010) 1) 広域探索機能をサポート (Cソースのみ) 関数の呼び出し経路を追跡してプログラム欠陥を指摘 広域探索オプションの購入が必要 2) 指摘メッセージを11 個追加 ( うち4 個は広域探索オプション用 ) 3) Visual Studio 2005 アドインを提供 ( 詳細はホームページ参照 ) 2.17. 強化ポイント (2009 2009autumn) 1) Visual C++ 2008 の資産に対応 2) 指摘メッセージを7 個追加 3) 構成管理ツールとの連携を強化 ( 品質監視オプション ) Interstage Application Development Cycle Manager と連携 2.18. 強化ポイント (2008autumn 2009) 1) 品質分析機能を提供 検出指摘を 品質特性 問題特性 文法特性 の観点で分類 2) 新コマンド (pgrfake) を提供 makeファイルに組み込むことで 環境設定を自動抽出 自動解析 3) 指摘メッセージビューア (GUI) を改善 コマンド解析結果の読み込みをサポート 1FLあたりの同時起動可能数を従来の3 倍に拡張 4) 解析時間を大幅に短縮 プリコンパイルヘッダ機能の拡張や 検査指摘設定により 従来の5 倍の処理速度で解析を実行 5) 指摘メッセージを9 個追加 2.19. 強化ポイント (2008 2008autumn) 1) MISRA-C++ 適合性チェックを追加 MISRA-C++:2008 228ルール中 164ルールに対応 2) 指摘メッセージを27 個追加 2.20. 強化ポイント (2007autumn 2008) 1) 指摘メッセージを29 個追加 2) 検査指摘設定機能を強化 あらかじめ設定したグループや番号の指摘メッセージを出力しない機能を追加 3) UTF-8 に対応 2.21. 強化ポイント (2007 2007autumn) 1) Windows Vista に対応 2) Visual C++ 2005 の資産に対応 2.22. 強化ポイント (V3.0a 2007) 1) 組織的な品質管理を強力に支援 構成管理ツールに登録されたソースを一括解析 解析結果を開発者がビューアで確認 対処を記録 開発プロジェクト全体の品質状況を見える化 2) 変数 関数の命名規約を検査 3) SECコーディング作法 (ESCR C) 適合性チェックを強化 3
129ルール中 114ルールに対応 4) MISRA-C 適合性チェックを強化 MISRA-C:1998 127ルール中 120ルールに対応 MISRA-C:2004 141ルール中 131ルールに対応 5) 指摘メッセージを22 個追加 6) Visual Studio.NET 2002/2003 の資産に対応 7) Red Hat Linux 9 に対応 フローティング版 コマンド解析のみ 8) 英語版をサポート メニュー メッセージ ドキュメント類を完全英語化 ( インストール時に選択 ) 中文フォルダ 中文ソースコード (GB2312) に対応 2.23. 強化ポイント (V3.0 V3.0a) 1) SEC コーディング作法 (ESCR C) 適合性チェックを追加 129 ルール中 110 ルールに対応 2.24. 強化ポイント (V2.0 V3.0) 1) 組織的な品質の管理 把握を容易に実現 2) 検査指摘設定機能の提供 あらかじめ設定したグループや番号の指摘メッセージだけを出力 3) 英語モードをサポート メニュー メッセージ ドキュメント類を英語表示 ( インストール時に選択 ) 2.25. 強化ポイント (V1.0 V2.0) 1) MISRA-C 適合性チェックを追加 MISRA-C:1998 127ルール中 120ルールに対応 MISRA-C:2004 141ルール中 130ルールに対応 2) ANSI/C99 構文に対応 3) 指摘メッセージを133 個追加 4) 指摘メッセージ表示ウィンドウの処理改善 選択したグループのみで25000 件以内であれば表示可 5) C++ 解析時の必要ディスク容量削減 (V1の約 40% 削減 ) 4
3. 指摘メッセージ数 PGRelief バージョン V1 V2-V3 2007 2008 2009 2010 2011 2012 2013-2014 2015 2016 2017 2018 PGRelief バージョン V1 V2-V3 2007 2008 2009 2010 2011 2012 2013-2014 2015 2016-2017 2018 ( 単位 : 個 ) C 指摘 障害の可能性 移植性 保守性 移植性 保守性 堅牢性 ( セキュリその他可読性の向上効率性の向上命名規約違反可読性の向上ティ関連 ) の向上 ( 構文の誤りなど ) ( 特にファーム開発 ) 計 102 186 24 0 5 0 42 359 115 218 92 20 5 0 42 492 124 221 96 20 5 5 42 513 127 223 96 20 5 5 42 518 135 229 98 20 5 5 42 534 143 232 98 20 5 5 42 545 147 233 100 20 5 5 42 552 151 234 100 20 5 5 42 557 153 236 105 20 5 5 42 566 153 238 106 28 5 5 42 577 153 238 106 38 5 5 42 587 161 255 106 38 5 5 42 612 161 258 106 51 5 5 42 628 ( 単位 : 個 ) C++ 指摘 障害の可能性 移植性 保守性 移植性 保守性 堅牢性 ( セキュリその他可読性の向上効率性の向上命名規約違反可読性の向上ティ関連 ) の向上 ( 構文の誤りなど ) ( 特にファーム開発 ) 計 76 143 16 0 5 0 48 288 86 156 32 20 5 0 46 345 94 159 35 20 5 5 46 364 121 193 78 20 8 5 46 471 128 198 80 20 8 5 46 485 128 201 80 20 8 5 46 488 133 211 88 20 8 5 46 511 137 212 88 20 8 5 46 516 139 214 90 20 8 5 46 522 139 214 90 28 8 5 46 530 139 214 90 37 8 5 46 539 139 217 90 50 8 5 46 555 Windows, Windows Server, Windows Vista, Visual Studio, Excel は 米国およびその他の国における米国 Microsoft Corp. の登録商標です Interstage は富士通株式会社の登録商標です SOFTUNE は富士通セミコンダクター株式会社の登録商標です MISRA とそのロゴは MISRA コンソーシアムを代表して MIRA Ltd. の登録商標です Red Hat は米国およびその他の国における Red Hat Inc. の登録商標もしくは商標です Linux は Linus Torvalds の商標です CERT は 米国 Carnegie Mellon University の登録商標です 本資料に記載されている会社名および製品名称は各社の商標または登録商標です 本資料に記載されているシステム名 製品名等には必ずしも商標表示 (, TM) を付記していません 株式会社富士通ソフトウェアテクノロジーズ Copyright 1998-2018 FUJITSU LIMITED Copyright 2005-2018 FUJITSU SOFTWARE TECHNOLOGIES LIMITED 5