Skip to content

Commit

Permalink
Rollup merge of rust-lang#129032 - jswrenn:transmute-method, r=compil…
Browse files Browse the repository at this point in the history
…er-errors

Document & implement the transmutation modeled by `BikeshedIntrinsicFrom`

Documents that `BikeshedIntrinsicFrom` models transmute-via-union, which is slightly more expressive than the transmute-via-cast implemented by `transmute_copy`. Additionally, we provide an implementation of transmute-via-union as a method on the `BikeshedIntrinsicFrom` trait with additional documentation on the boundary between trait invariants and caller obligations.

Whether or not transmute-via-union is the right kind of transmute to model remains up for discussion [1]. Regardless, it seems wise to document the present behavior.

[1] https://rust-lang.zulipchat.com/#narrow/stream/216762-project-safe-transmute/topic/What.20'kind'.20of.20transmute.20to.20model.3F/near/426331967

Tracking Issue: rust-lang#99571

r? `@compiler-errors`

cc `@scottmcm,` `@Lokathor`
  • Loading branch information
matthiaskrgr authored Aug 26, 2024
2 parents 28a983d + 88790f8 commit 932cbd4
Showing 1 changed file with 350 additions and 21 deletions.
Loading

0 comments on commit 932cbd4

Please sign in to comment.