-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Description
Summary
The lint should trigger in presence of an exit call except when the call is in the main function. The lint works fine unless you include the test target of a binary with --tests or --all-targets. As main is not the entrypoint for the test target, the lint triggers if main contains an exit call.
Lint Name
exit
Reproducer
I tried this code:
fn main() {
std::process::exit(0);
}I saw this happen with cargo clippy --all-targets -- -Dclippy::exit:
Checking clippy-repro v0.0.0 (/home/runner/work/clippy-repro/clippy-repro)
error: usage of `process::exit`
--> src/main.rs:2:5
|
2 | std::process::exit(0);
| ^^^^^^^^^^^^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#exit
= note: requested on the command line with `-D clippy::exit`
error: could not compile `clippy-repro` (bin "clippy-repro" test) due to 1 previous error
I expected to see this happen:
Checking clippy-repro v0.0.0 (/home/runner/work/clippy-repro/clippy-repro)
Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.06s
Version
cargo 1.83.0-nightly (ad074abe3 2024-10-04)
release: 1.83.0-nightly
commit-hash: ad074abe3a18ce8444c06f962ceecfd056acfc73
commit-date: 2024-10-04
host: x86_64-unknown-linux-gnu
libgit2: 1.8.1 (sys:0.19.0 vendored)
libcurl: 8.9.0-DEV (sys:0.4.74+curl-8.9.0 vendored ssl:OpenSSL/1.1.1w)
ssl: OpenSSL 1.1.1w 11 Sep 2023
os: Ubuntu 22.4.0 (jammy) [64-bit]
clippy 0.1.83 (55a22d2 2024-10-06)
Additional Labels
No response