インテル® Fortran コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス

標準および拡張機能の使用

標準機能

インテル® Fortran プログラムの移植性を最大限に高めるには、標準言語機能を使用してください。プログラムの移植性を向上するために堅固な実装を設計したり、またはプログラムの読みやすさ、機能性、および効率性を向上するために拡張機能を使用することもできます。

プログラム構文が Fortran 標準の構文規則や制約に違反する場合、コンパイラーに警告を出力させることができます。これにより、プログラム全体が Fortran 標準に準拠するわけではありませんが、多くの互換性の問題を回避するのに役立ちます。/stand (Windows*) または -std (Linux* および macOS*) オプションで、このチェックを有効にし、基準とする Fortran 標準を指定できます。基準とする Fortran 標準を指定しない場合、Fortran 2008 が使用されます。

コンパイラーが現在の Fortran 規格の動作に従うために必要なすべてのオプションを有効にするには、standard-semantics コンパイラー・オプションを使用します。

標準拡張

すべての Fortran 規格の拡張が、ほかのプラットフォームへの移植の際に問題を引き起こすわけではありません。多くの拡張は幅広いプラットフォームでサポートされており、プログラムの移植先のシステムがその拡張をサポートしているのであれば、使用を避ける必要はありません。ただし、別のシステムで同じ機能が、インテル® Fortran と同じように実装されているという保証はありません。すべてのプラットフォームに準拠されていることが保証されているのは Fortran 規格だけです。

インテル® Fortran コンパイラーは、Windows*、Linux*、macOS* システムを含む複数のプラットフォーム上で、多数の言語拡張子をサポートします。また、「Intel® Fortran Language Reference」(英語) では、各言語要素が他のプラットフォームでサポートされているかどうか識別しています。

次の理由から、すべての外部プロシージャーを EXTERNAL 文またはプロシージャー・インターフェイス・ブロックで宣言することを推奨します。

外部プロシージャーを明示的に宣言しなかった場合、その名前が組込みプロシージャー名と重複すると、プロセッサーは、その外部ルーチンではなく、組込みプロシージャーを呼び出します。インテル® Fortran コンパイラーが名前の定義を解決する方法に関する詳細は、「Resolving Procedure References」(英語) を参照してください。

関連情報