diff options
| author | bors <bors@rust-lang.org> | 2025-03-03 22:57:01 +0000 | 
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2025-03-03 22:57:01 +0000 | 
| commit | 2010bba8868fa714bb4b07be463a8923b26d44db (patch) | |
| tree | 64c902c929a797b1d0b3699f0c870f2e6f0fa1ed /library/core/src | |
| parent | e16a049adbf94d610787430b6efdf31d896dc5b6 (diff) | |
| parent | 1998cf76a8ca030a5813487b5e4017fa11f48698 (diff) | |
| download | rust-2010bba8868fa714bb4b07be463a8923b26d44db.tar.gz rust-2010bba8868fa714bb4b07be463a8923b26d44db.zip | |
Auto merge of #137927 - matthiaskrgr:rollup-yj463ns, r=matthiaskrgr
Rollup of 9 pull requests Successful merges: - #132388 (Implement `#[cfg]` in `where` clauses) - #134900 (Fix parsing of ranges after unary operators) - #136938 (Remove `:` from `stack-protector-heuristics-effect.rs` Filecheck Pattern) - #137054 (Make phantom variance markers transparent) - #137525 (Simplify parallelization in test-float-parse) - #137618 (Skip `tidy` in pre-push hook if the user is deleting a remote branch) - #137741 (Stop using `hash_raw_entry` in `CodegenCx::const_str`) - #137849 (Revert "Remove Win SDK 10.0.26100.0 from CI") - #137862 (ensure we always print all --print options in help) r? `@ghost` `@rustbot` modify labels: rollup
Diffstat (limited to 'library/core/src')
| -rw-r--r-- | library/core/src/marker/variance.rs | 12 | 
1 files changed, 12 insertions, 0 deletions
| diff --git a/library/core/src/marker/variance.rs b/library/core/src/marker/variance.rs index 23334e6575d..235f8a3bb79 100644 --- a/library/core/src/marker/variance.rs +++ b/library/core/src/marker/variance.rs @@ -136,6 +136,8 @@ phantom_lifetime! { /// For all `'a`, the following are guaranteed: /// * `size_of::<PhantomCovariantLifetime<'a>>() == 0` /// * `align_of::<PhantomCovariantLifetime<'a>>() == 1` + #[rustc_pub_transparent] + #[repr(transparent)] pub struct PhantomCovariantLifetime<'a>(PhantomCovariant<&'a ()>); /// Zero-sized type used to mark a lifetime as contravariant. /// @@ -149,6 +151,8 @@ phantom_lifetime! { /// For all `'a`, the following are guaranteed: /// * `size_of::<PhantomContravariantLifetime<'a>>() == 0` /// * `align_of::<PhantomContravariantLifetime<'a>>() == 1` + #[rustc_pub_transparent] + #[repr(transparent)] pub struct PhantomContravariantLifetime<'a>(PhantomContravariant<&'a ()>); /// Zero-sized type used to mark a lifetime as invariant. /// @@ -162,6 +166,8 @@ phantom_lifetime! { /// For all `'a`, the following are guaranteed: /// * `size_of::<PhantomInvariantLifetime<'a>>() == 0` /// * `align_of::<PhantomInvariantLifetime<'a>>() == 1` + #[rustc_pub_transparent] + #[repr(transparent)] pub struct PhantomInvariantLifetime<'a>(PhantomInvariant<&'a ()>); } @@ -179,6 +185,8 @@ phantom_type! { /// For all `T`, the following are guaranteed: /// * `size_of::<PhantomCovariant<T>>() == 0` /// * `align_of::<PhantomCovariant<T>>() == 1` + #[rustc_pub_transparent] + #[repr(transparent)] pub struct PhantomCovariant<T>(PhantomData<fn() -> T>); /// Zero-sized type used to mark a type parameter as contravariant. /// @@ -193,6 +201,8 @@ phantom_type! { /// For all `T`, the following are guaranteed: /// * `size_of::<PhantomContravariant<T>>() == 0` /// * `align_of::<PhantomContravariant<T>>() == 1` + #[rustc_pub_transparent] + #[repr(transparent)] pub struct PhantomContravariant<T>(PhantomData<fn(T)>); /// Zero-sized type used to mark a type parameter as invariant. /// @@ -206,6 +216,8 @@ phantom_type! { /// For all `T`, the following are guaranteed: /// * `size_of::<PhantomInvariant<T>>() == 0` /// * `align_of::<PhantomInvariant<T>>() == 1` + #[rustc_pub_transparent] + #[repr(transparent)] pub struct PhantomInvariant<T>(PhantomData<fn(T) -> T>); } | 
