#### 5.1.4 Deleting Breakpoints

It is often necessary to eliminate a breakpoint, watchpoint, or catchpoint once it has done its job and you no longer want your program to stop there. This is called deleting the breakpoint. A breakpoint that has been deleted no longer exists; it is forgotten.

With the `clear` command you can delete breakpoints according to where they are in your program. With the `delete` command you can delete individual breakpoints, watchpoints, or catchpoints by specifying their breakpoint numbers.

It is not necessary to delete a breakpoint to proceed past it. gdb automatically ignores breakpoints on the first instruction to be executed when you continue execution without changing the execution address.

`clear`
  Delete any breakpoints at the next instruction to be executed in the selected stack frame (see Selecting a Frame). When the innermost frame is selected, this is a good way to delete a breakpoint where your program just stopped.
`clear` location
  Delete any breakpoints set at the specified location. See Specify Location, for the various forms of location; the most useful ones are listed below:
  `clear` function
  `clear` filename`:`function
    Delete any breakpoints set at entry to the named function.
  `clear` linenum
  `clear` filename`:`linenum
    Delete any breakpoints set at or within the code of the specified linenum of the specified filename.

`delete` [`breakpoints`] [range`...`]
  Delete the breakpoints, watchpoints, or catchpoints of the breakpoint ranges specified as arguments. If no argument is specified, delete all breakpoints (gdb asks confirmation, unless you have `set confirm off`). You can abbreviate this command as `d`.