Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/ide-db/src/search.rs')
-rw-r--r--crates/ide-db/src/search.rs10
1 files changed, 7 insertions, 3 deletions
diff --git a/crates/ide-db/src/search.rs b/crates/ide-db/src/search.rs
index 4166b08339..852ee595be 100644
--- a/crates/ide-db/src/search.rs
+++ b/crates/ide-db/src/search.rs
@@ -529,9 +529,13 @@ impl<'a> FindUsages<'a> {
})
.into_iter()
.flat_map(move |token| {
- sema.descend_into_macros_exact_if_in_macro(token)
- .into_iter()
- .filter_map(|it| it.parent())
+ if sema.might_be_inside_macro_call(&token) {
+ sema.descend_into_macros_exact(token)
+ } else {
+ <_>::from([token])
+ }
+ .into_iter()
+ .filter_map(|it| it.parent())
})
}