always_inline 関数属性

関数属性 always_inline は、コンパイル時に最適化が指定されたかどうかに関わらず、 inline 関数をインラインするようにコンパイラーに指示します。 ただし、プログラムが非最適化レベルでコンパイルされた場合、この属性に効果はありません。 また、inline を指定せずに関数にこの属性を指定しても、有効でありません。この属性は、インライン・コンパイラー・オプションよりも優先されます。 この言語フィーチャーは、C89、C99、および Standard C++ および C++98 に対する直交拡張で、GNU C および C++ で開発されたプログラムの移植を容易にするためにインプリメントされています。

構文を以下の図で示します。

>>-__attribute__--((--+-always_inline-----+--))----------------><
                      '-__always_inline__-'
 
 

関連参照

IBM Copyright 2003