From d7491b3f51c983dba510568ce2f142a15663b65c Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Wed, 16 Aug 2000 08:03:43 +0000 Subject: [PATCH] * value.h (struct value) : Add a comment about its use for watchpoints. --- gdb/ChangeLog | 5 +++++ gdb/value.h | 13 ++++++++++++- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index ecbdde402a..7e4e6fe50a 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2000-08-16 Eli Zaretskii + + * value.h (struct value) : Add a comment about its use for + watchpoints. + 2000-08-12 Kevin Buettner * cxux-nat.c (fetch_inferior_registers): Protoize. diff --git a/gdb/value.h b/gdb/value.h index e87582e579..b0f1c63c26 100644 --- a/gdb/value.h +++ b/gdb/value.h @@ -97,7 +97,18 @@ struct value /* If zero, contents of this value are in the contents field. If nonzero, contents are in inferior memory at address in the location.address field plus the offset field - (and the lval field should be lval_memory). */ + (and the lval field should be lval_memory). + + WARNING: This field is used by the code which handles + watchpoints (see breakpoint.c) to decide whether a particular + value can be watched by hardware watchpoints. If the lazy flag + is set for some member of a value chain, it is assumed that + this member of the chain doesn't need to be watched as part of + watching the value itself. This is how GDB avoids watching the + entire struct or array when the user wants to watch a single + struct member or array element. If you ever change the way + lazy flag is set and reset, be sure to consider this use as + well! */ char lazy; /* If nonzero, this is the value of a variable which does not actually exist in the program. */