about summary refs log tree commit diff
diff options
context:
space:
mode:
authorMara Bos <m-ou.se@m-ou.se>2021-07-07 13:25:48 +0000
committerMara Bos <m-ou.se@m-ou.se>2021-07-07 13:26:38 +0000
commit10d6b34d32e377798868586d2d8e25d972cbeb0d (patch)
tree4483056b6a7ba6835a4a1f740d9d8b641febda8b
parentf77dd5ac9371897d30dd3a8c43023e14f86dd0bf (diff)
downloadrust-10d6b34d32e377798868586d2d8e25d972cbeb0d.tar.gz
rust-10d6b34d32e377798868586d2d8e25d972cbeb0d.zip
Add generic types to prelude collision lint test.
-rw-r--r--src/test/ui/rust-2021/future-prelude-collision-unneeded.rs25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/test/ui/rust-2021/future-prelude-collision-unneeded.rs b/src/test/ui/rust-2021/future-prelude-collision-unneeded.rs
index 8b3b7e74a7f..6e207679986 100644
--- a/src/test/ui/rust-2021/future-prelude-collision-unneeded.rs
+++ b/src/test/ui/rust-2021/future-prelude-collision-unneeded.rs
@@ -23,6 +23,28 @@ impl Hey for X {
     }
 }
 
+struct Y<T>(T);
+
+impl Hey for Y<i32> {
+    fn from_iter(_: i32) -> Self {
+        Y(0)
+    }
+}
+
+struct Z<T>(T);
+
+impl Hey for Z<i32> {
+    fn from_iter(_: i32) -> Self {
+        Z(0)
+    }
+}
+
+impl std::iter::FromIterator<u32> for Z<u32> {
+    fn from_iter<T: IntoIterator<Item = u32>>(_: T) -> Self {
+        todo!()
+    }
+}
+
 fn main() {
     // See https://github.com/rust-lang/rust/issues/86633
     let s = S;
@@ -30,4 +52,7 @@ fn main() {
 
     // See https://github.com/rust-lang/rust/issues/86902
     X::from_iter(1);
+    Y::from_iter(1);
+    Y::<i32>::from_iter(1);
+    Z::<i32>::from_iter(1);
 }