Make Clone::clone a lang item · patricklam/verify-rust-std@8488ae6 (original) (raw)
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -160,6 +160,9 @@ pub trait Clone: Sized { | ||
160 | 160 | /// ``` |
161 | 161 | #[stable(feature = "rust1", since = "1.0.0")] |
162 | 162 | #[must_use = "cloning is often expensive and is not expected to have side effects"] |
163 | +// Clone::clone is special because the compiler generates MIR to implement it for some types. | |
164 | +// See InstanceKind::CloneShim. | |
165 | +#[cfg_attr(not(bootstrap), lang = "clone_fn")] | |
163 | 166 | fn clone(&self) -> Self; |
164 | 167 | |
165 | 168 | /// Performs copy-assignment from `source`. |