about summary refs log tree commit diff
diff options
context:
space:
mode:
authorBastian Kauschke <bastian_kauschke@hotmail.de>2020-11-10 13:22:28 +0100
committerBastian Kauschke <bastian_kauschke@hotmail.de>2020-11-11 21:24:03 +0100
commita9eacf33b7517fa0b21a2aaab45ccc68cb85e06f (patch)
tree62cbf7804314bb7d1aaae395c0d7bf38bcdbb8ca
parent7d9f81517bcb6bb8f4fde14380e7d6f340034a66 (diff)
downloadrust-a9eacf33b7517fa0b21a2aaab45ccc68cb85e06f.tar.gz
rust-a9eacf33b7517fa0b21a2aaab45ccc68cb85e06f.zip
add error-in-impl-trait const generics test
-rw-r--r--src/test/rustdoc-ui/error-in-impl-trait/const-generics.rs24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/test/rustdoc-ui/error-in-impl-trait/const-generics.rs b/src/test/rustdoc-ui/error-in-impl-trait/const-generics.rs
new file mode 100644
index 00000000000..97760cbf8fb
--- /dev/null
+++ b/src/test/rustdoc-ui/error-in-impl-trait/const-generics.rs
@@ -0,0 +1,24 @@
+// check-pass
+// edition:2018
+#![feature(min_const_generics)]
+trait ValidTrait {}
+
+/// This has docs
+pub fn extern_fn<const N: usize>() -> impl Iterator<Item = [u8; N]> {
+    loop {}
+}
+
+pub trait Trait<const N: usize> {}
+impl Trait<1> for u8 {}
+impl Trait<2> for u8 {}
+impl<const N: usize> Trait<N> for [u8; N] {}
+
+/// This also has docs
+pub fn test<const N: usize>() -> impl Trait<N> where u8: Trait<N> {
+    loop {}
+}
+
+/// Document all the functions
+pub async fn a_sink<const N: usize>(v: [u8; N]) -> impl Trait<N> {
+    loop {}
+}