Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/ide/src/goto_definition.rs')
-rw-r--r--crates/ide/src/goto_definition.rs38
1 files changed, 38 insertions, 0 deletions
diff --git a/crates/ide/src/goto_definition.rs b/crates/ide/src/goto_definition.rs
index c61b2ba84f..4cbcb6ed05 100644
--- a/crates/ide/src/goto_definition.rs
+++ b/crates/ide/src/goto_definition.rs
@@ -505,6 +505,44 @@ fn foo() {
}
#[test]
+ fn goto_def_in_included_file_inside_mod() {
+ check(
+ r#"
+//- minicore:include
+//- /main.rs
+mod a {
+ include!("b.rs");
+}
+//- /b.rs
+fn func_in_include() {
+ //^^^^^^^^^^^^^^^
+}
+fn foo() {
+ func_in_include$0();
+}
+"#,
+ );
+
+ check(
+ r#"
+//- minicore:include
+//- /main.rs
+mod a {
+ include!("a.rs");
+}
+//- /a.rs
+fn func_in_include() {
+ //^^^^^^^^^^^^^^^
+}
+
+fn foo() {
+ func_in_include$0();
+}
+"#,
+ );
+ }
+
+ #[test]
fn goto_def_if_items_same_name() {
check(
r#"