summaryrefslogtreecommitdiffstats
path: root/src/test/ui/const-generics/generic_const_exprs/let-bindings.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/const-generics/generic_const_exprs/let-bindings.rs')
-rw-r--r--src/test/ui/const-generics/generic_const_exprs/let-bindings.rs15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/test/ui/const-generics/generic_const_exprs/let-bindings.rs b/src/test/ui/const-generics/generic_const_exprs/let-bindings.rs
new file mode 100644
index 000000000..cd5d76dd9
--- /dev/null
+++ b/src/test/ui/const-generics/generic_const_exprs/let-bindings.rs
@@ -0,0 +1,15 @@
+#![feature(generic_const_exprs)]
+#![allow(incomplete_features)]
+
+// We do not yet want to support let-bindings in abstract consts,
+// so this test should keep failing for now.
+fn test<const N: usize>() -> [u8; { let x = N; N + 1 }] where [u8; { let x = N; N + 1 }]: Default {
+ //~^ ERROR overly complex generic constant
+ //~| ERROR overly complex generic constant
+ Default::default()
+}
+
+fn main() {
+ let x = test::<31>();
+ assert_eq!(x, [0; 32]);
+}