• 検索結果がありません。

目 次 1. はじめに QA C4.5.3J CD-ROM の 内 容 最 小 システム 構 成 の 推 奨 値 QA C PC 版 のインストール ライセンスのインストール インストール LM-HostID ( )... 5

N/A
N/A
Protected

Academic year: 2021

シェア "目 次 1. はじめに QA C4.5.3J CD-ROM の 内 容 最 小 システム 構 成 の 推 奨 値 QA C PC 版 のインストール ライセンスのインストール インストール LM-HostID ( )... 5"

Copied!
40
0
0

読み込み中.... (全文を見る)

全文

(1)

リリースノート

リリースノート

リリースノート

リリースノート

QA C PC

QA C PC

QA C PC

QA C PC 版

Version 4.5.

Version 4.5.

Version 4.5.

Version 4.5.3J

3J

3J

3J

2003/10/10

2003/10/10

2003/10/10

(2)

目次

目次

目次

目次

1.

1.

1.

1.

はじめに

はじめに ...3

はじめに

はじめに

2.

2.

2.

2.

QA C4.5.3J CD

QA C4.5.3J CD-

QA C4.5.3J CD

QA C4.5.3J CD

--

-ROM

ROM

ROM

ROM の

の内容

内容

内容...3

内容

3.

3.

3.

3.

最小

最小システム

最小

最小

システム

システム構成

システム

構成の

構成

構成

の推奨値

推奨値

推奨値

推奨値...4

4.

4.

4.

4.

QA C PC

QA C PC 版

QA C PC

QA C PC

版の

のインストール

インストール

インストール

インストール ...4

5.

5.

5.

5.

ライセンス

ライセンスの

ライセンス

ライセンス

のインストール

インストール

インストール

インストール ...5

5.1.

‘LM-HostID’ の取得 (ライセンス・ファイル取得の手続き) ... 5

5.2.

ネットワーク・ライセンス・サーバの起動... 5

5.3.

ネットワーク・ライセンス・サーバに対するクライアントとしての操作 ... 5

5.4.

ライセンスのレジストリ・キー... 5

6.

6.

6.

6.

解析

解析の

解析

解析

の改良点

改良点と

改良点

改良点

と新機能

新機能

新機能...6

新機能

6.1.

MISRA

対応 ... 6

6.2.

解釈(パーシング) ... 6

6.3.

プリプロセッサ... 7

6.4.

レイアウト... 7

6.5.

宣言/定義... 7

6.6.

リテラル ... 9

6.7.

変換 ... 9

6.8.

文 ... 10

6.9.

式 ... 11

6.10.

制御文... 12

6.11.

データフロー ... 12

6.12.

メトリックス ... 12

6.13.

設定 ... 12

7.

7.

7.

7.

インタフェース

インタフェースの

インタフェース

インタフェース

の改良点

改良点と

改良点

改良点

と新機能

新機能

新機能

新機能 ...13

7.1.

データベース ... 13

7.2.

使い勝手の向上... 13

7.3.

プロジェクト・パスの自動修正... 14

7.4.

解析後の処理の設定 ... 14

7.5.

パーソナリティと設定... 14

7.6.

メトリックス・ブラウザ ... 15

7.7.

注釈付きソースの表示... 15

7.8.

レポート ... 15

7.9.

メッセージ・システム... 16

7.10.

ヘルプ・システム ... 16

8.

8.

8.

8.

その

その他

その

その

他の

の改良点

改良点

改良点

改良点と

と新機能

新機能

新機能

新機能...17

9.

9.

9.

9.

既知

既知の

既知

既知

の問題

問題

問題...18

問題

10.

10.

10.

(3)

11.

11.

11.

11.

株式会社東陽

株式会社東陽テクニカ

株式会社東陽

株式会社東陽

テクニカ

テクニカ

テクニカへのお

へのお問合

へのお

へのお

問合

問合

問合せ

せ...20

10.

10.

10.

10.

Programming Research Limited

Programming Research Limited へのお

Programming Research Limited

Programming Research Limited

へのお

へのお

へのお問合

問合

問合せ

問合

せ...20

11.

11.

11.

11.

保証

保証の

保証

保証

の免責

免責

免責...20

免責

12.

12.

12.

12.

著作権

著作権について

著作権

著作権

について

について

について ...21

13.

13.

13.

13.

商標

商標 ...21

商標

商標

付録

付録

付録

付録 A.

A.

A.

A.

追加

追加された

追加

追加

された

されたメッセージ

された

メッセージ

メッセージ

メッセージ ...22

付録

付録

付録

付録 B.

B.

B.

B.

変更

変更された

変更

変更

された

されたメッセージ

された

メッセージ

メッセージ

メッセージ ...23

付録

付録

付録

付録 C.

C.

C.

C.

削除

削除された

削除

削除

された

されたメッセージ

された

メッセージ

メッセージ

メッセージ ...35

付録

付録

付録

付録 D.

D.

D.

D.

ライセンス

ライセンスの

ライセンス

ライセンス

のインストール

インストール及

インストール

インストール

及び

び設定

設定

設定

設定 ...37

付録 D.1.

FLEXlm

のインストール ... 37

付録 D.2.

ネットワーク・ライセンス・サーバの起動 ... 37

付録 D.3.

ネットワーク・ライセンス・サーバに対するクライアントの設定... 38

(4)

1.

1.

1.

1. はじめに

はじめに

はじめに

はじめに

本書では、Windows 98, Me, NT, 2000, XP 用の QA C ソースコード・アナライザ PC 版の Version

4.5.3J について記述してあります。

本書には、ソフトウェアをシステムにインストールする前にお読みいただきたい重要な情報が含ま

れています。

2.

2.

2.

2. QA C4.5.3J CD

QA C4.5.3J CD

QA C4.5.3J CD-

QA C4.5.3J CD

--

-ROM

ROM

ROM の

ROM

の内容

内容

内容

内容

QA C4.5.3J の CD-ROM には以下のファイルが収録されています。

同梱されているファイルまたはフォルダ

説明

1. ¥license_ap.doc QA

C ライセンス申請書 (*1)

2. \FLEXlm \enduser.pdf FLEXlm の英語版エンドユーザズガイド

3. \FLEXlm\Readme_sjis.txt FLEXlm の Readme ファイル(SJIS)

4. \FLEXlm\Readme_euc.txt FLEXlm の Readme ファイル(EUC)

5. \FLEXlm\FLEXlm_for_PC.zip

FLEXlm PC 版の本体

6. \FLEXlm\FLEXlm_for_Solaris.tar FLEXlm

Solaris 版(7、8 用)の本体

7. \FLEXlm\FLEXlm_for_Sol26.tar FLEXlm

Solaris 版(2.6 用)の本体

8. \FLEXlm\FLEXlm_for_HP.tar FLEXlm

HP 版の本体

9. \QAC-4.5.3J\Docs\

QAC-4.5.3J-PC-ReleaseNotes.pdf

QA C PC 版 4.5.3J のリリースノート

10. \QAC-4.5.3J\Docs\

QAC-4.5.3J-PC-UsersGuide.pdf

QA C PC 版 4.5.3J のユーザーズガイド

11. \QAC-4.5.3J\Docs\

QAC-4.5.3J-UNIX-ReleaseNotes.pdf

QA C UNIX 版 4.5.3J のリリースノート

12. \QAC-4.5.3J\Docs\

QAC-4.5.3J-UNIX-UsersGuide.pdf

QA C UNIX 版 4.5.3J のユーザーズガイド

13. \QAC-4.5.3J\UNIX\QAC_4.5.3J_HP.tar.gz QA C HP 版 4.5.3J インストール用ファイ

14. \QAC-4.5.3J\UNIX\QAC_4.5.3J_Sol.tar.gz

QA C Solaris 版 4.5.3J インストール用ファ

イル

15. \QAC-4.5.3J\PC\setup.exe その他

QA C PC 版 4.5.3J インストール用ファイ

16. \toyo_util\UNIX\toyo_util_for_UNIX.tar UNIX 版コマンド解析用ツール (*2)

17. \toyo_util\PC\toyo_util_for_PC.zip PC 用コマンド解析用ツール

*1) license_ap.doc は Word 形式のファイルです。

*2) 15 項の UNIX 版 toyo_util は、HP-UX 版 QA C および Solaris 版 QA C の tar ファイル(12

および 13 項)にも同梱されています。詳細は、QA C UNIX 版「リリースノート」をご参照ください。

(5)

3.

3.

3.

3. 最小

最小

最小システム

最小

システム

システム構成

システム

構成

構成

構成の

の推奨値

推奨値

推奨値

推奨値

QA C 4.5.3J が必要とする最小システム構成は、以下の通りです。

ネイティブな Win32 環境

画面の解像度: 800 × 600 ピクセル 以上

Pentium

®

プロセッサ 以上

システムメモリ: 128 M バイト 以上

ディスク容量: 40 M バイト 以上 (デフォルトの Full インストール時)

注)解析時には、解析結果を保存するための領域が必要になります。十分な空き領域のあ

る環境でご使用下さい。

4.

4.

4.

4. QA C

QA C

QA C PC

QA C

PC

PC

PC 版

版の

のインストール

インストール

インストール

インストール

QA C PC 版をコンピュータにインストールする手順は以下の通りです。

1. QA C PC 版の CD-ROM を装着します。

2. サブ・ディレクトリ\QAC-4.5.3J\PC にある setup.exe を実行します。

3. 表示された手順と、以下に記す画面上の選択に従って下さい。

セットアップ・オプションには、Full と Custom の 2 通りがあります。Full をお勧めします。Custom

の場合には、どのコンポーネントをインストールするかを選択することができます。

QA C PC 版のセットアップを 2 回以上行った場合、アンインストールは、直前のインストール時に

選択されたコンポーネントに対してのみ行われます。例えば、最初のセットアップ時にヘルプ・ファ

イルをインストールせず、次にヘルプ・ファイルのみをインストールした場合は、QA C PC 版のアン

インストールを行うとヘルプ・ファイルのみがアンインストールされます。

アンインストールは、「コントロールパネル」->「アプリケーションの追加と削除」から行ってください。

(6)

5.

5.

5.

5. ライセンス

ライセンス

ライセンスの

ライセンス

のインストール

インストール

インストール

インストール

以下に、ネットワーク・ライセンスのインストールに関する手順を記述します。

5.1.

5.1.

5.1.

5.1. ‘LM

‘LM

‘LM

‘LM-

--

-HostID’

HostID’

HostID’

HostID’ の

の取得

取得

取得

取得 ((((ライセンス

ライセンス・

ライセンス

ライセンス

・・

・ファイル

ファイル

ファイル

ファイル取得

取得の

取得

取得

の手続

手続

手続き

手続

き))))

QA C の CD の\FLEXlm\FLEXlm_for_PC.zip を解凍したフォルダ内にある“lmutil lmhostid”コ

マンドを実行すると、以下のように LM-HostID が出力されます。

\FLEXlm\FLEXlm_for_PC.zip の解凍および FLEXlm のインストールについては、「付録 Dライ

センスのインストール及び設定」をご参照ください。

実行例:

C:\Program Files\PRQA\FLEXlm>lmutil lmhostid

lmutil - Copyright (C) 1989-2002 Globetrotter Software, Inc.

The FLEXlm host ID of this machine is "00c04f07c7d3"

この情報を QA C パッケージに同梱されている「QA C/QA C++ライセンス申請書」にご記入の

上、(株)東陽テクニカ ソフトウェア・ソリューション QA C / QA C++サポート係まで FAX してください。ま

た、「QA C/QA C++ライセンス申請書」と同等の情報を

ss_support@toyo.co.jp

に e-mail でお

送りいただいても、ライセンス・ファイルを発行いたします。

5.2.

5.2.

5.2.

5.2. ネットワーク

ネットワーク

ネットワーク

ネットワーク・

・・

・ライセンス

ライセンス

ライセンス・

ライセンス

・サーバ

・・

サーバ

サーバの

サーバ

の起動

起動

起動

起動

サーバの LM-HostID に合った有効なライセンス・ファイルが必要となります。LM-HostID の取得

については、上述の手順をご参照下さい。

QA C の CD の\FLEXlm\FLEXlm_for_PC.zip をサーバ上のディレクトリにコピーし、解凍、インス

トールして下さい。ライセンス・サーバは、lmtools.exe によって制御されます。操作手順は、「付録

Dライセンスのインストール及び設定」をご参照下さい。

5.3.

5.3.

5.3.

5.3. ネットワーク

ネットワーク・

ネットワーク

ネットワーク

・・

・ライセンス

ライセンス

ライセンス・

ライセンス

・サーバ

・・

サーバ

サーバに

サーバ

に対

対する

する

する

するクライアント

クライアント

クライアント

クライアントとして

として

としての

として

の操作

操作

操作

操作

QA C を起動するとプロンプトが表示されますので、ライセンス・サーバ名を@<

サーバ名

>の形式

で指定して下さい。以降の QA C の実行に備えて、ライセンス・サーバ名がレジストリに記録されま

す。操作手順は、「付録 Dライセンスのインストール及び設定」をご参照下さい。

5.4.

5.4.

5.4.

5.4. ライセンス

ライセンス

ライセンス

ライセンスの

のレジストリ

レジストリ

レジストリ・

レジストリ

・・

・キー

キー

キー

キー

QA C の実行時、ライセンス・ファイル名またはサーバ名は、各クライアント・マシンの以下のレジス

トリ・キーに保存されています。

HKEY_LOCAL_MACHINE/SOFTWARE/FLEXlm Licence Manager/PRFLEXD_LICENSE_FILE

このキーは、アプリケーションがライセンスを取得する際に、path 変数のようにライセンス・ファイル

名やサーバ名を検索するのに使用されます。

(7)

6.

6.

6.

6. 解析

解析

解析

解析の

の改良点

改良点

改良点

改良点と

と新機能

新機能

新機能

新機能

CR で始まる番号は、PRL 社の管理番号です。

6.1. MISRA

MISRA

MISRA 対応

MISRA

対応

対応

対応

! CR506: MISRA ルール 54「空の文はそれ自身を一行だけにおかなければならず、同じ行

にはその他どんなテキストもおいてはならない。」: 新しいメッセージ 3141 が、コメントのみ

を伴った空の文に対して出力されます。

! CR516: MISRA ルール 93「関数形式マクロよりは、関数を使用すべきである。」: 新しいメッ

セージ 3429 が出力されます。

! CR621: MISRA ルール 14「

char

型は常に

unsigned char

signed char

で定義されなけれ

ばならない。」: 新しいメッセージ 3625 が、単なる char 型が使用されている全ての箇所で

出力されます。

! CR628: MISRA ルール 74「引数の一部でも識別子が与えられた場合、宣言や定義で使用

された識別子は等しくなければならない。」: 新しいメッセージ 1330 が出力されます。

! CR662: MISRA ルール 113「構造体(または共用体)のメンバには全て名前をつけ、その名

前を経由してのみアクセスしなければならない。」: 新しいメッセージ 660 が、名前のない構

造体メンバに対して出力されます。

! CR762: MISRA ルール 91「マクロはブロック内で、定義される (

#define

)と同時に定義を解

除(

#undef

)されてはならない。」: 新しいメッセージ 842 が出力されます。

! CR763: MISRA ルール 111「ビットフィールドは、

unsigned int

型か

signed int

型に対しての

み定義しなければならない。」: 新しいメッセージ 634 が、単なる int、short または char が

ビットフィールド宣言に使用された場合に出力されます。(既存のメッセージ 635 は非 int

ビットフィールド宣言に使用に対して出力されます。)

6.2.

6.2.

6.2.

6.2. 解釈

解釈

解釈(

解釈

((

(パーシング

パーシング

パーシング)

パーシング

))

! CR662: 入れ子になった名前のない構造体のメンバを指すことを許す言語拡張をサポート

しました。新しいメッセージ 662 が出力されます。

! CR785: -d で設定したマクロでセミコロンを定義した際に発生していたパーシング・エラー

を修正しました。

! CR800: ‘for’ループの条件式に増分/減分演算子がある場合に発生していたパーシン

グ・エラーを修正しました。

! CR807: キャストを含む式や浮動小数点式で初期化された static オブジェクトに対して、

メッセージ 685 が誤って出力されていたのを修正しました。

! CR821: 書式指定子 %% に対して、メッセージ 160(%s 番目の変換指定子はサポートされて

(8)

! CR853: セミコロン(‘;’)を含む文字列リテラルが改行文字(‘\’)の後に続く合法的な記述

に対し、メッセージ 259(文字列リテラルに改行文字(new-line character)が含まれていま

す。)が誤って出力されていたのを修正しました。

! CR863: Microsoft や Hiware コンパイラに含まれるインライン・アセンブラ・コードに対応す

るために、新たに幾つかの形式の構文をサポートできるようになりました。

! CR884: “munch” の能力を増強し、‘@’ トークンを直接扱うことができる ‘_munch_at’ を備

えました。

! CR885: ビットマップ・データ型(言語拡張)の識別子を定義するのに使用される ‘.’ 演算

子が、ファイル有効範囲(スコープ)内で解釈できるようになりました。

6.3.

6.3.

6.3.

6.3. プリプロセッサ

プリプロセッサ

プリプロセッサ

プリプロセッサ

! CR748: #include “filename” 文に対して、ソースファイルが置かれたディレクトリが最初に検

索されなかった点を修正しました。

! CR796: 波括弧(‘{’)が同じ行にない場合にも、‘_munch_paren’ が正しく動作するように修

正しました。

! CR816: 複雑なマクロに対してメッセージ 3411(マクロ定義の中に、対になっていない角括

弧または括弧があります。)が出力される問題を修正しました。

! CR864: “##” 演算子の誤用が検出された後の、復帰能力を向上しました。

! CR870: マクロ定義内の特定のキーワードや字句の使用に関するメッセージ群を再編成し、

一部は MISRA ルールに対応させました。

3413 このマクロ定義は typedef に置き換えることができるはずです。

3414 マクロ定義に記憶域修飾子 ‘%s’ が含まれています。

3428 マクロ定義に型修飾子 ‘%s’ が含まれています。

3412 マクロ定義に、‘{‘, ‘}’, ‘;’ またはキーワードが含まれています。

3439 マクロはキーワードの再定義に使用してはいけません。

6.4.

6.4.

6.4.

6.4. レイアウト

レイアウト

レイアウト

レイアウト

! CR886: #define で除去された字句に対する桁位置の補正が正しくないためにメッセージ

2200(この行の段付けは上の行より左に寄っています。)が出力される問題を修正しました。

6.5.

6.5.

6.5.

6.5. 宣言

宣言

宣言/

宣言

/定義

定義

定義

定義

! CR758: .met ファイル内の<DEFINE>レコードが、連続する暗黙的な関数宣言に対して正

しく生成されない問題を修正しました。

! CR760: メッセージ 3203(変数 ‘%s’ を設定しましたが、その後使用していません。)がポ

インタに対して正しく出力されない問題を修正しました。

(9)

! CR813: メッセージ 3672(const ではない関数へのポインタを使用しています。)は、typedef

に対しては出力されなくなりました。このメッセージは、宣言/定義のみを対象としています。

! CR847: メッセージ 3002(関数 ‘%s()’ を定義する際に識別子リストと仮引数宣言を分離し

て記述するのは、旧式の方法です。)は、空の仮引数リストと共に定義された関数に対して

は出力されなくなりました。

! CR848: メッセージ 422/423(関数呼び出しの実引数の数が、そのプロトタイプで示される

数より少なすぎます。/多すぎます。)は、プロトタイプが明記されている場合以外は出力さ

れなくなりました。プロトタイプが明記されていない場合には、既存のメッセージ 3319(定義

での引数の数と異なる引数の数で関数を呼び出しています。)が出力されます。

! CR855: メッセージ 1305(広域変数 ‘%s’ は ‘const’ と宣言されていますが、‘static’ とも

‘extern’ とも指定されていません。- C では、これは ‘extern’ を意味します。しかし C++

では ‘static’ を意味します。)が、配列の宣言に対しても出力されるようになりました。

! CR862: 以下のメッセージについて、ファイルまたは関数の終端から定義された位置へと、

メッセージ出力位置を変更しました。

554 ‘static %s()’ が使われていますが定義が与えられていません。

612 オブジェクト ‘%s’ のサイズが 32767 バイトを超えます。- プログラムは ISO 規格に適

合していません。

620 変数 ‘%s’ は暗黙的に初期化されません。サイズが不明だからです。

1306 ‘%s’ に対する複数の一時的定義があります。- C では動作しますが、C++では動作

しません。

3202 ラベル ‘%s:’ はこの関数では使用していません。削除できます。

3203 変数 ‘%s’ を設定しましたが、その後使用していません。

3218 ファイル有効範囲にある静的変数 ‘%s’ は一つの関数からしかアクセスされていま

せん。

3408 ‘%s’ は外部から見えます。

! CR865: メッセージ 2547(タグ ‘%s’ を使うことによってよりグローバルな宣言を隠していま

す。)が、union タグや enum タグだけではなく、struct タグに対しても出力されるようになり

ました。

! CR867: 関数の戻り値の型がないものや、return 文が存在しないか正しくないものに対す

るメッセージが連携して動作するようになり、少ないメッセージ出力で済むようになりました。

戻り値を指定せずに関数が定義された(‘int’ と仮定される)場合: ‘return;’ を検出す

るとメッセージ 3113 が出力され、return 文が存在しないとメッセージ 3114 が出力され

ます。

関数が ‘void’ 型で定義された場合: ‘return 式;’ を検出するとメッセージ 746 が出

力されます。

関数が ‘void’ 型以外の型を返す場合: ‘return;’ を検出するとメッセージ 1325(C++と

の互換性に関する警告)とメッセージ 745 が出力され、return 文が存在しないとメッ

セージ 744 が出力されます。

関数内に ‘return;’ と ‘return 式;’ が混在している場合、更にメッセージ 754 が出力

されます。

関数内に複数個の return 文が含まれている場合、メッセージ 2006 が出力されます。

(10)

! CR871: メッセージ 776~779(内部/外部識別子名がユーザ定義/ISO 限界の文字数の

範囲内で一致)は、各識別子が検出された最初の 1 回のみ出力されるようになりました。

! CR871: メッセージ 776 と 778 は、コンパイラ・パーソナリティに属する -strict オプションを

オフにしても抑止されなくなりました。これらのメッセージを抑止する場合には、メッセージ・

パーソナリティで抑止する通常の方法を用いて下さい。

! CR880: メッセージ 3308(‘%s()’ は ‘static’ と宣言されました。しかしどこにも定義がありま

せん。この宣言は冗長です。)が、ヘッダ・ファイル内の宣言に対しては抑止されてしまう問

題を修正しました。

! CR881: 新しいメッセージ 3219(static 関数 ‘%s()’ は、この翻訳単位内で使用されていま

せん。)が追加されました。

! CR883: メッセージ 3210(グローバルな識別子 ‘%s’ は宣言されましたが使用されていま

せん。)が、構造体の使用されていないメンバに対して、他のメンバが使用されているにも

かかわらず出力されてしまう問題を修正しました。

6.6.

6.6.

6.6.

6.6. リテラル

リテラル

リテラル

リテラル

! CR744: 接尾辞の付いたリテラル定数が誤ったデータ型として解釈されてしまう(例:

unsigned int のはずが long )問題を修正しました。

! CR798: メッセージ 3324(符号無しの値は常にゼロかゼロ以上です。このテストは常に真に

なります。)が、符号無しの値をゼロと比較する際に誤って出力されていた問題を修正しま

した。

! CR809: (QA C 4.4.2 で解釈をサポートするようになった)2 進数定数に対し、新しいメッ

セージ 246(2 進数定数は一部のコンパイラでのみ使用できます。)が追加されました。.

! CR818: 新しいメッセージとして、文字列リテラルの直接使用に対するもの(メッセージ

3122)と文字定数の直接使用に対するもの(メッセージ 3123)が追加されました。

! CR861: ビットフィールドのサイズを定義するのに使用される定数に対してはメッセージ

3120 は出力されなくなり、この状況を検出するために、新しいメッセージ 3131(ビットフィー

ルドの大きさの指定に ‘%s’ が直接使用されています。)が追加されました。

! CR882: int 型以外の定数に対して、メッセージ 1271(int 型以外の式を使用しても、列挙

定数の型は変更されません。)が出力されない問題を修正しました。

6.7.

6.7.

6.7.

6.7. 変換

変換

変換

変換

! CR611: 符号無しデータの汎整数拡張に関係する式に対して、メッセージ 4130(符号付き

データに対するビット単位の演算は未定義の結果になります。)の出力を抑止するように改

良しました。

! CR725: メッセージ 3892(明示的なキャストは他の型への暗黙的なキャストです。)が、void

* 型にキャストされた式への代入や比較に対しては出力されなくなりました。

(11)

! CR739: 符号無しデータの汎整数拡張に関係する式に対して、メッセージ 502(符号付き

データに対する右シフトは、算術型と論理型の両方の可能性があります。)の出力を抑止

するように改良しました。

! CR679: 関数呼び出しの実引数が一致しない状況が検出された場合、以下の新しいメッ

セージが出力されます。

1331: 実引数の型か個数が、この関数の前の使用時と異なります。

1332: 実引数の型か個数が、この後で見つかる関数プロトタイプと異なります。

1333: 実引数の型か個数が、この後で見つかる関数定義と異なります。

! CR829: 整数型と浮動小数点型との間の暗黙の変換に関するいくつかの問題が解消され

ています。(メッセージ 3700~3831、3900~4031)

! CR843: 符号付きデータと符号無しデータとの間の暗黙の変換に関するいくつかの問題が

解消されています。(メッセージ 3700~3831、3900~4031)

! CR845: 単なる char データが関係する暗黙の変換に関するいくつかの問題が解消されて

います。(メッセージ 3700~3831、3900~4031)

! CR851: 汎整数拡張と実引数拡張について完全な範囲で識別するための新しいメッセー

ジが導入されました。既存のメッセージ 2100, 2101 と新しいメッセージ 2102~2107 が汎

整数拡張を扱い、メッセージ 2110~2118 がデフォルトの実引数拡張に対して出力されま

す。

! CR856: 浮動小数点定数のバランシングに関係する式において、メッセージ 1262 が正しく

出力されない問題を修正しました。

! CR858: 新しいメッセージ 1274/1275(接尾辞が付いていない/付いた浮動小数点型リテ

ラルが、他のオペランドの暗黙的なキャストを引き起こします。)が追加されました。

! CR858: 新しいメッセージ 1276(整数型リテラルが、代入の前に暗黙的に浮動小数点型へ

キャストされます。)が追加されました。

! CR859: メッセージ 1260(整数型リテラルが、暗黙的に浮動小数点型へキャストされます。)

は、明示的なキャストに対しては出力されなくなりました。

! CR874: 暗黙的キャストに関するメッセージ(3700 番台)が、リテラル定数の変換に関する

メッセージ(1250~1276)と重複する場合には出力されなくなりました。

6.8.

6.8.

6.8.

6.8. 文

! CR695: メッセージ 402(副作用完了点の間で、‘%s’ が変更され、アクセスされています。-

評価の順番は未定義です。)が、括弧付きの代入(‘(a) = a;’)に対して正しく出力されない

問題を修正しました。

! CR695: メッセージ 402(副作用完了点の間で、‘%s’ が変更され、アクセスされています。-

評価の順番は未定義です。)が、配列型の実引数が関係する式の一部で正しく出力され

ない問題を修正しました。

(12)

! CR747: メッセージ 3217(ローカル変数のアドレスがそのメモリが開放された後も維持され

る静的変数に代入されています。)は、広域変数から関数の static 変数への代入時には

出力されなくなりました。

! CR788: メッセージ 3112(この文は何の副作用もありません。- 削除できます。)は、volatile

オブジェクトに対しては出力されなくなりました。

! CR839: メッセージ 404(副作用完了点の間で2つ以上のデータ・アイテムが変更されるか

もしれません。- データがオーバーラップすると危険です。)が、メッセージ 402(副作用完

了点の間で、‘%s’ が変更され、アクセスされています。- 評価の順番は未定義です。)の

かわりに誤って出力される問題を修正し、メッセージ 404~406 は廃止されました。

6.9.

6.9.

6.9.

6.9. 式

! CR722: 配列の終端の 1 つ先の要素のアドレスを取得した場合には、メッセージ 3680(配

列の領域外を指しています。)は出力されなくなりました。このアドレスの内容を参照した場

合には、新しいメッセージ 3683(配列の終端の 1 つ先の要素の位置を指しています。)が

その危険性を指摘します。

! CR761: メッセージ 3344(値のテストは明示的に行うべきです。)が、条件演算子(‘? :’)の

最初のオペランドに対しても出力されるようになりました。

! CR789: 新しいメッセージ 4131(符号付きのオペランドを左シフトしています。)が追加され

ました。

! CR790: メッセージ 500(シフト演算子の右オペランドが負の値です。- これは定義されてい

ません。)とメッセージ 501(シフト演算子の右オペランドが大きすぎます。- これは定義され

ていません。)が正しく出力されない問題を修正しました。

! CR797: メッセージ 4130(符号付きデータに対するビット単位の演算は未定義の結果にな

ります。)が、‘signed short’ 型に対しても出力されるようになりました。

! CR838: メッセージ 556(代入の左オペランドは変更可能なオブジェクトでなければなりま

せん。)が、ポインタを介して定数を変更しようとした場合にも出力されるようになりました。

! CR873: メッセージ 3322(否定 ‘!’ のオペランドが定数です。)が、 ‘#define TRUE

(!FALSE)’ のような定数 0 または 1 に対しては出力されなくなりました。

! CR875: メッセージ 4108/4109(論理演算子の左側/右側のオペランドが算術式です。)と

4111/4112(関係演算子の右側/左側のオペランドが論理式です。)が、オペランドとして

式だけでなく単純な変数に対しても出力されるようになりました。

! CR875: 新しいメッセージ 4113(関係演算子の両側のオペランドが論理式です。)が追加さ

れました。

(13)

6.10.

6.10.

6.10.

6.10. 制御文

制御文

制御文

制御文

! CR650: ‘for’ ループの増分式で使用されている変数がループ本体の中で初期化されて

いる場合に、メッセージ 3321(変数 ‘%s’ は、この時点では設定されていないかもしれま

せん。)が誤って出力されてしまう問題を修正しました。

! CR724: ループ制御変数に対するチェック(2460 番台のメッセージ)が、構造体の要素に

対しては出力されなくなりました。

! CR815: switch 文の case ラベルの後に空のブロックがある場合、そのブロックの後の、次

の case の前にある行で、メッセージ 3201(この文には到達できません。)が誤って出力され

てしまう問題を修正しました。

! CR819: メッセージ 2003(空でない case は明示的な break で終わるべきです。)が、switch

文の default ラベルに対しては出力されない問題を修正しました。

6.11.

6.11.

6.11.

6.11. データフロー

データフロー

データフロー

データフロー

! CR787: メッセージ 3321(変数 ‘%s’ は、この時点では設定されていないかもしれません。)

が、共用体のメンバに対して誤って出力されてしまう問題を修正しました。

! CR850: メッセージ 3204(変数 ‘%s’ を1度しか設定していません。- それが決して変わらな

いことを示すために ‘const’ を使用することを考慮するべきです。)が、 定数値による代入

の場合にのみ出力されるようになりました。

6.12.

6.12.

6.12.

6.12. メトリックス

メトリックス

メトリックス

メトリックス

! CR836: STCDN(コメント密度)メトリックスが、 ファイル内のどの位置にあるコメントをカウン

トするかの設定に応じて正しく算出されるようになり、コメントのカウント対象を設定するオプ

ション -comment が、アナライザ・パーソナリティに加わりました。

6.13.

6.13.

6.13.

6.13. 設定

設定

設定

設定

! CR699: 新しい設定オプション(-intrinsictype)で、size_t, ptrdiff_t, wchar_t の各々の実装

定義型のサイズを指定できるようになりました。これらの実装定義型の設定がソースコード

内の typedef と矛盾する場合には、新しいメッセージ 40~42 が出力されます。

!

CR824: ユーザが設定したメトリックス境界値を、-threshold オプションで設定できるように

なりました。境界値を超えた場合には、予め指定したユーザ・メッセージまたは新しいメッ

セージ 4700(メトリックス %s の値が境界値を超えています。)が出力されます。

(14)

7.

7.

7.

7. インタフェース

インタフェース

インタフェース

インタフェースの

の改良点

改良点

改良点

改良点と

と新機能

新機能

新機能

新機能

CR で始まる番号は、PRL 社の管理番号です。

7.1.

7.1.

7.1.

7.1. データベース

データベース

データベース

データベース

CR810: BDE(Borland Database Engine)データベースが廃止され、メモリ内のデータベース・

エントリに置き換えられました。対応する設定エントリの中で、冗長となったもの(データベース・

パス、データベースのロードと管理)は廃止されました。各種のブラウザで限定されたファイル

選択を行うために、新しい設定ウィンドウでは、プロジェクト内の使用可能な解析済みファイル

をサブセットとして選択できるようになりました。

7.2.

7.2.

7.2.

7.2. 使

使

使い

使

い勝手

勝手

勝手

勝手の

の向上

向上

向上

向上

! CR899: 定義の後に外部宣言があると、ソースファイルへのジャンプに失敗する問題を解

決しました。(QA C 4.5.1 で対応)

! CR982: メッセージ・パーソナリティ内でのユーザ・メッセージの表示において、再定義され

たメッセージ・グループが新しいレベルに誤って割り当てられ、ユーザ・メッセージの複数の

実体が表示されない問題を解決しました。(QA C 4.5.1 で対応)

! CR402: ファイルとフォルダに対して、ドラッグ・アンド・ドロップ動作ができるようになりました。

! CR767: 解析出力ファイルが、メニューからの選択によって削除できるようになりました。

! CR801: より大きなファイル・エントリ・リストが、以前のようなファイル・リスト作成に多くの時

間がかかることなく、表示されるようになりました。

! CR802: 自動生成機能が拡張され、新規プロジェクトだけでなく、プロジェクト内のサブ・

フォルダに対しても操作できるようになりました。

! CR477, CR833: 解析の一時停止で、解析再開まで解析プロセスを正確に停止させること

ができるようになりました。

! CR795: 長いファイル名やパス名に対して、解析プロセスの開始(解析と注釈付きソースの

生成)前に警告を発して解析を中止するようになりました。

! CR803: 或るフォルダを解析すると、以下の全てのサブ・フォルダも解析されるようになりま

した。

(15)

7.3.

7.3.

7.3.

7.3. プロジェクト

プロジェクト

プロジェクト・

プロジェクト

・・

・パス

パス

パス

パスの

の自動修正

自動修正

自動修正

自動修正

! CR844: プロジェクト・ファイルを開くと、ファイルやパスが存在しない場合にはユーティリ

ティが動作して、半自動的にパスを修正するようになりました。存在しないパスやファイルが

最初に検出されると、ダイアログが表示されます。エントリが修正された後に、「全てに適

用」を選択すると、以降の全ての存在しないファイルやパスに対して同じ修正が行われま

す。なお、「適用」、「全てに適用」、「無視」、「全て無視」のどれかを選択することができま

す。

7.4.

7.4.

7.4.

7.4. 解析後

解析後

解析後の

解析後

の処理

処理

処理

処理の

の設定

設定

設定

設定

! CR844: 解析後の処理の設定が、メッセージ・パーソナリティ内に常駐するようになりました。

「拡張設定」タブ内には、(設定済みならば)現在の完全な解析後の処理用のコマンドラ

インが表示され、解析後の処理を設定するフォームを入力するためのボタンが備えられて

います。

7.5.

7.5.

7.5.

7.5. パーソナリティ

パーソナリティ

パーソナリティと

パーソナリティ

と設定

設定

設定

設定

! CR844: 「パーソナリティ・パス」という概念が廃止され、パーソナリティの表現と保存がフル・

パスとファイル名で行われるようになりました。この改良によって、パーソナリティの共有が

容易になり、特に異なるパーソナリティを別個の位置に置くことができるようになりました。例

えば、コンパイラ・パーソナリティを共通の位置に、アナライザ・パーソナリティを別の位置に

置くような形態が挙げられます。

! CR823: 設定エントリの幾つかを、qac.cfg に依存しないようにしました。qac.cfg から除去さ

れたものには、‘#level’ セクション(メッセージ・レベルの名称を入力するのに使用)と

‘#cyclomatic’, ‘#paths’, ‘#general’, ‘#comments’ セクション(次項の新しいメトリックス

境界値の設定を参照)が挙げられます。qac.cfg の他のセクションの中で特に将来のバー

ジ ョ ン で の 廃 止 や 置 き 換 え が 検 討 さ れ て い る も の と し て は 、 ‘#format’, ‘#options’,

‘#messages’ が挙げられます。

! CR451: メトリックス境界値の設定が qac.cfg からアナライザ・パーソナリティに移され、完全

にユーザ側で定義できるようになりました。以前 qac.cfg 内にあった固定された境界値は

残っておらず、関連するメッセージはメッセージ・システムから除去されました。

! CR841: メッセージ・パーソナリティでのユーザ・メッセージ・ファイルの設定が単純化され、

ユーザ側で単にファイルを選択するだけになりました。指定されたテキスト・エディタを用い

て、このファイルを編集することもできます。内部の設定形式では、以前と同様に -usrname

と -usrpath として残っています。

! CR823: ユーザ・メッセージ・ファイルのパスを指定(-usrpath エントリが必要)すると、この

-usrpath の位置が検索されて、この中にある HTML 形式のメッセージ説明用のファイルが、

デフォルトの位置にあるものよりも優先的に使用されます。このようにして、ユーザ固有の

メッセージの説明(例えばプログラミング標準への準拠に関するものを備える等)を、簡単

に設定したり注釈付きソースコードにリンクしたりすることができます。

(16)

! CR841: 連続したメッセージをまとめてオンまたはオフに設定する場合、メッセージ・パーソ

ナリティには各メッセージ番号が別個に保存されるのではなく、xxxx-yyyy という形式で保

存されるようになりました。

! CR842: 抑止されたメッセージを表示するための -hiddenwarnings オプションが、メッセー

ジ・パーソナリティの「表示」タブ内で設定できるようになりました。

! CR860: コンパイラ・パーソナリティで、型のサイズとアライメントの設定部の表示が視覚的

に確認できるように統合され、設定できるサイズ、現在の設定、各々の型が取り得る範囲が

表示されます。

! CR824: アナライザ・パーソナリティで、あらゆるメトリックスについて境界値を設定すること

ができるようになりました。設定時の構文でメッセージ番号を指定しなかった場合には、メッ

セージ 4700 がデフォルトとして使用され、メトリックス名と実際の値がエラー・ファイルに送

られます。

! 「構成」メニューの「オプション」ウィンドウで、新規または自動作成されるプロジェクトに適用

されるデフォルトのパーソナリティを、自由に定義できるようになりました。

7.6.

7.6.

7.6.

7.6. メトリックス

メトリックス

メトリックス・

メトリックス

・・

・ブラウザ

ブラウザ

ブラウザ

ブラウザ

! CR805: ソーティングのアルゴリズムが改善され、巨大なメトリックス・データの扱いが高速化

されました。

7.7.

7.7.

7.7.

7.7. 注釈付

注釈付

注釈付き

注釈付

きソース

ソース

ソースの

ソース

の表示

表示

表示

表示

! CR811: HTML リンクの書式を、主要なブラウザとの互換性を持った 形式に変更しました。

! CR823: メッセージ・ファイル内の #levelname エントリを使った名称でメッセージ・レベルを

割り当てることができるようになり、ユーザ・メッセージ・ファイルの内容で上書きすることもで

きるようになりました。注釈付きソースでは、常にメッセージ・レベル番号に変換されて出力

されます。

! CR878: メッセージが、各メッセージ・レベルの定義内容ではなく、警告レベル番号と共に

表示されるようになりました。

7.8.

7.8.

7.8.

7.8. レポート

レポート

レポート

レポート

! CR822: 「レポート」メニューの選択肢から「メトリックス・サマリ」と「未使用変数」が外されまし

た。

! CR822: 「近似名の解析」が、1 回解析を行った全てのファイルに対して動作できるようにな

りました。

! CR488: 「未使用外部識別子」が、或る識別子を誤って除外して出力されていたのを修正

し、一方で main, winmain, dllmain の各エントリ・ポイントはリストから除外されました。

(17)

! CR822: 「識別子の宣言」のレイアウトが、項目間を空白で埋めることによって、整然と表示

されるようになりました。

! CR450: ユーザが定義可能なカスタム・レポートの作成と編集が、「レポート」メニューの「カ

スタム・レポート」から利用できるようになりました。

7.9.

7.9.

7.9.

7.9. メッセージ

メッセージ

メッセージ・

メッセージ

・・

・システム

システム

システム

システム

! CR835: メッセージ 342(K&R コンパイラは ISO 文字列連結演算子 ‘##’ をサポートしてい

ません。)のテキストが存在しないという問題を修正しました。

! メッセージで使われる数々の用語を、明快さを増して、技術的な専門用語を極力減らす方

針に基づいて、変更しました。

7.10.

7.10.

7.10.

7.10. ヘルプ

ヘルプ

ヘルプ

ヘルプ・

・・

・システム

システム

システム

システム

! 多くの解析メッセージが出力される様子を説明するためのプロジェクト例を含む幾つかの

プロジェクトを、製品に含めました。

! ヘルプ・システムが拡張され、技術的な用語や C 言語としての見地に関する情報への参

照を含むセクションを設けました。

(18)

8.

8.

8.

8. その

その

その

その他

他の

の改良点

改良点

改良点

改良点と

と新機能

新機能

新機能

新機能

CR で始まる番号は、PRL 社の管理番号です。

! CR1023 絶対パスで指定されたインクルード・ファイルの検索に失敗する問題を修正しまし

た。

! CR1071: enum への int でキャストした代入がある場合に、構文解析に失敗していた問題を

修正しました。

! CR1170: -forceinclude オプションで指定された追加インクルード・ファイルに対して、

#include パス指定に関するメッセージが出力されてしまう問題を修正しました。

! CR1172: 前処理指令内の式の評価が誤っていた問題を修正しました。

! CR1174: インライン・アセンブラ文 “asm()” が或る状況下で構文解析の誤りを引き起こす

問題を修正しました。

! CR1177: enum を返す関数へのポインタを指す場合に構文解析が異常終了してしまう問題

を修正しました。

! CR1182. #include 文で指定されるパス名とファイル名の長さに対する 76 文字という制限が

なくなりました。

! 以前のバージョンで使用されていた HASP キーに代って、新しく FLEXlm ライセンス・ソフト

ウェアに置き換えられました。

! CR.1126: 解析ウィンドウの下部に表示される解析失敗を示す付加的な情報に、ユーザが

生成したメッセージは含まれないようになりました。

! CR.1164: 非常に長いパス名やファイル名が使用されている環境下で、プロセスがソースの

パス名やファイル名の長さに影響を受けることがなくなりました。

! CR.1193: ソースファイルが解析キューに既に存在している場合には、そのファイルの解析

指令を出さないようになりました。

! CR.1286: 解析出力生成の或る状況の実行中には、解析後の処理を行わないようになりま

した。

(19)

9.

9.

9.

9. 既知

既知

既知

既知の

の問題

問題

問題

問題

NO OS 問題内容 対策 1 全プラット フォーム プロトタイプ宣言されている行より前で、プロ トタイプ宣言されている関数を呼び出すと、 失敗:未定義の反応(プリプロセス中断)と なります。 例: 関数 boo は、5 行目で宣言されています が、3 行目で関数 foo が関数 boo を呼び出 しています。 1:void foo(void) 2:{ 3: boo(); 4:} 5:int boo(void); 不具合として PRL に報告いたしましたが、 残念ながら現時点では回避することがで きません。 2 全プラット フォーム フォルダ名やパス名に、0x8ea1 ~ 0x8edf までの 63 種類の文字を使用すると QA C は解析を失敗します。 具体例: 治爾璽痔磁示而耳自蒔辞汐鹿式識 鴫竺軸宍雫七叱執失嫉室悉湿漆疾質 実蔀篠偲柴芝屡蕊縞舎写射捨赦斜煮 社紗者謝車遮蛇邪借勺尺杓灼爵酌釈 不具合として PRL に報告いたしましたが、 残念ながら現時点では回避することがで きません。 恐れ入りますが、0x8ea1 ~ 0x8edf までの 63 種類の文字をフォルダやファイル名に 使用しないで下さい。 3 Windows 98 v_callcheck をコマンドラインから起動すると v_callcheck が正常に動作しません。 不具合として PRL に報告いたしましたが、 残念ながら現時点では回避することがで きません。 4 Windows 98 警告 808 が表示されません。 不具合として PRL に報告いたしましたが、 残念ながら現時点では回避することがで きません。 Q5 Windows NT 宣言のクロスチェック表示で HTML ファイ ルが表示できない場合があります。 QA C が宣言のクロスチェックのレポートを 作成する際、先頭にあるべき <HTML><HTML>のタグを作成しないこと が原因です。 HTML として表示したい場合は、IE5.0 以 上を使用するか、クロスチェックレポートを 一度テキストファイルに保存して、ファイル の最初に<HTML>、ファイルの最後に </HTML>を追加してください。

(20)

10.

10.

10.

10. FAQ

FAQ

FAQ

FAQ 集

NO OS 質問 対策 1 全プラット フォーム 旧バージョンの解析オプション ファイルを使用して解析を実施し ましたが、エラーになりました。 解析オプションの指定で、値の設定を必要とするオ プション(+,-以外の設定が必要なオプション)では、 オプションと設定値の間にスペースを入れることが 必須になりました。 QA C4.5.x より以前のバージョンで使用していた QA C 解析用オプション設定ファイルをご使用の ユーザは、オプションと設定値の間に空白を挿入し てください。 2 全プラット フォーム ライセンスが取得できないため、 QA C が使用できません。 ライセンスサーバとクライアントのマシンタイムが極 端に異なる(約一日以上)場合、ライセンスを取得で きなくなります。 ライセンスサーバとクライアントマシンのマシンタイム を合わせてください。 3 全プラット フォーム QA C の旧バージョンと同じメッ セージグループを使用して解析し たい。 QA C4.5.3J から、メッセージのグループが変わりま した。 QA C4.x のバージョンと同じメッセージグループを 使用したい場合は、qac.usr.orig を、ユーザメッセー ジファイルとして設定してください。 qac.usr.orig は、QA C4.5.3J をインストールしたフォ ルダのbinフォルダにあります。 ユーザメッセージファイルの設定方法は、QA C ユーザーズガイド(\QAC-4.5.3J\Docs\QAC-4.5.3J-PC-UsersGuide.pdf)の P162-usrpath 及び-usrfile をご参照ください。

(21)

11.

11.

11.

11. 株式会社東陽

株式会社東陽

株式会社東陽テクニカ

株式会社東陽

テクニカ

テクニカへのお

テクニカ

へのお

へのお問合

へのお

問合

問合

問合せ

株式会社東陽テクニカは、Programming Research 社の日本国内における総代理店です。

日本国内でのお問合せについては、株式会社東陽テクニカへお願いします。

株式会社 東陽テクニカ

ソフトウェア・ソリューション

郵便番号

〒103-8284

住所

東京都中央区八重洲 1-1-6

電話

03-3245-1248

FAX

03-3246-0645

E-Mail(営業窓口)

ss_sales@toyo.co.jp

E-Mail(サポート窓口)

ss_support@toyo.co.jp

10.

10.

10.

10. Programming Research Limited

Programming Research Limited

Programming Research Limited

Programming Research Limited へのお

へのお

へのお

へのお問合

問合

問合

問合せ

以下に示す Programming Research Ltd.の本社に直接お問合せいただくこともできます。

電話

+44

(0)

1 932 888 080

FAX

+44

(0)

1 932 888 081

e-mail

support@programmingresearch.com

11.

11.

11.

11. 保証

保証

保証

保証の

の免責

免責

免責

免責

和文:

Programming Research Ltd.では、作成時に細心の注意を払って本書を正確に記述することに努

めておりますが、本書内の誤りや欠落に関する責任は負いかねます。また、本書内の記述通りに

製品が動作することを表現かつ意味する保証書として作成された文書ではないことをお断りして

おきます。

英文:

The staff of Programming Research Ltd. have taken due care in preparing this document which is

believed to be accurate at the time of printing. However, no liability can be accepted for errors

or omissions nor should this document be considered as an expressed or implied warranty that

the products described perform as specified within.

(22)

12.

12.

12.

12. 著作権

著作権

著作権

著作権について

について

について

について

和文:

本書には著作権があり、全体または一部を問わず、どのような方法(電子的またはその他)によっ

ても、Programming Research Ltd.の文書による事前の承諾なしには、複製、再生、公開、転記、翻

訳、縮小を行うことはできません。

英文:

This document is copyright and may not, in whole or in part be copied, reproduced, disclosed,

transferred, translated, or reduced to any form, including electronic medium or

machine-readable form, or transmitted by any means, electronic or otherwise, unless Programming

Research Ltd. consents in writing in advance.

13.

13.

13.

13. 商標

商標

商標

商標

QA C,QA C++, QA Fortran, QA Manager は、Programming Research Ltd.の商標です。 MISRA

は、MISRA Consortium を代表して運営する The Motor Industry Research Association の登録商

標です。PR:QA と PR:QA ロゴは、Programming Research Ltd.の登録商標です。Microsoft と

Windows は、Microsoft Corporation の登録商標です。UNIX は、UNIX System Laboratories, Inc.

の登録商標です。

本書内に示した他の全ての製品やサービスには、それらを販売する企業で選定された商標、サー

ビスマーク、製品名が含まれます。

(23)

付録

付録

付録

付録A.

A.

A.

A. 追加

追加

追加

追加された

された

されたメッセージ

された

メッセージ

メッセージ

メッセージ

警告 番号 メッセージ 40 size_t の定義が設定された型と異なります。 41 ptrdiff_t の定義が設定された型と異なります。 42 wchar_t の定義が設定された型と異なります。 246 2 進数定数は一部のコンパイラでのみ使用できます。 634 ビットフィールドは、unsigned または signed として明示的に宣言するべきです。 660 構造体/共有体のメンバーに名前がありません。 662 名前無しの構造体の要素にアクセスするために、拡張された構文を使用しています。 842 マクロは、ブロック内で#define したり#undef したりしないで下さい。 1274 接尾辞が付いていない浮動小数点型リテラルが、他のオペランドの暗黙的なキャストを引き起こ します。 1275 接尾辞が付いた浮動小数点型リテラルが、他のオペランドの暗黙的なキャストを引き起こしま す。 1276 整数型リテラルが、代入の前に暗黙的に浮動小数点型へキャストされます。 1330 関数定義で使用されている仮引数識別子が、関数プロトタイプのものと異なります。 1331 実引数の型か個数が、この関数の前の使用時と異なります。 1332 実引数の型か個数が、この後で見つかる関数プロトタイプと異なります。 1333 実引数の型か個数が、この後で見つかる関数定義と異なります。

2102 汎整数拡張 : unsigned char は unsigned int に拡張されます。

2103 汎整数拡張 : unsigned short は unsigned int に拡張されます。

2104 汎整数拡張 : signed char は signed int に拡張されます。

2105 汎整数拡張 : signed short は signed int に拡張されます。

2106 汎整数拡張 : 単なる char は signed int に拡張されます。

2107 汎整数拡張 : 単なる char は unsigned int に拡張されます。

2110 デフォルトの引数拡張 : unsigned char は signed int に拡張されます。

2111 デフォルトの引数拡張 : unsigned short は signed int に拡張されます。

2112 デフォルトの引数拡張 : unsigned char は unsigned int に拡張されます。

2113 デフォルトの引数拡張 : unsigned short は unsigned int に拡張されます。

2114 デフォルトの引数拡張 : signed char は signed int に拡張されます。

2115 デフォルトの引数拡張 : signed short は signed int に拡張されます。

2116 デフォルトの引数拡張 : 単なる char は signed int に拡張されます。

2117 デフォルトの引数拡張 : 単なる char は unsigned int に拡張されます。

2118 デフォルトの引数拡張 : float は double に拡張されます。 3122 文字列定数"%s"が直接使用されています。これは避けるべきです。 3123 文字定数'%s'が直接使用されています。これは避けるべきです。 3131 ビットフィールドの大きさの指定に %s が直接使用されています。 3141 空の文は、それ自身だけを 1 行に置くべきです。 3219 static 関数 '%s()'は、この翻訳単位内で使用されていません。 3429 関数型マクロよりも関数を使用すべきです。 3439 マクロはキーワードの再定義に使用してはいけません。

3625 char 型の宣言には、明示的に unsigned または signed を付けるべきです。

3683 配列の終端の 1 つ先の要素の位置を指しています。

参照

関連したドキュメント

劣モジュラ解析 (Submodular Analysis) 劣モジュラ関数は,凸関数か? 凹関数か?... LP ニュートン法 ( の変種

WAV/AIFF ファイルから BR シリーズのデータへの変換(Import)において、サンプリング周波 数が 44.1kHz 以外の WAV ファイルが選択されました。.

前章 / 節からの流れで、計算可能な関数のもつ性質を抽象的に捉えることから始めよう。話を 単純にするために、以下では次のような型のプログラム を考える。 は部分関数 (

LLVM から Haskell への変換は、各 LLVM 命令をそれと 同等な処理を行う Haskell のプログラムに変換することに より、実現される。

具体音出現パターン パターン パターンからみた パターン からみた からみた音声置換 からみた 音声置換 音声置換の 音声置換 の の考察

彩度(P.100) 色の鮮やかさを 0 から 14 程度までの数値で表したもの。色味の

いてもらう権利﹂に関するものである︒また︑多数意見は本件の争点を歪曲した︒というのは︑第一に︑多数意見は

第 25 サイクルから第 27 サイクルの炉心について,サイクル初期とサイクル末期の減 速材ボイド係数を図 3.2-5(1)〜図 3.2-5(2)示す。第 25 サイクルから第