1 error[E0623]: lifetime mismatch
2 --> $DIR/hrlt-implied-trait-bounds-guard.rs:29:29
4 LL | fn badboi<'in_, 'out, T>(x: Foo<'in_, 'out, T>, sadness: &'in_ T) -> &'out T {
5 | ^^^^^^^^^^^^^^^^^^ -------
7 | this parameter and the return type are declared with different lifetimes...
8 | ...but data from `x` is returned here
10 error[E0623]: lifetime mismatch
11 --> $DIR/hrlt-implied-trait-bounds-guard.rs:34:30
13 LL | fn badboi2<'in_, 'out, T>(x: Foo<'in_, 'out, T>, sadness: &'in_ T) {
16 | this type is declared with multiple lifetimes...
17 | ...but data with one lifetime flows into the other here
19 error[E0623]: lifetime mismatch
20 --> $DIR/hrlt-implied-trait-bounds-guard.rs:39:30
22 LL | fn badboi3<'in_, 'out, T>(a: Foo<'in_, 'out, (&'in_ T, &'out T)>, sadness: &'in_ T) {
23 | ^^^^^^^^^^^^^^^^^-------^^-------^^
25 | | these two types are declared with different lifetimes...
26 | ...but data from `a` flows into `a` here
28 error: aborting due to 3 previous errors
30 For more information about this error, try `rustc --explain E0623`.