Prefer dcx
methods over fields or fields' methods
This commit is contained in:
parent
7e5893019c
commit
c91edc3888
24 changed files with 62 additions and 58 deletions
|
@ -114,7 +114,7 @@ struct StringReader<'psess, 'src> {
|
|||
|
||||
impl<'psess, 'src> StringReader<'psess, 'src> {
|
||||
fn dcx(&self) -> &'psess DiagCtxt {
|
||||
&self.psess.dcx
|
||||
self.psess.dcx()
|
||||
}
|
||||
|
||||
fn mk_sp(&self, lo: BytePos, hi: BytePos) -> Span {
|
||||
|
@ -248,8 +248,8 @@ impl<'psess, 'src> StringReader<'psess, 'src> {
|
|||
let suffix = if suffix_start < self.pos {
|
||||
let string = self.str_from(suffix_start);
|
||||
if string == "_" {
|
||||
self.psess
|
||||
.dcx
|
||||
self
|
||||
.dcx()
|
||||
.emit_err(errors::UnderscoreLiteralSuffix { span: self.mk_sp(suffix_start, self.pos) });
|
||||
None
|
||||
} else {
|
||||
|
@ -597,8 +597,7 @@ impl<'psess, 'src> StringReader<'psess, 'src> {
|
|||
}
|
||||
|
||||
fn report_non_started_raw_string(&self, start: BytePos, bad_char: char) -> ! {
|
||||
self.psess
|
||||
.dcx
|
||||
self.dcx()
|
||||
.struct_span_fatal(
|
||||
self.mk_sp(start, self.pos),
|
||||
format!(
|
||||
|
|
|
@ -71,7 +71,7 @@ impl<'psess, 'src> TokenTreesReader<'psess, 'src> {
|
|||
|
||||
fn eof_err(&mut self) -> PErr<'psess> {
|
||||
let msg = "this file contains an unclosed delimiter";
|
||||
let mut err = self.string_reader.psess.dcx.struct_span_err(self.token.span, msg);
|
||||
let mut err = self.string_reader.dcx().struct_span_err(self.token.span, msg);
|
||||
for &(_, sp) in &self.diag_info.open_braces {
|
||||
err.span_label(sp, "unclosed delimiter");
|
||||
self.diag_info.unmatched_delims.push(UnmatchedDelim {
|
||||
|
@ -290,7 +290,7 @@ impl<'psess, 'src> TokenTreesReader<'psess, 'src> {
|
|||
// An unexpected closing delimiter (i.e., there is no matching opening delimiter).
|
||||
let token_str = token_to_string(&self.token);
|
||||
let msg = format!("unexpected closing delimiter: `{token_str}`");
|
||||
let mut err = self.string_reader.psess.dcx.struct_span_err(self.token.span, msg);
|
||||
let mut err = self.string_reader.dcx().struct_span_err(self.token.span, msg);
|
||||
|
||||
report_suspicious_mismatch_block(
|
||||
&mut err,
|
||||
|
|
|
@ -351,7 +351,7 @@ pub(super) fn check_for_substitution(
|
|||
|
||||
let Some((_, ascii_name, token)) = ASCII_ARRAY.iter().find(|&&(s, _, _)| s == ascii_str) else {
|
||||
let msg = format!("substitution character not found for '{ch}'");
|
||||
reader.psess.dcx.span_bug(span, msg);
|
||||
reader.dcx().span_bug(span, msg);
|
||||
};
|
||||
|
||||
// special help suggestion for "directed" double quotes
|
||||
|
|
|
@ -73,7 +73,7 @@ pub fn new_parser_from_file<'a>(
|
|||
) -> Result<Parser<'a>, Vec<Diag<'a>>> {
|
||||
let source_file = psess.source_map().load_file(path).unwrap_or_else(|e| {
|
||||
let msg = format!("couldn't read {}: {}", path.display(), e);
|
||||
let mut err = psess.dcx.struct_fatal(msg);
|
||||
let mut err = psess.dcx().struct_fatal(msg);
|
||||
if let Some(sp) = sp {
|
||||
err.span(sp);
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ fn source_file_to_stream<'psess>(
|
|||
override_span: Option<Span>,
|
||||
) -> Result<TokenStream, Vec<Diag<'psess>>> {
|
||||
let src = source_file.src.as_ref().unwrap_or_else(|| {
|
||||
psess.dcx.bug(format!(
|
||||
psess.dcx().bug(format!(
|
||||
"cannot lex `source_file` without source: {}",
|
||||
psess.source_map().filename_for_diagnostics(&source_file.name)
|
||||
));
|
||||
|
@ -179,7 +179,7 @@ pub fn parse_cfg_attr(
|
|||
}
|
||||
}
|
||||
_ => {
|
||||
psess.dcx.emit_err(errors::MalformedCfgAttr {
|
||||
psess.dcx().emit_err(errors::MalformedCfgAttr {
|
||||
span: attr.span,
|
||||
sugg: CFG_ATTR_GRAMMAR_HELP,
|
||||
});
|
||||
|
|
|
@ -41,7 +41,7 @@ impl AttrWrapper {
|
|||
}
|
||||
|
||||
pub(crate) fn take_for_recovery(self, psess: &ParseSess) -> AttrVec {
|
||||
psess.dcx.span_delayed_bug(
|
||||
psess.dcx().span_delayed_bug(
|
||||
self.attrs.get(0).map(|attr| attr.span).unwrap_or(DUMMY_SP),
|
||||
"AttrVec is taken for recovery but no error is produced",
|
||||
);
|
||||
|
|
|
@ -241,7 +241,7 @@ impl<'a> DerefMut for SnapshotParser<'a> {
|
|||
|
||||
impl<'a> Parser<'a> {
|
||||
pub fn dcx(&self) -> &'a DiagCtxt {
|
||||
&self.psess.dcx
|
||||
self.psess.dcx()
|
||||
}
|
||||
|
||||
/// Replace `self` with `snapshot.parser`.
|
||||
|
|
|
@ -1596,7 +1596,7 @@ pub(crate) fn make_unclosed_delims_error(
|
|||
if let Some(sp) = unmatched.unclosed_span {
|
||||
spans.push(sp);
|
||||
};
|
||||
let err = psess.dcx.create_err(MismatchedClosingDelimiter {
|
||||
let err = psess.dcx().create_err(MismatchedClosingDelimiter {
|
||||
spans,
|
||||
delimiter: pprust::token_kind_to_string(&token::CloseDelim(found_delim)).to_string(),
|
||||
unmatched: unmatched.found_span,
|
||||
|
|
|
@ -65,7 +65,7 @@ pub fn parse_meta<'a>(psess: &'a ParseSess, attr: &Attribute) -> PResult<'a, Met
|
|||
let res = match res {
|
||||
Ok(lit) => {
|
||||
if token_lit.suffix.is_some() {
|
||||
let mut err = psess.dcx.struct_span_err(
|
||||
let mut err = psess.dcx().struct_span_err(
|
||||
expr.span,
|
||||
"suffixed literals are not allowed in attributes",
|
||||
);
|
||||
|
@ -98,7 +98,7 @@ pub fn parse_meta<'a>(psess: &'a ParseSess, attr: &Attribute) -> PResult<'a, Met
|
|||
// the error because an earlier error will have already
|
||||
// been reported.
|
||||
let msg = "attribute value must be a literal";
|
||||
let mut err = psess.dcx.struct_span_err(expr.span, msg);
|
||||
let mut err = psess.dcx().struct_span_err(expr.span, msg);
|
||||
if let ast::ExprKind::Err(_) = expr.kind {
|
||||
err.downgrade_to_delayed_bug();
|
||||
}
|
||||
|
@ -114,7 +114,7 @@ fn check_meta_bad_delim(psess: &ParseSess, span: DelimSpan, delim: Delimiter) {
|
|||
if let Delimiter::Parenthesis = delim {
|
||||
return;
|
||||
}
|
||||
psess.dcx.emit_err(errors::MetaBadDelim {
|
||||
psess.dcx().emit_err(errors::MetaBadDelim {
|
||||
span: span.entire(),
|
||||
sugg: errors::MetaBadDelimSugg { open: span.open, close: span.close },
|
||||
});
|
||||
|
@ -124,7 +124,7 @@ pub(super) fn check_cfg_attr_bad_delim(psess: &ParseSess, span: DelimSpan, delim
|
|||
if let Delimiter::Parenthesis = delim {
|
||||
return;
|
||||
}
|
||||
psess.dcx.emit_err(errors::CfgAttrBadDelim {
|
||||
psess.dcx().emit_err(errors::CfgAttrBadDelim {
|
||||
span: span.entire(),
|
||||
sugg: errors::MetaBadDelimSugg { open: span.open, close: span.close },
|
||||
});
|
||||
|
@ -191,7 +191,7 @@ fn emit_malformed_attribute(
|
|||
} else {
|
||||
suggestions.sort();
|
||||
psess
|
||||
.dcx
|
||||
.dcx()
|
||||
.struct_span_err(span, error_msg)
|
||||
.with_span_suggestions(
|
||||
span,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue