32 lines
1.1 KiB
Plaintext
32 lines
1.1 KiB
Plaintext
error[E0623]: lifetime mismatch
|
|
--> $DIR/object-lifetime-default-mybox.rs:27:5
|
|
|
|
|
LL | fn load1<'a,'b>(a: &'a MyBox<dyn SomeTrait>,
|
|
| ------------------------ this parameter and the return type are declared with different lifetimes...
|
|
LL | b: &'b MyBox<dyn SomeTrait>)
|
|
LL | -> &'b MyBox<dyn SomeTrait>
|
|
| ------------------------
|
|
LL | {
|
|
LL | a
|
|
| ^ ...but data from `a` is returned here
|
|
|
|
error[E0308]: mismatched types
|
|
--> $DIR/object-lifetime-default-mybox.rs:31:11
|
|
|
|
|
LL | load0(ss)
|
|
| ^^ lifetime mismatch
|
|
|
|
|
= note: expected reference `&MyBox<(dyn SomeTrait + 'static)>`
|
|
found reference `&MyBox<(dyn SomeTrait + 'a)>`
|
|
note: the lifetime `'a` as defined here...
|
|
--> $DIR/object-lifetime-default-mybox.rs:30:10
|
|
|
|
|
LL | fn load2<'a>(ss: &MyBox<dyn SomeTrait + 'a>) -> MyBox<dyn SomeTrait + 'a> {
|
|
| ^^
|
|
= note: ...does not necessarily outlive the static lifetime
|
|
|
|
error: aborting due to 2 previous errors
|
|
|
|
Some errors have detailed explanations: E0308, E0623.
|
|
For more information about an error, try `rustc --explain E0308`.
|