Hi folks, There is an unexpected behavior when we use software watchpoints (also hardware in some cases) attached to conditional expressions, such as: "watch x if x == ", considering "x" a simple "int" type variable. When that watchpoint goes out of scope, it's marked for disposal at the next stop as obviously there's no way to evaluate the expression "x" anymore. But GDB is still trying to evaluate the conditional part of the watchpoint, even though "x" is out of scope already. Thus, GDB is failing to find correct frame information and ends up in an internal error. I've tracked down this issue and it seems we need to check for the disposition field of the watchpoint whenever we check for the return value of a conditional expression. Attached is a simple patch of what i have in mind to fix this issue. The testcase can be a simple "Hello world"-like binary with a few variables to watch. Any other ideas? Regards, Luis