Skip to content

Commit bd26403

Browse files
committed
fix panic with reference in macro
1 parent ae6e737 commit bd26403

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

crates/ide-assists/src/handlers/extract_struct_from_enum_variant.rs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -412,6 +412,14 @@ fn reference_to_node(
412412
) -> Option<(ast::PathSegment, SyntaxNode, hir::Module)> {
413413
let segment =
414414
reference.name.as_name_ref()?.syntax().parent().and_then(ast::PathSegment::cast)?;
415+
416+
// filter out the reference in marco
417+
let s_range = segment.syntax().text_range();
418+
let origin_range = sema.original_range(segment.syntax()).range;
419+
if s_range != origin_range {
420+
return None;
421+
}
422+
415423
let parent = segment.parent_path().syntax().parent()?;
416424
let expr_or_pat = match_ast! {
417425
match parent {

0 commit comments

Comments
 (0)