diff options
| author | Dylan DPC <99973273+Dylan-DPC@users.noreply.github.com> | 2022-10-02 20:42:22 +0530 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-10-02 20:42:22 +0530 |
| commit | 0b2596723bade820e3d5ba58d3e142dedeff566d (patch) | |
| tree | d129e518fa2ad556452bf9804c26e9f151165d6d | |
| parent | 890a327c8635cdfc9cd7d97dbd2d916e863e7fc7 (diff) | |
| parent | e2c5247701da4ec3bc476e61d8dba7cdb7865a37 (diff) | |
| download | rust-0b2596723bade820e3d5ba58d3e142dedeff566d.tar.gz rust-0b2596723bade820e3d5ba58d3e142dedeff566d.zip | |
Rollup merge of #102566 - compiler-errors:test-102498, r=Mark-Simulacrum
Add a known-bug test for #102498 Self-explanatory
| -rw-r--r-- | src/test/ui/consts/constifconst-call-in-const-position.rs | 21 | ||||
| -rw-r--r-- | src/test/ui/consts/constifconst-call-in-const-position.stderr | 18 |
2 files changed, 39 insertions, 0 deletions
diff --git a/src/test/ui/consts/constifconst-call-in-const-position.rs b/src/test/ui/consts/constifconst-call-in-const-position.rs new file mode 100644 index 00000000000..bf67e5a3f76 --- /dev/null +++ b/src/test/ui/consts/constifconst-call-in-const-position.rs @@ -0,0 +1,21 @@ +// known-bug: #102498 + +#![feature(const_trait_impl, generic_const_exprs)] + +pub trait Tr { + fn a() -> usize; +} + +impl Tr for () { + fn a() -> usize { + 1 + } +} + +const fn foo<T: ~const Tr>() -> [u8; T::a()] { + [0; T::a()] +} + +fn main() { + foo::<()>(); +} diff --git a/src/test/ui/consts/constifconst-call-in-const-position.stderr b/src/test/ui/consts/constifconst-call-in-const-position.stderr new file mode 100644 index 00000000000..e3f67b44678 --- /dev/null +++ b/src/test/ui/consts/constifconst-call-in-const-position.stderr @@ -0,0 +1,18 @@ +warning: the feature `generic_const_exprs` is incomplete and may not be safe to use and/or cause compiler crashes + --> $DIR/constifconst-call-in-const-position.rs:3:30 + | +LL | #![feature(const_trait_impl, generic_const_exprs)] + | ^^^^^^^^^^^^^^^^^^^ + | + = note: see issue #76560 <https://github.com/rust-lang/rust/issues/76560> for more information + = note: `#[warn(incomplete_features)]` on by default + +error[E0080]: evaluation of `foo::<()>::{constant#0}` failed + --> $DIR/constifconst-call-in-const-position.rs:15:38 + | +LL | const fn foo<T: ~const Tr>() -> [u8; T::a()] { + | ^^^^^^ calling non-const function `<() as Tr>::a` + +error: aborting due to previous error; 1 warning emitted + +For more information about this error, try `rustc --explain E0080`. |
