error[E0507]: cannot move out of a shared reference --> $DIR/std-uncopyable-atomics.rs:9:13 | LL | let x = *&x; | ^^^ | | | move occurs because value has type `std::sync::atomic::AtomicBool`, which does not implement the `Copy` trait | help: consider borrowing here: `&*&x` error[E0507]: cannot move out of a shared reference --> $DIR/std-uncopyable-atomics.rs:11:13 | LL | let x = *&x; | ^^^ | | | move occurs because value has type `std::sync::atomic::AtomicIsize`, which does not implement the `Copy` trait | help: consider borrowing here: `&*&x` error[E0507]: cannot move out of a shared reference --> $DIR/std-uncopyable-atomics.rs:13:13 | LL | let x = *&x; | ^^^ | | | move occurs because value has type `std::sync::atomic::AtomicUsize`, which does not implement the `Copy` trait | help: consider borrowing here: `&*&x` error[E0507]: cannot move out of a shared reference --> $DIR/std-uncopyable-atomics.rs:15:13 | LL | let x = *&x; | ^^^ | | | move occurs because value has type `std::sync::atomic::AtomicPtr`, which does not implement the `Copy` trait | help: consider borrowing here: `&*&x` error: aborting due to 4 previous errors For more information about this error, try `rustc --explain E0507`.