]> git.lizzy.rs Git - rust.git/blob - src/test/ui/regions/regions-copy-closure.rs
Apply suggestions from code review
[rust.git] / src / test / ui / regions / regions-copy-closure.rs
1 // run-pass
2 #![allow(non_camel_case_types)]
3
4 struct closure_box<'a> {
5     cl: Box<dyn FnMut() + 'a>,
6 }
7
8 fn box_it<'a>(x: Box<dyn FnMut() + 'a>) -> closure_box<'a> {
9     closure_box {cl: x}
10 }
11
12 pub fn main() {
13     let mut i = 3;
14     assert_eq!(i, 3);
15     {
16         let cl = || i += 1;
17         let mut cl_box = box_it(Box::new(cl));
18         (cl_box.cl)();
19     }
20     assert_eq!(i, 4);
21 }