@@ -6,10 +6,10 @@ use crate::marker::ConstParamTy;
6
6
/// any value of type `Self` are safely transmutable into a value of type `Dst`, in a given `Context`,
7
7
/// notwithstanding whatever safety checks you have asked the compiler to [`Assume`] are satisfied.
8
8
#[ unstable( feature = "transmutability" , issue = "99571" ) ]
9
- #[ lang = "transmute_trait" ]
9
+ #[ cfg_attr ( not ( bootstrap ) , lang = "transmute_trait" ) ]
10
10
#[ rustc_deny_explicit_impl( implement_via_object = false ) ]
11
11
#[ rustc_coinductive]
12
- pub unsafe trait BikeshedIntrinsicFrom < Src , Context , const ASSUME : Assume = { Assume :: NOTHING } >
12
+ pub unsafe trait BikeshedIntrinsicFrom < Src , const ASSUME : Assume = { Assume :: NOTHING } >
13
13
where
14
14
Src : ?Sized ,
15
15
{
@@ -28,8 +28,9 @@ pub struct Assume {
28
28
/// that violates Rust's memory model.
29
29
pub lifetimes : bool ,
30
30
31
- /// When `true`, the compiler assumes that *you* have ensured that it is safe for you to violate the
32
- /// type and field privacy of the destination type (and sometimes of the source type, too).
31
+ /// When `true`, the compiler assumes that *you* have ensured that no
32
+ /// unsoundness will arise from violating the safety invariants of the
33
+ /// destination type (and sometimes of the source type, too).
33
34
pub safety : bool ,
34
35
35
36
/// When `true`, the compiler assumes that *you* are ensuring that the source type is actually a valid
0 commit comments