Shouldn't GDB print some message when it deletes local-scope watchpoints after the inferior exits? Someone might want rerun the debuggee again and will be surprised to find that all those watchpoints silently went away. As far as I could see, this particular gotcha isn't even documented in the manual.