error: unnecessary structure name repetition
  --> $DIR/use_self.rs:18:21
   |
LL |         fn new() -> Foo {
   |                     ^^^ help: use the applicable keyword: `Self`
   |
   = note: `-D clippy::use-self` implied by `-D warnings`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:19:13
   |
LL |             Foo {}
   |             ^^^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:21:22
   |
LL |         fn test() -> Foo {
   |                      ^^^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:22:13
   |
LL |             Foo::new()
   |             ^^^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:27:25
   |
LL |         fn default() -> Foo {
   |                         ^^^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:28:13
   |
LL |             Foo::new()
   |             ^^^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:93:24
   |
LL |         fn bad(foos: &[Foo]) -> impl Iterator<Item = &Foo> {
   |                        ^^^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:93:55
   |
LL |         fn bad(foos: &[Foo]) -> impl Iterator<Item = &Foo> {
   |                                                       ^^^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:108:13
   |
LL |             TS(0)
   |             ^^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:143:29
   |
LL |                 fn bar() -> Bar {
   |                             ^^^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:144:21
   |
LL |                     Bar { foo: Foo {} }
   |                     ^^^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:155:21
   |
LL |         fn baz() -> Foo {
   |                     ^^^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:156:13
   |
LL |             Foo {}
   |             ^^^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:173:21
   |
LL |             let _ = Enum::B(42);
   |                     ^^^^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:174:21
   |
LL |             let _ = Enum::C { field: true };
   |                     ^^^^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:175:21
   |
LL |             let _ = Enum::A;
   |                     ^^^^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:217:13
   |
LL |             nested::A::fun_1();
   |             ^^^^^^^^^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:218:13
   |
LL |             nested::A::A;
   |             ^^^^^^^^^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:220:13
   |
LL |             nested::A {};
   |             ^^^^^^^^^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:239:13
   |
LL |             TestStruct::from_something()
   |             ^^^^^^^^^^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:253:25
   |
LL |         async fn g() -> S {
   |                         ^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:254:13
   |
LL |             S {}
   |             ^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:258:16
   |
LL |             &p[S::A..S::B]
   |                ^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:258:22
   |
LL |             &p[S::A..S::B]
   |                      ^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:281:29
   |
LL |         fn foo(value: T) -> Foo<T> {
   |                             ^^^^^^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:282:13
   |
LL |             Foo { value }
   |             ^^^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:319:21
   |
LL |         type From = T::From;
   |                     ^^^^^^^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:320:19
   |
LL |         type To = T::To;
   |                   ^^^^^ help: use the applicable keyword: `Self`

error: unnecessary structure name repetition
  --> $DIR/use_self.rs:453:13
   |
LL |             A::new::<submod::B>(submod::B {})
   |             ^ help: use the applicable keyword: `Self`

error: aborting due to 29 previous errors

