局所変数にデータ変更ブレークポイントを配置する際に、フィルタを使用すると便利です。次の例では、現在のスコープは関数 foo() にあり、対象となる変数 index は関数 bar() にあります。
(dbx) stop access w &bar`index -in bar |
bar`index により、関数 foo にある index() 変数や index という名称のグローバル変数ではなく、関数 bar にある index 変数が確実に取り出されます。
-in bar には、次のような意味があります。
関数 bar() が入力されると、ブレークポイントが自動的に有効になる。
bar() とそれが呼び出したすべての関数が有効の間は、ブレークポイントは有効の状態を保つ。
bar() からの復帰時に、ブレークポイントは自動的に無効になる。
index に対応するスタック位置は、ほかのいずれかの関数のいずれかの局所変数によって再度利用できます。-in により、ブレークポイントが起動するのは bar`index がアクセスされた場合のみになります。