-Xansi


Cソース・プログラムをANSI規格に厳密にあわせて処理します。

[指定形式]

-Xansi

 

-

省略時解釈

従来のC言語の仕様との両立性を持たせ,警告を出力して処理を続行します。

[詳細説明]

-

Cソース・プログラムをANSI規格に厳密にあわせて処理し,規格に反する記述に対してエラーや警告を出力します。

-

本オプション指定時は,マクロ名__STDC__を,値が1のマクロとして定義します。

-

言語仕様に厳密なコンパイル時の処理は,以下のようになります。

-

ビット・フィールド

ビット・フィールドにint型以外の型を指定した場合は,エラーとなります。

本オプションを指定しない場合は,int型以外の型の指定を許可します(警告は出力しません)。

-

#行番号

エラーとなります。

本オプションを指定しない場合は,“#line 行番号”と同様に扱います。

-

#pragma inlineされた関数の引数

指定した関数の呼び出しと定義の間で,戻り値の型や引数の型が異なるが型変換が可能である場合は,エラーとなります。

本オプションを指定しない場合は,戻り値の型は呼び出し側の型に,引数は関数定義での型に変換して,インライン展開を行います。

ISO/IE C9899:1990(C90)で規程されている規格のことです。
ccrhは,ISO/IE C9899:1999(C99)で追加された仕様の一部も受容しますが,本オプションを指定した場合は,規格に反する記述はエラーとなります。

[使用例]

-

Cソース・プログラムをANSI規格に厳密にあわせて処理し,規格に反する記述に対してエラーや警告を出力します。

>ccrh -Xansi -Xcommon=rh850 main.c