]> git.proxmox.com Git - rustc.git/blobdiff - src/test/ui/traits/assoc-type-in-superbad.rs
Merge tag 'debian/1.52.1+dfsg1-1_exp2' into proxmox/buster
[rustc.git] / src / test / ui / traits / assoc-type-in-superbad.rs
diff --git a/src/test/ui/traits/assoc-type-in-superbad.rs b/src/test/ui/traits/assoc-type-in-superbad.rs
new file mode 100644 (file)
index 0000000..579ce7c
--- /dev/null
@@ -0,0 +1,16 @@
+// Test case where an associated type is referenced from within the
+// supertrait definition, and the impl makes the wrong
+// associations. Issue #20220.
+
+use std::vec::IntoIter;
+
+pub trait Foo: Iterator<Item=<Self as Foo>::Key> {
+    type Key;
+}
+
+impl Foo for IntoIter<i32> {
+    type Key = u32; //~ ERROR type mismatch
+}
+
+fn main() {
+}