2018-08-30 07:18:55 -05:00
|
|
|
// run-pass
|
2015-07-03 05:19:36 -05:00
|
|
|
struct Wrapper<'a, T: ?Sized>(&'a mut i32, T);
|
|
|
|
|
|
|
|
impl<'a, T: ?Sized> Drop for Wrapper<'a, T> {
|
|
|
|
fn drop(&mut self) {
|
|
|
|
*self.0 = 432;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
fn main() {
|
|
|
|
let mut x = 0;
|
|
|
|
{
|
|
|
|
let wrapper = Box::new(Wrapper(&mut x, 123));
|
2019-05-28 13:47:21 -05:00
|
|
|
let _: Box<Wrapper<dyn Send>> = wrapper;
|
2015-07-03 05:19:36 -05:00
|
|
|
}
|
|
|
|
assert_eq!(432, x)
|
|
|
|
}
|