Sun Studio 12 Update 1: Fortran ユーザーズガイド

3.4.123.2 備考:

このオプションは、STATUS="SCRATCH" を指定して開かれたファイルには適用されません。それらのファイルに対する入出力操作は、常にネイティブプロセッサのバイト順序とバイト列が使用されます。

コンパイラコマンド行に -xfilebyteorder が指定されていない場合の最初のデフォルトは、-xfilebyteorder=native:%all です。

このオプションには、ファイル名およびユニット番号をそれぞれ 1 回だけ宣言できます。

コマンド行に -xfilebyteorder を含める場合は、little、big、または native の少なくとも 1 つの指定と組み合わせる必要があります。

このフラグで明示的に宣言されていないファイルは、ネイティブファイルとみなされます。たとえば、-xfilebyteorder=little4:zork.out を付けて zork.out をコンパイルした場合、このファイルは、4 バイトの最大データ整列規則を持つリトルエンディアンの 32 ビット x86 ファイルと宣言され、ほかのすべてのファイルはネイティブファイルになります。

ファイルに指定されたバイト順序はネイティブプロセッサと同じであるが、バイト列が異なる場合は、バイトスワップが行われないにしても、適切なパディングが使用されます。たとえば m64 を付けた、64 ビット x86 プラットフォーム向けのコンパイルで、-xfilebyteorder=little4:filename が指定された場合などがそうです。

ビッグエンディアンとリトルエンディアン式プラットフォーム間で共有されるデータレコード内で宣言する型は、同じサイズである必要があります。たとえば、-xtypemap=integer:64,real:64,double:128 を付けてコンパイルした SPARC 実行可能ファイルの生成するファイルを、-xtypemap=integer:64,real:64,double:64 を付けてコンパイルした x86 実行可能ファイルが読み取ることはできません。これは、両者のデフォルトの倍精度データ型のサイズが異なるためです。(ただし、Sun Studio 12 Update 1 のリリース以降では、double:128 は x64 プロセッサで受け入れられます)。

VAX 構造体の成分の整列を変更するオプション (—vax=struct_align など) または構造型の成分の整列を変更するオプション (—aligncommon—dalign など) をあるプラットフォームで使用する場合、同じ整列オプションを、その整列オプションの影響を受ける内容を持つ同じ書式なしデータファイルを共有する他のプラットフォームでも使用する必要があります。

ネイティブ以外のファイルとして指定されたファイルに対して、UNION/MAP データオブジェクト全体を使った入出力操作を行うと、実行時入出力エラーになります。ネイティブ以外のファイルに対しては、MAP の個別メンバーを使った入出力操作のみ行うことができます。UNION/MAP を含む VAX レコード全体を使った入出力操作は行えません。