Skip to main content

## breakpoint

# Function breakpoint

Source

    pub fn breakpoint()

🔬This is a nightly-only experimental API. (`breakpoint` #133724)
Expand description

Compiles to a target-specific software breakpoint instruction or equivalent.

This will typically abort the program. It may result in a core dump, and/or the system logging debug information. Additional target-specific capabilities may be possible depending on debuggers or other tooling; in particular, a debugger may be able to resume execution.

If possible, this will produce an instruction sequence that allows a debugger to resume after the breakpoint, rather than resuming at the breakpoint; however, the exact behavior is target-specific and debugger-specific, and not guaranteed.

If the target platform does not have any kind of debug breakpoint instruction, this may compile to a trapping instruction (e.g. an undefined instruction) instead, or to some other form of target-specific abort that may or may not support convenient resumption.

The precise behavior and the precise instruction generated are not guaranteed, except that in normal execution with no debug tooling involved this will not continue executing.

- On x86 targets, this produces an `int3` instruction.
- On aarch64 targets, this produces a `brk #0xf000` instruction.