次に、言語間における名前の調整方法を要約します。
すべて大文字の名前 (Windows* のデフォルト)
Fortran のデフォルト設定を使用する Fortran ルーチンを呼び出していて、その Fortran コードを再コンパイルできない場合、C では、すべて大文字の名前を使用する必要があります。MASM では、すべて大文字の名前を使用するか、OPTION CASEMAP 宣言子を ALL に設定してすべての識別子を大文字に変換する必要があります。__stdcall および STDCALL は、これらの言語で常に大文字と小文字を維持するため、C コードで __stdcall 規則を使用したり、MASM の PROTO と PROC 宣言で STDCALL を使用するだけでは問題を十分に解決できません。Fortran は、すべて大文字の名前をデフォルトで生成し、C および MASM のコードはその名前と一致していなければなりません。
例えば、次のプロトタイプは、FFARCTAN(angle) Fortran 関数を設定しています。引数 angle には、ATTRIBUTES VALUE プロパティーがあります。
すべて小文字の名前 (Linux* および Mac OS* X のデフォルト)
C またはアセンブリーでルーチン名がすべて小文字で表記されている場合、命名規則は自動的に正しくなります。名前はすべて小文字に変換されるので、Fortran ソースコードでは、大文字・小文字の混在を含め、任意の大文字・小文字の組み合わせを使用することができます。
Linux/Mac OS X アセンブリーの場合、次のコードは Fortran の ffarctan 関数を設定します。
#--Begin ffarctan_ .globl ffarctan_
大文字と小文字が混在した名前
C または MASM でルーチンの名前に大文字と小文字が混在しており、それらの文字の大小をそのまま保持する必要がある場合、Fortran の ATTRIBUTES ALIAS オプションを使用します。
ALIAS オプションを使用するには、オブジェクト・ファイルの名前を引用符で囲んで指定します。
次の例は C 関数 My_Proc を指定します。
!DEC$ ATTRIBUTES DECORATE,ALIAS:'My_Proc' :: My_Proc
この例は、DECORATE を使用して、自動的にターゲット・プラットフォームの外部名に調整します。