mirror of
https://github.com/rust-lang/rust-clippy
synced 2024-11-24 05:33:27 +00:00
Merge #3357
3357: Check existential types in `use_self` r=oli-obk a=HMPerson1 Fixes #3231 Co-authored-by: HMPerson1 <hmperson1@gmail.com>
This commit is contained in:
commit
ead29847ff
3 changed files with 22 additions and 2 deletions
|
@ -226,6 +226,6 @@ impl<'a, 'tcx> Visitor<'tcx> for UseSelfVisitor<'a, 'tcx> {
|
|||
}
|
||||
|
||||
fn nested_visit_map<'this>(&'this mut self) -> NestedVisitorMap<'this, 'tcx> {
|
||||
NestedVisitorMap::OnlyBodies(&self.cx.tcx.hir)
|
||||
NestedVisitorMap::All(&self.cx.tcx.hir)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -205,3 +205,17 @@ mod issue2894 {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
mod existential {
|
||||
struct Foo;
|
||||
|
||||
impl Foo {
|
||||
fn bad(foos: &[Self]) -> impl Iterator<Item=&Foo> {
|
||||
foos.iter()
|
||||
}
|
||||
|
||||
fn good(foos: &[Self]) -> impl Iterator<Item=&Self> {
|
||||
foos.iter()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -120,5 +120,11 @@ error: unnecessary structure name repetition
|
|||
119 | fn mul(self, rhs: Bad) -> Bad {
|
||||
| ^^^ help: use the applicable keyword: `Self`
|
||||
|
||||
error: aborting due to 20 previous errors
|
||||
error: unnecessary structure name repetition
|
||||
--> $DIR/use_self.rs:213:54
|
||||
|
|
||||
213 | fn bad(foos: &[Self]) -> impl Iterator<Item=&Foo> {
|
||||
| ^^^ help: use the applicable keyword: `Self`
|
||||
|
||||
error: aborting due to 21 previous errors
|
||||
|
||||
|
|
Loading…
Reference in a new issue