rust-lang/rust-clippy

`never_loop`: Note why the loop will never loop.

Open

#16056 opened on Nov 9, 2025

View on GitHub
 (7 comments) (0 reactions) (1 assignee)Rust (10,406 stars) (1,391 forks)batch import
C-enhancementgood first issue

Description

Description

The reason why a loop will never actually complete isn't always obvious (see #16054 for an example). For such cases it would be nice to have a note pointing out all the locations where this occurs. Obvious causes ideally wouldn't get any additional output.

Examples

loop {
    do_something();
    // No need to point this out.
    panic!();
}
// Imagine something less obvious.
let x = || Some(panic!());

loop {
    // Why doesn't this loop?
    x().unwrap();
}

Version

Additional Labels

No response

Contributor guide