# XO0208: `.ignore_err("reason")` discards an error; listed for review

Reported by `xo vet` as a note, never an error. Every `.ignore_err("reason")` throws away an error, and its reason is the only record of why that is safe (core 2.6). `xo vet` lists each one with its reason so a reviewer can confirm the reason still holds, catch placeholder reasons such as the `TODO: reason` inserted by the XO0206 fix, and decide whether the error should be handled after all.

## Example

```xo
fn cleanup(fs: Fs) uses fs.write {
  fs.remove("tmp").ignore_err("TODO: reason")
}
```

## Fix

```xo
// Either give the real reason:
fn cleanup(fs: Fs) uses fs.write {
  fs.remove("tmp").ignore_err("best effort temp file cleanup")
}

// or handle the error:
fn cleanup_checked(fs: Fs) -> () ! FsErr uses fs.write {
  fs.remove("tmp")?
}
```

Run `xo explain XO0208` for this text in a terminal, or see
[section 10.6 of the specification](../../spec/core/#106-diagnostic-codes).

