An obsolete watchpoint definition is similar to a stop variable or stop memory breakpoint:
obsolete_watch_breakpoint_definition_command
: watch obsolete_watch_detector
[ obsolete_watch_modifiers ]
obsolete_watch_detector
| [ memory ] start_address_expression
| [ memory ] start_address_expression , end_address_expression
| [ memory ] start_address_expression : byte_count_expression
obsolete_watch_modifiers
: [ access_modifier ]
[ thread_filter ]
[ within_modifier ]
[ logical_filter ]
An obsolete watchpoint and a stop command differ in the following respects:
These differences are purely syntactic; the semantics are the same.
For example:
(idb) watch variable _firstNode write
[#3: watch variable _firstNode write]
(idb) cont
[3] Address 0xbfffc188 was accessed at:
void List<Node>::append(class Node* const): src/x_list.cxx
[line 149, 0x0804c56d] append(class Node* const)+0x15: movl %edx, (%eax)
0xbfffc188: Old value = 0x00000000
0xbfffc188: New value = 0x0805e5f8
[3] stopped at [void List<Node>::append(class Node* const):149 0x0804c56f]
149 _firstNode = node;