コンパイラがコマンド行に指定されたファイルをどのように処理するかは、ファイル名に付加された接尾辞で決まります。次の表以外の接尾辞を持つファイルや、接尾辞がないファイルはリンカーに渡されます。
表 2–1 C++ コンパイラが認識できるファイル名接尾辞| 接尾辞 | 言語 | 処理 | 
|---|---|---|
| C++ | C++ ソースファイルとしてコンパイルし、オブジェクトファイルを現在のディレクトリに入れる。オブジェクトファイルのデフォルト名は、ソースファイル名に .o 接尾辞が付いたものになる。 | |
| C++ | .c 接尾辞と同じ処理。 | |
| C++ | .c 接尾辞と同じ処理。 | |
| C++ | .c 接尾辞と同じ処理。 | |
| C++ | .c 接尾辞と同じ処理。 | |
| C++ | .c 接尾辞と同じ処理。 | |
| C++ | C++ ソースファイルとして扱われるプリプロセッサ出力ファイル。.c 接尾辞と同じ処理。 | |
| アセンブラ | ソースファイルをアセンブラを使ってアセンブルする。 | |
| アセンブラ | C 言語プリプロセッサとアセンブラを使ってソースファイルをアセンブルする。 | |
| インライン展開 | アセンブリ用のインラインテンプレートファイルを使ってインライン展開を行う。コンパイラはテンプレートを使って、選択されたルーチンのインライン呼び出しを展開します(インラインテンプレートファイルは、特殊なアセンブラファイルです。inline(1) のマニュアルページを参照してください)。 | |
| オブジェクトファイル | オブジェクトファイルをリンカーに渡す | |
| 静的 (アーカイブ) ライブラリ | オブジェクトライブラリの名前をリンカーに渡す。 | |
| 動的 (共有) ライブラリ | 共有オブジェクトの名前をリンカーに渡す。 |