diff options
| -rw-r--r-- | src/test/ui/const-generics/trait-const-args.rs | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/test/ui/const-generics/trait-const-args.rs b/src/test/ui/const-generics/trait-const-args.rs new file mode 100644 index 00000000000..b60d7e89651 --- /dev/null +++ b/src/test/ui/const-generics/trait-const-args.rs @@ -0,0 +1,29 @@ +// check-pass +#![allow(incomplete_features)] +#![feature(const_generics)] + +struct Const<const N: usize>; +trait Foo<const N: usize> {} + +impl<const N: usize> Foo<N> for Const<N> {} + +fn foo_impl(_: impl Foo<3>) {} + +fn foo_explicit<T: Foo<3>>(_: T) {} + +fn foo_where<T>(_: T) +where + T: Foo<3>, +{ +} + +fn main() { + foo_impl(Const); + foo_impl(Const::<3>); + + foo_explicit(Const); + foo_explicit(Const::<3>); + + foo_where(Const); + foo_where(Const::<3>); +} |
