Skip to content

Commit

Permalink
Rollup merge of rust-lang#122990 - SkiFire13:transmute-may-copy, r=jh…
Browse files Browse the repository at this point in the history
…pratt

Clarify transmute example

The example claims using an iterator will copy the entire vector, but this is not true in practice thanks to internal specializations in the stdlib (see https://godbolt.org/z/cnxo3MYs5 for confirmation that this doesn't reallocate nor iterate over the vec's elements). Since neither the copy nor the optimization is guaranteed I opted for saying that they _may_ happen.
  • Loading branch information
matthiaskrgr committed Mar 25, 2024
2 parents fbb81fa + fb65ca1 commit e3fbaa8
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion library/core/src/intrinsics.rs
Expand Up @@ -1356,7 +1356,7 @@ extern "rust-intrinsic" {
/// let v_clone = v_orig.clone();
///
/// // This is the suggested, safe way.
/// // It does copy the entire vector, though, into a new array.
/// // It may copy the entire vector into a new one though, but also may not.
/// let v_collected = v_clone.into_iter()
/// .map(Some)
/// .collect::<Vec<Option<&i32>>>();
Expand Down

0 comments on commit e3fbaa8

Please sign in to comment.