Skip to content

Tracking issue for future-incompatibility lint ill_formed_attribute_input #57571

Open
@petrochenkov

Description

@petrochenkov

What is this lint about

Previously inputs for many built-in attributes weren't validated and nonsensical attributes like #[no_std(arbitraty, string = "foo")] were accepted.
#57321 introduced a check for top-level shape (#[attr] vs #[attr(...)] vs #[attr = ...]) for built-in attributes that produces an error by default, but produces a warning for incorrect attribute forms available on stable that were actually encountered in practice (during crater run).
Currently the list is

#[doc]
#[ignore(...)]
#[inline = "..."]
#[link]
#[link = "..."]

, but it can be extended if more regressions are reported.

How to fix this warning/error

Use one of the correct attribute forms suggested by the compiler.

Current status

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-attributesArea: Attributes (`#[…]`, `#![…]`)A-lintsArea: Lints (warnings about flaws in source code) such as unused_mut.C-future-incompatibilityCategory: Future-incompatibility lintsC-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.T-langRelevant to the language team, which will review and decide on the PR/issue.

    Type

    No type

    Projects

    Status

    Idea

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions