From 15016bc09f74302b8b5edb2811f5a80330980819 Mon Sep 17 00:00:00 2001 From: hi-rustin Date: Mon, 18 Jul 2022 21:39:13 +0800 Subject: [PATCH] Find original as node before compute ref match Signed-off-by: hi-rustin --- crates/ide-completion/src/render.rs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/crates/ide-completion/src/render.rs b/crates/ide-completion/src/render.rs index 005ab3a895ce..19e46889a5a7 100644 --- a/crates/ide-completion/src/render.rs +++ b/crates/ide-completion/src/render.rs @@ -134,8 +134,10 @@ pub(crate) fn render_field( .lookup_by(name.clone()); item.insert_text(escaped_name); if let Some(receiver) = &dot_access.receiver { - if let Some(ref_match) = compute_ref_match(ctx.completion, ty) { - item.ref_match(ref_match, receiver.syntax().text_range().start()); + if let Some(original) = ctx.completion.sema.original_ast_node(receiver.clone()) { + if let Some(ref_match) = compute_ref_match(ctx.completion, ty) { + item.ref_match(ref_match, original.syntax().text_range().start()); + } } } item.build()