Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/hir-ty/src/tests/regression/new_solver.rs')
-rw-r--r--crates/hir-ty/src/tests/regression/new_solver.rs29
1 files changed, 28 insertions, 1 deletions
diff --git a/crates/hir-ty/src/tests/regression/new_solver.rs b/crates/hir-ty/src/tests/regression/new_solver.rs
index 97473bbabb..6d6c56696a 100644
--- a/crates/hir-ty/src/tests/regression/new_solver.rs
+++ b/crates/hir-ty/src/tests/regression/new_solver.rs
@@ -20,7 +20,7 @@ impl<'a> IntoIterator for &'a Grid {
"#,
expect![[r#"
150..154 'self': &'a Grid
- 174..181 '{ }': impl Iterator<Item = &'? ()>
+ 174..181 '{ }': impl Iterator<Item = &'a ()>
"#]],
);
}
@@ -71,3 +71,30 @@ fn main() {
}"#,
);
}
+
+#[test]
+fn projection_is_not_associated_type() {
+ check_no_mismatches(
+ r#"
+//- minicore: fn
+trait Iterator {
+ type Item;
+
+ fn partition<F>(self, f: F)
+ where
+ F: FnMut(&Self::Item) -> bool,
+ {
+ }
+}
+
+struct Iter;
+impl Iterator for Iter {
+ type Item = i32;
+}
+
+fn main() {
+ Iter.partition(|n| true);
+}
+ "#,
+ );
+}