Compaq OpenVMS
デバッガ説明書


前へ 次へ 目次 索引


C.7.8.5 変換の参照

クラス SRC から型 dest への変換を行うための演算子を参照するには, %name で SRC,2 つのコロン (::),それから dest を引用符で囲みます。

次の 1 組の名前から基本型が抽出されます。


void            char   signed_char   unsigned_char   signed_short 
unsigned_short  int    signed_int    unsigned_int    signed_long 
unsigned_long   float  double        long_double 

ポインタ型は (type)* と名付けられています。参照型は (type)& と名付けられています。struct,union class,および enum という型は,それぞれのタグで名付けられます。型の前には,修飾子 const および volatile が付き,修飾子と修飾子の間にはスペースが 1 文字入ります。次に例を示します。


DBG> set break %name 'C::int', %name 'C::(const S)&' 

C.7.8.6 ユーザ定義演算子の参照

次の演算子はユーザ定義関数によりオーバロードされることがあります。


+     -      *     /       %      ^      &      |      ~       ! 
=     <      >     +=      -=     *=     /=     %=     ^=      &= 
|=    <<     >>    >>=     <<=    ==     !=     <=     >=      && 
|     ++     --    ->*     ,      ->     []     ()     delete  new 

オーバロードされる演算子についての詳細は,C++ のマニュアルと共に提供される『The Annotated C++ Reference Manual』を参照してください。

そのようなユーザ定義関数を参照するには,ユーザ定義演算子がメンバ関数の場合は, %name で演算子文字を引用符で囲みます。通常の関数の場合と同じように,%name に続いて引用符付きで文字列,修飾子がついたクラス名,2 つのコロン (::) を指定します。同様に,関数がオーバロードされている場合は,接尾辞__integer_number を演算子文字に付けます。特に,+のような演算子が単項演算子や二項演算子として定義されている場合や,++--が接頭辞として定義されている場合は,この接尾辞が必要です。

ユーザ定義関数参照の正しい使用法を次の例で示します。


DBG> set break %name 'MYSTRING::+' 
DBG> set break %name 'COUNTER::++__1', %name 'COUNTER::++__2' 

C.7.8.7 関数の引数の参照

デバッガによる参照では,this*this,およびthis->を次のように使用します。

C.8 COBOL

次の各サブトピックでは,デバッガによる COBOL のサポートについて説明します。

C.8.1 言語式の演算子

言語式でサポートされている COBOL の演算子を次に示します。

種類 シンボル 機能
接頭辞 + 単項正符号
接頭辞 - 単項負符号(否定)
挿入辞 + 加算
挿入辞 - 減算
挿入辞 * 乗算
挿入辞 / 除算
挿入辞 ** べき乗(VAX 固有)
挿入辞 = 等値
挿入辞 NOT = 不等
挿入辞 > 大なり
挿入辞 NOT < 以上
挿入辞 < 小なり
挿入辞 NOT > 以下
挿入辞 NOT 論理否定
挿入辞 AND 論理積
挿入辞 OR 論理和

C.8.2 言語式とアドレス式の構造

サポートされている COBOL の言語式とアドレス式の構造を次に示します。

シンボル 構造
( ) 添字指定
OF レコードの構成要素の選択
IN レコードの構成要素の選択

C.8.3 データ型

サポートされている COBOL のデータ型を次に示します。

COBOL のデータ型 VMS のデータ型名
COMP ロングワード整数 (L,LU)
COMP ワード整数 (W,WU)
COMP クォドワード整数 (Q,QU)
COMP-1 F 浮動小数点数(F)
COMP-1 (Alpha 固有) IEEE S 浮動小数点数(FS)
COMP-2 D 浮動小数点数(D)
COMP-2 (Alpha 固有) IEEE T 浮動小数点数(FT)
COMP-3 パック 10 進数(P)
INDEX ロングワード整数(L)
英数字 ASCII テキスト(T)
レコード (なし)
数値符号なし 数値文字列,符号なし (NU)
先行分離記号 数値文字列,左分離記号 (NL)
先行オーバパンチ記号 数値文字列,左オーバパンチされた記号 (NLO)
終了分離記号 数値文字列, 右分離記号 (NR)
後続オーバパンチ記号 数値文字列,右オーバパンチされた記号 (NRO)

COMP-1 型の浮動小数点数は,コンパイラのスイッチによって,F 浮動小数点数または IEEE S 浮動小数点数のどちらかで表現されます。

COMP-2 型の浮動小数点数は,コンパイラのスイッチによって,D 浮動小数点数または IE EE T 浮動小数点数のどちらかで表現されます。

C.8.4 ソース表示

デバッガは,COPY 文または COPY REPLACING 文でプログラムに取り込まれたソース・テキストを表示することができます。しかし,COPY REPLACING 文または REPLACE 文を使用した場合は,COPY REPLACING 文または REPLACE 文で作成された修正後のソース・テキストではなく,元のソース・テキストが表示されます。

デバッガは,REPORT 節のコードに対応する元のソース行を表示することはできません。REPORT に対応する DATA SECTION のソース行を見ることはできますが,レポートを作成するためのコンパイル済みコードに対応するソース行は表示されません。

C.8.5 COBOL の INITIALIZE 文と大きいテーブル (配列) (Alpha のみ)

OpenVMS Alpha システムでは,大きいテーブル (配列) が初期化されるときに,STEP コマンドを使用して COBOL プログラムで INITIALIZE 文を実行する場合,デバッガは非常に長い時間と多くのリソースを使用することがあります。

この問題を回避するには,INITIALIZE 文をステップ実行するのではなく, INITIALIZE 文の後の最初の実行可能な行にブレークポイントを設定します。

C.9 DIBOL (VAX のみ)

次の各サブトピックでは,デバッガによる DIBOL のサポートについて説明します。

C.9.1 言語式の演算子

言語式でサポートされている DIBOL の演算子を次に示します。

種類 シンボル 機能
接頭辞 # 丸め
接頭辞 + 単項正符号
接頭辞 - 単項負符号 (否定)
挿入辞 + 加算
挿入辞 - 減算
挿入辞 * 乗算
挿入辞 / 除算
挿入辞 // 商が小数となる除算
挿入辞 .EQ. 等値
挿入辞 .NE. 不等
挿入辞 .GT. 大なり
挿入辞 .GE. 以上
挿入辞 .LT. 小なり
挿入辞 .LE. 以下
挿入辞 .NOT. 論理否定
挿入辞 .AND. 論理積
挿入辞 .OR. 論理和
挿入辞 .XOR. 排他的論理和

C.9.2 言語式とアドレス式の構造

サポートされている DIBOL の言語式とアドレス式の構造を次に示します。

シンボル 構造
( ) 部分文字列
[ ] 添字指定
.(ピリオド) レコードの構成要素の選択

C.9.3 データ型

サポートされている DIBOL のデータ型を次に示します。

DIBOL のデータ型 VMS のデータ型名
I1 バイト整数(B)
I2 ワード整数(W)
I4 ロングワード整数(L)
Pn パック 10 進数文字列(P)
Pn.m パック 10 進数文字列(P)
Dn 数値文字列,ゾーン記号 (NZ)
Dn.m 数値文字列,ゾーン記号 (NZ)
An ASCII テキスト(T)
配列 (なし)
レコード (なし)

C.10 Fortran

次の各サブトピックでは,デバッガによる Fortran のサポートについて説明します。

C.10.1 言語式の演算子

言語式でサポートされている Fortran の演算子を次に示します。

種類 シンボル 機能
接頭辞 + 単項正符号
接頭辞 - 単項負符号 (否定)
挿入辞 + 加算
挿入辞 - 減算
挿入辞 * 乗算
挿入辞 / 除算
挿入辞 ** べき乗(VAX 固有)
挿入辞 // 連結
挿入辞 .EQ. 等値
挿入辞 == 等値
挿入辞 .NE. 不等
挿入辞 /= 不等
挿入辞 .GT. 大なり
挿入辞 > 大なり
挿入辞 .GE. 以上
挿入辞 >= 大なりまたは等値
挿入辞 .LT. 小なり
挿入辞 < 小なり
挿入辞 .LE. 以下
挿入辞 <= 小なりまたは等値
接頭辞 .NOT. 論理否定
挿入辞 .AND. 論理積
挿入辞 .OR. 論理和
挿入辞 .XOR. 排他的論理和
挿入辞 .EQV. 同値
挿入辞 .NEQV. 排他的論理和

C.10.2 言語式とアドレス式の構造

サポートされている Fortran の言語式とアドレス式の構造を次に示します。

シンボル 構造
( ) 添字指定
.(ピリオド) レコードの構成要素の選択
% (パーセント記号) レコードの構成要素の選択

C.10.3 定義済みのシンボル

サポートされている Fortran の定義済みのシンボルを次に示します。

シンボル 説明
.TRUE. 論理値TRUE
.FALSE. 論理値FALSE

C.10.4 データ型

サポートされている Fortran のデータ型を次に示します。

Fortran のデータ型 VMS のデータ型名
LOGICAL*1 バイト符号なし (BU)
LOGICAL*2 ワード符号なし (WU)
LOGICAL*4 ロングワード符号なし (LU)
LOGICAL*8(Alpha固有) クォドワード符号なし (QU)
BYTE バイト(B)
INTEGER*1 バイト整数(B)
INTEGER*2 ワード整数(W)
INTEGER*4 ロングワード整数(L)
INTEGER*8(Alpha 固有) クォドワード整数(Q)
REAL*4 F 浮動小数点数(F)
REAL*4(Alpha 固有) IEEE S 浮動小数点数(FS)
REAL*8 D 浮動小数点数(D)
REAL*8 G 浮動小数点数(G)
REAL*8 (Alpha 固有) IEEE T 浮動小数点数(FT)
REAL*16 (Alpha 固有) H 浮動小数点数(H)
COMPLEX*8 F 複素数 (FC)
COMPLEX*8 (Alpha 固有) IEEE S 浮動小数点数 (SC)
COMPLEX*16 D 複素数 (DC)
COMPLEX*16 G 複素数 (GC)
COMPLEX*16 (Alpha 固有) IEEE T 浮動小数点数 (TC)(Alpha 固有)
CHARACTER ASCII テキスト(T)
配列 (なし)
レコード (なし)

LOGICAL データ型を表すのに内部的には VMS の符号なし整数のデータ型 (BU,WU,LU,QU) が使用されるとしても,LOGICAL 変数および LOGICAL の値が言語式で使用されている場合は,デバッガはコンパイラと同様に LOGICAL の変数および値を符号付きとして処理します。

デバッガは LOGICAL 変数および LOGICAL 式の値を .TRUE. や .FALSE. ではなく,数値でプリントします。LOGICAL の変数や値で有効なのは,通常は下位ビットだけで,0 が .FALSE.,1 が .TRUE. です。しかし,Fortran では,LOGICAL の値のすべてのビットを操作することが許されており,言語式の中で LOGICAL の値を使用することができます。この理由から,LOGICAL 変数や LOGICAL 式の整数値全体を見なければならない場合があるので,デバッガがそれを表示します。

(1.0,2.0) などの COMPLEX 定数は,デバッガの式ではサポートしていません。

REAL*4 型および COMPLEX*8 型の浮動小数点数は,コンパイラのスイッチに応じて,F 浮動小数点数または IEEE S 浮動小数点数で表現されることがあります。

REAL*8 型および COMPLEX*16 型の浮動小数点数は,コンパイラのスイッチに応じて,D 浮動小数点数,G 浮動小数点数,または IEEE T 浮動小数点数で表現されることがあります。

OpenVMS Alpha システムでは,デバッガは複素数変数を含む式を評価できません。この問題を回避するには,複素数変数の内容を調べ, EXAMINE コマンドによって表示された複素数変数の実数部と虚数部を使用して,式を評価します。


前へ 次へ 目次 索引