error[E0507]: cannot move out of an `Rc` --> $DIR/borrowck-move-out-of-overloaded-auto-deref.rs:4:14 | LL | let _x = Rc::new(vec![1, 2]).into_iter(); | ^^^^^^^^^^^^^^^^^^^^----------- | | | | | value moved due to this method call | move occurs because value has type `Vec`, which does not implement the `Copy` trait | note: this function takes ownership of the receiver `self`, which moves value --> $SRC_DIR/core/src/iter/traits/collect.rs:LL:COL | LL | fn into_iter(self) -> Self::IntoIter; | ^^^^ error: aborting due to previous error For more information about this error, try `rustc --explain E0507`.