discard invalid spans in external blocks
This commit is contained in:
parent
6d069a0ac7
commit
4138702621
4 changed files with 71 additions and 2 deletions
|
@ -1676,7 +1676,7 @@ pub(crate) struct ExternItemCannotBeConst {
|
|||
#[primary_span]
|
||||
pub ident_span: Span,
|
||||
#[suggestion(code = "static ", applicability = "machine-applicable")]
|
||||
pub const_span: Span,
|
||||
pub const_span: Option<Span>,
|
||||
}
|
||||
|
||||
#[derive(Diagnostic)]
|
||||
|
|
|
@ -1143,9 +1143,11 @@ impl<'a> Parser<'a> {
|
|||
Ok(kind) => kind,
|
||||
Err(kind) => match kind {
|
||||
ItemKind::Const(box ConstItem { ty, expr, .. }) => {
|
||||
let const_span = Some(span.with_hi(ident.span.lo()))
|
||||
.filter(|span| span.can_be_used_for_suggestions());
|
||||
self.sess.emit_err(errors::ExternItemCannotBeConst {
|
||||
ident_span: ident.span,
|
||||
const_span: span.with_hi(ident.span.lo()),
|
||||
const_span,
|
||||
});
|
||||
ForeignItemKind::Static(ty, Mutability::Not, expr)
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue