// MutexGuard> must not be Sync, that would be unsound. use std::sync::Mutex; use std::cell::Cell; fn test_sync(_t: T) {} fn main() { let m = Mutex::new(Cell::new(0i32)); let guard = m.lock().unwrap(); test_sync(guard); //~^ ERROR `Cell` cannot be shared between threads safely [E0277] }