error[E0308]: method not compatible with trait --> $DIR/do-not-imply-from-trait-impl.rs:17:38 | LL | fn foo<'a: 'static>(&'a self) -> impl MkStatic + 'static { | ^^^^^^^^^^^^^^^^^^^^^^^ lifetime mismatch | = note: expected signature `fn(&'late _) -> _` found signature `fn(&'a _) -> _` note: the lifetime `'late` as defined here... --> $DIR/do-not-imply-from-trait-impl.rs:13:25 | LL | fn foo<'a: 'static, 'late>(&'late self) -> impl MkStatic; | ^^^^^ note: ...does not necessarily outlive the lifetime `'a` as defined here --> $DIR/do-not-imply-from-trait-impl.rs:17:12 | LL | fn foo<'a: 'static>(&'a self) -> impl MkStatic + 'static { | ^^ error: aborting due to 1 previous error For more information about this error, try `rustc --explain E0308`.