Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/hir/src/lib.rs')
-rw-r--r--crates/hir/src/lib.rs14
1 files changed, 12 insertions, 2 deletions
diff --git a/crates/hir/src/lib.rs b/crates/hir/src/lib.rs
index 4620d0c03a..9f7a2d63fe 100644
--- a/crates/hir/src/lib.rs
+++ b/crates/hir/src/lib.rs
@@ -627,7 +627,7 @@ fn emit_def_diagnostic(db: &dyn HirDatabase, acc: &mut Vec<AnyDiagnostic>, diag:
);
}
- DefDiagnosticKind::UnresolvedProcMacro { ast } => {
+ DefDiagnosticKind::UnresolvedProcMacro { ast, proc_macro_err } => {
let (node, precise_location, macro_name, kind) = match ast {
MacroCallKind::FnLike { ast_id, .. } => {
let node = ast_id.to_node(db.upcast());
@@ -689,7 +689,16 @@ fn emit_def_diagnostic(db: &dyn HirDatabase, acc: &mut Vec<AnyDiagnostic>, diag:
)
}
};
- acc.push(UnresolvedProcMacro { node, precise_location, macro_name, kind }.into());
+ acc.push(
+ UnresolvedProcMacro {
+ node,
+ precise_location,
+ macro_name,
+ kind,
+ proc_macro_err: proc_macro_err.clone(),
+ }
+ .into(),
+ );
}
DefDiagnosticKind::UnresolvedMacroCall { ast, path } => {
@@ -1163,6 +1172,7 @@ impl DefWithBody {
precise_location: None,
macro_name: None,
kind: MacroKind::ProcMacro,
+ proc_macro_err: None,
}
.into(),
),