rustc_expand: make proc-macro derive error translatable
This commit is contained in:
parent
70adb4e5b4
commit
7fe4f0701c
@ -133,3 +133,6 @@ expand_trace_macro = trace_macro
|
|||||||
expand_proc_macro_panicked =
|
expand_proc_macro_panicked =
|
||||||
proc macro panicked
|
proc macro panicked
|
||||||
.help = message: {$message}
|
.help = message: {$message}
|
||||||
|
|
||||||
|
expand_proc_macro_derive_tokens =
|
||||||
|
proc-macro derive produced unparseable tokens
|
||||||
|
@ -390,3 +390,10 @@ pub(crate) struct ProcMacroPanicked {
|
|||||||
pub(crate) struct ProcMacroPanickedHelp {
|
pub(crate) struct ProcMacroPanickedHelp {
|
||||||
pub message: String,
|
pub message: String,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[derive(Diagnostic)]
|
||||||
|
#[diag(expand_proc_macro_derive_tokens)]
|
||||||
|
pub struct ProcMacroDeriveTokens {
|
||||||
|
#[primary_span]
|
||||||
|
pub span: Span,
|
||||||
|
}
|
||||||
|
@ -176,7 +176,7 @@ impl MultiItemModifier for DeriveProcMacro {
|
|||||||
|
|
||||||
// fail if there have been errors emitted
|
// fail if there have been errors emitted
|
||||||
if ecx.sess.parse_sess.span_diagnostic.err_count() > error_count_before {
|
if ecx.sess.parse_sess.span_diagnostic.err_count() > error_count_before {
|
||||||
ecx.struct_span_err(span, "proc-macro derive produced unparseable tokens").emit();
|
ecx.sess.emit_err(errors::ProcMacroDeriveTokens { span });
|
||||||
}
|
}
|
||||||
|
|
||||||
ExpandResult::Ready(items)
|
ExpandResult::Ready(items)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user