about summary refs log tree commit diff
diff options
context:
space:
mode:
authorLeón Orell Valerian Liehr <me@fmease.dev>2025-03-14 17:26:36 +0100
committerGitHub <noreply@github.com>2025-03-14 17:26:36 +0100
commitc42866f89d0eaf5ab4ed059e0728fc994043c4c3 (patch)
treeda07c6fe1c452c5d2a19dba48a2f50f2e09bc2d2
parent1e7441f14506e3b657425c83a7aa18ee78ab3e2d (diff)
parent4c32adbadbeddfcff1691269e602c89ba9635a50 (diff)
downloadrust-c42866f89d0eaf5ab4ed059e0728fc994043c4c3.tar.gz
rust-c42866f89d0eaf5ab4ed059e0728fc994043c4c3.zip
Rollup merge of #138477 - compiler-errors:deny-bikeshed-guaranteed-no-drop, r=lcnr
Deny impls for `BikeshedGuaranteedNoDrop`

r? lcnr
-rw-r--r--library/core/src/marker.rs6
1 files changed, 5 insertions, 1 deletions
diff --git a/library/core/src/marker.rs b/library/core/src/marker.rs
index e234f105b0b..a4ab4674f4a 100644
--- a/library/core/src/marker.rs
+++ b/library/core/src/marker.rs
@@ -465,9 +465,13 @@ impl<T: ?Sized> Copy for &T {}
 /// Notably, this doesn't include all trivially-destructible types for semver
 /// reasons.
 ///
-/// Bikeshed name for now.
+/// Bikeshed name for now. This trait does not do anything other than reflect the
+/// set of types that are allowed within unions for field validity.
 #[unstable(feature = "bikeshed_guaranteed_no_drop", issue = "none")]
 #[lang = "bikeshed_guaranteed_no_drop"]
+#[rustc_deny_explicit_impl]
+#[rustc_do_not_implement_via_object]
+#[doc(hidden)]
 pub trait BikeshedGuaranteedNoDrop {}
 
 /// Types for which it is safe to share references between threads.