Rollup merge of #101434 - JhonnyBillM:replace-session-for-handler-in-into-diagnostic, r=davidtwco
Update `SessionDiagnostic::into_diagnostic` to take `Handler` instead of `ParseSess` Suggested by the team in [this Zulip Topic](https://rust-lang.zulipchat.com/#narrow/stream/336883-i18n/topic/.23100717.20SessionDiagnostic.20on.20Handler). `Handler` already has almost all the capabilities of `ParseSess` when it comes to diagnostic emission, in this migration we only needed to add the ability to access `source_map` from the emitter in order to get a `Snippet` and the `start_point`. Not sure if adding these two methods [`span_to_snippet_from_emitter` and `span_start_point_from_emitter`] is the best way to address this gap. P.S. If this goes in the right direction, then we probably may want to move `SessionDiagnostic` to `rustc_errors` and rename it to `DiagnosticHandler` or something similar. r? `@davidtwco` r? `@compiler-errors`
This commit is contained in:
commit
4d830b7775
16 changed files with 86 additions and 75 deletions
|
@ -1,6 +1,6 @@
|
|||
use rustc_errors::{fluent, AddSubdiagnostic, ErrorGuaranteed};
|
||||
use rustc_errors::{fluent, AddSubdiagnostic, ErrorGuaranteed, Handler};
|
||||
use rustc_macros::{SessionDiagnostic, SessionSubdiagnostic};
|
||||
use rustc_session::{lint::Level, parse::ParseSess, SessionDiagnostic};
|
||||
use rustc_session::{lint::Level, SessionDiagnostic};
|
||||
use rustc_span::{Span, Symbol};
|
||||
|
||||
#[derive(SessionDiagnostic)]
|
||||
|
@ -122,9 +122,9 @@ pub struct CheckNameUnknown {
|
|||
impl SessionDiagnostic<'_> for CheckNameUnknown {
|
||||
fn into_diagnostic(
|
||||
self,
|
||||
sess: &ParseSess,
|
||||
handler: &Handler,
|
||||
) -> rustc_errors::DiagnosticBuilder<'_, ErrorGuaranteed> {
|
||||
let mut diag = sess.struct_err(fluent::lint::check_name_unknown);
|
||||
let mut diag = handler.struct_err(fluent::lint::check_name_unknown);
|
||||
diag.code(rustc_errors::error_code!(E0602));
|
||||
if let Some(suggestion) = self.suggestion {
|
||||
diag.help(fluent::lint::help);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue