Include macro path in eager macro resolve error

This commit is contained in:
Jonas Schievink 2021-09-24 15:34:57 +02:00
parent e6b64fdcdd
commit af3d6a4b61

View file

@ -204,8 +204,13 @@ fn eager_macro_recur(
// Collect replacement // Collect replacement
for child in children { for child in children {
let def = diagnostic_sink let def = diagnostic_sink.option_with(
.option_with(|| macro_resolver(child.path()?), || err("failed to resolve macro"))?; || macro_resolver(child.path()?),
|| {
let path = child.path().map(|path| format!(" `{}!`", path)).unwrap_or_default();
err(format!("failed to resolve macro{}", path))
},
)?;
let insert = match def.kind { let insert = match def.kind {
MacroDefKind::BuiltInEager(..) => { MacroDefKind::BuiltInEager(..) => {
let id = expand_eager_macro( let id = expand_eager_macro(