Skip to content

Commit 7881f78

Browse files
Remove target arguments from parse_limited
1 parent d88d64b commit 7881f78

16 files changed

Lines changed: 110 additions & 79 deletions

File tree

compiler/rustc_ast_passes/src/feature_gate.rs

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ use rustc_hir::Attribute;
77
use rustc_hir::attrs::AttributeKind;
88
use rustc_session::Session;
99
use rustc_session::parse::{feature_err, feature_warn};
10-
use rustc_span::{DUMMY_SP, Span, Spanned, Symbol, sym};
10+
use rustc_span::{Span, Spanned, Symbol, sym};
1111
use thin_vec::ThinVec;
1212

1313
use crate::errors;
@@ -646,14 +646,7 @@ fn maybe_stage_features(sess: &Session, features: &Features, krate: &ast::Crate)
646646
let mut errored = false;
647647

648648
if let Some(Attribute::Parsed(AttributeKind::Feature(feature_idents, first_span))) =
649-
AttributeParser::parse_limited(
650-
sess,
651-
&krate.attrs,
652-
sym::feature,
653-
DUMMY_SP,
654-
krate.id,
655-
Some(&features),
656-
)
649+
AttributeParser::parse_limited(sess, &krate.attrs, sym::feature, Some(&features))
657650
{
658651
// `feature(...)` used on non-nightly. This is definitely an error.
659652
let mut err = errors::FeatureOnNonNightly {

compiler/rustc_attr_parsing/src/interface.rs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ use std::convert::identity;
22

33
use rustc_ast as ast;
44
use rustc_ast::token::DocFragmentKind;
5-
use rustc_ast::{AttrItemKind, AttrStyle, NodeId, Safety};
5+
use rustc_ast::{AttrItemKind, AttrStyle, CRATE_NODE_ID, NodeId, Safety};
66
use rustc_data_structures::fx::FxIndexSet;
77
use rustc_errors::DiagCtxtHandle;
88
use rustc_feature::{AttributeTemplate, Features};
@@ -54,16 +54,15 @@ impl<'sess> AttributeParser<'sess, Early> {
5454
sess: &'sess Session,
5555
attrs: &[ast::Attribute],
5656
sym: Symbol,
57-
target_span: Span,
58-
target_node_id: NodeId,
5957
features: Option<&'sess Features>,
6058
) -> Option<Attribute> {
6159
Self::parse_limited_should_emit(
6260
sess,
6361
attrs,
6462
sym,
65-
target_span,
66-
target_node_id,
63+
// Because we're not emitting warnings/errors, the target span & id should not matter
64+
DUMMY_SP,
65+
CRATE_NODE_ID,
6766
features,
6867
ShouldEmit::Nothing,
6968
)

compiler/rustc_builtin_macros/src/deriving/generic/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -493,7 +493,7 @@ impl<'a> TraitDef<'a> {
493493
match item {
494494
Annotatable::Item(item) => {
495495
let is_packed = matches!(
496-
AttributeParser::parse_limited(cx.sess, &item.attrs, sym::repr, item.span, item.id, None),
496+
AttributeParser::parse_limited(cx.sess, &item.attrs, sym::repr, None),
497497
Some(Attribute::Parsed(AttributeKind::Repr { reprs, .. })) if reprs.iter().any(|(x, _)| matches!(x, ReprPacked(..)))
498498
);
499499

compiler/rustc_builtin_macros/src/proc_macro_harness.rs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
use std::{mem, slice};
22

33
use rustc_ast::visit::{self, Visitor};
4-
use rustc_ast::{self as ast, HasNodeId, NodeId, attr};
4+
use rustc_ast::{self as ast, NodeId, attr};
55
use rustc_ast_pretty::pprust;
66
use rustc_attr_parsing::AttributeParser;
77
use rustc_errors::DiagCtxtHandle;
@@ -109,8 +109,6 @@ impl<'a> CollectProcMacros<'a> {
109109
self.session,
110110
slice::from_ref(attr),
111111
sym::proc_macro_derive,
112-
item.span,
113-
item.node_id(),
114112
None,
115113
)
116114
else {

compiler/rustc_builtin_macros/src/test.rs

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
44
use std::{assert_matches, iter};
55

6-
use rustc_ast::{self as ast, GenericParamKind, HasNodeId, attr, join_path_idents};
6+
use rustc_ast::{self as ast, GenericParamKind, attr, join_path_idents};
77
use rustc_ast_pretty::pprust;
88
use rustc_attr_parsing::AttributeParser;
99
use rustc_errors::{Applicability, Diag, Level};
@@ -480,14 +480,7 @@ fn should_ignore_message(i: &ast::Item) -> Option<Symbol> {
480480

481481
fn should_panic(cx: &ExtCtxt<'_>, i: &ast::Item) -> ShouldPanic {
482482
if let Some(Attribute::Parsed(AttributeKind::ShouldPanic { reason, .. })) =
483-
AttributeParser::parse_limited(
484-
cx.sess,
485-
&i.attrs,
486-
sym::should_panic,
487-
i.span,
488-
i.node_id(),
489-
None,
490-
)
483+
AttributeParser::parse_limited(cx.sess, &i.attrs, sym::should_panic, None)
491484
{
492485
ShouldPanic::Yes(reason)
493486
} else {

compiler/rustc_builtin_macros/src/test_harness.rs

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -388,14 +388,7 @@ fn get_test_name(i: &ast::Item) -> Option<Symbol> {
388388
}
389389

390390
fn get_test_runner(sess: &Session, features: &Features, krate: &ast::Crate) -> Option<ast::Path> {
391-
match AttributeParser::parse_limited(
392-
sess,
393-
&krate.attrs,
394-
sym::test_runner,
395-
krate.spans.inner_span,
396-
krate.id,
397-
Some(features),
398-
) {
391+
match AttributeParser::parse_limited(sess, &krate.attrs, sym::test_runner, Some(features)) {
399392
Some(rustc_hir::Attribute::Parsed(AttributeKind::TestRunner(path))) => Some(path),
400393
_ => None,
401394
}

compiler/rustc_expand/src/config.rs

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ use rustc_ast::tokenstream::{
77
AttrTokenStream, AttrTokenTree, LazyAttrTokenStream, Spacing, TokenTree,
88
};
99
use rustc_ast::{
10-
self as ast, AttrItemKind, AttrKind, AttrStyle, Attribute, DUMMY_NODE_ID, EarlyParsedAttribute,
11-
HasAttrs, HasTokens, MetaItem, MetaItemInner, NodeId, NormalAttr,
10+
self as ast, AttrItemKind, AttrKind, AttrStyle, Attribute, EarlyParsedAttribute, HasAttrs,
11+
HasTokens, MetaItem, MetaItemInner, NodeId, NormalAttr,
1212
};
1313
use rustc_attr_parsing::parser::AllowExprMetavar;
1414
use rustc_attr_parsing::{
@@ -28,7 +28,7 @@ use rustc_hir::{
2828
use rustc_parse::parser::Recovery;
2929
use rustc_session::Session;
3030
use rustc_session::parse::feature_err;
31-
use rustc_span::{DUMMY_SP, STDLIB_STABLE_CRATES, Span, Symbol, sym};
31+
use rustc_span::{STDLIB_STABLE_CRATES, Span, Symbol, sym};
3232
use tracing::instrument;
3333

3434
use crate::errors::{
@@ -51,14 +51,7 @@ pub fn features(sess: &Session, krate_attrs: &[Attribute], crate_name: Symbol) -
5151
let mut features = Features::default();
5252

5353
if let Some(hir::Attribute::Parsed(AttributeKind::Feature(feature_idents, _))) =
54-
AttributeParser::parse_limited(
55-
sess,
56-
krate_attrs,
57-
sym::feature,
58-
DUMMY_SP,
59-
DUMMY_NODE_ID,
60-
Some(&features),
61-
)
54+
AttributeParser::parse_limited(sess, krate_attrs, sym::feature, Some(&features))
6255
{
6356
for feature_ident in feature_idents {
6457
// If the enabled feature has been removed, issue an error.

compiler/rustc_lint/src/builtin.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -313,8 +313,6 @@ impl EarlyLintPass for UnsafeCode {
313313
cx.builder.sess(),
314314
&it.attrs,
315315
sym::allow_internal_unsafe,
316-
it.span,
317-
DUMMY_NODE_ID,
318316
Some(cx.builder.features()),
319317
)
320318
{

compiler/rustc_lint/src/nonstandard_style.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@ impl NonCamelCaseTypes {
145145
impl EarlyLintPass for NonCamelCaseTypes {
146146
fn check_item(&mut self, cx: &EarlyContext<'_>, it: &ast::Item) {
147147
let has_repr_c = matches!(
148-
AttributeParser::parse_limited(cx.sess(), &it.attrs, sym::repr, it.span, it.id, None),
148+
AttributeParser::parse_limited(cx.sess(), &it.attrs, sym::repr, None),
149149
Some(Attribute::Parsed(AttributeKind::Repr { reprs, ..})) if reprs.iter().any(|(r, _)| r == &ReprAttr::ReprC)
150150
);
151151

compiler/rustc_passes/src/debugger_visualizer.rs

Lines changed: 6 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
//! Detecting usage of the `#[debugger_visualizer]` attribute.
22
3-
use rustc_ast::ast::NodeId;
4-
use rustc_ast::{HasNodeId, ItemKind, ast};
3+
use rustc_ast::{ItemKind, ast};
54
use rustc_attr_parsing::AttributeParser;
65
use rustc_expand::base::resolve_path;
76
use rustc_hir::Attribute;
@@ -10,26 +9,14 @@ use rustc_middle::middle::debugger_visualizer::DebuggerVisualizerFile;
109
use rustc_middle::query::{LocalCrate, Providers};
1110
use rustc_middle::ty::TyCtxt;
1211
use rustc_session::Session;
13-
use rustc_span::{DUMMY_SP, Span, sym};
12+
use rustc_span::sym;
1413

1514
use crate::errors::DebugVisualizerUnreadable;
1615

1716
impl DebuggerVisualizerCollector<'_> {
18-
fn check_for_debugger_visualizer(
19-
&mut self,
20-
attrs: &[ast::Attribute],
21-
span: Span,
22-
node_id: NodeId,
23-
) {
17+
fn check_for_debugger_visualizer(&mut self, attrs: &[ast::Attribute]) {
2418
if let Some(Attribute::Parsed(AttributeKind::DebuggerVisualizer(visualizers))) =
25-
AttributeParser::parse_limited(
26-
&self.sess,
27-
attrs,
28-
sym::debugger_visualizer,
29-
span,
30-
node_id,
31-
None,
32-
)
19+
AttributeParser::parse_limited(&self.sess, attrs, sym::debugger_visualizer, None)
3320
{
3421
for DebugVisualizer { span, visualizer_type, path } in visualizers {
3522
let file = match resolve_path(&self.sess, path.as_str(), span) {
@@ -69,12 +56,12 @@ struct DebuggerVisualizerCollector<'a> {
6956
impl<'ast> rustc_ast::visit::Visitor<'ast> for DebuggerVisualizerCollector<'_> {
7057
fn visit_item(&mut self, item: &'ast rustc_ast::Item) -> Self::Result {
7158
if let ItemKind::Mod(..) = item.kind {
72-
self.check_for_debugger_visualizer(&item.attrs, item.span, item.node_id());
59+
self.check_for_debugger_visualizer(&item.attrs);
7360
}
7461
rustc_ast::visit::walk_item(self, item);
7562
}
7663
fn visit_crate(&mut self, krate: &'ast ast::Crate) -> Self::Result {
77-
self.check_for_debugger_visualizer(&krate.attrs, DUMMY_SP, krate.id);
64+
self.check_for_debugger_visualizer(&krate.attrs);
7865
rustc_ast::visit::walk_crate(self, krate);
7966
}
8067
}

0 commit comments

Comments
 (0)