File tree Expand file tree Collapse file tree 2 files changed +35
-0
lines changed Expand file tree Collapse file tree 2 files changed +35
-0
lines changed Original file line number Diff line number Diff line change 1+ trait Trait { }
2+
3+ struct Foo ;
4+
5+ impl Trait for Foo { }
6+
7+ fn foo < ' t , P > (
8+ post : P ,
9+ x : & ' t Foo ,
10+ ) -> & ' t impl Trait {
11+ x
12+ }
13+
14+ fn bar < ' t , T > (
15+ post : T ,
16+ x : & ' t Foo ,
17+ ) -> & ' t impl Trait {
18+ foo ( post, x)
19+ //~^ ERROR: the opaque type `foo<T>::{opaque#0}` may not live long enough
20+ //~| HELP: consider adding an explicit lifetime bound `foo<T>::{opaque#0}: 't`
21+ }
22+
23+ fn main ( ) { }
Original file line number Diff line number Diff line change 1+ error[E0309]: the opaque type `foo<T>::{opaque#0}` may not live long enough
2+ --> $DIR/unactionable_diagnostic.rs:18:5
3+ |
4+ LL | foo(post, x)
5+ | ^^^^^^^^^^^^
6+ |
7+ = help: consider adding an explicit lifetime bound `foo<T>::{opaque#0}: 't`...
8+ = note: ...so that the type `impl Trait` will meet its required lifetime bounds
9+
10+ error: aborting due to previous error
11+
12+ For more information about this error, try `rustc --explain E0309`.
You can’t perform that action at this time.
0 commit comments