|  | error[E0373]: closure may outlive the current function, but it borrows `books`, which is owned by the current function | 
|  | --> $DIR/borrowck-escaping-closure-error-2.rs:11:14 | 
|  | | | 
|  | LL |     Box::new(|| books.push(4)) | 
|  | |              ^^ ----- `books` is borrowed here | 
|  | |              | | 
|  | |              may outlive borrowed value `books` | 
|  | | | 
|  | note: closure is returned here | 
|  | --> $DIR/borrowck-escaping-closure-error-2.rs:11:5 | 
|  | | | 
|  | LL |     Box::new(|| books.push(4)) | 
|  | |     ^^^^^^^^^^^^^^^^^^^^^^^^^^ | 
|  | help: to force the closure to take ownership of `books` (and any other referenced variables), use the `move` keyword | 
|  | | | 
|  | LL |     Box::new(move || books.push(4)) | 
|  | |              ++++ | 
|  |  | 
|  | error: aborting due to 1 previous error | 
|  |  | 
|  | For more information about this error, try `rustc --explain E0373`. |