Oracle Solaris Studio 12.2: C ユーザーガイド

D.1.10.1 インライン関数に対する Solaris Studio C コンパイラと gcc の互換性

ほとんどのプログラムで、extern インライン関数に関する gcc の実装に対して Solaris Studio C コンパイラが互換性を維持できるようにするには、-features=no%extinl フラグを使用します。このフラグが指定されている場合は、Solaris Studio C コンパイラはあたかも static インライン関数と宣言されたかのように、関数を処理します。

この手法が互換性を維持できない状況の 1 つは、関数のアドレスを取る場合です。gcc ではこのアドレスはグローバル関数のアドレスになりますが、Sun のコンパイラではローカルの static 定義アドレスが使用されます。