rust-lang / rust-lang/rust-clippy
lint: warn about identical conditions inside and outside of functions
Open
Nobody has claimed this yet.
A-lint
E-hard
L-correctness
L-unnecessary
T-middle
T-MIR
- Dominant language
- Rust
- Stars
- 13.5k
- Forks
- 2.2k
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 32
Description
There could be a warning if something is checked outside of a function, passed inside the function and then checked inside the function again.
This might spot redundant conditions but also logic errors if the conditions are conflicting.
fn fun(awesomestruct: SomeStruct) {
if awesomestruct.bar { return } // check inside function
[...]
}
fn main() {
let struct: SomeStruct = something();
if struct.bar { // same condition that is inside of function
fun(struct);
}
}
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start from the Rust example in the issue and determine how the proposed warning would identify matching conditions across the function boundary. The issue names no files, tests, or entry points; done would require an agreed scope and observable warnings for redundant or conflicting conditions.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100