Skip to content

Commit 60e82ae

Browse files
committed
rustc_expand: remove huge error imports
1 parent 3de7d7f commit 60e82ae

File tree

1 file changed

+25
-23
lines changed

1 file changed

+25
-23
lines changed

compiler/rustc_expand/src/base.rs

Lines changed: 25 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,6 @@
11
#![deny(rustc::untranslatable_diagnostic)]
22

3-
use crate::errors::{
4-
ArgumentNotAttributes, AttrNoArguments, AttributeMetaItem, AttributeSingleWord,
5-
AttributesWrongForm, CannotBeNameOfMacro, ExpectedCommaInList, HelperAttributeNameInvalid,
6-
MacroBodyStability, MacroConstStability, NotAMetaItem, OnlyOneArgument, OnlyOneWord,
7-
ResolveRelativePath, TakesNoArguments, TraceMacro,
8-
};
3+
use crate::errors;
94
use crate::expand::{self, AstFragment, Invocation};
105
use crate::module::DirOwnership;
116

@@ -796,13 +791,13 @@ impl SyntaxExtension {
796791
.unwrap_or_else(|| (None, helper_attrs));
797792
let (stability, const_stability, body_stability) = attr::find_stability(&sess, attrs, span);
798793
if let Some((_, sp)) = const_stability {
799-
sess.emit_err(MacroConstStability {
794+
sess.emit_err(errors::MacroConstStability {
800795
span: sp,
801796
head_span: sess.source_map().guess_head_span(span),
802797
});
803798
}
804799
if let Some((_, sp)) = body_stability {
805-
sess.emit_err(MacroBodyStability {
800+
sess.emit_err(errors::MacroBodyStability {
806801
span: sp,
807802
head_span: sess.source_map().guess_head_span(span),
808803
});
@@ -1143,7 +1138,7 @@ impl<'a> ExtCtxt<'a> {
11431138
}
11441139
pub fn trace_macros_diag(&mut self) {
11451140
for (span, notes) in self.expansions.iter() {
1146-
let mut db = self.sess.parse_sess.create_note(TraceMacro { span: *span });
1141+
let mut db = self.sess.parse_sess.create_note(errors::TraceMacro { span: *span });
11471142
for note in notes {
11481143
db.note(note);
11491144
}
@@ -1197,7 +1192,7 @@ pub fn resolve_path(
11971192
.expect("attempting to resolve a file path in an external file"),
11981193
FileName::DocTest(path, _) => path,
11991194
other => {
1200-
return Err(ResolveRelativePath {
1195+
return Err(errors::ResolveRelativePath {
12011196
span,
12021197
path: parse_sess.source_map().filename_for_diagnostics(&other).to_string(),
12031198
}
@@ -1279,7 +1274,7 @@ pub fn expr_to_string(
12791274
/// done as rarely as possible).
12801275
pub fn check_zero_tts(cx: &ExtCtxt<'_>, span: Span, tts: TokenStream, name: &str) {
12811276
if !tts.is_empty() {
1282-
cx.emit_err(TakesNoArguments { span, name });
1277+
cx.emit_err(errors::TakesNoArguments { span, name });
12831278
}
12841279
}
12851280

@@ -1307,14 +1302,14 @@ pub fn get_single_str_from_tts(
13071302
) -> Option<Symbol> {
13081303
let mut p = cx.new_parser_from_tts(tts);
13091304
if p.token == token::Eof {
1310-
cx.emit_err(OnlyOneArgument { span, name });
1305+
cx.emit_err(errors::OnlyOneArgument { span, name });
13111306
return None;
13121307
}
13131308
let ret = parse_expr(&mut p)?;
13141309
let _ = p.eat(&token::Comma);
13151310

13161311
if p.token != token::Eof {
1317-
cx.emit_err(OnlyOneArgument { span, name });
1312+
cx.emit_err(errors::OnlyOneArgument { span, name });
13181313
}
13191314
expr_to_string(cx, ret, "argument must be a string literal").map(|(s, _)| s)
13201315
}
@@ -1336,7 +1331,7 @@ pub fn get_exprs_from_tts(cx: &mut ExtCtxt<'_>, tts: TokenStream) -> Option<Vec<
13361331
continue;
13371332
}
13381333
if p.token != token::Eof {
1339-
cx.emit_err(ExpectedCommaInList { span: p.token.span });
1334+
cx.emit_err(errors::ExpectedCommaInList { span: p.token.span });
13401335
return None;
13411336
}
13421337
}
@@ -1353,51 +1348,58 @@ pub fn parse_macro_name_and_helper_attrs(
13531348
// `#[proc_macro_derive(Foo, attributes(A, ..))]`
13541349
let list = attr.meta_item_list()?;
13551350
if list.len() != 1 && list.len() != 2 {
1356-
diag.emit_err(AttrNoArguments { span: attr.span });
1351+
diag.emit_err(errors::AttrNoArguments { span: attr.span });
13571352
return None;
13581353
}
13591354
let Some(trait_attr) = list[0].meta_item() else {
1360-
diag.emit_err(NotAMetaItem {span: list[0].span()});
1355+
diag.emit_err(errors::NotAMetaItem {span: list[0].span()});
13611356
return None;
13621357
};
13631358
let trait_ident = match trait_attr.ident() {
13641359
Some(trait_ident) if trait_attr.is_word() => trait_ident,
13651360
_ => {
1366-
diag.emit_err(OnlyOneWord { span: trait_attr.span });
1361+
diag.emit_err(errors::OnlyOneWord { span: trait_attr.span });
13671362
return None;
13681363
}
13691364
};
13701365

13711366
if !trait_ident.name.can_be_raw() {
1372-
diag.emit_err(CannotBeNameOfMacro { span: trait_attr.span, trait_ident, macro_type });
1367+
diag.emit_err(errors::CannotBeNameOfMacro {
1368+
span: trait_attr.span,
1369+
trait_ident,
1370+
macro_type,
1371+
});
13731372
}
13741373

13751374
let attributes_attr = list.get(1);
13761375
let proc_attrs: Vec<_> = if let Some(attr) = attributes_attr {
13771376
if !attr.has_name(sym::attributes) {
1378-
diag.emit_err(ArgumentNotAttributes { span: attr.span() });
1377+
diag.emit_err(errors::ArgumentNotAttributes { span: attr.span() });
13791378
}
13801379
attr.meta_item_list()
13811380
.unwrap_or_else(|| {
1382-
diag.emit_err(AttributesWrongForm { span: attr.span() });
1381+
diag.emit_err(errors::AttributesWrongForm { span: attr.span() });
13831382
&[]
13841383
})
13851384
.iter()
13861385
.filter_map(|attr| {
13871386
let Some(attr) = attr.meta_item() else {
1388-
diag.emit_err(AttributeMetaItem { span: attr.span() });
1387+
diag.emit_err(errors::AttributeMetaItem { span: attr.span() });
13891388
return None;
13901389
};
13911390

13921391
let ident = match attr.ident() {
13931392
Some(ident) if attr.is_word() => ident,
13941393
_ => {
1395-
diag.emit_err(AttributeSingleWord { span: attr.span });
1394+
diag.emit_err(errors::AttributeSingleWord { span: attr.span });
13961395
return None;
13971396
}
13981397
};
13991398
if !ident.name.can_be_raw() {
1400-
diag.emit_err(HelperAttributeNameInvalid { span: attr.span, name: ident });
1399+
diag.emit_err(errors::HelperAttributeNameInvalid {
1400+
span: attr.span,
1401+
name: ident,
1402+
});
14011403
}
14021404

14031405
Some(ident.name)

0 commit comments

Comments
 (0)