OpenVMS AXP
オペレーティング・システム
OpenVMS AXP オペレーティング・システムへの移行:
再コンパイルと再リンク


前へ 次へ 目次 索引


A.3.2.18 RMS スペシャル・レジスタ

DEC COBOLランタイム・システムは,RMSオペレーションを試みる前に入出力エラー状態をチェックします。VAX COBOLはチェックなしでRMS呼び出しを実行し,その結果 RMSスペシャル・レジスタが異なる値となります。DEC COBOLランタイム・システムが RMSオペレーションを試みない場合は,レジスタの値は以前のままになります。

たとえば,ファイルのオープンが失敗した場合,どんなDEC COBOLレコード操作(READ,WRITE,START,DELETE,REWRITE,あるいは UNLOCK)もRMSの起動前に失敗します。

A.4 DEC Fortran for OpenVMS AXPとVAX FORTRANとの互換性

この節では,DEC Fortran for OpenVMS AXPシステムとVAX FORTRANの互換性について,次の分野に分けて説明します。

A.4.1 言語機能

DEC Fortran には,ANSI FORTRAN-77標準機能をはじめ,FORTRAN-77標準機能に対する VAX FORTRANの拡張機能も含まれています。たとえば,次の機能がサポートされます。

拡張機能についての詳しい説明は『DEC Fortran Language Reference Manual』を参照してください。このマニュアルには,FORTRAN-77標準規格の拡張機能がわかりやすく示されています。

この節のこの後の部分では,VAX FORTRANおよび DEC Fortran 固有の言語機能,各言語で共有されるものの,異なる方法で解釈される言語機能,VAX FORTRANには適用されない DEC Fortran の制約事項,およびデータの移植に関する検討事項をまとめます。

言語機能についての詳しい説明は『DEC Fortran Language Reference Manual』を参照してください。

A.4.1.1 DEC Fortran 固有の言語機能

次の言語機能は,DEC Fortran では提供されますが,VAX FORTRANバージョン5.0ではサポートされません。

DEC Fortran 言語機能についての説明は『DEC Fortran Language Reference Manual』を参照してください。

A.4.1.2 VAX FORTRAN固有の言語機能

次の言語機能はVAX FORTRANでは使用できますが,DEC Fortran ではサポートされません。

次の言語機能はVAX FORTRANでは使用できますが,Alpha AXPアーキテクチャと VAXアーキテクチャとの違いにより,DEC Fortran ではサポートされません。

A.4.1.3 解釈方法の相違

次の言語機能は,VAX FORTRANと DEC Fortran とで異なる方法で解釈されます。

A.4.1.4 DEC Fortran の制約事項

あるVAX FORTRANの機能は,DEC Fortran では使い方が制限されていたり,またはまったく使用できません。

A.4.2 コマンド・ライン修飾子

この節では,DEC Fortran とVAX FORTRANのコマンド・ライン修飾子の違いについてまとめます。

DEC Fortran のコンパイル・コマンドとオプションについての詳しい説明は『DEC Fortran User Manual for OpenVMS AXP Systems』を参照してください。VAX FORTRANのコンパイル・コマンドとオプションについての詳しい説明は『DEC Fortran User Manual for OpenVMS VAX Systems』を参照してください。

VAXシステムまたはAXPシステムでコンパイルを開始するには,FORTRANコマンドを使用します。

一部のコンパイラ修飾子は各言語固有の修飾子ですが,DEC Fortran とVAX FORTRANは多くの修飾子を共有しています。

A.4.2.1 共有される修飾子

表 A-10 は,DEC Fortran とVAX FORTRANで共有されるコンパイラ修飾子を示しています。DEC Fortran の修飾子についての詳しい説明は『DEC Fortran Language Reference Manual』を参照してください。

表 A-10 DEC FortranとVAX FORTRANで共有される修飾子
修飾子 説明
/ASSUME /ASSUMEはVAX FORTRANバージョン5.0では使用できなかったが,現在は/ASSUME=([NO]ACCURACY_SENSITIVE,[NO]DUMMY_ALIAS)をVAX FORTRAN HPOで使用できる。

特定のキーワード値は DEC Fortran 固有の値である。

/ANALYSIS_DATA 同じ。
/CHECK VAX FORTRANの/CHECK=キーワードはすべて,DEC Fortran でも使用できる。
DEC Fortran の/WARNINGS=ALIGNMENT修飾子と
VAX FORTRAN HPOの/CHECK=ALIGNMENT修飾子は同じである。
/CROSS_REFERENCE 同じ。
/DEBUG VAX FORTRANの/DEBUG=キーワードはすべて,DEC Fortran でも使用できる。
/D_LINES 同じ。
/DIAGNOSTICS 同じ。
/DML 同じ。
/EXTEND_SOURCE 同じ。
/F77 同じ。
/G_FLOATING DEC Fortran では/G_FLOATINGをサポートするが,DEC Fortran の/FLOAT修飾子を使用しなければならない。付録 A.4.2.2 項 の/FLOATの説明で述べるように,VAXシステムと AXPシステムではD浮動小数点の演算に違いがある。
/I4 同じ。DEC Fortran では,INTEGER宣言のサイズを指定するために /INTEGER_SIZE修飾子を使用できる。
/LIBRARY 同じ。
/LIST 同じ。
/MACHINE_CODE 同じ。
/OBJECT 同じ。
/OPTIMIZE 同じであるが,DEC Fortran では,ローカルな最適化のみに対して/OPTIMIZE=LEVEL=1などの最適化レベルの使用をサポートする(付録 A.4.2.2 項 を参照)。実際のコンパイラ最適化技法は異なる可能性がある。
/SHOW VAX FORTRANの大部分の/SHOW=キーワードは DEC Fortran でも使用できる。
/STANDARD VAX FORTRANの/STANDARD=キーワードはすべて,DEC Fortran でも使用できる。
/WARNINGS 大部分の/WARNINGS=キーワードは使用できる。しかし,特定のキーワード値は DEC Fortran 固有の値である。

VAX FORTRANソース・プログラムを移植する場合には,DEC Fortran の /VMS修飾子(省略時の設定)を使用することを考慮してください。

A.4.2.2 DEC Fortran 固有の修飾子

表 A-11 は,DEC Fortran コンパイラの修飾子のうち,対応するVAX FORTRANオプションがなく,VAX FORTRANバージョン5.0でサポートされない修飾子を示しています。

表 A-11 VAX FORTRANでサポートされない DEC Fortran修飾子
修飾子 説明
/ALIGN レコード構造とコモン・ブロックのアラインメントを制御する(VAX FORTRANでは,コモン・ブロックに対して省略時のアラインメントを使用し,CDEC$ディレクティブも認識する)。
/ASSUME 特定のキーワードはVAX FORTRANバージョン5.0では使用できない。たとえば,BIG_ENDIAN,CRAY,IBM,LITTLE_ENDIAN,RECURSIVE,VAXD,およびVAXGはサポートされない。
/FLOAT 浮動小数点データに対して使用するフォーマット(REALまたは COMPLEX)を制御し,VAX G浮動小数点,VAX D浮動小数点,またはIEEE(S浮動小数点と T浮動小数点)浮動小数点データの使用を許可する。
/INTEGER_SIZE INTEGER宣言のサイズを制御する。
/NAMES 外部名を大文字に変換するのか,小文字に変換するのか,元のまま保存するのかを制御する。
/OPTIMIZE=LEVEL= n 最適化のレベルを /NOOPTIMIZE(/OPTIMIZE=LEVEL=0)と /OPTIMIZE(/OPTIMIZE=LEVEL=4)の間で制御する。VAX FORTRAN(および DEC Fortran)は/OPTIMIZEと /NOOPTIMIZEをサポートする。
/POINTER_SIZE ポインタ・データのサイズ(アドレッシング可能な範囲)を制御する。
/RECURSIVE 実行時プロセス・スタックでローカル・データを割り当て,可能な再帰的実行のためにプロシージャをプリページする。
/VMS DEC Fortran が特定のVAX FORTRAN表記法を使用することを要求する。
/WARNING=(ALIGNMENTS, TRUNCATED_SOURCE) 自然にアラインされていないデータと切り捨てられたソース行に対して警告メッセージを表示することを要求する。これらのキーワードはVAX FORTRAN HPOで使用できる。

A.4.2.3 VAX FORTRAN固有の修飾子

この節では,VAX FORTRANコンパイラのオプションのうち,DEC Fortran には対応するオプションがないものをまとめます。

表 A-12 は,VAX FORTRANバージョン5.0固有のコンパイル・オプションを示しています。

表 A-12 DEC Fortranでサポートされない VAX FORTRANオプション
VAX FORTRAN修飾子 説明
/BLAS=(INLINE,MAPPED) VAX FORTRANが Basic Linear Algebra Subroutines(BLAS)を認識し,これらをインラインまたはマッピングするかどうかを指定する。VAX FORTRAN High Performance Option(HPO)の場合にのみ使用できる。
/CHECK=ASSERTIONS アサーション・チェックを許可または禁止する。VAX FORTRAN HPOに対してのみ使用できる。
/CONTINUATIONS=n 1つの文で認められる継続行の行数を指定する。DEC Fortran では継続行の行数は最大99行である。
/DESIGN=[NO]COMMENTS
/DESIGN=[NO]PLACEHOLDERS
設計情報を確認するためにプログラムを解析する。
/DIRECTIVES=DEPENDENCE 指定されたコンパイラ・ディレクティブがコンパイル時に使用されるかどうかを指定する。VAX FORTRAN HPOに対してのみ使用できる。
/MATH_LIBRARY=(FASTまたはACCURATE) 特定の算術演算組み込み関数を実現するために使用される算術演算ライブラリ・ルーチンの選択を制御する。/MATH_LIBRARYはまた,realデータ型の指数演算子**に対するベクタ化された参照にも影響を与える。VAX FORTRAN HPOでのみ使用できる。
/PARALLEL=(MANUALまたはAUTOMATIC) 並列処理をサポートする。
/SHOW=(DATA_DEPENDENCIES,DICTIONARY,LOOPS) リスト・ファイルに次の情報を登録するかどうかを制御する。

  • ベクタ化または自動分解を禁止するデータ依存性と,依存解析の対象とならないループに関する診断情報(DATA_DEPENDENCIES)。

  • インクルードしたCommon Data Dictionaryレコードからのソース・ライン(DICTIONARY)。

  • コンパイル後のループ構造に関するレポート(LOOPS)。

DATA_DEPENDENCIESおよびLOOPSキーワードはVAX FORTRAN HPOに対してのみ使用できる。

/VECTOR ベクタ処理を要求する。VAX FORTRAN HPOに対してのみ使用できる。
/WARNINGS=INLINE コンパイラが組み込みルーチンに対する参照のインライン・コードを生成できないときに,情報診断メッセージを印刷するかどうかを制御する。VAX FORTRAN HPOに対してのみ使用できる。

要求された(手作業)分解に関連するすべてのCPAR$ディレクティブと特定の CDEC$ディレクティブ,およびそれに関連する修飾子またはキーワードも VAX FORTRAN固有です。『DEC Fortran Language Reference Manual』を参照してください。

VAX FORTRANのコンパイル・コマンドとオプションに関する詳しい説明は『DEC Fortran User Manual for OpenVMS VAX Systems』を参照してください。


前へ 次へ 目次 索引