b9906aca5a
`never_loop` catches `loop { panic!() }` * Depends on: #11447 This is an outgrowth of #11447 which I felt would best be done as a separate PR because it yields significant new results. This uses typecheck results to determine divergence, meaning we can now detect cases like `loop { std::process::abort() }` or `loop { panic!() }`. A downside is that `loop { unimplemented!() }` is also being linted, which is arguably a false positive. I'm not really sure how to check this from HIR though, and it seems best to leave this epicycle for a later PR. changelog: [`never_loop`]: Now lints on `loop { panic!() }` and similar constructs