summaryrefslogtreecommitdiffstats
path: root/tests/ui/type-alias-impl-trait/wf-in-associated-type.fail.stderr
blob: 7d72c9f811af4e435ec447b0a78de1f9d1de3c91 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
error[E0309]: the parameter type `T` may not live long enough
  --> $DIR/wf-in-associated-type.rs:36:23
   |
LL |     impl<'a, T> Trait<'a, T> for () {
   |          -- the parameter type `T` must be valid for the lifetime `'a` as defined here...
LL |         type Opaque = impl Sized + 'a;
   |                       ^^^^^^^^^^^^^^^ ...so that the type `&'a T` will meet its required lifetime bounds
   |
help: consider adding an explicit lifetime bound
   |
LL |     impl<'a, T: 'a> Trait<'a, T> for () {
   |               ++++

error[E0309]: the parameter type `T` may not live long enough
  --> $DIR/wf-in-associated-type.rs:36:23
   |
LL |     impl<'a, T> Trait<'a, T> for () {
   |          -- the parameter type `T` must be valid for the lifetime `'a` as defined here...
LL |         type Opaque = impl Sized + 'a;
   |                       ^^^^^^^^^^^^^^^ ...so that the reference type `&'a T` does not outlive the data it points at
   |
help: consider adding an explicit lifetime bound
   |
LL |     impl<'a, T: 'a> Trait<'a, T> for () {
   |               ++++

error: aborting due to 2 previous errors

For more information about this error, try `rustc --explain E0309`.