summaryrefslogtreecommitdiffstats
path: root/src/test/ui/const-generics/generic_const_exprs/ty-alias-substitution.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/const-generics/generic_const_exprs/ty-alias-substitution.rs')
-rw-r--r--src/test/ui/const-generics/generic_const_exprs/ty-alias-substitution.rs14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/test/ui/const-generics/generic_const_exprs/ty-alias-substitution.rs b/src/test/ui/const-generics/generic_const_exprs/ty-alias-substitution.rs
new file mode 100644
index 000000000..d058b3638
--- /dev/null
+++ b/src/test/ui/const-generics/generic_const_exprs/ty-alias-substitution.rs
@@ -0,0 +1,14 @@
+// check-pass
+// Test that we correctly substitute generic arguments for type aliases.
+#![feature(generic_const_exprs)]
+#![allow(incomplete_features)]
+
+type Alias<T, const N: usize> = [T; N + 1];
+
+fn foo<const M: usize>() -> Alias<u32, M> where [u8; M + 1]: Sized {
+ [0; M + 1]
+}
+
+fn main() {
+ foo::<0>();
+}