diff options
Diffstat (limited to 'tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-2.rs')
-rw-r--r-- | tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-2.rs | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-2.rs b/tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-2.rs new file mode 100644 index 000000000..cd7941ed9 --- /dev/null +++ b/tests/ui/generic-associated-types/const-generics-gat-in-trait-return-type-2.rs @@ -0,0 +1,20 @@ +// run-pass + +// This test unsures that with_opt_const_param returns the +// def_id of the N param in the Foo::Assoc GAT. + +trait Foo { + type Assoc<const N: usize>; + fn foo<const N: usize>(&self) -> Self::Assoc<N>; +} + +impl Foo for () { + type Assoc<const N: usize> = [(); N]; + fn foo<const N: usize>(&self) -> Self::Assoc<N> { + [(); N] + } +} + +fn main() { + assert_eq!(().foo::<10>(), [(); 10]); +} |