ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
Oracle Solaris Studio 12.3: C ユーザーガイド Oracle Solaris Studio 12.3 Information Library (日本語) |
ISO C コンパイラでは、古い形式と新しい形式の両方の C コードを使用できます。次の -X (大文字の X であることに注意) オプションを -xc99=none と併せて使用すると、コンパイラに ISO C 規格への準拠の度合いを指定できます。-Xa はデフォルトのモードです。コンパイラのデフォルトのモードは -xc99=all であるため、各 -X オプションを指定した場合の動作は -xc99 の設定に依存します。
(c = conformance) ISO C に最大限に準拠します。K&R C との拡張互換性はありません。ISO C にない構文を使用しているプログラムに対して、エラーと警告を発行します。
ISO C に K&R C 互換拡張を加えたもので、ISO C で要求されるセマンティクスの変更を含みます。K&R C と ISO C が同じ構文に対して異なるセマンティクスを指定している場合、コンパイラは、その競合に関する警告を発行し、ISO C の解釈を使用します。これは、デフォルトのモードです。
(t = transition) ISO C に K&R C 互換拡張を加えたもので、ISO C で要求されるセマンティクスの変更を含みません。K&R C と ISO C が同じ構文に対して異なるセマンティクスを指定している場合、コンパイラは、その競合に関する警告を発行し、K&R C の解釈を使用します。
(s = K&R C) コンパイルされた言語には、ISO K&R C と互換性のある機能がすべて含まれます。コンパイラは、ISO C と K&R C とで動作が異なるすべての言語構文について、警告します。