Error code E0712
A borrow of a thread-local variable was made inside a function which outlived the lifetime of the function.
Erroneous code example:
#![feature(thread_local)] #[thread_local] static FOO: u8 = 3; fn main() { let a = &FOO; // error: thread-local variable borrowed past end of function std::thread::spawn(move || { println!("{}", a); }); }