diff options
| author | Folkert de Vries <folkert@folkertdev.nl> | 2025-07-02 15:56:59 +0200 |
|---|---|---|
| committer | Folkert de Vries <folkert@folkertdev.nl> | 2025-07-03 10:22:40 +0200 |
| commit | 8512e397695fc6a64862ff37c0940ef9c936b24d (patch) | |
| tree | c5da3a6961977eb4027b1e071676211ca9c35255 /tests/auxiliary | |
| parent | f46ce66fcc3d6058f90ac5bf0930f940f1e7b0ca (diff) | |
| download | rust-8512e397695fc6a64862ff37c0940ef9c936b24d.tar.gz rust-8512e397695fc6a64862ff37c0940ef9c936b24d.zip | |
minicore: use core's `diagnostic::on_unimplemented` messages
Diffstat (limited to 'tests/auxiliary')
| -rw-r--r-- | tests/auxiliary/minicore.rs | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/tests/auxiliary/minicore.rs b/tests/auxiliary/minicore.rs index 3e9841b179c..392ad1cee14 100644 --- a/tests/auxiliary/minicore.rs +++ b/tests/auxiliary/minicore.rs @@ -5,7 +5,8 @@ //! # Important notes //! //! - `minicore` is **only** intended for `core` items, and the stubs should match the actual `core` -//! items. +//! items. For identical error output, any `diagnostic` attributes (e.g. `on_unimplemented`) +//! should also be replicated here. //! - Be careful of adding new features and things that are only available for a subset of targets. //! //! # References @@ -41,12 +42,24 @@ macro_rules! impl_marker_trait { } #[lang = "pointee_sized"] +#[diagnostic::on_unimplemented( + message = "values of type `{Self}` may or may not have a size", + label = "may or may not have a known size" +)] pub trait PointeeSized {} #[lang = "meta_sized"] +#[diagnostic::on_unimplemented( + message = "the size for values of type `{Self}` cannot be known", + label = "doesn't have a known size" +)] pub trait MetaSized: PointeeSized {} #[lang = "sized"] +#[diagnostic::on_unimplemented( + message = "the size for values of type `{Self}` cannot be known at compilation time", + label = "doesn't have a size known at compile-time" +)] pub trait Sized: MetaSized {} #[lang = "legacy_receiver"] @@ -64,6 +77,10 @@ pub trait BikeshedGuaranteedNoDrop {} pub unsafe auto trait Freeze {} #[lang = "unpin"] +#[diagnostic::on_unimplemented( + note = "consider using the `pin!` macro\nconsider using `Box::pin` if you need to access the pinned value outside of the current scope", + message = "`{Self}` cannot be unpinned" +)] pub auto trait Unpin {} impl_marker_trait!( @@ -110,6 +127,7 @@ pub struct UnsafeCell<T: PointeeSized> { impl<T: PointeeSized> !Freeze for UnsafeCell<T> {} #[lang = "tuple_trait"] +#[diagnostic::on_unimplemented(message = "`{Self}` is not a tuple")] pub trait Tuple {} #[rustc_builtin_macro] |
