diff options
| author | Deadbeef <ent3rm4n@gmail.com> | 2022-12-15 14:17:38 +0000 |
|---|---|---|
| committer | Deadbeef <ent3rm4n@gmail.com> | 2022-12-15 14:18:15 +0000 |
| commit | a8b9e00518aef62e20ff2ab79801d200c869ea8f (patch) | |
| tree | f324b5b1d23c335aceb9b0a0dbd1a8497f1b8685 /src | |
| parent | 5da1a04278ffddfb9252ee4a0eb9b1f19738673d (diff) | |
| download | rust-a8b9e00518aef62e20ff2ab79801d200c869ea8f.tar.gz rust-a8b9e00518aef62e20ff2ab79801d200c869ea8f.zip | |
fix tidy and add rpitit test
Diffstat (limited to 'src')
| -rw-r--r-- | src/test/ui/rfc-2632-const-trait-impl/const-impl-trait.rs | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/src/test/ui/rfc-2632-const-trait-impl/const-impl-trait.rs b/src/test/ui/rfc-2632-const-trait-impl/const-impl-trait.rs index 2059f6d79a5..0622f96e70d 100644 --- a/src/test/ui/rfc-2632-const-trait-impl/const-impl-trait.rs +++ b/src/test/ui/rfc-2632-const-trait-impl/const-impl-trait.rs @@ -1,5 +1,11 @@ // check-pass -#![feature(associated_type_bounds, const_trait_impl, const_cmp)] +#![allow(incomplete_features)] +#![feature( + associated_type_bounds, + const_trait_impl, + const_cmp, + return_position_impl_trait_in_trait, +)] use std::marker::Destruct; @@ -7,15 +13,30 @@ const fn cmp(a: &impl ~const PartialEq) -> bool { a == a } -const fn wrap(x: impl ~const PartialEq + ~const Destruct) -> impl ~const PartialEq + ~const Destruct { +const fn wrap(x: impl ~const PartialEq + ~const Destruct) + -> impl ~const PartialEq + ~const Destruct +{ x } +#[const_trait] +trait Foo { + fn huh() -> impl ~const PartialEq + ~const Destruct + Copy; +} + +impl const Foo for () { + fn huh() -> impl ~const PartialEq + ~const Destruct + Copy { + 123 + } +} + const _: () = { assert!(cmp(&0xDEADBEEFu32)); assert!(cmp(&())); assert!(wrap(123) == wrap(123)); assert!(wrap(123) != wrap(456)); + let x = <() as Foo>::huh(); + assert!(x == x); }; #[const_trait] |
