diff options
| author | bors <bors@rust-lang.org> | 2023-07-05 13:42:00 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2023-07-05 13:42:00 +0000 |
| commit | e4cd1610067501fa4d347eba7b18f77137dbbf48 (patch) | |
| tree | 384a419aa2e8e343ce7fa9262f43cae06239ed6d /tests | |
| parent | dfe0683138de0959b6ab6a039b54d9347f6a6355 (diff) | |
| parent | 25fc6c15869b0bd4241da452ddd2d30b0c16a815 (diff) | |
| download | rust-e4cd1610067501fa4d347eba7b18f77137dbbf48.tar.gz rust-e4cd1610067501fa4d347eba7b18f77137dbbf48.zip | |
Auto merge of #113210 - fee1-dead-contrib:effects-mvp, r=oli-obk
Effects/keyword generics MVP This adds `feature(effects)`, which adds `const host: bool` to the generics of const functions, const traits and const impls. This will be used to replace the current logic around const traits. r? `@oli-obk`
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/ui/rfcs/rfc-2632-const-trait-impl/effects/helloworld.rs | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/ui/rfcs/rfc-2632-const-trait-impl/effects/helloworld.rs b/tests/ui/rfcs/rfc-2632-const-trait-impl/effects/helloworld.rs new file mode 100644 index 00000000000..49457354cc9 --- /dev/null +++ b/tests/ui/rfcs/rfc-2632-const-trait-impl/effects/helloworld.rs @@ -0,0 +1,29 @@ +// check-pass + +// gate-test-effects +// ^ effects doesn't have a gate so we will trick tidy into thinking this is a gate test + +#![feature(const_trait_impl, effects, rustc_attrs)] + +// ensure we are passing in the correct host effect in always const contexts. + +pub const fn hmm</* T, */ #[rustc_host] const host: bool = true>() -> usize { + if host { + 1 + } else { + 0 + } +} + +const _: () = { + let x = hmm(); + assert!(0 == x); +}; + +/* FIXME(effects) +pub const fn uwu(x: [u8; hmm::<()>()]) { + let [] = x; +} +*/ + +fn main() {} |
