From 76c562f3b30e0d033902d004fdb0069d5584d78a Mon Sep 17 00:00:00 2001 From: lcnr Date: Wed, 9 Feb 2022 12:29:43 +0100 Subject: fix min_const_generics oversight --- .../min_const_generics/forbid-self-no-normalize.rs | 15 +++++++++++++++ .../min_const_generics/forbid-self-no-normalize.stderr | 14 ++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 src/test/ui/const-generics/min_const_generics/forbid-self-no-normalize.rs create mode 100644 src/test/ui/const-generics/min_const_generics/forbid-self-no-normalize.stderr (limited to 'src') diff --git a/src/test/ui/const-generics/min_const_generics/forbid-self-no-normalize.rs b/src/test/ui/const-generics/min_const_generics/forbid-self-no-normalize.rs new file mode 100644 index 00000000000..e1cf7b579aa --- /dev/null +++ b/src/test/ui/const-generics/min_const_generics/forbid-self-no-normalize.rs @@ -0,0 +1,15 @@ +trait AlwaysApplicable { + type Assoc; +} +impl AlwaysApplicable for T { + type Assoc = usize; +} + +trait BindsParam { + type ArrayTy; +} +impl BindsParam for ::Assoc { + type ArrayTy = [u8; Self::MAX]; //~ ERROR generic `Self` types +} + +fn main() {} diff --git a/src/test/ui/const-generics/min_const_generics/forbid-self-no-normalize.stderr b/src/test/ui/const-generics/min_const_generics/forbid-self-no-normalize.stderr new file mode 100644 index 00000000000..bda88597006 --- /dev/null +++ b/src/test/ui/const-generics/min_const_generics/forbid-self-no-normalize.stderr @@ -0,0 +1,14 @@ +error: generic `Self` types are currently not permitted in anonymous constants + --> $DIR/forbid-self-no-normalize.rs:12:25 + | +LL | type ArrayTy = [u8; Self::MAX]; + | ^^^^ + | +note: not a concrete type + --> $DIR/forbid-self-no-normalize.rs:11:27 + | +LL | impl BindsParam for ::Assoc { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + -- cgit 1.4.1-3-g733a5