Pending breakpoints and watchpoints
pending breakpoint or watchpoint is one that exists in the debugger but is not active on the target until some precondition is met, such as a shared library being loaded.
Breakpoints and watchpoints are typically set when debug information is available. Pending breakpoints and watchpoints, however, enable you to set breakpoints and watchpoints before the associated debug information is available.
When a new shared library is loaded, the debugger re-evaluates all pending breakpoints and watchpoints. Breakpoints or watchpoints with addresses that can be resolved are set as standard execution breakpoints or watchpoints and those with unresolved addresses remain pending. The debugger automatically changes any breakpoints or watchpoints in a shared library to a pending one when the library is unloaded by your application.
Manually setting a pending breakpoint or watchpoint
To manually set a pending breakpoint or watchpoint, you can use the -p option with any of these commands:
Tip:You can enter debugger commands in the Commands view. See Commands view for more information.
Example 3-2 Pending breakpoint/watchpoint example
break -p lib.c:20 # Sets a pending breakpoint at line 20 in lib.c awatch -p *0x80D4 # Sets a pending read/write watchpoint on address 0x80D4
Resolving a pending breakpoint or watchpoint
You can force the resolution of a pending breakpoint or watchpoint. This might be useful, for example, if you have manually modified the shared library search paths.
To resolve a pending breakpoint or watchpoint:
- If using the user interface, right-click on the pending breakpoint or watchpoint that you want to resolve, and select Resolve.
- If using the command-line, use the resolve command.