mirror of https://github.com/rust-lang/rust
67 lines
2.1 KiB
Plaintext
67 lines
2.1 KiB
Plaintext
error[E0106]: missing lifetime specifier
|
|
--> $DIR/missing-lifetime-in-alias.rs:23:24
|
|
|
|
|
LL | type B<'a> = <A<'a> as Trait>::Foo;
|
|
| ^^^^^ expected named lifetime parameter
|
|
|
|
|
help: consider using the `'a` lifetime
|
|
|
|
|
LL | type B<'a> = <A<'a> as Trait<'a>>::Foo;
|
|
| ++++
|
|
|
|
error[E0106]: missing lifetime specifier
|
|
--> $DIR/missing-lifetime-in-alias.rs:27:28
|
|
|
|
|
LL | type C<'a, 'b> = <A<'a> as Trait>::Bar;
|
|
| ^^^^^ expected named lifetime parameter
|
|
|
|
|
note: these named lifetimes are available to use
|
|
--> $DIR/missing-lifetime-in-alias.rs:27:8
|
|
|
|
|
LL | type C<'a, 'b> = <A<'a> as Trait>::Bar;
|
|
| ^^ ^^
|
|
help: consider using one of the available lifetimes here
|
|
|
|
|
LL | type C<'a, 'b> = <A<'a> as Trait<'lifetime>>::Bar;
|
|
| +++++++++++
|
|
|
|
error[E0477]: the type `Impl<'a>` does not fulfill the required lifetime
|
|
--> $DIR/missing-lifetime-in-alias.rs:16:20
|
|
|
|
|
LL | type Bar<'b>
|
|
| ------------ definition of `Bar` from trait
|
|
...
|
|
LL | type Bar<'b> = &'b ();
|
|
| ^^^^^^
|
|
|
|
|
note: type must outlive the lifetime `'b` as defined here
|
|
--> $DIR/missing-lifetime-in-alias.rs:16:14
|
|
|
|
|
LL | type Bar<'b> = &'b ();
|
|
| ^^
|
|
help: copy the `where` clause predicates from the trait
|
|
|
|
|
LL | type Bar<'b> = &'b () where Self: 'b;
|
|
| ++++++++++++++
|
|
|
|
error[E0107]: missing generics for associated type `Trait::Bar`
|
|
--> $DIR/missing-lifetime-in-alias.rs:27:36
|
|
|
|
|
LL | type C<'a, 'b> = <A<'a> as Trait>::Bar;
|
|
| ^^^ expected 1 lifetime argument
|
|
|
|
|
note: associated type defined here, with 1 lifetime parameter: `'b`
|
|
--> $DIR/missing-lifetime-in-alias.rs:4:10
|
|
|
|
|
LL | type Bar<'b>
|
|
| ^^^ --
|
|
help: add missing lifetime argument
|
|
|
|
|
LL | type C<'a, 'b> = <A<'a> as Trait>::Bar<'a>;
|
|
| ++++
|
|
|
|
error: aborting due to 4 previous errors
|
|
|
|
Some errors have detailed explanations: E0106, E0107, E0477.
|
|
For more information about an error, try `rustc --explain E0106`.
|