--list

このオプションは、ソースファイルの未加工のリスト情報を生成するようにコンパイラに指示します。生未加工のリストファイルの名前には、フイル拡張子 .lst が付けられた入力ファイル名がデフォルトで使用されます。

コマンドラインで複数のソースファイルを指定した場合、すべてのソースファイルのリストが生成され、それぞれ別個のリスティングファイルにき込まれます。リスティングファイルの名前は対応するソースファイルの名前に基づいて生成されます。ただし、--multifile を使用すると、連結されたリストが単一のリスティングファイルに書き込まれます。この場合、リスティングファイルの名前は、最初のソースフイルの名前に基づいて生成されます。

Show/hide使用法

通常、未加工のリスト情報はフォーマットされたリストを生成するために使用されます。未加工のリストファイルには、元のソース行、インクルードファイルにおける遷移に関する情報、およびコンパイラによって生成される診断情報が含まれます。リストファイルの各行は、行のタイプをす以下のいずれかのキー文字で始まります。

N

通常のソース行であることを示します。その行の残りの部分はソース行のテキストです。

X

通常のソース行の拡張形式です。この行の残りの部分は、ソース行のテキストです。この行は、特別な修正が含まれている場合のみ、N 行の後に記述されます。コメントは軽微な修正と見なされ、マクロ拡張、行の結合、トリグラフなどは特別な修正と見なされます。コメントは、拡張形式行では 1 つのスペースで置き換えられます。

S

#if またはこれに似たディレクティブによってスキップされるソース行であることを示します。この行の残りの部分はテキストです。

Note

スキップを終了する #else#elseif、または #endif は、N でマークされます。

L

ソース位置の変更を示します。つまり、この行にはプリプロセッサによって出力される # 識別ディレクティブに似た形式が使用されます。

L line-number "filename" key

key には以下のどちらかを指定できます。

1

インクルードファイルへのエントリ

2

インクルードファイルからの終了

それ以外の場合、key は省略されます。未加工のリストファイルの 1 行目は、常に元の入力ファイルを表す L 行です。L 行は、#line ディレクティブに対しても出力されます(key が省略されている場合)。L 行は、未加工のリストファイル内の次のソース行のソース位置を示します。

R/W/E

下記のような診断情報を示します。

R

注釈

W

警告

E

エラー

この行には以下の形式が使用されます。

type "filename" line-number column-number message-text

type には、RW、または E を指定できます。

ファイルの最後の部分のエラーは、元のソースファイルの最終行であることと、列数が 0 であることを示します。

コマンドラインエラーのファイル名は、"<command line>" として表されます。エラーメッセージには、行番号と列番号は表示されません。

内部エラーには、従来の位置情報と、(Internal fault)で始まるメッセージテキストが使用されます。

オーバーロードした呼び出しに曖昧性があるときに、競合するすべてのルーチンが表示される場合など、診断メッセージにリストが表示される場合、最初の診断行の後に同じ形式の行が 1 つまたは複数表示されます。ただし、コード文字には、最初の行のコード文字を小文字にしたものが使されます。これらの行のソース位置は、対応する最初の行のソース位置と同じです。

Show/hide

/* main.c */
#include <stdbool.h>
int main(void)
{
    return(true);
}

オプション --list を指定してこのコードをコンパイルすると、以下のように未加工のリストファイルが生成されます。

L 1 "main.c"
N#include <stdbool.h>
L 1 "...\include\...\stdbool.h" 1
N/* stdbool.h */
N
...
N  #ifndef __cplusplus /* C++ では、'bool'、'true'、および 'false' がキーワード */
N    #define bool _Bool
N    #define true 1
N    #define false 0
N  #endif
...
L 2 "main.c" 2
N
Nint main(void)
N{
N   return(true);
X   return(1);
N}

Show/hide関連項目

Copyright © 2010-2011 ARM. All rights reserved.ARM DUI 0491EJ
Non-ConfidentialID081711