From 8f36f768e1ca2654da4c22983fe3c8bc3ad059a9 Mon Sep 17 00:00:00 2001 From: Aleksey Kladov Date: Sun, 29 Dec 2019 14:46:24 +0100 Subject: Don't add non-impl/trait containers to scope --- crates/ra_hir_ty/src/tests/regression.rs | 36 +++++++++++++++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) (limited to 'crates/ra_hir_ty/src/tests/regression.rs') diff --git a/crates/ra_hir_ty/src/tests/regression.rs b/crates/ra_hir_ty/src/tests/regression.rs index 09d684ac2..8b3aa8564 100644 --- a/crates/ra_hir_ty/src/tests/regression.rs +++ b/crates/ra_hir_ty/src/tests/regression.rs @@ -1,7 +1,8 @@ -use super::infer; use insta::assert_snapshot; use test_utils::covers; +use super::infer; + #[test] fn bug_484() { assert_snapshot!( @@ -331,3 +332,36 @@ pub fn main_loop() { "### ); } + +#[test] +fn issue_2669() { + assert_snapshot!( + infer( + r#"trait A {} + trait Write {} + struct Response {} + + trait D { + fn foo(); + } + + impl D for Response { + fn foo() { + end(); + fn end() { + let _x: T = loop {}; + } + } + }"# + ), + @r###" + [147; 262) '{ ... }': () + [161; 164) 'end': fn end<{unknown}>() -> () + [161; 166) 'end()': () + [199; 252) '{ ... }': () + [221; 223) '_x': ! + [230; 237) 'loop {}': ! + [235; 237) '{}': () + "### + ) +} -- cgit v1.2.3