error: lifetime may not live long enough --> tests/fail/invariance-bad-function.rs:15:5 | 14 | fn shrink<'a, 'b: 'a>(long: Box>) -> Box> + 'b> { | -- -- lifetime `'b` defined here | | | lifetime `'a` defined here 15 | long | ^^^^ function was supposed to return data with lifetime `'b` but it is returning data with lifetime `'a` | = help: consider adding the following bound: `'a: 'b` = note: requirement occurs because of the type `transient::Inv<'_>`, which makes the generic argument `'_` invariant = note: the struct `transient::Inv<'a>` is invariant over the parameter `'a` = help: see for more information about variance