This is the mail archive of the gdb-prs@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

breakpoints/1600: read watchpoints don't work as excepted


>Number:         1600
>Category:       breakpoints
>Synopsis:       read watchpoints don't work as excepted
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Apr 01 10:18:01 UTC 2004
>Closed-Date:
>Last-Modified:
>Originator:     jon@beniston.com
>Release:        6.0
>Organization:
>Environment:
Cygwin - But probably not platform specific
>Description:
Read watchpoints don't work as I'd expect. For example, if you set an rwatch on the variable a, but have the code:

a += 3;

The the watchpoint wont be triggered. Also, if you have the code:

b = a;

Execution actually stops the line after this. I would expect it to stop on this line.

I believe this is because the code in infrun.c always does a single step after hitting a watchpoint to see if the value changes. This should probably be changed to only do the single step if there is not a matching read watchpoint at the line that the debugger first stops on.
>How-To-Repeat:

>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]