//@ run-pass | |
// Test that we are able to infer a suitable kind for this closure | |
// that is just called (`FnOnce`). | |
use std::mem; | |
struct DropMe<'a>(&'a mut i32); | |
impl<'a> Drop for DropMe<'a> { | |
fn drop(&mut self) { | |
*self.0 += 1; | |
} | |
} | |
fn main() { | |
let mut counter = 0; | |
{ | |
let drop_me = DropMe(&mut counter); | |
let tick = || mem::drop(drop_me); | |
tick(); | |
} | |
assert_eq!(counter, 1); | |
} |