| //@ run-pass | |
| // Test that `Box<Test>` is equivalent to `Box<Test+'static>`, both in | |
| // fields and fn arguments. | |
| #![allow(dead_code, unused)] | |
| trait Test { | |
| fn foo(&self) { } | |
| } | |
| struct SomeStruct { | |
| t: Box<dyn Test>, | |
| u: Box<dyn Test+'static>, | |
| } | |
| fn a(t: Box<dyn Test>, mut ss: SomeStruct) { | |
| ss.t = t; | |
| } | |
| fn b(t: Box<dyn Test+'static>, mut ss: SomeStruct) { | |
| ss.t = t; | |
| } | |
| fn c(t: Box<dyn Test>, mut ss: SomeStruct) { | |
| ss.u = t; | |
| } | |
| fn d(t: Box<dyn Test+'static>, mut ss: SomeStruct) { | |
| ss.u = t; | |
| } | |
| fn main() { | |
| } |