Oracle Solaris Studio 12.2: dbx コマンドによるデバッグ

call コマンド

ネイティブモードでは、call コマンドは手続きを呼び出します。Java モードでは、call コマンドはメソッドを呼び出します。

ネイティブモードの構文

call procedure ([parameters ]) [-lang language] [-resumeone]

ここで

language は呼び出す手続きの言語です。

procedure は、手続きの名前です。

parameters は、手続きのパラメータです。

call コマンドによって関数を呼び出すこともできます。戻り値を調べるには、print コマンドを使用します (print コマンド」 参照)。

呼び出されたメソッドがブレークポイントに達することがあります。cont コマンド (cont コマンド」を参照) を使用して実行を継続するか、pop -c (pop コマンド」参照) を使用して呼び出しを中止するかを選択できます。呼び出しの中止は、呼び出されたメソッドがセグメント例外を引き起こした場合にも便利です。

-lang オプションは呼び出す手続きの言語で、指定した言語の呼び出し規則を使用するよう dbx に指示します。このオプションは、呼び出された手続きがデバッグ情報なしでコンパイルされ、dbx がパラメータを渡す方法が不明な場合に役立ちます。

-resumeone オプションは手続きが呼び出されたときにスレッドを 1 つだけ再開します。詳細は、「実行の再開」を参照してください。

Java モードの構文

call [class_name.|object_name .] method_name ([parameters ]}

ここで

class_name は Java クラス名で、パッケージのパス (ピリオド (.) を修飾子として使用。たとえば test1.extra.T1.Inner) またはフルパス名 (ポンド記号 (#) で始まり、スラッシュ (/) やドル記号 ($) を修飾子として使用。たとえば #test1/extra/T1$Inner) のいずれかで指定します。修飾子 $ を使用する場合は、class_name を引用符で囲みます。

object_name は、Java オブジェクトの名前です。

method_name は、Java メソッドの名前です。

parameters は、メソッドのパラメータです。

呼び出されたメソッドがブレークポイントに達することがあります。cont コマンド (cont コマンド」を参照) を使用して実行を継続するか、pop -c (pop コマンド」参照) を使用して呼び出しを中止するかを選択できます。呼び出しの中止は、呼び出されたメソッドがセグメント例外を引き起こした場合にも便利です。