Sun Studio 12: C ユーザーズガイド

B.2.18 -features=[[no%]extinl|%none]

extern インライン関数のコンパイラの処理は、デフォルトでは、ISO/IEC 9899:1999 C 規格に規定されている動作に準拠しています。version 5.5 またはそれ以前の C および C++ コンパイラで提供されているのと同じ extern インライン関数の処理を得るには、-features=no%extinl を付けて新しいコードをコンパイルしてください。

表 B–6 -features のフラグ

値 

意味 

extensions

サイズがゼロの構造体または共用体の宣言、および有効な値を返す return 文を持つ void 関数を使用できます。 

extinl

extern インライン関数を大域関数として生成します。これがデフォルトで、1999 C 規格に準拠しています。 

no%extinl

extern インライン関数を静的関数として生成します。 

%none

このオプションを無効にします。 

古い C および C++ オブジェクト (このリリースより前の Sun コンパイラで作成されたオブジェクト) は、そのオブジェクトの動作変更なしに、新しい C および C++ オブジェクトとリンクできます。規格に適合した動作を実現するには、最新のコンパイラを使って古いコードをコンパイルする必要があります。

-features に値を指定しない場合は、-features=extinl に設定されます。