error[E0308]: mismatched types --> $DIR/variance-use-covariant-struct-1.rs:10:5 | LL | v | ^ lifetime mismatch | = note: expected struct `SomeStruct<&'max ()>` found struct `SomeStruct<&'min ()>` note: the lifetime `'min` as defined on the function body at 6:8... --> $DIR/variance-use-covariant-struct-1.rs:6:8 | LL | fn foo<'min,'max>(v: SomeStruct<&'min ()>) | ^^^^ note: ...does not necessarily outlive the lifetime `'max` as defined on the function body at 6:13 --> $DIR/variance-use-covariant-struct-1.rs:6:13 | LL | fn foo<'min,'max>(v: SomeStruct<&'min ()>) | ^^^^ error: aborting due to previous error For more information about this error, try `rustc --explain E0308`.