Skip to content

Commit fe7530c

Browse files
committed
Make rustc_object_lifetime_default use NoArgsAttributeParser
1 parent eab26e3 commit fe7530c

2 files changed

Lines changed: 12 additions & 13 deletions

File tree

compiler/rustc_attr_parsing/src/attributes/rustc_internal.rs

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -575,21 +575,11 @@ impl<S: Stage> NoArgsAttributeParser<S> for RustcLintUntrackedQueryInformationPa
575575

576576
pub(crate) struct RustcObjectLifetimeDefaultParser;
577577

578-
impl<S: Stage> SingleAttributeParser<S> for RustcObjectLifetimeDefaultParser {
578+
impl<S: Stage> NoArgsAttributeParser<S> for RustcObjectLifetimeDefaultParser {
579579
const PATH: &[Symbol] = &[sym::rustc_object_lifetime_default];
580-
const ATTRIBUTE_ORDER: AttributeOrder = AttributeOrder::KeepInnermost;
581580
const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error;
582581
const ALLOWED_TARGETS: AllowedTargets = AllowedTargets::AllowList(&[Allow(Target::Struct)]);
583-
const TEMPLATE: AttributeTemplate = template!(Word);
584-
585-
fn convert(cx: &mut AcceptContext<'_, '_, S>, args: &ArgParser) -> Option<AttributeKind> {
586-
if let Err(span) = args.no_args() {
587-
cx.expected_no_args(span);
588-
return None;
589-
}
590-
591-
Some(AttributeKind::RustcObjectLifetimeDefault)
592-
}
582+
const CREATE: fn(Span) -> AttributeKind = |_| AttributeKind::RustcObjectLifetimeDefault;
593583
}
594584

595585
pub(crate) struct RustcSimdMonomorphizeLaneLimitParser;

compiler/rustc_attr_parsing/src/context.rs

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -212,7 +212,6 @@ attribute_parsers!(
212212
Single<RustcMustImplementOneOfParser>,
213213
Single<RustcNeverTypeOptionsParser>,
214214
Single<RustcNeverTypeOptionsParser>,
215-
Single<RustcObjectLifetimeDefaultParser>,
216215
Single<RustcReservationImplParser>,
217216
Single<RustcScalableVectorParser>,
218217
Single<RustcSimdMonomorphizeLaneLimitParser>,
@@ -292,6 +291,7 @@ attribute_parsers!(
292291
Single<WithoutArgs<RustcNoMirInlineParser>>,
293292
Single<WithoutArgs<RustcNonConstTraitMethodParser>>,
294293
Single<WithoutArgs<RustcNounwindParser>>,
294+
Single<WithoutArgs<RustcObjectLifetimeDefaultParser>>,
295295
Single<WithoutArgs<RustcOffloadKernelParser>>,
296296
Single<WithoutArgs<RustcOutlivesParser>>,
297297
Single<WithoutArgs<RustcPassIndirectlyInNonRusticAbisParser>>,
@@ -301,19 +301,28 @@ attribute_parsers!(
301301
Single<WithoutArgs<RustcShouldNotBeCalledOnConstItems>>,
302302
Single<WithoutArgs<RustcStrictCoherenceParser>>,
303303
Single<WithoutArgs<RustcStrictCoherenceParser>>,
304+
Single<WithoutArgs<RustcStrictCoherenceParser>>,
305+
Single<WithoutArgs<RustcTrivialFieldReadsParser>>,
304306
Single<WithoutArgs<RustcTrivialFieldReadsParser>>,
305307
Single<WithoutArgs<RustcVarianceOfOpaquesParser>>,
306308
Single<WithoutArgs<RustcVarianceOfOpaquesParser>>,
309+
Single<WithoutArgs<RustcVarianceOfOpaquesParser>>,
307310
Single<WithoutArgs<RustcVarianceParser>>,
308311
Single<WithoutArgs<RustcVarianceParser>>,
312+
Single<WithoutArgs<RustcVarianceParser>>,
313+
Single<WithoutArgs<SpecializationTraitParser>>,
309314
Single<WithoutArgs<SpecializationTraitParser>>,
310315
Single<WithoutArgs<SpecializationTraitParser>>,
311316
Single<WithoutArgs<StdInternalSymbolParser>>,
312317
Single<WithoutArgs<StdInternalSymbolParser>>,
318+
Single<WithoutArgs<StdInternalSymbolParser>>,
319+
Single<WithoutArgs<ThreadLocalParser>>,
313320
Single<WithoutArgs<ThreadLocalParser>>,
314321
Single<WithoutArgs<ThreadLocalParser>>,
315322
Single<WithoutArgs<TrackCallerParser>>,
316323
Single<WithoutArgs<TrackCallerParser>>,
324+
Single<WithoutArgs<TrackCallerParser>>,
325+
Single<WithoutArgs<UnsafeSpecializationMarkerParser>>,
317326
Single<WithoutArgs<UnsafeSpecializationMarkerParser>>,
318327
Single<WithoutArgs<UnsafeSpecializationMarkerParser>>,
319328
// tidy-alphabetical-end

0 commit comments

Comments
 (0)