-
Notifications
You must be signed in to change notification settings - Fork 12.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Attributes starting with rustc_
are supposed to be gated, but they are not always gated
#62116
Labels
A-attributes
Area: Attributes (`#[…]`, `#![…]`)
A-resolve
Area: Name resolution
A-stability
Area: `#[stable]`, `#[unstable]` etc.
T-compiler
Relevant to the compiler team, which will review and decide on the PR/issue.
T-lang
Relevant to the language team, which will review and decide on the PR/issue.
Comments
petrochenkov
added
A-attributes
Area: Attributes (`#[…]`, `#![…]`)
A-resolve
Area: Name resolution
A-stability
Area: `#[stable]`, `#[unstable]` etc.
T-compiler
Relevant to the compiler team, which will review and decide on the PR/issue.
T-lang
Relevant to the language team, which will review and decide on the PR/issue.
labels
Jun 25, 2019
bors
added a commit
that referenced
this issue
Jun 25, 2019
Feature gate `rustc` attributes harder cc #62116
Centril
added a commit
to Centril/rust
that referenced
this issue
Jul 1, 2019
Feature gate `rustc` attributes harder Fixes rust-lang#62116
Manishearth
added a commit
to Manishearth/rust
that referenced
this issue
Jul 2, 2019
Feature gate `rustc` attributes harder Fixes rust-lang#62116
Mark-Simulacrum
added a commit
to Mark-Simulacrum/rust
that referenced
this issue
Jul 3, 2019
Feature gate `rustc` attributes harder Fixes rust-lang#62116
Centril
added a commit
to Centril/rust
that referenced
this issue
Jul 4, 2019
Feature gate `rustc` attributes harder Fixes rust-lang#62116
Mark-Simulacrum
added a commit
to Mark-Simulacrum/rust
that referenced
this issue
Jul 4, 2019
Feature gate `rustc` attributes harder Fixes rust-lang#62116
Mark-Simulacrum
added a commit
to Mark-Simulacrum/rust
that referenced
this issue
Jul 4, 2019
Feature gate `rustc` attributes harder Fixes rust-lang#62116
Centril
added a commit
to Centril/rust
that referenced
this issue
Jul 5, 2019
Feature gate `rustc` attributes harder Fixes rust-lang#62116
Centril
added a commit
to Centril/rust
that referenced
this issue
Jul 5, 2019
Feature gate `rustc` attributes harder Fixes rust-lang#62116
Centril
added a commit
to Centril/rust
that referenced
this issue
Jul 5, 2019
Feature gate `rustc` attributes harder Fixes rust-lang#62116
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
A-attributes
Area: Attributes (`#[…]`, `#![…]`)
A-resolve
Area: Name resolution
A-stability
Area: `#[stable]`, `#[unstable]` etc.
T-compiler
Relevant to the compiler team, which will review and decide on the PR/issue.
T-lang
Relevant to the language team, which will review and decide on the PR/issue.
Of course, the specific known built-in attributes like
#[rustc_copy_clone_marker]
are feature gated, but therustc_*
names are not reserved in general.As a result, you can easily create a procedural macro attribute starting with
rustc_
.As a result, introduction of a new built-in attribute is technically a breaking change even if the attribute starts with
rustc_
.Q: Why is introduction of a new built-in attribute a breaking change.
A: Because built-in attributes will conflict with any other attributes in scope having the same name (see #53913 (comment) for some technical details).
Possible solutions:
rustc_
, including macros, run crater and see what happens.rustc_
.rustc_*
built-in attributes anyway and go through the same technically breaking changes in process.The text was updated successfully, but these errors were encountered: