diff options
Diffstat (limited to 'third_party/rust/displaydoc/tests/std/enum_prefix.rs')
-rw-r--r-- | third_party/rust/displaydoc/tests/std/enum_prefix.rs | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/third_party/rust/displaydoc/tests/std/enum_prefix.rs b/third_party/rust/displaydoc/tests/std/enum_prefix.rs new file mode 100644 index 0000000000..1c5479118b --- /dev/null +++ b/third_party/rust/displaydoc/tests/std/enum_prefix.rs @@ -0,0 +1,36 @@ +#![cfg_attr(not(feature = "std"), feature(lang_items, start))] +#![cfg_attr(not(feature = "std"), no_std)] + +#[cfg_attr(not(feature = "std"), start)] +fn start(_argc: isize, _argv: *const *const u8) -> isize { + 0 +} +#[lang = "eh_personality"] +#[no_mangle] +#[cfg(not(feature = "std"))] +pub extern "C" fn rust_eh_personality() {} +#[panic_handler] +#[cfg(not(feature = "std"))] +fn panic(_info: &core::panic::PanicInfo) -> ! { + unsafe { + libc::abort(); + } +} + +use displaydoc::Display; + +/// this type is pretty swell +#[derive(Display)] +#[prefix_enum_doc_attributes] +enum TestType { + /// this variant is too + Variant1, + + /// this variant is two + Variant2, +} + +static_assertions::assert_impl_all!(label; TestType, core::fmt::Display); + +#[cfg(feature = "std")] +fn main() {} |