diff options
| author | Camille GILLOT <gillot.camille@gmail.com> | 2022-08-17 21:50:59 +0200 |
|---|---|---|
| committer | Camille GILLOT <gillot.camille@gmail.com> | 2022-08-17 21:50:59 +0200 |
| commit | 72acd94117e784d4e7425e827c60d6a6748d7a88 (patch) | |
| tree | 51ae3113f77d98551e8861fcdb8a75ef61d7aa07 | |
| parent | be2641a61f2d34fe4f937a49dacfcb82bf0b9075 (diff) | |
| download | rust-72acd94117e784d4e7425e827c60d6a6748d7a88.tar.gz rust-72acd94117e784d4e7425e827c60d6a6748d7a88.zip | |
Add const-generics test.
| -rw-r--r-- | src/test/ui/traits/alias/self-in-const-generics.rs | 12 | ||||
| -rw-r--r-- | src/test/ui/traits/alias/self-in-const-generics.stderr | 11 |
2 files changed, 23 insertions, 0 deletions
diff --git a/src/test/ui/traits/alias/self-in-const-generics.rs b/src/test/ui/traits/alias/self-in-const-generics.rs new file mode 100644 index 00000000000..b0de8ccd678 --- /dev/null +++ b/src/test/ui/traits/alias/self-in-const-generics.rs @@ -0,0 +1,12 @@ +#![allow(incomplete_features)] +#![feature(generic_const_exprs)] +#![feature(trait_alias)] + +trait Bar<const N: usize> {} + +trait BB = Bar<{ 2 + 1 }>; + +fn foo(x: &dyn BB) {} +//~^ ERROR the trait alias `BB` cannot be made into an object [E0038] + +fn main() {} diff --git a/src/test/ui/traits/alias/self-in-const-generics.stderr b/src/test/ui/traits/alias/self-in-const-generics.stderr new file mode 100644 index 00000000000..61cc217cfbc --- /dev/null +++ b/src/test/ui/traits/alias/self-in-const-generics.stderr @@ -0,0 +1,11 @@ +error[E0038]: the trait alias `BB` cannot be made into an object + --> $DIR/self-in-const-generics.rs:9:16 + | +LL | fn foo(x: &dyn BB) {} + | ^^ + | + = note: it cannot use `Self` as a type parameter in a supertrait or `where`-clause + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0038`. |
