Sun Studio 12: dbx コマンドによるデバッグ

関数の中だけハンドラを有効にする (in function)

たとえば、


<dbx> trace step -in foo

は、次のようなスクリプトと等価です。


    # create handler in disabled state
    when step -disable { echo Stepped to $line; }
    t=$newhandlerid    # remember handler id
    when in foo {
     # when entered foo enable the trace
     handler -enable "$t"
     # arrange so that upon returning from foo,
     # the trace is disabled.
     when returns { handler -disable "$t"; };
    }