Skip to content

Commit dc2e544

Browse files
committed
Auto merge of #153041 - JonathanBrouwer:attribute_order, r=<try>
Remove `ATTRIBUTE_ORDER` try-job: x86_64-msvc-1
2 parents bbe8536 + 0e4a759 commit dc2e544

31 files changed

+70
-177
lines changed

compiler/rustc_attr_parsing/src/attributes/autodiff.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ use rustc_span::{Symbol, sym};
99
use thin_vec::ThinVec;
1010

1111
use crate::attributes::prelude::Allow;
12-
use crate::attributes::{AttributeOrder, OnDuplicate, SingleAttributeParser};
12+
use crate::attributes::{OnDuplicate, SingleAttributeParser};
1313
use crate::context::{AcceptContext, Stage};
1414
use crate::parser::{ArgParser, MetaItemOrLitParser};
1515
use crate::target_checking::AllowedTargets;
@@ -18,7 +18,6 @@ pub(crate) struct RustcAutodiffParser;
1818

1919
impl<S: Stage> SingleAttributeParser<S> for RustcAutodiffParser {
2020
const PATH: &[Symbol] = &[sym::rustc_autodiff];
21-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepInnermost;
2221
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error;
2322
const ALLOWED_TARGETS: AllowedTargets = AllowedTargets::AllowList(&[
2423
Allow(Target::Fn),

compiler/rustc_attr_parsing/src/attributes/cfi_encoding.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ impl<S: Stage> SingleAttributeParser<S> for CfiEncodingParser {
88
Allow(Target::Enum),
99
Allow(Target::Union),
1010
]);
11-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepInnermost;
1211
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error;
1312
const TEMPLATE: AttributeTemplate = template!(NameValueStr: "encoding");
1413

compiler/rustc_attr_parsing/src/attributes/codegen_attrs.rs

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ pub(crate) struct OptimizeParser;
1212

1313
impl<S: Stage> SingleAttributeParser<S> for OptimizeParser {
1414
const PATH: &[Symbol] = &[sym::optimize];
15-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepOutermost;
1615
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::WarnButFutureError;
1716
const ALLOWED_TARGETS: AllowedTargets = AllowedTargets::AllowList(&[
1817
Allow(Target::Fn),
@@ -68,7 +67,6 @@ pub(crate) struct CoverageParser;
6867

6968
impl<S: Stage> SingleAttributeParser<S> for CoverageParser {
7069
const PATH: &[Symbol] = &[sym::coverage];
71-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepOutermost;
7270
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error;
7371
const ALLOWED_TARGETS: AllowedTargets = AllowedTargets::AllowList(&[
7472
Allow(Target::Fn),
@@ -119,7 +117,6 @@ pub(crate) struct ExportNameParser;
119117

120118
impl<S: Stage> SingleAttributeParser<S> for ExportNameParser {
121119
const PATH: &[rustc_span::Symbol] = &[sym::export_name];
122-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepInnermost;
123120
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::WarnButFutureError;
124121
const ALLOWED_TARGETS: AllowedTargets = AllowedTargets::AllowList(&[
125122
Allow(Target::Static),
@@ -157,7 +154,6 @@ pub(crate) struct RustcObjcClassParser;
157154

158155
impl<S: Stage> SingleAttributeParser<S> for RustcObjcClassParser {
159156
const PATH: &[rustc_span::Symbol] = &[sym::rustc_objc_class];
160-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepInnermost;
161157
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error;
162158
const ALLOWED_TARGETS: AllowedTargets =
163159
AllowedTargets::AllowList(&[Allow(Target::ForeignStatic)]);
@@ -189,7 +185,6 @@ pub(crate) struct RustcObjcSelectorParser;
189185

190186
impl<S: Stage> SingleAttributeParser<S> for RustcObjcSelectorParser {
191187
const PATH: &[rustc_span::Symbol] = &[sym::rustc_objc_selector];
192-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepInnermost;
193188
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error;
194189
const ALLOWED_TARGETS: AllowedTargets =
195190
AllowedTargets::AllowList(&[Allow(Target::ForeignStatic)]);
@@ -595,7 +590,6 @@ impl<S: Stage> SingleAttributeParser<S> for SanitizeParser {
595590
r#"realtime = "nonblocking|blocking|caller""#,
596591
]);
597592

598-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepOutermost;
599593
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error;
600594

601595
fn convert(cx: &mut AcceptContext<'_, '_, S>, args: &ArgParser) -> Option<AttributeKind> {
@@ -724,7 +718,6 @@ pub(crate) struct PatchableFunctionEntryParser;
724718
impl<S: Stage> SingleAttributeParser<S> for PatchableFunctionEntryParser {
725719
const PATH: &[Symbol] = &[sym::patchable_function_entry];
726720
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error;
727-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepInnermost;
728721
const ALLOWED_TARGETS: AllowedTargets = AllowedTargets::AllowList(&[Allow(Target::Fn)]);
729722
const TEMPLATE: AttributeTemplate = template!(List: &["prefix_nops = m, entry_nops = n"]);
730723

compiler/rustc_attr_parsing/src/attributes/crate_level.rs

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ pub(crate) struct CrateNameParser;
1010

1111
impl<S: Stage> SingleAttributeParser<S> for CrateNameParser {
1212
const PATH: &[Symbol] = &[sym::crate_name];
13-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepOutermost;
1413
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::WarnButFutureError;
1514
const TEMPLATE: AttributeTemplate = template!(NameValueStr: "name");
1615
const ALLOWED_TARGETS: AllowedTargets = AllowedTargets::AllowList(&[Allow(Target::Crate)]);
@@ -84,7 +83,6 @@ pub(crate) struct RecursionLimitParser;
8483

8584
impl<S: Stage> SingleAttributeParser<S> for RecursionLimitParser {
8685
const PATH: &[Symbol] = &[sym::recursion_limit];
87-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepOutermost;
8886
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::WarnButFutureError;
8987
const TEMPLATE: AttributeTemplate = template!(NameValueStr: "N", "https://doc.rust-lang.org/reference/attributes/limits.html#the-recursion_limit-attribute");
9088
const ALLOWED_TARGETS: AllowedTargets = AllowedTargets::AllowList(&[Allow(Target::Crate)]);
@@ -107,7 +105,6 @@ pub(crate) struct MoveSizeLimitParser;
107105

108106
impl<S: Stage> SingleAttributeParser<S> for MoveSizeLimitParser {
109107
const PATH: &[Symbol] = &[sym::move_size_limit];
110-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepOutermost;
111108
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error;
112109
const TEMPLATE: AttributeTemplate = template!(NameValueStr: "N");
113110
const ALLOWED_TARGETS: AllowedTargets = AllowedTargets::AllowList(&[Allow(Target::Crate)]);
@@ -130,7 +127,6 @@ pub(crate) struct TypeLengthLimitParser;
130127

131128
impl<S: Stage> SingleAttributeParser<S> for TypeLengthLimitParser {
132129
const PATH: &[Symbol] = &[sym::type_length_limit];
133-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepOutermost;
134130
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::WarnButFutureError;
135131
const TEMPLATE: AttributeTemplate = template!(NameValueStr: "N");
136132
const ALLOWED_TARGETS: AllowedTargets = AllowedTargets::AllowList(&[Allow(Target::Crate)]);
@@ -153,7 +149,6 @@ pub(crate) struct PatternComplexityLimitParser;
153149

154150
impl<S: Stage> SingleAttributeParser<S> for PatternComplexityLimitParser {
155151
const PATH: &[Symbol] = &[sym::pattern_complexity_limit];
156-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepOutermost;
157152
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error;
158153
const TEMPLATE: AttributeTemplate = template!(NameValueStr: "N");
159154
const ALLOWED_TARGETS: AllowedTargets = AllowedTargets::AllowList(&[Allow(Target::Crate)]);
@@ -213,7 +208,6 @@ pub(crate) struct WindowsSubsystemParser;
213208
impl<S: Stage> SingleAttributeParser<S> for WindowsSubsystemParser {
214209
const PATH: &[Symbol] = &[sym::windows_subsystem];
215210
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::WarnButFutureError;
216-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepOutermost;
217211
const ALLOWED_TARGETS: AllowedTargets = AllowedTargets::AllowList(&[Allow(Target::Crate)]);
218212
const TEMPLATE: AttributeTemplate = template!(NameValueStr: ["windows", "console"], "https://doc.rust-lang.org/reference/runtime.html#the-windows_subsystem-attribute");
219213

compiler/rustc_attr_parsing/src/attributes/deprecation.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@ fn get<S: Stage>(
3434
pub(crate) struct DeprecatedParser;
3535
impl<S: Stage> SingleAttributeParser<S> for DeprecatedParser {
3636
const PATH: &[Symbol] = &[sym::deprecated];
37-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepInnermost;
3837
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error;
3938
const ALLOWED_TARGETS: AllowedTargets = AllowedTargets::AllowListWarnRest(&[
4039
Allow(Target::Fn),

compiler/rustc_attr_parsing/src/attributes/diagnostic/do_not_recommend.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,14 @@ use rustc_hir::lints::AttributeLintKind;
44
use rustc_session::lint::builtin::MALFORMED_DIAGNOSTIC_ATTRIBUTES;
55
use rustc_span::{Symbol, sym};
66

7-
use crate::attributes::{AttributeOrder, OnDuplicate, SingleAttributeParser};
7+
use crate::attributes::{OnDuplicate, SingleAttributeParser};
88
use crate::context::{AcceptContext, Stage};
99
use crate::parser::ArgParser;
1010
use crate::target_checking::{ALL_TARGETS, AllowedTargets};
1111

1212
pub(crate) struct DoNotRecommendParser;
1313
impl<S: Stage> SingleAttributeParser<S> for DoNotRecommendParser {
1414
const PATH: &[Symbol] = &[sym::diagnostic, sym::do_not_recommend];
15-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepInnermost;
1615
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Warn;
1716
const ALLOWED_TARGETS: AllowedTargets = AllowedTargets::AllowList(ALL_TARGETS); // Checked in check_attr.
1817
const TEMPLATE: AttributeTemplate = template!(Word /*doesn't matter */);

compiler/rustc_attr_parsing/src/attributes/dummy.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,14 @@ use rustc_feature::{AttributeTemplate, template};
22
use rustc_hir::attrs::AttributeKind;
33
use rustc_span::{Symbol, sym};
44

5-
use crate::attributes::{AttributeOrder, OnDuplicate, SingleAttributeParser};
5+
use crate::attributes::{OnDuplicate, SingleAttributeParser};
66
use crate::context::{AcceptContext, Stage};
77
use crate::parser::ArgParser;
88
use crate::target_checking::{ALL_TARGETS, AllowedTargets};
99

1010
pub(crate) struct RustcDummyParser;
1111
impl<S: Stage> SingleAttributeParser<S> for RustcDummyParser {
1212
const PATH: &[Symbol] = &[sym::rustc_dummy];
13-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepInnermost;
1413
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Ignore;
1514
const ALLOWED_TARGETS: AllowedTargets = AllowedTargets::AllowList(ALL_TARGETS);
1615
const TEMPLATE: AttributeTemplate = template!(Word); // Anything, really

compiler/rustc_attr_parsing/src/attributes/inline.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ pub(crate) struct InlineParser;
1111

1212
impl<S: Stage> SingleAttributeParser<S> for InlineParser {
1313
const PATH: &[Symbol] = &[sym::inline];
14-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepOutermost;
1514
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::WarnButFutureError;
1615
const ALLOWED_TARGETS: AllowedTargets = AllowedTargets::AllowList(&[
1716
Allow(Target::Fn),
@@ -68,7 +67,6 @@ pub(crate) struct RustcForceInlineParser;
6867

6968
impl<S: Stage> SingleAttributeParser<S> for RustcForceInlineParser {
7069
const PATH: &[Symbol] = &[sym::rustc_force_inline];
71-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepOutermost;
7270
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::WarnButFutureError;
7371
const ALLOWED_TARGETS: AllowedTargets = AllowedTargets::AllowList(&[
7472
Allow(Target::Fn),

compiler/rustc_attr_parsing/src/attributes/instruction_set.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ impl<S: Stage> SingleAttributeParser<S> for InstructionSetParser {
1616
]);
1717
const TEMPLATE: AttributeTemplate = template!(List: &["set"], "https://doc.rust-lang.org/reference/attributes/codegen.html#the-instruction_set-attribute");
1818
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error;
19-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepInnermost;
2019

2120
fn convert(cx: &mut AcceptContext<'_, '_, S>, args: &ArgParser) -> Option<AttributeKind> {
2221
const POSSIBLE_SYMBOLS: &[Symbol] = &[sym::arm_a32, sym::arm_t32];

compiler/rustc_attr_parsing/src/attributes/link_attrs.rs

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ pub(crate) struct LinkNameParser;
2222

2323
impl<S: Stage> SingleAttributeParser<S> for LinkNameParser {
2424
const PATH: &[Symbol] = &[sym::link_name];
25-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepInnermost;
2625
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::WarnButFutureError;
2726
const ALLOWED_TARGETS: AllowedTargets = AllowedTargets::AllowListWarnRest(&[
2827
Allow(Target::ForeignFn),
@@ -466,7 +465,6 @@ pub(crate) struct LinkSectionParser;
466465

467466
impl<S: Stage> SingleAttributeParser<S> for LinkSectionParser {
468467
const PATH: &[Symbol] = &[sym::link_section];
469-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepInnermost;
470468
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::WarnButFutureError;
471469
const ALLOWED_TARGETS: AllowedTargets = AllowedTargets::AllowListWarnRest(&[
472470
Allow(Target::Static),
@@ -541,7 +539,6 @@ pub(crate) struct LinkOrdinalParser;
541539

542540
impl<S: Stage> SingleAttributeParser<S> for LinkOrdinalParser {
543541
const PATH: &[Symbol] = &[sym::link_ordinal];
544-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepOutermost;
545542
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error;
546543
const ALLOWED_TARGETS: AllowedTargets = AllowedTargets::AllowList(&[
547544
Allow(Target::ForeignFn),
@@ -583,8 +580,6 @@ pub(crate) struct LinkageParser;
583580
impl<S: Stage> SingleAttributeParser<S> for LinkageParser {
584581
const PATH: &[Symbol] = &[sym::linkage];
585582

586-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepOutermost;
587-
588583
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error;
589584
const ALLOWED_TARGETS: AllowedTargets = AllowedTargets::AllowList(&[
590585
Allow(Target::Fn),

0 commit comments

Comments
 (0)