-
Notifications
You must be signed in to change notification settings - Fork 490
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
Add identifiers to attributes.md and its subchapters #1560
Add identifiers to attributes.md and its subchapters #1560
Conversation
src/attributes.md
Outdated
@@ -15,29 +16,32 @@ | |||
> [_DelimTokenTree_]\ | |||
> | `=` [_Expression_] | |||
|
|||
r[attributes.general] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here and all elsewhere.
r[attributes.general] | |
r[attributes.intro] |
(As an aside, I wonder if definition
might fit these kinds of paragraphs better. We should probably define our common terms so that we understand when to use them appropriately.)
src/attributes/codegen.md
Outdated
When applied to a function in an `extern` block the attribute must also be applied to any linked | ||
implementations, otherwise undefined behavior results. When applied to a function which is made | ||
available to an `extern` block, the declaration in the `extern` block must also have the attribute, | ||
otherwise undefined behavior results. | ||
|
||
### Behavior | ||
|
||
r[attributes.codegen.track_caller.behaviour] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here and elsewhere
r[attributes.codegen.track_caller.behaviour] | |
r[attributes.codegen.track_caller.behavior] |
src/attributes/codegen.md
Outdated
@@ -397,8 +439,12 @@ And so on. | |||
|
|||
### Limitations | |||
|
|||
r[attributes.codegen.track_caller.limits] | |||
|
|||
r[attributes.codegent.track_caller.hint] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please be careful about spelling.
r[attributes.codegent.track_caller.hint] | |
r[attributes.codegen.track_caller.hint] |
src/attributes/codegen.md
Outdated
Both attributes can be used on [functions]. When applied to a function in a | ||
[trait], they apply only to that function when used as a default function for | ||
a trait implementation and not to all trait implementations. The attributes | ||
have no effect on a trait function without a body. | ||
|
||
### The `inline` attribute | ||
|
||
r[attributes.codgen.inline] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
r[attributes.codgen.inline] | |
r[attributes.codegen.inline] |
src/attributes/diagnostics.md
Outdated
The *`deprecated` attribute* marks an item as deprecated. `rustc` will issue | ||
warnings on usage of `#[deprecated]` items. `rustdoc` will show item | ||
deprecation, including the `since` version and `note`, if available. | ||
|
||
r[attributes.diagnostics.deprectead.syntax] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
r[attributes.diagnostics.deprectead.syntax] | |
r[attributes.diagnostics.deprecated.syntax] |
src/attributes/debugger.md
Outdated
It uses the [_MetaListNameValueStr_] syntax to specify its inputs, and must be specified as a crate attribute. | ||
|
||
### Using `debugger_visualizer` with Natvis | ||
|
||
r[attributes.debugger.debugger_visualizer.natvis] | ||
|
||
r[attributes.debugger.debugger_visualizer.natvis-general] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Any particular reason to use -
and not .
for nativis-general
?
src/attributes/derive.md
Outdated
r[attributes.derive] | ||
|
||
|
||
r[attributes.derived.general] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
r[attributes.derived.general] | |
r[attributes.derive.general] |
src/attributes/diagnostics.md
Outdated
@@ -390,6 +432,7 @@ impl Trait for i32 { | |||
5i32.use_me(); | |||
``` | |||
|
|||
r[attributes.diagnostics.must_use.impl-function] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To distinguish from other non-trait impl, maybe?
r[attributes.diagnostics.must_use.impl-function] | |
r[attributes.diagnostics.must_use.trait-impl-function] |
src/attributes/diagnostics.md
Outdated
@@ -424,36 +467,59 @@ When used on a function in a trait implementation, the attribute does nothing. | |||
|
|||
## The `diagnostic` tool attribute namespace | |||
|
|||
r[attributes.diagnostics.namespace] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hm, I'm on the fence here, since the namespace is singular diagnostic
. I realize this is in the "diagnostics" section, and being inconsistent with the rest of the section could be more trouble. I'm just a little concerned about seeing diagnostics.namespace
could confuse a reader, since it is a subtle distinction. WDYT?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm thinking the section should be changed to diagnostic
because I've been otherwise favouring the singular form except for lists and when the construct is plural in the language.
src/attributes/limits.md
Outdated
The following [attributes] affect compile-time limits. | ||
|
||
## The `recursion_limit` attribute | ||
|
||
r[attributes.limits.recursion_limits] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here and elsewhere.
r[attributes.limits.recursion_limits] | |
r[attributes.limits.recursion_limit] |
I need to modify the identifiers to be more consistent with the other chapters, and the guidelines I wrote. @rustbot modify-labels +S-waiting-on-author -S-waiting-on-review |
@rustbot labels +S-waiting-on-author -S-waiting-on-review The CI is failing on this one. |
e579b2a
to
d3ef277
Compare
@rustbot labels +S-waiting-on-review -S-waiting-on-author |
This is just for navigation, these aren't specific rules.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
These are some misc rule name changes. Some of them are to give the rules more specific names (indicating what they do, instead of using generic terms). The `allowed-positions` name is intended to be used for all attributes to have a specific rule that defines where an attribute may be used. It is not consistently used, yet. Also, some of the paragraphs mix "where it goes" with "what it does" that should probably be teased apart so that we can label those independently. I expect us to do some more cleanup to bring some consistency to the attribute rules since there are a lot of attributes, and they generally have the same requirements of what needs to be specified.
This is keeping in line with using plurals throughout the rest of the naming convention. This also differentiates it from the `diagnostic` namespace. The `diagnostic` namespace remains singular, and is not nested with the plural `diagnostics` just to avoid the repetition.
94aa44f
to
4ef5f5d
Compare
Update books ## rust-lang/edition-guide 2 commits in 2d482e203eb6d6e353814cf1415c5f94e590b9e0..915f9b319c2823f310430ecdecd86264a7870d7e 2024-11-06 07:23:07 UTC to 2024-11-05 09:03:41 UTC - 2021: Update for raw lifetimes (rust-lang/edition-guide#330) - CI: Switch to merge queue (rust-lang/edition-guide#333) ## rust-lang/nomicon 1 commits in 456b904f791751892b01282fd2757904993c4c26..eac89a3cbe6c4714e5029ae8b5a1c556fd4e8c42 2024-11-16 14:05:28 UTC to 2024-11-16 14:05:28 UTC - Fix typo in what-unsafe-does (rust-lang/nomicon#469) ## rust-lang/reference 10 commits in da0f6dad767670da0e8cd5af8a7090db3272f626..41ccb0e6478305401dad92e8fd3d04a4304edb4c 2024-11-15 21:45:16 UTC to 2024-11-05 21:46:30 UTC - Add identifiers to attributes.md and its subchapters (rust-lang/reference#1560) - Fix 2 typos (rust-lang/reference#1674) - Add examples to clarify the casting rules (rust-lang/reference#686) - Explaining how to link mixed C/Rust binaries. (rust-lang/reference#838) - Add Arm64EC to inline-assembly documentation (rust-lang/reference#1653) - Add three more WebAssembly features to the list of accepted ones (rust-lang/reference#1638) - Add s390x to inline-assembly documentation (rust-lang/reference#1643) - trait object constraint correction (rust-lang/reference#1670) - Update some "default" representation references (rust-lang/reference#1667) - Update lifetimes for pre-expansion validation (rust-lang/reference#1668) ## rust-lang/rustc-dev-guide 12 commits in 6a5accdaf10255882b1e6c59dfe5f1c79ac95484..b679e71c2d66c6fe13e06b99ac61773b866213f0 2024-11-18 08:18:15 UTC to 2024-11-05 07:22:17 UTC - Mention `RUSTC_BOOTSTRAP` for misc testing (rust-lang/rustc-dev-guide#2136) - Document how to acquire `cdb.exe` (rust-lang/rustc-dev-guide#2137) - Document `max-llvm-major-version` directive (rust-lang/rustc-dev-guide#2129) - Document `exact-llvm-major-version` directive (rust-lang/rustc-dev-guide#2135) - Note Rustfmt for separate rust-analyzer directory (rust-lang/rustc-dev-guide#2134) - still accurate (rust-lang/rustc-dev-guide#2133) - typo (rust-lang/rustc-dev-guide#2132) - add valid date-check marker (rust-lang/rustc-dev-guide#2131) - Update parallel-rustc.md (rust-lang/rustc-dev-guide#1926) - Rename `{ignore,only}-debug` -> `{ignore,needs}-{rustc,std}-debug-assertions` (rust-lang/rustc-dev-guide#2101) - update const stability docs (rust-lang/rustc-dev-guide#2111) - Ask folks to use the Oxford comma in diagnostics (rust-lang/rustc-dev-guide#2093)
Update books ## rust-lang/edition-guide 2 commits in 2d482e203eb6d6e353814cf1415c5f94e590b9e0..915f9b319c2823f310430ecdecd86264a7870d7e 2024-11-06 07:23:07 UTC to 2024-11-05 09:03:41 UTC - 2021: Update for raw lifetimes (rust-lang/edition-guide#330) - CI: Switch to merge queue (rust-lang/edition-guide#333) ## rust-lang/nomicon 1 commits in 456b904f791751892b01282fd2757904993c4c26..eac89a3cbe6c4714e5029ae8b5a1c556fd4e8c42 2024-11-16 14:05:28 UTC to 2024-11-16 14:05:28 UTC - Fix typo in what-unsafe-does (rust-lang/nomicon#469) ## rust-lang/reference 10 commits in da0f6dad767670da0e8cd5af8a7090db3272f626..41ccb0e6478305401dad92e8fd3d04a4304edb4c 2024-11-15 21:45:16 UTC to 2024-11-05 21:46:30 UTC - Add identifiers to attributes.md and its subchapters (rust-lang/reference#1560) - Fix 2 typos (rust-lang/reference#1674) - Add examples to clarify the casting rules (rust-lang/reference#686) - Explaining how to link mixed C/Rust binaries. (rust-lang/reference#838) - Add Arm64EC to inline-assembly documentation (rust-lang/reference#1653) - Add three more WebAssembly features to the list of accepted ones (rust-lang/reference#1638) - Add s390x to inline-assembly documentation (rust-lang/reference#1643) - trait object constraint correction (rust-lang/reference#1670) - Update some "default" representation references (rust-lang/reference#1667) - Update lifetimes for pre-expansion validation (rust-lang/reference#1668) ## rust-lang/rustc-dev-guide 12 commits in 6a5accdaf10255882b1e6c59dfe5f1c79ac95484..b679e71c2d66c6fe13e06b99ac61773b866213f0 2024-11-18 08:18:15 UTC to 2024-11-05 07:22:17 UTC - Mention `RUSTC_BOOTSTRAP` for misc testing (rust-lang/rustc-dev-guide#2136) - Document how to acquire `cdb.exe` (rust-lang/rustc-dev-guide#2137) - Document `max-llvm-major-version` directive (rust-lang/rustc-dev-guide#2129) - Document `exact-llvm-major-version` directive (rust-lang/rustc-dev-guide#2135) - Note Rustfmt for separate rust-analyzer directory (rust-lang/rustc-dev-guide#2134) - still accurate (rust-lang/rustc-dev-guide#2133) - typo (rust-lang/rustc-dev-guide#2132) - add valid date-check marker (rust-lang/rustc-dev-guide#2131) - Update parallel-rustc.md (rust-lang/rustc-dev-guide#1926) - Rename `{ignore,only}-debug` -> `{ignore,needs}-{rustc,std}-debug-assertions` (rust-lang/rustc-dev-guide#2101) - update const stability docs (rust-lang/rustc-dev-guide#2111) - Ask folks to use the Oxford comma in diagnostics (rust-lang/rustc-dev-guide#2093)
Rollup merge of rust-lang#133181 - rustbot:docs-update, r=ehuss Update books ## rust-lang/edition-guide 2 commits in 2d482e203eb6d6e353814cf1415c5f94e590b9e0..915f9b319c2823f310430ecdecd86264a7870d7e 2024-11-06 07:23:07 UTC to 2024-11-05 09:03:41 UTC - 2021: Update for raw lifetimes (rust-lang/edition-guide#330) - CI: Switch to merge queue (rust-lang/edition-guide#333) ## rust-lang/nomicon 1 commits in 456b904f791751892b01282fd2757904993c4c26..eac89a3cbe6c4714e5029ae8b5a1c556fd4e8c42 2024-11-16 14:05:28 UTC to 2024-11-16 14:05:28 UTC - Fix typo in what-unsafe-does (rust-lang/nomicon#469) ## rust-lang/reference 10 commits in da0f6dad767670da0e8cd5af8a7090db3272f626..41ccb0e6478305401dad92e8fd3d04a4304edb4c 2024-11-15 21:45:16 UTC to 2024-11-05 21:46:30 UTC - Add identifiers to attributes.md and its subchapters (rust-lang/reference#1560) - Fix 2 typos (rust-lang/reference#1674) - Add examples to clarify the casting rules (rust-lang/reference#686) - Explaining how to link mixed C/Rust binaries. (rust-lang/reference#838) - Add Arm64EC to inline-assembly documentation (rust-lang/reference#1653) - Add three more WebAssembly features to the list of accepted ones (rust-lang/reference#1638) - Add s390x to inline-assembly documentation (rust-lang/reference#1643) - trait object constraint correction (rust-lang/reference#1670) - Update some "default" representation references (rust-lang/reference#1667) - Update lifetimes for pre-expansion validation (rust-lang/reference#1668) ## rust-lang/rustc-dev-guide 12 commits in 6a5accdaf10255882b1e6c59dfe5f1c79ac95484..b679e71c2d66c6fe13e06b99ac61773b866213f0 2024-11-18 08:18:15 UTC to 2024-11-05 07:22:17 UTC - Mention `RUSTC_BOOTSTRAP` for misc testing (rust-lang/rustc-dev-guide#2136) - Document how to acquire `cdb.exe` (rust-lang/rustc-dev-guide#2137) - Document `max-llvm-major-version` directive (rust-lang/rustc-dev-guide#2129) - Document `exact-llvm-major-version` directive (rust-lang/rustc-dev-guide#2135) - Note Rustfmt for separate rust-analyzer directory (rust-lang/rustc-dev-guide#2134) - still accurate (rust-lang/rustc-dev-guide#2133) - typo (rust-lang/rustc-dev-guide#2132) - add valid date-check marker (rust-lang/rustc-dev-guide#2131) - Update parallel-rustc.md (rust-lang/rustc-dev-guide#1926) - Rename `{ignore,only}-debug` -> `{ignore,needs}-{rustc,std}-debug-assertions` (rust-lang/rustc-dev-guide#2101) - update const stability docs (rust-lang/rustc-dev-guide#2111) - Ask folks to use the Oxford comma in diagnostics (rust-lang/rustc-dev-guide#2093)
This adds identifiers to the attributes.md file and its subchapters, being: