C ユーザーズガイド

-X[a|c|s|t]

以下の各 -X オプションは ANSI C に準拠する度合いを指定します (大文字と小文字を区別してください)。デフォルトのモードは -Xa です。

-Xa

(a = ANSI) ANSI C に K&R C との拡張互換性を持たせます。ANSI C に従って意味処理を変更します。同じ言語構造に対して ANSI C と K&R C の意味処理が異なる場合は、相違に関する警告を発した上で ANSI C に準拠した解釈を行います。これは、コンパイラのデフォルトのモードです。

-Xc

(c = conformance) ANSI C にない言語構造を使用しているプログラムに対してエラーや警告を発行します。このオプションは ANSI C に最大限に準拠するもので、K&R C との拡張互換性はありません。

-Xs

(s = K&R C) ANSI C と K&R C の間で動作が異なるすべての言語構造に対して警告を発行します。K&R C と互換性のあるすべての機能がコンパイルされます。このオプションでは前処理用に /usr/ccs/lib/cpp が呼び出され、_ _STDC_ _ は定義されません。ANSI C と K&R C に違いについては、付録 G 「K&R Sun C と Sun ANSI C の違い」を参照してください。

-Xt

(t = transition) ANSI C に K&R C との拡張互換性を持たせます。ANSI C に従った意味処理の変更は行いません。同じ言語構造に対して ANSI C と K&R C の意味処理が異なる場合、相違に関する警告を発した上で K&R C に準拠した解釈を行います。