about summary refs log tree commit diff
path: root/compiler/rustc_parse/src/parser/diagnostics.rs
diff options
context:
space:
mode:
authorDavid Wood <david.wood@huawei.com>2022-03-24 02:03:04 +0000
committerDavid Wood <david.wood@huawei.com>2022-04-05 07:01:00 +0100
commitc45f29595df6f6a178b7998bc33c76099f3c12b7 (patch)
tree0f54f00c31b0d2ec11408f843e6b9ec726ce8a11 /compiler/rustc_parse/src/parser/diagnostics.rs
parent8c684563a59900d96a4fcadd41e5e92074c13df1 (diff)
downloadrust-c45f29595df6f6a178b7998bc33c76099f3c12b7.tar.gz
rust-c45f29595df6f6a178b7998bc33c76099f3c12b7.zip
span: move `MultiSpan`
`MultiSpan` contains labels, which are more complicated with the
introduction of diagnostic translation and will use types from
`rustc_errors` - however, `rustc_errors` depends on `rustc_span` so
`rustc_span` cannot use types like `DiagnosticMessage` without
dependency cycles. Introduce a new `rustc_error_messages` crate that can
contain `DiagnosticMessage` and `MultiSpan`.

Signed-off-by: David Wood <david.wood@huawei.com>
Diffstat (limited to 'compiler/rustc_parse/src/parser/diagnostics.rs')
-rw-r--r--compiler/rustc_parse/src/parser/diagnostics.rs6
1 files changed, 3 insertions, 3 deletions
diff --git a/compiler/rustc_parse/src/parser/diagnostics.rs b/compiler/rustc_parse/src/parser/diagnostics.rs
index 3ac226114cd..2999db79785 100644
--- a/compiler/rustc_parse/src/parser/diagnostics.rs
+++ b/compiler/rustc_parse/src/parser/diagnostics.rs
@@ -18,10 +18,10 @@ use rustc_ast::{
 use rustc_ast_pretty::pprust;
 use rustc_data_structures::fx::FxHashSet;
 use rustc_errors::{pluralize, struct_span_err, Diagnostic, EmissionGuarantee, ErrorGuaranteed};
-use rustc_errors::{Applicability, DiagnosticBuilder, Handler, PResult};
+use rustc_errors::{Applicability, DiagnosticBuilder, Handler, MultiSpan, PResult};
 use rustc_span::source_map::Spanned;
 use rustc_span::symbol::{kw, Ident};
-use rustc_span::{MultiSpan, Span, SpanSnippetError, DUMMY_SP};
+use rustc_span::{Span, SpanSnippetError, DUMMY_SP};
 use std::ops::{Deref, DerefMut};
 
 use std::mem::take;
@@ -1752,7 +1752,7 @@ impl<'a> Parser<'a> {
                     let mut primary_span: MultiSpan = primary_span.into();
                     for span_label in err.span.span_labels() {
                         if let Some(label) = span_label.label {
-                            primary_span.push_span_label(span_label.span, label);
+                            primary_span.push_span_message(span_label.span, label);
                         }
                     }
                     err.set_span(primary_span);