When a watchpoint triggers, the thread’s program counter (PC) points to the instruction following the instruction that caused the watchpoint to trigger. If the memory store instruction is the last instruction in a source statement, the PC points to the source line following the statement that triggered the watchpoint. (Breakpoints and watchpoints work differently. A breakpoint stops before an instruction executes. In contrast, a watchpoint stops after an instruction executes.)