バージョン 4.2.5
 —  デバッガ  —

ブレイクポイントのメンテナンス

ブレイクポイントにより、Natural オブジェクトの実行が特定のステートメント行で中断されます。 このセクションでは、ブレイクポイントを設定する方法とタイミングについて説明します。 ここで説明するメンテナンス機能は、オブジェクトソースから、[List object source]機能を使用して呼び出せます。

Start of instruction setBreakpoint Maintenance を呼び出すには

このセクションでは、ブレイクポイントのメンテナンスの使用条件、[Breakpoint Maintenance]メニューに用意されている機能、およびブレイクポイント画面に含まれるフィールドと列について説明します。


使用条件

ブレイクポイントは、処理する Natural オブジェクトの名前、およびそのオブジェクトのソースコード中でブレイクポイントが実行される行番号を指定して設定します。

一度指定されたブレイクポイントは、削除されない限り、その Natural セッション全体にわたり、設定されたままとなります。

ブレイクポイントは、ソースコード中の特定の行番号を参照します。 したがって、ブレイクポイントの設定後にソースコードを変更すると、ブレイクポイントが誤ったステートメントに適用される結果となり、そのために、Natural オブジェクトが目的の位置で中断されなくなる可能性があります。 このプログラムループの問題は、これらのループ内にラベルを設定すると回避できます。 これらのラベルに設定されたブレイクポイントは、ステートメント行が挿入または削除されると、正しい行番号に調整されます。

ブレイクポイントの一意の識別子は、デバッガにより割り当てられたスパイ番号です。

ブレイクポイントは、コメント行、最初のステートメント行以外のステートメント行(1 つのステートメントが複数のプログラム行にわたる場合)、以下のステートメントのいずれかのみを含む行には設定できません。

Natural Optimizer Compiler でコンパイルされた行にブレイクポイントを設定できるかどうかは、OPTIONS ステートメントの NODBG オプションにより異なります。これについては、『Natural Optimizer Compiler』ドキュメントの「Switching on the Optimizer Compiler」で説明しています。

Top of page

テストモードを ON/OFF に設定

テストモードのオンとオフの切り替え」を参照してください。

Top of page

ブレイクポイントの有効化

Start of instruction set 指定したブレイクポイントの現在の状態をアクティブに設定するには

Top of page

ブレイクポイントの無効化

Start of instruction set 指定したブレイクポイントの現在の状態を非アクティブに設定するには

Top of page

ブレイクポイントの削除

Start of instruction set 指定したブレイクポイントを削除するには

Top of page

ブレイクポイントの表示

Start of instruction set ブレイクポイントを表示するには

Start of instruction set ブレイクポイントのリストを表示するには

Top of page

ブレイクポイントの変更

Start of instruction set ブレイクポイントを変更するには

  1. [Breakpoint Maintenance]メニューでファンクションコード「M」、オブジェクト名、および行番号を入力します。 オブジェクト名を入力しない場合は、デフォルトオブジェクト(指定されている場合)が使用されます。

    または:
    ダイレクトコマンド MODIFY を使用します。その構文については、「コマンドの概要と構文」セクションで説明しています。

    一意のブレイクポイントが指定されている場合は[Modify Breakpoint]画面が表示され、ここでフィールドのエントリを変更できます。 [Modify Breakpoint]画面のフィールドについては、「ブレイクポイント画面のフィールドと列」で説明しています。

    一意のブレイクポイントがまったく見つからない場合は、[List Breakpoints]画面(「ブレイクポイントの表示」を参照)が表示されます。

  2. ブレイクポイントを定義し終わったら、PF3 キー(Exit)または PF5 キー(Save)を押して、変更を保存します。 デバッグエントリの有効性チェックの詳細については、「メンテナンスと検証」も参照してください。 PF12 キー(Canc)を押した場合、ブレイクポイント定義は変更されないままとなります。

Top of page

ブレイクポイントの設定

Start of instruction set セッションのブレイクポイントを追加するには

Top of page

ブレイクポイント画面のフィールドと列

次の表では、[Display Breakpoint]画面または[Modify Breakpoint]画面のフィールドと、[List Breakpoints]画面の列について説明します。

フィールド 説明
Test Mode   テストモードが ONOFF のいずれに設定されているかを示します。
Object   指定されている場合、デフォルトオブジェクトの名前を示します(「デバッガの開始」を参照)。
  Co これは入力フィールドであり、次のいずれかの行コマンドを指定できます。
AC  ブレイクポイントの有効化
DA ブレイクポイントの無効化
DI ブレイクポイントの表示
MO ブレイクポイントの変更
DE ブレイクポイントの削除
? 有効な行コマンドのリストの表示
. ブレイクポイント画面の終了
Spy number No. ブレイクポイントの設定時にデバッガによって割り当てられる一意の数値。
Initial state Stat I ブレイクポイントの初期の状態と現在の状態として、アクティブ(A)または非アクティブ(I)を指定します。
Current state Stat C
Breakpoint name BP Name ブレイクポイントの名前。

有効な値は 1~12 文字です。

ブレイクポイントのデフォルト名は、オブジェクト名と行番号で構成されます。
DBID/FNR DBID Natural オブジェクトが保存されているシステムファイルのデータベース ID(DBID)とファイル番号(FNR)。
FNR
Library Library オブジェクトを含むライブラリの名前。
Object name Object 現在のライブラリまたは STEPLIB のいずれかで使用できるオブジェクトの名前。
Line number Line オブジェクトのソースコード中のステートメントの行番号。 上記の「使用条件」も参照してください。

BEGEND、または ALL も行番号として指定できます。

BEG オブジェクトで実行される最初のステートメントで、プログラム実行を中断するブレイクポイントを指定します。
  BEG ブレイクポイントは、コピーコードには指定できません。
END END または FETCH ステートメントなど、オブジェクトで実行される最後のステートメントで、プログラム実行を中断するブレイクポイントを指定します。
  END ブレイクポイントは、コピーコードには指定できません。
ALL 実行ステートメントを含む各プログラム行で、プログラム実行を中断するブレイクポイントを指定します。
Label   オブジェクトのソースコード中で、処理ループを定義するステートメントに対して以前に設定されたラベルを参照します。上記の「使用条件」も参照してください。

有効な値は 1~32 文字です。

Skips before execution Skips ブレイクポイントが、対応するステートメント行が特定の回数実行されるまでは実行されないようにします。

有効な値は 0(デフォルト)~32767 です。

Max number executions Execs ゼロ(0)より大きい任意の数値で、ブレイクポイントの最大実行回数を指定します。

有効な値は 0(デフォルト)~32767 です。

Number of activations Count 関連するステートメント行でブレイクポイントが有効化された回数を示します。

このカウンタは、プログラムがレベル 1 で起動されるとリセットされます。

Error in definition E プログラム実行中に、ブレイクポイント定義にあるステートメント行が、カタログ化オブジェクトに見つからないことを示します。

このエラーは、デバッグ中にオブジェクトのソースが変更され、再度カタログされると発生する場合があります。

Commands   6 個までのデバッグコマンド。 各行に 1 個のコマンドを入力します。 使用できるすべてのコマンドの概要については、「コマンドの概要と構文」を参照してください。

注意:
ブレイクポイントの変更時にコマンド BREAK を削除し、ダイアログを表示するコマンドを何も指定しないと、プログラムの中断時にデバッガが制御を受け取れなくなります。

Top of page