diff options
Diffstat (limited to 'src/test/ui/const-generics/defaults/generic-expr-default-mismatched-types.rs')
-rw-r--r-- | src/test/ui/const-generics/defaults/generic-expr-default-mismatched-types.rs | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/test/ui/const-generics/defaults/generic-expr-default-mismatched-types.rs b/src/test/ui/const-generics/defaults/generic-expr-default-mismatched-types.rs new file mode 100644 index 000000000..777865d1c --- /dev/null +++ b/src/test/ui/const-generics/defaults/generic-expr-default-mismatched-types.rs @@ -0,0 +1,16 @@ +#![feature(generic_const_exprs)] +#![allow(incomplete_features)] + +struct Foo<const N: usize, const M: usize = { N + 1 }>; +fn should_unify<const N: usize>() -> Foo<N> where [(); { N + 1 }]: { + Foo::<N, { N + 1 }> +} +pub fn shouldnt_unify<const N: usize>() -> Foo<N> +where + [(); { N + 1 }]:, + [(); { N + 2 }]:, { + Foo::<N, { N + 2 }> + //~^ error: mismatched types +} + +fn main() {} |