mirror of
https://github.com/rust-lang/rust-clippy
synced 2024-11-30 16:39:26 +00:00
f3879b3630
Have the lint trigger even if `Self` has generic lifetime parameters. ```rs impl<'a> Foo<'a> { type Item = Foo<'a>; // Can be replaced with Self fn new() -> Self { Foo { // No lifetime, but they are inferred to be that of Self // Can be replaced as well ... } } // Don't replace `Foo<'b>`, the lifetime is different! fn eq<'b>(self, other: Foo<'b>) -> bool { .. } ``` Fixes #12381
263 lines
8.5 KiB
Text
263 lines
8.5 KiB
Text
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:22:21
|
|
|
|
|
LL | fn new() -> Foo {
|
|
| ^^^ help: use the applicable keyword: `Self`
|
|
|
|
|
= note: `-D clippy::use-self` implied by `-D warnings`
|
|
= help: to override `-D warnings` add `#[allow(clippy::use_self)]`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:23:13
|
|
|
|
|
LL | Foo {}
|
|
| ^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:25:22
|
|
|
|
|
LL | fn test() -> Foo {
|
|
| ^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:26:13
|
|
|
|
|
LL | Foo::new()
|
|
| ^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:31:25
|
|
|
|
|
LL | fn default() -> Foo {
|
|
| ^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:32:13
|
|
|
|
|
LL | Foo::new()
|
|
| ^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:73:28
|
|
|
|
|
LL | fn clone(&self) -> Foo<'a> {
|
|
| ^^^^^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:106:24
|
|
|
|
|
LL | fn bad(foos: &[Foo]) -> impl Iterator<Item = &Foo> {
|
|
| ^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:106:55
|
|
|
|
|
LL | fn bad(foos: &[Foo]) -> impl Iterator<Item = &Foo> {
|
|
| ^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:121:13
|
|
|
|
|
LL | TS(0)
|
|
| ^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:156:29
|
|
|
|
|
LL | fn bar() -> Bar {
|
|
| ^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:157:21
|
|
|
|
|
LL | Bar { foo: Foo {} }
|
|
| ^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:168:21
|
|
|
|
|
LL | fn baz() -> Foo {
|
|
| ^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:169:13
|
|
|
|
|
LL | Foo {}
|
|
| ^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:186:21
|
|
|
|
|
LL | let _ = Enum::B(42);
|
|
| ^^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:187:21
|
|
|
|
|
LL | let _ = Enum::C { field: true };
|
|
| ^^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:188:21
|
|
|
|
|
LL | let _ = Enum::A;
|
|
| ^^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:230:13
|
|
|
|
|
LL | nested::A::fun_1();
|
|
| ^^^^^^^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:231:13
|
|
|
|
|
LL | nested::A::A;
|
|
| ^^^^^^^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:233:13
|
|
|
|
|
LL | nested::A {};
|
|
| ^^^^^^^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:252:13
|
|
|
|
|
LL | TestStruct::from_something()
|
|
| ^^^^^^^^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:266:25
|
|
|
|
|
LL | async fn g() -> S {
|
|
| ^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:267:13
|
|
|
|
|
LL | S {}
|
|
| ^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:271:16
|
|
|
|
|
LL | &p[S::A..S::B]
|
|
| ^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:271:22
|
|
|
|
|
LL | &p[S::A..S::B]
|
|
| ^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:294:29
|
|
|
|
|
LL | fn foo(value: T) -> Foo<T> {
|
|
| ^^^^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:295:13
|
|
|
|
|
LL | Foo::<T> { value }
|
|
| ^^^^^^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:467:13
|
|
|
|
|
LL | A::new::<submod::B>(submod::B {})
|
|
| ^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:504:13
|
|
|
|
|
LL | S2::new()
|
|
| ^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:541:17
|
|
|
|
|
LL | Foo::Bar => unimplemented!(),
|
|
| ^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:542:17
|
|
|
|
|
LL | Foo::Baz => unimplemented!(),
|
|
| ^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:548:20
|
|
|
|
|
LL | if let Foo::Bar = self {
|
|
| ^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:572:17
|
|
|
|
|
LL | Something::Num(n) => *n,
|
|
| ^^^^^^^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:573:17
|
|
|
|
|
LL | Something::TupleNums(n, _m) => *n,
|
|
| ^^^^^^^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:574:17
|
|
|
|
|
LL | Something::StructNums { one, two: _ } => *one,
|
|
| ^^^^^^^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:580:17
|
|
|
|
|
LL | crate::issue8845::Something::Num(n) => *n,
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:581:17
|
|
|
|
|
LL | crate::issue8845::Something::TupleNums(n, _m) => *n,
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:582:17
|
|
|
|
|
LL | crate::issue8845::Something::StructNums { one, two: _ } => *one,
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:598:17
|
|
|
|
|
LL | let Foo(x) = self;
|
|
| ^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:603:17
|
|
|
|
|
LL | let crate::issue8845::Foo(x) = self;
|
|
| ^^^^^^^^^^^^^^^^^^^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:610:17
|
|
|
|
|
LL | let Bar { x, .. } = self;
|
|
| ^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:615:17
|
|
|
|
|
LL | let crate::issue8845::Bar { x, .. } = self;
|
|
| ^^^^^^^^^^^^^^^^^^^^^ help: use the applicable keyword: `Self`
|
|
|
|
error: unnecessary structure name repetition
|
|
--> tests/ui/use_self.rs:654:17
|
|
|
|
|
LL | E::A => {},
|
|
| ^ help: use the applicable keyword: `Self`
|
|
|
|
error: aborting due to 43 previous errors
|
|
|