Skip to content

Commit 6927e64

Browse files
Remove unused attribute check for unparsed builtin attributes
1 parent c7f99c4 commit 6927e64

File tree

3 files changed

+3
-35
lines changed

3 files changed

+3
-35
lines changed

compiler/rustc_expand/src/errors.rs

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -603,21 +603,3 @@ pub(crate) struct TrailingMacro {
603603
pub is_trailing: bool,
604604
pub name: Ident,
605605
}
606-
607-
#[derive(Diagnostic)]
608-
#[diag("unused attribute `{$attr_name}`")]
609-
pub(crate) struct UnusedBuiltinAttribute {
610-
#[note(
611-
"the built-in attribute `{$attr_name}` will be ignored, since it's applied to the macro invocation `{$macro_name}`"
612-
)]
613-
pub invoc_span: Span,
614-
pub attr_name: Symbol,
615-
pub macro_name: String,
616-
#[suggestion(
617-
"remove the attribute",
618-
code = "",
619-
applicability = "machine-applicable",
620-
style = "tool-only"
621-
)]
622-
pub attr_span: Span,
623-
}

compiler/rustc_expand/src/expand.rs

Lines changed: 2 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ use rustc_ast::{
1515
use rustc_ast_pretty::pprust;
1616
use rustc_attr_parsing::parser::AllowExprMetavar;
1717
use rustc_attr_parsing::{
18-
AttributeParser, AttributeSafety, CFG_TEMPLATE, Early, EvalConfigResult, ShouldEmit,
18+
AttributeParser, AttributeSafety, CFG_TEMPLATE, EvalConfigResult, ShouldEmit,
1919
eval_config_entry, parse_cfg, validate_attr,
2020
};
2121
use rustc_data_structures::flat_map_in_place::FlatMapInPlace;
@@ -30,7 +30,7 @@ use rustc_parse::parser::{
3030
RecoverColon, RecoverComma, Recovery, token_descr,
3131
};
3232
use rustc_session::Session;
33-
use rustc_session::lint::builtin::{UNUSED_ATTRIBUTES, UNUSED_DOC_COMMENTS};
33+
use rustc_session::lint::builtin::UNUSED_DOC_COMMENTS;
3434
use rustc_session::parse::feature_err;
3535
use rustc_span::hygiene::SyntaxContext;
3636
use rustc_span::{ErrorGuaranteed, FileName, Ident, LocalExpnId, Span, Symbol, sym};
@@ -2274,21 +2274,6 @@ impl<'a, 'b> InvocationCollector<'a, 'b> {
22742274
self.cx.current_expansion.lint_node_id,
22752275
crate::errors::MacroCallUnusedDocComment { span: attr.span },
22762276
);
2277-
} else if rustc_attr_parsing::is_builtin_attr(attr)
2278-
&& !AttributeParser::<Early>::is_parsed_attribute(&attr.path())
2279-
{
2280-
let attr_name = attr.name().unwrap();
2281-
self.cx.sess.psess.buffer_lint(
2282-
UNUSED_ATTRIBUTES,
2283-
attr.span,
2284-
self.cx.current_expansion.lint_node_id,
2285-
crate::errors::UnusedBuiltinAttribute {
2286-
attr_name,
2287-
macro_name: pprust::path_to_string(&call.path),
2288-
invoc_span: call.path.span,
2289-
attr_span: attr.span,
2290-
},
2291-
);
22922277
}
22932278
}
22942279
}

compiler/rustc_expand/src/module.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,7 @@ pub(crate) fn mod_file_path_from_attr(
186186
attrs: &[Attribute],
187187
dir_path: &Path,
188188
) -> Option<PathBuf> {
189+
// FIXME(154781) use a parsed attribute here
189190
// Extract path string from first `#[path = "path_string"]` attribute.
190191
let first_path = attrs.iter().find(|at| at.has_name(sym::path))?;
191192
let Some(path_sym) = first_path.value_str() else {

0 commit comments

Comments
 (0)