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
fn cleanup(fs: Fs) uses fs.write {
fs.remove("tmp").ignore_err("TODO: reason")
}Fix
// 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.