# no-debugger

Disallow debugger statements

The `debugger` statement pauses execution when an attached debugger reaches it.
Instead, you SHOULD remove the statement and set a breakpoint through the debugger when needed.

- Category: suspicious
- Level: warning
- Fix: automatic
- Scope: module

## Reported

```ds title="main.ds"
declare const active: boolean;
if (active) {
    const resumed = true;
    debugger;
}
```

## Accepted

```ds title="main.ds"
declare const active: boolean;
if (active) {
    const resumed = true;
}
```

## Prior art

- [ESLint · no-debugger](https://eslint.org/docs/latest/rules/no-debugger)

[language/linter/src/rules/suspicious/no_debugger.rs:6](https://github.com/destack-sh/destack/blob/main/language/linter/src/rules/suspicious/no_debugger.rs#L6)
